mirror of
https://github.com/pret/pokeruby.git
synced 2024-12-02 18:16:44 +00:00
c84d788ebf
* start decompiling field_camera.c * can't get CameraUpdate to match * finish decompiling
1340 lines
22 KiB
ArmAsm
1340 lines
22 KiB
ArmAsm
.include "constants/gba_constants.inc"
|
|
.include "constants/species_constants.inc"
|
|
.include "asm/macros.inc"
|
|
|
|
.syntax unified
|
|
|
|
.text
|
|
|
|
thumb_func_start sub_80F9020
|
|
sub_80F9020: @ 80F9020
|
|
push {r4,r5,lr}
|
|
ldr r4, _080F9054 @ =gBGTilemapBuffers + 0x800
|
|
movs r5, 0x80
|
|
lsls r5, 4
|
|
adds r0, r4, 0
|
|
movs r1, 0
|
|
adds r2, r5, 0
|
|
bl memset
|
|
adds r0, r4, r5
|
|
movs r1, 0
|
|
adds r2, r5, 0
|
|
bl memset
|
|
movs r0, 0x80
|
|
lsls r0, 5
|
|
adds r4, r0
|
|
adds r0, r4, 0
|
|
movs r1, 0
|
|
adds r2, r5, 0
|
|
bl memset
|
|
pop {r4,r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9054: .4byte gBGTilemapBuffers + 0x800
|
|
thumb_func_end sub_80F9020
|
|
|
|
thumb_func_start sav2_get_text_speed
|
|
sav2_get_text_speed: @ 80F9058
|
|
push {r4,r5,lr}
|
|
sub sp, 0x8
|
|
adds r5, r0, 0
|
|
lsls r1, 16
|
|
lsrs r4, r1, 16
|
|
bl MenuDisplayMessageBox
|
|
cmp r4, 0
|
|
beq _080F907C
|
|
ldr r0, _080F908C @ =gBGTilemapBuffers + 0x800
|
|
movs r1, 0x4
|
|
str r1, [sp]
|
|
str r4, [sp, 0x4]
|
|
movs r1, 0x2
|
|
movs r2, 0xF
|
|
movs r3, 0x1A
|
|
bl sub_80A3FA0
|
|
_080F907C:
|
|
adds r0, r5, 0
|
|
bl sub_8072044
|
|
add sp, 0x8
|
|
pop {r4,r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F908C: .4byte gBGTilemapBuffers + 0x800
|
|
thumb_func_end sav2_get_text_speed
|
|
|
|
thumb_func_start sub_80F9090
|
|
sub_80F9090: @ 80F9090
|
|
push {r4,lr}
|
|
lsls r0, 24
|
|
lsrs r4, r0, 24
|
|
bl MenuUpdateWindowText
|
|
lsls r0, 24
|
|
lsrs r0, 24
|
|
cmp r0, 0x1
|
|
bne _080F90AC
|
|
ldr r0, _080F90B4 @ =gUnknown_0300074C
|
|
ldr r1, [r0]
|
|
adds r0, r4, 0
|
|
bl _call_via_r1
|
|
_080F90AC:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F90B4: .4byte gUnknown_0300074C
|
|
thumb_func_end sub_80F9090
|
|
|
|
thumb_func_start DisplayItemMessageOnField
|
|
DisplayItemMessageOnField: @ 80F90B8
|
|
push {r4,r5,lr}
|
|
adds r4, r0, 0
|
|
adds r0, r1, 0
|
|
adds r5, r2, 0
|
|
adds r1, r3, 0
|
|
lsls r4, 24
|
|
lsrs r4, 24
|
|
lsls r1, 16
|
|
lsrs r1, 16
|
|
bl sav2_get_text_speed
|
|
ldr r0, _080F90E8 @ =gUnknown_0300074C
|
|
str r5, [r0]
|
|
ldr r1, _080F90EC @ =gTasks
|
|
lsls r0, r4, 2
|
|
adds r0, r4
|
|
lsls r0, 3
|
|
adds r0, r1
|
|
ldr r1, _080F90F0 @ =sub_80F9090
|
|
str r1, [r0]
|
|
pop {r4,r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F90E8: .4byte gUnknown_0300074C
|
|
_080F90EC: .4byte gTasks
|
|
_080F90F0: .4byte sub_80F9090
|
|
thumb_func_end DisplayItemMessageOnField
|
|
|
|
thumb_func_start Task_CallYesOrNoCallback
|
|
Task_CallYesOrNoCallback: @ 80F90F4
|
|
push {r4,lr}
|
|
lsls r0, 24
|
|
lsrs r4, r0, 24
|
|
bl ProcessMenuInputNoWrap_
|
|
lsls r0, 24
|
|
asrs r1, r0, 24
|
|
cmp r1, 0
|
|
beq _080F911A
|
|
cmp r1, 0
|
|
bgt _080F9114
|
|
movs r0, 0x1
|
|
negs r0, r0
|
|
cmp r1, r0
|
|
beq _080F9130
|
|
b _080F9140
|
|
_080F9114:
|
|
cmp r1, 0x1
|
|
beq _080F9130
|
|
b _080F9140
|
|
_080F911A:
|
|
movs r0, 0x5
|
|
bl PlaySE
|
|
ldr r0, _080F912C @ =gUnknown_020388C4
|
|
ldr r1, [r0]
|
|
adds r0, r4, 0
|
|
bl _call_via_r1
|
|
b _080F9140
|
|
.align 2, 0
|
|
_080F912C: .4byte gUnknown_020388C4
|
|
_080F9130:
|
|
movs r0, 0x5
|
|
bl PlaySE
|
|
ldr r0, _080F9148 @ =gUnknown_020388C4
|
|
ldr r1, [r0, 0x4]
|
|
adds r0, r4, 0
|
|
bl _call_via_r1
|
|
_080F9140:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9148: .4byte gUnknown_020388C4
|
|
thumb_func_end Task_CallYesOrNoCallback
|
|
|
|
thumb_func_start sub_80F914C
|
|
sub_80F914C: @ 80F914C
|
|
lsls r0, 24
|
|
lsrs r0, 24
|
|
ldr r3, _080F916C @ =gUnknown_020388C4
|
|
ldr r2, [r1, 0x4]
|
|
ldr r1, [r1]
|
|
str r1, [r3]
|
|
str r2, [r3, 0x4]
|
|
ldr r2, _080F9170 @ =gTasks
|
|
lsls r1, r0, 2
|
|
adds r1, r0
|
|
lsls r1, 3
|
|
adds r1, r2
|
|
ldr r0, _080F9174 @ =Task_CallYesOrNoCallback
|
|
str r0, [r1]
|
|
bx lr
|
|
.align 2, 0
|
|
_080F916C: .4byte gUnknown_020388C4
|
|
_080F9170: .4byte gTasks
|
|
_080F9174: .4byte Task_CallYesOrNoCallback
|
|
thumb_func_end sub_80F914C
|
|
|
|
thumb_func_start brm_trade_1
|
|
brm_trade_1: @ 80F9178
|
|
push {r4-r7,lr}
|
|
sub sp, 0x4
|
|
adds r5, r0, 0
|
|
lsls r1, 24
|
|
lsrs r4, r1, 24
|
|
lsls r2, 24
|
|
lsrs r7, r2, 24
|
|
lsls r3, 24
|
|
lsrs r6, r3, 24
|
|
ldr r1, _080F91C0 @ =gUnknown_083E5A18
|
|
mov r0, sp
|
|
movs r2, 0x4
|
|
bl memcpy
|
|
cmp r4, 0xFF
|
|
beq _080F91CC
|
|
mov r0, sp
|
|
strb r4, [r0, 0x2]
|
|
ldr r4, _080F91C4 @ =gStringVar4
|
|
adds r0, r4, 0
|
|
mov r1, sp
|
|
bl StringCopy
|
|
adds r0, r4, 0
|
|
adds r1, r5, 0
|
|
bl StringAppend
|
|
mov r1, sp
|
|
ldr r0, _080F91C8 @ =gMenuWindowPtr
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, 0x6]
|
|
strb r0, [r1, 0x2]
|
|
adds r0, r4, 0
|
|
bl StringAppend
|
|
b _080F91D4
|
|
.align 2, 0
|
|
_080F91C0: .4byte gUnknown_083E5A18
|
|
_080F91C4: .4byte gStringVar4
|
|
_080F91C8: .4byte gMenuWindowPtr
|
|
_080F91CC:
|
|
ldr r0, _080F91E8 @ =gStringVar4
|
|
adds r1, r5, 0
|
|
bl StringCopy
|
|
_080F91D4:
|
|
ldr r0, _080F91E8 @ =gStringVar4
|
|
adds r1, r7, 0
|
|
adds r2, r6, 0
|
|
bl MenuPrint
|
|
add sp, 0x4
|
|
pop {r4-r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F91E8: .4byte gStringVar4
|
|
thumb_func_end brm_trade_1
|
|
|
|
thumb_func_start unref_sub_80F91EC
|
|
unref_sub_80F91EC: @ 80F91EC
|
|
push {r4-r7,lr}
|
|
mov r7, r8
|
|
push {r7}
|
|
mov r12, r0
|
|
adds r4, r2, 0
|
|
adds r2, r3, 0
|
|
ldr r0, [sp, 0x18]
|
|
ldr r3, [sp, 0x1C]
|
|
lsls r1, 24
|
|
lsrs r1, 24
|
|
mov r8, r1
|
|
lsls r4, 24
|
|
lsrs r4, 24
|
|
lsls r2, 24
|
|
lsrs r2, 24
|
|
lsls r0, 24
|
|
lsrs r7, r0, 24
|
|
lsls r3, 24
|
|
lsrs r5, r3, 24
|
|
ldr r6, _080F9234 @ =gStringVar1
|
|
adds r0, r6, 0
|
|
mov r1, r12
|
|
adds r3, r4, 0
|
|
bl ConvertIntToDecimalStringN
|
|
mov r0, r8
|
|
cmp r0, 0xFF
|
|
beq _080F9238
|
|
adds r0, r6, 0
|
|
mov r1, r8
|
|
adds r2, r7, 0
|
|
adds r3, r5, 0
|
|
bl brm_trade_1
|
|
b _080F9242
|
|
.align 2, 0
|
|
_080F9234: .4byte gStringVar1
|
|
_080F9238:
|
|
adds r0, r6, 0
|
|
adds r1, r7, 0
|
|
adds r2, r5, 0
|
|
bl MenuPrint
|
|
_080F9242:
|
|
pop {r3}
|
|
mov r8, r3
|
|
pop {r4-r7}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end unref_sub_80F91EC
|
|
|
|
thumb_func_start unref_sub_80F924C
|
|
unref_sub_80F924C: @ 80F924C
|
|
push {r4-r6,lr}
|
|
sub sp, 0x4
|
|
adds r5, r0, 0
|
|
adds r6, r1, 0
|
|
adds r4, r2, 0
|
|
lsls r5, 24
|
|
lsrs r5, 24
|
|
lsls r6, 24
|
|
lsrs r6, 24
|
|
lsls r4, 24
|
|
lsrs r4, 24
|
|
ldr r1, _080F9280 @ =gUnknown_083E5A1C
|
|
mov r0, sp
|
|
movs r2, 0x2
|
|
bl memcpy
|
|
mov r0, sp
|
|
adds r1, r4, 0
|
|
adds r2, r5, 0
|
|
adds r3, r6, 0
|
|
bl brm_trade_1
|
|
add sp, 0x4
|
|
pop {r4-r6}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9280: .4byte gUnknown_083E5A1C
|
|
thumb_func_end unref_sub_80F924C
|
|
|
|
thumb_func_start sub_80F9284
|
|
sub_80F9284: @ 80F9284
|
|
push {lr}
|
|
ldr r0, _080F92A0 @ =gSaveBlock2
|
|
ldrb r0, [r0, 0x13]
|
|
cmp r0, 0x1
|
|
bne _080F92B6
|
|
ldr r0, _080F92A4 @ =gMain
|
|
ldrh r1, [r0, 0x2E]
|
|
movs r0, 0x80
|
|
lsls r0, 2
|
|
ands r0, r1
|
|
cmp r0, 0
|
|
beq _080F92A8
|
|
movs r0, 0x1
|
|
b _080F92B8
|
|
.align 2, 0
|
|
_080F92A0: .4byte gSaveBlock2
|
|
_080F92A4: .4byte gMain
|
|
_080F92A8:
|
|
movs r0, 0x80
|
|
lsls r0, 1
|
|
ands r0, r1
|
|
cmp r0, 0
|
|
beq _080F92B6
|
|
movs r0, 0x2
|
|
b _080F92B8
|
|
_080F92B6:
|
|
movs r0, 0
|
|
_080F92B8:
|
|
pop {r1}
|
|
bx r1
|
|
thumb_func_end sub_80F9284
|
|
|
|
thumb_func_start sub_80F92BC
|
|
sub_80F92BC: @ 80F92BC
|
|
push {lr}
|
|
ldr r0, _080F92D8 @ =gSaveBlock2
|
|
ldrb r0, [r0, 0x13]
|
|
cmp r0, 0x1
|
|
bne _080F92EE
|
|
ldr r0, _080F92DC @ =gMain
|
|
ldrh r1, [r0, 0x30]
|
|
movs r0, 0x80
|
|
lsls r0, 2
|
|
ands r0, r1
|
|
cmp r0, 0
|
|
beq _080F92E0
|
|
movs r0, 0x1
|
|
b _080F92F0
|
|
.align 2, 0
|
|
_080F92D8: .4byte gSaveBlock2
|
|
_080F92DC: .4byte gMain
|
|
_080F92E0:
|
|
movs r0, 0x80
|
|
lsls r0, 1
|
|
ands r0, r1
|
|
cmp r0, 0
|
|
beq _080F92EE
|
|
movs r0, 0x2
|
|
b _080F92F0
|
|
_080F92EE:
|
|
movs r0, 0
|
|
_080F92F0:
|
|
pop {r1}
|
|
bx r1
|
|
thumb_func_end sub_80F92BC
|
|
|
|
thumb_func_start sub_80F92F4
|
|
sub_80F92F4: @ 80F92F4
|
|
push {lr}
|
|
lsls r0, 16
|
|
lsrs r0, 16
|
|
cmp r0, 0xAF
|
|
bne _080F9314
|
|
ldr r0, _080F930C @ =gSaveBlock1
|
|
ldrh r1, [r0, 0x4]
|
|
ldr r0, _080F9310 @ =0x00001919
|
|
cmp r1, r0
|
|
bne _080F9314
|
|
movs r0, 0
|
|
b _080F9316
|
|
.align 2, 0
|
|
_080F930C: .4byte gSaveBlock1
|
|
_080F9310: .4byte 0x00001919
|
|
_080F9314:
|
|
movs r0, 0x1
|
|
_080F9316:
|
|
pop {r1}
|
|
bx r1
|
|
thumb_func_end sub_80F92F4
|
|
|
|
thumb_func_start sub_80F931C
|
|
sub_80F931C: @ 80F931C
|
|
push {r4,lr}
|
|
lsls r0, 16
|
|
lsrs r4, r0, 16
|
|
bl is_c1_link_related_active
|
|
cmp r0, 0x1
|
|
bne _080F933C
|
|
adds r0, r4, 0
|
|
bl itemid_is_mail
|
|
lsls r0, 24
|
|
lsrs r0, 24
|
|
cmp r0, 0x1
|
|
bne _080F933C
|
|
movs r0, 0
|
|
b _080F933E
|
|
_080F933C:
|
|
movs r0, 0x1
|
|
_080F933E:
|
|
pop {r4}
|
|
pop {r1}
|
|
bx r1
|
|
thumb_func_end sub_80F931C
|
|
|
|
thumb_func_start sub_80F9344
|
|
sub_80F9344: @ 80F9344
|
|
push {lr}
|
|
bl is_c1_link_related_active
|
|
cmp r0, 0x1
|
|
beq _080F9356
|
|
ldr r0, _080F935C @ =gReceivedRemoteLinkPlayers
|
|
ldrb r0, [r0]
|
|
cmp r0, 0x1
|
|
bne _080F9360
|
|
_080F9356:
|
|
movs r0, 0x1
|
|
b _080F9362
|
|
.align 2, 0
|
|
_080F935C: .4byte gReceivedRemoteLinkPlayers
|
|
_080F9360:
|
|
movs r0, 0
|
|
_080F9362:
|
|
pop {r1}
|
|
bx r1
|
|
thumb_func_end sub_80F9344
|
|
|
|
thumb_func_start sub_80F9368
|
|
sub_80F9368: @ 80F9368
|
|
push {r4-r7,lr}
|
|
mov r7, r8
|
|
push {r7}
|
|
sub sp, 0x8
|
|
movs r0, 0x80
|
|
lsls r0, 19
|
|
movs r1, 0
|
|
strh r1, [r0]
|
|
adds r0, 0xE
|
|
strh r1, [r0]
|
|
subs r0, 0x2
|
|
strh r1, [r0]
|
|
subs r0, 0x2
|
|
strh r1, [r0]
|
|
subs r0, 0x2
|
|
strh r1, [r0]
|
|
adds r0, 0x14
|
|
strh r1, [r0]
|
|
adds r0, 0x2
|
|
strh r1, [r0]
|
|
subs r0, 0x6
|
|
strh r1, [r0]
|
|
adds r0, 0x2
|
|
strh r1, [r0]
|
|
subs r0, 0x6
|
|
strh r1, [r0]
|
|
adds r0, 0x2
|
|
strh r1, [r0]
|
|
subs r0, 0x6
|
|
strh r1, [r0]
|
|
adds r0, 0x2
|
|
strh r1, [r0]
|
|
movs r3, 0xC0
|
|
lsls r3, 19
|
|
movs r4, 0xC0
|
|
lsls r4, 9
|
|
add r0, sp, 0x4
|
|
mov r8, r0
|
|
mov r2, sp
|
|
movs r6, 0
|
|
ldr r1, _080F9430 @ =0x040000d4
|
|
movs r5, 0x80
|
|
lsls r5, 5
|
|
ldr r7, _080F9434 @ =0x81000800
|
|
movs r0, 0x81
|
|
lsls r0, 24
|
|
mov r12, r0
|
|
_080F93C6:
|
|
strh r6, [r2]
|
|
mov r0, sp
|
|
str r0, [r1]
|
|
str r3, [r1, 0x4]
|
|
str r7, [r1, 0x8]
|
|
ldr r0, [r1, 0x8]
|
|
adds r3, r5
|
|
subs r4, r5
|
|
cmp r4, r5
|
|
bhi _080F93C6
|
|
strh r6, [r2]
|
|
mov r2, sp
|
|
str r2, [r1]
|
|
str r3, [r1, 0x4]
|
|
lsrs r0, r4, 1
|
|
mov r2, r12
|
|
orrs r0, r2
|
|
str r0, [r1, 0x8]
|
|
ldr r0, [r1, 0x8]
|
|
movs r0, 0xE0
|
|
lsls r0, 19
|
|
movs r3, 0x80
|
|
lsls r3, 3
|
|
movs r4, 0
|
|
str r4, [sp, 0x4]
|
|
ldr r2, _080F9430 @ =0x040000d4
|
|
mov r1, r8
|
|
str r1, [r2]
|
|
str r0, [r2, 0x4]
|
|
lsrs r0, r3, 2
|
|
movs r1, 0x85
|
|
lsls r1, 24
|
|
orrs r0, r1
|
|
str r0, [r2, 0x8]
|
|
ldr r0, [r2, 0x8]
|
|
movs r1, 0xA0
|
|
lsls r1, 19
|
|
mov r0, sp
|
|
strh r4, [r0]
|
|
str r0, [r2]
|
|
str r1, [r2, 0x4]
|
|
lsrs r3, 1
|
|
movs r0, 0x81
|
|
lsls r0, 24
|
|
orrs r3, r0
|
|
str r3, [r2, 0x8]
|
|
ldr r0, [r2, 0x8]
|
|
add sp, 0x8
|
|
pop {r3}
|
|
mov r8, r3
|
|
pop {r4-r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9430: .4byte 0x040000d4
|
|
_080F9434: .4byte 0x81000800
|
|
thumb_func_end sub_80F9368
|
|
|
|
thumb_func_start sub_80F9438
|
|
sub_80F9438: @ 80F9438
|
|
push {lr}
|
|
movs r0, 0
|
|
bl SetVBlankCallback
|
|
movs r0, 0
|
|
bl SetHBlankCallback
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80F9438
|
|
|
|
thumb_func_start sub_80F944C
|
|
sub_80F944C: @ 80F944C
|
|
push {r4,lr}
|
|
movs r2, 0
|
|
ldr r4, _080F9478 @ =gUnknown_020388C0
|
|
movs r3, 0xFF
|
|
_080F9454:
|
|
adds r0, r2, r4
|
|
ldrb r1, [r0]
|
|
orrs r1, r3
|
|
strb r1, [r0]
|
|
adds r0, r2, 0x1
|
|
lsls r0, 24
|
|
lsrs r2, r0, 24
|
|
cmp r2, 0x3
|
|
bls _080F9454
|
|
movs r0, 0x6
|
|
bl FreeSpritePaletteByTag
|
|
ldr r0, _080F947C @ =gUnknown_083E5968
|
|
bl LoadSpritePalette
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9478: .4byte gUnknown_020388C0
|
|
_080F947C: .4byte gUnknown_083E5968
|
|
thumb_func_end sub_80F944C
|
|
|
|
thumb_func_start sub_80F9480
|
|
sub_80F9480: @ 80F9480
|
|
push {r4,lr}
|
|
adds r3, r0, 0
|
|
lsls r1, 24
|
|
lsrs r1, 24
|
|
movs r2, 0
|
|
cmp r2, r1
|
|
bcs _080F949E
|
|
movs r4, 0xFF
|
|
_080F9490:
|
|
adds r0, r3, r2
|
|
strb r4, [r0]
|
|
adds r0, r2, 0x1
|
|
lsls r0, 24
|
|
lsrs r2, r0, 24
|
|
cmp r2, r1
|
|
bcc _080F9490
|
|
_080F949E:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80F9480
|
|
|
|
thumb_func_start sub_80F94A4
|
|
sub_80F94A4: @ 80F94A4
|
|
push {r4,r5,lr}
|
|
adds r5, r1, 0
|
|
lsls r0, 24
|
|
lsrs r4, r0, 24
|
|
lsls r2, 16
|
|
lsrs r1, r2, 16
|
|
lsls r3, 16
|
|
lsrs r2, r3, 16
|
|
cmp r4, 0x5
|
|
bhi _080F94E8
|
|
ldrb r0, [r5]
|
|
cmp r0, 0xFF
|
|
bne _080F94D0
|
|
ldr r0, _080F94F0 @ =gSpriteTemplate_83E5A00
|
|
lsls r1, 16
|
|
asrs r1, 16
|
|
lsls r2, 16
|
|
asrs r2, 16
|
|
movs r3, 0
|
|
bl CreateSprite
|
|
strb r0, [r5]
|
|
_080F94D0:
|
|
subs r0, r4, 0x4
|
|
lsls r0, 24
|
|
lsrs r4, r0, 24
|
|
ldrb r1, [r5]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
ldr r1, _080F94F4 @ =gSprites
|
|
adds r0, r1
|
|
adds r1, r4, 0
|
|
bl StartSpriteAnim
|
|
_080F94E8:
|
|
pop {r4,r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F94F0: .4byte gSpriteTemplate_83E5A00
|
|
_080F94F4: .4byte gSprites
|
|
thumb_func_end sub_80F94A4
|
|
|
|
thumb_func_start sub_80F94F8
|
|
sub_80F94F8: @ 80F94F8
|
|
push {r4,lr}
|
|
adds r4, r0, 0
|
|
ldrb r0, [r4]
|
|
cmp r0, 0xFF
|
|
beq _080F9516
|
|
adds r1, r0, 0
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
ldr r1, _080F951C @ =gSprites
|
|
adds r0, r1
|
|
bl DestroySprite
|
|
movs r0, 0xFF
|
|
strb r0, [r4]
|
|
_080F9516:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F951C: .4byte gSprites
|
|
thumb_func_end sub_80F94F8
|
|
|
|
thumb_func_start sub_80F9520
|
|
sub_80F9520: @ 80F9520
|
|
push {r4,r5,lr}
|
|
adds r5, r0, 0
|
|
movs r4, 0
|
|
_080F9526:
|
|
adds r0, r5, r4
|
|
bl sub_80F94F8
|
|
adds r0, r4, 0x1
|
|
lsls r0, 24
|
|
lsrs r4, r0, 24
|
|
cmp r4, 0x7
|
|
bls _080F9526
|
|
pop {r4,r5}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80F9520
|
|
|
|
thumb_func_start CreateVerticalScrollIndicators
|
|
CreateVerticalScrollIndicators: @ 80F953C
|
|
push {r4,r5,lr}
|
|
lsls r0, 24
|
|
lsrs r4, r0, 24
|
|
lsls r1, 16
|
|
lsrs r3, r1, 16
|
|
lsls r2, 16
|
|
lsrs r2, 16
|
|
cmp r4, 0x3
|
|
bls _080F9550
|
|
b _080F9790
|
|
_080F9550:
|
|
cmp r4, 0x1
|
|
beq _080F95F6
|
|
cmp r4, 0x1
|
|
bgt _080F9564
|
|
cmp r4, 0
|
|
beq _080F9578
|
|
ldr r5, _080F9560 @ =gUnknown_020388C0
|
|
b _080F977A
|
|
.align 2, 0
|
|
_080F9560: .4byte gUnknown_020388C0
|
|
_080F9564:
|
|
cmp r4, 0x2
|
|
bne _080F956A
|
|
b _080F967C
|
|
_080F956A:
|
|
cmp r4, 0x3
|
|
bne _080F9570
|
|
b _080F96F8
|
|
_080F9570:
|
|
ldr r5, _080F9574 @ =gUnknown_020388C0
|
|
b _080F977A
|
|
.align 2, 0
|
|
_080F9574: .4byte gUnknown_020388C0
|
|
_080F9578:
|
|
ldr r0, _080F95D8 @ =gUnknown_020388C0
|
|
ldrb r1, [r0]
|
|
adds r5, r0, 0
|
|
cmp r1, 0xFF
|
|
beq _080F9584
|
|
b _080F977A
|
|
_080F9584:
|
|
ldr r0, _080F95DC @ =gSpriteTemplate_83E59D0
|
|
lsls r1, r3, 16
|
|
asrs r1, 16
|
|
lsls r2, 16
|
|
asrs r2, 16
|
|
movs r3, 0
|
|
bl CreateSprite
|
|
strb r0, [r5]
|
|
ldr r3, _080F95E0 @ =gSprites
|
|
ldrb r1, [r5]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
ldr r1, _080F95E4 @ =0x0000ffff
|
|
strh r1, [r0, 0x32]
|
|
ldrb r0, [r5, 0x1]
|
|
cmp r0, 0xFF
|
|
beq _080F95E8
|
|
ldrb r0, [r5]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
ldrb r2, [r5, 0x1]
|
|
lsls r0, r2, 4
|
|
adds r0, r2
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
movs r2, 0x26
|
|
ldrsh r0, [r0, r2]
|
|
negs r0, r0
|
|
strh r0, [r1, 0x26]
|
|
ldrb r0, [r5]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
ldrb r2, [r5, 0x1]
|
|
b _080F9650
|
|
.align 2, 0
|
|
_080F95D8: .4byte gUnknown_020388C0
|
|
_080F95DC: .4byte gSpriteTemplate_83E59D0
|
|
_080F95E0: .4byte gSprites
|
|
_080F95E4: .4byte 0x0000ffff
|
|
_080F95E8:
|
|
ldrb r1, [r5]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
strh r4, [r0, 0x34]
|
|
b _080F977A
|
|
_080F95F6:
|
|
ldr r0, _080F9660 @ =gUnknown_020388C0
|
|
ldrb r1, [r0, 0x1]
|
|
adds r5, r0, 0
|
|
cmp r1, 0xFF
|
|
beq _080F9602
|
|
b _080F977A
|
|
_080F9602:
|
|
ldr r0, _080F9664 @ =gSpriteTemplate_83E59D0
|
|
lsls r1, r3, 16
|
|
asrs r1, 16
|
|
lsls r2, 16
|
|
asrs r2, 16
|
|
movs r3, 0
|
|
bl CreateSprite
|
|
strb r0, [r5, 0x1]
|
|
ldr r3, _080F9668 @ =gSprites
|
|
ldrb r1, [r5, 0x1]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
strh r4, [r0, 0x32]
|
|
ldrb r0, [r5]
|
|
cmp r0, 0xFF
|
|
beq _080F966C
|
|
ldrb r0, [r5, 0x1]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
ldrb r2, [r5]
|
|
lsls r0, r2, 4
|
|
adds r0, r2
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
movs r2, 0x26
|
|
ldrsh r0, [r0, r2]
|
|
negs r0, r0
|
|
strh r0, [r1, 0x26]
|
|
ldrb r0, [r5, 0x1]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
ldrb r2, [r5]
|
|
_080F9650:
|
|
lsls r0, r2, 4
|
|
adds r0, r2
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
ldrh r0, [r0, 0x34]
|
|
strh r0, [r1, 0x34]
|
|
b _080F977A
|
|
.align 2, 0
|
|
_080F9660: .4byte gUnknown_020388C0
|
|
_080F9664: .4byte gSpriteTemplate_83E59D0
|
|
_080F9668: .4byte gSprites
|
|
_080F966C:
|
|
ldrb r0, [r5, 0x1]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
movs r0, 0
|
|
strh r0, [r1, 0x34]
|
|
b _080F977A
|
|
_080F967C:
|
|
ldr r0, _080F96E4 @ =gUnknown_020388C0
|
|
ldrb r1, [r0, 0x2]
|
|
adds r5, r0, 0
|
|
cmp r1, 0xFF
|
|
bne _080F977A
|
|
ldr r0, _080F96E8 @ =gSpriteTemplate_83E59E8
|
|
lsls r1, r3, 16
|
|
asrs r1, 16
|
|
lsls r2, 16
|
|
asrs r2, 16
|
|
movs r3, 0
|
|
bl CreateSprite
|
|
strb r0, [r5, 0x2]
|
|
ldr r3, _080F96EC @ =gSprites
|
|
ldrb r1, [r5, 0x2]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
ldr r1, _080F96F0 @ =0x0000ffff
|
|
strh r1, [r0, 0x2E]
|
|
ldrb r0, [r5, 0x3]
|
|
cmp r0, 0xFF
|
|
beq _080F96F4
|
|
ldrb r0, [r5, 0x2]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
ldrb r2, [r5, 0x3]
|
|
lsls r0, r2, 4
|
|
adds r0, r2
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
movs r2, 0x24
|
|
ldrsh r0, [r0, r2]
|
|
negs r0, r0
|
|
strh r0, [r1, 0x24]
|
|
ldrb r0, [r5, 0x2]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
ldrb r2, [r5, 0x3]
|
|
lsls r0, r2, 4
|
|
adds r0, r2
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
ldrh r0, [r0, 0x30]
|
|
b _080F9778
|
|
.align 2, 0
|
|
_080F96E4: .4byte gUnknown_020388C0
|
|
_080F96E8: .4byte gSpriteTemplate_83E59E8
|
|
_080F96EC: .4byte gSprites
|
|
_080F96F0: .4byte 0x0000ffff
|
|
_080F96F4:
|
|
ldrb r0, [r5, 0x2]
|
|
b _080F976E
|
|
_080F96F8:
|
|
ldr r0, _080F9760 @ =gUnknown_020388C0
|
|
ldrb r1, [r0, 0x3]
|
|
adds r5, r0, 0
|
|
cmp r1, 0xFF
|
|
bne _080F977A
|
|
ldr r0, _080F9764 @ =gSpriteTemplate_83E59E8
|
|
lsls r1, r3, 16
|
|
asrs r1, 16
|
|
lsls r2, 16
|
|
asrs r2, 16
|
|
movs r3, 0
|
|
bl CreateSprite
|
|
strb r0, [r5, 0x3]
|
|
ldr r3, _080F9768 @ =gSprites
|
|
ldrb r1, [r5, 0x3]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
movs r1, 0x1
|
|
strh r1, [r0, 0x2E]
|
|
ldrb r0, [r5, 0x2]
|
|
cmp r0, 0xFF
|
|
beq _080F976C
|
|
ldrb r0, [r5, 0x3]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
ldrb r2, [r5, 0x2]
|
|
lsls r0, r2, 4
|
|
adds r0, r2
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
movs r2, 0x24
|
|
ldrsh r0, [r0, r2]
|
|
negs r0, r0
|
|
strh r0, [r1, 0x24]
|
|
ldrb r0, [r5, 0x3]
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
ldrb r2, [r5, 0x2]
|
|
lsls r0, r2, 4
|
|
adds r0, r2
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
ldrh r0, [r0, 0x30]
|
|
b _080F9778
|
|
.align 2, 0
|
|
_080F9760: .4byte gUnknown_020388C0
|
|
_080F9764: .4byte gSpriteTemplate_83E59E8
|
|
_080F9768: .4byte gSprites
|
|
_080F976C:
|
|
ldrb r0, [r5, 0x3]
|
|
_080F976E:
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r3
|
|
movs r0, 0
|
|
_080F9778:
|
|
strh r0, [r1, 0x30]
|
|
_080F977A:
|
|
adds r0, r4, r5
|
|
ldrb r1, [r0]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
ldr r1, _080F9798 @ =gSprites
|
|
adds r0, r1
|
|
movs r1, 0x1
|
|
ands r1, r4
|
|
bl StartSpriteAnim
|
|
_080F9790:
|
|
pop {r4,r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9798: .4byte gSprites
|
|
thumb_func_end CreateVerticalScrollIndicators
|
|
|
|
thumb_func_start sub_80F979C
|
|
sub_80F979C: @ 80F979C
|
|
push {lr}
|
|
lsls r0, 24
|
|
lsrs r2, r0, 24
|
|
lsls r1, 24
|
|
lsrs r3, r1, 24
|
|
cmp r2, 0x3
|
|
bhi _080F97D4
|
|
ldr r0, _080F97D8 @ =gUnknown_020388C0
|
|
adds r1, r2, r0
|
|
ldrb r0, [r1]
|
|
cmp r0, 0xFF
|
|
beq _080F97D4
|
|
ldr r2, _080F97DC @ =gSprites
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r2
|
|
adds r1, 0x3E
|
|
movs r0, 0x1
|
|
adds r2, r3, 0
|
|
ands r2, r0
|
|
lsls r2, 2
|
|
ldrb r3, [r1]
|
|
movs r0, 0x5
|
|
negs r0, r0
|
|
ands r0, r3
|
|
orrs r0, r2
|
|
strb r0, [r1]
|
|
_080F97D4:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F97D8: .4byte gUnknown_020388C0
|
|
_080F97DC: .4byte gSprites
|
|
thumb_func_end sub_80F979C
|
|
|
|
thumb_func_start DestroyVerticalScrollIndicator
|
|
DestroyVerticalScrollIndicator: @ 80F97E0
|
|
push {r4,lr}
|
|
lsls r0, 24
|
|
lsrs r1, r0, 24
|
|
cmp r1, 0x3
|
|
bhi _080F9808
|
|
ldr r0, _080F9810 @ =gUnknown_020388C0
|
|
adds r4, r1, r0
|
|
ldrb r0, [r4]
|
|
cmp r0, 0xFF
|
|
beq _080F9808
|
|
adds r1, r0, 0
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
ldr r1, _080F9814 @ =gSprites
|
|
adds r0, r1
|
|
bl DestroySprite
|
|
movs r0, 0xFF
|
|
strb r0, [r4]
|
|
_080F9808:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9810: .4byte gUnknown_020388C0
|
|
_080F9814: .4byte gSprites
|
|
thumb_func_end DestroyVerticalScrollIndicator
|
|
|
|
thumb_func_start LoadScrollIndicatorPalette
|
|
LoadScrollIndicatorPalette: @ 80F9818
|
|
push {lr}
|
|
ldr r0, _080F9824 @ =gUnknown_083E5968
|
|
bl LoadSpritePalette
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9824: .4byte gUnknown_083E5968
|
|
thumb_func_end LoadScrollIndicatorPalette
|
|
|
|
thumb_func_start BuyMenuFreeMemory
|
|
BuyMenuFreeMemory: @ 80F9828
|
|
push {lr}
|
|
movs r0, 0x6
|
|
bl FreeSpritePaletteByTag
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end BuyMenuFreeMemory
|
|
|
|
thumb_func_start sub_80F9834
|
|
sub_80F9834: @ 80F9834
|
|
push {lr}
|
|
adds r2, r0, 0
|
|
movs r1, 0x30
|
|
ldrsh r0, [r2, r1]
|
|
cmp r0, 0
|
|
bne _080F9848
|
|
ldrh r0, [r2, 0x2E]
|
|
ldrh r1, [r2, 0x24]
|
|
adds r0, r1
|
|
strh r0, [r2, 0x24]
|
|
_080F9848:
|
|
movs r1, 0x34
|
|
ldrsh r0, [r2, r1]
|
|
cmp r0, 0
|
|
bne _080F9858
|
|
ldrh r0, [r2, 0x32]
|
|
ldrh r1, [r2, 0x26]
|
|
adds r0, r1
|
|
strh r0, [r2, 0x26]
|
|
_080F9858:
|
|
ldrh r1, [r2, 0x30]
|
|
adds r1, 0x1
|
|
movs r3, 0
|
|
strh r1, [r2, 0x30]
|
|
ldrh r0, [r2, 0x34]
|
|
adds r0, 0x1
|
|
strh r0, [r2, 0x34]
|
|
lsls r1, 16
|
|
asrs r1, 16
|
|
cmp r1, 0x2
|
|
ble _080F9870
|
|
strh r3, [r2, 0x30]
|
|
_080F9870:
|
|
movs r1, 0x34
|
|
ldrsh r0, [r2, r1]
|
|
cmp r0, 0x2
|
|
ble _080F987A
|
|
strh r3, [r2, 0x34]
|
|
_080F987A:
|
|
movs r0, 0x24
|
|
ldrsh r1, [r2, r0]
|
|
cmp r1, 0x8
|
|
beq _080F988A
|
|
movs r0, 0x8
|
|
negs r0, r0
|
|
cmp r1, r0
|
|
bne _080F988C
|
|
_080F988A:
|
|
strh r3, [r2, 0x24]
|
|
_080F988C:
|
|
movs r0, 0x26
|
|
ldrsh r1, [r2, r0]
|
|
cmp r1, 0x8
|
|
beq _080F989C
|
|
movs r0, 0x8
|
|
negs r0, r0
|
|
cmp r1, r0
|
|
bne _080F98A0
|
|
_080F989C:
|
|
movs r0, 0
|
|
strh r0, [r2, 0x26]
|
|
_080F98A0:
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80F9834
|
|
|
|
thumb_func_start sub_80F98A4
|
|
sub_80F98A4: @ 80F98A4
|
|
push {lr}
|
|
lsls r0, 24
|
|
lsrs r1, r0, 24
|
|
ldr r0, _080F98D0 @ =gUnknown_020388C0
|
|
adds r3, r1, r0
|
|
ldrb r0, [r3]
|
|
cmp r0, 0xFF
|
|
beq _080F98CA
|
|
cmp r1, 0x3
|
|
bhi _080F98CA
|
|
ldr r2, _080F98D4 @ =gSprites
|
|
adds r1, r0, 0
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r2, 0x1C
|
|
adds r0, r2
|
|
ldr r1, _080F98D8 @ =SpriteCallbackDummy
|
|
str r1, [r0]
|
|
_080F98CA:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F98D0: .4byte gUnknown_020388C0
|
|
_080F98D4: .4byte gSprites
|
|
_080F98D8: .4byte SpriteCallbackDummy
|
|
thumb_func_end sub_80F98A4
|
|
|
|
thumb_func_start sub_80F98DC
|
|
sub_80F98DC: @ 80F98DC
|
|
push {lr}
|
|
lsls r0, 24
|
|
lsrs r1, r0, 24
|
|
ldr r0, _080F9908 @ =gUnknown_020388C0
|
|
adds r3, r1, r0
|
|
ldrb r0, [r3]
|
|
cmp r0, 0xFF
|
|
beq _080F9902
|
|
cmp r1, 0x3
|
|
bhi _080F9902
|
|
ldr r2, _080F990C @ =gSprites
|
|
adds r1, r0, 0
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r2, 0x1C
|
|
adds r0, r2
|
|
ldr r1, _080F9910 @ =sub_80F9834
|
|
str r1, [r0]
|
|
_080F9902:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9908: .4byte gUnknown_020388C0
|
|
_080F990C: .4byte gSprites
|
|
_080F9910: .4byte sub_80F9834
|
|
thumb_func_end sub_80F98DC
|
|
|
|
thumb_func_start sub_80F9914
|
|
sub_80F9914: @ 80F9914
|
|
push {r4,lr}
|
|
lsls r0, 24
|
|
lsrs r1, r0, 24
|
|
ldr r0, _080F9964 @ =gUnknown_020388C0
|
|
adds r4, r1, r0
|
|
ldrb r0, [r4]
|
|
cmp r0, 0xFF
|
|
beq _080F995C
|
|
cmp r1, 0x3
|
|
bhi _080F995C
|
|
ldr r3, _080F9968 @ =gSprites
|
|
adds r1, r0, 0
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
movs r2, 0
|
|
strh r2, [r0, 0x24]
|
|
ldrb r1, [r4]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
strh r2, [r0, 0x26]
|
|
ldrb r1, [r4]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
strh r2, [r0, 0x30]
|
|
ldrb r1, [r4]
|
|
lsls r0, r1, 4
|
|
adds r0, r1
|
|
lsls r0, 2
|
|
adds r0, r3
|
|
strh r2, [r0, 0x34]
|
|
_080F995C:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F9964: .4byte gUnknown_020388C0
|
|
_080F9968: .4byte gSprites
|
|
thumb_func_end sub_80F9914
|
|
|
|
thumb_func_start sub_80F996C
|
|
sub_80F996C: @ 80F996C
|
|
push {r4,lr}
|
|
adds r4, r0, 0
|
|
lsls r4, 24
|
|
lsrs r4, 24
|
|
adds r0, r4, 0
|
|
bl sub_80F98A4
|
|
adds r0, r4, 0
|
|
bl sub_80F9914
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80F996C
|
|
|
|
thumb_func_start sub_80F9988
|
|
sub_80F9988: @ 80F9988
|
|
push {lr}
|
|
lsls r0, 24
|
|
lsrs r2, r0, 24
|
|
lsls r1, 24
|
|
lsrs r3, r1, 24
|
|
ldr r0, _080F99C4 @ =gUnknown_020388C0
|
|
adds r1, r2, r0
|
|
ldrb r0, [r1]
|
|
cmp r0, 0xFF
|
|
beq _080F99BE
|
|
cmp r2, 0x3
|
|
bhi _080F99BE
|
|
ldr r2, _080F99C8 @ =gSprites
|
|
lsls r1, r0, 4
|
|
adds r1, r0
|
|
lsls r1, 2
|
|
adds r1, r2
|
|
movs r0, 0x3
|
|
adds r2, r3, 0
|
|
ands r2, r0
|
|
lsls r2, 2
|
|
ldrb r3, [r1, 0x5]
|
|
movs r0, 0xD
|
|
negs r0, r0
|
|
ands r0, r3
|
|
orrs r0, r2
|
|
strb r0, [r1, 0x5]
|
|
_080F99BE:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080F99C4: .4byte gUnknown_020388C0
|
|
_080F99C8: .4byte gSprites
|
|
thumb_func_end sub_80F9988
|
|
|
|
.align 2, 0 @ Don't pad with nop.
|