mirror of
https://github.com/pret/pokepinballrs.git
synced 2026-04-26 00:37:22 -05:00
Decompile 6 more high_scores.c functions
This commit is contained in:
parent
3aae87397e
commit
73ad521aa1
|
|
@ -4,610 +4,6 @@
|
|||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_DEB4
|
||||
sub_DEB4: @ 0x0800DEB4
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, sl
|
||||
mov r6, sb
|
||||
mov r5, r8
|
||||
push {r5, r6, r7}
|
||||
movs r2, #0
|
||||
ldr r0, _0800DF54 @ =gUnknown_02002858
|
||||
mov r8, r0
|
||||
ldr r0, _0800DF58 @ =gMain
|
||||
mov ip, r0
|
||||
ldr r0, _0800DF5C @ =gUnknown_0202C610
|
||||
mov sl, r0
|
||||
movs r0, #0x74
|
||||
add r0, ip
|
||||
mov sb, r0
|
||||
_0800DED2:
|
||||
movs r1, #0
|
||||
lsls r0, r2, #1
|
||||
adds r7, r2, #1
|
||||
adds r0, r0, r2
|
||||
lsls r5, r0, #6
|
||||
adds r6, r5, #0
|
||||
adds r6, #0xe4
|
||||
_0800DEE0:
|
||||
lsls r0, r1, #1
|
||||
adds r4, r1, #1
|
||||
adds r0, r0, r1
|
||||
lsls r0, r0, #3
|
||||
adds r1, r0, r6
|
||||
add r1, sb
|
||||
adds r0, r0, r5
|
||||
mov r2, sl
|
||||
adds r3, r0, r2
|
||||
movs r2, #5
|
||||
_0800DEF4:
|
||||
ldm r1!, {r0}
|
||||
stm r3!, {r0}
|
||||
subs r2, #1
|
||||
cmp r2, #0
|
||||
bge _0800DEF4
|
||||
adds r1, r4, #0
|
||||
cmp r1, #7
|
||||
ble _0800DEE0
|
||||
adds r2, r7, #0
|
||||
cmp r2, #1
|
||||
ble _0800DED2
|
||||
movs r0, #0
|
||||
movs r1, #0
|
||||
mov r2, r8
|
||||
strh r0, [r2, #8]
|
||||
strh r0, [r2, #0x1e]
|
||||
strh r0, [r2, #0x1c]
|
||||
strb r1, [r2, #0xb]
|
||||
ldr r2, _0800DF60 @ =gUnknown_02002882
|
||||
strh r0, [r2]
|
||||
movs r2, #1
|
||||
rsbs r2, r2, #0
|
||||
adds r0, r2, #0
|
||||
ldr r2, _0800DF64 @ =gUnknown_02002880
|
||||
strh r0, [r2]
|
||||
mov r0, r8
|
||||
adds r0, #0x24
|
||||
strb r1, [r0]
|
||||
mov r0, r8
|
||||
strb r1, [r0, #0xa]
|
||||
ldr r2, _0800DF60 @ =gUnknown_02002882
|
||||
ldrh r1, [r2]
|
||||
movs r0, #0xbd
|
||||
lsls r0, r0, #2
|
||||
add r0, ip
|
||||
strh r1, [r0]
|
||||
ldrh r1, [r2]
|
||||
movs r0, #0xbc
|
||||
lsls r0, r0, #2
|
||||
add r0, ip
|
||||
strh r1, [r0]
|
||||
pop {r3, r4, r5}
|
||||
mov r8, r3
|
||||
mov sb, r4
|
||||
mov sl, r5
|
||||
pop {r4, r5, r6, r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0800DF54: .4byte gUnknown_02002858
|
||||
_0800DF58: .4byte gMain
|
||||
_0800DF5C: .4byte gUnknown_0202C610
|
||||
_0800DF60: .4byte gUnknown_02002882
|
||||
_0800DF64: .4byte gUnknown_02002880
|
||||
|
||||
thumb_func_start sub_DF68
|
||||
sub_DF68: @ 0x0800DF68
|
||||
push {r4, r5, lr}
|
||||
ldr r0, _0800DF80 @ =gUnknown_02002858
|
||||
ldrb r4, [r0, #0xa]
|
||||
adds r5, r0, #0
|
||||
cmp r4, #1
|
||||
beq _0800DFE8
|
||||
cmp r4, #1
|
||||
bgt _0800DF88
|
||||
cmp r4, #0
|
||||
beq _0800DF94
|
||||
ldr r4, _0800DF84 @ =gMain
|
||||
b _0800E072
|
||||
.align 2, 0
|
||||
_0800DF80: .4byte gUnknown_02002858
|
||||
_0800DF84: .4byte gMain
|
||||
_0800DF88:
|
||||
cmp r4, #2
|
||||
beq _0800E020
|
||||
ldr r4, _0800DF90 @ =gMain
|
||||
b _0800E072
|
||||
.align 2, 0
|
||||
_0800DF90: .4byte gMain
|
||||
_0800DF94:
|
||||
ldrh r0, [r5, #0x1e]
|
||||
adds r0, #1
|
||||
strh r0, [r5, #0x1e]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #8
|
||||
ble _0800DFC0
|
||||
strh r4, [r5, #0x1e]
|
||||
movs r0, #0x1c
|
||||
ldrsh r2, [r5, r0]
|
||||
movs r0, #0
|
||||
movs r1, #0
|
||||
bl sub_F8B0
|
||||
ldrh r0, [r5, #0x1c]
|
||||
adds r0, #1
|
||||
strh r0, [r5, #0x1c]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #2
|
||||
ble _0800DFC0
|
||||
strh r4, [r5, #0x1c]
|
||||
_0800DFC0:
|
||||
ldr r0, _0800DFE0 @ =gUnknown_02002858
|
||||
movs r1, #8
|
||||
ldrsh r2, [r0, r1]
|
||||
movs r1, #0x96
|
||||
lsls r1, r1, #2
|
||||
adds r5, r0, #0
|
||||
ldr r4, _0800DFE4 @ =gMain
|
||||
cmp r2, r1
|
||||
ble _0800E072
|
||||
movs r0, #0
|
||||
strh r0, [r5, #8]
|
||||
strh r0, [r5, #0x1e]
|
||||
strh r0, [r5, #0x1c]
|
||||
movs r0, #1
|
||||
strb r0, [r5, #0xa]
|
||||
b _0800E072
|
||||
.align 2, 0
|
||||
_0800DFE0: .4byte gUnknown_02002858
|
||||
_0800DFE4: .4byte gMain
|
||||
_0800DFE8:
|
||||
ldr r2, _0800E018 @ =gUnknown_02002882
|
||||
ldrh r0, [r2]
|
||||
adds r0, #8
|
||||
strh r0, [r2]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #0xef
|
||||
ble _0800E000
|
||||
movs r0, #0
|
||||
strh r0, [r5, #8]
|
||||
movs r0, #2
|
||||
strb r0, [r5, #0xa]
|
||||
_0800E000:
|
||||
ldr r1, _0800E01C @ =gMain
|
||||
ldrh r2, [r2]
|
||||
movs r3, #0xbd
|
||||
lsls r3, r3, #2
|
||||
adds r0, r1, r3
|
||||
strh r2, [r0]
|
||||
subs r3, #4
|
||||
adds r0, r1, r3
|
||||
strh r2, [r0]
|
||||
adds r4, r1, #0
|
||||
b _0800E072
|
||||
.align 2, 0
|
||||
_0800E018: .4byte gUnknown_02002882
|
||||
_0800E01C: .4byte gMain
|
||||
_0800E020:
|
||||
ldrh r0, [r5, #0x1e]
|
||||
adds r0, #1
|
||||
movs r4, #0
|
||||
strh r0, [r5, #0x1e]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #8
|
||||
ble _0800E04E
|
||||
strh r4, [r5, #0x1e]
|
||||
movs r0, #0x1c
|
||||
ldrsh r2, [r5, r0]
|
||||
movs r0, #1
|
||||
movs r1, #0
|
||||
bl sub_F8B0
|
||||
ldrh r0, [r5, #0x1c]
|
||||
adds r0, #1
|
||||
strh r0, [r5, #0x1c]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #2
|
||||
ble _0800E04E
|
||||
strh r4, [r5, #0x1c]
|
||||
_0800E04E:
|
||||
ldr r0, _0800E0B0 @ =gUnknown_02002858
|
||||
movs r1, #8
|
||||
ldrsh r2, [r0, r1]
|
||||
movs r1, #0x96
|
||||
lsls r1, r1, #2
|
||||
adds r5, r0, #0
|
||||
ldr r4, _0800E0B4 @ =gMain
|
||||
cmp r2, r1
|
||||
ble _0800E072
|
||||
movs r1, #0
|
||||
movs r0, #0
|
||||
strh r0, [r5, #8]
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x24
|
||||
strb r1, [r0]
|
||||
ldrb r0, [r4, #3]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #3]
|
||||
_0800E072:
|
||||
ldrh r0, [r5, #8]
|
||||
adds r0, #1
|
||||
strh r0, [r5, #8]
|
||||
ldr r1, _0800E0B8 @ =0x040000D4
|
||||
ldr r0, _0800E0BC @ =gUnknown_03005C00
|
||||
str r0, [r1]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #0x13
|
||||
str r0, [r1, #4]
|
||||
ldr r0, _0800E0C0 @ =0x80000800
|
||||
str r0, [r1, #8]
|
||||
ldr r0, [r1, #8]
|
||||
ldrh r1, [r4, #0x18]
|
||||
movs r0, #0xb
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0800E0A8
|
||||
movs r0, #0x66
|
||||
bl m4aSongNumStart
|
||||
adds r1, r5, #0
|
||||
adds r1, #0x24
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
ldrb r0, [r4, #3]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #3]
|
||||
_0800E0A8:
|
||||
pop {r4, r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0800E0B0: .4byte gUnknown_02002858
|
||||
_0800E0B4: .4byte gMain
|
||||
_0800E0B8: .4byte 0x040000D4
|
||||
_0800E0BC: .4byte gUnknown_03005C00
|
||||
_0800E0C0: .4byte 0x80000800
|
||||
|
||||
thumb_func_start sub_E0C4
|
||||
sub_E0C4: @ 0x0800E0C4
|
||||
push {lr}
|
||||
bl sub_02B4
|
||||
bl m4aMPlayAllStop
|
||||
bl sub_0D10
|
||||
ldr r0, _0800E0E8 @ =gUnknown_02002858
|
||||
adds r0, #0x24
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x18
|
||||
asrs r0, r0, #0x18
|
||||
lsls r0, r0, #0x10
|
||||
lsrs r0, r0, #0x10
|
||||
bl SetMainGameState
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0800E0E8: .4byte gUnknown_02002858
|
||||
|
||||
thumb_func_start sub_E0EC
|
||||
sub_E0EC: @ 0x0800E0EC
|
||||
push {r4, r5, r6, lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
bl ResetSomeGraphicsRelatedStuff
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #0x13
|
||||
movs r1, #0x84
|
||||
lsls r1, r1, #5
|
||||
adds r0, r1, #0
|
||||
strh r0, [r2]
|
||||
ldr r1, _0800E1CC @ =0x0400000C
|
||||
ldr r3, _0800E1D0 @ =0x00004006
|
||||
adds r0, r3, #0
|
||||
strh r0, [r1]
|
||||
ldrh r0, [r2]
|
||||
movs r3, #0x80
|
||||
lsls r3, r3, #3
|
||||
adds r1, r3, #0
|
||||
orrs r0, r1
|
||||
strh r0, [r2]
|
||||
ldr r1, _0800E1D4 @ =0x0400000E
|
||||
ldr r3, _0800E1D8 @ =0x0000420F
|
||||
adds r0, r3, #0
|
||||
strh r0, [r1]
|
||||
ldrh r0, [r2]
|
||||
movs r3, #0x80
|
||||
lsls r3, r3, #4
|
||||
adds r1, r3, #0
|
||||
orrs r0, r1
|
||||
strh r0, [r2]
|
||||
ldr r6, _0800E1DC @ =gMain
|
||||
ldrh r0, [r2]
|
||||
strh r0, [r6, #0x16]
|
||||
ldr r4, _0800E1E0 @ =0x040000D4
|
||||
ldr r0, _0800E1E4 @ =gUnknown_0809DBE0
|
||||
str r0, [r4]
|
||||
movs r0, #0xa0
|
||||
lsls r0, r0, #0x13
|
||||
str r0, [r4, #4]
|
||||
ldr r0, _0800E1E8 @ =0x80000100
|
||||
str r0, [r4, #8]
|
||||
ldr r0, [r4, #8]
|
||||
ldr r0, _0800E1EC @ =gUnknown_080957A0
|
||||
str r0, [r4]
|
||||
ldr r0, _0800E1F0 @ =0x06004000
|
||||
str r0, [r4, #4]
|
||||
ldr r0, _0800E1F4 @ =0x80002400
|
||||
str r0, [r4, #8]
|
||||
ldr r0, [r4, #8]
|
||||
ldr r0, _0800E1F8 @ =gUnknown_0809AFC0
|
||||
str r0, [r4]
|
||||
ldr r0, _0800E1FC @ =0x0600C000
|
||||
str r0, [r4, #4]
|
||||
ldr r0, _0800E200 @ =0x80001600
|
||||
str r0, [r4, #8]
|
||||
ldr r0, [r4, #8]
|
||||
ldr r0, _0800E204 @ =gUnknown_080947A0
|
||||
str r0, [r4]
|
||||
ldr r0, _0800E208 @ =gUnknown_03005C00
|
||||
mov r8, r0
|
||||
str r0, [r4, #4]
|
||||
ldr r5, _0800E20C @ =0x80000800
|
||||
str r5, [r4, #8]
|
||||
ldr r0, [r4, #8]
|
||||
ldr r0, _0800E210 @ =gUnknown_08099FC0
|
||||
str r0, [r4]
|
||||
ldr r0, _0800E214 @ =0x06001000
|
||||
str r0, [r4, #4]
|
||||
str r5, [r4, #8]
|
||||
ldr r0, [r4, #8]
|
||||
ldr r0, _0800E218 @ =gUnknown_0809DDE0
|
||||
str r0, [r4]
|
||||
ldr r0, _0800E21C @ =0x05000200
|
||||
str r0, [r4, #4]
|
||||
ldr r0, _0800E220 @ =0x80000010
|
||||
str r0, [r4, #8]
|
||||
ldr r0, [r4, #8]
|
||||
ldr r0, _0800E224 @ =gUnknown_0809DFE0
|
||||
str r0, [r4]
|
||||
ldr r0, _0800E228 @ =0x06010000
|
||||
str r0, [r4, #4]
|
||||
ldr r0, _0800E22C @ =0x80002210
|
||||
str r0, [r4, #8]
|
||||
ldr r0, [r4, #8]
|
||||
bl sub_DEB4
|
||||
bl sub_EE64
|
||||
mov r1, r8
|
||||
str r1, [r4]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #0x13
|
||||
str r0, [r4, #4]
|
||||
str r5, [r4, #8]
|
||||
ldr r0, [r4, #8]
|
||||
movs r0, #9
|
||||
bl m4aSongNumStart
|
||||
bl sub_0CBC
|
||||
bl sub_024C
|
||||
ldrb r0, [r6, #3]
|
||||
adds r0, #1
|
||||
strb r0, [r6, #3]
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4, r5, r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0800E1CC: .4byte 0x0400000C
|
||||
_0800E1D0: .4byte 0x00004006
|
||||
_0800E1D4: .4byte 0x0400000E
|
||||
_0800E1D8: .4byte 0x0000420F
|
||||
_0800E1DC: .4byte gMain
|
||||
_0800E1E0: .4byte 0x040000D4
|
||||
_0800E1E4: .4byte gUnknown_0809DBE0
|
||||
_0800E1E8: .4byte 0x80000100
|
||||
_0800E1EC: .4byte gUnknown_080957A0
|
||||
_0800E1F0: .4byte 0x06004000
|
||||
_0800E1F4: .4byte 0x80002400
|
||||
_0800E1F8: .4byte gUnknown_0809AFC0
|
||||
_0800E1FC: .4byte 0x0600C000
|
||||
_0800E200: .4byte 0x80001600
|
||||
_0800E204: .4byte gUnknown_080947A0
|
||||
_0800E208: .4byte gUnknown_03005C00
|
||||
_0800E20C: .4byte 0x80000800
|
||||
_0800E210: .4byte gUnknown_08099FC0
|
||||
_0800E214: .4byte 0x06001000
|
||||
_0800E218: .4byte gUnknown_0809DDE0
|
||||
_0800E21C: .4byte 0x05000200
|
||||
_0800E220: .4byte 0x80000010
|
||||
_0800E224: .4byte gUnknown_0809DFE0
|
||||
_0800E228: .4byte 0x06010000
|
||||
_0800E22C: .4byte 0x80002210
|
||||
|
||||
thumb_func_start sub_E230
|
||||
sub_E230: @ 0x0800E230
|
||||
push {r4, r5, lr}
|
||||
ldr r0, _0800E248 @ =gUnknown_02002858
|
||||
ldrb r4, [r0, #0xa]
|
||||
adds r5, r0, #0
|
||||
cmp r4, #1
|
||||
beq _0800E2BC
|
||||
cmp r4, #1
|
||||
bgt _0800E250
|
||||
cmp r4, #0
|
||||
beq _0800E25C
|
||||
ldr r4, _0800E24C @ =gMain
|
||||
b _0800E344
|
||||
.align 2, 0
|
||||
_0800E248: .4byte gUnknown_02002858
|
||||
_0800E24C: .4byte gMain
|
||||
_0800E250:
|
||||
cmp r4, #2
|
||||
beq _0800E2F4
|
||||
ldr r4, _0800E258 @ =gMain
|
||||
b _0800E344
|
||||
.align 2, 0
|
||||
_0800E258: .4byte gMain
|
||||
_0800E25C:
|
||||
ldr r0, _0800E2B0 @ =gUnknown_0202BED8
|
||||
ldr r1, [r0]
|
||||
movs r0, #1
|
||||
rsbs r0, r0, #0
|
||||
cmp r1, r0
|
||||
beq _0800E292
|
||||
ldrh r0, [r5, #0x1e]
|
||||
adds r0, #1
|
||||
strh r0, [r5, #0x1e]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #8
|
||||
ble _0800E292
|
||||
strh r4, [r5, #0x1e]
|
||||
movs r0, #0x1c
|
||||
ldrsh r2, [r5, r0]
|
||||
movs r0, #0
|
||||
bl sub_F8B0
|
||||
ldrh r0, [r5, #0x1c]
|
||||
adds r0, #1
|
||||
strh r0, [r5, #0x1c]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #2
|
||||
ble _0800E292
|
||||
strh r4, [r5, #0x1c]
|
||||
_0800E292:
|
||||
ldr r0, _0800E2B4 @ =gUnknown_02002858
|
||||
movs r2, #8
|
||||
ldrsh r1, [r0, r2]
|
||||
adds r5, r0, #0
|
||||
ldr r4, _0800E2B8 @ =gMain
|
||||
cmp r1, #0x78
|
||||
ble _0800E344
|
||||
movs r0, #0
|
||||
strh r0, [r5, #8]
|
||||
strh r0, [r5, #0x1e]
|
||||
strh r0, [r5, #0x1c]
|
||||
movs r0, #1
|
||||
strb r0, [r5, #0xa]
|
||||
b _0800E344
|
||||
.align 2, 0
|
||||
_0800E2B0: .4byte gUnknown_0202BED8
|
||||
_0800E2B4: .4byte gUnknown_02002858
|
||||
_0800E2B8: .4byte gMain
|
||||
_0800E2BC:
|
||||
ldr r2, _0800E2EC @ =gUnknown_02002882
|
||||
ldrh r0, [r2]
|
||||
adds r0, #8
|
||||
strh r0, [r2]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #0xef
|
||||
ble _0800E2D4
|
||||
movs r0, #0
|
||||
strh r0, [r5, #8]
|
||||
movs r0, #2
|
||||
strb r0, [r5, #0xa]
|
||||
_0800E2D4:
|
||||
ldr r1, _0800E2F0 @ =gMain
|
||||
ldrh r2, [r2]
|
||||
movs r3, #0xbd
|
||||
lsls r3, r3, #2
|
||||
adds r0, r1, r3
|
||||
strh r2, [r0]
|
||||
subs r3, #4
|
||||
adds r0, r1, r3
|
||||
strh r2, [r0]
|
||||
adds r4, r1, #0
|
||||
b _0800E344
|
||||
.align 2, 0
|
||||
_0800E2EC: .4byte gUnknown_02002882
|
||||
_0800E2F0: .4byte gMain
|
||||
_0800E2F4:
|
||||
ldr r0, _0800E378 @ =gUnknown_0201B170
|
||||
ldr r1, [r0]
|
||||
movs r0, #1
|
||||
rsbs r0, r0, #0
|
||||
cmp r1, r0
|
||||
beq _0800E32C
|
||||
ldrh r0, [r5, #0x1e]
|
||||
adds r0, #1
|
||||
movs r4, #0
|
||||
strh r0, [r5, #0x1e]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #8
|
||||
ble _0800E32C
|
||||
strh r4, [r5, #0x1e]
|
||||
movs r0, #0x1c
|
||||
ldrsh r2, [r5, r0]
|
||||
movs r0, #1
|
||||
bl sub_F8B0
|
||||
ldrh r0, [r5, #0x1c]
|
||||
adds r0, #1
|
||||
strh r0, [r5, #0x1c]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #2
|
||||
ble _0800E32C
|
||||
strh r4, [r5, #0x1c]
|
||||
_0800E32C:
|
||||
ldr r0, _0800E37C @ =gUnknown_02002858
|
||||
movs r2, #8
|
||||
ldrsh r1, [r0, r2]
|
||||
adds r5, r0, #0
|
||||
ldr r4, _0800E380 @ =gMain
|
||||
cmp r1, #0x78
|
||||
ble _0800E344
|
||||
movs r0, #0
|
||||
strh r0, [r5, #8]
|
||||
ldrb r0, [r4, #3]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #3]
|
||||
_0800E344:
|
||||
ldrh r0, [r5, #8]
|
||||
adds r0, #1
|
||||
strh r0, [r5, #8]
|
||||
ldr r1, _0800E384 @ =0x040000D4
|
||||
ldr r0, _0800E388 @ =gUnknown_03005C00
|
||||
str r0, [r1]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #0x13
|
||||
str r0, [r1, #4]
|
||||
ldr r0, _0800E38C @ =0x80000800
|
||||
str r0, [r1, #8]
|
||||
ldr r0, [r1, #8]
|
||||
ldrh r1, [r4, #0x18]
|
||||
movs r0, #0xb
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0800E372
|
||||
movs r0, #0x66
|
||||
bl m4aSongNumStart
|
||||
ldrb r0, [r4, #3]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #3]
|
||||
_0800E372:
|
||||
pop {r4, r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0800E378: .4byte gUnknown_0201B170
|
||||
_0800E37C: .4byte gUnknown_02002858
|
||||
_0800E380: .4byte gMain
|
||||
_0800E384: .4byte 0x040000D4
|
||||
_0800E388: .4byte gUnknown_03005C00
|
||||
_0800E38C: .4byte 0x80000800
|
||||
|
||||
thumb_func_start sub_E390
|
||||
sub_E390: @ 0x0800E390
|
||||
push {lr}
|
||||
bl sub_02B4
|
||||
bl m4aMPlayAllStop
|
||||
bl sub_0D10
|
||||
movs r0, #8
|
||||
bl SetMainGameState
|
||||
pop {r0}
|
||||
bx r0
|
||||
|
||||
thumb_func_start sub_E3A8
|
||||
sub_E3A8: @ 0x0800E3A8
|
||||
push {r4, r5, r6, r7, lr}
|
||||
|
|
|
|||
|
|
@ -137,7 +137,6 @@ extern void sub_D9F8(void);
|
|||
//extern ? sub_DD4C();
|
||||
//extern ? sub_DD70();
|
||||
extern void sub_DEB4(void);
|
||||
//extern ? sub_DF68();
|
||||
//extern ? sub_E0C4();
|
||||
//extern ? sub_E0EC();
|
||||
//extern ? sub_E230();
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ struct unkStruct_2002858
|
|||
{
|
||||
u32 unk0;
|
||||
u32 unk4;
|
||||
u8 fill8[2];
|
||||
s16 unk8;
|
||||
u8 unkA;
|
||||
u8 unkB;
|
||||
s32 unkC;
|
||||
|
|
@ -42,7 +42,7 @@ struct unkStruct_2002858
|
|||
s16 unk1E;
|
||||
s16 unk20;
|
||||
s16 unk22;
|
||||
u8 unk24;
|
||||
s8 unk24;
|
||||
u8 unk25;
|
||||
u8 unk26;
|
||||
};
|
||||
|
|
@ -900,3 +900,191 @@ void sub_DD70(void)
|
|||
sub_024C();
|
||||
gMain.subState++;
|
||||
}
|
||||
|
||||
void sub_DEB4(void)
|
||||
{
|
||||
int i, j, k;
|
||||
|
||||
for (i = 0; i < 2; i++)
|
||||
{
|
||||
for (j = 0; j < NUM_HIGH_SCORES; j++)
|
||||
{
|
||||
for (k = 0; k < 6; k++)
|
||||
{
|
||||
gUnknown_0202C610[i][j].data.raw[k] = gMain_saveData.highScores[i][j].data.raw[k];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
gUnknown_02002858.unk8 = 0;
|
||||
gUnknown_02002858.unk1E = 0;
|
||||
gUnknown_02002858.unk1C = 0;
|
||||
gUnknown_02002858.unkB = 0;
|
||||
gUnknown_02002882 = 0;
|
||||
gUnknown_02002880 = -1;
|
||||
gUnknown_02002858.unk24 = 0;
|
||||
gUnknown_02002858.unkA = 0;
|
||||
gMain.unk2E8[3].unk0 = gUnknown_02002882;
|
||||
gMain.unk2E8[2].unk0 = gUnknown_02002882;
|
||||
}
|
||||
|
||||
void sub_DF68(void)
|
||||
{
|
||||
switch (gUnknown_02002858.unkA)
|
||||
{
|
||||
case 0:
|
||||
if (++gUnknown_02002858.unk1E > 8)
|
||||
{
|
||||
gUnknown_02002858.unk1E = 0;
|
||||
sub_F8B0(0, 0, gUnknown_02002858.unk1C);
|
||||
if (++gUnknown_02002858.unk1C > 2)
|
||||
gUnknown_02002858.unk1C = 0;
|
||||
}
|
||||
if (gUnknown_02002858.unk8 > 600)
|
||||
{
|
||||
gUnknown_02002858.unk8 = 0;
|
||||
gUnknown_02002858.unk1E = 0;
|
||||
gUnknown_02002858.unk1C = 0;
|
||||
gUnknown_02002858.unkA = 1;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
gUnknown_02002882 += 8;
|
||||
if (gUnknown_02002882 >= 240)
|
||||
{
|
||||
gUnknown_02002858.unk8 = 0;
|
||||
gUnknown_02002858.unkA = 2;
|
||||
}
|
||||
gMain.unk2E8[3].unk0 = gUnknown_02002882;
|
||||
gMain.unk2E8[2].unk0 = gUnknown_02002882;
|
||||
break;
|
||||
case 2:
|
||||
if (++gUnknown_02002858.unk1E > 8)
|
||||
{
|
||||
gUnknown_02002858.unk1E = 0;
|
||||
sub_F8B0(1, 0, gUnknown_02002858.unk1C);
|
||||
if (++gUnknown_02002858.unk1C > 2)
|
||||
gUnknown_02002858.unk1C = 0;
|
||||
}
|
||||
if (gUnknown_02002858.unk8 > 600)
|
||||
{
|
||||
gUnknown_02002858.unk8 = 0;
|
||||
gUnknown_02002858.unk24 = 0;
|
||||
gMain.subState++;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
gUnknown_02002858.unk8++;
|
||||
DmaCopy16(3, gUnknown_03005C00, 0x6000000, 0x1000);
|
||||
|
||||
if (gMain.newKeys & (START_BUTTON | A_BUTTON | B_BUTTON))
|
||||
{
|
||||
m4aSongNumStart(0x66);
|
||||
gUnknown_02002858.unk24 = 1;
|
||||
gMain.subState++;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_E0C4(void)
|
||||
{
|
||||
sub_02B4();
|
||||
m4aMPlayAllStop();
|
||||
sub_0D10();
|
||||
SetMainGameState(gUnknown_02002858.unk24);
|
||||
}
|
||||
|
||||
void sub_E0EC(void)
|
||||
{
|
||||
ResetSomeGraphicsRelatedStuff();
|
||||
REG_DISPCNT = DISPCNT_OBJ_ON | DISPCNT_FORCED_BLANK;
|
||||
REG_BG2CNT = 0x4006;
|
||||
REG_DISPCNT |= DISPCNT_BG2_ON;
|
||||
REG_BG3CNT = 0x420f;
|
||||
REG_DISPCNT |= DISPCNT_BG3_ON;
|
||||
gMain.unk16 = REG_DISPCNT;
|
||||
DmaCopy16(3, gUnknown_0809DBE0, (void*) PLTT, 0x200);
|
||||
DmaCopy16(3, gUnknown_080957A0, (void*) BG_VRAM + 0x4000, 0x4800);
|
||||
DmaCopy16(3, gUnknown_0809AFC0, (void *)BG_VRAM + 0xC000, 0x2C00);
|
||||
DmaCopy16(3, gUnknown_080947A0, gUnknown_03005C00, 0x1000);
|
||||
DmaCopy16(3, gUnknown_08099FC0, (void *)BG_SCREEN_ADDR(2), 0x1000);
|
||||
DmaCopy16(3, gUnknown_0809DDE0, (void *)OBJ_PLTT, 0x20);
|
||||
DmaCopy16(3, gUnknown_0809DFE0, (void *)OBJ_VRAM0, 0x4420);
|
||||
sub_DEB4();
|
||||
sub_EE64();
|
||||
DmaCopy16(3, gUnknown_03005C00,0x6000000, 0x1000);
|
||||
m4aSongNumStart(0x9);
|
||||
sub_0CBC();
|
||||
sub_024C();
|
||||
gMain.subState++;
|
||||
}
|
||||
|
||||
void sub_E230(void)
|
||||
{
|
||||
switch (gUnknown_02002858.unkA)
|
||||
{
|
||||
case 0:
|
||||
if (gUnknown_0202BED8 != -1)
|
||||
{
|
||||
if (++gUnknown_02002858.unk1E > 8)
|
||||
{
|
||||
gUnknown_02002858.unk1E = 0;
|
||||
sub_F8B0(0, gUnknown_0202BED8, gUnknown_02002858.unk1C);
|
||||
if (++gUnknown_02002858.unk1C > 2)
|
||||
gUnknown_02002858.unk1C = 0;
|
||||
}
|
||||
}
|
||||
if (gUnknown_02002858.unk8 > 120)
|
||||
{
|
||||
gUnknown_02002858.unk8 = 0;
|
||||
gUnknown_02002858.unk1E = 0;
|
||||
gUnknown_02002858.unk1C = 0;
|
||||
gUnknown_02002858.unkA = 1;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
gUnknown_02002882 += 8;
|
||||
if (gUnknown_02002882 >= 240)
|
||||
{
|
||||
gUnknown_02002858.unk8 = 0;
|
||||
gUnknown_02002858.unkA = 2;
|
||||
}
|
||||
gMain.unk2E8[3].unk0 = gUnknown_02002882;
|
||||
gMain.unk2E8[2].unk0 = gUnknown_02002882;
|
||||
break;
|
||||
case 2:
|
||||
if (gUnknown_0201B170 != -1)
|
||||
{
|
||||
if (++gUnknown_02002858.unk1E > 8)
|
||||
{
|
||||
gUnknown_02002858.unk1E = 0;
|
||||
sub_F8B0(1, gUnknown_0201B170, gUnknown_02002858.unk1C);
|
||||
if (++gUnknown_02002858.unk1C > 2)
|
||||
gUnknown_02002858.unk1C = 0;
|
||||
}
|
||||
}
|
||||
if (gUnknown_02002858.unk8 > 120)
|
||||
{
|
||||
gUnknown_02002858.unk8 = 0;
|
||||
gMain.subState++;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
gUnknown_02002858.unk8++;
|
||||
DmaCopy16(3, gUnknown_03005C00, 0x6000000, 0x1000);
|
||||
|
||||
if (gMain.newKeys & (START_BUTTON | A_BUTTON | B_BUTTON))
|
||||
{
|
||||
m4aSongNumStart(0x66);
|
||||
gMain.subState++;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_E390(void)
|
||||
{
|
||||
sub_02B4();
|
||||
m4aMPlayAllStop();
|
||||
sub_0D10();
|
||||
SetMainGameState(8);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user