mirror of
https://github.com/pret/pokeheartgold.git
synced 2024-11-24 13:49:45 +00:00
4217 lines
80 KiB
ArmAsm
4217 lines
80 KiB
ArmAsm
#include "constants/items.h"
|
|
#include "constants/moves.h"
|
|
#include "constants/pokemon.h"
|
|
#include "constants/ribbon.h"
|
|
#include "constants/party_menu.h"
|
|
#include "msgdata/msg/msg_0300.h"
|
|
.include "asm/macros.inc"
|
|
.include "unk_0207CB7C.inc"
|
|
.include "global.inc"
|
|
|
|
.public _020FA484
|
|
.public gNatureStatMods
|
|
|
|
.text
|
|
|
|
thumb_func_start sub_0207CB7C
|
|
sub_0207CB7C: ; 0x0207CB7C
|
|
ldr r3, _0207CB88 ; =G2x_SetBlendBrightness_
|
|
ldr r0, _0207CB8C ; =0x04000050
|
|
mov r1, #0x1e
|
|
mov r2, #8
|
|
bx r3
|
|
nop
|
|
_0207CB88: .word G2x_SetBlendBrightness_
|
|
_0207CB8C: .word 0x04000050
|
|
thumb_func_end sub_0207CB7C
|
|
|
|
thumb_func_start sub_0207CB90
|
|
sub_0207CB90: ; 0x0207CB90
|
|
ldr r0, _0207CB98 ; =0x04000050
|
|
mov r1, #0
|
|
strh r1, [r0]
|
|
bx lr
|
|
.balign 4, 0
|
|
_0207CB98: .word 0x04000050
|
|
thumb_func_end sub_0207CB90
|
|
|
|
thumb_func_start sub_0207CB9C
|
|
sub_0207CB9C: ; 0x0207CB9C
|
|
push {r3, r4}
|
|
mov r3, #0xc9
|
|
lsl r3, r3, #4
|
|
add r0, r0, r3
|
|
ldrb r4, [r0, #6]
|
|
mov r3, #0xf
|
|
bic r4, r3
|
|
strb r4, [r0, #6]
|
|
ldrb r4, [r0, #6]
|
|
mov r3, #0xf0
|
|
bic r4, r3
|
|
strb r4, [r0, #6]
|
|
add r3, r1, #4
|
|
str r3, [r0]
|
|
ldrb r3, [r1, #2]
|
|
strb r3, [r0, #4]
|
|
ldrb r3, [r1, #1]
|
|
strb r3, [r0, #5]
|
|
ldrb r1, [r1, #3]
|
|
strb r1, [r0, #7]
|
|
str r2, [r0, #8]
|
|
mov r1, #1
|
|
str r1, [r0, #0xc]
|
|
pop {r3, r4}
|
|
bx lr
|
|
.balign 4, 0
|
|
thumb_func_end sub_0207CB9C
|
|
|
|
thumb_func_start sub_0207CBD0
|
|
sub_0207CBD0: ; 0x0207CBD0
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r7, r2, #0
|
|
mov r2, #0xc9
|
|
lsl r2, r2, #4
|
|
add r5, r0, r2
|
|
str r3, [sp]
|
|
ldrb r3, [r5, #6]
|
|
mov r2, #0xf
|
|
lsl r4, r1, #2
|
|
bic r3, r2
|
|
strb r3, [r5, #6]
|
|
ldrb r3, [r5, #6]
|
|
mov r2, #0xf0
|
|
bic r3, r2
|
|
strb r3, [r5, #6]
|
|
mov r2, #0
|
|
str r2, [r5]
|
|
strb r1, [r5, #5]
|
|
mov r1, #0x66
|
|
lsl r1, r1, #4
|
|
add r6, r0, r1
|
|
ldr r0, [r6, r4]
|
|
bl sub_020249A8
|
|
mov r1, #2
|
|
and r0, r1
|
|
strb r0, [r5, #7]
|
|
ldr r0, [sp]
|
|
cmp r0, #1
|
|
bne _0207CC1C
|
|
ldr r0, [r6, r4]
|
|
mov r1, #0
|
|
bl sub_020249D4
|
|
ldrb r1, [r5, #7]
|
|
ldr r0, [r6, r4]
|
|
bl Set2dSpriteAnimSeqNo
|
|
_0207CC1C:
|
|
str r7, [r5, #8]
|
|
mov r0, #1
|
|
str r0, [r5, #0xc]
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
thumb_func_end sub_0207CBD0
|
|
|
|
thumb_func_start sub_0207CC24
|
|
sub_0207CC24: ; 0x0207CC24
|
|
push {r3, r4, r5, lr}
|
|
sub sp, #8
|
|
mov r1, #0xc9
|
|
add r5, r0, #0
|
|
lsl r1, r1, #4
|
|
add r4, r5, r1
|
|
ldrb r2, [r4, #6]
|
|
lsl r1, r2, #0x18
|
|
lsr r1, r1, #0x1c
|
|
beq _0207CC44
|
|
cmp r1, #1
|
|
beq _0207CCB6
|
|
cmp r1, #2
|
|
bne _0207CC42
|
|
b _0207CD54
|
|
_0207CC42:
|
|
b _0207CD7E
|
|
_0207CC44:
|
|
ldr r1, [r4]
|
|
cmp r1, #0
|
|
beq _0207CC76
|
|
mov r1, #2
|
|
str r1, [sp]
|
|
ldrb r1, [r4, #4]
|
|
ldrb r2, [r4, #5]
|
|
ldrb r3, [r4, #7]
|
|
bl sub_0207E3A8
|
|
ldrb r0, [r4, #7]
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
str r0, [sp, #4]
|
|
ldrb r2, [r4, #4]
|
|
ldrb r3, [r4, #5]
|
|
ldr r1, [r4]
|
|
add r0, r5, #0
|
|
bl sub_0207E28C
|
|
ldr r0, [r5]
|
|
mov r1, #0
|
|
bl BgCommitTilemapBufferToVram
|
|
b _0207CC9A
|
|
_0207CC76:
|
|
ldrb r0, [r4, #5]
|
|
lsl r0, r0, #2
|
|
add r1, r5, r0
|
|
mov r0, #0x66
|
|
lsl r0, r0, #4
|
|
ldr r0, [r1, r0]
|
|
mov r1, #0
|
|
bl sub_020249D4
|
|
ldrb r0, [r4, #5]
|
|
lsl r0, r0, #2
|
|
add r1, r5, r0
|
|
mov r0, #0x66
|
|
lsl r0, r0, #4
|
|
ldr r0, [r1, r0]
|
|
ldrb r1, [r4, #7]
|
|
bl Set2dSpriteAnimSeqNo
|
|
_0207CC9A:
|
|
ldrb r2, [r4, #6]
|
|
mov r1, #0xf0
|
|
add r0, r2, #0
|
|
bic r0, r1
|
|
lsl r1, r2, #0x18
|
|
lsr r1, r1, #0x1c
|
|
add r1, r1, #1
|
|
lsl r1, r1, #0x18
|
|
lsr r1, r1, #0x18
|
|
lsl r1, r1, #0x1c
|
|
lsr r1, r1, #0x18
|
|
orr r0, r1
|
|
strb r0, [r4, #6]
|
|
b _0207CD7E
|
|
_0207CCB6:
|
|
add r1, r2, #0
|
|
lsl r2, r2, #0x1c
|
|
lsr r2, r2, #0x1c
|
|
add r2, r2, #1
|
|
mov r3, #0xf
|
|
lsl r2, r2, #0x18
|
|
bic r1, r3
|
|
lsr r3, r2, #0x18
|
|
mov r2, #0xf
|
|
and r2, r3
|
|
orr r1, r2
|
|
strb r1, [r4, #6]
|
|
ldrb r1, [r4, #6]
|
|
lsl r1, r1, #0x1c
|
|
lsr r1, r1, #0x1c
|
|
cmp r1, #2
|
|
bne _0207CD7E
|
|
ldr r1, [r4]
|
|
cmp r1, #0
|
|
beq _0207CD0A
|
|
mov r1, #1
|
|
str r1, [sp]
|
|
ldrb r1, [r4, #4]
|
|
ldrb r2, [r4, #5]
|
|
ldrb r3, [r4, #7]
|
|
bl sub_0207E3A8
|
|
ldrb r0, [r4, #7]
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
ldrb r2, [r4, #4]
|
|
ldrb r3, [r4, #5]
|
|
ldr r1, [r4]
|
|
add r0, r5, #0
|
|
bl sub_0207E28C
|
|
ldr r0, [r5]
|
|
mov r1, #0
|
|
bl BgCommitTilemapBufferToVram
|
|
b _0207CD30
|
|
_0207CD0A:
|
|
ldrb r0, [r4, #5]
|
|
lsl r0, r0, #2
|
|
add r1, r5, r0
|
|
mov r0, #0x66
|
|
lsl r0, r0, #4
|
|
ldr r0, [r1, r0]
|
|
mov r1, #0
|
|
bl sub_020249D4
|
|
ldrb r0, [r4, #5]
|
|
lsl r0, r0, #2
|
|
add r1, r5, r0
|
|
mov r0, #0x66
|
|
lsl r0, r0, #4
|
|
ldr r0, [r1, r0]
|
|
ldrb r1, [r4, #7]
|
|
add r1, r1, #1
|
|
bl Set2dSpriteAnimSeqNo
|
|
_0207CD30:
|
|
ldrb r1, [r4, #6]
|
|
mov r0, #0xf
|
|
bic r1, r0
|
|
strb r1, [r4, #6]
|
|
ldrb r2, [r4, #6]
|
|
mov r1, #0xf0
|
|
add r0, r2, #0
|
|
bic r0, r1
|
|
lsl r1, r2, #0x18
|
|
lsr r1, r1, #0x1c
|
|
add r1, r1, #1
|
|
lsl r1, r1, #0x18
|
|
lsr r1, r1, #0x18
|
|
lsl r1, r1, #0x1c
|
|
lsr r1, r1, #0x18
|
|
orr r0, r1
|
|
strb r0, [r4, #6]
|
|
b _0207CD7E
|
|
_0207CD54:
|
|
mov r1, #0xf
|
|
add r0, r2, #0
|
|
bic r0, r1
|
|
lsl r1, r2, #0x1c
|
|
lsr r1, r1, #0x1c
|
|
add r1, r1, #1
|
|
lsl r1, r1, #0x18
|
|
lsr r2, r1, #0x18
|
|
mov r1, #0xf
|
|
and r1, r2
|
|
orr r0, r1
|
|
strb r0, [r4, #6]
|
|
ldrb r0, [r4, #6]
|
|
lsl r0, r0, #0x1c
|
|
lsr r0, r0, #0x1c
|
|
cmp r0, #2
|
|
bne _0207CD7E
|
|
mov r0, #0
|
|
add sp, #8
|
|
str r0, [r4, #0xc]
|
|
pop {r3, r4, r5, pc}
|
|
_0207CD7E:
|
|
mov r0, #1
|
|
add sp, #8
|
|
pop {r3, r4, r5, pc}
|
|
thumb_func_end sub_0207CC24
|
|
|
|
thumb_func_start sub_0207CD84
|
|
sub_0207CD84: ; 0x0207CD84
|
|
push {r4, r5, r6, lr}
|
|
add r5, r1, #0
|
|
add r4, r2, #0
|
|
add r6, r0, #0
|
|
bl AddWindow
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
add r0, r6, #0
|
|
add r1, #0x10
|
|
add r2, #8
|
|
bl AddWindow
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
add r0, r6, #0
|
|
add r1, #0x20
|
|
add r2, #0x10
|
|
bl AddWindow
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
add r0, r6, #0
|
|
add r1, #0x30
|
|
add r2, #0x18
|
|
bl AddWindow
|
|
add r5, #0x40
|
|
add r4, #0x20
|
|
add r0, r6, #0
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
bl AddWindow
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
thumb_func_end sub_0207CD84
|
|
|
|
thumb_func_start sub_0207CDCC
|
|
sub_0207CDCC: ; 0x0207CDCC
|
|
push {r3, r4, r5, lr}
|
|
sub sp, #8
|
|
add r5, r0, #0
|
|
ldr r4, _0207CF38 ; =_02101734
|
|
ldr r0, [r5]
|
|
add r1, r5, #4
|
|
add r2, r4, #0
|
|
bl sub_0207CD84
|
|
add r1, r5, #0
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF3C ; =_02101734 + 0x50
|
|
add r1, #0xa4
|
|
bl sub_0207CD84
|
|
mov r1, #0x51
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF40 ; =_02101734 + 0xA0
|
|
add r1, r5, r1
|
|
bl sub_0207CD84
|
|
ldr r0, _0207CF44 ; =0x00000654
|
|
ldr r0, [r5, r0]
|
|
add r0, #0x25
|
|
ldrb r0, [r0]
|
|
cmp r0, #2
|
|
ldr r0, [r5]
|
|
bne _0207CE34
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
add r1, #0x54
|
|
add r2, #0xf0
|
|
bl sub_0207CD84
|
|
mov r2, #0x46
|
|
add r1, r5, #0
|
|
lsl r2, r2, #2
|
|
ldr r0, [r5]
|
|
add r1, #0xf4
|
|
add r2, r4, r2
|
|
bl sub_0207CD84
|
|
mov r2, #0x65
|
|
lsl r2, r2, #2
|
|
add r1, r5, r2
|
|
sub r2, #0x54
|
|
ldr r0, [r5]
|
|
add r2, r4, r2
|
|
bl sub_0207CD84
|
|
b _0207CE5E
|
|
_0207CE34:
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
add r1, #0x54
|
|
add r2, #0x28
|
|
bl sub_0207CD84
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
ldr r0, [r5]
|
|
add r1, #0xf4
|
|
add r2, #0x78
|
|
bl sub_0207CD84
|
|
mov r1, #0x65
|
|
lsl r1, r1, #2
|
|
add r2, r4, #0
|
|
ldr r0, [r5]
|
|
add r1, r5, r1
|
|
add r2, #0xc8
|
|
bl sub_0207CD84
|
|
_0207CE5E:
|
|
mov r2, #0x95
|
|
lsl r2, r2, #2
|
|
add r1, r5, r2
|
|
sub r2, #0xec
|
|
ldr r0, [r5]
|
|
add r2, r4, r2
|
|
bl AddWindow
|
|
mov r2, #0x99
|
|
lsl r2, r2, #2
|
|
add r1, r5, r2
|
|
sub r2, #0xf4
|
|
ldr r0, [r5]
|
|
add r2, r4, r2
|
|
bl AddWindow
|
|
mov r2, #0x9d
|
|
lsl r2, r2, #2
|
|
add r1, r5, r2
|
|
sub r2, #0xfc
|
|
ldr r0, [r5]
|
|
add r2, r4, r2
|
|
bl AddWindow
|
|
ldr r0, _0207CF44 ; =0x00000654
|
|
ldr r0, [r5, r0]
|
|
add r0, #0x24
|
|
ldrb r0, [r0]
|
|
cmp r0, #2
|
|
beq _0207CEA8
|
|
cmp r0, #0x11
|
|
beq _0207CEA8
|
|
add r0, #0xea
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
cmp r0, #1
|
|
bhi _0207CED0
|
|
_0207CEA8:
|
|
ldr r1, _0207CF48 ; =_021015EC
|
|
add r0, sp, #0
|
|
ldrh r3, [r1, #0x30]
|
|
add r2, sp, #0
|
|
strh r3, [r0]
|
|
ldrh r3, [r1, #0x32]
|
|
strh r3, [r0, #2]
|
|
ldrh r3, [r1, #0x34]
|
|
ldrh r1, [r1, #0x36]
|
|
strh r3, [r0, #4]
|
|
strh r1, [r0, #6]
|
|
mov r1, #0x16
|
|
strb r1, [r0, #2]
|
|
mov r1, #0x7d
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
add r1, r5, r1
|
|
bl AddWindow
|
|
b _0207CEDE
|
|
_0207CED0:
|
|
mov r1, #0x7d
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF4C ; =_0210161C
|
|
add r1, r5, r1
|
|
bl AddWindow
|
|
_0207CEDE:
|
|
mov r1, #0x79
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF50 ; =_02101624
|
|
add r1, r5, r1
|
|
bl AddWindow
|
|
mov r1, #0x81
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF54 ; =_0210162C
|
|
add r1, r5, r1
|
|
bl AddWindow
|
|
mov r1, #0x85
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF58 ; =_02101634
|
|
add r1, r5, r1
|
|
bl AddWindow
|
|
mov r1, #0x89
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF5C ; =_0210163C
|
|
add r1, r5, r1
|
|
bl AddWindow
|
|
mov r1, #0x8d
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF60 ; =_02101644
|
|
add r1, r5, r1
|
|
bl AddWindow
|
|
mov r1, #0x91
|
|
lsl r1, r1, #2
|
|
ldr r0, [r5]
|
|
ldr r2, _0207CF64 ; =_0210164C
|
|
add r1, r5, r1
|
|
bl AddWindow
|
|
add sp, #8
|
|
pop {r3, r4, r5, pc}
|
|
nop
|
|
_0207CF38: .word _02101734
|
|
_0207CF3C: .word _02101734 + 0x50
|
|
_0207CF40: .word _02101734 + 0xA0
|
|
_0207CF44: .word 0x00000654
|
|
_0207CF48: .word _021015EC
|
|
_0207CF4C: .word _0210161C
|
|
_0207CF50: .word _02101624
|
|
_0207CF54: .word _0210162C
|
|
_0207CF58: .word _02101634
|
|
_0207CF5C: .word _0210163C
|
|
_0207CF60: .word _02101644
|
|
_0207CF64: .word _0210164C
|
|
thumb_func_end sub_0207CDCC
|
|
|
|
thumb_func_start sub_0207CF68
|
|
sub_0207CF68: ; 0x0207CF68
|
|
push {r4, r5, r6, lr}
|
|
add r6, r0, #0
|
|
mov r5, #0
|
|
add r4, r6, #4
|
|
_0207CF70:
|
|
lsl r0, r5, #4
|
|
add r0, r4, r0
|
|
bl RemoveWindow
|
|
add r0, r5, #1
|
|
lsl r0, r0, #0x10
|
|
lsr r5, r0, #0x10
|
|
cmp r5, #0x28
|
|
blo _0207CF70
|
|
mov r4, #0xa1
|
|
lsl r4, r4, #2
|
|
add r0, r6, r4
|
|
bl WindowIsInUse
|
|
cmp r0, #1
|
|
bne _0207CF96
|
|
add r0, r6, r4
|
|
bl RemoveWindow
|
|
_0207CF96:
|
|
pop {r4, r5, r6, pc}
|
|
thumb_func_end sub_0207CF68
|
|
|
|
thumb_func_start sub_0207CF98
|
|
sub_0207CF98: ; 0x0207CF98
|
|
push {r4, lr}
|
|
mov r2, #0x1f
|
|
add r4, r0, #0
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x10
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x80
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x14
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x81
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x18
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x82
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x1c
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x8f
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x20
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x90
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x24
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x83
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x28
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x84
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x2c
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x85
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x30
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x86
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x34
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x87
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x38
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x88
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x3c
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x89
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x40
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x8a
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x44
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x89
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x48
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0x95
|
|
bl ReadMsgDataIntoString
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r4, r2]
|
|
add r2, #0x4c
|
|
ldr r2, [r4, r2]
|
|
mov r1, #0xba
|
|
bl ReadMsgDataIntoString
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end sub_0207CF98
|
|
|
|
thumb_func_start sub_0207D0A0
|
|
sub_0207D0A0: ; 0x0207D0A0
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r5, r0, #0
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
add r4, r2, #0
|
|
add r7, r1, #0
|
|
add r1, r4, #0
|
|
ldr r0, [r5, r0]
|
|
add r1, #0x8b
|
|
bl NewString_ReadMsgData
|
|
add r6, r0, #0
|
|
ldr r0, _0207D0E0 ; =0x000007C4
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
add r2, r7, #0
|
|
bl BufferMoveName
|
|
ldr r1, _0207D0E0 ; =0x000007C4
|
|
add r4, #0x10
|
|
lsl r2, r4, #2
|
|
ldr r0, [r5, r1]
|
|
add r2, r5, r2
|
|
add r1, #0xc
|
|
ldr r1, [r2, r1]
|
|
add r2, r6, #0
|
|
bl StringExpandPlaceholders
|
|
add r0, r6, #0
|
|
bl String_Delete
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207D0E0: .word 0x000007C4
|
|
thumb_func_end sub_0207D0A0
|
|
|
|
thumb_func_start sub_0207D0E4
|
|
sub_0207D0E4: ; 0x0207D0E4
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x14
|
|
add r5, r0, #0
|
|
add r7, r1, #0
|
|
add r0, r2, #0
|
|
mov r1, #0xc
|
|
str r2, [sp, #4]
|
|
bl ListMenuItems_New
|
|
mov r1, #0x82
|
|
lsl r1, r1, #4
|
|
str r0, [r5, r1]
|
|
mov r6, #0
|
|
ldr r0, [sp, #4]
|
|
add r4, r6, #0
|
|
cmp r0, #0
|
|
ble _0207D156
|
|
_0207D106:
|
|
ldrb r0, [r7, r4]
|
|
cmp r0, #0x10
|
|
blo _0207D12E
|
|
bl sub_0207F42C
|
|
lsl r1, r6, #2
|
|
add r2, r0, #0
|
|
mov r0, #0x82
|
|
add r3, r5, r1
|
|
mov r1, #0x81
|
|
lsl r0, r0, #4
|
|
lsl r1, r1, #4
|
|
ldr r0, [r5, r0]
|
|
ldr r1, [r3, r1]
|
|
bl ListMenuItems_AddItem
|
|
add r0, r6, #1
|
|
lsl r0, r0, #0x10
|
|
lsr r6, r0, #0x10
|
|
b _0207D14A
|
|
_0207D12E:
|
|
bl sub_0207F42C
|
|
ldrb r1, [r7, r4]
|
|
add r2, r0, #0
|
|
mov r0, #0x82
|
|
lsl r1, r1, #2
|
|
add r3, r5, r1
|
|
mov r1, #0x7d
|
|
lsl r0, r0, #4
|
|
lsl r1, r1, #4
|
|
ldr r0, [r5, r0]
|
|
ldr r1, [r3, r1]
|
|
bl ListMenuItems_AddItem
|
|
_0207D14A:
|
|
add r0, r4, #1
|
|
lsl r0, r0, #0x10
|
|
lsr r4, r0, #0x10
|
|
ldr r0, [sp, #4]
|
|
cmp r4, r0
|
|
blt _0207D106
|
|
_0207D156:
|
|
mov r0, #0x82
|
|
lsl r0, r0, #4
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0
|
|
str r0, [sp, #8]
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
str r0, [sp, #0xc]
|
|
add r0, sp, #8
|
|
strb r1, [r0, #8]
|
|
mov r1, #1
|
|
strb r1, [r0, #9]
|
|
ldr r1, [sp, #4]
|
|
strb r1, [r0, #0xa]
|
|
ldrb r2, [r0, #0xb]
|
|
mov r1, #0xf
|
|
bic r2, r1
|
|
strb r2, [r0, #0xb]
|
|
ldrb r2, [r0, #0xb]
|
|
mov r1, #0x30
|
|
bic r2, r1
|
|
strb r2, [r0, #0xb]
|
|
ldr r1, [sp, #4]
|
|
ldrb r2, [r0, #0xb]
|
|
cmp r1, #4
|
|
blo _0207D198
|
|
mov r1, #0xc0
|
|
bic r2, r1
|
|
mov r1, #0x40
|
|
orr r1, r2
|
|
strb r1, [r0, #0xb]
|
|
b _0207D19E
|
|
_0207D198:
|
|
mov r1, #0xc0
|
|
bic r2, r1
|
|
strb r2, [r0, #0xb]
|
|
_0207D19E:
|
|
add r1, sp, #8
|
|
ldrb r1, [r1, #0xa]
|
|
mov r2, #0
|
|
add r0, r5, #0
|
|
add r3, r2, #0
|
|
bl sub_0207E54C
|
|
mov r2, #0
|
|
add r0, r5, #0
|
|
add r1, sp, #8
|
|
mov r3, #0xc
|
|
str r2, [sp]
|
|
bl sub_0207E590
|
|
ldr r1, _0207D1C4 ; =0x00000824
|
|
str r0, [r5, r1]
|
|
add sp, #0x14
|
|
pop {r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207D1C4: .word 0x00000824
|
|
thumb_func_end sub_0207D0E4
|
|
|
|
thumb_func_start sub_0207D1C8
|
|
sub_0207D1C8: ; 0x0207D1C8
|
|
push {r4, r5, r6, lr}
|
|
add r5, r0, #0
|
|
ldr r0, _0207D258 ; =0x00000654
|
|
ldr r0, [r5, r0]
|
|
add r1, r0, #0
|
|
add r1, #0x24
|
|
ldrb r1, [r1]
|
|
cmp r1, #0xf
|
|
bne _0207D1EC
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r5, r2]
|
|
add r2, #8
|
|
ldr r2, [r5, r2]
|
|
mov r1, #0x2b
|
|
bl ReadMsgDataIntoString
|
|
pop {r4, r5, r6, pc}
|
|
_0207D1EC:
|
|
cmp r1, #0x15
|
|
bne _0207D214
|
|
ldr r1, _0207D25C ; =0x00000C65
|
|
ldrb r2, [r5, r1]
|
|
mov r1, #0x30
|
|
mul r1, r2
|
|
ldr r2, _0207D260 ; =0x00000838
|
|
add r1, r5, r1
|
|
ldrb r1, [r1, r2]
|
|
cmp r1, #1
|
|
bne _0207D214
|
|
add r0, r2, #0
|
|
sub r0, #0x78
|
|
sub r2, #0x70
|
|
ldr r0, [r5, r0]
|
|
ldr r2, [r5, r2]
|
|
mov r1, #0xb7
|
|
bl ReadMsgDataIntoString
|
|
pop {r4, r5, r6, pc}
|
|
_0207D214:
|
|
ldr r1, _0207D25C ; =0x00000C65
|
|
ldr r0, [r0]
|
|
ldrb r1, [r5, r1]
|
|
bl GetPartyMonByIndex
|
|
add r6, r0, #0
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0x26
|
|
bl NewString_ReadMsgData
|
|
add r4, r0, #0
|
|
add r0, r6, #0
|
|
bl Mon_GetBoxMon
|
|
add r2, r0, #0
|
|
ldr r0, _0207D264 ; =0x000007C4
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl BufferBoxMonNickname
|
|
ldr r1, _0207D264 ; =0x000007C4
|
|
add r2, r4, #0
|
|
ldr r0, [r5, r1]
|
|
add r1, r1, #4
|
|
ldr r1, [r5, r1]
|
|
bl StringExpandPlaceholders
|
|
add r0, r4, #0
|
|
bl String_Delete
|
|
pop {r4, r5, r6, pc}
|
|
nop
|
|
_0207D258: .word 0x00000654
|
|
_0207D25C: .word 0x00000C65
|
|
_0207D260: .word 0x00000838
|
|
_0207D264: .word 0x000007C4
|
|
thumb_func_end sub_0207D1C8
|
|
|
|
thumb_func_start sub_0207D268
|
|
sub_0207D268: ; 0x0207D268
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
add r2, r0, #0
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
ldr r0, _0207D290 ; =0x000007BC
|
|
add r4, r1, #0
|
|
ldr r0, [r2, r0]
|
|
add r3, r2, #4
|
|
lsl r2, r4, #2
|
|
add r2, r4, r2
|
|
add r2, r2, #2
|
|
lsl r2, r2, #4
|
|
add r2, r3, r2
|
|
mov r1, #0
|
|
mov r3, #0x1c
|
|
bl sub_0200CDAC
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_0207D290: .word 0x000007BC
|
|
thumb_func_end sub_0207D268
|
|
|
|
thumb_func_start sub_0207D294
|
|
sub_0207D294: ; 0x0207D294
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r7, r1, #0
|
|
add r4, r2, #0
|
|
add r5, r0, #0
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r1, _0207D2DC ; =_021015BC
|
|
lsl r2, r4, #3
|
|
ldrh r1, [r1, r2]
|
|
ldr r0, [r5, r0]
|
|
bl NewString_ReadMsgData
|
|
add r6, r0, #0
|
|
add r0, r7, #0
|
|
bl Mon_GetBoxMon
|
|
add r2, r0, #0
|
|
ldr r0, _0207D2E0 ; =0x000007C4
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl BufferBoxMonNickname
|
|
ldr r2, _0207D2E0 ; =0x000007C4
|
|
mov r1, #0x30
|
|
mul r1, r4
|
|
ldr r0, [r5, r2]
|
|
add r1, r5, r1
|
|
add r2, #0x64
|
|
ldr r1, [r1, r2]
|
|
add r2, r6, #0
|
|
bl StringExpandPlaceholders
|
|
add r0, r6, #0
|
|
bl String_Delete
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207D2DC: .word _021015BC
|
|
_0207D2E0: .word 0x000007C4
|
|
thumb_func_end sub_0207D294
|
|
|
|
thumb_func_start sub_0207D2E4
|
|
sub_0207D2E4: ; 0x0207D2E4
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x10
|
|
add r5, r0, #0
|
|
lsl r0, r1, #2
|
|
add r0, r1, r0
|
|
lsl r6, r0, #4
|
|
add r7, r1, #0
|
|
mov r0, #0x30
|
|
mul r7, r0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207D3C8 ; =0x000F0E00
|
|
ldr r2, _0207D3CC ; =0x00000828
|
|
str r0, [sp, #8]
|
|
add r4, r5, #4
|
|
str r1, [sp, #0xc]
|
|
add r3, r5, r7
|
|
ldr r2, [r3, r2]
|
|
add r0, r4, r6
|
|
add r3, r1, #0
|
|
bl AddTextPrinterParameterized2
|
|
ldr r0, _0207D3D0 ; =0x00000838
|
|
add r1, r5, r7
|
|
ldrb r0, [r1, r0]
|
|
cmp r0, #1
|
|
bne _0207D328
|
|
add r0, r4, r6
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x10
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207D328:
|
|
mov r0, #0x99
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
ldr r0, _0207D3C8 ; =0x000F0E00
|
|
str r1, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov r0, #0x99
|
|
lsl r0, r0, #2
|
|
ldr r2, _0207D3D4 ; =0x000007D8
|
|
str r1, [sp, #0xc]
|
|
ldr r2, [r5, r2]
|
|
add r0, r5, r0
|
|
mov r3, #2
|
|
bl AddTextPrinterParameterized2
|
|
ldr r2, _0207D3D8 ; =0x00000836
|
|
add r0, r5, r2
|
|
ldrh r0, [r0, r7]
|
|
lsl r1, r0, #0x13
|
|
lsr r1, r1, #0x1f
|
|
bne _0207D3BE
|
|
lsl r0, r0, #0x11
|
|
lsr r0, r0, #0x1e
|
|
bne _0207D390
|
|
add r0, r2, #0
|
|
sub r0, #0x76
|
|
sub r2, #0x6a
|
|
ldr r0, [r5, r0]
|
|
ldr r2, [r5, r2]
|
|
mov r1, #0x1b
|
|
bl ReadMsgDataIntoString
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
mov r0, #0xc1
|
|
lsl r0, r0, #0xa
|
|
str r0, [sp, #8]
|
|
ldr r2, _0207D3DC ; =0x000007CC
|
|
str r1, [sp, #0xc]
|
|
ldr r2, [r5, r2]
|
|
add r0, r4, r6
|
|
mov r3, #0x40
|
|
bl AddTextPrinterParameterized2
|
|
b _0207D3BE
|
|
_0207D390:
|
|
cmp r0, #1
|
|
bne _0207D3BE
|
|
add r0, r2, #0
|
|
sub r0, #0x76
|
|
sub r2, #0x6a
|
|
ldr r0, [r5, r0]
|
|
ldr r2, [r5, r2]
|
|
mov r1, #0x1c
|
|
bl ReadMsgDataIntoString
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207D3E0 ; =0x00050600
|
|
ldr r2, _0207D3DC ; =0x000007CC
|
|
str r0, [sp, #8]
|
|
str r1, [sp, #0xc]
|
|
ldr r2, [r5, r2]
|
|
add r0, r4, r6
|
|
mov r3, #0x40
|
|
bl AddTextPrinterParameterized2
|
|
_0207D3BE:
|
|
add r0, r4, r6
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x10
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207D3C8: .word 0x000F0E00
|
|
_0207D3CC: .word 0x00000828
|
|
_0207D3D0: .word 0x00000838
|
|
_0207D3D4: .word 0x000007D8
|
|
_0207D3D8: .word 0x00000836
|
|
_0207D3DC: .word 0x000007CC
|
|
_0207D3E0: .word 0x00050600
|
|
thumb_func_end sub_0207D2E4
|
|
|
|
thumb_func_start sub_0207D3E4
|
|
sub_0207D3E4: ; 0x0207D3E4
|
|
push {r4, lr}
|
|
sub sp, #0x10
|
|
lsl r2, r1, #2
|
|
add r2, r1, r2
|
|
add r2, r2, #1
|
|
add r3, r0, #4
|
|
lsl r2, r2, #4
|
|
add r4, r3, r2
|
|
mov r2, #0x30
|
|
mul r2, r1
|
|
ldr r3, _0207D43C ; =0x00000836
|
|
add r2, r0, r2
|
|
ldrh r1, [r2, r3]
|
|
lsl r1, r1, #0x14
|
|
lsr r1, r1, #0x14
|
|
cmp r1, #7
|
|
beq _0207D410
|
|
add r0, r4, #0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x10
|
|
pop {r4, pc}
|
|
_0207D410:
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r4, [sp, #4]
|
|
mov r1, #5
|
|
str r1, [sp, #8]
|
|
mov r1, #2
|
|
str r1, [sp, #0xc]
|
|
add r1, r3, #0
|
|
sub r3, r3, #4
|
|
sub r1, #0x7a
|
|
ldrh r2, [r2, r3]
|
|
ldr r0, [r0, r1]
|
|
mov r1, #1
|
|
mov r3, #3
|
|
bl sub_0200CE7C
|
|
add r0, r4, #0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x10
|
|
pop {r4, pc}
|
|
nop
|
|
_0207D43C: .word 0x00000836
|
|
thumb_func_end sub_0207D3E4
|
|
|
|
thumb_func_start sub_0207D440
|
|
sub_0207D440: ; 0x0207D440
|
|
push {r4, r5, lr}
|
|
sub sp, #0xc
|
|
add r2, r0, #0
|
|
lsl r0, r1, #2
|
|
add r0, r1, r0
|
|
add r0, r0, #2
|
|
add r3, r2, #4
|
|
lsl r0, r0, #4
|
|
add r4, r3, r0
|
|
mov r3, #0x30
|
|
mul r3, r1
|
|
add r1, r2, r3
|
|
str r4, [sp]
|
|
mov r0, #0
|
|
str r0, [sp, #4]
|
|
mov r0, #2
|
|
ldr r5, _0207D47C ; =0x000007BC
|
|
str r0, [sp, #8]
|
|
ldr r0, [r2, r5]
|
|
add r5, #0x72
|
|
ldrh r1, [r1, r5]
|
|
mov r2, #3
|
|
mov r3, #1
|
|
bl PrintUIntOnWindow
|
|
add r0, r4, #0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0xc
|
|
pop {r4, r5, pc}
|
|
.balign 4, 0
|
|
_0207D47C: .word 0x000007BC
|
|
thumb_func_end sub_0207D440
|
|
|
|
thumb_func_start sub_0207D480
|
|
sub_0207D480: ; 0x0207D480
|
|
push {r3, r4, r5, lr}
|
|
sub sp, #8
|
|
add r5, r0, #4
|
|
lsl r0, r1, #2
|
|
add r0, r1, r0
|
|
add r0, r0, #2
|
|
mov r1, #0
|
|
lsl r4, r0, #4
|
|
mov r0, #0x18
|
|
str r0, [sp]
|
|
mov r0, #0x10
|
|
str r0, [sp, #4]
|
|
add r0, r5, r4
|
|
add r2, r1, #0
|
|
add r3, r1, #0
|
|
bl FillWindowPixelRect
|
|
add r0, r5, r4
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #8
|
|
pop {r3, r4, r5, pc}
|
|
thumb_func_end sub_0207D480
|
|
|
|
thumb_func_start sub_0207D4AC
|
|
sub_0207D4AC: ; 0x0207D4AC
|
|
push {r4, r5, lr}
|
|
sub sp, #0xc
|
|
add r2, r0, #0
|
|
lsl r0, r1, #2
|
|
add r0, r1, r0
|
|
add r0, r0, #2
|
|
add r3, r2, #4
|
|
lsl r0, r0, #4
|
|
add r4, r3, r0
|
|
mov r3, #0x30
|
|
mul r3, r1
|
|
add r1, r2, r3
|
|
str r4, [sp]
|
|
mov r0, #0x24
|
|
str r0, [sp, #4]
|
|
mov r0, #2
|
|
ldr r5, _0207D4E8 ; =0x000007BC
|
|
str r0, [sp, #8]
|
|
ldr r0, [r2, r5]
|
|
add r5, #0x74
|
|
ldrh r1, [r1, r5]
|
|
mov r2, #3
|
|
mov r3, #0
|
|
bl PrintUIntOnWindow
|
|
add r0, r4, #0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0xc
|
|
pop {r4, r5, pc}
|
|
.balign 4, 0
|
|
_0207D4E8: .word 0x000007BC
|
|
thumb_func_end sub_0207D4AC
|
|
|
|
thumb_func_start sub_0207D4EC
|
|
sub_0207D4EC: ; 0x0207D4EC
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0xc
|
|
lsl r2, r1, #2
|
|
add r2, r1, r2
|
|
add r5, r0, #0
|
|
add r2, r2, #3
|
|
add r0, r5, #4
|
|
lsl r2, r2, #4
|
|
add r4, r0, r2
|
|
mov r0, #0x83
|
|
lsl r0, r0, #4
|
|
add r7, r5, r0
|
|
sub r0, r0, #2
|
|
add r0, r5, r0
|
|
mov r2, #0x30
|
|
add r6, r1, #0
|
|
mul r6, r2
|
|
str r0, [sp, #8]
|
|
ldrh r0, [r0, r6]
|
|
ldrh r1, [r7, r6]
|
|
bl sub_020880B0
|
|
cmp r0, #4
|
|
bhi _0207D582
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_0207D528: ; jump table
|
|
.short _0207D532 - _0207D528 - 2 ; case 0
|
|
.short _0207D56C - _0207D528 - 2 ; case 1
|
|
.short _0207D554 - _0207D528 - 2 ; case 2
|
|
.short _0207D53C - _0207D528 - 2 ; case 3
|
|
.short _0207D53C - _0207D528 - 2 ; case 4
|
|
_0207D532:
|
|
add r0, r4, #0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0xc
|
|
pop {r4, r5, r6, r7, pc}
|
|
_0207D53C:
|
|
ldrb r3, [r4, #9]
|
|
ldr r1, _0207D5D0 ; =0x00000566
|
|
mov r0, #1
|
|
lsl r3, r3, #4
|
|
add r3, #9
|
|
lsl r3, r3, #0x11
|
|
add r1, r5, r1
|
|
mov r2, #4
|
|
lsr r3, r3, #0x10
|
|
bl BG_LoadPlttData
|
|
b _0207D582
|
|
_0207D554:
|
|
ldrb r3, [r4, #9]
|
|
ldr r1, _0207D5D4 ; =0x00000586
|
|
mov r0, #1
|
|
lsl r3, r3, #4
|
|
add r3, #9
|
|
lsl r3, r3, #0x11
|
|
add r1, r5, r1
|
|
mov r2, #4
|
|
lsr r3, r3, #0x10
|
|
bl BG_LoadPlttData
|
|
b _0207D582
|
|
_0207D56C:
|
|
ldrb r3, [r4, #9]
|
|
ldr r1, _0207D5D8 ; =0x000005A6
|
|
mov r0, #1
|
|
lsl r3, r3, #4
|
|
add r3, #9
|
|
lsl r3, r3, #0x11
|
|
add r1, r5, r1
|
|
mov r2, #4
|
|
lsr r3, r3, #0x10
|
|
bl BG_LoadPlttData
|
|
_0207D582:
|
|
ldr r0, [sp, #8]
|
|
ldrh r1, [r7, r6]
|
|
ldrh r0, [r0, r6]
|
|
mov r2, #0x30
|
|
bl RatioToInt
|
|
add r5, r0, #0
|
|
str r5, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
add r0, r4, #0
|
|
mov r1, #0xa
|
|
mov r2, #0
|
|
mov r3, #2
|
|
bl FillWindowPixelRect
|
|
str r5, [sp]
|
|
mov r0, #2
|
|
str r0, [sp, #4]
|
|
add r0, r4, #0
|
|
mov r1, #9
|
|
mov r2, #0
|
|
mov r3, #3
|
|
bl FillWindowPixelRect
|
|
str r5, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
add r0, r4, #0
|
|
mov r1, #0xa
|
|
mov r2, #0
|
|
mov r3, #5
|
|
bl FillWindowPixelRect
|
|
add r0, r4, #0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0xc
|
|
pop {r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207D5D0: .word 0x00000566
|
|
_0207D5D4: .word 0x00000586
|
|
_0207D5D8: .word 0x000005A6
|
|
thumb_func_end sub_0207D4EC
|
|
|
|
thumb_func_start sub_0207D5DC
|
|
sub_0207D5DC: ; 0x0207D5DC
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x18
|
|
add r6, r1, #0
|
|
add r5, r0, #0
|
|
lsl r0, r6, #2
|
|
add r4, r6, r0
|
|
add r0, r5, #4
|
|
str r0, [sp]
|
|
lsl r0, r4, #4
|
|
ldr r1, [sp]
|
|
str r0, [sp, #4]
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r4, #1
|
|
lsl r0, r0, #4
|
|
add r7, r5, #4
|
|
str r0, [sp, #8]
|
|
add r0, r7, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r7, #0
|
|
str r0, [sp, #0xc]
|
|
add r0, r4, #2
|
|
lsl r0, r0, #4
|
|
ldr r1, [sp, #0xc]
|
|
str r0, [sp, #0x10]
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r7, #0
|
|
str r0, [sp, #0x14]
|
|
add r0, r4, #3
|
|
lsl r4, r0, #4
|
|
ldr r0, [sp, #0x14]
|
|
mov r1, #0
|
|
add r0, r0, r4
|
|
bl FillWindowPixelBuffer
|
|
add r0, r5, #0
|
|
add r1, r6, #0
|
|
bl sub_0207D2E4
|
|
mov r0, #0x30
|
|
mul r0, r6
|
|
add r1, r5, r0
|
|
ldr r0, _0207D69C ; =0x00000838
|
|
ldrb r0, [r1, r0]
|
|
cmp r0, #1
|
|
bne _0207D66E
|
|
ldr r1, [sp]
|
|
ldr r0, [sp, #4]
|
|
add r0, r1, r0
|
|
bl ScheduleWindowCopyToVram
|
|
ldr r0, [sp, #8]
|
|
add r0, r7, r0
|
|
bl ScheduleWindowCopyToVram
|
|
ldr r1, [sp, #0xc]
|
|
ldr r0, [sp, #0x10]
|
|
add r0, r1, r0
|
|
bl ScheduleWindowCopyToVram
|
|
ldr r0, [sp, #0x14]
|
|
add r0, r0, r4
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x18
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207D66E:
|
|
add r0, r5, #0
|
|
add r1, r6, #0
|
|
bl sub_0207D268
|
|
add r0, r5, #0
|
|
add r1, r6, #0
|
|
bl sub_0207D3E4
|
|
add r0, r5, #0
|
|
add r1, r6, #0
|
|
bl sub_0207D440
|
|
add r0, r5, #0
|
|
add r1, r6, #0
|
|
bl sub_0207D4AC
|
|
add r0, r5, #0
|
|
add r1, r6, #0
|
|
bl sub_0207D4EC
|
|
add sp, #0x18
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207D69C: .word 0x00000838
|
|
thumb_func_end sub_0207D5DC
|
|
|
|
thumb_func_start sub_0207D6A0
|
|
sub_0207D6A0: ; 0x0207D6A0
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
lsl r0, r1, #2
|
|
add r4, r1, r0
|
|
add r1, r5, #4
|
|
lsl r0, r4, #4
|
|
add r0, r1, r0
|
|
bl CopyWindowPixelsToVram_TextMode
|
|
add r0, r4, #1
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
bl CopyWindowPixelsToVram_TextMode
|
|
add r0, r4, #2
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
bl CopyWindowPixelsToVram_TextMode
|
|
add r0, r4, #3
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
bl CopyWindowPixelsToVram_TextMode
|
|
pop {r3, r4, r5, pc}
|
|
thumb_func_end sub_0207D6A0
|
|
|
|
thumb_func_start sub_0207D6D8
|
|
sub_0207D6D8: ; 0x0207D6D8
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
lsl r0, r1, #2
|
|
add r4, r1, r0
|
|
add r1, r5, #4
|
|
lsl r0, r4, #4
|
|
add r0, r1, r0
|
|
bl ClearWindowTilemapAndScheduleTransfer
|
|
add r0, r4, #1
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
bl ClearWindowTilemapAndScheduleTransfer
|
|
add r0, r4, #2
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
bl ClearWindowTilemapAndScheduleTransfer
|
|
add r0, r4, #3
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
bl ClearWindowTilemapAndScheduleTransfer
|
|
pop {r3, r4, r5, pc}
|
|
thumb_func_end sub_0207D6D8
|
|
|
|
thumb_func_start sub_0207D710
|
|
sub_0207D710: ; 0x0207D710
|
|
push {r3, r4, r5, r6, lr}
|
|
sub sp, #4
|
|
add r4, r1, #0
|
|
add r5, r0, #0
|
|
lsl r0, r4, #2
|
|
add r6, r4, r0
|
|
add r1, r5, #4
|
|
lsl r0, r6, #4
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r6, #1
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207D2E4
|
|
mov r0, #0x30
|
|
mul r0, r4
|
|
add r1, r5, r0
|
|
ldr r0, _0207D7A0 ; =0x00000838
|
|
ldrb r0, [r1, r0]
|
|
cmp r0, #1
|
|
bne _0207D75A
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #1
|
|
bl sub_0207DC20
|
|
add sp, #4
|
|
pop {r3, r4, r5, r6, pc}
|
|
_0207D75A:
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207D3E4
|
|
ldr r0, _0207D7A4 ; =0x00000654
|
|
add r1, r4, #0
|
|
ldr r0, [r5, r0]
|
|
ldr r0, [r0]
|
|
bl GetPartyMonByIndex
|
|
add r1, r0, #0
|
|
mov r0, #0
|
|
ldr r3, _0207D7A4 ; =0x00000654
|
|
str r0, [sp]
|
|
ldr r3, [r5, r3]
|
|
mov r2, #3
|
|
ldrh r3, [r3, #0x28]
|
|
bl GetMonEvolution
|
|
cmp r0, #0
|
|
bne _0207D792
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #1
|
|
bl sub_0207DC20
|
|
add sp, #4
|
|
pop {r3, r4, r5, r6, pc}
|
|
_0207D792:
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #0
|
|
bl sub_0207DC20
|
|
add sp, #4
|
|
pop {r3, r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_0207D7A0: .word 0x00000838
|
|
_0207D7A4: .word 0x00000654
|
|
thumb_func_end sub_0207D710
|
|
|
|
thumb_func_start sub_0207D7A8
|
|
sub_0207D7A8: ; 0x0207D7A8
|
|
push {r4, r5, r6, lr}
|
|
add r4, r1, #0
|
|
add r5, r0, #0
|
|
lsl r0, r4, #2
|
|
add r6, r4, r0
|
|
add r1, r5, #4
|
|
lsl r0, r6, #4
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r6, #1
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207D2E4
|
|
mov r0, #0x30
|
|
mul r0, r4
|
|
add r1, r5, r0
|
|
ldr r0, _0207D838 ; =0x00000838
|
|
ldrb r0, [r1, r0]
|
|
cmp r0, #1
|
|
bne _0207D7EE
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #1
|
|
bl sub_0207DC90
|
|
pop {r4, r5, r6, pc}
|
|
_0207D7EE:
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207D3E4
|
|
ldr r0, _0207D83C ; =0x00000654
|
|
add r1, r4, #0
|
|
ldr r0, [r5, r0]
|
|
ldr r0, [r0]
|
|
bl GetPartyMonByIndex
|
|
add r1, r0, #0
|
|
add r0, r5, #0
|
|
bl sub_020820DC
|
|
cmp r0, #0xff
|
|
bne _0207D81A
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #1
|
|
bl sub_0207DC90
|
|
pop {r4, r5, r6, pc}
|
|
_0207D81A:
|
|
cmp r0, #0xfd
|
|
bne _0207D82A
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #2
|
|
bl sub_0207DC90
|
|
pop {r4, r5, r6, pc}
|
|
_0207D82A:
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #0
|
|
bl sub_0207DC90
|
|
pop {r4, r5, r6, pc}
|
|
nop
|
|
_0207D838: .word 0x00000838
|
|
_0207D83C: .word 0x00000654
|
|
thumb_func_end sub_0207D7A8
|
|
|
|
thumb_func_start sub_0207D840
|
|
sub_0207D840: ; 0x0207D840
|
|
push {r4, r5, r6, lr}
|
|
add r4, r1, #0
|
|
add r5, r0, #0
|
|
lsl r0, r4, #2
|
|
add r6, r4, r0
|
|
add r1, r5, #4
|
|
lsl r0, r6, #4
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r6, #1
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207D2E4
|
|
mov r0, #0x30
|
|
add r6, r4, #0
|
|
mul r6, r0
|
|
ldr r0, _0207D89C ; =0x00000838
|
|
add r1, r5, r6
|
|
ldrb r0, [r1, r0]
|
|
cmp r0, #1
|
|
beq _0207D884
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207D3E4
|
|
_0207D884:
|
|
ldr r2, _0207D8A0 ; =0x00000836
|
|
add r3, r5, r6
|
|
ldrh r2, [r3, r2]
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
lsl r2, r2, #0x10
|
|
lsr r2, r2, #0x1f
|
|
lsl r2, r2, #0x18
|
|
lsr r2, r2, #0x18
|
|
bl sub_0207DD14
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_0207D89C: .word 0x00000838
|
|
_0207D8A0: .word 0x00000836
|
|
thumb_func_end sub_0207D840
|
|
|
|
thumb_func_start sub_0207D8A4
|
|
sub_0207D8A4: ; 0x0207D8A4
|
|
push {r4, r5, r6, lr}
|
|
add r4, r1, #0
|
|
add r5, r0, #0
|
|
lsl r0, r4, #2
|
|
add r6, r4, r0
|
|
add r1, r5, #4
|
|
lsl r0, r6, #4
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r6, #1
|
|
add r1, r5, #4
|
|
lsl r0, r0, #4
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207D2E4
|
|
mov r0, #0x30
|
|
mul r0, r4
|
|
add r1, r5, r0
|
|
ldr r0, _0207D8E8 ; =0x00000838
|
|
ldrb r0, [r1, r0]
|
|
cmp r0, #1
|
|
beq _0207D8E6
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207D3E4
|
|
_0207D8E6:
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_0207D8E8: .word 0x00000838
|
|
thumb_func_end sub_0207D8A4
|
|
|
|
thumb_func_start sub_0207D8EC
|
|
sub_0207D8EC: ; 0x0207D8EC
|
|
push {r4, r5, r6, lr}
|
|
add r5, r0, #0
|
|
ldr r0, _0207D984 ; =0x00000654
|
|
add r4, r1, #0
|
|
ldr r1, [r5, r0]
|
|
mov r2, #0
|
|
add r0, r1, #0
|
|
add r0, #0x36
|
|
ldrb r0, [r0]
|
|
lsl r0, r0, #0x18
|
|
lsr r3, r0, #0x1c
|
|
beq _0207D924
|
|
add r0, r4, #1
|
|
_0207D906:
|
|
add r6, r1, r2
|
|
add r6, #0x30
|
|
ldrb r6, [r6]
|
|
cmp r0, r6
|
|
bne _0207D91A
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207DD7C
|
|
pop {r4, r5, r6, pc}
|
|
_0207D91A:
|
|
add r2, r2, #1
|
|
lsl r2, r2, #0x18
|
|
lsr r2, r2, #0x18
|
|
cmp r2, r3
|
|
blo _0207D906
|
|
_0207D924:
|
|
add r1, #0x24
|
|
ldrb r0, [r1]
|
|
cmp r0, #0x16
|
|
bne _0207D944
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207B418
|
|
cmp r0, #0
|
|
bne _0207D978
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #8
|
|
bl sub_0207DD7C
|
|
pop {r4, r5, r6, pc}
|
|
_0207D944:
|
|
cmp r0, #0x17
|
|
bne _0207D960
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207B4A0
|
|
cmp r0, #0
|
|
bne _0207D978
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #8
|
|
bl sub_0207DD7C
|
|
pop {r4, r5, r6, pc}
|
|
_0207D960:
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl sub_0207B364
|
|
cmp r0, #0
|
|
bne _0207D978
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #8
|
|
bl sub_0207DD7C
|
|
pop {r4, r5, r6, pc}
|
|
_0207D978:
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
mov r2, #7
|
|
bl sub_0207DD7C
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_0207D984: .word 0x00000654
|
|
thumb_func_end sub_0207D8EC
|
|
|
|
thumb_func_start sub_0207D988
|
|
sub_0207D988: ; 0x0207D988
|
|
push {r4, lr}
|
|
add r4, r2, #0
|
|
mov r2, #0
|
|
bl FontID_String_GetWidth
|
|
sub r0, r4, r0
|
|
lsr r0, r0, #1
|
|
pop {r4, pc}
|
|
thumb_func_end sub_0207D988
|
|
|
|
thumb_func_start sub_0207D998
|
|
sub_0207D998: ; 0x0207D998
|
|
push {r3, r4, r5, lr}
|
|
sub sp, #0x10
|
|
add r5, r0, #0
|
|
mov r0, #0x79
|
|
lsl r0, r0, #2
|
|
add r4, r1, #0
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #0x7d
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #1
|
|
tst r0, r4
|
|
beq _0207DA04
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r5, r2]
|
|
add r2, #0xc
|
|
ldr r2, [r5, r2]
|
|
mov r1, #0
|
|
bl ReadMsgDataIntoString
|
|
ldr r2, _0207DA54 ; =0x000001EB
|
|
ldr r1, _0207DA58 ; =0x000007CC
|
|
ldrb r2, [r5, r2]
|
|
ldr r1, [r5, r1]
|
|
mov r0, #0
|
|
lsl r2, r2, #3
|
|
bl sub_0207D988
|
|
mov r1, #0
|
|
add r3, r0, #0
|
|
str r1, [sp]
|
|
mov r2, #0xff
|
|
str r2, [sp, #4]
|
|
ldr r0, _0207DA5C ; =0x000F0E00
|
|
add r2, #0xe5
|
|
str r0, [sp, #8]
|
|
add r0, r5, r2
|
|
ldr r2, _0207DA58 ; =0x000007CC
|
|
str r1, [sp, #0xc]
|
|
ldr r2, [r5, r2]
|
|
bl AddTextPrinterParameterized2
|
|
mov r0, #0x79
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
bl ScheduleWindowCopyToVram
|
|
_0207DA04:
|
|
mov r0, #2
|
|
tst r0, r4
|
|
beq _0207DA50
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r5, r2]
|
|
add r2, #0xc
|
|
ldr r2, [r5, r2]
|
|
mov r1, #1
|
|
bl ReadMsgDataIntoString
|
|
ldr r2, _0207DA60 ; =0x000001FB
|
|
ldr r1, _0207DA58 ; =0x000007CC
|
|
ldrb r2, [r5, r2]
|
|
ldr r1, [r5, r1]
|
|
mov r0, #0
|
|
lsl r2, r2, #3
|
|
bl sub_0207D988
|
|
mov r1, #0
|
|
add r3, r0, #0
|
|
str r1, [sp]
|
|
mov r2, #0xff
|
|
str r2, [sp, #4]
|
|
ldr r0, _0207DA5C ; =0x000F0E00
|
|
add r2, #0xf5
|
|
str r0, [sp, #8]
|
|
add r0, r5, r2
|
|
ldr r2, _0207DA58 ; =0x000007CC
|
|
str r1, [sp, #0xc]
|
|
ldr r2, [r5, r2]
|
|
bl AddTextPrinterParameterized2
|
|
mov r0, #0x7d
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
bl ScheduleWindowCopyToVram
|
|
_0207DA50:
|
|
add sp, #0x10
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_0207DA54: .word 0x000001EB
|
|
_0207DA58: .word 0x000007CC
|
|
_0207DA5C: .word 0x000F0E00
|
|
_0207DA60: .word 0x000001FB
|
|
thumb_func_end sub_0207D998
|
|
|
|
thumb_func_start sub_0207DA64
|
|
sub_0207DA64: ; 0x0207DA64
|
|
push {r3, r4, r5, r6, lr}
|
|
sub sp, #0xc
|
|
add r5, r0, #0
|
|
add r4, r1, #0
|
|
add r6, r2, #0
|
|
cmp r3, #1
|
|
bne _0207DA7E
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
mov r2, #0x2a
|
|
mov r3, #0xf
|
|
bl DrawFrameAndWindow2
|
|
_0207DA7E:
|
|
add r0, r4, #0
|
|
mov r1, #0xf
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
cmp r6, r0
|
|
beq _0207DA9E
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r5, r2]
|
|
add r2, #8
|
|
ldr r2, [r5, r2]
|
|
add r1, r6, #0
|
|
bl ReadMsgDataIntoString
|
|
_0207DA9E:
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r2, _0207DAC0 ; =0x000007C8
|
|
str r3, [sp, #8]
|
|
ldr r2, [r5, r2]
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
bl AddTextPrinterParameterized
|
|
add r0, r4, #0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0xc
|
|
pop {r3, r4, r5, r6, pc}
|
|
nop
|
|
_0207DAC0: .word 0x000007C8
|
|
thumb_func_end sub_0207DA64
|
|
|
|
thumb_func_start sub_0207DAC4
|
|
sub_0207DAC4: ; 0x0207DAC4
|
|
push {r4, lr}
|
|
add r4, r1, #0
|
|
mov r1, #0x81
|
|
lsl r1, r1, #2
|
|
add r3, r2, #0
|
|
add r1, r0, r1
|
|
add r2, r4, #0
|
|
bl sub_0207DA64
|
|
pop {r4, pc}
|
|
thumb_func_end sub_0207DAC4
|
|
|
|
thumb_func_start sub_0207DAD8
|
|
sub_0207DAD8: ; 0x0207DAD8
|
|
push {r4, lr}
|
|
add r4, r1, #0
|
|
mov r1, #0x85
|
|
lsl r1, r1, #2
|
|
add r3, r2, #0
|
|
add r1, r0, r1
|
|
add r2, r4, #0
|
|
bl sub_0207DA64
|
|
pop {r4, pc}
|
|
thumb_func_end sub_0207DAD8
|
|
|
|
thumb_func_start sub_0207DAEC
|
|
sub_0207DAEC: ; 0x0207DAEC
|
|
push {r4, r5, r6, lr}
|
|
mov r6, #0x89
|
|
add r5, r0, #0
|
|
add r4, r1, #0
|
|
lsl r6, r6, #2
|
|
cmp r2, #1
|
|
bne _0207DB06
|
|
add r0, r5, r6
|
|
mov r1, #1
|
|
mov r2, #0x2a
|
|
mov r3, #0xf
|
|
bl DrawFrameAndWindow2
|
|
_0207DB06:
|
|
add r0, r5, r6
|
|
mov r1, #0xf
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
cmp r4, r0
|
|
beq _0207DB26
|
|
mov r2, #0x1f
|
|
lsl r2, r2, #6
|
|
ldr r0, [r5, r2]
|
|
add r2, #8
|
|
ldr r2, [r5, r2]
|
|
add r1, r4, #0
|
|
bl ReadMsgDataIntoString
|
|
_0207DB26:
|
|
add r0, r5, #0
|
|
bl sub_0207DB30
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
thumb_func_end sub_0207DAEC
|
|
|
|
thumb_func_start sub_0207DB30
|
|
sub_0207DB30: ; 0x0207DB30
|
|
push {r3, r4, lr}
|
|
sub sp, #0xc
|
|
add r4, r0, #0
|
|
mov r0, #1
|
|
bl TextFlags_SetCanABSpeedUpPrint
|
|
mov r0, #0
|
|
bl sub_02002B50
|
|
ldr r0, _0207DB70 ; =0x00000654
|
|
ldr r0, [r4, r0]
|
|
ldr r0, [r0, #0xc]
|
|
bl Options_GetTextFrameDelay
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207DB74 ; =sub_0207DB80
|
|
ldr r2, _0207DB78 ; =0x000007C8
|
|
str r0, [sp, #8]
|
|
mov r0, #0x89
|
|
lsl r0, r0, #2
|
|
ldr r2, [r4, r2]
|
|
add r0, r4, r0
|
|
mov r1, #1
|
|
bl AddTextPrinterParameterized
|
|
ldr r1, _0207DB7C ; =0x00000C64
|
|
strb r0, [r4, r1]
|
|
add sp, #0xc
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_0207DB70: .word 0x00000654
|
|
_0207DB74: .word sub_0207DB80
|
|
_0207DB78: .word 0x000007C8
|
|
_0207DB7C: .word 0x00000C64
|
|
thumb_func_end sub_0207DB30
|
|
|
|
thumb_func_start sub_0207DB80
|
|
sub_0207DB80: ; 0x0207DB80
|
|
push {r3, lr}
|
|
cmp r1, #5
|
|
bhi _0207DBC4
|
|
add r0, r1, r1
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_0207DB92: ; jump table
|
|
.short _0207DBC4 - _0207DB92 - 2 ; case 0
|
|
.short _0207DB9E - _0207DB92 - 2 ; case 1
|
|
.short _0207DBA4 - _0207DB92 - 2 ; case 2
|
|
.short _0207DBAA - _0207DB92 - 2 ; case 3
|
|
.short _0207DBB2 - _0207DB92 - 2 ; case 4
|
|
.short _0207DBBC - _0207DB92 - 2 ; case 5
|
|
_0207DB9E:
|
|
bl GF_IsAnySEPlaying
|
|
pop {r3, pc}
|
|
_0207DBA4:
|
|
bl IsFanfarePlaying
|
|
pop {r3, pc}
|
|
_0207DBAA:
|
|
ldr r0, _0207DBC8 ; =0x000005E6
|
|
bl PlaySE
|
|
b _0207DBC4
|
|
_0207DBB2:
|
|
mov r0, #0x4a
|
|
lsl r0, r0, #4
|
|
bl PlayFanfare
|
|
b _0207DBC4
|
|
_0207DBBC:
|
|
ldr r0, _0207DBC8 ; =0x000005E6
|
|
bl IsSEPlaying
|
|
pop {r3, pc}
|
|
_0207DBC4:
|
|
mov r0, #0
|
|
pop {r3, pc}
|
|
.balign 4, 0
|
|
_0207DBC8: .word 0x000005E6
|
|
thumb_func_end sub_0207DB80
|
|
|
|
thumb_func_start sub_0207DBCC
|
|
sub_0207DBCC: ; 0x0207DBCC
|
|
push {r4, r5, lr}
|
|
sub sp, #0x14
|
|
add r4, r0, #0
|
|
mov r0, #0xc
|
|
bl sub_0201660C
|
|
ldr r2, _0207DC1C ; =0x00000C88
|
|
mov r1, #0x26
|
|
str r0, [r4, r2]
|
|
ldr r0, [r4]
|
|
lsl r1, r1, #4
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
str r1, [sp, #8]
|
|
mov r1, #0xb
|
|
str r1, [sp, #0xc]
|
|
str r0, [sp, #4]
|
|
mov r1, #0x19
|
|
add r3, sp, #0
|
|
strb r1, [r3, #0x10]
|
|
mov r1, #0xa
|
|
strb r1, [r3, #0x11]
|
|
ldrb r5, [r3, #0x12]
|
|
mov r1, #0xf
|
|
bic r5, r1
|
|
strb r5, [r3, #0x12]
|
|
ldrb r5, [r3, #0x12]
|
|
mov r1, #0xf0
|
|
bic r5, r1
|
|
strb r5, [r3, #0x12]
|
|
strb r0, [r3, #0x13]
|
|
ldr r0, [r4, r2]
|
|
add r1, sp, #0
|
|
bl sub_020166FC
|
|
bl sub_0207CB7C
|
|
add sp, #0x14
|
|
pop {r4, r5, pc}
|
|
nop
|
|
_0207DC1C: .word 0x00000C88
|
|
thumb_func_end sub_0207DBCC
|
|
|
|
thumb_func_start sub_0207DC20
|
|
sub_0207DC20: ; 0x0207DC20
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x14
|
|
add r5, r0, #0
|
|
lsl r0, r1, #2
|
|
add r0, r1, r0
|
|
add r0, r0, #4
|
|
add r4, r5, #4
|
|
lsl r6, r0, #4
|
|
add r0, r4, r6
|
|
mov r1, #0
|
|
add r7, r2, #0
|
|
bl FillWindowPixelBuffer
|
|
cmp r7, #0
|
|
beq _0207DC44
|
|
cmp r7, #1
|
|
beq _0207DC54
|
|
b _0207DC62
|
|
_0207DC44:
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xa1
|
|
bl NewString_ReadMsgData
|
|
str r0, [sp, #0x10]
|
|
b _0207DC62
|
|
_0207DC54:
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xa2
|
|
bl NewString_ReadMsgData
|
|
str r0, [sp, #0x10]
|
|
_0207DC62:
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207DC8C ; =0x000F0E00
|
|
ldr r2, [sp, #0x10]
|
|
str r0, [sp, #8]
|
|
add r0, r4, r6
|
|
add r3, r1, #0
|
|
str r1, [sp, #0xc]
|
|
bl AddTextPrinterParameterized2
|
|
ldr r0, [sp, #0x10]
|
|
bl String_Delete
|
|
add r0, r4, r6
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x14
|
|
pop {r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207DC8C: .word 0x000F0E00
|
|
thumb_func_end sub_0207DC20
|
|
|
|
thumb_func_start sub_0207DC90
|
|
sub_0207DC90: ; 0x0207DC90
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x14
|
|
add r5, r0, #0
|
|
lsl r0, r1, #2
|
|
add r0, r1, r0
|
|
add r0, r0, #4
|
|
add r4, r5, #4
|
|
lsl r7, r0, #4
|
|
add r0, r4, r7
|
|
mov r1, #0
|
|
add r6, r2, #0
|
|
bl FillWindowPixelBuffer
|
|
cmp r6, #0
|
|
beq _0207DCB8
|
|
cmp r6, #1
|
|
beq _0207DCC8
|
|
cmp r6, #2
|
|
beq _0207DCD8
|
|
b _0207DCE6
|
|
_0207DCB8:
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0x9e
|
|
bl NewString_ReadMsgData
|
|
str r0, [sp, #0x10]
|
|
b _0207DCE6
|
|
_0207DCC8:
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0x9f
|
|
bl NewString_ReadMsgData
|
|
str r0, [sp, #0x10]
|
|
b _0207DCE6
|
|
_0207DCD8:
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xa0
|
|
bl NewString_ReadMsgData
|
|
str r0, [sp, #0x10]
|
|
_0207DCE6:
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207DD10 ; =0x000F0E00
|
|
ldr r2, [sp, #0x10]
|
|
str r0, [sp, #8]
|
|
add r0, r4, r7
|
|
add r3, r1, #0
|
|
str r1, [sp, #0xc]
|
|
bl AddTextPrinterParameterized2
|
|
ldr r0, [sp, #0x10]
|
|
bl String_Delete
|
|
add r0, r4, r7
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x14
|
|
pop {r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207DD10: .word 0x000F0E00
|
|
thumb_func_end sub_0207DC90
|
|
|
|
thumb_func_start sub_0207DD14
|
|
sub_0207DD14: ; 0x0207DD14
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x10
|
|
add r5, r0, #0
|
|
lsl r0, r1, #2
|
|
add r0, r1, r0
|
|
add r0, r0, #4
|
|
add r4, r5, #4
|
|
lsl r6, r0, #4
|
|
add r0, r4, r6
|
|
mov r1, #0
|
|
add r7, r2, #0
|
|
bl FillWindowPixelBuffer
|
|
cmp r7, #0
|
|
bne _0207DD40
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xa4
|
|
bl NewString_ReadMsgData
|
|
b _0207DD4C
|
|
_0207DD40:
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xa3
|
|
bl NewString_ReadMsgData
|
|
_0207DD4C:
|
|
mov r1, #0
|
|
add r5, r0, #0
|
|
str r1, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207DD78 ; =0x000F0E00
|
|
add r2, r5, #0
|
|
str r0, [sp, #8]
|
|
add r0, r4, r6
|
|
add r3, r1, #0
|
|
str r1, [sp, #0xc]
|
|
bl AddTextPrinterParameterized2
|
|
add r0, r5, #0
|
|
bl String_Delete
|
|
add r0, r4, r6
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x10
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207DD78: .word 0x000F0E00
|
|
thumb_func_end sub_0207DD14
|
|
|
|
thumb_func_start sub_0207DD7C
|
|
sub_0207DD7C: ; 0x0207DD7C
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x10
|
|
add r5, r0, #0
|
|
lsl r0, r1, #2
|
|
add r0, r1, r0
|
|
add r0, r0, #4
|
|
add r4, r5, #4
|
|
lsl r7, r0, #4
|
|
add r0, r4, r7
|
|
mov r1, #0
|
|
add r6, r2, #0
|
|
bl FillWindowPixelBuffer
|
|
cmp r6, #6
|
|
bhs _0207DDAC
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
add r6, #0x98
|
|
ldr r0, [r5, r0]
|
|
add r1, r6, #0
|
|
bl NewString_ReadMsgData
|
|
add r5, r0, #0
|
|
b _0207DDCE
|
|
_0207DDAC:
|
|
cmp r6, #7
|
|
bne _0207DDC0
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0x96
|
|
bl NewString_ReadMsgData
|
|
add r5, r0, #0
|
|
b _0207DDCE
|
|
_0207DDC0:
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0x97
|
|
bl NewString_ReadMsgData
|
|
add r5, r0, #0
|
|
_0207DDCE:
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207DDF8 ; =0x000F0E00
|
|
add r2, r5, #0
|
|
str r0, [sp, #8]
|
|
add r0, r4, r7
|
|
add r3, r1, #0
|
|
str r1, [sp, #0xc]
|
|
bl AddTextPrinterParameterized2
|
|
add r0, r5, #0
|
|
bl String_Delete
|
|
add r0, r4, r7
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x10
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207DDF8: .word 0x000F0E00
|
|
thumb_func_end sub_0207DD7C
|
|
|
|
thumb_func_start sub_0207DDFC
|
|
sub_0207DDFC: ; 0x0207DDFC
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x30
|
|
add r5, r0, #0
|
|
ldr r0, _0207DF84 ; =0x00000654
|
|
ldr r1, _0207DF88 ; =0x00000C65
|
|
ldr r0, [r5, r0]
|
|
ldrb r1, [r5, r1]
|
|
ldr r0, [r0]
|
|
bl GetPartyMonByIndex
|
|
mov r1, #0xa4
|
|
mov r2, #0
|
|
add r4, r0, #0
|
|
bl GetMonData
|
|
add r1, sp, #0x24
|
|
strh r0, [r1]
|
|
add r0, r4, #0
|
|
mov r1, #0xa5
|
|
mov r2, #0
|
|
bl GetMonData
|
|
add r1, sp, #0x24
|
|
strh r0, [r1, #2]
|
|
add r0, r4, #0
|
|
mov r1, #0xa6
|
|
mov r2, #0
|
|
bl GetMonData
|
|
add r1, sp, #0x24
|
|
strh r0, [r1, #4]
|
|
add r0, r4, #0
|
|
mov r1, #0xa8
|
|
mov r2, #0
|
|
bl GetMonData
|
|
add r1, sp, #0x24
|
|
strh r0, [r1, #6]
|
|
add r0, r4, #0
|
|
mov r1, #0xa9
|
|
mov r2, #0
|
|
bl GetMonData
|
|
add r1, sp, #0x24
|
|
strh r0, [r1, #8]
|
|
add r0, r4, #0
|
|
mov r1, #0xa7
|
|
mov r2, #0
|
|
bl GetMonData
|
|
add r1, sp, #0x24
|
|
strh r0, [r1, #0xa]
|
|
mov r3, #1
|
|
mov r1, #0x26
|
|
str r3, [sp]
|
|
mov r0, #0xe
|
|
str r0, [sp, #4]
|
|
mov r0, #0xc
|
|
str r0, [sp, #8]
|
|
mov r2, #0
|
|
str r2, [sp, #0xc]
|
|
lsl r1, r1, #4
|
|
str r1, [sp, #0x10]
|
|
add r1, #0x24
|
|
ldr r0, [r5]
|
|
add r1, r5, r1
|
|
bl AddWindowParameterized
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
mov r1, #1
|
|
add r0, r5, r0
|
|
add r2, r1, #0
|
|
mov r3, #0xe
|
|
bl DrawFrameAndWindow1
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
mov r1, #0xf
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xaf
|
|
bl NewString_ReadMsgData
|
|
mov r4, #0
|
|
str r0, [sp, #0x18]
|
|
str r4, [sp, #0x14]
|
|
add r7, r5, #0
|
|
add r6, sp, #0x24
|
|
_0207DEB6:
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r1, [sp, #0x14]
|
|
ldr r0, [r5, r0]
|
|
add r1, #0xa9
|
|
bl NewString_ReadMsgData
|
|
str r0, [sp, #0x1c]
|
|
mov r1, #0
|
|
str r4, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
mov r0, #0
|
|
str r0, [sp, #8]
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
ldr r2, [sp, #0x1c]
|
|
add r0, r5, r0
|
|
add r3, r1, #0
|
|
bl AddTextPrinterParameterized
|
|
ldr r0, [sp, #0x1c]
|
|
bl String_Delete
|
|
str r4, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
mov r0, #0
|
|
str r0, [sp, #8]
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
ldr r2, [sp, #0x18]
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
mov r3, #0x50
|
|
bl AddTextPrinterParameterized
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xb0
|
|
bl NewString_ReadMsgData
|
|
str r0, [sp, #0x20]
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
ldr r2, _0207DF8C ; =0x00000C68
|
|
ldr r0, _0207DF90 ; =0x000007C4
|
|
ldrh r3, [r6]
|
|
ldrh r2, [r7, r2]
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0
|
|
sub r2, r3, r2
|
|
mov r3, #2
|
|
bl BufferIntegerAsString
|
|
ldr r0, _0207DF90 ; =0x000007C4
|
|
ldr r1, _0207DF94 ; =0x000007C8
|
|
ldr r0, [r5, r0]
|
|
ldr r1, [r5, r1]
|
|
ldr r2, [sp, #0x20]
|
|
bl StringExpandPlaceholders
|
|
ldr r0, [sp, #0x20]
|
|
bl String_Delete
|
|
str r4, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
mov r0, #0
|
|
str r0, [sp, #8]
|
|
ldr r2, _0207DF94 ; =0x000007C8
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
ldr r2, [r5, r2]
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
mov r3, #0x5e
|
|
bl AddTextPrinterParameterized
|
|
ldrh r1, [r6]
|
|
ldr r0, _0207DF8C ; =0x00000C68
|
|
add r4, #0x10
|
|
strh r1, [r7, r0]
|
|
ldr r0, [sp, #0x14]
|
|
add r7, r7, #2
|
|
add r0, r0, #1
|
|
add r6, r6, #2
|
|
str r0, [sp, #0x14]
|
|
cmp r0, #6
|
|
blo _0207DEB6
|
|
ldr r0, [sp, #0x18]
|
|
bl String_Delete
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x30
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207DF84: .word 0x00000654
|
|
_0207DF88: .word 0x00000C65
|
|
_0207DF8C: .word 0x00000C68
|
|
_0207DF90: .word 0x000007C4
|
|
_0207DF94: .word 0x000007C8
|
|
thumb_func_end sub_0207DDFC
|
|
|
|
thumb_func_start sub_0207DF98
|
|
sub_0207DF98: ; 0x0207DF98
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x14
|
|
add r5, r0, #0
|
|
mov r0, #0x20
|
|
str r0, [sp]
|
|
mov r0, #0x70
|
|
str r0, [sp, #4]
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
mov r1, #0xf
|
|
mov r2, #0x50
|
|
mov r3, #0
|
|
bl FillWindowPixelRect
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xb0
|
|
bl NewString_ReadMsgData
|
|
str r0, [sp, #0xc]
|
|
mov r0, #0
|
|
str r0, [sp, #0x10]
|
|
add r6, r5, #0
|
|
add r4, r0, #0
|
|
_0207DFCC:
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
ldr r2, _0207E040 ; =0x00000C68
|
|
ldr r0, _0207E044 ; =0x000007C4
|
|
ldrh r2, [r6, r2]
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0
|
|
mov r3, #3
|
|
bl BufferIntegerAsString
|
|
ldr r0, _0207E044 ; =0x000007C4
|
|
ldr r1, _0207E048 ; =0x000007C8
|
|
ldr r0, [r5, r0]
|
|
ldr r1, [r5, r1]
|
|
ldr r2, [sp, #0xc]
|
|
bl StringExpandPlaceholders
|
|
ldr r1, _0207E048 ; =0x000007C8
|
|
mov r0, #0
|
|
ldr r1, [r5, r1]
|
|
add r2, r0, #0
|
|
bl FontID_String_GetWidth
|
|
add r7, r0, #0
|
|
mov r3, #0x68
|
|
str r4, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
mov r0, #0
|
|
str r0, [sp, #8]
|
|
ldr r2, _0207E048 ; =0x000007C8
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
ldr r2, [r5, r2]
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
sub r3, r3, r7
|
|
bl AddTextPrinterParameterized
|
|
ldr r0, [sp, #0x10]
|
|
add r6, r6, #2
|
|
add r0, r0, #1
|
|
add r4, #0x10
|
|
str r0, [sp, #0x10]
|
|
cmp r0, #6
|
|
blo _0207DFCC
|
|
ldr r0, [sp, #0xc]
|
|
bl String_Delete
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x14
|
|
pop {r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207E040: .word 0x00000C68
|
|
_0207E044: .word 0x000007C4
|
|
_0207E048: .word 0x000007C8
|
|
thumb_func_end sub_0207DF98
|
|
|
|
thumb_func_start sub_0207E04C
|
|
sub_0207E04C: ; 0x0207E04C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
mov r1, #0
|
|
bl sub_0200E5D4
|
|
mov r0, #0xa1
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
bl RemoveWindow
|
|
pop {r4, pc}
|
|
thumb_func_end sub_0207E04C
|
|
|
|
thumb_func_start sub_0207E068
|
|
sub_0207E068: ; 0x0207E068
|
|
push {r4, r5, r6, lr}
|
|
sub sp, #0x10
|
|
add r5, r0, #0
|
|
mov r0, #0x95
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #0x9d
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
ldr r0, _0207E168 ; =0x00000654
|
|
ldr r1, _0207E16C ; =0x00000C65
|
|
ldr r0, [r5, r0]
|
|
ldrb r1, [r5, r1]
|
|
ldr r0, [r0]
|
|
bl GetPartyMonByIndex
|
|
add r6, r0, #0
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #8
|
|
bl NewString_ReadMsgData
|
|
add r4, r0, #0
|
|
add r0, r6, #0
|
|
bl Mon_GetBoxMon
|
|
add r2, r0, #0
|
|
ldr r0, _0207E170 ; =0x000007C4
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl BufferBoxMonNickname
|
|
ldr r1, _0207E170 ; =0x000007C4
|
|
add r2, r4, #0
|
|
ldr r0, [r5, r1]
|
|
add r1, r1, #4
|
|
ldr r1, [r5, r1]
|
|
bl StringExpandPlaceholders
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207E174 ; =0x000F0E00
|
|
ldr r2, _0207E178 ; =0x000007C8
|
|
str r0, [sp, #8]
|
|
str r1, [sp, #0xc]
|
|
mov r0, #0x95
|
|
lsl r0, r0, #2
|
|
ldr r2, [r5, r2]
|
|
add r0, r5, r0
|
|
add r3, r1, #0
|
|
bl AddTextPrinterParameterized2
|
|
add r0, r4, #0
|
|
bl String_Delete
|
|
ldr r0, _0207E168 ; =0x00000654
|
|
ldr r1, _0207E16C ; =0x00000C65
|
|
ldr r0, [r5, r0]
|
|
ldrb r1, [r5, r1]
|
|
ldr r0, [r0]
|
|
bl GetPartyMonByIndex
|
|
add r6, r0, #0
|
|
mov r0, #0x1f
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0xb6
|
|
bl NewString_ReadMsgData
|
|
add r4, r0, #0
|
|
add r0, r6, #0
|
|
mov r1, #6
|
|
mov r2, #0
|
|
bl GetMonData
|
|
add r2, r0, #0
|
|
ldr r0, _0207E170 ; =0x000007C4
|
|
mov r1, #1
|
|
ldr r0, [r5, r0]
|
|
bl BufferItemName
|
|
ldr r1, _0207E170 ; =0x000007C4
|
|
add r2, r4, #0
|
|
ldr r0, [r5, r1]
|
|
add r1, r1, #4
|
|
ldr r1, [r5, r1]
|
|
bl StringExpandPlaceholders
|
|
mov r0, #4
|
|
str r0, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, _0207E174 ; =0x000F0E00
|
|
mov r1, #0
|
|
str r0, [sp, #8]
|
|
mov r0, #0x9d
|
|
lsl r0, r0, #2
|
|
ldr r2, _0207E178 ; =0x000007C8
|
|
str r1, [sp, #0xc]
|
|
ldr r2, [r5, r2]
|
|
add r0, r5, r0
|
|
mov r3, #2
|
|
bl AddTextPrinterParameterized2
|
|
add r0, r4, #0
|
|
bl String_Delete
|
|
mov r0, #0x95
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
bl ScheduleWindowCopyToVram
|
|
mov r0, #0x9d
|
|
lsl r0, r0, #2
|
|
add r0, r5, r0
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x10
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_0207E168: .word 0x00000654
|
|
_0207E16C: .word 0x00000C65
|
|
_0207E170: .word 0x000007C4
|
|
_0207E174: .word 0x000F0E00
|
|
_0207E178: .word 0x000007C8
|
|
thumb_func_end sub_0207E068
|
|
|
|
thumb_func_start sub_0207E17C
|
|
sub_0207E17C: ; 0x0207E17C
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r7, r1, #0
|
|
add r4, r2, #0
|
|
str r0, [sp]
|
|
cmp r7, #8
|
|
ble _0207E18C
|
|
bl GF_AssertFail
|
|
_0207E18C:
|
|
mov r6, #0
|
|
cmp r7, #0
|
|
ble _0207E1D2
|
|
sub r0, r7, #1
|
|
ldr r1, _0207E1D4 ; =_021016B4
|
|
lsl r0, r0, #4
|
|
add r1, r1, r0
|
|
lsl r0, r4, #3
|
|
add r5, r1, r0
|
|
mov r1, #0xa5
|
|
ldr r0, [sp]
|
|
lsl r1, r1, #2
|
|
add r4, r0, r1
|
|
_0207E1A6:
|
|
mov r0, #0
|
|
ldrsb r2, [r5, r0]
|
|
ldr r0, [sp]
|
|
lsl r1, r2, #4
|
|
lsl r3, r2, #3
|
|
ldr r2, _0207E1D8 ; =_02101654
|
|
ldr r0, [r0]
|
|
add r1, r4, r1
|
|
add r2, r2, r3
|
|
bl AddWindow
|
|
mov r0, #0
|
|
ldrsb r0, [r5, r0]
|
|
mov r1, #4
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
bl FillWindowPixelBuffer
|
|
add r6, r6, #1
|
|
add r5, r5, #1
|
|
cmp r6, r7
|
|
blt _0207E1A6
|
|
_0207E1D2:
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207E1D4: .word _021016B4
|
|
_0207E1D8: .word _02101654
|
|
thumb_func_end sub_0207E17C
|
|
|
|
thumb_func_start sub_0207E1DC
|
|
sub_0207E1DC: ; 0x0207E1DC
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x14
|
|
add r6, r1, #0
|
|
add r5, r2, #0
|
|
str r0, [sp, #0x10]
|
|
cmp r6, #8
|
|
ble _0207E1EE
|
|
bl GF_AssertFail
|
|
_0207E1EE:
|
|
mov r4, #0
|
|
cmp r6, #0
|
|
ble _0207E21C
|
|
sub r0, r6, #1
|
|
ldr r1, _0207E260 ; =_021016B4
|
|
lsl r0, r0, #4
|
|
add r1, r1, r0
|
|
lsl r0, r5, #3
|
|
add r5, r1, r0
|
|
mov r1, #0xa5
|
|
ldr r0, [sp, #0x10]
|
|
lsl r1, r1, #2
|
|
add r7, r0, r1
|
|
_0207E208:
|
|
mov r0, #0
|
|
ldrsb r0, [r5, r0]
|
|
lsl r0, r0, #4
|
|
add r0, r7, r0
|
|
bl RemoveWindow
|
|
add r4, r4, #1
|
|
add r5, r5, #1
|
|
cmp r4, r6
|
|
blt _0207E208
|
|
_0207E21C:
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0x20
|
|
str r0, [sp, #4]
|
|
mov r0, #0x12
|
|
str r0, [sp, #8]
|
|
ldr r0, [sp, #0x10]
|
|
str r1, [sp, #0xc]
|
|
ldr r0, [r0]
|
|
add r2, r1, #0
|
|
add r3, r1, #0
|
|
bl FillBgTilemapRect
|
|
mov r0, #0x13
|
|
str r0, [sp]
|
|
mov r0, #7
|
|
str r0, [sp, #4]
|
|
mov r0, #5
|
|
str r0, [sp, #8]
|
|
mov r1, #0
|
|
ldr r0, [sp, #0x10]
|
|
str r1, [sp, #0xc]
|
|
ldr r0, [r0]
|
|
add r2, r1, #0
|
|
mov r3, #0x19
|
|
bl FillBgTilemapRect
|
|
ldr r0, [sp, #0x10]
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
bl BgCommitTilemapBufferToVram
|
|
add sp, #0x14
|
|
pop {r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207E260: .word _021016B4
|
|
thumb_func_end sub_0207E1DC
|
|
|
|
thumb_func_start sub_0207E264
|
|
sub_0207E264: ; 0x0207E264
|
|
cmp r0, #4
|
|
bge _0207E26C
|
|
ldr r0, _0207E270 ; =0x000E0F0B
|
|
bx lr
|
|
_0207E26C:
|
|
ldr r0, _0207E274 ; =0x00090A0B
|
|
bx lr
|
|
.balign 4, 0
|
|
_0207E270: .word 0x000E0F0B
|
|
_0207E274: .word 0x00090A0B
|
|
thumb_func_end sub_0207E264
|
|
|
|
thumb_func_start sub_0207E278
|
|
sub_0207E278: ; 0x0207E278
|
|
cmp r0, #4
|
|
bge _0207E280
|
|
ldr r0, _0207E284 ; =0x000E0F04
|
|
bx lr
|
|
_0207E280:
|
|
ldr r0, _0207E288 ; =0x00090A04
|
|
bx lr
|
|
.balign 4, 0
|
|
_0207E284: .word 0x000E0F04
|
|
_0207E288: .word 0x00090A04
|
|
thumb_func_end sub_0207E278
|
|
|
|
thumb_func_start sub_0207E28C
|
|
sub_0207E28C: ; 0x0207E28C
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x20
|
|
add r4, r0, #0
|
|
mov r0, #0
|
|
str r0, [sp, #0x14]
|
|
sub r0, r2, #1
|
|
add r5, r3, #0
|
|
lsl r3, r0, #4
|
|
ldr r2, _0207E34C ; =_021016B4
|
|
ldr r0, [sp, #0x38]
|
|
str r1, [sp, #0x10]
|
|
lsl r1, r0, #3
|
|
add r0, r2, r3
|
|
add r0, r1, r0
|
|
ldrb r7, [r5, r0]
|
|
cmp r7, #7
|
|
bne _0207E2EC
|
|
ldr r0, [sp, #0x3c]
|
|
cmp r0, #0
|
|
bne _0207E2BC
|
|
ldr r0, _0207E350 ; =0x000E0F04
|
|
mov r6, #4
|
|
str r0, [sp, #0x1c]
|
|
b _0207E2C2
|
|
_0207E2BC:
|
|
ldr r0, _0207E354 ; =0x000E0F0B
|
|
mov r6, #0xb
|
|
str r0, [sp, #0x1c]
|
|
_0207E2C2:
|
|
mov r0, #4
|
|
str r0, [sp, #0x18]
|
|
mov r0, #0xa5
|
|
lsl r0, r0, #2
|
|
add r1, r4, r0
|
|
lsl r0, r7, #4
|
|
add r0, r1, r0
|
|
bl GetWindowWidth
|
|
add r3, r0, #0
|
|
ldr r1, [sp, #0x10]
|
|
mov r0, #4
|
|
ldr r2, [r1]
|
|
lsl r1, r5, #3
|
|
ldr r1, [r2, r1]
|
|
mov r2, #0
|
|
lsl r3, r3, #3
|
|
bl FontID_String_GetCenterAlignmentX
|
|
str r0, [sp, #0x14]
|
|
b _0207E30C
|
|
_0207E2EC:
|
|
ldr r0, [sp, #0x3c]
|
|
cmp r0, #0
|
|
bne _0207E2FE
|
|
add r0, r5, #0
|
|
mov r6, #4
|
|
bl sub_0207E278
|
|
str r0, [sp, #0x1c]
|
|
b _0207E308
|
|
_0207E2FE:
|
|
add r0, r5, #0
|
|
mov r6, #0xb
|
|
bl sub_0207E264
|
|
str r0, [sp, #0x1c]
|
|
_0207E308:
|
|
mov r0, #0
|
|
str r0, [sp, #0x18]
|
|
_0207E30C:
|
|
mov r0, #0xa5
|
|
lsl r0, r0, #2
|
|
lsl r1, r6, #0x18
|
|
add r4, r4, r0
|
|
lsl r7, r7, #4
|
|
add r0, r4, r7
|
|
lsr r1, r1, #0x18
|
|
bl FillWindowPixelBuffer
|
|
ldr r0, [sp, #0x18]
|
|
ldr r2, [sp, #0x10]
|
|
str r0, [sp]
|
|
mov r0, #0xff
|
|
str r0, [sp, #4]
|
|
ldr r0, [sp, #0x1c]
|
|
mov r1, #4
|
|
str r0, [sp, #8]
|
|
mov r0, #0
|
|
str r0, [sp, #0xc]
|
|
ldr r3, [r2]
|
|
lsl r2, r5, #3
|
|
ldr r2, [r3, r2]
|
|
ldr r3, [sp, #0x14]
|
|
add r0, r4, r7
|
|
bl AddTextPrinterParameterized2
|
|
add r0, r4, r7
|
|
bl ScheduleWindowCopyToVram
|
|
add sp, #0x20
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207E34C: .word _021016B4
|
|
_0207E350: .word 0x000E0F04
|
|
_0207E354: .word 0x000E0F0B
|
|
thumb_func_end sub_0207E28C
|
|
|
|
thumb_func_start sub_0207E358
|
|
sub_0207E358: ; 0x0207E358
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x10
|
|
add r5, r2, #0
|
|
add r7, r0, #0
|
|
str r1, [sp, #8]
|
|
str r3, [sp, #0xc]
|
|
ldr r6, [sp, #0x28]
|
|
cmp r5, #8
|
|
ble _0207E36E
|
|
bl GF_AssertFail
|
|
_0207E36E:
|
|
mov r4, #0
|
|
cmp r5, #0
|
|
ble _0207E3A4
|
|
_0207E374:
|
|
ldr r0, [sp, #0xc]
|
|
cmp r0, r4
|
|
str r6, [sp]
|
|
bne _0207E38E
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
ldr r1, [sp, #8]
|
|
add r0, r7, #0
|
|
add r2, r5, #0
|
|
add r3, r4, #0
|
|
bl sub_0207E28C
|
|
b _0207E39E
|
|
_0207E38E:
|
|
mov r0, #0
|
|
str r0, [sp, #4]
|
|
ldr r1, [sp, #8]
|
|
add r0, r7, #0
|
|
add r2, r5, #0
|
|
add r3, r4, #0
|
|
bl sub_0207E28C
|
|
_0207E39E:
|
|
add r4, r4, #1
|
|
cmp r4, r5
|
|
blt _0207E374
|
|
_0207E3A4:
|
|
add sp, #0x10
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
thumb_func_end sub_0207E358
|
|
|
|
thumb_func_start sub_0207E3A8
|
|
sub_0207E3A8: ; 0x0207E3A8
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x20
|
|
sub r1, r1, #1
|
|
lsl r4, r1, #4
|
|
ldr r1, _0207E538 ; =_021016B4
|
|
lsl r3, r3, #3
|
|
add r1, r1, r4
|
|
add r1, r3, r1
|
|
ldrsb r1, [r2, r1]
|
|
add r5, r0, #0
|
|
ldr r0, _0207E53C ; =_021015EC
|
|
lsl r1, r1, #2
|
|
add r4, r0, r1
|
|
ldr r0, [sp, #0x38]
|
|
cmp r0, #0
|
|
bne _0207E3CE
|
|
mov r2, #2
|
|
lsl r2, r2, #0xc
|
|
b _0207E3D8
|
|
_0207E3CE:
|
|
cmp r0, #1
|
|
bne _0207E3D6
|
|
ldr r2, _0207E540 ; =0x00002009
|
|
b _0207E3D8
|
|
_0207E3D6:
|
|
ldr r2, _0207E544 ; =0x00002012
|
|
_0207E3D8:
|
|
ldr r6, _0207E548 ; =_021015AC
|
|
mov r1, #0
|
|
add r2, #0xa
|
|
add r7, sp, #0x10
|
|
_0207E3E0:
|
|
lsl r0, r1, #1
|
|
ldrh r3, [r6, r0]
|
|
add r3, r2, r3
|
|
strh r3, [r7, r0]
|
|
add r0, r1, #1
|
|
lsl r0, r0, #0x10
|
|
lsr r1, r0, #0x10
|
|
cmp r1, #8
|
|
blo _0207E3E0
|
|
ldrb r0, [r4, #1]
|
|
mov r1, #0
|
|
add r2, r7, #0
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
ldrb r3, [r4]
|
|
ldr r0, [r5]
|
|
bl LoadRectToBgTilemapRect
|
|
ldrb r0, [r4, #1]
|
|
add r2, sp, #0x10
|
|
mov r1, #0
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
ldrb r6, [r4]
|
|
ldrb r3, [r4, #2]
|
|
ldr r0, [r5]
|
|
add r2, #2
|
|
add r3, r6, r3
|
|
sub r3, r3, #1
|
|
lsl r3, r3, #0x18
|
|
lsr r3, r3, #0x18
|
|
bl LoadRectToBgTilemapRect
|
|
ldrb r1, [r4, #1]
|
|
ldrb r0, [r4, #3]
|
|
add r2, sp, #0x14
|
|
add r0, r1, r0
|
|
sub r0, r0, #1
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
ldrb r3, [r4]
|
|
ldr r0, [r5]
|
|
mov r1, #0
|
|
bl LoadRectToBgTilemapRect
|
|
add r2, sp, #0x14
|
|
ldrb r1, [r4, #1]
|
|
ldrb r0, [r4, #3]
|
|
add r2, #2
|
|
add r0, r1, r0
|
|
sub r0, r0, #1
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
ldrb r6, [r4]
|
|
ldrb r3, [r4, #2]
|
|
ldr r0, [r5]
|
|
mov r1, #0
|
|
add r3, r6, r3
|
|
sub r3, r3, #1
|
|
lsl r3, r3, #0x18
|
|
lsr r3, r3, #0x18
|
|
bl LoadRectToBgTilemapRect
|
|
ldrb r0, [r4, #1]
|
|
add r2, sp, #0x10
|
|
mov r1, #0
|
|
add r0, r0, #1
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
ldrb r0, [r4, #3]
|
|
sub r0, r0, #2
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp, #8]
|
|
mov r0, #0x11
|
|
str r0, [sp, #0xc]
|
|
ldrh r2, [r2, #8]
|
|
ldrb r3, [r4]
|
|
ldr r0, [r5]
|
|
bl FillBgTilemapRect
|
|
ldrb r0, [r4, #1]
|
|
add r2, sp, #0x10
|
|
mov r1, #0
|
|
add r0, r0, #1
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
ldrb r0, [r4, #3]
|
|
sub r0, r0, #2
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp, #8]
|
|
mov r0, #0x11
|
|
str r0, [sp, #0xc]
|
|
ldrb r6, [r4]
|
|
ldrb r3, [r4, #2]
|
|
ldrh r2, [r2, #0xa]
|
|
ldr r0, [r5]
|
|
add r3, r6, r3
|
|
sub r3, r3, #1
|
|
lsl r3, r3, #0x18
|
|
lsr r3, r3, #0x18
|
|
bl FillBgTilemapRect
|
|
ldrb r0, [r4, #1]
|
|
add r2, sp, #0x10
|
|
mov r1, #0
|
|
str r0, [sp]
|
|
ldrb r0, [r4, #2]
|
|
sub r0, r0, #2
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp, #4]
|
|
mov r0, #1
|
|
str r0, [sp, #8]
|
|
mov r0, #0x11
|
|
str r0, [sp, #0xc]
|
|
ldrb r3, [r4]
|
|
ldrh r2, [r2, #0xc]
|
|
ldr r0, [r5]
|
|
add r3, r3, #1
|
|
lsl r3, r3, #0x18
|
|
lsr r3, r3, #0x18
|
|
bl FillBgTilemapRect
|
|
ldrb r1, [r4, #1]
|
|
ldrb r0, [r4, #3]
|
|
add r2, sp, #0x10
|
|
add r0, r1, r0
|
|
sub r0, r0, #1
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp]
|
|
ldrb r0, [r4, #2]
|
|
mov r1, #0
|
|
sub r0, r0, #2
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp, #4]
|
|
mov r0, #1
|
|
str r0, [sp, #8]
|
|
mov r0, #0x11
|
|
str r0, [sp, #0xc]
|
|
ldrb r3, [r4]
|
|
ldrh r2, [r2, #0xe]
|
|
ldr r0, [r5]
|
|
add r3, r3, #1
|
|
lsl r3, r3, #0x18
|
|
lsr r3, r3, #0x18
|
|
bl FillBgTilemapRect
|
|
add sp, #0x20
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207E538: .word _021016B4
|
|
_0207E53C: .word _021015EC
|
|
_0207E540: .word 0x00002009
|
|
_0207E544: .word 0x00002012
|
|
_0207E548: .word _021015AC
|
|
thumb_func_end sub_0207E3A8
|
|
|
|
thumb_func_start sub_0207E54C
|
|
sub_0207E54C: ; 0x0207E54C
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #8
|
|
add r5, r1, #0
|
|
add r6, r0, #0
|
|
str r2, [sp, #4]
|
|
add r7, r3, #0
|
|
mov r4, #0
|
|
cmp r5, #0
|
|
ble _0207E58C
|
|
_0207E55E:
|
|
ldr r0, [sp, #4]
|
|
cmp r0, r4
|
|
bne _0207E576
|
|
mov r0, #1
|
|
str r0, [sp]
|
|
add r0, r6, #0
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
add r3, r7, #0
|
|
bl sub_0207E3A8
|
|
b _0207E586
|
|
_0207E576:
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
add r0, r6, #0
|
|
add r1, r5, #0
|
|
add r2, r4, #0
|
|
add r3, r7, #0
|
|
bl sub_0207E3A8
|
|
_0207E586:
|
|
add r4, r4, #1
|
|
cmp r4, r5
|
|
blt _0207E55E
|
|
_0207E58C:
|
|
add sp, #8
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
thumb_func_end sub_0207E54C
|
|
|
|
thumb_func_start sub_0207E590
|
|
sub_0207E590: ; 0x0207E590
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r5, r0, #0
|
|
add r6, r1, #0
|
|
add r0, r3, #0
|
|
mov r1, #0x10
|
|
add r7, r2, #0
|
|
bl AllocFromHeap
|
|
add r4, r0, #0
|
|
ldmia r6!, {r0, r1}
|
|
add r2, r4, #4
|
|
stmia r2!, {r0, r1}
|
|
ldr r0, [r6]
|
|
str r0, [r2]
|
|
ldrb r0, [r4, #0xe]
|
|
strb r0, [r4, #2]
|
|
lsl r0, r7, #0x18
|
|
lsr r0, r0, #0x18
|
|
strb r0, [r4]
|
|
strb r0, [r4, #1]
|
|
ldr r0, [sp, #0x18]
|
|
strb r0, [r4, #3]
|
|
ldrb r1, [r4, #0xe]
|
|
ldrb r2, [r4, #3]
|
|
add r0, r5, #0
|
|
bl sub_0207E17C
|
|
ldrb r0, [r4, #3]
|
|
add r1, r4, #4
|
|
str r0, [sp]
|
|
ldrb r2, [r4, #0xe]
|
|
ldrb r3, [r4]
|
|
add r0, r5, #0
|
|
bl sub_0207E358
|
|
bl sub_0207CB7C
|
|
ldr r0, _0207E610 ; =0x00000684
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0207E614 ; =0x00000654
|
|
ldr r0, [r5, r0]
|
|
add r0, #0x24
|
|
ldrb r0, [r0]
|
|
cmp r0, #2
|
|
beq _0207E5FE
|
|
cmp r0, #0x11
|
|
beq _0207E5FE
|
|
add r0, #0xea
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
cmp r0, #1
|
|
bhi _0207E60A
|
|
_0207E5FE:
|
|
mov r0, #0x1a
|
|
lsl r0, r0, #6
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0
|
|
bl Set2dSpriteVisibleFlag
|
|
_0207E60A:
|
|
add r0, r4, #0
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207E610: .word 0x00000684
|
|
_0207E614: .word 0x00000654
|
|
thumb_func_end sub_0207E590
|
|
|
|
thumb_func_start sub_0207E618
|
|
sub_0207E618: ; 0x0207E618
|
|
push {r3, r4, r5, lr}
|
|
add r5, r1, #0
|
|
ldrb r1, [r5, #2]
|
|
ldrb r2, [r5, #3]
|
|
add r4, r0, #0
|
|
bl sub_0207E1DC
|
|
add r0, r5, #0
|
|
bl FreeToHeap
|
|
ldr r0, _0207E67C ; =0x00000654
|
|
ldr r1, [r4, r0]
|
|
add r1, #0x24
|
|
ldrb r1, [r1]
|
|
cmp r1, #4
|
|
beq _0207E63C
|
|
cmp r1, #0x15
|
|
bne _0207E648
|
|
_0207E63C:
|
|
ldr r0, _0207E680 ; =0x00000684
|
|
mov r1, #0
|
|
ldr r0, [r4, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
b _0207E652
|
|
_0207E648:
|
|
add r0, #0x30
|
|
ldr r0, [r4, r0]
|
|
mov r1, #1
|
|
bl Set2dSpriteVisibleFlag
|
|
_0207E652:
|
|
ldr r0, _0207E67C ; =0x00000654
|
|
ldr r0, [r4, r0]
|
|
add r0, #0x24
|
|
ldrb r0, [r0]
|
|
cmp r0, #2
|
|
beq _0207E66C
|
|
cmp r0, #0x11
|
|
beq _0207E66C
|
|
add r0, #0xea
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
cmp r0, #1
|
|
bhi _0207E678
|
|
_0207E66C:
|
|
mov r0, #0x1a
|
|
lsl r0, r0, #6
|
|
ldr r0, [r4, r0]
|
|
mov r1, #1
|
|
bl Set2dSpriteVisibleFlag
|
|
_0207E678:
|
|
pop {r3, r4, r5, pc}
|
|
nop
|
|
_0207E67C: .word 0x00000654
|
|
_0207E680: .word 0x00000684
|
|
thumb_func_end sub_0207E618
|
|
|
|
thumb_func_start sub_0207E684
|
|
sub_0207E684: ; 0x0207E684
|
|
push {r3, r4}
|
|
sub r1, r1, #1
|
|
ldr r4, _0207E6B0 ; =_021016B4
|
|
lsl r1, r1, #4
|
|
mov r3, #0
|
|
add r1, r4, r1
|
|
lsl r0, r0, #3
|
|
add r4, r1, r0
|
|
add r0, r3, #0
|
|
_0207E696:
|
|
ldrsb r1, [r4, r0]
|
|
cmp r2, r1
|
|
bne _0207E6A2
|
|
mov r0, #1
|
|
pop {r3, r4}
|
|
bx lr
|
|
_0207E6A2:
|
|
add r3, r3, #1
|
|
add r4, r4, #1
|
|
cmp r3, #8
|
|
blt _0207E696
|
|
mov r0, #0
|
|
pop {r3, r4}
|
|
bx lr
|
|
.balign 4, 0
|
|
_0207E6B0: .word _021016B4
|
|
thumb_func_end sub_0207E684
|
|
|
|
thumb_func_start sub_0207E6B4
|
|
sub_0207E6B4: ; 0x0207E6B4
|
|
push {r3, r4}
|
|
sub r1, r1, #1
|
|
ldr r4, _0207E6E4 ; =_021016B4
|
|
lsl r1, r1, #4
|
|
mov r3, #0
|
|
add r1, r4, r1
|
|
lsl r0, r0, #3
|
|
add r4, r1, r0
|
|
add r0, r3, #0
|
|
_0207E6C6:
|
|
ldrsb r1, [r4, r0]
|
|
cmp r2, r1
|
|
bne _0207E6D2
|
|
add r0, r3, #0
|
|
pop {r3, r4}
|
|
bx lr
|
|
_0207E6D2:
|
|
add r3, r3, #1
|
|
add r4, r4, #1
|
|
cmp r3, #8
|
|
blt _0207E6C6
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
pop {r3, r4}
|
|
bx lr
|
|
nop
|
|
_0207E6E4: .word _021016B4
|
|
thumb_func_end sub_0207E6B4
|
|
|
|
thumb_func_start sub_0207E6E8
|
|
sub_0207E6E8: ; 0x0207E6E8
|
|
push {r3, r4}
|
|
sub r1, r1, #1
|
|
lsl r4, r1, #4
|
|
ldr r3, _0207E710 ; =_021016B4
|
|
lsl r1, r0, #3
|
|
add r0, r3, r4
|
|
add r0, r1, r0
|
|
ldrsb r1, [r2, r0]
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
cmp r1, r0
|
|
beq _0207E70A
|
|
cmp r1, #7
|
|
beq _0207E70A
|
|
mov r0, #1
|
|
pop {r3, r4}
|
|
bx lr
|
|
_0207E70A:
|
|
mov r0, #0
|
|
pop {r3, r4}
|
|
bx lr
|
|
.balign 4, 0
|
|
_0207E710: .word _021016B4
|
|
thumb_func_end sub_0207E6E8
|
|
|
|
thumb_func_start sub_0207E714
|
|
sub_0207E714: ; 0x0207E714
|
|
push {r3, r4, r5, r6}
|
|
sub r3, r1, #2
|
|
add r6, r3, #0
|
|
ldrb r3, [r0]
|
|
mov r1, #0x60
|
|
mul r6, r1
|
|
ldr r4, _0207E744 ; =_02110244
|
|
add r5, r3, #0
|
|
mov r1, #0xc
|
|
mul r5, r1
|
|
add r4, r4, r6
|
|
lsl r3, r2, #2
|
|
add r2, r5, r4
|
|
ldr r2, [r3, r2]
|
|
sub r1, #0xd
|
|
cmp r2, r1
|
|
beq _0207E73E
|
|
strb r2, [r0]
|
|
mov r0, #1
|
|
pop {r3, r4, r5, r6}
|
|
bx lr
|
|
_0207E73E:
|
|
mov r0, #0
|
|
pop {r3, r4, r5, r6}
|
|
bx lr
|
|
.balign 4, 0
|
|
_0207E744: .word _02110244
|
|
thumb_func_end sub_0207E714
|
|
|
|
thumb_func_start sub_0207E748
|
|
sub_0207E748: ; 0x0207E748
|
|
push {r3, r4, r5, r6}
|
|
sub r3, r1, #2
|
|
add r6, r3, #0
|
|
ldrb r3, [r0]
|
|
mov r1, #0x28
|
|
mul r6, r1
|
|
ldr r4, _0207E774 ; =_021101A4
|
|
lsl r5, r3, #3
|
|
add r4, r4, r6
|
|
lsl r3, r2, #2
|
|
add r2, r5, r4
|
|
ldr r2, [r3, r2]
|
|
sub r1, #0x29
|
|
cmp r2, r1
|
|
beq _0207E76E
|
|
strb r2, [r0]
|
|
mov r0, #1
|
|
pop {r3, r4, r5, r6}
|
|
bx lr
|
|
_0207E76E:
|
|
mov r0, #0
|
|
pop {r3, r4, r5, r6}
|
|
bx lr
|
|
.balign 4, 0
|
|
_0207E774: .word _021101A4
|
|
thumb_func_end sub_0207E748
|
|
|
|
thumb_func_start sub_0207E778
|
|
sub_0207E778: ; 0x0207E778
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #8
|
|
add r5, r1, #0
|
|
mov r1, #0xc9
|
|
add r6, r0, #0
|
|
lsl r1, r1, #4
|
|
add r7, r6, r1
|
|
ldr r1, [r7, #0xc]
|
|
mov r4, #0
|
|
cmp r1, #1
|
|
bne _0207E7A2
|
|
bl sub_0207CC24
|
|
cmp r0, #0
|
|
bne _0207E79C
|
|
add sp, #8
|
|
ldr r0, [r7, #8]
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207E79C:
|
|
add sp, #8
|
|
sub r0, r4, #1
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207E7A2:
|
|
ldr r0, _0207E930 ; =_02110180
|
|
bl sub_02025224
|
|
add r7, r0, #0
|
|
sub r0, r4, #1
|
|
cmp r7, r0
|
|
beq _0207E81E
|
|
ldrb r0, [r5, #3]
|
|
ldrb r1, [r5, #2]
|
|
add r2, r7, #0
|
|
bl sub_0207E684
|
|
cmp r0, #1
|
|
beq _0207E7C0
|
|
b _0207E900
|
|
_0207E7C0:
|
|
cmp r7, #7
|
|
bne _0207E7CE
|
|
mov r0, #0x25
|
|
lsl r0, r0, #6
|
|
bl PlaySE
|
|
b _0207E7D4
|
|
_0207E7CE:
|
|
ldr r0, _0207E934 ; =0x000005DC
|
|
bl PlaySE
|
|
_0207E7D4:
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldrb r1, [r5, #2]
|
|
ldrb r2, [r5, #1]
|
|
ldrb r3, [r5, #3]
|
|
add r0, r6, #0
|
|
bl sub_0207E3A8
|
|
ldrb r0, [r5, #3]
|
|
add r1, r5, #4
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
str r0, [sp, #4]
|
|
ldrb r2, [r5, #2]
|
|
ldrb r3, [r5, #1]
|
|
add r0, r6, #0
|
|
bl sub_0207E28C
|
|
ldrb r0, [r5, #3]
|
|
ldrb r1, [r5, #2]
|
|
add r2, r7, #0
|
|
bl sub_0207E6B4
|
|
strb r0, [r5, #1]
|
|
ldrb r2, [r5, #1]
|
|
ldr r3, [r5, #4]
|
|
add r0, r6, #0
|
|
lsl r2, r2, #3
|
|
add r2, r3, r2
|
|
ldr r2, [r2, #4]
|
|
add r1, r5, #0
|
|
bl sub_0207CB9C
|
|
mov r0, #0
|
|
add sp, #8
|
|
mvn r0, r0
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207E81E:
|
|
ldr r0, _0207E938 ; =gSystem
|
|
mov r2, #0x40
|
|
ldr r1, [r0, #0x4c]
|
|
tst r2, r1
|
|
beq _0207E83A
|
|
ldrb r1, [r5, #2]
|
|
add r0, r5, #1
|
|
add r2, r4, #0
|
|
bl sub_0207E714
|
|
cmp r0, #0
|
|
beq _0207E900
|
|
add r4, r4, #1
|
|
b _0207E900
|
|
_0207E83A:
|
|
mov r2, #0x80
|
|
tst r2, r1
|
|
beq _0207E852
|
|
ldrb r1, [r5, #2]
|
|
add r0, r5, #1
|
|
mov r2, #1
|
|
bl sub_0207E714
|
|
cmp r0, #0
|
|
beq _0207E900
|
|
add r4, r4, #1
|
|
b _0207E900
|
|
_0207E852:
|
|
mov r2, #0x20
|
|
tst r2, r1
|
|
bne _0207E85E
|
|
mov r2, #0x10
|
|
tst r1, r2
|
|
beq _0207E870
|
|
_0207E85E:
|
|
ldrb r1, [r5, #2]
|
|
add r0, r5, #1
|
|
mov r2, #2
|
|
bl sub_0207E714
|
|
cmp r0, #0
|
|
beq _0207E900
|
|
add r4, r4, #1
|
|
b _0207E900
|
|
_0207E870:
|
|
ldr r1, [r0, #0x48]
|
|
mov r0, #1
|
|
tst r0, r1
|
|
beq _0207E8B2
|
|
ldrb r0, [r5, #3]
|
|
ldrb r1, [r5, #2]
|
|
mov r2, #7
|
|
bl sub_0207E6B4
|
|
ldrb r1, [r5, #1]
|
|
cmp r1, r0
|
|
bne _0207E892
|
|
mov r0, #0x25
|
|
lsl r0, r0, #6
|
|
bl PlaySE
|
|
b _0207E898
|
|
_0207E892:
|
|
ldr r0, _0207E934 ; =0x000005DC
|
|
bl PlaySE
|
|
_0207E898:
|
|
ldrb r2, [r5, #1]
|
|
ldr r3, [r5, #4]
|
|
add r0, r6, #0
|
|
lsl r2, r2, #3
|
|
add r2, r3, r2
|
|
ldr r2, [r2, #4]
|
|
add r1, r5, #0
|
|
bl sub_0207CB9C
|
|
mov r0, #0
|
|
add sp, #8
|
|
mvn r0, r0
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207E8B2:
|
|
mov r0, #2
|
|
tst r0, r1
|
|
beq _0207E900
|
|
mov r0, #0x25
|
|
lsl r0, r0, #6
|
|
bl PlaySE
|
|
add r0, r4, #0
|
|
str r0, [sp]
|
|
ldrb r1, [r5, #2]
|
|
ldrb r2, [r5, #1]
|
|
ldrb r3, [r5, #3]
|
|
add r0, r6, #0
|
|
bl sub_0207E3A8
|
|
ldrb r0, [r5, #3]
|
|
add r1, r5, #4
|
|
str r0, [sp]
|
|
add r0, r4, #0
|
|
str r0, [sp, #4]
|
|
ldrb r2, [r5, #2]
|
|
ldrb r3, [r5, #1]
|
|
add r0, r6, #0
|
|
bl sub_0207E28C
|
|
ldrb r0, [r5, #3]
|
|
ldrb r1, [r5, #2]
|
|
mov r2, #7
|
|
bl sub_0207E6B4
|
|
strb r0, [r5, #1]
|
|
add r0, r6, #0
|
|
add r1, r5, #0
|
|
sub r2, r4, #2
|
|
bl sub_0207CB9C
|
|
add sp, #8
|
|
sub r0, r4, #1
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207E900:
|
|
cmp r4, #0
|
|
beq _0207E926
|
|
ldr r0, _0207E934 ; =0x000005DC
|
|
bl PlaySE
|
|
ldrb r1, [r5, #2]
|
|
ldrb r2, [r5, #1]
|
|
ldrb r3, [r5, #3]
|
|
add r0, r6, #0
|
|
bl sub_0207E54C
|
|
ldrb r0, [r5, #3]
|
|
add r1, r5, #4
|
|
str r0, [sp]
|
|
ldrb r2, [r5, #2]
|
|
ldrb r3, [r5, #1]
|
|
add r0, r6, #0
|
|
bl sub_0207E358
|
|
_0207E926:
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
add sp, #8
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_0207E930: .word _02110180
|
|
_0207E934: .word 0x000005DC
|
|
_0207E938: .word gSystem
|
|
thumb_func_end sub_0207E778
|
|
|
|
thumb_func_start sub_0207E93C
|
|
sub_0207E93C: ; 0x0207E93C
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #8
|
|
add r4, r1, #0
|
|
mov r1, #0xc9
|
|
add r5, r0, #0
|
|
lsl r1, r1, #4
|
|
add r7, r5, r1
|
|
ldr r1, [r7, #0xc]
|
|
mov r6, #0
|
|
cmp r1, #1
|
|
bne _0207E966
|
|
bl sub_0207CC24
|
|
cmp r0, #0
|
|
bne _0207E960
|
|
add sp, #8
|
|
ldr r0, [r7, #8]
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207E960:
|
|
add sp, #8
|
|
sub r0, r6, #1
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207E966:
|
|
ldr r0, _0207EB18 ; =_02110168
|
|
bl sub_02025224
|
|
add r7, r0, #0
|
|
sub r0, r6, #1
|
|
cmp r7, r0
|
|
beq _0207EA0E
|
|
cmp r7, #4
|
|
bne _0207E9BA
|
|
mov r0, #0x25
|
|
lsl r0, r0, #6
|
|
bl PlaySE
|
|
add r0, r6, #0
|
|
str r0, [sp]
|
|
ldrb r1, [r4, #2]
|
|
ldrb r2, [r4, #1]
|
|
ldrb r3, [r4, #3]
|
|
add r0, r5, #0
|
|
bl sub_0207E3A8
|
|
ldrb r0, [r4, #3]
|
|
add r1, r4, #4
|
|
str r0, [sp]
|
|
add r0, r6, #0
|
|
str r0, [sp, #4]
|
|
ldrb r2, [r4, #2]
|
|
ldrb r3, [r4, #1]
|
|
add r0, r5, #0
|
|
bl sub_0207E28C
|
|
ldrb r0, [r4, #2]
|
|
add r1, r4, #0
|
|
sub r2, r6, #2
|
|
sub r0, r0, #1
|
|
strb r0, [r4, #1]
|
|
add r0, r5, #0
|
|
bl sub_0207CB9C
|
|
add sp, #8
|
|
sub r0, r6, #1
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207E9BA:
|
|
ldrb r0, [r4, #3]
|
|
ldrb r1, [r4, #2]
|
|
add r2, r7, #0
|
|
bl sub_0207E6E8
|
|
cmp r0, #1
|
|
beq _0207E9CA
|
|
b _0207EAEA
|
|
_0207E9CA:
|
|
ldr r0, _0207EB1C ; =0x000005DC
|
|
bl PlaySE
|
|
add r0, r6, #0
|
|
str r0, [sp]
|
|
ldrb r1, [r4, #2]
|
|
ldrb r2, [r4, #1]
|
|
ldrb r3, [r4, #3]
|
|
add r0, r5, #0
|
|
bl sub_0207E3A8
|
|
ldrb r0, [r4, #3]
|
|
add r1, r4, #4
|
|
str r0, [sp]
|
|
add r0, r6, #0
|
|
str r0, [sp, #4]
|
|
ldrb r2, [r4, #2]
|
|
ldrb r3, [r4, #1]
|
|
add r0, r5, #0
|
|
bl sub_0207E28C
|
|
strb r7, [r4, #1]
|
|
ldrb r2, [r4, #1]
|
|
ldr r3, [r4, #4]
|
|
add r0, r5, #0
|
|
lsl r2, r2, #3
|
|
add r2, r3, r2
|
|
ldr r2, [r2, #4]
|
|
add r1, r4, #0
|
|
bl sub_0207CB9C
|
|
add sp, #8
|
|
sub r0, r6, #1
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207EA0E:
|
|
ldr r2, _0207EB20 ; =gSystem
|
|
mov r1, #0x40
|
|
ldr r0, [r2, #0x4c]
|
|
tst r1, r0
|
|
beq _0207EA2A
|
|
ldrb r1, [r4, #2]
|
|
add r0, r4, #1
|
|
add r2, r6, #0
|
|
bl sub_0207E748
|
|
cmp r0, #0
|
|
beq _0207EAEA
|
|
add r6, r6, #1
|
|
b _0207EAEA
|
|
_0207EA2A:
|
|
mov r1, #0x80
|
|
tst r0, r1
|
|
beq _0207EA42
|
|
ldrb r1, [r4, #2]
|
|
add r0, r4, #1
|
|
mov r2, #1
|
|
bl sub_0207E748
|
|
cmp r0, #0
|
|
beq _0207EAEA
|
|
add r6, r6, #1
|
|
b _0207EAEA
|
|
_0207EA42:
|
|
ldr r1, [r2, #0x48]
|
|
mov r0, #1
|
|
tst r0, r1
|
|
beq _0207EAA2
|
|
ldrb r0, [r4, #2]
|
|
ldrb r1, [r4, #1]
|
|
sub r0, r0, #1
|
|
cmp r1, r0
|
|
bne _0207EA5E
|
|
mov r0, #0x25
|
|
lsl r0, r0, #6
|
|
bl PlaySE
|
|
b _0207EA64
|
|
_0207EA5E:
|
|
ldr r0, _0207EB1C ; =0x000005DC
|
|
bl PlaySE
|
|
_0207EA64:
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldrb r1, [r4, #2]
|
|
ldrb r2, [r4, #1]
|
|
ldrb r3, [r4, #3]
|
|
add r0, r5, #0
|
|
bl sub_0207E3A8
|
|
ldrb r0, [r4, #3]
|
|
add r1, r4, #4
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
str r0, [sp, #4]
|
|
ldrb r2, [r4, #2]
|
|
ldrb r3, [r4, #1]
|
|
add r0, r5, #0
|
|
bl sub_0207E28C
|
|
ldrb r2, [r4, #1]
|
|
ldr r3, [r4, #4]
|
|
add r0, r5, #0
|
|
lsl r2, r2, #3
|
|
add r2, r3, r2
|
|
ldr r2, [r2, #4]
|
|
add r1, r4, #0
|
|
bl sub_0207CB9C
|
|
mov r0, #0
|
|
add sp, #8
|
|
mvn r0, r0
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207EAA2:
|
|
mov r0, #2
|
|
tst r0, r1
|
|
beq _0207EAEA
|
|
mov r0, #0x25
|
|
lsl r0, r0, #6
|
|
bl PlaySE
|
|
add r0, r6, #0
|
|
str r0, [sp]
|
|
ldrb r1, [r4, #2]
|
|
ldrb r2, [r4, #1]
|
|
ldrb r3, [r4, #3]
|
|
add r0, r5, #0
|
|
bl sub_0207E3A8
|
|
ldrb r0, [r4, #3]
|
|
add r1, r4, #4
|
|
str r0, [sp]
|
|
add r0, r6, #0
|
|
str r0, [sp, #4]
|
|
ldrb r2, [r4, #2]
|
|
ldrb r3, [r4, #1]
|
|
add r0, r5, #0
|
|
bl sub_0207E28C
|
|
ldrb r0, [r4, #2]
|
|
add r1, r4, #0
|
|
sub r2, r6, #2
|
|
sub r0, r0, #1
|
|
strb r0, [r4, #1]
|
|
add r0, r5, #0
|
|
bl sub_0207CB9C
|
|
add sp, #8
|
|
sub r0, r6, #1
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_0207EAEA:
|
|
cmp r6, #0
|
|
beq _0207EB10
|
|
ldr r0, _0207EB1C ; =0x000005DC
|
|
bl PlaySE
|
|
ldrb r1, [r4, #2]
|
|
ldrb r2, [r4, #1]
|
|
ldrb r3, [r4, #3]
|
|
add r0, r5, #0
|
|
bl sub_0207E54C
|
|
ldrb r0, [r4, #3]
|
|
add r1, r4, #4
|
|
str r0, [sp]
|
|
ldrb r2, [r4, #2]
|
|
ldrb r3, [r4, #1]
|
|
add r0, r5, #0
|
|
bl sub_0207E358
|
|
_0207EB10:
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
add sp, #8
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0207EB18: .word _02110168
|
|
_0207EB1C: .word 0x000005DC
|
|
_0207EB20: .word gSystem
|
|
thumb_func_end sub_0207E93C
|
|
|
|
.rodata
|
|
|
|
_021015AC:
|
|
.short 0, 2, 6, 8, 3, 5, 1, 7
|
|
_021015BC:
|
|
.short 0x0008, 0x0002, 0x0014, 0x000E
|
|
.short 0x0009, 0x0003, 0x0015, 0x000F
|
|
.short 0x000A, 0x0004, 0x0016, 0x0010
|
|
.short 0x000B, 0x0005, 0x0017, 0x0011
|
|
.short 0x000C, 0x0006, 0x0018, 0x0012
|
|
.short 0x000D, 0x0007, 0x0019, 0x0013
|
|
_021015EC:
|
|
.byte 0x10, 0x03, 0x10, 0x04
|
|
.byte 0x10, 0x07, 0x10, 0x04
|
|
.byte 0x10, 0x0B, 0x10, 0x04
|
|
.byte 0x00, 0x02, 0x10, 0x04
|
|
.byte 0x00, 0x06, 0x10, 0x04
|
|
.byte 0x00, 0x0A, 0x10, 0x04
|
|
.byte 0x00, 0x0E, 0x10, 0x04
|
|
.byte 0x19, 0x13, 0x07, 0x05
|
|
.byte 0x10, 0x02, 0x10, 0x04
|
|
.byte 0x10, 0x06, 0x10, 0x04
|
|
.byte 0x10, 0x0A, 0x10, 0x04
|
|
.byte 0x10, 0x0E, 0x10, 0x04
|
|
|
|
_0210161C:
|
|
.byte 0x01, 0x1A, 0x15, 0x05, 0x02, 0x00, 0x80, 0x01
|
|
_02101624:
|
|
.byte 0x01, 0x19, 0x14, 0x07, 0x02, 0x00, 0x8A, 0x01
|
|
_0210162C:
|
|
.byte 0x00, 0x02, 0x15, 0x14, 0x02, 0x0D, 0x98, 0x01
|
|
_02101634:
|
|
.byte 0x00, 0x02, 0x13, 0x0D, 0x04, 0x0D, 0xC0, 0x01
|
|
_0210163C:
|
|
.byte 0x00, 0x02, 0x13, 0x1B, 0x04, 0x0D, 0xF4, 0x01
|
|
_02101644:
|
|
.byte 0x00, 0x13, 0x11, 0x0C, 0x06, 0x00, 0x60, 0x02
|
|
_0210164C:
|
|
.byte 0x00, 0x13, 0x0F, 0x0C, 0x08, 0x00, 0x60, 0x02
|
|
_02101654:
|
|
.byte 0x00, 0x11, 0x04, 0x0E, 0x02, 0x02, 0x60, 0x02
|
|
.byte 0x00, 0x11, 0x08, 0x0E, 0x02, 0x02, 0x7C, 0x02
|
|
.byte 0x00, 0x11, 0x0C, 0x0E, 0x02, 0x02, 0x98, 0x02
|
|
.byte 0x00, 0x01, 0x03, 0x0E, 0x02, 0x02, 0xB4, 0x02
|
|
.byte 0x00, 0x01, 0x07, 0x0E, 0x02, 0x02, 0xD0, 0x02
|
|
.byte 0x00, 0x01, 0x0B, 0x0E, 0x02, 0x02, 0xEC, 0x02
|
|
.byte 0x00, 0x01, 0x0F, 0x0E, 0x02, 0x02, 0x08, 0x03
|
|
.byte 0x00, 0x1A, 0x14, 0x05, 0x03, 0x02, 0x24, 0x03
|
|
.byte 0x00, 0x11, 0x03, 0x0E, 0x02, 0x02, 0x60, 0x02
|
|
.byte 0x00, 0x11, 0x07, 0x0E, 0x02, 0x02, 0x7C, 0x02
|
|
.byte 0x00, 0x11, 0x0B, 0x0E, 0x02, 0x02, 0x98, 0x02
|
|
.byte 0x00, 0x11, 0x0F, 0x0E, 0x02, 0x02, 0xB4, 0x02
|
|
_021016B4:
|
|
.byte 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
|
|
.byte 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0x08, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
|
|
.byte 0x00, 0x01, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0x08, 0x09, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
|
|
.byte 0x00, 0x01, 0x02, 0x07, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0x08, 0x09, 0x0A, 0x07, 0xFF, 0xFF, 0xFF, 0xFF
|
|
|
|
.byte 0x00, 0x01, 0x02, 0x07, 0x03, 0xFF, 0xFF, 0xFF
|
|
.byte 0x08, 0x09, 0x0A, 0x0B, 0x07, 0xFF, 0xFF, 0xFF
|
|
|
|
.byte 0x00, 0x01, 0x02, 0x07, 0x03, 0x04, 0xFF, 0xFF
|
|
.byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x08, 0xFF, 0xFF
|
|
|
|
.byte 0x00, 0x01, 0x02, 0x07, 0x03, 0x04, 0x05, 0xFF
|
|
.byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x08, 0xFF
|
|
|
|
.byte 0x00, 0x01, 0x02, 0x07, 0x03, 0x04, 0x05, 0x06
|
|
.byte 0x00, 0x01, 0x02, 0x07, 0x03, 0x04, 0x05, 0x06
|
|
_02101734:
|
|
// struct WindowTemplate[][5]
|
|
.byte 0x01, 0x06, 0x01, 0x09, 0x02, 0x00, 0x48, 0x00
|
|
.byte 0x01, 0x00, 0x04, 0x06, 0x02, 0x00, 0x5A, 0x00
|
|
.byte 0x01, 0x07, 0x04, 0x08, 0x02, 0x00, 0x66, 0x00
|
|
.byte 0x01, 0x08, 0x03, 0x06, 0x01, 0x03, 0x76, 0x00
|
|
.byte 0x01, 0x06, 0x04, 0x0A, 0x02, 0x00, 0x66, 0x00
|
|
; 0x0210175C
|
|
.byte 0x01, 0x16, 0x02, 0x09, 0x02, 0x00, 0x7C, 0x00
|
|
.byte 0x01, 0x10, 0x05, 0x06, 0x02, 0x00, 0x8E, 0x00
|
|
.byte 0x01, 0x17, 0x05, 0x08, 0x02, 0x00, 0x9A, 0x00
|
|
.byte 0x01, 0x18, 0x04, 0x06, 0x01, 0x04, 0xAA, 0x00
|
|
.byte 0x01, 0x16, 0x05, 0x0A, 0x02, 0x00, 0x9A, 0x00
|
|
; 0x02101784
|
|
.byte 0x01, 0x06, 0x07, 0x09, 0x02, 0x00, 0xB0, 0x00
|
|
.byte 0x01, 0x00, 0x0A, 0x06, 0x02, 0x00, 0xC2, 0x00
|
|
.byte 0x01, 0x07, 0x0A, 0x08, 0x02, 0x00, 0xCE, 0x00
|
|
.byte 0x01, 0x08, 0x09, 0x06, 0x01, 0x05, 0xDE, 0x00
|
|
.byte 0x01, 0x06, 0x0A, 0x0A, 0x02, 0x00, 0xCE, 0x00
|
|
; 0x021017AC
|
|
.byte 0x01, 0x16, 0x08, 0x09, 0x02, 0x00, 0xE4, 0x00
|
|
.byte 0x01, 0x10, 0x0B, 0x06, 0x02, 0x00, 0xF6, 0x00
|
|
.byte 0x01, 0x17, 0x0B, 0x08, 0x02, 0x00, 0x02, 0x01
|
|
.byte 0x01, 0x18, 0x0A, 0x06, 0x01, 0x06, 0x12, 0x01
|
|
.byte 0x01, 0x16, 0x0B, 0x0A, 0x02, 0x00, 0x02, 0x01
|
|
; 0x021017D4
|
|
.byte 0x01, 0x06, 0x0D, 0x09, 0x02, 0x00, 0x18, 0x01
|
|
.byte 0x01, 0x00, 0x10, 0x06, 0x02, 0x00, 0x2A, 0x01
|
|
.byte 0x01, 0x07, 0x10, 0x08, 0x02, 0x00, 0x36, 0x01
|
|
.byte 0x01, 0x08, 0x0F, 0x06, 0x01, 0x07, 0x46, 0x01
|
|
.byte 0x01, 0x06, 0x10, 0x0A, 0x02, 0x00, 0x36, 0x01
|
|
; 0x021017FC
|
|
.byte 0x01, 0x16, 0x0E, 0x09, 0x02, 0x00, 0x4C, 0x01
|
|
.byte 0x01, 0x10, 0x11, 0x06, 0x02, 0x00, 0x5E, 0x01
|
|
.byte 0x01, 0x17, 0x11, 0x08, 0x02, 0x00, 0x6A, 0x01
|
|
.byte 0x01, 0x18, 0x10, 0x06, 0x01, 0x08, 0x7A, 0x01
|
|
.byte 0x01, 0x16, 0x11, 0x0A, 0x02, 0x00, 0x6A, 0x01
|
|
; 0x02101824
|
|
.byte 0x01, 0x16, 0x01, 0x09, 0x02, 0x00, 0x7C, 0x00
|
|
.byte 0x01, 0x11, 0x05, 0x05, 0x02, 0x00, 0x8E, 0x00
|
|
.byte 0x01, 0x17, 0x05, 0x08, 0x02, 0x00, 0x9A, 0x00
|
|
.byte 0x01, 0x18, 0x04, 0x06, 0x01, 0x04, 0xAA, 0x00
|
|
.byte 0x01, 0x18, 0x04, 0x06, 0x01, 0x04, 0xAA, 0x00
|
|
; 0x0210184C
|
|
.byte 0x01, 0x16, 0x08, 0x09, 0x02, 0x00, 0xE4, 0x00
|
|
.byte 0x01, 0x11, 0x0B, 0x05, 0x02, 0x00, 0xF6, 0x00
|
|
.byte 0x01, 0x17, 0x0B, 0x08, 0x02, 0x00, 0x02, 0x01
|
|
.byte 0x01, 0x18, 0x0A, 0x06, 0x01, 0x06, 0x12, 0x01
|
|
.byte 0x01, 0x18, 0x04, 0x06, 0x01, 0x04, 0xAA, 0x00
|
|
; 0x02101874
|
|
.byte 0x01, 0x16, 0x0E, 0x09, 0x02, 0x00, 0x4C, 0x01
|
|
.byte 0x01, 0x11, 0x11, 0x05, 0x02, 0x00, 0x5E, 0x01
|
|
.byte 0x01, 0x17, 0x11, 0x08, 0x02, 0x00, 0x6A, 0x01
|
|
.byte 0x01, 0x18, 0x10, 0x06, 0x01, 0x08, 0x7A, 0x01
|
|
.byte 0x01, 0x18, 0x04, 0x06, 0x01, 0x04, 0xAA, 0x00
|
|
; 0x0210189C
|
|
.byte 0x06, 0x07, 0x18, 0x0A, 0x02, 0x02, 0x01, 0x00
|
|
.byte 0x06, 0x11, 0x18, 0x06, 0x02, 0x02, 0x15, 0x00
|
|
.byte 0x06, 0x11, 0x1A, 0x0C, 0x03, 0x02, 0x21, 0x00
|
|
|
|
.data
|
|
|
|
_02110168:
|
|
.byte 0x10, 0x30, 0x80, 0x00, 0x30, 0x50, 0x80, 0x00
|
|
.byte 0x50, 0x70, 0x80, 0x00, 0x70, 0x90, 0x80, 0x00, 0x98, 0xC0, 0xC8, 0x00, 0xFF, 0x00, 0x00, 0x00
|
|
_02110180:
|
|
.byte 0x18, 0x38, 0x80, 0x00, 0x38, 0x58, 0x80, 0x00, 0x58, 0x78, 0x80, 0x00, 0x10, 0x30, 0x00, 0x80
|
|
.byte 0x30, 0x50, 0x00, 0x80, 0x50, 0x70, 0x00, 0x80, 0x70, 0x90, 0x00, 0x80, 0x98, 0xC0, 0xC8, 0x00
|
|
.byte 0xFF, 0x00, 0x00, 0x00
|
|
_021101A4:
|
|
.byte 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0x00, 0x00, 0x00
|
|
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x04, 0x00, 0x00, 0x00
|
|
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
_02110244:
|
|
.byte 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x03, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x03, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x03, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x04, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00
|
|
.byte 0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x03, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x04, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00
|
|
.byte 0x07, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
|
|
.byte 0x02, 0x00, 0x00, 0x00
|