; DEBUG = 1EEA90-1EECF0, 1EF250-1EF430, 1EF450-1EF580
;
; 1EEA90-1EEAA0 = CD # / CD1 LBA / CD2 LBA / <unused>
; 1EEAA0-1EEB10 = address -> time LBA remap
; 1EEB10-1EEBA0 = time -> address LBA remap
; 1EEBA0-1EEBxx = write correct CD #



;80017790 : 0C005B63  JAL     80016d8c, 80017790 (ra),
;80017794 : 02002021  ADDU    80017db8 (a0), c1b17fc6 (s0), 00000000 (r0),
;-->
;80017798 : 1051FFEA  BEQ     ffffffff (v0), ffffffff (s1), 80017744,
;8001779c : 00000000  NOP    
;-->
;800177a0 : 8FBF0034  LW      80017798 (ra), 0034 (801ffde8 (sp)) [801ffe1c]
;800177a4 : 8FB20030  LW      801ffe60 (s2), 0030 (801ffde8 (sp)) [801ffe18]


org $801eeba0


; check CD matches
bne v0,s1,EXIT_PASS



; FAILED - swap CD #s
lui ra,$801e+1
lbu a0,$ea90(ra)
nop

; 1,2 -> 2,1
addiu a0,a0,$ffff
beq a0,r0,WRITE_CD
ori a0,r0,2

ori a0,r0,1

; write correct CD # (avoid swap)
WRITE_CD:
sb a0,$ea90(ra)


; =====================
; =====================
; =====================
; =====================

EXIT_FAIL:

; OLD code

j $80017744
nop


; =====================
; =====================
; =====================
; =====================

EXIT_PASS:

; OLD code

j $800177a0
nop
