summaryrefslogtreecommitdiff
path: root/arm9/asm/GX_vramcnt.s
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/asm/GX_vramcnt.s')
-rw-r--r--arm9/asm/GX_vramcnt.s1540
1 files changed, 1540 insertions, 0 deletions
diff --git a/arm9/asm/GX_vramcnt.s b/arm9/asm/GX_vramcnt.s
new file mode 100644
index 00000000..0dc8890b
--- /dev/null
+++ b/arm9/asm/GX_vramcnt.s
@@ -0,0 +1,1540 @@
+ .include "asm/macros.inc"
+ .include "global.inc"
+
+ .text
+
+ arm_func_start GX_GetBankForSubOBJExtPltt
+GX_GetBankForSubOBJExtPltt: ; 0x020C5D2C
+ ldr r0, _020C5D38 ; =0x021D33C4
+ ldrh r0, [r0, #0x18]
+ bx lr
+ .balign 4
+_020C5D38: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForSubBGExtPltt
+GX_GetBankForSubBGExtPltt: ; 0x020C5D3C
+ ldr r0, _020C5D48 ; =0x021D33C4
+ ldrh r0, [r0, #0x16]
+ bx lr
+ .balign 4
+_020C5D48: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForSubOBJ
+GX_GetBankForSubOBJ: ; 0x020C5D4C
+ ldr r0, _020C5D58 ; =0x021D33C4
+ ldrh r0, [r0, #0x14]
+ bx lr
+ .balign 4
+_020C5D58: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForSubBGExtPltt_2
+GX_GetBankForSubBGExtPltt_2: ; 0x020C5D5C
+ ldr r0, _020C5D68 ; =0x021D33C4
+ ldrh r0, [r0, #0x12]
+ bx lr
+ .balign 4
+_020C5D68: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForLCDC
+GX_GetBankForLCDC: ; 0x020C5D6C
+ ldr r0, _020C5D78 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bx lr
+ .balign 4
+_020C5D78: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForTexPltt
+GX_GetBankForTexPltt: ; 0x020C5D7C
+ ldr r0, _020C5D88 ; =0x021D33C4
+
+ arm_func_start FUN_020C5D80
+FUN_020C5D80: ; 0x020C5D80
+ ldrh r0, [r0, #0xa]
+ bx lr
+ .balign 4
+_020C5D88: .word 0x021D33C4
+
+ arm_func_start FUN_020C5D8C
+FUN_020C5D8C: ; 0x020C5D8C
+ ldr r0, _020C5D98 ; =0x021D33C4
+ ldrh r0, [r0, #0x8]
+ bx lr
+ .balign 4
+_020C5D98: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForOBJExtPltt
+GX_GetBankForOBJExtPltt: ; 0x020C5D9C
+ ldr r0, _020C5DA8 ; =0x021D33C4
+ ldrh r0, [r0, #0x10]
+ bx lr
+ .balign 4
+_020C5DA8: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForBGExtPltt
+GX_GetBankForBGExtPltt: ; 0x020C5DAC
+ ldr r0, _020C5DB8 ; =0x021D33C4
+ ldrh r0, [r0, #0xe]
+ bx lr
+ .balign 4
+_020C5DB8: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForOBJ
+GX_GetBankForOBJ: ; 0x020C5DBC
+ ldr r0, _020C5DC8 ; =0x021D33C4
+ ldrh r0, [r0, #0x4]
+ bx lr
+ .balign 4
+_020C5DC8: .word 0x021D33C4
+
+ arm_func_start GX_GetBankForBGExtPltt_2
+GX_GetBankForBGExtPltt_2: ; 0x020C5DCC
+ ldr r0, _020C5DD8 ; =0x021D33C4
+ ldrh r0, [r0, #0x2]
+ bx lr
+ .balign 4
+_020C5DD8: .word 0x021D33C4
+
+ arm_func_start GX_DisableBankForSubOBJExtPltt
+GX_DisableBankForSubOBJExtPltt: ; 0x020C5DDC
+ ldr r2, _020C5DF8 ; =0x04001000
+ ldr ip, _020C5DFC ; =FUN_020C5F28
+ ldr r1, [r2, #0x0]
+ ldr r0, _020C5E00 ; =0x021D33DC
+ bic r1, r1, #0x80000000
+ str r1, [r2, #0x0]
+ bx r12
+ .balign 4
+_020C5DF8: .word 0x04001000
+_020C5DFC: .word FUN_020C5F28
+_020C5E00: .word 0x021D33DC
+
+ arm_func_start FUN_020C5E04
+FUN_020C5E04: ; 0x020C5E04
+ ldr r2, _020C5E20 ; =0x04001000
+ ldr ip, _020C5E24 ; =FUN_020C5F28
+ ldr r1, [r2, #0x0]
+ ldr r0, _020C5E28 ; =0x021D33DA
+ bic r1, r1, #0x40000000
+ str r1, [r2, #0x0]
+ bx r12
+ .balign 4
+_020C5E20: .word 0x04001000
+_020C5E24: .word FUN_020C5F28
+_020C5E28: .word 0x021D33DA
+
+ arm_func_start GX_DisableBankForSubOBJExtPltt_2
+GX_DisableBankForSubOBJExtPltt_2: ; 0x020C5E2C
+ ldr ip, _020C5E38 ; =FUN_020C5F28
+ ldr r0, _020C5E3C ; =0x021D33D8
+ bx r12
+ .balign 4
+_020C5E38: .word FUN_020C5F28
+_020C5E3C: .word 0x021D33D8
+
+ arm_func_start GX_DisableBankForSubBGExtPltt
+GX_DisableBankForSubBGExtPltt: ; 0x020C5E40
+ ldr ip, _020C5E4C ; =FUN_020C5F28
+ ldr r0, _020C5E50 ; =0x021D33D6
+ bx r12
+ .balign 4
+_020C5E4C: .word FUN_020C5F28
+_020C5E50: .word 0x021D33D6
+
+ arm_func_start GX_DisableBankForLCDC
+GX_DisableBankForLCDC: ; 0x020C5E54
+ ldr ip, _020C5E60 ; =FUN_020C5F28
+ ldr r0, _020C5E64 ; =0x021D33C4
+ bx r12
+ .balign 4
+_020C5E60: .word FUN_020C5F28
+_020C5E64: .word 0x021D33C4
+
+ arm_func_start GX_DisableBankForARM7
+GX_DisableBankForARM7: ; 0x020C5E68
+ ldr ip, _020C5E74 ; =FUN_020C5F28
+ ldr r0, _020C5E78 ; =0x021D33CA
+ bx r12
+ .balign 4
+_020C5E74: .word FUN_020C5F28
+_020C5E78: .word 0x021D33CA
+
+ arm_func_start GX_DisableBankForClearImage
+GX_DisableBankForClearImage: ; 0x020C5E7C
+ ldr ip, _020C5E88 ; =FUN_020C5F28
+ ldr r0, _020C5E8C ; =0x021D33D0
+ bx r12
+ .balign 4
+_020C5E88: .word FUN_020C5F28
+_020C5E8C: .word 0x021D33D0
+
+ arm_func_start GX_DisableBankForTexPltt
+GX_DisableBankForTexPltt: ; 0x020C5E90
+ ldr ip, _020C5E9C ; =FUN_020C5F28
+ ldr r0, _020C5EA0 ; =0x021D33CE
+ bx r12
+ .balign 4
+_020C5E9C: .word FUN_020C5F28
+_020C5EA0: .word 0x021D33CE
+
+ arm_func_start GX_DisableBankForTexPltt_2
+GX_DisableBankForTexPltt_2: ; 0x020C5EA4
+ ldr ip, _020C5EB0 ; =FUN_020C5F28
+ ldr r0, _020C5EB4 ; =0x021D33CC
+ bx r12
+ .balign 4
+_020C5EB0: .word FUN_020C5F28
+_020C5EB4: .word 0x021D33CC
+
+ arm_func_start GX_DisableBankForOBJExtPltt
+GX_DisableBankForOBJExtPltt: ; 0x020C5EB8
+ mov r2, #0x4000000
+ ldr r1, [r2, #0x0]
+ ldr ip, _020C5ED4 ; =FUN_020C5F28
+ bic r1, r1, #0x80000000
+ ldr r0, _020C5ED8 ; =0x021D33D4
+ str r1, [r2, #0x0]
+ bx r12
+ .balign 4
+_020C5ED4: .word FUN_020C5F28
+_020C5ED8: .word 0x021D33D4
+
+ arm_func_start GX_DisableBankForBGExtPltt
+GX_DisableBankForBGExtPltt: ; 0x020C5EDC
+ mov r2, #0x4000000
+ ldr r1, [r2, #0x0]
+ ldr ip, _020C5EF8 ; =FUN_020C5F28
+ bic r1, r1, #0x40000000
+ ldr r0, _020C5EFC ; =0x021D33D2
+ str r1, [r2, #0x0]
+ bx r12
+ .balign 4
+_020C5EF8: .word FUN_020C5F28
+_020C5EFC: .word 0x021D33D2
+
+ arm_func_start GX_DisableBankForOBJExtPltt_2
+GX_DisableBankForOBJExtPltt_2: ; 0x020C5F00
+ ldr ip, _020C5F0C ; =FUN_020C5F28
+ ldr r0, _020C5F10 ; =0x021D33C8
+ bx r12
+ .balign 4
+_020C5F0C: .word FUN_020C5F28
+_020C5F10: .word 0x021D33C8
+
+ arm_func_start disableBankForX_
+disableBankForX_: ; 0x020C5F14
+ ldr ip, _020C5F20 ; =FUN_020C5F28
+ ldr r0, _020C5F24 ; =0x021D33C6
+ bx r12
+ .balign 4
+_020C5F20: .word FUN_020C5F28
+_020C5F24: .word 0x021D33C6
+
+ arm_func_start FUN_020C5F28
+FUN_020C5F28: ; 0x020C5F28
+ stmdb sp!, {r4,lr}
+ ldrh r4, [r0, #0x0]
+ mov r1, #0x0
+ strh r1, [r0, #0x0]
+ ands r0, r4, #0x1
+ ldrne r0, _020C5FE4 ; =0x04000240
+ strneb r1, [r0, #0x0]
+ ands r0, r4, #0x2
+ ldrne r0, _020C5FE8 ; =0x04000241
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ ands r0, r4, #0x4
+ ldrne r0, _020C5FEC ; =0x04000242
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ ands r0, r4, #0x8
+ ldrne r0, _020C5FF0 ; =0x04000243
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ ands r0, r4, #0x10
+ ldrne r0, _020C5FF4 ; =0x04000244
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ ands r0, r4, #0x20
+ ldrne r0, _020C5FF8 ; =0x04000245
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ ands r0, r4, #0x40
+ ldrne r0, _020C5FFC ; =0x04000246
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ ands r0, r4, #0x80
+ ldrne r0, _020C6000 ; =0x04000248
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ ands r0, r4, #0x100
+ ldrne r0, _020C6004 ; =0x04000249
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ ldr r1, _020C6008 ; =0x021D33BC
+ mov r0, r4, lsl #0x10
+ ldrh r1, [r1, #0x0]
+ mov r0, r0, lsr #0x10
+ bl OSi_UnlockVram
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020C5FE4: .word 0x04000240
+_020C5FE8: .word 0x04000241
+_020C5FEC: .word 0x04000242
+_020C5FF0: .word 0x04000243
+_020C5FF4: .word 0x04000244
+_020C5FF8: .word 0x04000245
+_020C5FFC: .word 0x04000246
+_020C6000: .word 0x04000248
+_020C6004: .word 0x04000249
+_020C6008: .word 0x021D33BC
+
+ arm_func_start GX_ResetBankForSubOBJ
+GX_ResetBankForSubOBJ: ; 0x020C600C
+ ldr r2, _020C6028 ; =0x04001000
+ ldr ip, _020C602C ; =FUN_020C6130
+ ldr r1, [r2, #0x0]
+ ldr r0, _020C6030 ; =0x021D33DC
+ bic r1, r1, #0x80000000
+ str r1, [r2, #0x0]
+ bx r12
+ .balign 4
+_020C6028: .word 0x04001000
+_020C602C: .word FUN_020C6130
+_020C6030: .word 0x021D33DC
+
+ arm_func_start FUN_020C6034
+FUN_020C6034: ; 0x020C6034
+ ldr r2, _020C6050 ; =0x04001000
+ ldr ip, _020C6054 ; =FUN_020C6130
+ ldr r1, [r2, #0x0]
+ ldr r0, _020C6058 ; =0x021D33DA
+ bic r1, r1, #0x40000000
+ str r1, [r2, #0x0]
+ bx r12
+ .balign 4
+_020C6050: .word 0x04001000
+_020C6054: .word FUN_020C6130
+_020C6058: .word 0x021D33DA
+
+ arm_func_start FUN_020C605C
+FUN_020C605C: ; 0x020C605C
+ ldr ip, _020C6068 ; =FUN_020C6130
+ ldr r0, _020C606C ; =0x021D33D8
+ bx r12
+ .balign 4
+_020C6068: .word FUN_020C6130
+_020C606C: .word 0x021D33D8
+
+ arm_func_start GX_ResetBankForSubBG
+GX_ResetBankForSubBG: ; 0x020C6070
+ ldr ip, _020C607C ; =FUN_020C6130
+ ldr r0, _020C6080 ; =0x021D33D6
+ bx r12
+ .balign 4
+_020C607C: .word FUN_020C6130
+_020C6080: .word 0x021D33D6
+
+ arm_func_start GX_ResetBankForClearImage
+GX_ResetBankForClearImage: ; 0x020C6084
+ ldr ip, _020C6090 ; =FUN_020C6130
+ ldr r0, _020C6094 ; =0x021D33D0
+ bx r12
+ .balign 4
+_020C6090: .word FUN_020C6130
+_020C6094: .word 0x021D33D0
+
+ arm_func_start GX_ResetBankForTexPltt
+GX_ResetBankForTexPltt: ; 0x020C6098
+ ldr ip, _020C60A4 ; =FUN_020C6130
+ ldr r0, _020C60A8 ; =0x021D33CE
+ bx r12
+ .balign 4
+_020C60A4: .word FUN_020C6130
+_020C60A8: .word 0x021D33CE
+
+ arm_func_start GX_ResetBankForTex
+GX_ResetBankForTex: ; 0x020C60AC
+ ldr ip, _020C60B8 ; =FUN_020C6130
+ ldr r0, _020C60BC ; =0x021D33CC
+ bx r12
+ .balign 4
+_020C60B8: .word FUN_020C6130
+_020C60BC: .word 0x021D33CC
+
+ arm_func_start GX_ResetBankForOBJExtPltt
+GX_ResetBankForOBJExtPltt: ; 0x020C60C0
+ mov r2, #0x4000000
+ ldr r1, [r2, #0x0]
+ ldr ip, _020C60DC ; =FUN_020C6130
+ bic r1, r1, #0x80000000
+ ldr r0, _020C60E0 ; =0x021D33D4
+ str r1, [r2, #0x0]
+ bx r12
+ .balign 4
+_020C60DC: .word FUN_020C6130
+_020C60E0: .word 0x021D33D4
+
+ arm_func_start GX_ResetBankForBGExtPltt
+GX_ResetBankForBGExtPltt: ; 0x020C60E4
+ mov r2, #0x4000000
+ ldr r1, [r2, #0x0]
+ ldr ip, _020C6100 ; =FUN_020C6130
+ bic r1, r1, #0x40000000
+ ldr r0, _020C6104 ; =0x021D33D2
+ str r1, [r2, #0x0]
+ bx r12
+ .balign 4
+_020C6100: .word FUN_020C6130
+_020C6104: .word 0x021D33D2
+
+ arm_func_start GX_ResetBankForOBJ
+GX_ResetBankForOBJ: ; 0x020C6108
+ ldr ip, _020C6114 ; =FUN_020C6130
+ ldr r0, _020C6118 ; =0x021D33C8
+ bx r12
+ .balign 4
+_020C6114: .word FUN_020C6130
+_020C6118: .word 0x021D33C8
+
+ arm_func_start GX_ResetBankForBG
+GX_ResetBankForBG: ; 0x020C611C
+ ldr ip, _020C6128 ; =FUN_020C6130
+ ldr r0, _020C612C ; =0x021D33C6
+ bx r12
+ .balign 4
+_020C6128: .word FUN_020C6130
+_020C612C: .word 0x021D33C6
+
+ arm_func_start FUN_020C6130
+FUN_020C6130: ; 0x020C6130
+ stmdb sp!, {r4,lr}
+ ldrh r4, [r0, #0x0]
+ mov r2, #0x0
+ ldr r1, _020C6164 ; =0x021D33C4
+ strh r2, [r0, #0x0]
+ ldrh r2, [r1, #0x0]
+ mov r0, r4
+ orr r2, r2, r4
+ strh r2, [r1, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020C6164: .word 0x021D33C4
+
+ arm_func_start GX_SetBankForSubOBJExtPltt
+GX_SetBankForSubOBJExtPltt: ; 0x020C6168
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C61E8 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x18]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x0
+ strh r0, [r1, #0x18]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ beq _020C61C0
+ cmp r0, #0x100
+ bne _020C61D0
+ ldr r3, _020C61EC ; =0x04001000
+ ldr r0, _020C61F0 ; =0x04000249
+ ldr r2, [r3, #0x0]
+ mov r1, #0x83
+ orr r2, r2, #0x80000000
+ str r2, [r3, #0x0]
+ strb r1, [r0, #0x0]
+ b _020C61D0
+_020C61C0:
+ ldr r1, _020C61EC ; =0x04001000
+ ldr r0, [r1, #0x0]
+ bic r0, r0, #0x80000000
+ str r0, [r1, #0x0]
+_020C61D0:
+ ldr r0, _020C61E8 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C61E8: .word 0x021D33C4
+_020C61EC: .word 0x04001000
+_020C61F0: .word 0x04000249
+
+ arm_func_start GX_SetBankForSubBGExtPltt
+GX_SetBankForSubBGExtPltt: ; 0x020C61F4
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C6274 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x16]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x0
+ strh r0, [r1, #0x16]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ beq _020C624C
+ cmp r0, #0x80
+ bne _020C625C
+ ldr r3, _020C6278 ; =0x04001000
+ ldr r0, _020C627C ; =0x04000248
+ ldr r2, [r3, #0x0]
+ mov r1, #0x82
+ orr r2, r2, #0x40000000
+ str r2, [r3, #0x0]
+ strb r1, [r0, #0x0]
+ b _020C625C
+_020C624C:
+ ldr r1, _020C6278 ; =0x04001000
+ ldr r0, [r1, #0x0]
+ bic r0, r0, #0x40000000
+ str r0, [r1, #0x0]
+_020C625C:
+ ldr r0, _020C6274 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C6274: .word 0x021D33C4
+_020C6278: .word 0x04001000
+_020C627C: .word 0x04000248
+
+ arm_func_start GX_SetBankForSubOBJ
+GX_SetBankForSubOBJ: ; 0x020C6280
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C62F0 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x14]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x0
+ strh r0, [r1, #0x14]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ beq _020C62D8
+ cmp r0, #0x8
+ beq _020C62CC
+ cmp r0, #0x100
+ ldreq r0, _020C62F4 ; =0x04000249
+ moveq r1, #0x82
+ streqb r1, [r0, #0x0]
+ b _020C62D8
+_020C62CC:
+ ldr r0, _020C62F8 ; =0x04000243
+ mov r1, #0x84
+ strb r1, [r0, #0x0]
+_020C62D8:
+ ldr r0, _020C62F0 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C62F0: .word 0x021D33C4
+_020C62F4: .word 0x04000249
+_020C62F8: .word 0x04000243
+
+ arm_func_start GX_SetBankForSubBG
+GX_SetBankForSubBG: ; 0x020C62FC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C6398 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x12]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x80
+ strh r0, [r1, #0x12]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ bgt _020C6360
+ cmp r0, #0x80
+ bge _020C6374
+ cmp r0, #0x4
+ bgt _020C6380
+ cmp r0, #0x0
+ blt _020C6380
+ cmp r0, #0x0
+ beq _020C6380
+ cmp r0, #0x4
+ ldreq r0, _020C639C ; =0x04000242
+ moveq r1, #0x84
+ streqb r1, [r0, #0x0]
+ b _020C6380
+_020C6360:
+ cmp r0, #0x180
+ bne _020C6380
+ ldr r0, _020C63A0 ; =0x04000249
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+_020C6374:
+ ldr r0, _020C63A4 ; =0x04000248
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+_020C6380:
+ ldr r0, _020C6398 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C6398: .word 0x021D33C4
+_020C639C: .word 0x04000242
+_020C63A0: .word 0x04000249
+_020C63A4: .word 0x04000248
+
+ arm_func_start GX_SetBankForLCDC
+GX_SetBankForLCDC: ; 0x020C63A8
+ ldr r1, _020C63C0 ; =0x021D33C4
+ ldr ip, _020C63C4 ; =GX_VRAMCNT_SetLCDC_
+ ldrh r2, [r1, #0x0]
+ orr r2, r2, r0
+ strh r2, [r1, #0x0]
+ bx r12
+ .balign 4
+_020C63C0: .word 0x021D33C4
+_020C63C4: .word GX_VRAMCNT_SetLCDC_
+
+ arm_func_start GX_SetBankForARM7
+GX_SetBankForARM7: ; 0x020C63C8
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C6474 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x6]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x8
+ strh r0, [r1, #0x6]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ bgt _020C642C
+ cmp r0, #0x8
+ bge _020C6450
+ cmp r0, #0x4
+ bgt _020C645C
+ cmp r0, #0x0
+ blt _020C645C
+ cmp r0, #0x0
+ beq _020C645C
+ cmp r0, #0x4
+ ldreq r0, _020C6478 ; =0x04000242
+ moveq r1, #0x82
+ streqb r1, [r0, #0x0]
+ b _020C645C
+_020C642C:
+ cmp r0, #0xc
+ bne _020C645C
+ ldr r1, _020C647C ; =0x04000243
+ mov r2, #0x8a
+ strb r2, [r1, #0x0]
+ ldr r0, _020C6478 ; =0x04000242
+ mov r1, #0x82
+ strb r1, [r0, #0x0]
+ b _020C645C
+_020C6450:
+ ldr r0, _020C647C ; =0x04000243
+ mov r1, #0x82
+ strb r1, [r0, #0x0]
+_020C645C:
+ ldr r0, _020C6474 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C6474: .word 0x021D33C4
+_020C6478: .word 0x04000242
+_020C647C: .word 0x04000243
+
+ arm_func_start GX_SetBankForClearImage
+GX_SetBankForClearImage: ; 0x020C6480
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C65A8 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0xc]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0xc
+ strh r0, [r1, #0xc]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ addls pc, pc, r0, lsl #0x2
+ b _020C6590
+_020C64B4: ; 0x020C64B4
+ b _020C6540
+_020C64B8: ; 0x020C64B8
+ b _020C6554
+_020C64BC: ; 0x020C64BC
+ b _020C64F4
+_020C64C0: ; 0x020C64C0
+ b _020C64E8
+_020C64C4: ; 0x020C64C4
+ b _020C6574
+_020C64C8: ; 0x020C64C8
+ b _020C6590
+_020C64CC: ; 0x020C64CC
+ b _020C6590
+_020C64D0: ; 0x020C64D0
+ b _020C6590
+_020C64D4: ; 0x020C64D4
+ b _020C6520
+_020C64D8: ; 0x020C64D8
+ b _020C6590
+_020C64DC: ; 0x020C64DC
+ b _020C6590
+_020C64E0: ; 0x020C64E0
+ b _020C6590
+_020C64E4: ; 0x020C64E4
+ b _020C6514
+_020C64E8:
+ ldr r0, _020C65AC ; =0x04000240
+ mov r1, #0x93
+ strb r1, [r0, #0x0]
+_020C64F4:
+ ldr r0, _020C65B0 ; =0x04000241
+ mov r2, #0x9b
+ ldr r1, _020C65B4 ; =0x04000060
+ strb r2, [r0, #0x0]
+ ldrh r0, [r1, #0x0]
+ orr r0, r0, #0x4000
+ strh r0, [r1, #0x0]
+ b _020C6590
+_020C6514:
+ ldr r0, _020C65B8 ; =0x04000242
+ mov r1, #0x93
+ strb r1, [r0, #0x0]
+_020C6520:
+ ldr r0, _020C65BC ; =0x04000243
+ mov r2, #0x9b
+ ldr r1, _020C65B4 ; =0x04000060
+ strb r2, [r0, #0x0]
+ ldrh r0, [r1, #0x0]
+ orr r0, r0, #0x4000
+ strh r0, [r1, #0x0]
+ b _020C6590
+_020C6540:
+ ldr r1, _020C65B4 ; =0x04000060
+ ldrh r0, [r1, #0x0]
+ bic r0, r0, #0x4000
+ strh r0, [r1, #0x0]
+ b _020C6590
+_020C6554:
+ ldr r0, _020C65AC ; =0x04000240
+ mov r2, #0x9b
+ ldr r1, _020C65B4 ; =0x04000060
+ strb r2, [r0, #0x0]
+ ldrh r0, [r1, #0x0]
+ orr r0, r0, #0x4000
+ strh r0, [r1, #0x0]
+ b _020C6590
+_020C6574:
+ ldr r0, _020C65B8 ; =0x04000242
+ mov r2, #0x9b
+ ldr r1, _020C65B4 ; =0x04000060
+ strb r2, [r0, #0x0]
+ ldrh r0, [r1, #0x0]
+ orr r0, r0, #0x4000
+ strh r0, [r1, #0x0]
+_020C6590:
+ ldr r0, _020C65A8 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C65A8: .word 0x021D33C4
+_020C65AC: .word 0x04000240
+_020C65B0: .word 0x04000241
+_020C65B4: .word 0x04000060
+_020C65B8: .word 0x04000242
+_020C65BC: .word 0x04000243
+
+ arm_func_start GX_SetBankForTexPltt
+GX_SetBankForTexPltt: ; 0x020C65C0
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C66A4 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0xa]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x30
+ strh r0, [r1, #0xa]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ bgt _020C661C
+ cmp r0, #0x30
+ bge _020C6674
+ cmp r0, #0x10
+ bgt _020C6610
+ cmp r0, #0x10
+ bge _020C6680
+ cmp r0, #0x0
+ b _020C668C
+_020C6610:
+ cmp r0, #0x20
+ beq _020C6658
+ b _020C668C
+_020C661C:
+ cmp r0, #0x60
+ bgt _020C6640
+ cmp r0, #0x60
+ bge _020C664C
+ cmp r0, #0x40
+ ldreq r0, _020C66A8 ; =0x04000246
+ moveq r1, #0x83
+ streqb r1, [r0, #0x0]
+ b _020C668C
+_020C6640:
+ cmp r0, #0x70
+ beq _020C6668
+ b _020C668C
+_020C664C:
+ ldr r0, _020C66A8 ; =0x04000246
+ mov r1, #0x8b
+ strb r1, [r0, #0x0]
+_020C6658:
+ ldr r0, _020C66AC ; =0x04000245
+ mov r1, #0x83
+ strb r1, [r0, #0x0]
+ b _020C668C
+_020C6668:
+ ldr r0, _020C66A8 ; =0x04000246
+ mov r1, #0x9b
+ strb r1, [r0, #0x0]
+_020C6674:
+ ldr r0, _020C66AC ; =0x04000245
+ mov r1, #0x93
+ strb r1, [r0, #0x0]
+_020C6680:
+ ldr r0, _020C66B0 ; =0x04000244
+ mov r1, #0x83
+ strb r1, [r0, #0x0]
+_020C668C:
+ ldr r0, _020C66A4 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C66A4: .word 0x021D33C4
+_020C66A8: .word 0x04000246
+_020C66AC: .word 0x04000245
+_020C66B0: .word 0x04000244
+
+ arm_func_start GX_SetBankForTex
+GX_SetBankForTex: ; 0x020C66B4
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C689C ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x8]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x0
+ strh r0, [r1, #0x8]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ bne _020C66FC
+ ldr r2, _020C68A0 ; =0x04000060
+ ldr r0, _020C68A4 ; =0x0000CFFE
+ ldrh r1, [r2, #0x0]
+ and r0, r1, r0
+ strh r0, [r2, #0x0]
+ b _020C6884
+_020C66FC:
+ ldr r2, _020C68A0 ; =0x04000060
+ cmp r0, #0xf
+ ldrh r1, [r2, #0x0]
+ bic r1, r1, #0x3000
+ orr r1, r1, #0x1
+ strh r1, [r2, #0x0]
+ addls pc, pc, r0, lsl #0x2
+ b _020C6884
+_020C671C: ; 0x020C671C
+ b _020C6884
+_020C6720: ; 0x020C6720
+ b _020C6878
+_020C6724: ; 0x020C6724
+ b _020C6844
+_020C6728: ; 0x020C6728
+ b _020C686C
+_020C672C: ; 0x020C672C
+ b _020C681C
+_020C6730: ; 0x020C6730
+ b _020C675C
+_020C6734: ; 0x020C6734
+ b _020C6838
+_020C6738: ; 0x020C6738
+ b _020C6860
+_020C673C: ; 0x020C673C
+ b _020C6800
+_020C6740: ; 0x020C6740
+ b _020C6778
+_020C6744: ; 0x020C6744
+ b _020C6794
+_020C6748: ; 0x020C6748
+ b _020C67B0
+_020C674C: ; 0x020C674C
+ b _020C6810
+_020C6750: ; 0x020C6750
+ b _020C67D8
+_020C6754: ; 0x020C6754
+ b _020C682C
+_020C6758: ; 0x020C6758
+ b _020C6854
+_020C675C:
+ ldr r1, _020C68A8 ; =0x04000240
+ mov r2, #0x83
+ ldr r0, _020C68AC ; =0x04000242
+ strb r2, [r1, #0x0]
+ mov r1, #0x8b
+ strb r1, [r0, #0x0]
+ b _020C6884
+_020C6778:
+ ldr r1, _020C68A8 ; =0x04000240
+ mov r2, #0x83
+ ldr r0, _020C68B0 ; =0x04000243
+ strb r2, [r1, #0x0]
+ mov r1, #0x8b
+ strb r1, [r0, #0x0]
+ b _020C6884
+_020C6794:
+ ldr r1, _020C68B4 ; =0x04000241
+ mov r2, #0x83
+ ldr r0, _020C68B0 ; =0x04000243
+ strb r2, [r1, #0x0]
+ mov r1, #0x8b
+ strb r1, [r0, #0x0]
+ b _020C6884
+_020C67B0:
+ ldr r0, _020C68A8 ; =0x04000240
+ mov r2, #0x83
+ ldr r1, _020C68B4 ; =0x04000241
+ strb r2, [r0, #0x0]
+ mov r2, #0x8b
+ ldr r0, _020C68B0 ; =0x04000243
+ strb r2, [r1, #0x0]
+ mov r1, #0x93
+ strb r1, [r0, #0x0]
+ b _020C6884
+_020C67D8:
+ ldr r0, _020C68A8 ; =0x04000240
+ mov r2, #0x83
+ ldr r1, _020C68AC ; =0x04000242
+ strb r2, [r0, #0x0]
+ mov r2, #0x8b
+ ldr r0, _020C68B0 ; =0x04000243
+ strb r2, [r1, #0x0]
+ mov r1, #0x93
+ strb r1, [r0, #0x0]
+ b _020C6884
+_020C6800:
+ ldr r0, _020C68B0 ; =0x04000243
+ mov r1, #0x83
+ strb r1, [r0, #0x0]
+ b _020C6884
+_020C6810:
+ ldr r0, _020C68B0 ; =0x04000243
+ mov r1, #0x8b
+ strb r1, [r0, #0x0]
+_020C681C:
+ ldr r0, _020C68AC ; =0x04000242
+ mov r1, #0x83
+ strb r1, [r0, #0x0]
+ b _020C6884
+_020C682C:
+ ldr r0, _020C68B0 ; =0x04000243
+ mov r1, #0x93
+ strb r1, [r0, #0x0]
+_020C6838:
+ ldr r0, _020C68AC ; =0x04000242
+ mov r1, #0x8b
+ strb r1, [r0, #0x0]
+_020C6844:
+ ldr r0, _020C68B4 ; =0x04000241
+ mov r1, #0x83
+ strb r1, [r0, #0x0]
+ b _020C6884
+_020C6854:
+ ldr r0, _020C68B0 ; =0x04000243
+ mov r1, #0x9b
+ strb r1, [r0, #0x0]
+_020C6860:
+ ldr r0, _020C68AC ; =0x04000242
+ mov r1, #0x93
+ strb r1, [r0, #0x0]
+_020C686C:
+ ldr r0, _020C68B4 ; =0x04000241
+ mov r1, #0x8b
+ strb r1, [r0, #0x0]
+_020C6878:
+ ldr r0, _020C68A8 ; =0x04000240
+ mov r1, #0x83
+ strb r1, [r0, #0x0]
+_020C6884:
+ ldr r0, _020C689C ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C689C: .word 0x021D33C4
+_020C68A0: .word 0x04000060
+_020C68A4: .word 0x0000CFFE
+_020C68A8: .word 0x04000240
+_020C68AC: .word 0x04000242
+_020C68B0: .word 0x04000243
+_020C68B4: .word 0x04000241
+
+ arm_func_start GX_SetBankForOBJExtPltt
+GX_SetBankForOBJExtPltt: ; 0x020C68B8
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C6964 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x10]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x0
+ strh r0, [r1, #0x10]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ beq _020C693C
+ cmp r0, #0x20
+ beq _020C68FC
+ cmp r0, #0x40
+ beq _020C691C
+ b _020C694C
+_020C68FC:
+ mov r2, #0x4000000
+ ldr r1, [r2, #0x0]
+ ldr r0, _020C6968 ; =0x04000245
+ orr r1, r1, #0x80000000
+ str r1, [r2, #0x0]
+ mov r1, #0x85
+ strb r1, [r0, #0x0]
+ b _020C694C
+_020C691C:
+ mov r2, #0x4000000
+ ldr r1, [r2, #0x0]
+ ldr r0, _020C696C ; =0x04000246
+ orr r1, r1, #0x80000000
+ str r1, [r2, #0x0]
+ mov r1, #0x85
+ strb r1, [r0, #0x0]
+ b _020C694C
+_020C693C:
+ mov r1, #0x4000000
+ ldr r0, [r1, #0x0]
+ bic r0, r0, #0x80000000
+ str r0, [r1, #0x0]
+_020C694C:
+ ldr r0, _020C6964 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C6964: .word 0x021D33C4
+_020C6968: .word 0x04000245
+_020C696C: .word 0x04000246
+
+ arm_func_start GX_SetBankForBGExtPltt
+GX_SetBankForBGExtPltt: ; 0x020C6970
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C6A74 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0xe]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x20
+ strh r0, [r1, #0xe]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ bgt _020C69D4
+ cmp r0, #0x20
+ bge _020C6A40
+ cmp r0, #0x0
+ bgt _020C69C8
+ cmp r0, #0x0
+ moveq r1, #0x4000000
+ ldreq r0, [r1, #0x0]
+ biceq r0, r0, #0x40000000
+ streq r0, [r1, #0x0]
+ b _020C6A5C
+_020C69C8:
+ cmp r0, #0x10
+ beq _020C69F4
+ b _020C6A5C
+_020C69D4:
+ cmp r0, #0x40
+ bgt _020C69E8
+ cmp r0, #0x40
+ beq _020C6A14
+ b _020C6A5C
+_020C69E8:
+ cmp r0, #0x60
+ beq _020C6A34
+ b _020C6A5C
+_020C69F4:
+ mov r2, #0x4000000
+ ldr r1, [r2, #0x0]
+ ldr r0, _020C6A78 ; =0x04000244
+ orr r1, r1, #0x40000000
+ str r1, [r2, #0x0]
+ mov r1, #0x84
+ strb r1, [r0, #0x0]
+ b _020C6A5C
+_020C6A14:
+ mov r2, #0x4000000
+ ldr r1, [r2, #0x0]
+ ldr r0, _020C6A7C ; =0x04000246
+ orr r1, r1, #0x40000000
+ str r1, [r2, #0x0]
+ mov r1, #0x8c
+ strb r1, [r0, #0x0]
+ b _020C6A5C
+_020C6A34:
+ ldr r0, _020C6A7C ; =0x04000246
+ mov r1, #0x8c
+ strb r1, [r0, #0x0]
+_020C6A40:
+ ldr r0, _020C6A80 ; =0x04000245
+ mov r1, #0x84
+ strb r1, [r0, #0x0]
+ mov r1, #0x4000000
+ ldr r0, [r1, #0x0]
+ orr r0, r0, #0x40000000
+ str r0, [r1, #0x0]
+_020C6A5C:
+ ldr r0, _020C6A74 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C6A74: .word 0x021D33C4
+_020C6A78: .word 0x04000244
+_020C6A7C: .word 0x04000246
+_020C6A80: .word 0x04000245
+
+ arm_func_start GX_SetBankForOBJ
+GX_SetBankForOBJ: ; 0x020C6A84
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C6BD8 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x4]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x30
+ strh r0, [r1, #0x4]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ bgt _020C6AF4
+ cmp r0, #0x30
+ bge _020C6B70
+ cmp r0, #0x10
+ bgt _020C6AE8
+ cmp r0, #0x10
+ bge _020C6B7C
+ cmp r0, #0x3
+ addls pc, pc, r0, lsl #0x2
+ b _020C6BC0
+_020C6AD8: ; 0x020C6AD8
+ b _020C6BC0
+_020C6ADC: ; 0x020C6ADC
+ b _020C6B44
+_020C6AE0: ; 0x020C6AE0
+ b _020C6B54
+_020C6AE4: ; 0x020C6AE4
+ b _020C6B38
+_020C6AE8:
+ cmp r0, #0x20
+ beq _020C6BB4
+ b _020C6BC0
+_020C6AF4:
+ cmp r0, #0x50
+ bgt _020C6B18
+ cmp r0, #0x50
+ bge _020C6B8C
+ cmp r0, #0x40
+ ldreq r0, _020C6BDC ; =0x04000246
+ moveq r1, #0x82
+ streqb r1, [r0, #0x0]
+ b _020C6BC0
+_020C6B18:
+ cmp r0, #0x60
+ bgt _020C6B2C
+ cmp r0, #0x60
+ beq _020C6BA8
+ b _020C6BC0
+_020C6B2C:
+ cmp r0, #0x70
+ beq _020C6B64
+ b _020C6BC0
+_020C6B38:
+ ldr r0, _020C6BE0 ; =0x04000241
+ mov r1, #0x8a
+ strb r1, [r0, #0x0]
+_020C6B44:
+ ldr r0, _020C6BE4 ; =0x04000240
+ mov r1, #0x82
+ strb r1, [r0, #0x0]
+ b _020C6BC0
+_020C6B54:
+ ldr r0, _020C6BE0 ; =0x04000241
+ mov r1, #0x82
+ strb r1, [r0, #0x0]
+ b _020C6BC0
+_020C6B64:
+ ldr r0, _020C6BDC ; =0x04000246
+ mov r1, #0x9a
+ strb r1, [r0, #0x0]
+_020C6B70:
+ ldr r0, _020C6BE8 ; =0x04000245
+ mov r1, #0x92
+ strb r1, [r0, #0x0]
+_020C6B7C:
+ ldr r0, _020C6BEC ; =0x04000244
+ mov r1, #0x82
+ strb r1, [r0, #0x0]
+ b _020C6BC0
+_020C6B8C:
+ ldr r1, _020C6BDC ; =0x04000246
+ mov r2, #0x92
+ ldr r0, _020C6BEC ; =0x04000244
+ strb r2, [r1, #0x0]
+ mov r1, #0x82
+ strb r1, [r0, #0x0]
+ b _020C6BC0
+_020C6BA8:
+ ldr r0, _020C6BDC ; =0x04000246
+ mov r1, #0x8a
+ strb r1, [r0, #0x0]
+_020C6BB4:
+ ldr r0, _020C6BE8 ; =0x04000245
+ mov r1, #0x82
+ strb r1, [r0, #0x0]
+_020C6BC0:
+ ldr r0, _020C6BD8 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C6BD8: .word 0x021D33C4
+_020C6BDC: .word 0x04000246
+_020C6BE0: .word 0x04000241
+_020C6BE4: .word 0x04000240
+_020C6BE8: .word 0x04000245
+_020C6BEC: .word 0x04000244
+
+ arm_func_start GX_SetBankForBG
+GX_SetBankForBG: ; 0x020C6BF0
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020C6E88 ; =0x021D33C4
+ mvn r12, r0
+ ldrh r2, [r1, #0x2]
+ ldrh r3, [r1, #0x0]
+ cmp r0, #0x40
+ strh r0, [r1, #0x2]
+ orr r2, r3, r2
+ and r2, r12, r2
+ strh r2, [r1, #0x0]
+ bgt _020C6CCC
+ cmp r0, #0x40
+ bge _020C6E64
+ cmp r0, #0x20
+ bgt _020C6CC0
+ cmp r0, #0x0
+ addge pc, pc, r0, lsl #0x2
+ b _020C6E70
+_020C6C3C: ; 0x020C6C3C
+ b _020C6E70
+_020C6C40: ; 0x020C6C40
+ b _020C6D6C
+_020C6C44: ; 0x020C6C44
+ b _020C6D38
+_020C6C48: ; 0x020C6C48
+ b _020C6D60
+_020C6C4C: ; 0x020C6C4C
+ b _020C6D10
+_020C6C50: ; 0x020C6C50
+ b _020C6DB0
+_020C6C54: ; 0x020C6C54
+ b _020C6D2C
+_020C6C58: ; 0x020C6C58
+ b _020C6D54
+_020C6C5C: ; 0x020C6C5C
+ b _020C6CF4
+_020C6C60: ; 0x020C6C60
+ b _020C6DCC
+_020C6C64: ; 0x020C6C64
+ b _020C6DE8
+_020C6C68: ; 0x020C6C68
+ b _020C6D7C
+_020C6C6C: ; 0x020C6C6C
+ b _020C6D04
+_020C6C70: ; 0x020C6C70
+ b _020C6DA4
+_020C6C74: ; 0x020C6C74
+ b _020C6D20
+_020C6C78: ; 0x020C6C78
+ b _020C6D48
+_020C6C7C: ; 0x020C6C7C
+ b _020C6E1C
+_020C6C80: ; 0x020C6C80
+ b _020C6E70
+_020C6C84: ; 0x020C6C84
+ b _020C6E70
+_020C6C88: ; 0x020C6C88
+ b _020C6E70
+_020C6C8C: ; 0x020C6C8C
+ b _020C6E70
+_020C6C90: ; 0x020C6C90
+ b _020C6E70
+_020C6C94: ; 0x020C6C94
+ b _020C6E70
+_020C6C98: ; 0x020C6C98
+ b _020C6E70
+_020C6C9C: ; 0x020C6C9C
+ b _020C6E70
+_020C6CA0: ; 0x020C6CA0
+ b _020C6E70
+_020C6CA4: ; 0x020C6CA4
+ b _020C6E70
+_020C6CA8: ; 0x020C6CA8
+ b _020C6E70
+_020C6CAC: ; 0x020C6CAC
+ b _020C6E70
+_020C6CB0: ; 0x020C6CB0
+ b _020C6E70
+_020C6CB4: ; 0x020C6CB4
+ b _020C6E70
+_020C6CB8: ; 0x020C6CB8
+ b _020C6E70
+_020C6CBC: ; 0x020C6CBC
+ b _020C6E54
+_020C6CC0:
+ cmp r0, #0x30
+ beq _020C6E10
+ b _020C6E70
+_020C6CCC:
+ cmp r0, #0x60
+ bgt _020C6CE8
+ cmp r0, #0x60
+ bge _020C6E48
+ cmp r0, #0x50
+ beq _020C6E2C
+ b _020C6E70
+_020C6CE8:
+ cmp r0, #0x70
+ beq _020C6E04
+ b _020C6E70
+_020C6CF4:
+ ldr r0, _020C6E8C ; =0x04000243
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6D04:
+ ldr r0, _020C6E8C ; =0x04000243
+ mov r1, #0x89
+ strb r1, [r0, #0x0]
+_020C6D10:
+ ldr r0, _020C6E90 ; =0x04000242
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6D20:
+ ldr r0, _020C6E8C ; =0x04000243
+ mov r1, #0x91
+ strb r1, [r0, #0x0]
+_020C6D2C:
+ ldr r0, _020C6E90 ; =0x04000242
+ mov r1, #0x89
+ strb r1, [r0, #0x0]
+_020C6D38:
+ ldr r0, _020C6E94 ; =0x04000241
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6D48:
+ ldr r0, _020C6E8C ; =0x04000243
+ mov r1, #0x99
+ strb r1, [r0, #0x0]
+_020C6D54:
+ ldr r0, _020C6E90 ; =0x04000242
+ mov r1, #0x91
+ strb r1, [r0, #0x0]
+_020C6D60:
+ ldr r0, _020C6E94 ; =0x04000241
+ mov r1, #0x89
+ strb r1, [r0, #0x0]
+_020C6D6C:
+ ldr r0, _020C6E98 ; =0x04000240
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6D7C:
+ ldr r0, _020C6E98 ; =0x04000240
+ mov r2, #0x81
+ ldr r1, _020C6E94 ; =0x04000241
+ strb r2, [r0, #0x0]
+ mov r2, #0x89
+ ldr r0, _020C6E8C ; =0x04000243
+ strb r2, [r1, #0x0]
+ mov r1, #0x91
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6DA4:
+ ldr r0, _020C6E8C ; =0x04000243
+ mov r1, #0x91
+ strb r1, [r0, #0x0]
+_020C6DB0:
+ ldr r1, _020C6E98 ; =0x04000240
+ mov r2, #0x81
+ ldr r0, _020C6E90 ; =0x04000242
+ strb r2, [r1, #0x0]
+ mov r1, #0x89
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6DCC:
+ ldr r1, _020C6E98 ; =0x04000240
+ mov r2, #0x81
+ ldr r0, _020C6E8C ; =0x04000243
+ strb r2, [r1, #0x0]
+ mov r1, #0x89
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6DE8:
+ ldr r1, _020C6E94 ; =0x04000241
+ mov r2, #0x81
+ ldr r0, _020C6E8C ; =0x04000243
+ strb r2, [r1, #0x0]
+ mov r1, #0x89
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6E04:
+ ldr r0, _020C6E9C ; =0x04000246
+ mov r1, #0x99
+ strb r1, [r0, #0x0]
+_020C6E10:
+ ldr r0, _020C6EA0 ; =0x04000245
+ mov r1, #0x91
+ strb r1, [r0, #0x0]
+_020C6E1C:
+ ldr r0, _020C6EA4 ; =0x04000244
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6E2C:
+ ldr r1, _020C6E9C ; =0x04000246
+ mov r2, #0x91
+ ldr r0, _020C6EA4 ; =0x04000244
+ strb r2, [r1, #0x0]
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6E48:
+ ldr r0, _020C6E9C ; =0x04000246
+ mov r1, #0x89
+ strb r1, [r0, #0x0]
+_020C6E54:
+ ldr r0, _020C6EA0 ; =0x04000245
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+ b _020C6E70
+_020C6E64:
+ ldr r0, _020C6E9C ; =0x04000246
+ mov r1, #0x81
+ strb r1, [r0, #0x0]
+_020C6E70:
+ ldr r0, _020C6E88 ; =0x021D33C4
+ ldrh r0, [r0, #0x0]
+ bl GX_VRAMCNT_SetLCDC_
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C6E88: .word 0x021D33C4
+_020C6E8C: .word 0x04000243
+_020C6E90: .word 0x04000242
+_020C6E94: .word 0x04000241
+_020C6E98: .word 0x04000240
+_020C6E9C: .word 0x04000246
+_020C6EA0: .word 0x04000245
+_020C6EA4: .word 0x04000244
+
+ arm_func_start GX_VRAMCNT_SetLCDC_
+GX_VRAMCNT_SetLCDC_: ; 0x020C6EA8
+ ands r1, r0, #0x1
+ ldrne r1, _020C6F3C ; =0x04000240
+ movne r2, #0x80
+ strneb r2, [r1, #0x0]
+ ands r1, r0, #0x2
+ ldrne r1, _020C6F40 ; =0x04000241
+ movne r2, #0x80
+ strneb r2, [r1, #0x0]
+ ands r1, r0, #0x4
+ ldrne r1, _020C6F44 ; =0x04000242
+ movne r2, #0x80
+ strneb r2, [r1, #0x0]
+ ands r1, r0, #0x8
+ ldrne r1, _020C6F48 ; =0x04000243
+ movne r2, #0x80
+ strneb r2, [r1, #0x0]
+ ands r1, r0, #0x10
+ ldrne r1, _020C6F4C ; =0x04000244
+ movne r2, #0x80
+ strneb r2, [r1, #0x0]
+ ands r1, r0, #0x20
+ ldrne r1, _020C6F50 ; =0x04000245
+ movne r2, #0x80
+ strneb r2, [r1, #0x0]
+ ands r1, r0, #0x40
+ ldrne r1, _020C6F54 ; =0x04000246
+ movne r2, #0x80
+ strneb r2, [r1, #0x0]
+ ands r1, r0, #0x80
+ ldrne r1, _020C6F58 ; =0x04000248
+ movne r2, #0x80
+ strneb r2, [r1, #0x0]
+ ands r0, r0, #0x100
+ ldrne r0, _020C6F5C ; =0x04000249
+ movne r1, #0x80
+ strneb r1, [r0, #0x0]
+ bx lr
+ .balign 4
+_020C6F3C: .word 0x04000240
+_020C6F40: .word 0x04000241
+_020C6F44: .word 0x04000242
+_020C6F48: .word 0x04000243
+_020C6F4C: .word 0x04000244
+_020C6F50: .word 0x04000245
+_020C6F54: .word 0x04000246
+_020C6F58: .word 0x04000248
+_020C6F5C: .word 0x04000249