; DEBUG = 11DE0-12330
;
; 11DE0-11DE0 = CD # / unused
; 11DF0-11E30 = Force CD detection
; 11E30-11Exx = Address -> Time remap


;-->
;80028d98 : 3C031B4E  LUI     00000000 (v1), 1b4e (6990),
;80028d9c : 346381B5  ORI     1b4e0000 (v1), 1b4e0000 (v1), 81b5 (33205),
;-->
;80028da0 : 24840096  ADDIU   00000010 (a0), 00000010 (a0), 0096 (150),
;80028da4 : 00830018  MULT    000000a6 (a0), 1b4e81b5 (v1),




; 6BB2- 6DAB [GAME2.DPK] [6:9.45 - 6:16.25]
; 6E00- 7015 [GAME22.DPK] [6:17.35 - 6:24.43]
;
;
; 7040- 8128 [PAK.DPK] [6:25.11 - 7:22.64]
; 8150- 9238 [PAK2.DPK] [7:23.29 - 8:21.7]


org $80011e30

; only remap CD2 (1/2)
lui v0,$8001
lbu v0,$1de0(v0)
nop
addiu v0,v0,$ffff
beq v0,r0,EXIT
nop



; remap MOVIE folder (18-19)
ori v1,r0,$18
beq v1,a0,REMAP_MOVIE_FOLDER
nop

; avoid LBA range (0-6BB1)
sltiu v1,a0,$6bb2
bne v1,r0,EXIT
nop

; check GAME2.DPK (6BB2-703F)
sltiu v1,a0,$7040
bne v1,r0,REMAP_GAME2_DPK
nop

; check PAK.DPK (7040-925F)
ori v1,r0,$9260
sltu v1,a0,v1
bne v1,r0,REMAP_PAK_DPK
nop


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

EXIT:

; OLD code
lui v1,$1b4e
ori v1,v1,$81b5

j $80028da0
nop


; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++

REMAP_MOVIE_FOLDER:

; 18 -> 19

; remap LBA to final range
addiu a0,a0,$1

beq r0,r0,EXIT
nop


; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++


REMAP_GAME2_DPK:

; 6BB2 -> 6E00

; remap LBA to final range
addiu a0,a0,$24E

beq r0,r0,EXIT
nop


; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++
; ++++++++++++++++++++++++++


REMAP_PAK_DPK:

; 7040 -> 8150

; remap LBA to final range
addiu a0,a0,$1110

beq r0,r0,EXIT
nop
