Merge branch 'master' into dump_pointers

This commit is contained in:
DizzyEggg
2017-12-22 16:22:16 +01:00
1390 changed files with 527546 additions and 19712 deletions

View File

@@ -115,7 +115,7 @@ _08177CD8:
.4byte _08177DC2
_08177D18:
bl SetVBlankHBlankCallbacksToNull
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
bl clear_scheduled_bg_copies_to_vram
b _08177DDC
_08177D26:
@@ -246,7 +246,7 @@ sub_8177E14: @ 8177E14
adds r1, r0
movs r0, 0x3
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0x2
bl schedule_bg_copy_tilemap_to_vram
movs r0, 0x3

View File

@@ -463,7 +463,7 @@ _081AAF54:
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrb r2, [r4, 0x5]
lsls r2, 1
adds r1, r4, 0
@@ -568,7 +568,7 @@ _081AB046:
thumb_func_start bag_menu_init_bgs
bag_menu_init_bgs: @ 81AB050
push {r4,lr}
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
ldr r4, =gUnknown_0203CE54
ldr r0, [r4]
adds r0, 0x4
@@ -586,7 +586,7 @@ bag_menu_init_bgs: @ 81AB050
adds r1, 0x4
movs r0, 0x2
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0x2
bl schedule_bg_copy_tilemap_to_vram
movs r1, 0x82
@@ -719,7 +719,7 @@ _081AB1B2:
b _081AB1E4
.pool
_081AB1CC:
bl sub_8122328
bl LoadListMenuArrowsGfx
ldr r0, [r4]
ldr r1, =0x00000834
adds r0, r1
@@ -902,7 +902,7 @@ _081AB30C:
cmp r6, r0
bcc _081AB30C
_081AB34A:
ldr r2, =gUnknown_03006310
ldr r2, =gMultiuseListMenuTemplate
adds r1, r2, 0
ldr r0, =gUnknown_08613F9C
ldm r0!, {r3-r5}
@@ -1924,7 +1924,7 @@ bag_menu_inits_lists_menu: @ 81ABBBC
bl sub_81ABA88
ldrb r0, [r7, 0x5]
bl load_bag_item_list_buffers
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
mov r2, r8
ldrh r1, [r2]
ldrh r2, [r4]
@@ -2133,7 +2133,7 @@ _081ABDCC:
ldrb r0, [r6]
adds r1, r7, 0
mov r2, r8
bl get_coro_args_x18_x1A
bl sub_81AE860
ldrh r2, [r7]
mov r3, r8
ldrh r0, [r3]
@@ -2157,12 +2157,12 @@ _081ABDCC:
.pool
_081ABE10:
ldrb r0, [r6]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r4, r0, 0
ldrb r0, [r6]
adds r1, r7, 0
mov r2, r8
bl get_coro_args_x18_x1A
bl sub_81AE860
movs r0, 0x2
negs r0, r0
cmp r4, r0
@@ -2603,7 +2603,7 @@ _081AC1DC:
subs r5, r4, 0x5
ldrb r0, [r5, 0x5]
bl load_bag_item_list_buffers
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrb r2, [r5, 0x5]
lsls r2, 1
adds r1, r4, 0
@@ -2847,12 +2847,12 @@ sub_81AC3C0: @ 81AC3C0
adds r1, r2, r1
adds r3, 0x8
adds r2, r3
bl get_coro_args_x18_x1A
bl sub_81AE860
b _081AC472
.pool
_081AC418:
ldrb r0, [r4]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r7, r0, 0
ldrb r0, [r4]
ldr r5, =gUnknown_0203CE58
@@ -2864,7 +2864,7 @@ _081AC418:
adds r4, r5, 0
adds r4, 0x8
adds r2, r4
bl get_coro_args_x18_x1A
bl sub_81AE860
movs r0, 0
bl sub_80D4FC8
ldrb r0, [r5, 0x5]
@@ -2989,7 +2989,7 @@ _081AC4F8:
_081AC538:
ldrb r0, [r5, 0x5]
bl load_bag_item_list_buffers
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
mov r2, r8
ldrh r1, [r2]
ldrh r2, [r7]
@@ -3070,7 +3070,7 @@ sub_81AC590: @ 81AC590
_081AC5F2:
ldrb r0, [r4, 0x5]
bl load_bag_item_list_buffers
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrh r1, [r6]
ldrh r2, [r5]
bl ListMenuInit
@@ -4326,7 +4326,7 @@ Task_ActuallyToss: @ 81AD150
bl sub_81ABA88
ldrb r0, [r4, 0x5]
bl load_bag_item_list_buffers
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
mov r2, r8
ldrh r1, [r2]
ldrh r2, [r7]
@@ -4388,7 +4388,7 @@ _081AD23A:
ldr r0, =gUnknown_0203CE58
ldrb r0, [r0, 0x5]
bl load_bag_item_list_buffers
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrh r1, [r6]
ldrh r2, [r5]
bl ListMenuInit
@@ -5155,7 +5155,7 @@ sub_81AD8C8: @ 81AD8C8
bl sub_81ABA88
ldrb r0, [r7, 0x5]
bl load_bag_item_list_buffers
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
mov r2, r9
ldrh r1, [r2]
ldrh r2, [r5]

View File

@@ -1497,7 +1497,7 @@ sub_80FDBEC: @ 80FDBEC
push {lr}
ldr r1, =bag_menu_mail_related
movs r0, 0
bl sub_81357FC
bl OpenPokeblockCase
pop {r0}
bx r0
.pool
@@ -1517,7 +1517,7 @@ sub_80FDC00: @ 80FDC00
bl overworld_free_bg_tilemaps
ldr r1, =c2_exit_to_overworld_2_switch
movs r0, 0
bl sub_81357FC
bl OpenPokeblockCase
adds r0, r4, 0
bl DestroyTask
_080FDC24:

View File

@@ -94,7 +94,7 @@ sub_81606A0: @ 81606A0
ldr r0, =gUnknown_085CEBB8
bl LoadSpritePalette
bl sub_81610B8
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrh r1, [r4]
ldrh r2, [r4, 0x2]
bl ListMenuInit
@@ -151,7 +151,7 @@ sub_8160740: @ 8160740
ldr r0, =gUnknown_085CEBB8
bl LoadSpritePalette
bl sub_81610B8
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrh r1, [r4]
ldrh r2, [r4, 0x2]
bl ListMenuInit
@@ -175,14 +175,14 @@ sub_8160740: @ 8160740
thumb_func_start sub_81607EC
sub_81607EC: @ 81607EC
push {lr}
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
ldr r1, =gUnknown_085CEC28
movs r0, 0
movs r2, 0x2
bl InitBgsFromTemplates
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r1, 0x82
lsls r1, 5
movs r0, 0
@@ -980,7 +980,7 @@ sub_8160F50: @ 8160F50
lsls r4, 1
adds r0, r4
ldrb r0, [r0]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r5, r0, 0
ldr r0, [r6]
adds r0, r4
@@ -988,7 +988,7 @@ sub_8160F50: @ 8160F50
ldr r4, =gUnknown_0203BC38
adds r2, r4, 0x2
adds r1, r4, 0
bl get_coro_args_x18_x1A
bl sub_81AE860
movs r0, 0x2
negs r0, r0
cmp r5, r0

View File

@@ -18243,7 +18243,7 @@ _08012938:
ldrb r0, [r6, 0xF]
movs r1, 0
bl sub_81973FC
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, =gUnknown_082F015C
ldm r1!, {r3,r5,r7}
@@ -19724,7 +19724,7 @@ _0801360C:
ldrb r0, [r6, 0xB]
movs r1, 0
bl sub_81973FC
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, =gUnknown_082F0204
ldm r1!, {r3,r5,r7}
@@ -19769,7 +19769,7 @@ _080136EA:
b _08013A72
_080136F2:
ldrb r0, [r6, 0xE]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r4, r0, 0
ldr r0, =gMain
ldrh r1, [r0, 0x2E]
@@ -21038,7 +21038,7 @@ sub_8014210: @ 8014210
adds r6, r0, 0
lsls r6, 16
lsrs r6, 16
bl sp000_heal_pokemon
bl HealPlayerParty
bl copy_player_party_to_sav1
bl copy_bags_and_unk_data_from_save_blocks
ldr r5, =gLinkPlayers
@@ -21406,7 +21406,7 @@ _080145F4:
ldr r0, =gBlockSendBuffer
movs r1, 0x1
bl sub_80143E4
bl sp000_heal_pokemon
bl HealPlayerParty
bl copy_player_party_to_sav1
bl copy_bags_and_unk_data_from_save_blocks
movs r0, 0x1
@@ -21419,7 +21419,7 @@ _080145F4:
.pool
_08014620:
bl overworld_free_bg_tilemaps
bl sp000_heal_pokemon
bl HealPlayerParty
bl copy_player_party_to_sav1
bl copy_bags_and_unk_data_from_save_blocks
ldr r0, =gBlockSendBuffer
@@ -21435,7 +21435,7 @@ _08014620:
.pool
_0801464C:
bl overworld_free_bg_tilemaps
bl sp000_heal_pokemon
bl HealPlayerParty
bl copy_player_party_to_sav1
bl copy_bags_and_unk_data_from_save_blocks
ldr r0, =gBlockSendBuffer
@@ -21969,7 +21969,7 @@ _08014AEC:
strb r0, [r5, 0xF]
ldrb r0, [r5, 0xF]
bl sub_8018784
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, =gUnknown_082F015C
ldm r1!, {r3,r4,r6}
@@ -22501,7 +22501,7 @@ _08014FE8:
strb r0, [r7, 0xD]
ldrb r0, [r7, 0xB]
bl sub_8018784
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, =gUnknown_082F0204
ldm r1!, {r3-r5}
@@ -22549,7 +22549,7 @@ _080150CE:
b _080152A0
_080150D6:
ldrb r0, [r7, 0xE]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r2, r0, 0
ldr r0, =gMain
ldrh r1, [r0, 0x2E]
@@ -22874,7 +22874,7 @@ _08015398:
strb r0, [r5, 0xB]
ldrb r0, [r5, 0xB]
bl sub_8018784
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, =gUnknown_082F0204
ldm r1!, {r3,r4,r6}
@@ -22920,7 +22920,7 @@ _08015446:
cmp r0, 0
beq _08015452
ldrb r0, [r5, 0xE]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
_08015452:
ldrb r0, [r5, 0x14]
cmp r0, 0x78
@@ -26270,7 +26270,7 @@ _080171DC:
ldrb r0, [r5]
movs r1, 0
bl sub_81973FC
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, [sp, 0x24]
ldm r1!, {r3,r4,r6}
@@ -26295,7 +26295,7 @@ _080171DC:
_08017228:
mov r3, r9
ldrb r0, [r3]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
mov r8, r0
ldr r0, =gMain
ldrh r1, [r0, 0x2E]
@@ -26383,7 +26383,7 @@ _080172C8:
ldrb r0, [r6]
movs r1, 0
bl sub_81973FC
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, [sp, 0x24]
ldm r1!, {r3,r4,r7}
@@ -26411,7 +26411,7 @@ _08017314:
_0801731C:
mov r3, r10
ldrb r0, [r3]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r1, r0, 0
ldr r0, =gMain
ldrh r2, [r0, 0x2E]

View File

@@ -64,7 +64,7 @@ _081AE4B0:
ldr r1, [sp, 0x4]
bl sub_8098858
_081AE4C0:
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, [sp]
ldm r1!, {r3-r5}
@@ -87,7 +87,7 @@ _081AE4C0:
.pool
_081AE4F4:
ldrb r0, [r5, 0x6]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
str r0, [r5]
ldr r1, =gMain
ldrh r0, [r1, 0x2E]
@@ -227,9 +227,9 @@ _081AE5F0:
bx r1
thumb_func_end Unused_ListMenuInit2
thumb_func_start ListMenuHandleInput
@ int ListMenuHandleInput(u8 taskId)
ListMenuHandleInput: @ 81AE604
thumb_func_start ListMenuHandleInputGetItemId
@ int ListMenuHandleInputGetItemId(u8 taskId)
ListMenuHandleInputGetItemId: @ 81AE604
push {lr}
lsls r0, 24
lsrs r0, 24
@@ -337,7 +337,7 @@ _081AE6BE:
_081AE6C2:
pop {r1}
bx r1
thumb_func_end ListMenuHandleInput
thumb_func_end ListMenuHandleInputGetItemId
thumb_func_start sub_81AE6C8
sub_81AE6C8: @ 81AE6C8
@@ -557,8 +557,8 @@ _081AE856:
.pool
thumb_func_end sub_81AE838
thumb_func_start get_coro_args_x18_x1A
get_coro_args_x18_x1A: @ 81AE860
thumb_func_start sub_81AE860
sub_81AE860: @ 81AE860
push {lr}
adds r3, r1, 0
lsls r0, 24
@@ -581,7 +581,7 @@ _081AE882:
pop {r0}
bx r0
.pool
thumb_func_end get_coro_args_x18_x1A
thumb_func_end sub_81AE860
thumb_func_start ListMenuGetYCoordForPrintingArrowCursor
@ u8 ListMenuGetYCoordForPrintingArrowCursor(u8 taskId)

View File

@@ -226,6 +226,18 @@
.2byte \var2
.endm
@ Generic compare macro which attempts to deduce argument types based on their values
@ Any values between 0x4000 to 0x4FFF and 0x8000 to 0x8FFF are considered event variable identifiers
.macro compare arg1, arg2
.if ((\arg1 >> 12) == 4 || (\arg1 >> 12) == 8) && ((\arg2 >> 12) == 4 || (\arg2 >> 12) == 8)
compare_var_to_var \arg1, \arg2
.elseif ((\arg1 >> 12) == 4 || (\arg1 >> 12) == 8) && (\arg2 >= 0 && \arg2 <= 0xFFFF)
compare_var_to_value \arg1, \arg2
.else
.error "Invalid arguments for 'compare'"
.endif
.endm
@ Calls the native C function stored at `func`.
.macro callnative func
.byte 0x23
@@ -518,57 +530,58 @@
.endm
@ Applies the movement data at movements to the specified (index) Object. Also closes any standard message boxes that are still open.
.macro applymovement index, movements
.byte 0x4f
.2byte \index
.4byte \movements
.endm
@ Applies the movement data at movements to the specified (index) Object on the specified (map_group, map_num) map. Really only useful if the object has followed from one map to another (e.g. Wally during the catching event).
.macro applymovementat variable, movements, map
.byte 0x50
.2byte \variable
.4byte \movements
map \map
@ If no map is specified, then the current map is used.
.macro applymovement index, movements, map
.ifb \map
.byte 0x4f
.2byte \index
.4byte \movements
.else
@ Really only useful if the object has followed from one map to another (e.g. Wally during the catching event).
.byte 0x50
.2byte \index
.4byte \movements
map \map
.endif
.endm
@ Blocks script execution until the movements being applied to the specified (index) Object finish. If the specified Object is 0x0000, then the command will block script execution until all Objects affected by applymovement finish their movements. If the specified Object is not currently being manipulated with applymovement, then this command does nothing.
.macro waitmovement index
.byte 0x51
.2byte \index
.endm
@ Blocks script execution until the movements being applied to the specified (index) Object on the specified (map) map finish.
.macro waitmovementat index, map
.byte 0x52
.2byte \index
map \map
.endm
@ Attempts to hide the specified (index) Object on the current map, by setting its visibility flag if it has a valid one. If the Object does not have a valid visibility flag, this command does nothing.
.macro removeobject index
.byte 0x53
.2byte \index
@ If no map is specified, then the current map is used.
.macro waitmovement index, map
.ifb \map
.byte 0x51
.2byte \index
.else
.byte 0x52
.2byte \index
map \map
.endif
.endm
@ Attempts to hide the specified (index) Object on the specified (map_group, map_num) map, by setting its visibility flag if it has a valid one. If the Object does not have a valid visibility flag, this command does nothing.
.macro removeobjectat index, map
.byte 0x54
.2byte \index
map \map
.endm
@ Unsets the specified (index) Object's visibility flag on the current map if it has a valid one. If the Object does not have a valid visibility flag, this command does nothing.
.macro addobject index
.byte 0x55
.2byte \index
@ If no map is specified, then the current map is used.
.macro removeobject index, map
.ifb \map
.byte 0x53
.2byte \index
.else
.byte 0x54
.2byte \index
map \map
.endif
.endm
@ Unsets the specified (index) Object's visibility flag on the specified (map_group, map_num) map if it has a valid one. If the Object does not have a valid visibility flag, this command does nothing.
.macro addobjectat index, map
.byte 0x56
.2byte \index
map \map
@ If no map is specified, then the current map is used.
.macro addobject index, map
.ifb \map
.byte 0x55
.2byte \index
.else
.byte 0x56
.2byte \index
map \map
.endif
.endm
@ Sets the specified (index) Object's position on the current map.
@@ -663,12 +676,12 @@
.byte 0x5d
.endm
@ Goes to address after the trainerbattle command (called by the battle functions, see battle_setup.c)
@ Goes to address after the trainerbattle command (called by the battle functions, see battle_setup.c)
.macro gotopostbattlescript
.byte 0x5e
.endm
@ Goes to address specified in the trainerbattle command (called by the battle functions, see battle_setup.c)
@ Goes to address specified in the trainerbattle command (called by the battle functions, see battle_setup.c)
.macro gotobeatenscript
.byte 0x5f
.endm
@@ -850,11 +863,11 @@
.2byte \species
.endm
.macro setmonmove byte1, byte2, word
.macro setmonmove index, slot, move
.byte 0x7b
.byte \byte1
.byte \byte2
.2byte \word
.byte \index
.byte \slot
.2byte \move
.endm
@ Checks if at least one Pokemon in the player's party knows the specified (index) attack. If so, variable 0x800D (LASTRESULT) is set to the (zero-indexed) slot number of the first Pokemon that knows the move. If not, LASTRESULT is set to 0x0006. Variable 0x8004 is also set to this Pokemon's species.
@@ -958,7 +971,7 @@
.endm
@ This allows you to choose a Pokemon to use in a contest. In FireRed, this command sets the byte at 0x03000EA8 to 0x01.
.macro choosecontestpkmn
.macro choosecontestmon
.byte 0x8b
.endm
@@ -1024,10 +1037,10 @@
.byte \y
.endm
@ Gets the price reduction for the index (word) given. In FireRed, this command is a nop.
.macro getpricereduction word
@ Gets the price reduction for the index given. In FireRed, this command is a nop.
.macro getpricereduction index
.byte 0x96
.2byte \word
.2byte \index
.endm
@ Fades the screen to and from black and white. Mode 0x00 fades from black, mode 0x01 fades out to black, mode 0x2 fades in from white, and mode 0x3 fades out to white.
@@ -1078,9 +1091,9 @@
.endm
@ Sets which healing place the player will return to if all of the Pokemon in their party faint.
.macro setrespawn flightspot
.macro setrespawn heallocation
.byte 0x9f
.2byte \flightspot
.2byte \heallocation
.endm
@ Checks the player's gender. If male, then 0x0000 is stored in variable 0x800D (LASTRESULT). If female, then 0x0001 is stored in LASTRESULT.
@@ -1187,7 +1200,7 @@
.endm
@ Sets the door tile at (x, y) to be closed without an animation.
.macro setdoorclosed2 x, y
.macro setdoorclosed x, y
.byte 0xb0
.2byte \x
.2byte \y
@@ -1217,9 +1230,9 @@
.2byte \count
.endm
.macro takecoins word
.macro takecoins count
.byte 0xb5
.2byte \word
.2byte \count
.endm
@ Prepares to start a wild battle against a species at Level level holding item. Running this command will not affect normal wild battles. You start the prepared battle with dowildbattle.
@@ -1235,10 +1248,9 @@
.byte 0xb7
.endm
.macro setvaddress long, word
.macro setvaddress pointer
.byte 0xb8
.4byte \long
.2byte \word
.4byte \pointer
.endm
.macro vgoto pointer

13
asm/macros/m4a.inc Normal file
View File

@@ -0,0 +1,13 @@
.macro song label, music_player, unknown
.4byte \label
.2byte \music_player
.2byte \unknown
.endm
.macro music_player info_struct, track_struct, unknown_1, unknown_2
.4byte \info_struct
.4byte \track_struct
.byte \unknown_1
.space 1
.2byte \unknown_2
.endm

View File

@@ -5,8 +5,8 @@
.text
thumb_func_start sub_8121DA0
sub_8121DA0: @ 8121DA0
thumb_func_start ResetVramOamAndBgCntRegs
ResetVramOamAndBgCntRegs: @ 8121DA0
push {r4,lr}
sub sp, 0xC
movs r0, 0
@@ -50,10 +50,10 @@ sub_8121DA0: @ 8121DA0
pop {r0}
bx r0
.pool
thumb_func_end sub_8121DA0
thumb_func_end ResetVramOamAndBgCntRegs
thumb_func_start sub_8121E10
sub_8121E10: @ 8121E10
thumb_func_start ResetAllBgsCoordinates
ResetAllBgsCoordinates: @ 8121E10
push {lr}
movs r0, 0
movs r1, 0
@@ -89,7 +89,7 @@ sub_8121E10: @ 8121E10
bl ChangeBgY
pop {r0}
bx r0
thumb_func_end sub_8121E10
thumb_func_end ResetAllBgsCoordinates
thumb_func_start SetVBlankHBlankCallbacksToNull
@ void SetVBlankHBlankCallbacksToNull()
@@ -177,8 +177,8 @@ _08121EC0:
.pool
thumb_func_end DisplayMessageAndContinueTask
thumb_func_start sub_8121F20
sub_8121F20: @ 8121F20
thumb_func_start RunTextPrintersRetIsActive
RunTextPrintersRetIsActive: @ 8121F20
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
@@ -191,7 +191,7 @@ sub_8121F20: @ 8121F20
pop {r4}
pop {r1}
bx r1
thumb_func_end sub_8121F20
thumb_func_end RunTextPrintersRetIsActive
thumb_func_start Task_ContinueTaskAfterMessagePrints
@ void Task_ContinueTaskAfterMessagePrints(u8 taskId)
@@ -201,7 +201,7 @@ Task_ContinueTaskAfterMessagePrints: @ 8121F3C
lsrs r4, r0, 24
ldr r0, =gUnknown_0203A140
ldrb r0, [r0]
bl sub_8121F20
bl RunTextPrintersRetIsActive
lsls r0, 16
cmp r0, 0
bne _08121F5A
@@ -752,8 +752,8 @@ _08122322:
bx r0
thumb_func_end sub_8122298
thumb_func_start sub_8122328
sub_8122328: @ 8122328
thumb_func_start LoadListMenuArrowsGfx
LoadListMenuArrowsGfx: @ 8122328
push {lr}
ldr r0, =gUnknown_0859F514
bl LoadCompressedObjectPic
@@ -762,7 +762,7 @@ sub_8122328: @ 8122328
pop {r0}
bx r0
.pool
thumb_func_end sub_8122328
thumb_func_end LoadListMenuArrowsGfx
thumb_func_start sub_8122344
sub_8122344: @ 8122344

View File

@@ -21,7 +21,7 @@ sub_8084620: @ 8084620
lsrs r1, 1
adds r0, r4, 0
bl SetMoney
bl sp000_heal_pokemon
bl HealPlayerParty
bl sub_8084720
bl copy_saved_warp3_bank_and_enter_x_to_warp1
bl warp_in

View File

@@ -98,7 +98,7 @@ _081B0234:
.4byte _081B0474
_081B0290:
bl SetVBlankHBlankCallbacksToNull
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
bl clear_scheduled_bg_copies_to_vram
ldr r1, =gMain
movs r0, 0x87
@@ -429,7 +429,7 @@ sub_81B0550: @ 81B0550
ldr r1, [r5]
movs r0, 0x1
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0x1
bl schedule_bg_copy_tilemap_to_vram
movs r1, 0x82
@@ -3161,7 +3161,7 @@ sub_81B1B8C: @ 81B1B8C
lsrs r4, r0, 24
adds r5, r4, 0
movs r0, 0x6
bl sub_8121F20
bl RunTextPrintersRetIsActive
lsls r0, 16
lsrs r0, 16
cmp r0, 0x1

View File

@@ -733,7 +733,7 @@ sub_816B430: @ 816B430
bl sub_816B4C0
bl sub_816BC14
bl gpu_pal_allocator_reset__manage_upper_four
bl sub_8122328
bl LoadListMenuArrowsGfx
ldr r0, =gUnknown_0203BCC4
ldr r0, [r0]
movs r1, 0xCD
@@ -1013,7 +1013,7 @@ sub_816B674: @ 816B674
cmp r0, 0
bne _0816B71E
ldrb r0, [r4, 0xA]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r6, r0, 0
ldrb r0, [r4, 0xA]
ldr r7, =gUnknown_0203BCBA
@@ -1021,7 +1021,7 @@ sub_816B674: @ 816B674
mov r8, r1
adds r1, r7, 0
mov r2, r8
bl get_coro_args_x18_x1A
bl sub_81AE860
movs r0, 0x2
negs r0, r0
cmp r6, r0
@@ -1820,7 +1820,7 @@ _0816BD58:
movs r1, 0x2
negs r1, r1
str r1, [r0]
ldr r4, =gUnknown_03006310
ldr r4, =gMultiuseListMenuTemplate
adds r1, r4, 0
ldr r0, =gUnknown_085DFF44
ldm r0!, {r2,r3,r6}
@@ -2327,7 +2327,7 @@ _0816C186:
bl sub_816C110
bl sub_816C140
bl sub_816BD04
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldr r2, =gUnknown_0203BCB8
ldrh r1, [r2, 0x2]
ldrh r2, [r2]
@@ -2476,7 +2476,7 @@ sub_816C30C: @ 816C30C
ldr r1, =gUnknown_0203BCBA
subs r4, r1, 0x2
adds r2, r4, 0
bl get_coro_args_x18_x1A
bl sub_81AE860
ldrh r1, [r4, 0x2]
ldrh r0, [r4]
adds r1, r0
@@ -2492,12 +2492,12 @@ sub_816C30C: @ 816C30C
.pool
_0816C35C:
ldrb r0, [r4, 0xA]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r6, r0, 0
ldrb r0, [r4, 0xA]
ldr r1, =gUnknown_0203BCBA
subs r2, r1, 0x2
bl get_coro_args_x18_x1A
bl sub_81AE860
movs r0, 0x2
negs r0, r0
cmp r6, r0
@@ -2691,18 +2691,18 @@ sub_816C4FC: @ 816C4FC
ldrb r0, [r4, 0xA]
ldr r1, =gUnknown_0203BCBA
subs r2, r1, 0x2
bl get_coro_args_x18_x1A
bl sub_81AE860
b _0816C57E
.pool
_0816C530:
ldrb r0, [r4, 0xA]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r6, r0, 0
ldrb r0, [r4, 0xA]
ldr r1, =gUnknown_0203BCBA
subs r4, r1, 0x2
adds r2, r4, 0
bl get_coro_args_x18_x1A
bl sub_81AE860
ldr r0, =gUnknown_0203BCC4
ldr r0, [r0]
movs r1, 0xCD
@@ -2825,7 +2825,7 @@ _0816C622:
adds r0, r2
movs r1, 0xFF
strb r1, [r0]
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldr r2, =gUnknown_0203BCB8
ldrh r1, [r2, 0x2]
ldrh r2, [r2]
@@ -3363,7 +3363,7 @@ sub_816CB04: @ 816CB04
bl sub_816C110
bl sub_816C140
bl sub_816BD04
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrh r1, [r4, 0x2]
ldrh r2, [r4]
bl ListMenuInit

File diff suppressed because it is too large Load Diff

View File

@@ -2351,7 +2351,7 @@ _081C51D6:
thumb_func_start sub_81C51DC
sub_81C51DC: @ 81C51DC
push {lr}
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
ldr r1, =gUnknown_0861F2B4
@@ -2363,7 +2363,7 @@ sub_81C51DC: @ 81C51DC
adds r1, 0x4
movs r0, 0x2
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0x2
bl schedule_bg_copy_tilemap_to_vram
movs r1, 0x82
@@ -2460,7 +2460,7 @@ _081C52DC:
b _081C5308
.pool
_081C52F0:
bl sub_8122328
bl LoadListMenuArrowsGfx
ldr r0, [r4]
ldr r1, =0x00000984
adds r0, r1
@@ -2559,7 +2559,7 @@ _081C5382:
movs r0, 0x2
negs r0, r0
str r0, [r1]
ldr r2, =gUnknown_03006310
ldr r2, =gMultiuseListMenuTemplate
adds r1, r2, 0
ldr r0, =gUnknown_0861F2C0
ldm r0!, {r4,r6,r7}
@@ -2918,7 +2918,7 @@ sub_81C56F8: @ 81C56F8
lsls r4, 3
ldr r0, =gTasks + 0x8
adds r4, r0
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldr r2, =gUnknown_0203CF30
ldrh r1, [r2, 0x8]
ldrh r2, [r2, 0x6]
@@ -3545,7 +3545,7 @@ _081C5C12:
adds r1, r4, 0
adds r1, 0x8
adds r2, r4, 0x6
bl get_coro_args_x18_x1A
bl sub_81AE860
ldrh r1, [r4, 0x8]
ldrh r0, [r4, 0x6]
adds r1, r0
@@ -3565,14 +3565,14 @@ _081C5C12:
.pool
_081C5C5C:
ldrb r0, [r7]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r6, r0, 0
ldrb r0, [r7]
ldr r1, =gUnknown_0203CF38
mov r8, r1
mov r2, r8
subs r2, 0x2
bl get_coro_args_x18_x1A
bl sub_81AE860
movs r0, 0x2
negs r0, r0
cmp r6, r0
@@ -4646,7 +4646,7 @@ sub_81C65CC: @ 81C65CC
bl sub_81C5924
bl sub_81C59BC
bl sub_81C5314
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrh r1, [r6]
ldrh r2, [r7]
bl ListMenuInit
@@ -4953,18 +4953,18 @@ sub_81C68B0: @ 81C68B0
ldrb r0, [r4]
ldr r1, =gUnknown_0203CF38
subs r2, r1, 0x2
bl get_coro_args_x18_x1A
bl sub_81AE860
b _081C6940
.pool
_081C68F8:
ldrb r0, [r4]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r6, r0, 0
ldrb r0, [r4]
ldr r4, =gUnknown_0203CF38
subs r2, r4, 0x2
adds r1, r4, 0
bl get_coro_args_x18_x1A
bl sub_81AE860
movs r0, 0
bl sub_81C7028
subs r4, 0x8
@@ -5066,7 +5066,7 @@ _081C69A8:
strh r0, [r1, 0x6]
_081C69E0:
bl sub_81C5314
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrh r1, [r7]
mov r3, r8
ldrh r2, [r3]
@@ -5124,7 +5124,7 @@ sub_81C6A14: @ 81C6A14
strh r0, [r1, 0x6]
_081C6A5E:
bl sub_81C5314
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
ldrh r1, [r5]
ldrh r2, [r7]
bl ListMenuInit

View File

@@ -21921,7 +21921,7 @@ sub_81D1DC0: @ 81D1DC0
ldr r7, =gUnknown_0203CF4C
ldr r0, =gText_Cancel2
mov r12, r0
ldr r4, =gUnknown_03006310
ldr r4, =gMultiuseListMenuTemplate
ldr r1, =gUnknown_0203CF48
mov r8, r1
ldr r2, =sub_81D1E7C
@@ -23376,7 +23376,7 @@ sub_81D28C8: @ 81D28C8
push {r4-r7,lr}
lsls r1, 16
lsrs r4, r1, 16
ldr r3, =gUnknown_03006310
ldr r3, =gMultiuseListMenuTemplate
adds r2, r3, 0
ldr r1, =gUnknown_08625548
ldm r1!, {r5-r7}

View File

@@ -1066,7 +1066,7 @@ sub_81D6FD0: @ 81D6FD0
thumb_func_start sub_81D6FE0
sub_81D6FE0: @ 81D6FE0
push {r4,lr}
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
ldr r1, =gUnknown_0862A888
@@ -1088,7 +1088,7 @@ sub_81D6FE0: @ 81D6FE0
adds r1, r0
movs r0, 0x2
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0
bl schedule_bg_copy_tilemap_to_vram
movs r0, 0x1
@@ -2758,7 +2758,7 @@ _081D7E08:
thumb_func_start sub_81D7E10
sub_81D7E10: @ 81D7E10
push {r4,lr}
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
ldr r1, =gUnknown_0862AA54
@@ -2780,7 +2780,7 @@ sub_81D7E10: @ 81D7E10
adds r1, r0
movs r0, 0x2
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0
bl schedule_bg_copy_tilemap_to_vram
movs r0, 0x1
@@ -3292,7 +3292,7 @@ _081D829A:
thumb_func_start sub_81D82B0
sub_81D82B0: @ 81D82B0
push {r4,lr}
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
ldr r1, =gUnknown_0862AACC
@@ -3319,7 +3319,7 @@ sub_81D82B0: @ 81D82B0
adds r1, r0
movs r0, 0x3
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0
bl schedule_bg_copy_tilemap_to_vram
movs r0, 0x1
@@ -3899,7 +3899,7 @@ _081D8818:
thumb_func_start sub_81D8828
sub_81D8828: @ 81D8828
push {r4,lr}
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
ldr r1, =gUnknown_0862AB44
@@ -3926,7 +3926,7 @@ sub_81D8828: @ 81D8828
adds r1, r0
movs r0, 0x3
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0
bl schedule_bg_copy_tilemap_to_vram
movs r0, 0x1
@@ -4354,7 +4354,7 @@ _081D8C26:
thumb_func_start sub_81D8C38
sub_81D8C38: @ 81D8C38
push {r4,lr}
bl sub_8121DA0
bl ResetVramOamAndBgCntRegs
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
ldr r1, =gUnknown_0862AD08
@@ -4376,7 +4376,7 @@ sub_81D8C38: @ 81D8C38
adds r1, r0
movs r0, 0x2
bl SetBgTilemapBuffer
bl sub_8121E10
bl ResetAllBgsCoordinates
movs r0, 0
bl schedule_bg_copy_tilemap_to_vram
movs r0, 0x1

12327
asm/rom6.s

File diff suppressed because it is too large Load Diff

9455
asm/rom_81370FC.s Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -425,8 +425,8 @@ _08140618:
bl SetVBlankCallback
bl remove_some_task
bl SetVBlankHBlankCallbacksToNull
bl sub_8121DA0
bl sub_8121E10
bl ResetVramOamAndBgCntRegs
bl ResetAllBgsCoordinates
b _081407F8
_08140630:
bl sub_8140388
@@ -3258,8 +3258,8 @@ sub_8141E7C: @ 8141E7C
ldr r0, =gSpriteCoordOffsetY
strh r4, [r0]
strh r4, [r1]
bl sub_8121DA0
bl sub_8121E10
bl ResetVramOamAndBgCntRegs
bl ResetAllBgsCoordinates
movs r0, 0x50
movs r1, 0
bl SetGpuReg

View File

@@ -1174,8 +1174,8 @@ _080F917A:
bx r1
thumb_func_end sub_80F9160
thumb_func_start sp000_heal_pokemon
sp000_heal_pokemon: @ 80F9180
thumb_func_start HealPlayerParty
HealPlayerParty: @ 80F9180
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -1267,7 +1267,7 @@ _080F922C:
pop {r0}
bx r0
.pool
thumb_func_end sp000_heal_pokemon
thumb_func_end HealPlayerParty
thumb_func_start ScriptGiveMon
@ void ScriptGiveMon(s16 species_num, u8 level, int held_item)

View File

@@ -409,7 +409,7 @@ _080DFDAC:
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
ldr r0, =gUnknown_03006310
ldr r0, =gMultiuseListMenuTemplate
movs r1, 0
movs r2, 0
bl ListMenuInit
@@ -601,7 +601,7 @@ _080DFF78:
movs r0, 0x2
negs r0, r0
str r0, [r1, 0x4]
ldr r3, =gUnknown_03006310
ldr r3, =gMultiuseListMenuTemplate
adds r1, r3, 0
ldr r0, =gUnknown_08589A48
ldm r0!, {r4-r6}
@@ -627,7 +627,7 @@ _080DFFDC:
_080DFFDE:
ldr r0, =gUnknown_02039F70
ldr r0, [r0]
ldr r1, =gUnknown_03006310
ldr r1, =gMultiuseListMenuTemplate
ldrh r1, [r1, 0xE]
ldr r2, =0x00002004
adds r0, r2
@@ -1976,7 +1976,7 @@ Task_BuyMenu: @ 80E0AC8
b _080E0C8E
_080E0AEA:
ldrb r0, [r4, 0xE]
bl ListMenuHandleInput
bl ListMenuHandleInputGetItemId
adds r5, r0, 0
ldrb r0, [r4, 0xE]
ldr r7, =gUnknown_02039F70
@@ -1985,7 +1985,7 @@ _080E0AEA:
adds r1, r2, r3
subs r3, 0x2
adds r2, r3
bl get_coro_args_x18_x1A
bl sub_81AE860
movs r0, 0x2
negs r0, r0
cmp r5, r0

View File

@@ -5,350 +5,10 @@
.text
thumb_func_start sub_8166204
sub_8166204: @ 8166204
push {r4-r6,lr}
adds r5, r0, 0
adds r6, r1, 0
ldr r4, =gUnknown_0203BCAC
ldr r0, =0x0000806c
bl AllocZeroed
str r0, [r4]
ldr r1, =gUnknown_0203BC90
ldr r2, =0x00007fd0
adds r0, r2
str r0, [r1]
str r5, [r0, 0x8]
str r6, [r0, 0x4]
ldr r0, =sub_8166380
bl launch_c3_walk_stairs_and_run_once
ldr r0, =sub_816631C
bl SetMainCallback2
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sub_8166204
thumb_func_start sub_816624C
sub_816624C: @ 816624C
push {r4,r5,lr}
ldr r4, =gUnknown_0203BCAC
ldr r0, =0x0000806c
bl AllocZeroed
str r0, [r4]
ldr r5, =gUnknown_0203BC90
ldr r1, =0x00007fd0
adds r0, r1
str r0, [r5]
ldr r1, =gUnknown_0203BC98
ldr r1, [r1]
str r1, [r0, 0x8]
ldr r1, =gUnknown_0203BC94
ldr r1, [r1]
str r1, [r0, 0x4]
ldr r4, =gUnknown_0203BC9C
ldrb r0, [r4]
bl sub_81672E4
strb r0, [r4]
ldr r5, [r5]
movs r1, 0
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
bls _08166284
movs r1, 0x1
_08166284:
adds r0, r5, 0
adds r0, 0x56
strb r1, [r0]
ldr r0, =sub_8166380
bl launch_c3_walk_stairs_and_run_once
ldr r0, =sub_81662C0
bl SetMainCallback2
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_816624C
thumb_func_start sub_81662C0
sub_81662C0: @ 81662C0
push {r4,lr}
ldr r4, =gUnknown_0203BC90
ldr r0, [r4]
ldr r0, [r0]
bl _call_via_r0
bl AnimateSprites
bl BuildOamBuffer
bl UpdatePaletteFade
ldr r4, [r4]
ldr r1, [r4]
ldr r0, =map_warp_consider_1_to_outside_or_stair_or_dive
cmp r1, r0
bne _081662F0
adds r0, r4, 0
adds r0, 0x50
movs r1, 0
strb r1, [r0]
ldr r0, =sub_8166304
bl SetMainCallback2
_081662F0:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81662C0
thumb_func_start sub_8166304
sub_8166304: @ 8166304
push {lr}
bl sub_81668F8
bl AnimateSprites
bl BuildOamBuffer
bl UpdatePaletteFade
pop {r0}
bx r0
thumb_func_end sub_8166304
thumb_func_start sub_816631C
sub_816631C: @ 816631C
push {lr}
ldr r0, =gUnknown_0203BC90
ldr r0, [r0]
ldr r0, [r0]
bl _call_via_r0
bl AnimateSprites
bl BuildOamBuffer
bl RunTextPrinters
bl UpdatePaletteFade
pop {r0}
bx r0
.pool
thumb_func_end sub_816631C
thumb_func_start sub_8166340
sub_8166340: @ 8166340
push {lr}
bl LoadOam
bl ProcessSpriteCopyRequests
bl TransferPlttBuffer
ldr r0, =gUnknown_0203BCAC
ldr r0, [r0]
ldr r1, =0x00007c58
adds r0, r1
bl sub_81D2108
bl sub_80BA0A8
pop {r0}
bx r0
.pool
thumb_func_end sub_8166340
thumb_func_start launch_c3_walk_stairs_and_run_once
launch_c3_walk_stairs_and_run_once: @ 816636C
ldr r1, =gUnknown_0203BC90
ldr r1, [r1]
str r0, [r1]
adds r1, 0x50
movs r0, 0
strb r0, [r1]
bx lr
.pool
thumb_func_end launch_c3_walk_stairs_and_run_once
thumb_func_start sub_8166380
sub_8166380: @ 8166380
push {r4,r5,lr}
sub sp, 0x4
ldr r1, =gUnknown_0203BC90
ldr r0, [r1]
adds r0, 0x50
ldrb r0, [r0]
adds r2, r1, 0
cmp r0, 0xF
bls _08166394
b _08166556
_08166394:
lsls r0, 2
ldr r1, =_081663A8
adds r0, r1
ldr r0, [r0]
mov pc, r0
.pool
.align 2, 0
_081663A8:
.4byte _081663E8
.4byte _0816640C
.4byte _08166416
.4byte _08166434
.4byte _08166464
.4byte _08166468
.4byte _08166474
.4byte _08166484
.4byte _08166490
.4byte _0816649C
.4byte _081664B8
.4byte _081664BC
.4byte _081664E4
.4byte _08166510
.4byte _08166528
.4byte _08166550
_081663E8:
ldr r2, =gUnknown_0203BCAC
ldr r0, [r2]
ldr r1, =0x00007b10
adds r0, r1
movs r1, 0xFF
strb r1, [r0]
ldr r0, [r2]
ldr r2, =0x00007c58
adds r0, r2
bl sub_81D1ED4
b _0816653C
.pool
_0816640C:
bl ResetSpriteData
bl FreeAllSpritePalettes
b _0816653C
_08166416:
movs r0, 0
bl SetVBlankCallback
movs r0, 0
str r0, [sp]
movs r1, 0xC0
lsls r1, 19
ldr r2, =0x05006000
mov r0, sp
bl CpuSet
b _0816653C
.pool
_08166434:
movs r0, 0
bl ResetBgsAndClearDma3BusyFlags
ldr r1, =gUnknown_085DFCCC
movs r0, 0
movs r2, 0x4
bl InitBgsFromTemplates
ldr r0, =gUnknown_085DFCDC
bl InitWindows
bl DeactivateAllTextPrinters
movs r0, 0
movs r1, 0x97
movs r2, 0xE0
bl sub_809882C
b _0816653C
.pool
_08166464:
ldr r1, [r2]
b _08166540
_08166468:
bl sub_8168328
lsls r0, 24
cmp r0, 0
bne _08166556
b _0816653C
_08166474:
ldr r1, =gKeyRepeatStartDelay
movs r0, 0x14
strh r0, [r1]
bl sub_8167420
b _0816653C
.pool
_08166484:
bl sub_8167930
lsls r0, 24
cmp r0, 0
bne _08166556
b _0816653C
_08166490:
movs r0, 0
bl sub_8167608
bl sub_8167760
b _0816653C
_0816649C:
ldr r0, =gUnknown_0203BCAC
ldr r0, [r0]
ldr r1, =0x00007b0e
adds r0, r1
bl sub_81D312C
lsls r0, 24
cmp r0, 0
bne _08166556
b _0816653C
.pool
_081664B8:
ldr r1, [r2]
b _08166540
_081664BC:
ldr r5, =gUnknown_0203BCAC
ldr r1, [r5]
ldr r4, =0x00007c58
adds r0, r1, r4
ldr r2, =0x00007c6c
adds r1, r2
bl sub_81D2754
ldr r0, [r5]
adds r0, r4
bl sub_81D20AC
b _0816653C
.pool
_081664E4:
ldr r4, =gUnknown_0203BCAC
ldr r0, [r4]
ldr r1, =0x00007c58
adds r0, r1
bl sub_81D20BC
lsls r0, 24
cmp r0, 0
bne _08166556
ldr r2, [r4]
ldr r1, =0x00007c58
adds r0, r2, r1
adds r1, 0x14
adds r2, r1
adds r1, r2, 0
bl sub_81D1F84
b _0816653C
.pool
_08166510:
ldr r0, =gUnknown_0203BCAC
ldr r0, [r0]
ldr r2, =0x00007c58
adds r0, r2
bl sub_81D2230
b _0816653C
.pool
_08166528:
movs r0, 0
bl PutWindowTilemap
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0
movs r1, 0x1
bl sub_8167BA0
_0816653C:
ldr r0, =gUnknown_0203BC90
ldr r1, [r0]
_08166540:
adds r1, 0x50
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
b _08166556
.pool
_08166550:
ldr r0, =map_warp_consider_1_to_outside_or_stair_or_dive
bl launch_c3_walk_stairs_and_run_once
_08166556:
add sp, 0x4
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8166380
thumb_func_start map_warp_consider_1_to_outside_or_stair_or_dive
map_warp_consider_1_to_outside_or_stair_or_dive: @ 8166564
thumb_func_start sub_8166564
sub_8166564: @ 8166564
push {r4,lr}
sub sp, 0x4
ldr r4, =gUnknown_0203BC90
@@ -424,14 +84,14 @@ _081665C0:
bl sub_81D3480
_0816660A:
ldr r0, =sub_8166634
bl launch_c3_walk_stairs_and_run_once
bl sub_816636C
_08166610:
add sp, 0x4
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end map_warp_consider_1_to_outside_or_stair_or_dive
thumb_func_end sub_8166564
thumb_func_start sub_8166634
sub_8166634: @ 8166634
@@ -567,7 +227,7 @@ _0816675C:
.pool
_08166788:
ldr r0, =sub_8166BEC
bl launch_c3_walk_stairs_and_run_once
bl sub_816636C
b _0816680E
.pool
_08166794:
@@ -611,7 +271,7 @@ _081667CC:
.pool
_081667E8:
ldr r0, =sub_816681C
bl launch_c3_walk_stairs_and_run_once
bl sub_816636C
b _0816680E
.pool
_081667F4:
@@ -656,7 +316,7 @@ _08166838:
adds r0, r1
ldrb r0, [r0]
bl sub_81672A4
ldr r1, =gUnknown_0203BC9C
ldr r1, =gPokeblockMonId
strb r0, [r1]
ldr r1, =gUnknown_0203BC94
ldr r2, [r5]
@@ -708,9 +368,9 @@ _08166888:
str r5, [r4]
bl FreeAllWindowBuffers
ldr r1, =gMain
ldr r0, =sub_816624C
ldr r0, =CB2_ReturnAndChooseMonToGivePokeblock
str r0, [r1, 0x8]
bl sub_8179D70
bl CB2_PreparePokeblockFeedScene
_081668D4:
add sp, 0x4
pop {r4,r5}
@@ -752,7 +412,7 @@ _0816693C:
ldr r0, [r0]
ldr r1, =0x00008041
adds r0, r1
ldr r1, =gUnknown_0203BC9C
ldr r1, =gPokeblockMonId
ldrb r0, [r0]
ldrb r1, [r1]
cmp r0, r1
@@ -837,7 +497,7 @@ _081669F4:
adds r0, r1
bl sub_81D3464
ldr r0, =sub_8166A34
bl launch_c3_walk_stairs_and_run_once
bl sub_816636C
ldr r0, =sub_816631C
bl SetMainCallback2
_08166A18:
@@ -1018,9 +678,9 @@ _08166BB6:
bne _08166BDA
ldr r0, =gSpecialVar_ItemId
ldrb r0, [r0]
bl sub_8136F68
bl TryClearPokeblock
ldr r0, =sub_8166BEC
bl launch_c3_walk_stairs_and_run_once
bl sub_816636C
_08166BDA:
pop {r4-r6}
pop {r0}
@@ -1225,7 +885,7 @@ sub_8166D44: @ 8166D44
movs r0, 0x2
movs r1, 0x3
bl CopyWindowToVram
ldr r0, =gUnknown_085DFCFC
ldr r0, =sUsePokeblockYesNoWinTemplate
movs r1, 0x97
movs r2, 0xE
movs r3, 0
@@ -1497,7 +1157,7 @@ sub_8166FD4: @ 8166FD4
movs r0, 0
_08166FEC:
lsls r0, 16
ldr r1, =gUnknown_085DFD04
ldr r1, =sContestStatNames
lsls r0, r3, 2
adds r0, r1
ldr r1, [r0]
@@ -1719,7 +1379,7 @@ sub_8167184: @ 8167184
adds r0, r3, 0
adds r0, 0x6E
strh r1, [r0]
ldr r0, =gUnknown_0203BC9E
ldr r0, =gPokeblockGain
movs r1, 0
ldrsh r0, [r0, r1]
cmp r0, 0