mirror of https://github.com/zeldaret/tmc.git
319 lines
5.2 KiB
PHP
319 lines
5.2 KiB
PHP
.syntax unified
|
|
|
|
push {r4, r5, r6, r7, lr}
|
|
adds r5, r0, #0
|
|
ldrh r7, [r5, #0x24]
|
|
cmp r7, #0
|
|
beq _0805675C
|
|
b _0805694C
|
|
_0805675C:
|
|
adds r4, r5, #0
|
|
adds r4, #0x20
|
|
adds r0, r4, #0
|
|
bl GetCharacter
|
|
adds r7, r0, #0
|
|
cmp r7, #0xe
|
|
bls _0805676E
|
|
b _08056942
|
|
_0805676E:
|
|
lsls r0, r7, #2
|
|
ldr r1, _08056778 @ =_0805677C
|
|
adds r0, r0, r1
|
|
ldr r0, [r0]
|
|
mov pc, r0
|
|
.align 2, 0
|
|
_08056778: .4byte _0805677C
|
|
_0805677C: @ jump table
|
|
.4byte _080567B8 @ case 0
|
|
.4byte _080567DE @ case 1
|
|
.4byte _08056802 @ case 2
|
|
.4byte _0805680A @ case 3
|
|
.4byte _08056812 @ case 4
|
|
.4byte _08056838 @ case 5
|
|
.4byte _08056844 @ case 6
|
|
.4byte _08056858 @ case 7
|
|
.4byte _0805688C @ case 8
|
|
.4byte _08056894 @ case 9
|
|
.4byte _080568AC @ case 10
|
|
.4byte _08056942 @ case 11
|
|
.4byte _080568B2 @ case 12
|
|
.4byte _08056914 @ case 13
|
|
.4byte _0805693A @ case 14
|
|
_080567B8:
|
|
ldr r0, _080567D4 @ =gUnk_02000040
|
|
ldrb r0, [r0]
|
|
cmp r0, #1
|
|
bne _080567D8
|
|
adds r1, r5, #0
|
|
adds r1, #0x89
|
|
movs r0, #5
|
|
strb r0, [r1]
|
|
.ifndef EU
|
|
movs r0, #0
|
|
movs r1, #0
|
|
bl SwitchChoice
|
|
.endif
|
|
b _08056942
|
|
.align 2, 0
|
|
_080567D4: .4byte gUnk_02000040
|
|
_080567D8:
|
|
adds r1, r5, #0
|
|
adds r1, #0x89
|
|
b _0805692C
|
|
_080567DE:
|
|
adds r1, r5, #0
|
|
adds r1, #0x8a
|
|
movs r0, #2
|
|
strb r0, [r1]
|
|
adds r0, r5, #0
|
|
adds r0, #0x98
|
|
ldrb r0, [r0]
|
|
cmp r0, #0
|
|
bne _080567F8
|
|
movs r0, #1
|
|
bl MsgChangeLine
|
|
b _08056942
|
|
_080567F8:
|
|
adds r1, r5, #0
|
|
adds r1, #0x89
|
|
movs r0, #3
|
|
strb r0, [r1]
|
|
b _08056942
|
|
_08056802:
|
|
movs r0, #3
|
|
bl StatusUpdate
|
|
b _08056942
|
|
_0805680A:
|
|
movs r0, #4
|
|
bl StatusUpdate
|
|
b _08056942
|
|
_08056812:
|
|
adds r0, r4, #0
|
|
movs r1, #0
|
|
bl GetFontStrWith
|
|
adds r3, r0, #0
|
|
adds r4, r5, #0
|
|
adds r4, #0x56
|
|
adds r0, r5, #0
|
|
adds r0, #0x54
|
|
ldrh r0, [r0]
|
|
ldrh r2, [r4]
|
|
subs r0, r0, r2
|
|
subs r0, r0, r3
|
|
lsrs r1, r0, #0x1f
|
|
adds r0, r0, r1
|
|
asrs r0, r0, #1
|
|
adds r2, r2, r0
|
|
strh r2, [r4]
|
|
b _08056942
|
|
_08056838:
|
|
ldr r1, _08056840 @ =gMessage
|
|
ldrh r0, [r5, #0x22]
|
|
strb r0, [r1, #1]
|
|
b _08056942
|
|
.align 2, 0
|
|
_08056840: .4byte gMessage
|
|
_08056844:
|
|
ldr r0, _08056854 @ =gUnk_0200005C
|
|
ldrh r1, [r5, #0x22]
|
|
movs r2, #0x1f
|
|
ands r1, r2
|
|
bl WriteBit
|
|
b _08056942
|
|
.align 2, 0
|
|
_08056854: .4byte gMessage+0xc
|
|
_08056858:
|
|
ldrh r3, [r5, #0x22]
|
|
cmp r3, #0xe
|
|
beq _08056864
|
|
cmp r3, #0xf
|
|
beq _08056874
|
|
b _0805687A
|
|
_08056864:
|
|
adds r0, r5, #0
|
|
adds r0, #0x8f
|
|
ldrb r0, [r0]
|
|
adds r1, r5, #0
|
|
adds r1, #0x91
|
|
strb r0, [r1]
|
|
movs r3, #2
|
|
b _0805687A
|
|
_08056874:
|
|
adds r0, r5, #0
|
|
adds r0, #0x91
|
|
ldrb r3, [r0]
|
|
_0805687A:
|
|
adds r1, r5, #0
|
|
adds r1, #0x90
|
|
movs r0, #0
|
|
strb r0, [r1]
|
|
adds r0, r5, #0
|
|
adds r1, r3, #0
|
|
bl PaletteChange
|
|
b _08056942
|
|
_0805688C:
|
|
ldrh r0, [r5, #0x22]
|
|
bl SoundReq
|
|
b _08056942
|
|
_08056894:
|
|
ldr r1, _080568A8 @ =gTextRender
|
|
ldrh r0, [r5, #0x22]
|
|
strb r0, [r1, #3]
|
|
ldrh r0, [r5, #0x22]
|
|
adds r1, r5, #0
|
|
adds r1, #0x53
|
|
ldrb r1, [r1]
|
|
bl sub_08056F88
|
|
b _08056942
|
|
.align 2, 0
|
|
_080568A8: .4byte gTextRender
|
|
_080568AC:
|
|
ldrh r0, [r5, #0x22]
|
|
strb r0, [r5, #7]
|
|
b _08056942
|
|
_080568B2:
|
|
ldr r6, _0805690C @ =gUnk_02000040
|
|
ldrb r0, [r6]
|
|
cmp r0, #1
|
|
beq _080568D2
|
|
adds r0, r6, #0
|
|
movs r1, #4
|
|
bl MemClear
|
|
ldr r4, _08056910 @ =gMessageChoices
|
|
adds r0, r4, #0
|
|
movs r1, #0x18
|
|
bl MemClear
|
|
movs r0, #1
|
|
strb r0, [r4]
|
|
strb r0, [r6]
|
|
_080568D2:
|
|
ldr r2, _08056910 @ =gMessageChoices
|
|
movs r0, #2
|
|
ldrsb r0, [r2, r0]
|
|
cmp r0, #3
|
|
bgt _08056942
|
|
lsls r0, r0, #1
|
|
adds r1, r2, #0
|
|
adds r1, #0x10
|
|
adds r0, r0, r1
|
|
ldrh r1, [r5, #0x26]
|
|
strh r1, [r0]
|
|
movs r0, #2
|
|
ldrsb r0, [r2, r0]
|
|
lsls r0, r0, #1
|
|
adds r1, r2, #0
|
|
adds r1, #8
|
|
adds r0, r0, r1
|
|
adds r3, r5, #0
|
|
adds r3, #0x56
|
|
ldrh r1, [r3]
|
|
strh r1, [r0]
|
|
ldrb r0, [r2, #2]
|
|
adds r0, #1
|
|
strb r0, [r2, #2]
|
|
ldrh r0, [r3]
|
|
adds r0, #8
|
|
strh r0, [r3]
|
|
b _08056942
|
|
.align 2, 0
|
|
_0805690C: .4byte gUnk_02000040
|
|
_08056910: .4byte gMessageChoices
|
|
_08056914:
|
|
ldrh r3, [r5, #0x22]
|
|
cmp r3, #0xfe
|
|
beq _08056928
|
|
cmp r3, #0xff
|
|
bne _08056932
|
|
adds r1, r5, #0
|
|
adds r1, #0x8e
|
|
movs r0, #1
|
|
strb r0, [r1]
|
|
b _08056942
|
|
_08056928:
|
|
adds r1, r5, #0
|
|
adds r1, #0x8e
|
|
_0805692C:
|
|
movs r0, #2
|
|
strb r0, [r1]
|
|
b _08056942
|
|
_08056932:
|
|
adds r0, r5, #0
|
|
adds r0, #0x95
|
|
strb r3, [r0]
|
|
b _08056942
|
|
_0805693A:
|
|
ldrh r1, [r5, #0x22]
|
|
adds r0, r5, #0
|
|
adds r0, #0x94
|
|
strb r1, [r0]
|
|
_08056942:
|
|
lsrs r0, r7, #8
|
|
cmp r0, #0
|
|
bne _0805694C
|
|
movs r0, #0
|
|
b _080569C2
|
|
_0805694C:
|
|
ldr r0, _08056960 @ =gTextRender
|
|
adds r0, #0x99
|
|
ldrb r0, [r0]
|
|
cmp r0, #2
|
|
beq _08056964
|
|
movs r0, #3
|
|
bl StatusUpdate
|
|
movs r0, #0
|
|
b _080569C2
|
|
.align 2, 0
|
|
_08056960: .4byte gTextRender
|
|
_08056964:
|
|
ldr r1, _08056994 @ =gMessage
|
|
ldrb r0, [r1, #1]
|
|
cmp r0, #0
|
|
bne _08056970
|
|
movs r0, #0x80
|
|
strb r0, [r1, #1]
|
|
_08056970:
|
|
movs r0, #0
|
|
strh r0, [r5, #0x24]
|
|
lsrs r0, r7, #8
|
|
cmp r0, #7
|
|
bne _08056998
|
|
adds r0, r5, #0
|
|
adds r0, #0x8f
|
|
ldrb r0, [r0]
|
|
movs r1, #0x80
|
|
adds r2, r5, #0
|
|
adds r2, #0x90
|
|
orrs r1, r0
|
|
strb r1, [r2]
|
|
adds r0, r5, #0
|
|
movs r1, #0
|
|
bl PaletteChange
|
|
b _080569B4
|
|
.align 2, 0
|
|
_08056994: .4byte gMessage
|
|
_08056998:
|
|
adds r2, r5, #0
|
|
adds r2, #0x90
|
|
ldrb r1, [r2]
|
|
movs r0, #0x80
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _080569B4
|
|
ldrb r3, [r2]
|
|
movs r0, #0
|
|
strb r0, [r2]
|
|
adds r0, r5, #0
|
|
adds r1, r3, #0
|
|
bl PaletteChange
|
|
_080569B4:
|
|
adds r1, r5, #0
|
|
adds r1, #0x50
|
|
adds r0, r7, #0
|
|
bl sub_0805F7DC
|
|
lsls r0, r0, #0x10
|
|
lsrs r0, r0, #0x10
|
|
_080569C2:
|
|
pop {r4, r5, r6, r7, pc}
|
|
|
|
.syntax divided
|