decompile script.c
This commit is contained in:
@@ -28,7 +28,7 @@ SONG_BUILDDIR = $(OBJ_DIR)/$(SONG_SUBDIR)
|
||||
ASFLAGS := -mcpu=arm7tdmi
|
||||
|
||||
CC1 := tools/agbcc/bin/agbcc
|
||||
override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Wunused -Werror -O2 -fhex-asm
|
||||
override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm
|
||||
|
||||
CPPFLAGS := -I tools/agbcc/include -iquote include -nostdinc -undef
|
||||
|
||||
|
||||
+4
-4
@@ -786,7 +786,7 @@ _0807FCA2:
|
||||
movs r0, 0x2
|
||||
b _0807FD88
|
||||
_0807FCB2:
|
||||
ldr r0, _0807FCC8 @ =gUnknown_2036DFC
|
||||
ldr r0, _0807FCC8 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
subs r0, 0x1
|
||||
cmp r0, 0x8
|
||||
@@ -797,7 +797,7 @@ _0807FCB2:
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_0807FCC8: .4byte gUnknown_2036DFC
|
||||
_0807FCC8: .4byte gMapHeader
|
||||
_0807FCCC: .4byte _0807FCD0
|
||||
.align 2, 0
|
||||
_0807FCD0:
|
||||
@@ -923,7 +923,7 @@ _0807FDC0:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0807FDE8
|
||||
ldr r0, _0807FDE0 @ =gUnknown_2036DFC
|
||||
ldr r0, _0807FDE0 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
cmp r0, 0x4
|
||||
beq _0807FDE4
|
||||
@@ -932,7 +932,7 @@ _0807FDC0:
|
||||
movs r0, 0
|
||||
b _0807FDEA
|
||||
.align 2, 0
|
||||
_0807FDE0: .4byte gUnknown_2036DFC
|
||||
_0807FDE0: .4byte gMapHeader
|
||||
_0807FDE4:
|
||||
movs r0, 0x1
|
||||
b _0807FDEA
|
||||
|
||||
+4
-4
@@ -521,7 +521,7 @@ sub_80BD460: @ 80BD460
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BD478
|
||||
ldr r0, _080BD47C @ =gUnknown_2036DFC
|
||||
ldr r0, _080BD47C @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
cmp r0, 0x8
|
||||
bne _080BD480
|
||||
@@ -529,7 +529,7 @@ _080BD478:
|
||||
movs r0, 0x1
|
||||
b _080BD482
|
||||
.align 2, 0
|
||||
_080BD47C: .4byte gUnknown_2036DFC
|
||||
_080BD47C: .4byte gMapHeader
|
||||
_080BD480:
|
||||
movs r0, 0
|
||||
_080BD482:
|
||||
@@ -542,7 +542,7 @@ sub_80BD488: @ 80BD488
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
ldr r0, _080BD4AC @ =gUnknown_2036DFC
|
||||
ldr r0, _080BD4AC @ =gMapHeader
|
||||
ldrb r1, [r0, 0x19]
|
||||
movs r0, 0x2
|
||||
ands r0, r1
|
||||
@@ -558,7 +558,7 @@ _080BD4A8:
|
||||
movs r0, 0x1
|
||||
b _080BD4B2
|
||||
.align 2, 0
|
||||
_080BD4AC: .4byte gUnknown_2036DFC
|
||||
_080BD4AC: .4byte gMapHeader
|
||||
_080BD4B0:
|
||||
movs r0, 0
|
||||
_080BD4B2:
|
||||
|
||||
+6
-6
@@ -136,14 +136,14 @@ DrawWholeMapView: @ 805A684
|
||||
ldrsh r0, [r1, r2]
|
||||
movs r2, 0x2
|
||||
ldrsh r1, [r1, r2]
|
||||
ldr r2, _0805A6A4 @ =gUnknown_2036DFC
|
||||
ldr r2, _0805A6A4 @ =gMapHeader
|
||||
ldr r2, [r2]
|
||||
bl DrawWholeMapViewInternal
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0805A6A0: .4byte gSaveBlock1Ptr
|
||||
_0805A6A4: .4byte gUnknown_2036DFC
|
||||
_0805A6A4: .4byte gMapHeader
|
||||
thumb_func_end DrawWholeMapView
|
||||
|
||||
thumb_func_start DrawWholeMapViewInternal
|
||||
@@ -224,7 +224,7 @@ RedrawMapSlicesForCameraUpdate: @ 805A72C
|
||||
adds r5, r0, 0
|
||||
adds r6, r1, 0
|
||||
adds r7, r2, 0
|
||||
ldr r0, _0805A774 @ =gUnknown_2036DFC
|
||||
ldr r0, _0805A774 @ =gMapHeader
|
||||
ldr r4, [r0]
|
||||
cmp r6, 0
|
||||
ble _0805A744
|
||||
@@ -256,7 +256,7 @@ _0805A768:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0805A774: .4byte gUnknown_2036DFC
|
||||
_0805A774: .4byte gMapHeader
|
||||
thumb_func_end RedrawMapSlicesForCameraUpdate
|
||||
|
||||
thumb_func_start RedrawMapSliceNorth
|
||||
@@ -474,7 +474,7 @@ CurrentMapDrawMetatileAt: @ 805A8E8
|
||||
adds r1, r0, 0
|
||||
cmp r1, 0
|
||||
blt _0805A90E
|
||||
ldr r0, _0805A918 @ =gUnknown_2036DFC
|
||||
ldr r0, _0805A918 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
@@ -487,7 +487,7 @@ _0805A90E:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0805A914: .4byte gUnknown_3000E90
|
||||
_0805A918: .4byte gUnknown_2036DFC
|
||||
_0805A918: .4byte gMapHeader
|
||||
thumb_func_end CurrentMapDrawMetatileAt
|
||||
|
||||
thumb_func_start sub_805A91C
|
||||
|
||||
+27
-27
@@ -352,7 +352,7 @@ sub_806CAC8: @ 806CAC8
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _0806CB6C
|
||||
bl sub_8069C74
|
||||
bl mapheader_run_first_tag2_script_list_match
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -1082,7 +1082,7 @@ sub_806D0E4: @ 806D0E4
|
||||
lsrs r7, r1, 24
|
||||
lsls r2, 24
|
||||
lsrs r6, r2, 24
|
||||
ldr r4, _0806D118 @ =gUnknown_2036DFC
|
||||
ldr r4, _0806D118 @ =gMapHeader
|
||||
ldrh r1, [r0]
|
||||
subs r1, 0x7
|
||||
lsls r1, 16
|
||||
@@ -1103,7 +1103,7 @@ sub_806D0E4: @ 806D0E4
|
||||
ldr r0, _0806D11C @ =gUnknown_81C555B
|
||||
b _0806D1E6
|
||||
.align 2, 0
|
||||
_0806D118: .4byte gUnknown_2036DFC
|
||||
_0806D118: .4byte gMapHeader
|
||||
_0806D11C: .4byte gUnknown_81C555B
|
||||
_0806D120:
|
||||
adds r0, r7, 0
|
||||
@@ -1746,7 +1746,7 @@ _0806D65A:
|
||||
thumb_func_start sub_806D660
|
||||
sub_806D660: @ 806D660
|
||||
push {r4,lr}
|
||||
ldr r4, _0806D688 @ =gUnknown_2036DFC
|
||||
ldr r4, _0806D688 @ =gMapHeader
|
||||
ldrh r1, [r0]
|
||||
subs r1, 0x7
|
||||
lsls r1, 16
|
||||
@@ -1764,7 +1764,7 @@ sub_806D660: @ 806D660
|
||||
movs r0, 0x1
|
||||
b _0806D68E
|
||||
.align 2, 0
|
||||
_0806D688: .4byte gUnknown_2036DFC
|
||||
_0806D688: .4byte gMapHeader
|
||||
_0806D68C:
|
||||
movs r0, 0
|
||||
_0806D68E:
|
||||
@@ -1916,7 +1916,7 @@ _0806D798: .4byte 0x00004022
|
||||
thumb_func_start overworld_poison_step
|
||||
overworld_poison_step: @ 806D79C
|
||||
push {r4,lr}
|
||||
ldr r0, _0806D7D8 @ =gUnknown_2036DFC
|
||||
ldr r0, _0806D7D8 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
cmp r0, 0x9
|
||||
beq _0806D7E0
|
||||
@@ -1943,7 +1943,7 @@ overworld_poison_step: @ 806D79C
|
||||
movs r0, 0x1
|
||||
b _0806D7E2
|
||||
.align 2, 0
|
||||
_0806D7D8: .4byte gUnknown_2036DFC
|
||||
_0806D7D8: .4byte gMapHeader
|
||||
_0806D7DC: .4byte 0x00004022
|
||||
_0806D7E0:
|
||||
movs r0, 0
|
||||
@@ -2128,7 +2128,7 @@ _0806D924: .4byte gUnknown_20370D4
|
||||
thumb_func_start sub_806D928
|
||||
sub_806D928: @ 806D928
|
||||
push {r4,lr}
|
||||
ldr r4, _0806D94C @ =gUnknown_2036DFC
|
||||
ldr r4, _0806D94C @ =gMapHeader
|
||||
ldrh r1, [r0]
|
||||
subs r1, 0x7
|
||||
lsls r1, 16
|
||||
@@ -2145,7 +2145,7 @@ sub_806D928: @ 806D928
|
||||
movs r0, 0
|
||||
b _0806D958
|
||||
.align 2, 0
|
||||
_0806D94C: .4byte gUnknown_2036DFC
|
||||
_0806D94C: .4byte gMapHeader
|
||||
_0806D950:
|
||||
ldr r0, [r0, 0x8]
|
||||
cmp r0, 0
|
||||
@@ -2173,7 +2173,7 @@ sub_806D964: @ 806D964
|
||||
lsls r2, 24
|
||||
lsrs r6, r2, 24
|
||||
mov r9, r6
|
||||
ldr r0, _0806D9B8 @ =gUnknown_2036DFC
|
||||
ldr r0, _0806D9B8 @ =gMapHeader
|
||||
mov r8, r0
|
||||
adds r1, r7, 0
|
||||
bl map_warp_check_packed
|
||||
@@ -2199,7 +2199,7 @@ sub_806D964: @ 806D964
|
||||
movs r0, 0x1
|
||||
b _0806DA02
|
||||
.align 2, 0
|
||||
_0806D9B8: .4byte gUnknown_2036DFC
|
||||
_0806D9B8: .4byte gMapHeader
|
||||
_0806D9BC:
|
||||
adds r0, r4, 0
|
||||
mov r1, r9
|
||||
@@ -2249,7 +2249,7 @@ sub_806DA10: @ 806DA10
|
||||
adds r6, r0, 0
|
||||
lsls r1, 16
|
||||
lsrs r5, r1, 16
|
||||
ldr r7, _0806DA68 @ =gUnknown_2036DFC
|
||||
ldr r7, _0806DA68 @ =gMapHeader
|
||||
adds r0, r7, 0
|
||||
adds r1, r6, 0
|
||||
bl map_warp_check_packed
|
||||
@@ -2283,7 +2283,7 @@ sub_806DA10: @ 806DA10
|
||||
movs r0, 0x1
|
||||
b _0806DAEE
|
||||
.align 2, 0
|
||||
_0806DA68: .4byte gUnknown_2036DFC
|
||||
_0806DA68: .4byte gMapHeader
|
||||
_0806DA6C:
|
||||
adds r0, r4, 0
|
||||
bl sub_805A158
|
||||
@@ -2542,7 +2542,7 @@ map_warp_check_packed: @ 806DC30
|
||||
sub_806DC54: @ 806DC54
|
||||
push {r4-r7,lr}
|
||||
adds r5, r2, 0
|
||||
ldr r0, _0806DC74 @ =gUnknown_2036DFC
|
||||
ldr r0, _0806DC74 @ =gMapHeader
|
||||
ldr r0, [r0, 0x4]
|
||||
lsls r1, 24
|
||||
asrs r7, r1, 24
|
||||
@@ -2556,7 +2556,7 @@ sub_806DC54: @ 806DC54
|
||||
bl copy_saved_warp2_bank_and_enter_x_to_warp1
|
||||
b _0806DCC4
|
||||
.align 2, 0
|
||||
_0806DC74: .4byte gUnknown_2036DFC
|
||||
_0806DC74: .4byte gMapHeader
|
||||
_0806DC78:
|
||||
movs r0, 0x7
|
||||
ldrsb r0, [r4, r0]
|
||||
@@ -2617,7 +2617,7 @@ sub_806DCD0: @ 806DCD0
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _0806DD30
|
||||
ldr r7, _0806DD2C @ =gUnknown_2036DFC
|
||||
ldr r7, _0806DD2C @ =gMapHeader
|
||||
adds r0, r7, 0
|
||||
adds r1, r6, 0
|
||||
bl map_warp_check_packed
|
||||
@@ -2642,7 +2642,7 @@ sub_806DCD0: @ 806DCD0
|
||||
movs r0, 0x1
|
||||
b _0806DD32
|
||||
.align 2, 0
|
||||
_0806DD2C: .4byte gUnknown_2036DFC
|
||||
_0806DD2C: .4byte gMapHeader
|
||||
_0806DD30:
|
||||
movs r0, 0
|
||||
_0806DD32:
|
||||
@@ -2831,7 +2831,7 @@ sub_806DE70: @ 806DE70
|
||||
push {r4-r7,lr}
|
||||
lsls r0, 16
|
||||
lsls r1, 16
|
||||
ldr r2, _0806DEC0 @ =gUnknown_2036DFC
|
||||
ldr r2, _0806DEC0 @ =gMapHeader
|
||||
ldr r2, [r2, 0x4]
|
||||
ldr r4, [r2, 0xC]
|
||||
ldrb r5, [r2, 0x2]
|
||||
@@ -2867,13 +2867,13 @@ _0806DEB8:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0806DEC0: .4byte gUnknown_2036DFC
|
||||
_0806DEC0: .4byte gMapHeader
|
||||
thumb_func_end sub_806DE70
|
||||
|
||||
thumb_func_start sub_806DEC4
|
||||
sub_806DEC4: @ 806DEC4
|
||||
push {r4,lr}
|
||||
ldr r4, _0806DEE8 @ =gUnknown_2036DFC
|
||||
ldr r4, _0806DEE8 @ =gMapHeader
|
||||
ldrh r1, [r0]
|
||||
subs r1, 0x7
|
||||
lsls r1, 16
|
||||
@@ -2889,7 +2889,7 @@ sub_806DEC4: @ 806DEC4
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806DEE8: .4byte gUnknown_2036DFC
|
||||
_0806DEE8: .4byte gMapHeader
|
||||
thumb_func_end sub_806DEC4
|
||||
|
||||
thumb_func_start FindInvisibleMapObjectByPosition
|
||||
@@ -2946,7 +2946,7 @@ dive_warp: @ 806DF3C
|
||||
adds r4, r0, 0
|
||||
lsls r1, 16
|
||||
lsrs r5, r1, 16
|
||||
ldr r0, _0806DF70 @ =gUnknown_2036DFC
|
||||
ldr r0, _0806DF70 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
cmp r0, 0x5
|
||||
bne _0806DF74
|
||||
@@ -2967,7 +2967,7 @@ dive_warp: @ 806DF3C
|
||||
bl sub_8055824
|
||||
b _0806DF98
|
||||
.align 2, 0
|
||||
_0806DF70: .4byte gUnknown_2036DFC
|
||||
_0806DF70: .4byte gMapHeader
|
||||
_0806DF74:
|
||||
lsls r0, r5, 24
|
||||
lsrs r0, 24
|
||||
@@ -3020,7 +3020,7 @@ sub_806DFB8: @ 806DFB8
|
||||
bl sub_8058F78
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
ldr r0, _0806E010 @ =gUnknown_2036DFC
|
||||
ldr r0, _0806E010 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
cmp r0, 0x5
|
||||
bne _0806E014
|
||||
@@ -3046,7 +3046,7 @@ sub_806DFB8: @ 806DFB8
|
||||
movs r0, 0x1
|
||||
b _0806E046
|
||||
.align 2, 0
|
||||
_0806E010: .4byte gUnknown_2036DFC
|
||||
_0806E010: .4byte gMapHeader
|
||||
_0806E014:
|
||||
adds r0, r5, 0
|
||||
bl sub_8059FB0
|
||||
@@ -3122,7 +3122,7 @@ SetCableClubWarp: @ 806E08C
|
||||
movs r2, 0x2
|
||||
ldrsh r1, [r4, r2]
|
||||
bl sub_8058F78
|
||||
ldr r4, _0806E0CC @ =gUnknown_2036DFC
|
||||
ldr r4, _0806E0CC @ =gMapHeader
|
||||
adds r0, r4, 0
|
||||
mov r1, sp
|
||||
bl map_warp_check_packed
|
||||
@@ -3138,7 +3138,7 @@ SetCableClubWarp: @ 806E08C
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806E0CC: .4byte gUnknown_2036DFC
|
||||
_0806E0CC: .4byte gMapHeader
|
||||
thumb_func_end SetCableClubWarp
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
|
||||
@@ -137,7 +137,7 @@ sub_807DC18: @ 807DC18
|
||||
push {r4,lr}
|
||||
bl warp1_get_mapheader
|
||||
adds r4, r0, 0
|
||||
ldr r1, _0807DC54 @ =gUnknown_2036DFC
|
||||
ldr r1, _0807DC54 @ =gMapHeader
|
||||
ldrb r0, [r4, 0x14]
|
||||
ldrb r1, [r1, 0x14]
|
||||
cmp r0, r1
|
||||
@@ -161,7 +161,7 @@ _0807DC36:
|
||||
beq _0807DC62
|
||||
b _0807DC6A
|
||||
.align 2, 0
|
||||
_0807DC54: .4byte gUnknown_2036DFC
|
||||
_0807DC54: .4byte gMapHeader
|
||||
_0807DC58:
|
||||
movs r0, 0x1
|
||||
movs r1, 0
|
||||
|
||||
+6
-6
@@ -771,13 +771,13 @@ sub_805E3A0: @ 805E3A0
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
ldr r0, _0805E3B8 @ =gUnknown_2036DFC
|
||||
ldr r0, _0805E3B8 @ =gMapHeader
|
||||
ldr r0, [r0, 0x4]
|
||||
cmp r0, 0
|
||||
bne _0805E3CE
|
||||
b _0805E404
|
||||
.align 2, 0
|
||||
_0805E3B8: .4byte gUnknown_2036DFC
|
||||
_0805E3B8: .4byte gMapHeader
|
||||
_0805E3BC:
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r0, 0x5]
|
||||
@@ -1903,7 +1903,7 @@ sub_805EC30: @ 805EC30
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
str r1, [sp, 0x8]
|
||||
ldr r0, _0805ED08 @ =gUnknown_2036DFC
|
||||
ldr r0, _0805ED08 @ =gMapHeader
|
||||
ldr r3, [r0, 0x4]
|
||||
cmp r3, 0
|
||||
beq _0805ECF8
|
||||
@@ -2001,7 +2001,7 @@ _0805ECF8:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0805ED08: .4byte gUnknown_2036DFC
|
||||
_0805ED08: .4byte gMapHeader
|
||||
_0805ED0C: .4byte gSaveBlock1Ptr
|
||||
thumb_func_end sub_805EC30
|
||||
|
||||
@@ -4285,12 +4285,12 @@ GetFieldObjectTemplateByLocalIdAndMap: @ 805FD5C
|
||||
movs r0, 0x8E
|
||||
lsls r0, 4
|
||||
adds r1, r0
|
||||
ldr r0, _0805FD90 @ =gUnknown_2036DFC
|
||||
ldr r0, _0805FD90 @ =gMapHeader
|
||||
ldr r0, [r0, 0x4]
|
||||
b _0805FDA0
|
||||
.align 2, 0
|
||||
_0805FD8C: .4byte gSaveBlock1Ptr
|
||||
_0805FD90: .4byte gUnknown_2036DFC
|
||||
_0805FD90: .4byte gMapHeader
|
||||
_0805FD94:
|
||||
adds r0, r2, 0
|
||||
adds r1, r3, 0
|
||||
|
||||
+2
-2
@@ -2811,7 +2811,7 @@ sub_807B140: @ 807B140
|
||||
ldr r0, [r4]
|
||||
adds r0, 0x2E
|
||||
ldrb r5, [r0]
|
||||
ldr r0, _0807B170 @ =gUnknown_2036DFC
|
||||
ldr r0, _0807B170 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x16]
|
||||
bl TranslateWeatherNum
|
||||
ldr r1, [r4]
|
||||
@@ -2827,7 +2827,7 @@ sub_807B140: @ 807B140
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807B16C: .4byte gSaveBlock1Ptr
|
||||
_0807B170: .4byte gUnknown_2036DFC
|
||||
_0807B170: .4byte gMapHeader
|
||||
thumb_func_end sub_807B140
|
||||
|
||||
thumb_func_start SetWeather
|
||||
|
||||
+24
-24
@@ -19,26 +19,26 @@ mapconnection_get_mapheader: @ 80589C4
|
||||
thumb_func_start not_trainer_hill_battle_pyramid
|
||||
not_trainer_hill_battle_pyramid: @ 80589D4
|
||||
push {lr}
|
||||
ldr r0, _080589E4 @ =gUnknown_2036DFC
|
||||
ldr r0, _080589E4 @ =gMapHeader
|
||||
bl sub_8058A00
|
||||
bl mapheader_run_script_with_tag_x1
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080589E4: .4byte gUnknown_2036DFC
|
||||
_080589E4: .4byte gMapHeader
|
||||
thumb_func_end not_trainer_hill_battle_pyramid
|
||||
|
||||
thumb_func_start sub_80589E8
|
||||
sub_80589E8: @ 80589E8
|
||||
push {lr}
|
||||
ldr r0, _080589FC @ =gUnknown_2036DFC
|
||||
ldr r0, _080589FC @ =gMapHeader
|
||||
bl sub_8058A00
|
||||
bl sub_80591C4
|
||||
bl mapheader_run_script_with_tag_x1
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080589FC: .4byte gUnknown_2036DFC
|
||||
_080589FC: .4byte gMapHeader
|
||||
thumb_func_end sub_80589E8
|
||||
|
||||
thumb_func_start sub_8058A00
|
||||
@@ -519,7 +519,7 @@ MapGridGetZCoordAt: @ 8058D44
|
||||
.align 2, 0
|
||||
_08058D70: .4byte gUnknown_3005040
|
||||
_08058D74:
|
||||
ldr r0, _08058DB4 @ =gUnknown_2036DFC
|
||||
ldr r0, _08058DB4 @ =gMapHeader
|
||||
ldr r6, [r0]
|
||||
subs r0, r2, 0x7
|
||||
ldrb r5, [r6, 0x18]
|
||||
@@ -550,7 +550,7 @@ _08058DA8:
|
||||
lsrs r0, r1, 12
|
||||
b _08058DBE
|
||||
.align 2, 0
|
||||
_08058DB4: .4byte gUnknown_2036DFC
|
||||
_08058DB4: .4byte gMapHeader
|
||||
_08058DB8: .4byte 0x000003ff
|
||||
_08058DBC:
|
||||
movs r0, 0
|
||||
@@ -587,7 +587,7 @@ sub_8058DC4: @ 8058DC4
|
||||
.align 2, 0
|
||||
_08058DF0: .4byte gUnknown_3005040
|
||||
_08058DF4:
|
||||
ldr r0, _08058E38 @ =gUnknown_2036DFC
|
||||
ldr r0, _08058E38 @ =gMapHeader
|
||||
ldr r6, [r0]
|
||||
subs r0, r2, 0x7
|
||||
ldrb r5, [r6, 0x18]
|
||||
@@ -621,7 +621,7 @@ _08058E28:
|
||||
lsrs r0, r1, 10
|
||||
b _08058E42
|
||||
.align 2, 0
|
||||
_08058E38: .4byte gUnknown_2036DFC
|
||||
_08058E38: .4byte gMapHeader
|
||||
_08058E3C: .4byte 0x000003ff
|
||||
_08058E40:
|
||||
movs r0, 0x1
|
||||
@@ -662,7 +662,7 @@ sub_8058E48: @ 8058E48
|
||||
.align 2, 0
|
||||
_08058E7C: .4byte gUnknown_3005040
|
||||
_08058E80:
|
||||
ldr r0, _08058EC8 @ =gUnknown_2036DFC
|
||||
ldr r0, _08058EC8 @ =gMapHeader
|
||||
ldr r6, [r0]
|
||||
mov r0, r8
|
||||
subs r0, 0x7
|
||||
@@ -697,10 +697,10 @@ _08058EBA:
|
||||
adds r0, r7, 0
|
||||
b _08058F0A
|
||||
.align 2, 0
|
||||
_08058EC8: .4byte gUnknown_2036DFC
|
||||
_08058EC8: .4byte gMapHeader
|
||||
_08058ECC: .4byte 0x000003ff
|
||||
_08058ED0:
|
||||
ldr r0, _08058F18 @ =gUnknown_2036DFC
|
||||
ldr r0, _08058F18 @ =gMapHeader
|
||||
ldr r6, [r0]
|
||||
mov r0, r8
|
||||
subs r0, 0x7
|
||||
@@ -735,7 +735,7 @@ _08058F0A:
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08058F18: .4byte gUnknown_2036DFC
|
||||
_08058F18: .4byte gMapHeader
|
||||
thumb_func_end sub_8058E48
|
||||
|
||||
thumb_func_start sub_8058F1C
|
||||
@@ -778,7 +778,7 @@ sub_8058F48: @ 8058F48
|
||||
adds r1, r0, 0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
ldr r0, _08058F74 @ =gUnknown_2036DFC
|
||||
ldr r0, _08058F74 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
adds r2, r4, 0
|
||||
bl sub_8059080
|
||||
@@ -786,7 +786,7 @@ sub_8058F48: @ 8058F48
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08058F74: .4byte gUnknown_2036DFC
|
||||
_08058F74: .4byte gMapHeader
|
||||
thumb_func_end sub_8058F48
|
||||
|
||||
thumb_func_start sub_8058F78
|
||||
@@ -1346,7 +1346,7 @@ sub_8059334: @ 8059334
|
||||
_0805936C: .4byte gUnknown_3005040
|
||||
_08059370: .4byte 0x000003ff
|
||||
_08059374:
|
||||
ldr r0, _080593CC @ =gUnknown_2036DFC
|
||||
ldr r0, _080593CC @ =gMapHeader
|
||||
ldr r6, [r0]
|
||||
subs r0, r7, 0x7
|
||||
ldrb r5, [r6, 0x18]
|
||||
@@ -1389,7 +1389,7 @@ _080593B0:
|
||||
movs r0, 0x4
|
||||
b _08059432
|
||||
.align 2, 0
|
||||
_080593CC: .4byte gUnknown_2036DFC
|
||||
_080593CC: .4byte gMapHeader
|
||||
_080593D0: .4byte 0x000003ff
|
||||
_080593D4: .4byte gUnknown_3005040
|
||||
_080593D8: .4byte gUnknown_2036E24
|
||||
@@ -1696,7 +1696,7 @@ sub_8059600: @ 8059600
|
||||
mov r8, r2
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r0, _0805963C @ =gUnknown_2036DFC
|
||||
ldr r0, _0805963C @ =gMapHeader
|
||||
ldr r0, [r0, 0xC]
|
||||
ldr r7, [r0]
|
||||
ldr r4, [r0, 0x4]
|
||||
@@ -1719,7 +1719,7 @@ _0805961E:
|
||||
adds r0, r4, 0
|
||||
b _0805964A
|
||||
.align 2, 0
|
||||
_0805963C: .4byte gUnknown_2036DFC
|
||||
_0805963C: .4byte gMapHeader
|
||||
_08059640:
|
||||
adds r5, 0x1
|
||||
adds r4, 0xC
|
||||
@@ -1754,7 +1754,7 @@ sub_8059658: @ 8059658
|
||||
blt _080596B0
|
||||
cmp r4, 0x2
|
||||
bgt _08059690
|
||||
ldr r0, _0805968C @ =gUnknown_2036DFC
|
||||
ldr r0, _0805968C @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
ldr r1, [r0]
|
||||
ldr r0, [r2]
|
||||
@@ -1763,11 +1763,11 @@ sub_8059658: @ 8059658
|
||||
adds r0, r7, 0
|
||||
b _080596A2
|
||||
.align 2, 0
|
||||
_0805968C: .4byte gUnknown_2036DFC
|
||||
_0805968C: .4byte gMapHeader
|
||||
_08059690:
|
||||
cmp r6, 0x4
|
||||
bgt _080596B0
|
||||
ldr r0, _080596AC @ =gUnknown_2036DFC
|
||||
ldr r0, _080596AC @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
ldr r1, [r0, 0x4]
|
||||
ldr r0, [r2]
|
||||
@@ -1780,7 +1780,7 @@ _080596A2:
|
||||
lsrs r0, 24
|
||||
b _080596B2
|
||||
.align 2, 0
|
||||
_080596AC: .4byte gUnknown_2036DFC
|
||||
_080596AC: .4byte gMapHeader
|
||||
_080596B0:
|
||||
movs r0, 0
|
||||
_080596B2:
|
||||
@@ -1884,13 +1884,13 @@ sub_805973C: @ 805973C
|
||||
mov r8, r0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
ldr r2, _0805975C @ =gUnknown_2036DFC
|
||||
ldr r2, _0805975C @ =gMapHeader
|
||||
ldr r0, [r2, 0xC]
|
||||
cmp r0, 0
|
||||
bne _08059764
|
||||
b _080597DA
|
||||
.align 2, 0
|
||||
_0805975C: .4byte gUnknown_2036DFC
|
||||
_0805975C: .4byte gMapHeader
|
||||
_08059760:
|
||||
adds r0, r4, 0
|
||||
b _080597DC
|
||||
|
||||
+4
-4
@@ -8,7 +8,7 @@
|
||||
thumb_func_start sub_80C9B2C
|
||||
sub_80C9B2C: @ 80C9B2C
|
||||
push {lr}
|
||||
ldr r0, _080C9B54 @ =gUnknown_2036DFC
|
||||
ldr r0, _080C9B54 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x15]
|
||||
cmp r0, 0x1
|
||||
bne _080C9B6C
|
||||
@@ -26,7 +26,7 @@ sub_80C9B2C: @ 80C9B2C
|
||||
movs r0, 0x1
|
||||
b _080C9B6E
|
||||
.align 2, 0
|
||||
_080C9B54: .4byte gUnknown_2036DFC
|
||||
_080C9B54: .4byte gMapHeader
|
||||
_080C9B58: .4byte 0x00000806
|
||||
_080C9B5C: .4byte gUnknown_3005024
|
||||
_080C9B60: .4byte hm_add_c3_launch_phase_2
|
||||
@@ -214,7 +214,7 @@ sub_80C9CE8: @ 80C9CE8
|
||||
lsrs r6, r0, 24
|
||||
movs r4, 0
|
||||
bl sub_80561B4
|
||||
ldr r5, _080C9D24 @ =gUnknown_2036DFC
|
||||
ldr r5, _080C9D24 @ =gMapHeader
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldrb r1, [r5, 0x14]
|
||||
@@ -230,7 +230,7 @@ sub_80C9CE8: @ 80C9CE8
|
||||
movs r0, 0x1
|
||||
b _080C9D70
|
||||
.align 2, 0
|
||||
_080C9D24: .4byte gUnknown_2036DFC
|
||||
_080C9D24: .4byte gMapHeader
|
||||
_080C9D28:
|
||||
adds r0, r3, 0x4
|
||||
adds r0, r2, r0
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
thumb_func_start SetUpFieldMove_Teleport
|
||||
SetUpFieldMove_Teleport: @ 80F66F0
|
||||
push {lr}
|
||||
ldr r0, _080F6708 @ =gUnknown_2036DFC
|
||||
ldr r0, _080F6708 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
bl is_light_level_1_2_3_or_6
|
||||
lsls r0, 24
|
||||
@@ -18,7 +18,7 @@ SetUpFieldMove_Teleport: @ 80F66F0
|
||||
movs r0, 0
|
||||
b _080F671A
|
||||
.align 2, 0
|
||||
_080F6708: .4byte gUnknown_2036DFC
|
||||
_080F6708: .4byte gMapHeader
|
||||
_080F670C:
|
||||
ldr r1, _080F6720 @ =gUnknown_3005024
|
||||
ldr r0, _080F6724 @ =hm_add_c3_launch_phase_2
|
||||
|
||||
@@ -251,7 +251,7 @@ _0812B376:
|
||||
bl sub_812B1F0
|
||||
b _0812B406
|
||||
_0812B388:
|
||||
ldr r0, _0812B3B0 @ =gUnknown_2036DFC
|
||||
ldr r0, _0812B3B0 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
bl is_light_level_8_or_9
|
||||
lsls r0, 24
|
||||
@@ -271,7 +271,7 @@ _0812B3A8:
|
||||
bl sub_812B1F0
|
||||
b _0812B406
|
||||
.align 2, 0
|
||||
_0812B3B0: .4byte gUnknown_2036DFC
|
||||
_0812B3B0: .4byte gMapHeader
|
||||
_0812B3B4: .4byte gSaveBlock1Ptr
|
||||
_0812B3B8:
|
||||
movs r0, 0xC1
|
||||
|
||||
+2
-2
@@ -1530,7 +1530,7 @@ _0809A86E:
|
||||
bl Alloc
|
||||
adds r4, r0, 0
|
||||
strh r5, [r4]
|
||||
ldr r0, _0809A8A0 @ =gUnknown_2036DFC
|
||||
ldr r0, _0809A8A0 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x14]
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0x28
|
||||
@@ -1546,7 +1546,7 @@ _0809A88C:
|
||||
_0809A894: .4byte 0xfea30000
|
||||
_0809A898: .4byte 0x00000169
|
||||
_0809A89C: .4byte gSaveBlock1Ptr
|
||||
_0809A8A0: .4byte gUnknown_2036DFC
|
||||
_0809A8A0: .4byte gMapHeader
|
||||
thumb_func_end sub_809A824
|
||||
|
||||
thumb_func_start SanitizeItemId
|
||||
|
||||
+6
-6
@@ -1500,7 +1500,7 @@ _080A1B88: .4byte sub_810A1F8
|
||||
thumb_func_start sub_80A1B8C
|
||||
sub_80A1B8C: @ 80A1B8C
|
||||
push {lr}
|
||||
ldr r0, _080A1BA0 @ =gUnknown_2036DFC
|
||||
ldr r0, _080A1BA0 @ =gMapHeader
|
||||
ldrb r1, [r0, 0x19]
|
||||
movs r0, 0x1
|
||||
ands r0, r1
|
||||
@@ -1509,7 +1509,7 @@ sub_80A1B8C: @ 80A1B8C
|
||||
movs r0, 0
|
||||
b _080A1BA6
|
||||
.align 2, 0
|
||||
_080A1BA0: .4byte gUnknown_2036DFC
|
||||
_080A1BA0: .4byte gMapHeader
|
||||
_080A1BA4:
|
||||
movs r0, 0x1
|
||||
_080A1BA6:
|
||||
@@ -1529,7 +1529,7 @@ ItemUseOutOfBattle_EscapeRope: @ 80A1BAC
|
||||
bne _080A1BEC
|
||||
ldr r0, _080A1BDC @ =gUnknown_203AD30
|
||||
ldrh r2, [r0]
|
||||
ldr r0, _080A1BE0 @ =gUnknown_2036DFC
|
||||
ldr r0, _080A1BE0 @ =gMapHeader
|
||||
ldrb r3, [r0, 0x14]
|
||||
movs r0, 0x4
|
||||
movs r1, 0
|
||||
@@ -1542,7 +1542,7 @@ ItemUseOutOfBattle_EscapeRope: @ 80A1BAC
|
||||
b _080A1BFE
|
||||
.align 2, 0
|
||||
_080A1BDC: .4byte gUnknown_203AD30
|
||||
_080A1BE0: .4byte gUnknown_2036DFC
|
||||
_080A1BE0: .4byte gMapHeader
|
||||
_080A1BE4: .4byte gUnknown_2039998
|
||||
_080A1BE8: .4byte sub_80A1C08
|
||||
_080A1BEC:
|
||||
@@ -1769,7 +1769,7 @@ sub_80A1D9C: @ 80A1D9C
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
ldr r0, _080A1DE8 @ =gUnknown_2036DFC
|
||||
ldr r0, _080A1DE8 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
cmp r0, 0x3
|
||||
beq _080A1DB2
|
||||
@@ -1805,7 +1805,7 @@ _080A1DD2:
|
||||
bl sub_80A1110
|
||||
b _080A1E00
|
||||
.align 2, 0
|
||||
_080A1DE8: .4byte gUnknown_2036DFC
|
||||
_080A1DE8: .4byte gMapHeader
|
||||
_080A1DEC: .4byte gSaveBlock1Ptr
|
||||
_080A1DF0: .4byte gUnknown_3005090
|
||||
_080A1DF4:
|
||||
|
||||
+8
-8
@@ -11,7 +11,7 @@ sub_813EC8C: @ 813EC8C
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
movs r2, 0
|
||||
ldr r7, _0813ECE0 @ =gUnknown_2036DFC
|
||||
ldr r7, _0813ECE0 @ =gMapHeader
|
||||
lsls r1, r4, 2
|
||||
adds r0, r1, r4
|
||||
lsls r3, r0, 3
|
||||
@@ -48,7 +48,7 @@ _0813ECA2:
|
||||
str r0, [r1]
|
||||
b _0813ED08
|
||||
.align 2, 0
|
||||
_0813ECE0: .4byte gUnknown_2036DFC
|
||||
_0813ECE0: .4byte gMapHeader
|
||||
_0813ECE4: .4byte gUnknown_3005098
|
||||
_0813ECE8: .4byte gUnknown_3005090
|
||||
_0813ECEC: .4byte sub_813EDB0
|
||||
@@ -557,12 +557,12 @@ _0813F0AC:
|
||||
subs r0, r5, r0
|
||||
lsls r0, 16
|
||||
lsrs r1, r0, 16
|
||||
ldr r0, _0813F0C0 @ =gUnknown_2036DFC
|
||||
ldr r0, _0813F0C0 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x4]
|
||||
b _0813F0DE
|
||||
.align 2, 0
|
||||
_0813F0C0: .4byte gUnknown_2036DFC
|
||||
_0813F0C0: .4byte gMapHeader
|
||||
_0813F0C4:
|
||||
ldr r0, [r3]
|
||||
ldr r0, [r0]
|
||||
@@ -570,7 +570,7 @@ _0813F0C4:
|
||||
adds r0, r5
|
||||
b _0813F0D8
|
||||
_0813F0CE:
|
||||
ldr r0, _0813F0E8 @ =gUnknown_2036DFC
|
||||
ldr r0, _0813F0E8 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0]
|
||||
adds r0, 0x7
|
||||
@@ -587,7 +587,7 @@ _0813F0E2:
|
||||
lsrs r2, r0, 16
|
||||
b _0813F0F0
|
||||
.align 2, 0
|
||||
_0813F0E8: .4byte gUnknown_2036DFC
|
||||
_0813F0E8: .4byte gMapHeader
|
||||
_0813F0EC:
|
||||
movs r0, 0
|
||||
b _0813F102
|
||||
@@ -617,7 +617,7 @@ sub_813F108: @ 813F108
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
str r0, [sp, 0x4]
|
||||
ldr r0, _0813F21C @ =gUnknown_2036DFC
|
||||
ldr r0, _0813F21C @ =gMapHeader
|
||||
ldr r1, [r0]
|
||||
ldr r0, [r1]
|
||||
adds r0, 0x7
|
||||
@@ -749,7 +749,7 @@ _0813F20C:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0813F21C: .4byte gUnknown_2036DFC
|
||||
_0813F21C: .4byte gMapHeader
|
||||
thumb_func_end sub_813F108
|
||||
|
||||
thumb_func_start sub_813F220
|
||||
|
||||
@@ -298,7 +298,7 @@ sub_8098340: @ 8098340
|
||||
str r0, [sp]
|
||||
str r1, [sp, 0x4]
|
||||
movs r6, 0x1D
|
||||
ldr r0, _0809837C @ =gUnknown_2036DFC
|
||||
ldr r0, _0809837C @ =gMapHeader
|
||||
ldrb r0, [r0, 0x1A]
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
@@ -318,7 +318,7 @@ sub_8098340: @ 8098340
|
||||
b _08098396
|
||||
.align 2, 0
|
||||
_08098378: .4byte gUnknown_83D4164
|
||||
_0809837C: .4byte gUnknown_2036DFC
|
||||
_0809837C: .4byte gMapHeader
|
||||
_08098380: .4byte 0x00ffffff
|
||||
_08098384:
|
||||
ldr r2, [sp]
|
||||
@@ -384,7 +384,7 @@ sub_8098400: @ 8098400
|
||||
lsls r0, 16
|
||||
lsrs r6, r0, 16
|
||||
movs r5, 0x70
|
||||
ldr r4, _08098478 @ =gUnknown_2036DFC
|
||||
ldr r4, _08098478 @ =gMapHeader
|
||||
ldrb r1, [r4, 0x14]
|
||||
add r0, sp, 0xC
|
||||
movs r2, 0
|
||||
@@ -435,7 +435,7 @@ _08098434:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08098478: .4byte gUnknown_2036DFC
|
||||
_08098478: .4byte gMapHeader
|
||||
thumb_func_end sub_8098400
|
||||
|
||||
thumb_func_start sub_809847C
|
||||
|
||||
@@ -78,7 +78,7 @@ _080DA878: .4byte 0x081dbd34
|
||||
RunMysteryEventScriptCommand: @ 80DA87C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_8069804
|
||||
bl RunScriptCommand
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080DA894
|
||||
|
||||
+72
-72
@@ -445,7 +445,7 @@ sub_8054F68: @ 8054F68
|
||||
movs r0, 0
|
||||
mov r9, r0
|
||||
mov r8, r0
|
||||
ldr r1, _08055040 @ =gUnknown_2036DFC
|
||||
ldr r1, _08055040 @ =gMapHeader
|
||||
ldr r0, [r1, 0x4]
|
||||
ldrb r0, [r0]
|
||||
cmp r9, r0
|
||||
@@ -455,7 +455,7 @@ _08054F86:
|
||||
ldr r2, _08055044 @ =gSaveBlock1Ptr
|
||||
mov r10, r2
|
||||
_08054F8A:
|
||||
ldr r3, _08055040 @ =gUnknown_2036DFC
|
||||
ldr r3, _08055040 @ =gMapHeader
|
||||
ldr r0, [r3, 0x4]
|
||||
ldr r1, [r0, 0x4]
|
||||
mov r4, r9
|
||||
@@ -498,7 +498,7 @@ _08054F8A:
|
||||
mov r6, r10
|
||||
ldr r1, [r6]
|
||||
adds r1, r3
|
||||
ldr r2, _08055040 @ =gUnknown_2036DFC
|
||||
ldr r2, _08055040 @ =gMapHeader
|
||||
ldr r0, [r2, 0x4]
|
||||
ldr r0, [r0, 0x4]
|
||||
adds r0, r7, r0
|
||||
@@ -516,7 +516,7 @@ _08054F8A:
|
||||
ldr r6, _08055048 @ =0x000008e4
|
||||
adds r0, r1, r6
|
||||
strh r2, [r0]
|
||||
ldr r2, _08055040 @ =gUnknown_2036DFC
|
||||
ldr r2, _08055040 @ =gMapHeader
|
||||
ldr r0, [r2, 0x4]
|
||||
ldr r0, [r0, 0x4]
|
||||
adds r0, r7, r0
|
||||
@@ -546,7 +546,7 @@ _08054F8A:
|
||||
strb r1, [r0]
|
||||
b _08055072
|
||||
.align 2, 0
|
||||
_08055040: .4byte gUnknown_2036DFC
|
||||
_08055040: .4byte gMapHeader
|
||||
_08055044: .4byte gSaveBlock1Ptr
|
||||
_08055048: .4byte 0x000008e4
|
||||
_0805504C: .4byte 0x000008ec
|
||||
@@ -578,7 +578,7 @@ _08055072:
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r9, r0
|
||||
ldr r6, _080550A4 @ =gUnknown_2036DFC
|
||||
ldr r6, _080550A4 @ =gMapHeader
|
||||
ldr r0, [r6, 0x4]
|
||||
ldrb r0, [r0]
|
||||
cmp r9, r0
|
||||
@@ -594,13 +594,13 @@ _08055092:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080550A4: .4byte gUnknown_2036DFC
|
||||
_080550A4: .4byte gMapHeader
|
||||
thumb_func_end sub_8054F68
|
||||
|
||||
thumb_func_start sub_80550A8
|
||||
sub_80550A8: @ 80550A8
|
||||
push {lr}
|
||||
ldr r0, _080550D0 @ =gUnknown_2036DFC
|
||||
ldr r0, _080550D0 @ =gMapHeader
|
||||
ldr r1, [r0, 0x4]
|
||||
ldr r0, _080550D4 @ =gSaveBlock1Ptr
|
||||
ldr r0, [r0]
|
||||
@@ -620,7 +620,7 @@ _080550BC:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080550D0: .4byte gUnknown_2036DFC
|
||||
_080550D0: .4byte gMapHeader
|
||||
_080550D4: .4byte gSaveBlock1Ptr
|
||||
thumb_func_end sub_80550A8
|
||||
|
||||
@@ -695,7 +695,7 @@ _08055140:
|
||||
mapdata_load_assets_to_gpu_and_full_redraw: @ 8055148
|
||||
push {r4,lr}
|
||||
bl move_tilemap_camera_to_upper_left_corner
|
||||
ldr r4, _0805516C @ =gUnknown_2036DFC
|
||||
ldr r4, _0805516C @ =gMapHeader
|
||||
ldr r0, [r4]
|
||||
bl copy_map_tileset1_tileset2_to_vram
|
||||
ldr r0, [r4]
|
||||
@@ -706,7 +706,7 @@ mapdata_load_assets_to_gpu_and_full_redraw: @ 8055148
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0805516C: .4byte gUnknown_2036DFC
|
||||
_0805516C: .4byte gMapHeader
|
||||
thumb_func_end mapdata_load_assets_to_gpu_and_full_redraw
|
||||
|
||||
thumb_func_start get_mapdata_header
|
||||
@@ -860,7 +860,7 @@ _08055270: .4byte gUnknown_2031DBC
|
||||
thumb_func_start set_current_map_header_from_sav1_save_old_name
|
||||
set_current_map_header_from_sav1_save_old_name: @ 8055274
|
||||
push {r4-r6,lr}
|
||||
ldr r4, _080552B4 @ =gUnknown_2036DFC
|
||||
ldr r4, _080552B4 @ =gMapHeader
|
||||
ldr r5, _080552B8 @ =gSaveBlock1Ptr
|
||||
ldr r1, [r5]
|
||||
movs r0, 0x4
|
||||
@@ -889,14 +889,14 @@ set_current_map_header_from_sav1_save_old_name: @ 8055274
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080552B4: .4byte gUnknown_2036DFC
|
||||
_080552B4: .4byte gMapHeader
|
||||
_080552B8: .4byte gSaveBlock1Ptr
|
||||
thumb_func_end set_current_map_header_from_sav1_save_old_name
|
||||
|
||||
thumb_func_start set_current_map_header_from_sav1
|
||||
set_current_map_header_from_sav1: @ 80552BC
|
||||
push {r4,r5,lr}
|
||||
ldr r4, _080552F4 @ =gUnknown_2036DFC
|
||||
ldr r4, _080552F4 @ =gMapHeader
|
||||
ldr r0, _080552F8 @ =gSaveBlock1Ptr
|
||||
ldr r1, [r0]
|
||||
movs r0, 0x4
|
||||
@@ -922,7 +922,7 @@ set_current_map_header_from_sav1: @ 80552BC
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080552F4: .4byte gUnknown_2036DFC
|
||||
_080552F4: .4byte gMapHeader
|
||||
_080552F8: .4byte gSaveBlock1Ptr
|
||||
thumb_func_end set_current_map_header_from_sav1
|
||||
|
||||
@@ -936,7 +936,7 @@ update_camera_pos_from_warpid: @ 80552FC
|
||||
adds r4, r0, 0
|
||||
cmp r1, 0
|
||||
blt _08055334
|
||||
ldr r3, _08055330 @ =gUnknown_2036DFC
|
||||
ldr r3, _08055330 @ =gMapHeader
|
||||
ldr r0, [r3, 0x4]
|
||||
ldrb r5, [r0, 0x1]
|
||||
cmp r1, r5
|
||||
@@ -954,7 +954,7 @@ update_camera_pos_from_warpid: @ 80552FC
|
||||
b _0805536C
|
||||
.align 2, 0
|
||||
_0805532C: .4byte gSaveBlock1Ptr
|
||||
_08055330: .4byte gUnknown_2036DFC
|
||||
_08055330: .4byte gMapHeader
|
||||
_08055334:
|
||||
ldr r1, [r4]
|
||||
ldrh r3, [r1, 0x8]
|
||||
@@ -972,7 +972,7 @@ _08055334:
|
||||
b _0805536C
|
||||
_08055350:
|
||||
ldr r3, [r4]
|
||||
ldr r2, _08055374 @ =gUnknown_2036DFC
|
||||
ldr r2, _08055374 @ =gMapHeader
|
||||
ldr r0, [r2]
|
||||
ldr r0, [r0]
|
||||
lsrs r1, r0, 31
|
||||
@@ -990,7 +990,7 @@ _0805536C:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08055374: .4byte gUnknown_2036DFC
|
||||
_08055374: .4byte gMapHeader
|
||||
thumb_func_end update_camera_pos_from_warpid
|
||||
|
||||
thumb_func_start warp_in
|
||||
@@ -1569,7 +1569,7 @@ GetMapConnection: @ 805578C
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
ldr r0, _080557A0 @ =gUnknown_2036DFC
|
||||
ldr r0, _080557A0 @ =gMapHeader
|
||||
ldr r0, [r0, 0xC]
|
||||
ldr r3, [r0]
|
||||
ldr r1, [r0, 0x4]
|
||||
@@ -1577,7 +1577,7 @@ GetMapConnection: @ 805578C
|
||||
bne _080557A8
|
||||
b _080557BC
|
||||
.align 2, 0
|
||||
_080557A0: .4byte gUnknown_2036DFC
|
||||
_080557A0: .4byte gMapHeader
|
||||
_080557A4:
|
||||
adds r0, r1, 0
|
||||
b _080557BE
|
||||
@@ -1719,7 +1719,7 @@ sub_8055864: @ 8055864
|
||||
bl mapheader_run_script_with_tag_x3
|
||||
bl sub_815D8F8
|
||||
bl not_trainer_hill_battle_pyramid
|
||||
ldr r4, _0805591C @ =gUnknown_2036DFC
|
||||
ldr r4, _0805591C @ =gMapHeader
|
||||
ldr r0, [r4]
|
||||
bl copy_map_tileset2_to_vram_2
|
||||
ldr r0, [r4]
|
||||
@@ -1740,7 +1740,7 @@ _080558D4:
|
||||
bl wild_encounter_reset_coro_args
|
||||
bl mapheader_run_script_with_tag_x5
|
||||
bl sub_80561B4
|
||||
ldr r1, _0805591C @ =gUnknown_2036DFC
|
||||
ldr r1, _0805591C @ =gMapHeader
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldrb r1, [r1, 0x14]
|
||||
@@ -1754,7 +1754,7 @@ _08055914:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0805591C: .4byte gUnknown_2036DFC
|
||||
_0805591C: .4byte gMapHeader
|
||||
thumb_func_end sub_8055864
|
||||
|
||||
thumb_func_start sub_8055920
|
||||
@@ -1762,7 +1762,7 @@ sub_8055920: @ 8055920
|
||||
push {r4,lr}
|
||||
bl set_current_map_header_from_sav1_save_old_name
|
||||
bl sub_8054F68
|
||||
ldr r0, _0805599C @ =gUnknown_2036DFC
|
||||
ldr r0, _0805599C @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
bl is_light_level_1_2_3_5_or_6
|
||||
adds r4, r0, 0
|
||||
@@ -1803,7 +1803,7 @@ _08055974:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0805599C: .4byte gUnknown_2036DFC
|
||||
_0805599C: .4byte gMapHeader
|
||||
_080559A0: .4byte gSaveBlock1Ptr
|
||||
_080559A4: .4byte 0x00000806
|
||||
thumb_func_end sub_8055920
|
||||
@@ -1813,7 +1813,7 @@ sub_80559A8: @ 80559A8
|
||||
push {lr}
|
||||
bl set_current_map_header_from_sav1_save_old_name
|
||||
bl sub_8054F68
|
||||
ldr r0, _080559E0 @ =gUnknown_2036DFC
|
||||
ldr r0, _080559E0 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
bl is_light_level_1_2_3_5_or_6
|
||||
bl TrySetMapSaveWarpStatus
|
||||
@@ -1827,7 +1827,7 @@ sub_80559A8: @ 80559A8
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080559E0: .4byte gUnknown_2036DFC
|
||||
_080559E0: .4byte gMapHeader
|
||||
thumb_func_end sub_80559A8
|
||||
|
||||
thumb_func_start sub_80559E4
|
||||
@@ -2202,14 +2202,14 @@ _08055C98: .4byte gSaveBlock1Ptr
|
||||
thumb_func_start sub_8055C9C
|
||||
sub_8055C9C: @ 8055C9C
|
||||
push {lr}
|
||||
ldr r0, _08055CAC @ =gUnknown_2036DFC
|
||||
ldr r0, _08055CAC @ =gMapHeader
|
||||
ldrb r0, [r0, 0x18]
|
||||
cmp r0, 0
|
||||
beq _08055CB0
|
||||
movs r0, 0x1
|
||||
b _08055CB2
|
||||
.align 2, 0
|
||||
_08055CAC: .4byte gUnknown_2036DFC
|
||||
_08055CAC: .4byte gMapHeader
|
||||
_08055CB0:
|
||||
movs r0, 0
|
||||
_08055CB2:
|
||||
@@ -2220,7 +2220,7 @@ _08055CB2:
|
||||
thumb_func_start sub_8055CB8
|
||||
sub_8055CB8: @ 8055CB8
|
||||
push {lr}
|
||||
ldr r0, _08055CC8 @ =gUnknown_2036DFC
|
||||
ldr r0, _08055CC8 @ =gMapHeader
|
||||
ldrb r1, [r0, 0x15]
|
||||
cmp r1, 0
|
||||
bne _08055CD0
|
||||
@@ -2228,7 +2228,7 @@ sub_8055CB8: @ 8055CB8
|
||||
ldr r0, [r0]
|
||||
b _08055CF8
|
||||
.align 2, 0
|
||||
_08055CC8: .4byte gUnknown_2036DFC
|
||||
_08055CC8: .4byte gMapHeader
|
||||
_08055CCC: .4byte gSaveBlock1Ptr
|
||||
_08055CD0:
|
||||
ldr r0, _08055CE8 @ =0x00000806
|
||||
@@ -2302,13 +2302,13 @@ sub_8055D40: @ 8055D40
|
||||
ldr r1, [r1]
|
||||
strh r0, [r1, 0x32]
|
||||
bl get_mapdata_header
|
||||
ldr r1, _08055D58 @ =gUnknown_2036DFC
|
||||
ldr r1, _08055D58 @ =gMapHeader
|
||||
str r0, [r1]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08055D54: .4byte gSaveBlock1Ptr
|
||||
_08055D58: .4byte gUnknown_2036DFC
|
||||
_08055D58: .4byte gMapHeader
|
||||
thumb_func_end sub_8055D40
|
||||
|
||||
thumb_func_start sub_8055D5C
|
||||
@@ -2834,7 +2834,7 @@ sub_8056124: @ 8056124
|
||||
cmp r1, r0
|
||||
bne _08056150
|
||||
_08056138:
|
||||
ldr r0, _0805614C @ =gUnknown_2036DFC
|
||||
ldr r0, _0805614C @ =gMapHeader
|
||||
ldrb r0, [r0, 0x14]
|
||||
cmp r0, 0x84
|
||||
beq _08056148
|
||||
@@ -2846,7 +2846,7 @@ _08056148:
|
||||
movs r0, 0
|
||||
b _08056152
|
||||
.align 2, 0
|
||||
_0805614C: .4byte gUnknown_2036DFC
|
||||
_0805614C: .4byte gMapHeader
|
||||
_08056150:
|
||||
movs r0, 0x1
|
||||
_08056152:
|
||||
@@ -3817,7 +3817,7 @@ _08056914: .4byte sub_807DF7C
|
||||
thumb_func_start sub_8056918
|
||||
sub_8056918: @ 8056918
|
||||
push {lr}
|
||||
ldr r0, _08056934 @ =gUnknown_2036DFC
|
||||
ldr r0, _08056934 @ =gMapHeader
|
||||
ldrb r1, [r0, 0x19]
|
||||
movs r0, 0xFC
|
||||
ands r0, r1
|
||||
@@ -3830,7 +3830,7 @@ _0805692C:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08056934: .4byte gUnknown_2036DFC
|
||||
_08056934: .4byte gMapHeader
|
||||
thumb_func_end sub_8056918
|
||||
|
||||
thumb_func_start sub_8056938
|
||||
@@ -4022,31 +4022,31 @@ _08056AEE:
|
||||
bl move_tilemap_camera_to_upper_left_corner
|
||||
b _08056B62
|
||||
_08056AF4:
|
||||
ldr r0, _08056B00 @ =gUnknown_2036DFC
|
||||
ldr r0, _08056B00 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A54
|
||||
b _08056B62
|
||||
.align 2, 0
|
||||
_08056B00: .4byte gUnknown_2036DFC
|
||||
_08056B00: .4byte gMapHeader
|
||||
_08056B04:
|
||||
ldr r0, _08056B10 @ =gUnknown_2036DFC
|
||||
ldr r0, _08056B10 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A68
|
||||
b _08056B62
|
||||
.align 2, 0
|
||||
_08056B10: .4byte gUnknown_2036DFC
|
||||
_08056B10: .4byte gMapHeader
|
||||
_08056B14:
|
||||
bl free_temp_tile_data_buffers_if_possible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _08056B6E
|
||||
ldr r0, _08056B2C @ =gUnknown_2036DFC
|
||||
ldr r0, _08056B2C @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl apply_map_tileset1_tileset2_palette
|
||||
b _08056B62
|
||||
.align 2, 0
|
||||
_08056B2C: .4byte gUnknown_2036DFC
|
||||
_08056B2C: .4byte gMapHeader
|
||||
_08056B30:
|
||||
bl DrawWholeMapView
|
||||
b _08056B62
|
||||
@@ -4164,31 +4164,31 @@ _08056C2A:
|
||||
bl move_tilemap_camera_to_upper_left_corner
|
||||
b _08056CCA
|
||||
_08056C30:
|
||||
ldr r0, _08056C3C @ =gUnknown_2036DFC
|
||||
ldr r0, _08056C3C @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A54
|
||||
b _08056CCA
|
||||
.align 2, 0
|
||||
_08056C3C: .4byte gUnknown_2036DFC
|
||||
_08056C3C: .4byte gMapHeader
|
||||
_08056C40:
|
||||
ldr r0, _08056C4C @ =gUnknown_2036DFC
|
||||
ldr r0, _08056C4C @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A68
|
||||
b _08056CCA
|
||||
.align 2, 0
|
||||
_08056C4C: .4byte gUnknown_2036DFC
|
||||
_08056C4C: .4byte gMapHeader
|
||||
_08056C50:
|
||||
bl free_temp_tile_data_buffers_if_possible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _08056CD0
|
||||
ldr r0, _08056C68 @ =gUnknown_2036DFC
|
||||
ldr r0, _08056C68 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl apply_map_tileset1_tileset2_palette
|
||||
b _08056CCA
|
||||
.align 2, 0
|
||||
_08056C68: .4byte gUnknown_2036DFC
|
||||
_08056C68: .4byte gMapHeader
|
||||
_08056C6C:
|
||||
bl DrawWholeMapView
|
||||
b _08056CCA
|
||||
@@ -4197,7 +4197,7 @@ _08056C72:
|
||||
b _08056CCA
|
||||
_08056C78:
|
||||
bl sub_80561B4
|
||||
ldr r5, _08056CA4 @ =gUnknown_2036DFC
|
||||
ldr r5, _08056CA4 @ =gMapHeader
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldrb r1, [r5, 0x14]
|
||||
@@ -4214,9 +4214,9 @@ _08056C78:
|
||||
bl sub_80F8268
|
||||
b _08056CCA
|
||||
.align 2, 0
|
||||
_08056CA4: .4byte gUnknown_2036DFC
|
||||
_08056CA4: .4byte gMapHeader
|
||||
_08056CA8:
|
||||
ldr r0, _08056CBC @ =gUnknown_2036DFC
|
||||
ldr r0, _08056CBC @ =gMapHeader
|
||||
ldrb r1, [r0, 0x19]
|
||||
movs r0, 0xFC
|
||||
ands r0, r1
|
||||
@@ -4226,7 +4226,7 @@ _08056CA8:
|
||||
bl sub_8098110
|
||||
b _08056CCA
|
||||
.align 2, 0
|
||||
_08056CBC: .4byte gUnknown_2036DFC
|
||||
_08056CBC: .4byte gMapHeader
|
||||
_08056CC0:
|
||||
bl map_post_load_hook_exec
|
||||
lsls r0, 24
|
||||
@@ -4353,31 +4353,31 @@ _08056DCA:
|
||||
bl move_tilemap_camera_to_upper_left_corner
|
||||
b _08056E3E
|
||||
_08056DD0:
|
||||
ldr r0, _08056DDC @ =gUnknown_2036DFC
|
||||
ldr r0, _08056DDC @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A54
|
||||
b _08056E3E
|
||||
.align 2, 0
|
||||
_08056DDC: .4byte gUnknown_2036DFC
|
||||
_08056DDC: .4byte gMapHeader
|
||||
_08056DE0:
|
||||
ldr r0, _08056DEC @ =gUnknown_2036DFC
|
||||
ldr r0, _08056DEC @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A68
|
||||
b _08056E3E
|
||||
.align 2, 0
|
||||
_08056DEC: .4byte gUnknown_2036DFC
|
||||
_08056DEC: .4byte gMapHeader
|
||||
_08056DF0:
|
||||
bl free_temp_tile_data_buffers_if_possible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _08056E54
|
||||
ldr r0, _08056E08 @ =gUnknown_2036DFC
|
||||
ldr r0, _08056E08 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl apply_map_tileset1_tileset2_palette
|
||||
b _08056E3E
|
||||
.align 2, 0
|
||||
_08056E08: .4byte gUnknown_2036DFC
|
||||
_08056E08: .4byte gMapHeader
|
||||
_08056E0C:
|
||||
bl DrawWholeMapView
|
||||
b _08056E3E
|
||||
@@ -5064,31 +5064,31 @@ _080573C2:
|
||||
bl move_tilemap_camera_to_upper_left_corner
|
||||
b _08057412
|
||||
_080573C8:
|
||||
ldr r0, _080573D4 @ =gUnknown_2036DFC
|
||||
ldr r0, _080573D4 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A54
|
||||
b _08057412
|
||||
.align 2, 0
|
||||
_080573D4: .4byte gUnknown_2036DFC
|
||||
_080573D4: .4byte gMapHeader
|
||||
_080573D8:
|
||||
ldr r0, _080573E4 @ =gUnknown_2036DFC
|
||||
ldr r0, _080573E4 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A68
|
||||
b _08057412
|
||||
.align 2, 0
|
||||
_080573E4: .4byte gUnknown_2036DFC
|
||||
_080573E4: .4byte gMapHeader
|
||||
_080573E8:
|
||||
bl free_temp_tile_data_buffers_if_possible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _08057428
|
||||
ldr r0, _08057400 @ =gUnknown_2036DFC
|
||||
ldr r0, _08057400 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl apply_map_tileset1_tileset2_palette
|
||||
b _08057412
|
||||
.align 2, 0
|
||||
_08057400: .4byte gUnknown_2036DFC
|
||||
_08057400: .4byte gMapHeader
|
||||
_08057404:
|
||||
bl DrawWholeMapView
|
||||
b _08057412
|
||||
@@ -5413,31 +5413,31 @@ _080576CC:
|
||||
bl move_tilemap_camera_to_upper_left_corner
|
||||
b _0805772A
|
||||
_080576D2:
|
||||
ldr r0, _080576DC @ =gUnknown_2036DFC
|
||||
ldr r0, _080576DC @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A54
|
||||
b _0805772A
|
||||
.align 2, 0
|
||||
_080576DC: .4byte gUnknown_2036DFC
|
||||
_080576DC: .4byte gMapHeader
|
||||
_080576E0:
|
||||
ldr r0, _080576EC @ =gUnknown_2036DFC
|
||||
ldr r0, _080576EC @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl sub_8059A68
|
||||
b _0805772A
|
||||
.align 2, 0
|
||||
_080576EC: .4byte gUnknown_2036DFC
|
||||
_080576EC: .4byte gMapHeader
|
||||
_080576F0:
|
||||
bl free_temp_tile_data_buffers_if_possible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _08057740
|
||||
ldr r0, _08057708 @ =gUnknown_2036DFC
|
||||
ldr r0, _08057708 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
bl apply_map_tileset1_tileset2_palette
|
||||
b _0805772A
|
||||
.align 2, 0
|
||||
_08057708: .4byte gUnknown_2036DFC
|
||||
_08057708: .4byte gMapHeader
|
||||
_0805770C:
|
||||
bl DrawWholeMapView
|
||||
b _0805772A
|
||||
|
||||
+4
-4
@@ -12205,7 +12205,7 @@ _08124A82:
|
||||
thumb_func_start sub_8124A8C
|
||||
sub_8124A8C: @ 8124A8C
|
||||
push {lr}
|
||||
ldr r0, _08124AA4 @ =gUnknown_2036DFC
|
||||
ldr r0, _08124AA4 @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
bl is_light_level_1_2_3_or_6
|
||||
lsls r0, 24
|
||||
@@ -12215,7 +12215,7 @@ sub_8124A8C: @ 8124A8C
|
||||
movs r0, 0
|
||||
b _08124AAA
|
||||
.align 2, 0
|
||||
_08124AA4: .4byte gUnknown_2036DFC
|
||||
_08124AA4: .4byte gMapHeader
|
||||
_08124AA8:
|
||||
movs r0, 0x1
|
||||
_08124AAA:
|
||||
@@ -12390,7 +12390,7 @@ _08124BDA:
|
||||
.align 2, 0
|
||||
_08124BF8: .4byte gSaveBlock1Ptr
|
||||
_08124BFC:
|
||||
ldr r0, _08124C18 @ =gUnknown_2036DFC
|
||||
ldr r0, _08124C18 @ =gMapHeader
|
||||
_08124BFE:
|
||||
ldrb r0, [r0, 0x14]
|
||||
_08124C00:
|
||||
@@ -12404,7 +12404,7 @@ _08124C00:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08124C18: .4byte gUnknown_2036DFC
|
||||
_08124C18: .4byte gMapHeader
|
||||
thumb_func_end sub_8124BB0
|
||||
|
||||
thumb_func_start sub_8124C1C
|
||||
|
||||
+4
-4
@@ -3046,7 +3046,7 @@ sub_8111FCC: @ 8111FCC
|
||||
cmp r0, 0x40
|
||||
beq _0811200E
|
||||
ldr r0, _08112030 @ =gStringVar1
|
||||
ldr r1, _08112034 @ =gUnknown_2036DFC
|
||||
ldr r1, _08112034 @ =gMapHeader
|
||||
ldrb r1, [r1, 0x14]
|
||||
bl sub_80C4DF8
|
||||
ldr r0, _08112038 @ =gStringVar4
|
||||
@@ -3069,7 +3069,7 @@ _08112024: .4byte gUnknown_3005090
|
||||
_08112028: .4byte gUnknown_2037AB8
|
||||
_0811202C: .4byte gUnknown_203AE94
|
||||
_08112030: .4byte gStringVar1
|
||||
_08112034: .4byte gUnknown_2036DFC
|
||||
_08112034: .4byte gMapHeader
|
||||
_08112038: .4byte gStringVar4
|
||||
_0811203C: .4byte gUnknown_841B073
|
||||
_08112040: .4byte sub_8112044
|
||||
@@ -10263,7 +10263,7 @@ sub_8115798: @ 8115798
|
||||
ldrb r0, [r4]
|
||||
cmp r0, 0
|
||||
beq _081157C6
|
||||
ldr r0, _081157D8 @ =gUnknown_2036DFC
|
||||
ldr r0, _081157D8 @ =gMapHeader
|
||||
ldrb r1, [r0, 0x14]
|
||||
mov r0, sp
|
||||
strh r1, [r0]
|
||||
@@ -10280,7 +10280,7 @@ _081157C6:
|
||||
.align 2, 0
|
||||
_081157D0: .4byte gUnknown_203ADFA
|
||||
_081157D4: .4byte gUnknown_203B049
|
||||
_081157D8: .4byte gUnknown_2036DFC
|
||||
_081157D8: .4byte gMapHeader
|
||||
thumb_func_end sub_8115798
|
||||
|
||||
thumb_func_start sub_81157DC
|
||||
|
||||
+6
-6
@@ -291,7 +291,7 @@ _080C0022:
|
||||
_080C0058:
|
||||
movs r7, 0
|
||||
movs r1, 0
|
||||
ldr r2, _080C00B8 @ =gUnknown_2036DFC
|
||||
ldr r2, _080C00B8 @ =gMapHeader
|
||||
ldrb r0, [r2, 0x14]
|
||||
ldr r3, _080C00A4 @ =gUnknown_20399D4
|
||||
mov r8, r3
|
||||
@@ -332,7 +332,7 @@ _080C00A8: .4byte 0x00004797
|
||||
_080C00AC: .4byte gUnknown_83F1B00
|
||||
_080C00B0: .4byte 0x00004796
|
||||
_080C00B4: .4byte 0x00000845
|
||||
_080C00B8: .4byte gUnknown_2036DFC
|
||||
_080C00B8: .4byte gMapHeader
|
||||
_080C00BC: .4byte gUnknown_83F1AA4
|
||||
_080C00C0:
|
||||
adds r0, r3, 0x1
|
||||
@@ -7445,7 +7445,7 @@ _080C3B60:
|
||||
_080C3B84:
|
||||
ldr r0, _080C3BA0 @ =gUnknown_20399E4
|
||||
ldr r2, [r0]
|
||||
ldr r1, _080C3BA4 @ =gUnknown_2036DFC
|
||||
ldr r1, _080C3BA4 @ =gMapHeader
|
||||
ldrb r0, [r1, 0x14]
|
||||
strh r0, [r2, 0x14]
|
||||
ldr r0, [r1]
|
||||
@@ -7459,7 +7459,7 @@ _080C3B84:
|
||||
b _080C3C9A
|
||||
.align 2, 0
|
||||
_080C3BA0: .4byte gUnknown_20399E4
|
||||
_080C3BA4: .4byte gUnknown_2036DFC
|
||||
_080C3BA4: .4byte gMapHeader
|
||||
_080C3BA8: .4byte gSaveBlock1Ptr
|
||||
_080C3BAC:
|
||||
ldr r4, _080C3BE8 @ =gSaveBlock1Ptr
|
||||
@@ -7526,7 +7526,7 @@ _080C3C28: .4byte gUnknown_20399E4
|
||||
_080C3C2C:
|
||||
ldr r4, _080C3C5C @ =gUnknown_20399E4
|
||||
ldr r0, [r4]
|
||||
ldr r1, _080C3C60 @ =gUnknown_2036DFC
|
||||
ldr r1, _080C3C60 @ =gMapHeader
|
||||
ldrb r1, [r1, 0x14]
|
||||
strh r1, [r0, 0x14]
|
||||
cmp r1, 0xC4
|
||||
@@ -7548,7 +7548,7 @@ _080C3C2C:
|
||||
b _080C3C8E
|
||||
.align 2, 0
|
||||
_080C3C5C: .4byte gUnknown_20399E4
|
||||
_080C3C60: .4byte gUnknown_2036DFC
|
||||
_080C3C60: .4byte gMapHeader
|
||||
_080C3C64: .4byte gSaveBlock1Ptr
|
||||
_080C3C68:
|
||||
ldr r0, _080C3D30 @ =gSaveBlock1Ptr
|
||||
|
||||
+2
-2
@@ -93,7 +93,7 @@ task08_080C9820: @ 80C9820
|
||||
cmp r0, 0
|
||||
beq _080C98A2
|
||||
_080C9856:
|
||||
ldr r0, _080C987C @ =gUnknown_2036DFC
|
||||
ldr r0, _080C987C @ =gMapHeader
|
||||
ldrb r0, [r0, 0x17]
|
||||
cmp r0, 0x5
|
||||
bne _080C9888
|
||||
@@ -109,7 +109,7 @@ _080C9856:
|
||||
.align 2, 0
|
||||
_080C9874: .4byte gUnknown_2037078
|
||||
_080C9878: .4byte gUnknown_2036E38
|
||||
_080C987C: .4byte gUnknown_2036DFC
|
||||
_080C987C: .4byte gMapHeader
|
||||
_080C9880: .4byte gUnknown_3005090
|
||||
_080C9884: .4byte sub_80C98FC
|
||||
_080C9888:
|
||||
|
||||
@@ -105,13 +105,13 @@ _080F8076:
|
||||
.align 2, 0
|
||||
_080F8094: .4byte gSaveBlock2Ptr
|
||||
_080F8098:
|
||||
ldr r0, _080F80A4 @ =gUnknown_2036DFC
|
||||
ldr r0, _080F80A4 @ =gMapHeader
|
||||
ldrb r1, [r0, 0x14]
|
||||
adds r0, r5, 0
|
||||
bl sub_80C4DF8
|
||||
b _080F80D8
|
||||
.align 2, 0
|
||||
_080F80A4: .4byte gUnknown_2036DFC
|
||||
_080F80A4: .4byte gMapHeader
|
||||
_080F80A8:
|
||||
movs r4, 0x82
|
||||
lsls r4, 4
|
||||
|
||||
-1092
File diff suppressed because it is too large
Load Diff
+4
-4
@@ -1598,7 +1598,7 @@ sub_809B778: @ 809B778
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
sub sp, 0x4
|
||||
ldr r0, _0809B804 @ =gUnknown_2036DFC
|
||||
ldr r0, _0809B804 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
mov r9, r0
|
||||
mov r4, sp
|
||||
@@ -1661,7 +1661,7 @@ _0809B7B2:
|
||||
bl sub_809B850
|
||||
b _0809B822
|
||||
.align 2, 0
|
||||
_0809B804: .4byte gUnknown_2036DFC
|
||||
_0809B804: .4byte gMapHeader
|
||||
_0809B808: .4byte 0x0000027f
|
||||
_0809B80C:
|
||||
mov r2, r9
|
||||
@@ -2840,7 +2840,7 @@ sub_809C164: @ 809C164
|
||||
movs r1, 0
|
||||
movs r2, 0x18
|
||||
bl memset
|
||||
ldr r0, _0809C19C @ =gUnknown_2036DFC
|
||||
ldr r0, _0809C19C @ =gMapHeader
|
||||
ldrb r0, [r0, 0x14]
|
||||
strb r0, [r4, 0x8]
|
||||
strb r0, [r4, 0x14]
|
||||
@@ -2850,7 +2850,7 @@ sub_809C164: @ 809C164
|
||||
.align 2, 0
|
||||
_0809C194: .4byte EnableBothScriptContexts
|
||||
_0809C198: .4byte gUnknown_203996C
|
||||
_0809C19C: .4byte gUnknown_2036DFC
|
||||
_0809C19C: .4byte gMapHeader
|
||||
thumb_func_end sub_809C164
|
||||
|
||||
thumb_func_start sub_809C1A0
|
||||
|
||||
+4
-4
@@ -195,7 +195,7 @@ cur_mapheader_run_tileset1_func: @ 807002C
|
||||
ldr r1, _08070060 @ =gUnknown_3000FB8
|
||||
movs r0, 0
|
||||
str r0, [r1]
|
||||
ldr r0, _08070064 @ =gUnknown_2036DFC
|
||||
ldr r0, _08070064 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x10]
|
||||
cmp r0, 0
|
||||
@@ -211,7 +211,7 @@ _08070052:
|
||||
_08070058: .4byte gUnknown_3000FAE
|
||||
_0807005C: .4byte gUnknown_3000FB0
|
||||
_08070060: .4byte gUnknown_3000FB8
|
||||
_08070064: .4byte gUnknown_2036DFC
|
||||
_08070064: .4byte gMapHeader
|
||||
thumb_func_end cur_mapheader_run_tileset1_func
|
||||
|
||||
thumb_func_start cur_mapheader_run_tileset2_func
|
||||
@@ -225,7 +225,7 @@ cur_mapheader_run_tileset2_func: @ 8070068
|
||||
ldr r1, _0807009C @ =gUnknown_3000FBC
|
||||
movs r0, 0
|
||||
str r0, [r1]
|
||||
ldr r0, _080700A0 @ =gUnknown_2036DFC
|
||||
ldr r0, _080700A0 @ =gMapHeader
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x14]
|
||||
cmp r0, 0
|
||||
@@ -241,7 +241,7 @@ _0807008E:
|
||||
_08070094: .4byte gUnknown_3000FB2
|
||||
_08070098: .4byte gUnknown_3000FB4
|
||||
_0807009C: .4byte gUnknown_3000FBC
|
||||
_080700A0: .4byte gUnknown_2036DFC
|
||||
_080700A0: .4byte gMapHeader
|
||||
thumb_func_end cur_mapheader_run_tileset2_func
|
||||
|
||||
thumb_func_start sub_80700A4
|
||||
|
||||
+8
-8
@@ -653,7 +653,7 @@ sub_815DC8C: @ 815DC8C
|
||||
ldr r0, _0815DCC8 @ =0x00001f0c
|
||||
bl AllocZeroed
|
||||
str r0, [r4]
|
||||
ldr r1, _0815DCCC @ =gUnknown_2036DFC
|
||||
ldr r1, _0815DCCC @ =gMapHeader
|
||||
ldrb r1, [r1, 0x12]
|
||||
subs r1, 0x2A
|
||||
strb r1, [r0]
|
||||
@@ -669,7 +669,7 @@ _0815DCBC: .4byte gSaveBlock1Ptr
|
||||
_0815DCC0: .4byte 0x00003d34
|
||||
_0815DCC4: .4byte gUnknown_203F458
|
||||
_0815DCC8: .4byte 0x00001f0c
|
||||
_0815DCCC: .4byte gUnknown_2036DFC
|
||||
_0815DCCC: .4byte gMapHeader
|
||||
_0815DCD0:
|
||||
ldr r0, [r4]
|
||||
ldr r1, _0815DD20 @ =gUnknown_84827AC
|
||||
@@ -732,7 +732,7 @@ _0815DD40: .4byte gUnknown_203F458
|
||||
thumb_func_start sub_815DD44
|
||||
sub_815DD44: @ 815DD44
|
||||
push {r4,lr}
|
||||
ldr r0, _0815DD68 @ =gUnknown_2036DFC
|
||||
ldr r0, _0815DD68 @ =gMapHeader
|
||||
ldrh r0, [r0, 0x12]
|
||||
ldr r1, _0815DD6C @ =0xfffffed7
|
||||
adds r0, r1
|
||||
@@ -749,7 +749,7 @@ sub_815DD44: @ 815DD44
|
||||
bl sub_8055D40
|
||||
b _0815DDA2
|
||||
.align 2, 0
|
||||
_0815DD68: .4byte gUnknown_2036DFC
|
||||
_0815DD68: .4byte gMapHeader
|
||||
_0815DD6C: .4byte 0xfffffed7
|
||||
_0815DD70: .4byte gUnknown_203F458
|
||||
_0815DD74: .4byte gUnknown_20370D0
|
||||
@@ -1380,7 +1380,7 @@ _0815E214: .4byte 0x00003d34
|
||||
thumb_func_start sub_815E218
|
||||
sub_815E218: @ 815E218
|
||||
push {lr}
|
||||
ldr r0, _0815E260 @ =gUnknown_2036DFC
|
||||
ldr r0, _0815E260 @ =gMapHeader
|
||||
ldrh r0, [r0, 0x12]
|
||||
mov r12, r0
|
||||
ldr r3, _0815E264 @ =0xfffffed6
|
||||
@@ -1416,7 +1416,7 @@ sub_815E218: @ 815E218
|
||||
movs r0, 0
|
||||
b _0815E280
|
||||
.align 2, 0
|
||||
_0815E260: .4byte gUnknown_2036DFC
|
||||
_0815E260: .4byte gMapHeader
|
||||
_0815E264: .4byte 0xfffffed6
|
||||
_0815E268: .4byte gSaveBlock1Ptr
|
||||
_0815E26C: .4byte 0x00003d34
|
||||
@@ -2234,7 +2234,7 @@ _0815E904: .4byte gUnknown_20370D0
|
||||
thumb_func_start sub_815E908
|
||||
sub_815E908: @ 815E908
|
||||
push {lr}
|
||||
ldr r0, _0815E928 @ =gUnknown_2036DFC
|
||||
ldr r0, _0815E928 @ =gMapHeader
|
||||
ldrh r1, [r0, 0x12]
|
||||
ldr r0, _0815E92C @ =0x00000129
|
||||
cmp r1, r0
|
||||
@@ -2249,7 +2249,7 @@ sub_815E908: @ 815E908
|
||||
strh r1, [r0]
|
||||
b _0815E93E
|
||||
.align 2, 0
|
||||
_0815E928: .4byte gUnknown_2036DFC
|
||||
_0815E928: .4byte gMapHeader
|
||||
_0815E92C: .4byte 0x00000129
|
||||
_0815E930: .4byte 0x00004082
|
||||
_0815E934: .4byte gUnknown_20370D0
|
||||
|
||||
+3
-3
@@ -101,7 +101,7 @@ sub_810C444: @ 810C444
|
||||
adds r1, r0
|
||||
mov r8, r1
|
||||
movs r7, 0
|
||||
ldr r0, _0810C4E4 @ =gUnknown_2036DFC
|
||||
ldr r0, _0810C4E4 @ =gMapHeader
|
||||
ldr r1, [r0, 0x4]
|
||||
adds r2, r0, 0
|
||||
ldrb r1, [r1]
|
||||
@@ -152,7 +152,7 @@ _0810C47A:
|
||||
bl npc_set_running_behaviour_etc
|
||||
_0810C4C0:
|
||||
strb r6, [r5, 0x9]
|
||||
ldr r2, _0810C4E4 @ =gUnknown_2036DFC
|
||||
ldr r2, _0810C4E4 @ =gMapHeader
|
||||
_0810C4C4:
|
||||
adds r0, r7, 0x1
|
||||
lsls r0, 24
|
||||
@@ -170,7 +170,7 @@ _0810C4D2:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810C4E0: .4byte gSaveBlock1Ptr
|
||||
_0810C4E4: .4byte gUnknown_2036DFC
|
||||
_0810C4E4: .4byte gMapHeader
|
||||
_0810C4E8: .4byte gUnknown_2036E38
|
||||
thumb_func_end sub_810C444
|
||||
|
||||
|
||||
+9
-9
@@ -217,7 +217,7 @@ sub_810C808: @ 810C808
|
||||
strb r1, [r0]
|
||||
mov r8, r1
|
||||
mov r9, r1
|
||||
ldr r0, _0810C8E0 @ =gUnknown_2036DFC
|
||||
ldr r0, _0810C8E0 @ =gMapHeader
|
||||
ldr r0, [r0, 0x4]
|
||||
ldrb r0, [r0]
|
||||
cmp r8, r0
|
||||
@@ -287,7 +287,7 @@ _0810C8AC:
|
||||
adds r5, 0x18
|
||||
movs r0, 0x1
|
||||
add r9, r0
|
||||
ldr r0, _0810C8E0 @ =gUnknown_2036DFC
|
||||
ldr r0, _0810C8E0 @ =gMapHeader
|
||||
ldr r0, [r0, 0x4]
|
||||
ldrb r0, [r0]
|
||||
cmp r9, r0
|
||||
@@ -310,7 +310,7 @@ _0810C8BC:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810C8DC: .4byte gSaveBlock1Ptr
|
||||
_0810C8E0: .4byte gUnknown_2036DFC
|
||||
_0810C8E0: .4byte gMapHeader
|
||||
_0810C8E4: .4byte gUnknown_203ADB8
|
||||
_0810C8E8: .4byte gUnknown_2036E38
|
||||
thumb_func_end sub_810C808
|
||||
@@ -670,7 +670,7 @@ sub_810CB90: @ 810CB90
|
||||
beq _0810CC8A
|
||||
movs r0, 0
|
||||
mov r8, r0
|
||||
ldr r0, _0810CC60 @ =gUnknown_2036DFC
|
||||
ldr r0, _0810CC60 @ =gMapHeader
|
||||
ldr r0, [r0, 0x4]
|
||||
ldrb r0, [r0]
|
||||
cmp r8, r0
|
||||
@@ -742,7 +742,7 @@ _0810CBDE:
|
||||
_0810CC54: .4byte gSaveBlock1Ptr
|
||||
_0810CC58: .4byte gUnknown_845318C
|
||||
_0810CC5C: .4byte gTrainerBattleOpponent_A
|
||||
_0810CC60: .4byte gUnknown_2036DFC
|
||||
_0810CC60: .4byte gMapHeader
|
||||
_0810CC64: .4byte gUnknown_2036E38
|
||||
_0810CC68: .4byte gUnknown_8453F67
|
||||
_0810CC6C: .4byte 0x0000063a
|
||||
@@ -756,7 +756,7 @@ _0810CC78:
|
||||
adds r6, 0x18
|
||||
movs r0, 0x1
|
||||
add r8, r0
|
||||
ldr r0, _0810CC9C @ =gUnknown_2036DFC
|
||||
ldr r0, _0810CC9C @ =gMapHeader
|
||||
ldr r0, [r0, 0x4]
|
||||
ldrb r0, [r0]
|
||||
cmp r8, r0
|
||||
@@ -771,7 +771,7 @@ _0810CC8A:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CC9C: .4byte gUnknown_2036DFC
|
||||
_0810CC9C: .4byte gMapHeader
|
||||
thumb_func_end sub_810CB90
|
||||
|
||||
thumb_func_start sub_810CCA0
|
||||
@@ -1129,7 +1129,7 @@ sub_810CF04: @ 810CF04
|
||||
lsls r0, 31
|
||||
cmp r0, 0
|
||||
beq _0810CF4C
|
||||
ldr r0, _0810CF44 @ =gUnknown_2036DFC
|
||||
ldr r0, _0810CF44 @ =gMapHeader
|
||||
ldr r0, [r0, 0x4]
|
||||
ldrb r0, [r0]
|
||||
ldrb r2, [r1, 0x8]
|
||||
@@ -1149,7 +1149,7 @@ sub_810CF04: @ 810CF04
|
||||
b _0810CF4E
|
||||
.align 2, 0
|
||||
_0810CF40: .4byte gUnknown_2036E38
|
||||
_0810CF44: .4byte gUnknown_2036DFC
|
||||
_0810CF44: .4byte gMapHeader
|
||||
_0810CF48: .4byte gSprites
|
||||
_0810CF4C:
|
||||
movs r0, 0
|
||||
|
||||
+1
-1
@@ -1464,7 +1464,7 @@ gUnknown_83A7240:: @ 83A7240
|
||||
.asciz "0"
|
||||
|
||||
.align 2
|
||||
gUnknown_83A7244:: @ 83A7244
|
||||
gNullScriptPtr:: @ 83A7244
|
||||
.incbin "baserom.gba", 0x3A7244, 0x4
|
||||
|
||||
gUnknown_83A7248:: @ 83A7248
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
.section script_data, "aw", %progbits
|
||||
|
||||
gUnknown_815F9B4:: @ 815F9B4
|
||||
gScriptCmdTable:: @ 815F9B4
|
||||
.incbin "baserom.gba", 0x15F9B4, 0x354
|
||||
|
||||
gUnknown_815FD08:: @ 815FD08
|
||||
gScriptCmdTableEnd:: @ 815FD08
|
||||
.incbin "baserom.gba", 0x15FD08, 0x4
|
||||
|
||||
gUnknown_815FD0C:: @ 815FD0C
|
||||
|
||||
+5
-1
@@ -474,7 +474,11 @@ struct RecordMixingDayCareMail
|
||||
|
||||
struct SaveBlock1
|
||||
{
|
||||
/*0x0000*/ u8 filler[0x3A4C];
|
||||
/*0x0000*/ u8 filler[0x4];
|
||||
/*0x0004*/ struct WarpData location;
|
||||
/*0x000C*/ u8 fillerC[0x3610];
|
||||
/*0x361C*/ struct RamScript ramScript;
|
||||
/*0x3A08*/ u8 filler3A08[0x44];
|
||||
/*0x3A4C*/ u8 rivalName[PLAYER_NAME_LENGTH];
|
||||
};
|
||||
|
||||
|
||||
+1
-1
@@ -106,7 +106,7 @@ SECTIONS {
|
||||
asm/field_message_box.o(.text);
|
||||
asm/map_obj_lock.o(.text);
|
||||
asm/text_window_graphics.o(.text);
|
||||
asm/script.o(.text);
|
||||
src/script.o(.text);
|
||||
asm/scrcmd.o(.text);
|
||||
asm/field_control_avatar.o(.text);
|
||||
asm/event_data.o(.text);
|
||||
|
||||
+554
@@ -0,0 +1,554 @@
|
||||
#include "global.h"
|
||||
#include "script.h"
|
||||
#include "event_data.h"
|
||||
|
||||
#define RAM_SCRIPT_MAGIC 51
|
||||
#define SCRIPT_STACK_SIZE 20
|
||||
|
||||
extern u8 gUnknown_203ADFA;
|
||||
|
||||
extern void sub_80CBDE8(void); // field_specials
|
||||
extern u16 CalcCRC16WithTable(u8 *data, int length); // util
|
||||
extern bool32 sub_8143FC8(void); // mevent
|
||||
|
||||
enum
|
||||
{
|
||||
SCRIPT_MODE_STOPPED,
|
||||
SCRIPT_MODE_BYTECODE,
|
||||
SCRIPT_MODE_NATIVE,
|
||||
};
|
||||
|
||||
EWRAM_DATA u8 gUnknown_20370A0 = 0;
|
||||
EWRAM_DATA u8 *gUnknown_20370A4 = NULL;
|
||||
|
||||
// ewram bss
|
||||
IWRAM_DATA static u8 sScriptContext1Status;
|
||||
IWRAM_DATA static u32 sUnusedVariable1;
|
||||
IWRAM_DATA static struct ScriptContext sScriptContext1;
|
||||
IWRAM_DATA static u32 sUnusedVariable2;
|
||||
IWRAM_DATA static struct ScriptContext sScriptContext2;
|
||||
IWRAM_DATA static bool8 sScriptContext2Enabled;
|
||||
IWRAM_DATA static u8 gUnknown_3000F9D;
|
||||
IWRAM_DATA static u8 gUnknown_3000F9E;
|
||||
IWRAM_DATA static u8 gUnknown_3000F9F;
|
||||
IWRAM_DATA static u8 gUnknown_3000FA0;
|
||||
IWRAM_DATA static u8 gUnknown_3000FA1;
|
||||
|
||||
extern ScrCmdFunc gScriptCmdTable[];
|
||||
extern ScrCmdFunc gScriptCmdTableEnd[];
|
||||
extern void *gNullScriptPtr;
|
||||
|
||||
void InitScriptContext(struct ScriptContext *ctx, void *cmdTable, void *cmdTableEnd)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
ctx->mode = SCRIPT_MODE_STOPPED;
|
||||
ctx->scriptPtr = NULL;
|
||||
ctx->stackDepth = 0;
|
||||
ctx->nativePtr = NULL;
|
||||
ctx->cmdTable = cmdTable;
|
||||
ctx->cmdTableEnd = cmdTableEnd;
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
ctx->data[i] = 0;
|
||||
|
||||
for (i = 0; i < SCRIPT_STACK_SIZE; i++)
|
||||
ctx->stack[i] = 0;
|
||||
}
|
||||
|
||||
u8 SetupBytecodeScript(struct ScriptContext *ctx, const u8 *ptr)
|
||||
{
|
||||
ctx->scriptPtr = ptr;
|
||||
ctx->mode = SCRIPT_MODE_BYTECODE;
|
||||
return 1;
|
||||
}
|
||||
|
||||
void SetupNativeScript(struct ScriptContext *ctx, bool8 (*ptr)(void))
|
||||
{
|
||||
ctx->mode = SCRIPT_MODE_NATIVE;
|
||||
ctx->nativePtr = ptr;
|
||||
}
|
||||
|
||||
void StopScript(struct ScriptContext *ctx)
|
||||
{
|
||||
ctx->mode = SCRIPT_MODE_STOPPED;
|
||||
ctx->scriptPtr = NULL;
|
||||
}
|
||||
|
||||
bool8 RunScriptCommand(struct ScriptContext *ctx)
|
||||
{
|
||||
// FRLG disabled this check, where-as it is present
|
||||
// in Ruby/Sapphire and Emerald. Why did the programmers
|
||||
// bother to remove a redundant check when it still
|
||||
// exists in Emerald?
|
||||
//if (ctx->mode == SCRIPT_MODE_STOPPED)
|
||||
// return FALSE;
|
||||
|
||||
switch (ctx->mode)
|
||||
{
|
||||
case SCRIPT_MODE_STOPPED:
|
||||
return FALSE;
|
||||
case SCRIPT_MODE_NATIVE:
|
||||
if (ctx->nativePtr)
|
||||
{
|
||||
if (ctx->nativePtr() == TRUE)
|
||||
ctx->mode = SCRIPT_MODE_BYTECODE;
|
||||
return TRUE;
|
||||
}
|
||||
ctx->mode = SCRIPT_MODE_BYTECODE;
|
||||
case SCRIPT_MODE_BYTECODE:
|
||||
while (1)
|
||||
{
|
||||
u8 cmdCode;
|
||||
ScrCmdFunc *cmdFunc;
|
||||
|
||||
if (ctx->scriptPtr == NULL)
|
||||
{
|
||||
ctx->mode = SCRIPT_MODE_STOPPED;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (ctx->scriptPtr == gNullScriptPtr)
|
||||
{
|
||||
while (1)
|
||||
asm("svc 2"); // HALT
|
||||
}
|
||||
|
||||
cmdCode = *(ctx->scriptPtr);
|
||||
ctx->scriptPtr++;
|
||||
cmdFunc = &ctx->cmdTable[cmdCode];
|
||||
|
||||
if (cmdFunc >= ctx->cmdTableEnd)
|
||||
{
|
||||
ctx->mode = SCRIPT_MODE_STOPPED;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if ((*cmdFunc)(ctx) == TRUE)
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
u8 ScriptPush(struct ScriptContext *ctx, const u8 *ptr)
|
||||
{
|
||||
if (ctx->stackDepth + 1 >= SCRIPT_STACK_SIZE)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
ctx->stack[ctx->stackDepth] = ptr;
|
||||
ctx->stackDepth++;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
const u8 *ScriptPop(struct ScriptContext *ctx)
|
||||
{
|
||||
if (ctx->stackDepth == 0)
|
||||
return NULL;
|
||||
|
||||
ctx->stackDepth--;
|
||||
return ctx->stack[ctx->stackDepth];
|
||||
}
|
||||
|
||||
void ScriptJump(struct ScriptContext *ctx, const u8 *ptr)
|
||||
{
|
||||
ctx->scriptPtr = ptr;
|
||||
}
|
||||
|
||||
void ScriptCall(struct ScriptContext *ctx, const u8 *ptr)
|
||||
{
|
||||
ScriptPush(ctx, ctx->scriptPtr);
|
||||
ctx->scriptPtr = ptr;
|
||||
}
|
||||
|
||||
void ScriptReturn(struct ScriptContext *ctx)
|
||||
{
|
||||
ctx->scriptPtr = ScriptPop(ctx);
|
||||
}
|
||||
|
||||
u16 ScriptReadHalfword(struct ScriptContext *ctx)
|
||||
{
|
||||
u16 value = *(ctx->scriptPtr++);
|
||||
value |= *(ctx->scriptPtr++) << 8;
|
||||
return value;
|
||||
}
|
||||
|
||||
u32 ScriptReadWord(struct ScriptContext *ctx)
|
||||
{
|
||||
u32 value0 = *(ctx->scriptPtr++);
|
||||
u32 value1 = *(ctx->scriptPtr++);
|
||||
u32 value2 = *(ctx->scriptPtr++);
|
||||
u32 value3 = *(ctx->scriptPtr++);
|
||||
return (((((value3 << 8) + value2) << 8) + value1) << 8) + value0;
|
||||
}
|
||||
|
||||
void ScriptContext2_Enable(void)
|
||||
{
|
||||
sScriptContext2Enabled = TRUE;
|
||||
}
|
||||
|
||||
void ScriptContext2_Disable(void)
|
||||
{
|
||||
sScriptContext2Enabled = FALSE;
|
||||
}
|
||||
|
||||
bool8 ScriptContext2_IsEnabled(void)
|
||||
{
|
||||
return sScriptContext2Enabled;
|
||||
}
|
||||
|
||||
void sub_8069964(void)
|
||||
{
|
||||
gUnknown_3000FA0 = 1;
|
||||
}
|
||||
|
||||
void sub_8069970(void)
|
||||
{
|
||||
gUnknown_3000FA0 = 0;
|
||||
}
|
||||
|
||||
bool8 sub_806997C(void)
|
||||
{
|
||||
if(gUnknown_3000FA0 == TRUE)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void sub_8069998(u8 var)
|
||||
{
|
||||
gUnknown_3000F9F = var;
|
||||
}
|
||||
|
||||
void sub_80699A4(void)
|
||||
{
|
||||
gUnknown_3000F9F = 0;
|
||||
}
|
||||
|
||||
u8 sub_80699B0(void)
|
||||
{
|
||||
return gUnknown_3000F9F;
|
||||
}
|
||||
|
||||
void sub_80699BC(void)
|
||||
{
|
||||
gUnknown_3000F9D = 1;
|
||||
}
|
||||
|
||||
void sub_80699C8(void)
|
||||
{
|
||||
gUnknown_3000F9D = 0;
|
||||
}
|
||||
|
||||
u8 sub_80699D4(void)
|
||||
{
|
||||
return gUnknown_3000F9D;
|
||||
}
|
||||
|
||||
void sub_80699E0(void)
|
||||
{
|
||||
gUnknown_20370A0 = 6;
|
||||
gUnknown_3000F9E = 1;
|
||||
}
|
||||
|
||||
void sub_80699F8(void)
|
||||
{
|
||||
gUnknown_3000F9E = 0;
|
||||
}
|
||||
|
||||
bool8 sub_8069A04(void)
|
||||
{
|
||||
if(gUnknown_3000F9E == TRUE)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void sub_8069A20(void)
|
||||
{
|
||||
gUnknown_3000FA1 = 1;
|
||||
}
|
||||
|
||||
void sub_8069A2C(void)
|
||||
{
|
||||
gUnknown_3000FA1 = 0;
|
||||
}
|
||||
|
||||
bool8 sub_8069A38(void)
|
||||
{
|
||||
if(gUnknown_3000FA1 == TRUE)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void sub_8069A54(void)
|
||||
{
|
||||
sub_80CBDE8();
|
||||
sub_8069A2C();
|
||||
}
|
||||
|
||||
bool8 ScriptContext1_IsScriptSetUp(void)
|
||||
{
|
||||
if (sScriptContext1Status == 0)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void ScriptContext1_Init(void)
|
||||
{
|
||||
InitScriptContext(&sScriptContext1, gScriptCmdTable, gScriptCmdTableEnd);
|
||||
sScriptContext1Status = 2;
|
||||
}
|
||||
|
||||
bool8 ScriptContext2_RunScript(void)
|
||||
{
|
||||
if (sScriptContext1Status == 2)
|
||||
return 0;
|
||||
|
||||
if (sScriptContext1Status == 1)
|
||||
return 0;
|
||||
|
||||
ScriptContext2_Enable();
|
||||
|
||||
if (!RunScriptCommand(&sScriptContext1))
|
||||
{
|
||||
sScriptContext1Status = 2;
|
||||
ScriptContext2_Disable();
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
void ScriptContext1_SetupScript(const u8 *ptr)
|
||||
{
|
||||
sub_80699F8();
|
||||
sub_80699C8();
|
||||
sub_8069970();
|
||||
InitScriptContext(&sScriptContext1, gScriptCmdTable, gScriptCmdTableEnd);
|
||||
SetupBytecodeScript(&sScriptContext1, ptr);
|
||||
ScriptContext2_Enable();
|
||||
sScriptContext1Status = 0;
|
||||
}
|
||||
|
||||
void ScriptContext1_Stop(void)
|
||||
{
|
||||
sScriptContext1Status = 1;
|
||||
}
|
||||
|
||||
void EnableBothScriptContexts(void)
|
||||
{
|
||||
sScriptContext1Status = 0;
|
||||
ScriptContext2_Enable();
|
||||
}
|
||||
|
||||
void ScriptContext2_RunNewScript(const u8 *ptr)
|
||||
{
|
||||
InitScriptContext(&sScriptContext2, &gScriptCmdTable, &gScriptCmdTableEnd);
|
||||
SetupBytecodeScript(&sScriptContext2, ptr);
|
||||
while (RunScriptCommand(&sScriptContext2) == TRUE);
|
||||
}
|
||||
|
||||
u8 *mapheader_get_tagged_pointer(u8 tag)
|
||||
{
|
||||
u8 *mapScripts = gMapHeader.mapScripts;
|
||||
|
||||
if (mapScripts == NULL)
|
||||
return NULL;
|
||||
|
||||
while (1)
|
||||
{
|
||||
if (*mapScripts == 0)
|
||||
return NULL;
|
||||
if (*mapScripts == tag)
|
||||
{
|
||||
mapScripts++;
|
||||
return (u8 *)(mapScripts[0] + (mapScripts[1] << 8) + (mapScripts[2] << 16) + (mapScripts[3] << 24));
|
||||
}
|
||||
mapScripts += 5;
|
||||
}
|
||||
}
|
||||
|
||||
void mapheader_run_script_by_tag(u8 tag)
|
||||
{
|
||||
u8 *ptr = mapheader_get_tagged_pointer(tag);
|
||||
if (ptr)
|
||||
ScriptContext2_RunNewScript(ptr);
|
||||
}
|
||||
|
||||
u8 *mapheader_get_first_match_from_tagged_ptr_list(u8 tag)
|
||||
{
|
||||
u8 *ptr = mapheader_get_tagged_pointer(tag);
|
||||
|
||||
if (!ptr)
|
||||
return NULL;
|
||||
|
||||
while (1)
|
||||
{
|
||||
u16 varIndex1;
|
||||
u16 varIndex2;
|
||||
varIndex1 = ptr[0] | (ptr[1] << 8);
|
||||
if (!varIndex1)
|
||||
return NULL;
|
||||
ptr += 2;
|
||||
varIndex2 = ptr[0] | (ptr[1] << 8);
|
||||
ptr += 2;
|
||||
if (VarGet(varIndex1) == VarGet(varIndex2))
|
||||
return (u8 *)(ptr[0] + (ptr[1] << 8) + (ptr[2] << 16) + (ptr[3] << 24));
|
||||
ptr += 4;
|
||||
}
|
||||
}
|
||||
|
||||
void mapheader_run_script_with_tag_x1(void)
|
||||
{
|
||||
mapheader_run_script_by_tag(1);
|
||||
}
|
||||
|
||||
void mapheader_run_script_with_tag_x3(void)
|
||||
{
|
||||
mapheader_run_script_by_tag(3);
|
||||
}
|
||||
|
||||
void mapheader_run_script_with_tag_x5(void)
|
||||
{
|
||||
mapheader_run_script_by_tag(5);
|
||||
}
|
||||
|
||||
void mapheader_run_script_with_tag_x7(void)
|
||||
{
|
||||
mapheader_run_script_by_tag(7);
|
||||
}
|
||||
|
||||
void mapheader_run_script_with_tag_x6(void)
|
||||
{
|
||||
mapheader_run_script_by_tag(6);
|
||||
}
|
||||
|
||||
bool8 mapheader_run_first_tag2_script_list_match(void)
|
||||
{
|
||||
u8 *ptr;
|
||||
|
||||
if(gUnknown_203ADFA == 3)
|
||||
return 0;
|
||||
|
||||
ptr = mapheader_get_first_match_from_tagged_ptr_list(2);
|
||||
|
||||
if (!ptr)
|
||||
return 0;
|
||||
|
||||
ScriptContext1_SetupScript(ptr);
|
||||
return 1;
|
||||
}
|
||||
|
||||
void mapheader_run_first_tag4_script_list_match(void)
|
||||
{
|
||||
u8 *ptr = mapheader_get_first_match_from_tagged_ptr_list(4);
|
||||
if (ptr)
|
||||
ScriptContext2_RunNewScript(ptr);
|
||||
}
|
||||
|
||||
u32 CalculateRamScriptChecksum(void)
|
||||
{
|
||||
return CalcCRC16WithTable((u8*)(&gSaveBlock1Ptr->ramScript.data), sizeof(gSaveBlock1Ptr->ramScript.data));
|
||||
}
|
||||
|
||||
void ClearRamScript(void)
|
||||
{
|
||||
CpuFill32(0, &gSaveBlock1Ptr->ramScript, sizeof(struct RamScript));
|
||||
}
|
||||
|
||||
bool8 InitRamScript(u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objectId)
|
||||
{
|
||||
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
|
||||
|
||||
ClearRamScript();
|
||||
|
||||
if (scriptSize > sizeof(scriptData->script))
|
||||
return FALSE;
|
||||
|
||||
scriptData->magic = RAM_SCRIPT_MAGIC;
|
||||
scriptData->mapGroup = mapGroup;
|
||||
scriptData->mapNum = mapNum;
|
||||
scriptData->objectId = objectId;
|
||||
memcpy(scriptData->script, script, scriptSize);
|
||||
gSaveBlock1Ptr->ramScript.checksum = CalculateRamScriptChecksum();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
u8 *GetRamScript(u8 objectId, u8 *script)
|
||||
{
|
||||
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
|
||||
gUnknown_20370A4 = NULL;
|
||||
if (scriptData->magic != RAM_SCRIPT_MAGIC)
|
||||
return script;
|
||||
if (scriptData->mapGroup != gSaveBlock1Ptr->location.mapGroup)
|
||||
return script;
|
||||
if (scriptData->mapNum != gSaveBlock1Ptr->location.mapNum)
|
||||
return script;
|
||||
if (scriptData->objectId != objectId)
|
||||
return script;
|
||||
if (CalculateRamScriptChecksum() != gSaveBlock1Ptr->ramScript.checksum)
|
||||
{
|
||||
ClearRamScript();
|
||||
return script;
|
||||
}
|
||||
else
|
||||
{
|
||||
gUnknown_20370A4 = script;
|
||||
return scriptData->script;
|
||||
}
|
||||
}
|
||||
|
||||
bool32 sub_8069DFC(void)
|
||||
{
|
||||
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
|
||||
if (scriptData->magic != RAM_SCRIPT_MAGIC)
|
||||
return FALSE;
|
||||
if (scriptData->mapGroup != 0xFF)
|
||||
return FALSE;
|
||||
if (scriptData->mapNum != 0xFF)
|
||||
return FALSE;
|
||||
if (scriptData->objectId != 0xFF)
|
||||
return FALSE;
|
||||
if (CalculateRamScriptChecksum() != gSaveBlock1Ptr->ramScript.checksum)
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
u8 *sub_8069E48(void)
|
||||
{
|
||||
struct RamScriptData *scriptData = &gSaveBlock1Ptr->ramScript.data;
|
||||
if (!sub_8143FC8())
|
||||
return NULL;
|
||||
if (scriptData->magic != RAM_SCRIPT_MAGIC)
|
||||
return NULL;
|
||||
if (scriptData->mapGroup != 0xFF)
|
||||
return NULL;
|
||||
if (scriptData->mapNum != 0xFF)
|
||||
return NULL;
|
||||
if (scriptData->objectId != 0xFF)
|
||||
return NULL;
|
||||
if (CalculateRamScriptChecksum() != gSaveBlock1Ptr->ramScript.checksum)
|
||||
{
|
||||
ClearRamScript();
|
||||
return NULL;
|
||||
}
|
||||
else
|
||||
{
|
||||
return scriptData->script;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8069EA4(u8 *script, u16 scriptSize)
|
||||
{
|
||||
if (scriptSize > sizeof(gSaveBlock1Ptr->ramScript.data.script))
|
||||
scriptSize = sizeof(gSaveBlock1Ptr->ramScript.data.script);
|
||||
InitRamScript(script, scriptSize, 0xFF, 0xFF, 0xFF);
|
||||
}
|
||||
+2
-26
@@ -96,33 +96,9 @@ gUnknown_3000E9C: @ 3000E9C
|
||||
gUnknown_3000EA0: @ 3000EA0
|
||||
.space 0x8
|
||||
|
||||
gUnknown_3000EA8: @ 3000EA8
|
||||
.space 0x8
|
||||
|
||||
gUnknown_3000EB0: @ 3000EB0
|
||||
.space 0x78
|
||||
|
||||
gUnknown_3000F28: @ 3000F28
|
||||
.space 0x74
|
||||
|
||||
gUnknown_3000F9C: @ 3000F9C
|
||||
.space 0x1
|
||||
|
||||
gUnknown_3000F9D: @ 3000F9D
|
||||
.space 0x1
|
||||
|
||||
gUnknown_3000F9E: @ 3000F9E
|
||||
.space 0x1
|
||||
|
||||
gUnknown_3000F9F: @ 3000F9F
|
||||
.space 0x1
|
||||
|
||||
gUnknown_3000FA0: @ 3000FA0
|
||||
.space 0x1
|
||||
|
||||
gUnknown_3000FA1: @ 3000FA1
|
||||
.space 0x3
|
||||
.include "src/script.o"
|
||||
|
||||
.align 2
|
||||
gUnknown_3000FA4: @ 3000FA4
|
||||
.space 0x4
|
||||
|
||||
|
||||
+3
-6
@@ -611,7 +611,7 @@ gUnknown_2031DEC: @ 2031DEC
|
||||
gUnknown_2031DFC: @ 2031DFC
|
||||
.space 0x5000
|
||||
|
||||
gUnknown_2036DFC: @ 2036DFC
|
||||
gMapHeader: @ 2036DFC
|
||||
.space 0x1C
|
||||
|
||||
gUnknown_2036E18: @ 2036E18
|
||||
@@ -647,12 +647,9 @@ gUnknown_203709A: @ 203709A
|
||||
gUnknown_203709C: @ 203709C
|
||||
.space 0x4
|
||||
|
||||
gUnknown_20370A0: @ 20370A0
|
||||
.space 0x4
|
||||
|
||||
gUnknown_20370A4: @ 20370A4
|
||||
.space 0x4
|
||||
.include "src/script.o"
|
||||
|
||||
.align 2
|
||||
gUnknown_20370A8: @ 20370A8
|
||||
.space 0x4
|
||||
|
||||
|
||||
Reference in New Issue
Block a user