800a8224 9045000b: LBU     80089810 (a1), 000b (8008b000 (v0)) [8008b00b]
800a8228 0c02a0a6: JAL     800a8298, 800a821c (ra)
800a822c 02402021: ADDU    00000001 (a0), 00000001 (s2), 00000000 (r0)



NOTE:
a0 = 1/2/4/8

SOLUTION:
$80010400 = \FF9.IMG;1 (SLUS)

Default value will now be:
\F91.IMG;1


Replace the '1' with the correct CD #
F91.IMG, F92.IMG, F94.IMG, F98.IMG


Open regs:
v0,v1,a1,a0?




addiu v0,a0,$30
lui a1,$8001
ori a1,a1,$0403
sb v0,$0(a1)

jr ra
sltu v0,r0,r0


; This checks if the inserted CD is correct

800a8298 3084000f: ANDI    00000001 (a0), 00000001 (a0), 000f (15)
800a829c 30a2000f: ANDI    8008b000 (v0), 00000002 (a1), 000f (15)
800a82a0 00441024: AND     00000002 (v0), 00000002 (v0), 00000001 (a0)
800a82a4 00441026: XOR     00000000 (v0), 00000000 (v0), 00000001 (a0)

800a82a8 03e00008: JR      800a8230 (ra)
800a82ac 0002102b: SLTU    00000001 (v0), 00000000 (r0), 00000001 (v0)

=========================================
=========================================
=========================================
=========================================

800a8230 304200ff: ANDI    00000001 (v0), 00000001 (v0), 00ff (255)

; Branch if CD matches
; - ZAP the BEQ (force reload FF9.IMG tables)

800a8234 10400003: BEQ     00000001 (v0), 00000000 (r0), 800a8244
800a8238 240200ff: ADDIU   00000001 (v0), 00000000 (r0), 00ff (255)

; Identified by momochi
; - activate swap check routine

800a823c 0c02a098: JAL     800a8260, 800a8230 (ra)
800a8240 02402021: ADDU    00000001 (a0), 00000001 (s2), 00000000 (r0)


800a8244 8fbf0020: LW      800a8230 (ra), 0020 (801ffef8 (sp)) [801fff18]
800a8248 8fb3001c: LW      000000ff (s3), 001c (801ffef8 (sp)) [801fff14]
800a824c 8fb20018: LW      00000002 (s2), 0018 (801ffef8 (sp)) [801fff10]
800a8250 8fb10014: LW      80060000 (s1), 0014 (801ffef8 (sp)) [801fff0c]
800a8254 8fb00010: LW      00000001 (s0), 0010 (801ffef8 (sp)) [801fff08]

800a8258 03e00008: JR      800a8518 (ra)
800a825c 27bd0028: ADDIU   801ffef8 (sp), 801ffef8 (sp), 0028 (40)

=========================================
=========================================
=========================================
=========================================

; Sets up CD splash screen #
; - output is v0 (hard-code to 1)

800a8260 00001821: ADDU    00000000 (v1), 00000000 (r0), 00000000 (r0)
800a8264 24050001: ADDIU   00000002 (a1), 00000000 (r0), 0001 (1)
800a8268 00651004: SLLV    000000ff (v0), 00000001 (a1), 00000000 (v1)
800a826c 00821024: AND     00000001 (v0), 00000001 (a0), 00000001 (v0)

; hard-code this to BEQ r0,r0,xxxx

800a8270 14400007: BNE     00000001 (v0), 00000000 (r0), 800a8290
800a8274 00601021: ADDU    00000001 (v0), 00000000 (v1), 00000000 (r0)

800a8278 24630001: ADDIU   00000000 (v1), 00000000 (v1), 0001 (1)
800a827c 28620004: SLTI    00000000 (v0), 00000001 (v1), 0004 (4)
800a8280 1440fffa: BNE     00000001 (v0), 00000000 (r0), 800a826c
800a8284 00651004: SLLV    00000001 (v0), 00000001 (a1), 00000001 (v1)
800a8288
800a828C

800a8290 03e00008: JR      800a8244 (ra)
800a8294 00000000: NOP    
