; DEBUG = 1EFD60-1EFFE0
;
; 1EFD60-1EFD70 = CD # / CD1 LBA / CD2 LBA / <unused>
; 1EFD70-1EFDE0 = address -> time LBA remap
; 1EFDE0-1EFE40 = time -> address LBA remap
; 1EFE40-1EFExx = write correct CD #


;80017720 : 0C005B47  JAL     80016d1c, 80017720 (ra),
;80017724 : 02002021  ADDU    80017d48 (a0), 77deff6f (s0), 00000000 (r0),
;-->
;80017728 : 1051FFEA  BEQ     ffffffff (v0), ffffffff (s1), 800176d4,
;8001772c : 00000000  NOP   
;-->


org $801efe40


; check CD matches
bne v0,s1,EXIT_PASS



; FAILED - swap CD #s
lui ra,$801e+1
lbu a0,$fd60(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,$fd60(ra)


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

EXIT_FAIL:

; OLD code

j $800176d4
nop


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

EXIT_PASS:

; OLD code

j $80017730
nop
