pokefirered/asm/event_data.s
2018-12-05 08:43:55 -05:00

868 lines
16 KiB
ArmAsm

.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_806E0D0
sub_806E0D0: @ 806E0D0
push {r4,lr}
ldr r4, _0806E108 @ =gSaveBlock1Ptr
ldr r0, [r4]
movs r1, 0xEE
lsls r1, 4
adds r0, r1
movs r2, 0x90
lsls r2, 1
movs r1, 0
bl memset
ldr r0, [r4]
movs r1, 0x80
lsls r1, 5
adds r0, r1
movs r2, 0x80
lsls r2, 2
movs r1, 0
bl memset
ldr r0, _0806E10C @ =gUnknown_20370E0
movs r1, 0
movs r2, 0x10
bl memset
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0806E108: .4byte gSaveBlock1Ptr
_0806E10C: .4byte gUnknown_20370E0
thumb_func_end sub_806E0D0
thumb_func_start sub_806E110
sub_806E110: @ 806E110
push {lr}
ldr r0, _0806E150 @ =gSaveBlock1Ptr
ldr r0, [r0]
movs r1, 0xEE
lsls r1, 4
adds r2, r0, r1
movs r1, 0
str r1, [r2]
movs r1, 0x80
lsls r1, 5
adds r0, r1
movs r1, 0
movs r2, 0x20
bl memset
ldr r0, _0806E154 @ =0x00000803
bl FlagClear
ldr r0, _0806E158 @ =0x00000804
bl FlagClear
ldr r0, _0806E15C @ =0x00000805
bl FlagClear
ldr r0, _0806E160 @ =0x00000807
bl FlagClear
ldr r0, _0806E164 @ =0x00000842
bl FlagClear
pop {r0}
bx r0
.align 2, 0
_0806E150: .4byte gSaveBlock1Ptr
_0806E154: .4byte 0x00000803
_0806E158: .4byte 0x00000804
_0806E15C: .4byte 0x00000805
_0806E160: .4byte 0x00000807
_0806E164: .4byte 0x00000842
thumb_func_end sub_806E110
thumb_func_start sub_806E168
sub_806E168: @ 806E168
push {lr}
ldr r0, _0806E184 @ =0x0000403c
bl GetVarPointer
ldr r1, _0806E188 @ =gSaveBlock2Ptr
ldr r2, [r1]
movs r1, 0
strb r1, [r2, 0x1A]
strh r1, [r0]
ldr r0, _0806E18C @ =0x00000838
bl FlagClear
pop {r0}
bx r0
.align 2, 0
_0806E184: .4byte 0x0000403c
_0806E188: .4byte gSaveBlock2Ptr
_0806E18C: .4byte 0x00000838
thumb_func_end sub_806E168
thumb_func_start sub_806E190
sub_806E190: @ 806E190
push {lr}
ldr r0, _0806E1B0 @ =0x0000403c
bl GetVarPointer
ldr r1, _0806E1B4 @ =gSaveBlock2Ptr
ldr r2, [r1]
movs r1, 0xDA
strb r1, [r2, 0x1A]
ldr r2, _0806E1B8 @ =0x00000302
adds r1, r2, 0
strh r1, [r0]
ldr r0, _0806E1BC @ =0x00000838
bl FlagSet
pop {r0}
bx r0
.align 2, 0
_0806E1B0: .4byte 0x0000403c
_0806E1B4: .4byte gSaveBlock2Ptr
_0806E1B8: .4byte 0x00000302
_0806E1BC: .4byte 0x00000838
thumb_func_end sub_806E190
thumb_func_start sub_806E1C0
sub_806E1C0: @ 806E1C0
push {lr}
ldr r0, _0806E1EC @ =gSaveBlock2Ptr
ldr r0, [r0]
ldrb r0, [r0, 0x1A]
cmp r0, 0xDA
bne _0806E1FC
ldr r0, _0806E1F0 @ =0x0000403c
bl VarGet
lsls r0, 16
ldr r1, _0806E1F4 @ =0x03020000
cmp r0, r1
bne _0806E1FC
ldr r0, _0806E1F8 @ =0x00000838
bl FlagGet
lsls r0, 24
cmp r0, 0
beq _0806E1FC
movs r0, 0x1
b _0806E1FE
.align 2, 0
_0806E1EC: .4byte gSaveBlock2Ptr
_0806E1F0: .4byte 0x0000403c
_0806E1F4: .4byte 0x03020000
_0806E1F8: .4byte 0x00000838
_0806E1FC:
movs r0, 0
_0806E1FE:
pop {r1}
bx r1
thumb_func_end sub_806E1C0
thumb_func_start sub_806E204
sub_806E204: @ 806E204
push {lr}
ldr r0, _0806E224 @ =0x0000404e
bl GetVarPointer
ldr r1, _0806E228 @ =gSaveBlock2Ptr
ldr r2, [r1]
movs r1, 0
strb r1, [r2, 0x1B]
strh r1, [r0]
movs r0, 0x84
lsls r0, 4
bl FlagClear
pop {r0}
bx r0
.align 2, 0
_0806E224: .4byte 0x0000404e
_0806E228: .4byte gSaveBlock2Ptr
thumb_func_end sub_806E204
thumb_func_start EnableNationalPokedex
EnableNationalPokedex: @ 806E22C
push {lr}
ldr r0, _0806E250 @ =0x0000404e
bl GetVarPointer
ldr r1, _0806E254 @ =gSaveBlock2Ptr
ldr r2, [r1]
movs r1, 0xB9
strb r1, [r2, 0x1B]
ldr r2, _0806E258 @ =0x00006258
adds r1, r2, 0
strh r1, [r0]
movs r0, 0x84
lsls r0, 4
bl FlagSet
pop {r0}
bx r0
.align 2, 0
_0806E250: .4byte 0x0000404e
_0806E254: .4byte gSaveBlock2Ptr
_0806E258: .4byte 0x00006258
thumb_func_end EnableNationalPokedex
thumb_func_start sub_806E25C
sub_806E25C: @ 806E25C
push {lr}
ldr r0, _0806E288 @ =gSaveBlock2Ptr
ldr r0, [r0]
ldrb r0, [r0, 0x1B]
cmp r0, 0xB9
bne _0806E294
ldr r0, _0806E28C @ =0x0000404e
bl VarGet
lsls r0, 16
ldr r1, _0806E290 @ =0x62580000
cmp r0, r1
bne _0806E294
movs r0, 0x84
lsls r0, 4
bl FlagGet
lsls r0, 24
cmp r0, 0
beq _0806E294
movs r0, 0x1
b _0806E296
.align 2, 0
_0806E288: .4byte gSaveBlock2Ptr
_0806E28C: .4byte 0x0000404e
_0806E290: .4byte 0x62580000
_0806E294:
movs r0, 0
_0806E296:
pop {r1}
bx r1
thumb_func_end sub_806E25C
thumb_func_start sub_806E29C
sub_806E29C: @ 806E29C
push {lr}
ldr r0, _0806E2A8 @ =0x00000839
bl FlagClear
pop {r0}
bx r0
.align 2, 0
_0806E2A8: .4byte 0x00000839
thumb_func_end sub_806E29C
thumb_func_start sub_806E2AC
sub_806E2AC: @ 806E2AC
push {lr}
ldr r0, _0806E2B8 @ =0x00000839
bl FlagSet
pop {r0}
bx r0
.align 2, 0
_0806E2B8: .4byte 0x00000839
thumb_func_end sub_806E2AC
thumb_func_start sub_806E2BC
sub_806E2BC: @ 806E2BC
push {lr}
ldr r0, _0806E2CC @ =0x00000839
bl FlagGet
lsls r0, 24
lsrs r0, 24
pop {r1}
bx r1
.align 2, 0
_0806E2CC: .4byte 0x00000839
thumb_func_end sub_806E2BC
thumb_func_start sub_806E2D0
sub_806E2D0: @ 806E2D0
push {lr}
movs r0, 0xF6
lsls r0, 2
bl FlagClear
ldr r0, _0806E340 @ =0x000003d9
bl FlagClear
ldr r0, _0806E344 @ =0x000003da
bl FlagClear
ldr r0, _0806E348 @ =0x000003db
bl FlagClear
movs r0, 0xF7
lsls r0, 2
bl FlagClear
ldr r0, _0806E34C @ =0x000003dd
bl FlagClear
ldr r0, _0806E350 @ =0x000003de
bl FlagClear
ldr r0, _0806E354 @ =0x000003df
bl FlagClear
movs r0, 0xF8
lsls r0, 2
bl FlagClear
ldr r0, _0806E358 @ =0x000003e1
bl FlagClear
ldr r0, _0806E35C @ =0x000003e2
bl FlagClear
ldr r0, _0806E360 @ =0x000003e3
bl FlagClear
movs r0, 0xF9
lsls r0, 2
bl FlagClear
ldr r0, _0806E364 @ =0x000003e5
bl FlagClear
ldr r0, _0806E368 @ =0x000003e6
bl FlagClear
ldr r0, _0806E36C @ =0x000003e7
bl FlagClear
pop {r0}
bx r0
.align 2, 0
_0806E340: .4byte 0x000003d9
_0806E344: .4byte 0x000003da
_0806E348: .4byte 0x000003db
_0806E34C: .4byte 0x000003dd
_0806E350: .4byte 0x000003de
_0806E354: .4byte 0x000003df
_0806E358: .4byte 0x000003e1
_0806E35C: .4byte 0x000003e2
_0806E360: .4byte 0x000003e3
_0806E364: .4byte 0x000003e5
_0806E368: .4byte 0x000003e6
_0806E36C: .4byte 0x000003e7
thumb_func_end sub_806E2D0
thumb_func_start sub_806E370
sub_806E370: @ 806E370
push {lr}
ldr r0, _0806E3C0 @ =0x000040b5
movs r1, 0
bl VarSet
ldr r0, _0806E3C4 @ =0x000040b6
movs r1, 0
bl VarSet
ldr r0, _0806E3C8 @ =0x000040b7
movs r1, 0
bl VarSet
ldr r0, _0806E3CC @ =0x000040b8
movs r1, 0
bl VarSet
ldr r0, _0806E3D0 @ =0x000040b9
movs r1, 0
bl VarSet
ldr r0, _0806E3D4 @ =0x000040ba
movs r1, 0
bl VarSet
ldr r0, _0806E3D8 @ =0x000040bb
movs r1, 0
bl VarSet
ldr r0, _0806E3DC @ =0x000040bc
movs r1, 0
bl VarSet
ldr r0, _0806E3E0 @ =0x00004024
movs r1, 0
bl VarSet
pop {r0}
bx r0
.align 2, 0
_0806E3C0: .4byte 0x000040b5
_0806E3C4: .4byte 0x000040b6
_0806E3C8: .4byte 0x000040b7
_0806E3CC: .4byte 0x000040b8
_0806E3D0: .4byte 0x000040b9
_0806E3D4: .4byte 0x000040ba
_0806E3D8: .4byte 0x000040bb
_0806E3DC: .4byte 0x000040bc
_0806E3E0: .4byte 0x00004024
thumb_func_end sub_806E370
thumb_func_start DisableResetRTC
DisableResetRTC: @ 806E3E4
push {lr}
ldr r0, _0806E3F8 @ =0x00004032
movs r1, 0
bl VarSet
ldr r0, _0806E3FC @ =0x00000837
bl FlagClear
pop {r0}
bx r0
.align 2, 0
_0806E3F8: .4byte 0x00004032
_0806E3FC: .4byte 0x00000837
thumb_func_end DisableResetRTC
thumb_func_start EnableResetRTC
EnableResetRTC: @ 806E400
push {lr}
ldr r0, _0806E418 @ =0x00004032
movs r1, 0x92
lsls r1, 4
bl VarSet
ldr r0, _0806E41C @ =0x00000837
bl FlagSet
pop {r0}
bx r0
.align 2, 0
_0806E418: .4byte 0x00004032
_0806E41C: .4byte 0x00000837
thumb_func_end EnableResetRTC
thumb_func_start CanResetRTC
CanResetRTC: @ 806E420
push {lr}
ldr r0, _0806E444 @ =0x00000837
bl FlagGet
lsls r0, 24
cmp r0, 0
beq _0806E44C
ldr r0, _0806E448 @ =0x00004032
bl VarGet
lsls r0, 16
movs r1, 0x92
lsls r1, 20
cmp r0, r1
bne _0806E44C
movs r0, 0x1
b _0806E44E
.align 2, 0
_0806E444: .4byte 0x00000837
_0806E448: .4byte 0x00004032
_0806E44C:
movs r0, 0
_0806E44E:
pop {r1}
bx r1
thumb_func_end CanResetRTC
thumb_func_start GetVarPointer
GetVarPointer: @ 806E454
push {r4-r6,lr}
lsls r0, 16
lsrs r4, r0, 16
adds r6, r4, 0
ldr r0, _0806E468 @ =0x00003fff
cmp r4, r0
bhi _0806E46C
movs r0, 0
b _0806E518
.align 2, 0
_0806E468: .4byte 0x00003fff
_0806E46C:
lsls r0, r4, 16
cmp r0, 0
blt _0806E50C
ldr r0, _0806E484 @ =gUnknown_3005E88
ldrb r0, [r0]
cmp r0, 0x1
beq _0806E488
cmp r0, 0x1
ble _0806E4EE
cmp r0, 0x2
beq _0806E4B8
b _0806E4EE
.align 2, 0
_0806E484: .4byte gUnknown_3005E88
_0806E488:
movs r0, 0
adds r1, r4, 0
bl sub_8112D40
adds r2, r0, 0
cmp r2, 0
beq _0806E4EE
ldr r0, _0806E4B0 @ =gSaveBlock1Ptr
ldr r1, [r0]
ldr r3, _0806E4B4 @ =0xffffc000
adds r0, r4, r3
lsls r0, 1
movs r3, 0x80
lsls r3, 5
adds r1, r3
adds r1, r0
ldrh r0, [r2]
strh r0, [r1]
b _0806E4EE
.align 2, 0
_0806E4B0: .4byte gSaveBlock1Ptr
_0806E4B4: .4byte 0xffffc000
_0806E4B8:
ldr r0, _0806E4FC @ =0xffffc000
adds r5, r4, r0
lsls r0, r5, 16
lsrs r0, 16
movs r1, 0x1
bl sub_806E528
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0806E4EE
ldr r0, _0806E500 @ =gUnknown_300507C
strh r5, [r0]
ldr r0, _0806E504 @ =gSaveBlock1Ptr
ldr r1, [r0]
ldr r2, _0806E4FC @ =0xffffc000
adds r0, r4, r2
lsls r0, 1
movs r3, 0x80
lsls r3, 5
adds r1, r3
adds r1, r0
ldrh r2, [r1]
movs r0, 0
adds r1, r4, 0
bl sub_8112DB0
_0806E4EE:
ldr r0, _0806E504 @ =gSaveBlock1Ptr
lsls r1, r6, 1
ldr r2, _0806E508 @ =0xffff9000
adds r1, r2
ldr r0, [r0]
adds r0, r1
b _0806E518
.align 2, 0
_0806E4FC: .4byte 0xffffc000
_0806E500: .4byte gUnknown_300507C
_0806E504: .4byte gSaveBlock1Ptr
_0806E508: .4byte 0xffff9000
_0806E50C:
ldr r0, _0806E520 @ =gSpecialVars
ldr r3, _0806E524 @ =0xffff8000
adds r1, r6, r3
lsls r1, 2
adds r1, r0
ldr r0, [r1]
_0806E518:
pop {r4-r6}
pop {r1}
bx r1
.align 2, 0
_0806E520: .4byte gSpecialVars
_0806E524: .4byte 0xffff8000
thumb_func_end GetVarPointer
thumb_func_start sub_806E528
sub_806E528: @ 806E528
push {lr}
lsls r0, 16
lsrs r2, r0, 16
adds r0, r2, 0
lsls r1, 24
cmp r1, 0
bne _0806E554
ldr r0, _0806E54C @ =0x0000022f
cmp r2, r0
bls _0806E548
ldr r1, _0806E550 @ =0xfffff800
adds r0, r2, r1
lsls r0, 16
lsrs r0, 16
cmp r0, 0x1F
bhi _0806E562
_0806E548:
movs r0, 0
b _0806E564
.align 2, 0
_0806E54C: .4byte 0x0000022f
_0806E550: .4byte 0xfffff800
_0806E554:
cmp r2, 0x2F
bls _0806E548
subs r0, 0x50
lsls r0, 16
lsrs r0, 16
cmp r0, 0x63
bls _0806E548
_0806E562:
movs r0, 0x1
_0806E564:
pop {r1}
bx r1
thumb_func_end sub_806E528
thumb_func_start VarGet
VarGet: @ 806E568
push {r4,lr}
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
bl GetVarPointer
cmp r0, 0
beq _0806E57C
ldrh r0, [r0]
b _0806E57E
_0806E57C:
adds r0, r4, 0
_0806E57E:
pop {r4}
pop {r1}
bx r1
thumb_func_end VarGet
thumb_func_start VarSet
VarSet: @ 806E584
push {r4,lr}
lsls r0, 16
lsrs r0, 16
lsls r1, 16
lsrs r4, r1, 16
bl GetVarPointer
cmp r0, 0
beq _0806E59C
strh r4, [r0]
movs r0, 0x1
b _0806E59E
_0806E59C:
movs r0, 0
_0806E59E:
pop {r4}
pop {r1}
bx r1
thumb_func_end VarSet
thumb_func_start VarGetFieldObjectGraphicsId
VarGetFieldObjectGraphicsId: @ 806E5A4
push {lr}
lsls r0, 24
lsrs r0, 8
ldr r1, _0806E5BC @ =0x40100000
adds r0, r1
lsrs r0, 16
bl VarGet
lsls r0, 24
lsrs r0, 24
pop {r1}
bx r1
.align 2, 0
_0806E5BC: .4byte 0x40100000
thumb_func_end VarGetFieldObjectGraphicsId
thumb_func_start sub_806E5C0
sub_806E5C0: @ 806E5C0
push {r4-r6,lr}
lsls r5, r0, 16
lsrs r4, r5, 16
adds r6, r4, 0
cmp r4, 0
bne _0806E5D0
movs r0, 0
b _0806E66E
_0806E5D0:
ldr r0, _0806E5E8 @ =0x00003fff
cmp r4, r0
bhi _0806E65C
ldr r0, _0806E5EC @ =gUnknown_3005E88
ldrb r0, [r0]
cmp r0, 0x1
beq _0806E5F0
cmp r0, 0x1
ble _0806E644
cmp r0, 0x2
beq _0806E618
b _0806E644
.align 2, 0
_0806E5E8: .4byte 0x00003fff
_0806E5EC: .4byte gUnknown_3005E88
_0806E5F0:
movs r0, 0x1
adds r1, r4, 0
bl sub_8112D40
adds r2, r0, 0
cmp r2, 0
beq _0806E644
ldr r0, _0806E614 @ =gSaveBlock1Ptr
ldr r0, [r0]
lsrs r1, r5, 19
movs r3, 0xEE
lsls r3, 4
adds r0, r3
adds r0, r1
ldrb r1, [r2]
strb r1, [r0]
b _0806E644
.align 2, 0
_0806E614: .4byte gSaveBlock1Ptr
_0806E618:
adds r0, r4, 0
movs r1, 0
bl sub_806E528
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0806E644
ldr r0, _0806E654 @ =gUnknown_300507C
strh r4, [r0]
ldr r0, _0806E658 @ =gSaveBlock1Ptr
ldr r0, [r0]
lsrs r1, r5, 19
movs r2, 0xEE
lsls r2, 4
adds r0, r2
adds r0, r1
ldrb r2, [r0]
movs r0, 0x1
adds r1, r4, 0
bl sub_8112DB0
_0806E644:
ldr r0, _0806E658 @ =gSaveBlock1Ptr
lsrs r1, r6, 3
movs r3, 0xEE
lsls r3, 4
adds r1, r3
ldr r0, [r0]
b _0806E66C
.align 2, 0
_0806E654: .4byte gUnknown_300507C
_0806E658: .4byte gSaveBlock1Ptr
_0806E65C:
ldr r1, _0806E674 @ =0xffffc000
adds r0, r6, r1
cmp r0, 0
bge _0806E668
ldr r2, _0806E678 @ =0xffffc007
adds r0, r6, r2
_0806E668:
asrs r0, 3
ldr r1, _0806E67C @ =gUnknown_20370E0
_0806E66C:
adds r0, r1
_0806E66E:
pop {r4-r6}
pop {r1}
bx r1
.align 2, 0
_0806E674: .4byte 0xffffc000
_0806E678: .4byte 0xffffc007
_0806E67C: .4byte gUnknown_20370E0
thumb_func_end sub_806E5C0
thumb_func_start FlagSet
FlagSet: @ 806E680
push {r4,lr}
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
bl sub_806E5C0
adds r2, r0, 0
cmp r2, 0
beq _0806E6A0
movs r0, 0x7
ands r0, r4
movs r1, 0x1
lsls r1, r0
ldrb r0, [r2]
orrs r1, r0
strb r1, [r2]
_0806E6A0:
movs r0, 0
pop {r4}
pop {r1}
bx r1
thumb_func_end FlagSet
thumb_func_start FlagClear
FlagClear: @ 806E6A8
push {r4,lr}
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
bl sub_806E5C0
adds r2, r0, 0
cmp r2, 0
beq _0806E6C8
movs r0, 0x7
ands r0, r4
movs r1, 0x1
lsls r1, r0
ldrb r0, [r2]
bics r0, r1
strb r0, [r2]
_0806E6C8:
movs r0, 0
pop {r4}
pop {r1}
bx r1
thumb_func_end FlagClear
thumb_func_start FlagGet
FlagGet: @ 806E6D0
push {r4,lr}
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
bl sub_806E5C0
cmp r0, 0
beq _0806E6F4
ldrb r0, [r0]
movs r1, 0x7
ands r1, r4
asrs r0, r1
movs r1, 0x1
ands r0, r1
cmp r0, 0
beq _0806E6F4
movs r0, 0x1
b _0806E6F6
_0806E6F4:
movs r0, 0
_0806E6F6:
pop {r4}
pop {r1}
bx r1
thumb_func_end FlagGet
thumb_func_start sub_806E6FC
sub_806E6FC: @ 806E6FC
ldr r1, _0806E754 @ =gSpecialVar_0x8000
movs r0, 0
strh r0, [r1]
ldr r1, _0806E758 @ =gSpecialVar_0x8001
strh r0, [r1]
ldr r1, _0806E75C @ =gSpecialVar_0x8002
strh r0, [r1]
ldr r1, _0806E760 @ =gSpecialVar_0x8003
strh r0, [r1]
ldr r1, _0806E764 @ =gSpecialVar_0x8004
strh r0, [r1]
ldr r1, _0806E768 @ =gSpecialVar_0x8005
strh r0, [r1]
ldr r1, _0806E76C @ =gSpecialVar_0x8006
strh r0, [r1]
ldr r1, _0806E770 @ =gSpecialVar_0x8007
strh r0, [r1]
ldr r1, _0806E774 @ =gSpecialVar_0x8008
strh r0, [r1]
ldr r1, _0806E778 @ =gSpecialVar_0x8009
strh r0, [r1]
ldr r1, _0806E77C @ =gSpecialVar_0x800A
strh r0, [r1]
ldr r1, _0806E780 @ =gSpecialVar_0x800B
strh r0, [r1]
ldr r1, _0806E784 @ =gSpecialVar_Facing
strh r0, [r1]
ldr r1, _0806E788 @ =gSpecialVar_Result
strh r0, [r1]
ldr r1, _0806E78C @ =gSpecialVar_ItemId
strh r0, [r1]
ldr r1, _0806E790 @ =gSpecialVar_LastTalked
strh r0, [r1]
ldr r1, _0806E794 @ =gSpecialVar_MonBoxId
strh r0, [r1]
ldr r1, _0806E798 @ =gSpecialVar_MonBoxPos
strh r0, [r1]
ldr r1, _0806E79C @ =gUnknown_20370DA
strh r0, [r1]
ldr r1, _0806E7A0 @ =gUnknown_20370DC
strh r0, [r1]
ldr r1, _0806E7A4 @ =gUnknown_20370DE
strh r0, [r1]
bx lr
.align 2, 0
_0806E754: .4byte gSpecialVar_0x8000
_0806E758: .4byte gSpecialVar_0x8001
_0806E75C: .4byte gSpecialVar_0x8002
_0806E760: .4byte gSpecialVar_0x8003
_0806E764: .4byte gSpecialVar_0x8004
_0806E768: .4byte gSpecialVar_0x8005
_0806E76C: .4byte gSpecialVar_0x8006
_0806E770: .4byte gSpecialVar_0x8007
_0806E774: .4byte gSpecialVar_0x8008
_0806E778: .4byte gSpecialVar_0x8009
_0806E77C: .4byte gSpecialVar_0x800A
_0806E780: .4byte gSpecialVar_0x800B
_0806E784: .4byte gSpecialVar_Facing
_0806E788: .4byte gSpecialVar_Result
_0806E78C: .4byte gSpecialVar_ItemId
_0806E790: .4byte gSpecialVar_LastTalked
_0806E794: .4byte gSpecialVar_MonBoxId
_0806E798: .4byte gSpecialVar_MonBoxPos
_0806E79C: .4byte gUnknown_20370DA
_0806E7A0: .4byte gUnknown_20370DC
_0806E7A4: .4byte gUnknown_20370DE
thumb_func_end sub_806E6FC
.align 2, 0 @ Don't pad with nop.