diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/field_region_map.s | 325 | ||||
-rw-r--r-- | asm/heal_location.s | 83 | ||||
-rwxr-xr-x | asm/party_menu.s | 2 | ||||
-rw-r--r-- | asm/pokedex_area_screen.s | 8 | ||||
-rwxr-xr-x | asm/pokenav.s | 8 | ||||
-rw-r--r-- | asm/region_map.s | 4288 | ||||
-rw-r--r-- | asm/rom4.s | 6 |
7 files changed, 12 insertions, 4708 deletions
diff --git a/asm/field_region_map.s b/asm/field_region_map.s deleted file mode 100644 index 512dfb151..000000000 --- a/asm/field_region_map.s +++ /dev/null @@ -1,325 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_817018C -sub_817018C: @ 817018C - push {r4,r5,lr} - adds r5, r0, 0 - movs r0, 0 - bl SetVBlankCallback - ldr r4, =gUnknown_0203BCD0 - movs r0, 0x89 - lsls r0, 4 - bl Alloc - str r0, [r4] - ldr r1, =0x0000088c - adds r2, r0, r1 - movs r1, 0 - strh r1, [r2] - str r5, [r0] - ldr r0, =sub_81701C4 - bl SetMainCallback2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_817018C - - thumb_func_start sub_81701C4 -sub_81701C4: @ 81701C4 - push {lr} - movs r0, 0 - movs r1, 0 - bl SetGpuReg - movs r0, 0x10 - movs r1, 0 - bl SetGpuReg - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - movs r0, 0x14 - movs r1, 0 - bl SetGpuReg - movs r0, 0x16 - movs r1, 0 - bl SetGpuReg - movs r0, 0x18 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1A - movs r1, 0 - bl SetGpuReg - movs r0, 0x1C - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - bl ResetSpriteData - bl FreeAllSpritePalettes - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gUnknown_085E5068 - movs r0, 0x1 - movs r2, 0x2 - bl InitBgsFromTemplates - ldr r0, =gUnknown_085E5070 - bl InitWindows - bl DeactivateAllTextPrinters - movs r0, 0 - movs r1, 0x27 - movs r2, 0xD0 - bl sub_809882C - bl clear_scheduled_bg_copies_to_vram - ldr r0, =sub_8170274 - bl SetMainCallback2 - ldr r0, =sub_8170260 - bl SetVBlankCallback - pop {r0} - bx r0 - .pool - thumb_func_end sub_81701C4 - - thumb_func_start sub_8170260 -sub_8170260: @ 8170260 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_8170260 - - thumb_func_start sub_8170274 -sub_8170274: @ 8170274 - push {lr} - bl sub_8170290 - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - bl do_scheduled_bg_tilemap_copies_to_vram - pop {r0} - bx r0 - thumb_func_end sub_8170274 - - thumb_func_start sub_8170290 -sub_8170290: @ 8170290 - push {r4,r5,lr} - sub sp, 0xC - ldr r1, =gUnknown_0203BCD0 - ldr r0, [r1] - ldr r2, =0x0000088c - adds r0, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x6 - bls _081702A6 - b _08170416 -_081702A6: - lsls r0, 2 - ldr r1, =_081702BC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081702BC: - .4byte _081702D8 - .4byte _08170300 - .4byte _08170358 - .4byte _08170380 - .4byte _08170394 - .4byte _081703C0 - .4byte _081703E8 -_081702D8: - ldr r0, [r4] - adds r0, 0x8 - movs r1, 0 - bl sub_8122CDC - movs r0, 0 - movs r1, 0 - bl sub_8124288 - movs r0, 0x1 - movs r1, 0x1 - bl sub_81240D4 - ldr r1, [r4] - ldr r0, =0x0000088c - adds r1, r0 - b _081703D8 - .pool -_08170300: - movs r0, 0x1 - movs r1, 0 - movs r2, 0x27 - movs r3, 0xD - bl SetWindowBorderStyle - ldr r5, =gText_Hoenn - movs r0, 0x1 - adds r1, r5, 0 - movs r2, 0x38 - bl GetStringCenterAlignXOffset - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x1 - str r0, [sp] - movs r4, 0 - str r4, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x1 - adds r2, r5, 0 - bl PrintTextOnWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0 - movs r1, 0 - movs r2, 0x27 - movs r3, 0xD - bl SetWindowBorderStyle - bl sub_8170428 - movs r0, 0x1 - negs r0, r0 - str r4, [sp] - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - b _081703CC - .pool -_08170358: - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuRegBits - movs r0, 0 - bl ShowBg - movs r0, 0x2 - bl ShowBg - ldr r0, =gUnknown_0203BCD0 - ldr r1, [r0] - ldr r0, =0x0000088c - adds r1, r0 - b _081703D8 - .pool -_08170380: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08170416 - ldr r1, [r4] - b _081703D4 - .pool -_08170394: - bl sub_81230AC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _081703A6 - bl sub_8170428 - b _08170416 -_081703A6: - cmp r0, 0x3 - blt _08170416 - cmp r0, 0x5 - bgt _08170416 - ldr r0, =gUnknown_0203BCD0 - ldr r1, [r0] - ldr r0, =0x0000088c - adds r1, r0 - b _081703D8 - .pool -_081703C0: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 -_081703CC: - bl BeginNormalPaletteFade - ldr r0, =gUnknown_0203BCD0 - ldr r1, [r0] -_081703D4: - ldr r2, =0x0000088c - adds r1, r2 -_081703D8: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _08170416 - .pool -_081703E8: - ldr r0, =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _08170416 - bl sub_812305C - ldr r4, =gUnknown_0203BCD0 - ldr r0, [r4] - ldr r0, [r0] - bl SetMainCallback2 - ldr r0, [r4] - cmp r0, 0 - beq _08170412 - bl Free - str r5, [r4] -_08170412: - bl FreeAllWindowBuffers -_08170416: - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8170290 - - thumb_func_start sub_8170428 -sub_8170428: @ 8170428 - push {r4,lr} - sub sp, 0xC - ldr r4, =gUnknown_0203BCD0 - ldr r0, [r4] - ldrb r0, [r0, 0xA] - cmp r0, 0 - beq _08170460 - movs r0, 0 - movs r1, 0x11 - bl FillWindowPixelBuffer - ldr r2, [r4] - adds r2, 0xC - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - movs r1, 0x1 - movs r3, 0 - bl PrintTextOnWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - b _08170470 - .pool -_08170460: - movs r0, 0 - movs r1, 0x11 - bl FillWindowPixelBuffer - movs r0, 0 - movs r1, 0x3 - bl CopyWindowToVram -_08170470: - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8170428 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/heal_location.s b/asm/heal_location.s deleted file mode 100644 index f7947d34e..000000000 --- a/asm/heal_location.s +++ /dev/null @@ -1,83 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8122C5C -sub_8122C5C: @ 8122C5C - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 16 - lsrs r1, 16 - movs r3, 0 - ldr r2, =gUnknown_0859F53C -_08122C6A: - movs r0, 0 - ldrsb r0, [r2, r0] - cmp r0, r4 - bne _08122C84 - movs r0, 0x1 - ldrsb r0, [r2, r0] - cmp r0, r1 - bne _08122C84 - adds r0, r3, 0x1 - b _08122C8E - .pool -_08122C84: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x15 - bls _08122C6A - movs r0, 0 -_08122C8E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8122C5C - - thumb_func_start sub_8122C94 -sub_8122C94: @ 8122C94 - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 16 - lsrs r1, 16 - bl sub_8122C5C - cmp r0, 0 - beq _08122CB4 - lsls r0, 3 - ldr r1, =gUnknown_0859F534 - adds r0, r1 - b _08122CB6 - .pool -_08122CB4: - movs r0, 0 -_08122CB6: - pop {r1} - bx r1 - thumb_func_end sub_8122C94 - - thumb_func_start sub_8122CBC -@ warpdata *sub_8122CBC(int a1) -sub_8122CBC: @ 8122CBC - push {lr} - cmp r0, 0 - beq _08122CD4 - cmp r0, 0x16 - bhi _08122CD4 - lsls r0, 3 - ldr r1, =gUnknown_0859F534 - adds r0, r1 - b _08122CD6 - .pool -_08122CD4: - movs r0, 0 -_08122CD6: - pop {r1} - bx r1 - thumb_func_end sub_8122CBC - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/party_menu.s b/asm/party_menu.s index 3d2af7e7d..6b0f92d12 100755 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -9892,7 +9892,7 @@ _081B55E8: .pool _081B5614: ldr r1, =gUnknown_0203CEC8 - ldr r0, =sub_8124690 + ldr r0, =MCB2_FlyMap b _081B5628 .pool _081B5624: diff --git a/asm/pokedex_area_screen.s b/asm/pokedex_area_screen.s index b599b365c..9bf70a379 100644 --- a/asm/pokedex_area_screen.s +++ b/asm/pokedex_area_screen.s @@ -362,7 +362,7 @@ sub_813CD04: @ 813CD04 adds r1, r3, 0 bl get_mapheader_by_bank_and_number ldrb r0, [r0, 0x14] - bl sub_8123F9C + bl CorrectSpecialMapSecId ldr r2, [r4] movs r1, 0x88 lsls r1, 1 @@ -653,7 +653,7 @@ _0813CF5A: adds r0, r4, 0 adds r1, r6, 0 str r3, [sp] - bl sub_8123E9C + bl GetRegionMapSectionIdAt ldr r3, [sp] ldr r2, [r3] mov r7, r9 @@ -1338,11 +1338,11 @@ _0813D4F8: bl sub_8122D88 movs r0, 0x1 movs r1, 0x1 - bl sub_8124288 + bl CreateRegionMapPlayerIcon movs r1, 0x8 negs r1, r1 movs r0, 0 - bl sub_8123824 + bl PokedexAreaScreen_UpdateRegionMapVariablesAndVideoRegs b _0813D584 .pool _0813D520: diff --git a/asm/pokenav.s b/asm/pokenav.s index 0c7a80742..3ef99338e 100755 --- a/asm/pokenav.s +++ b/asm/pokenav.s @@ -10864,7 +10864,7 @@ sub_81CC670: @ 81CC670 movs r0, 0x4 bl sub_81C763C adds r4, r0, 0 - bl sub_812305C + bl FreeRegionMapIconResources bl sub_81CC9EC ldrb r0, [r4, 0x8] bl RemoveWindow @@ -10886,7 +10886,7 @@ sub_81CC6A4: @ 81CC6A4 bl TransferPlttBuffer bl LoadOam bl ProcessSpriteCopyRequests - bl sub_81237B4 + bl UpdateRegionMapVideoRegs pop {r0} bx r0 thumb_func_end sub_81CC6A4 @@ -10991,10 +10991,10 @@ _081CC784: bne _081CC7AC movs r0, 0x4 movs r1, 0x9 - bl sub_8124288 + bl CreateRegionMapPlayerIcon movs r0, 0x5 movs r1, 0xA - bl sub_81240D4 + bl CreateRegionMapCursor bl sub_812454C b _081CC77C _081CC7AC: diff --git a/asm/region_map.s b/asm/region_map.s deleted file mode 100644 index 032bdf7a5..000000000 --- a/asm/region_map.s +++ /dev/null @@ -1,4288 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_8122CDC -sub_8122CDC: @ 8122CDC - push {lr} - lsls r2, r1, 24 - lsrs r2, 24 - movs r1, 0 - bl sub_8122CF8 -_08122CE8: - bl sub_8122DB0 - lsls r0, 24 - cmp r0, 0 - bne _08122CE8 - pop {r0} - bx r0 - thumb_func_end sub_8122CDC - - thumb_func_start sub_8122CF8 -sub_8122CF8: @ 8122CF8 - push {r4,r5,lr} - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r3, =gUnknown_0203A144 - str r0, [r3] - movs r1, 0x79 - adds r1, r0 - mov r12, r1 - movs r1, 0 - mov r5, r12 - strb r1, [r5] - adds r0, 0x78 - strb r2, [r0] - ldr r1, [r3] - cmp r2, 0x1 - bne _08122D28 - ldr r0, =sub_8123254 - b _08122D2A - .pool -_08122D28: - ldr r0, =sub_81230C4 -_08122D2A: - str r0, [r1, 0x18] - cmp r4, 0 - beq _08122D64 - ldr r1, [r3] - ldr r0, [r4] - lsls r0, 30 - lsrs r0, 30 - adds r1, 0x80 - strb r0, [r1] - ldr r1, [r3] - ldr r0, [r4] - lsls r0, 28 - lsrs r0, 30 - adds r1, 0x81 - strb r0, [r1] - ldr r1, [r3] - ldr r0, [r4] - lsls r0, 23 - lsrs r0, 27 - adds r1, 0x82 - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x83 - movs r1, 0x1 - strb r1, [r0] - b _08122D80 - .pool -_08122D64: - ldr r0, [r3] - adds r0, 0x80 - movs r1, 0x2 - strb r1, [r0] - ldr r0, [r3] - adds r0, 0x81 - strb r1, [r0] - ldr r0, [r3] - adds r0, 0x82 - movs r1, 0x1C - strb r1, [r0] - ldr r0, [r3] - adds r0, 0x83 - strb r4, [r0] -_08122D80: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8122CF8 - - thumb_func_start sub_8122D88 -sub_8122D88: @ 8122D88 - push {r4,lr} - ldr r4, =gUnknown_0203A144 - str r0, [r4] - bl sub_81238AC - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x54 - ldrh r1, [r0] - adds r0, 0x20 - strh r1, [r0] - subs r0, 0x1E - ldrh r1, [r0] - adds r0, 0x20 - strh r1, [r0] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8122D88 - - thumb_func_start sub_8122DB0 -sub_8122DB0: @ 8122DB0 - push {r4,r5,lr} - sub sp, 0xC - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - adds r0, 0x79 - ldrb r0, [r0] - cmp r0, 0x7 - bls _08122DC2 - b _0812300C -_08122DC2: - lsls r0, 2 - ldr r1, =_08122DD4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08122DD4: - .4byte _08122DF4 - .4byte _08122E2C - .4byte _08122E78 - .4byte _08122E94 - .4byte _08122EB0 - .4byte _08122ECC - .4byte _08122F10 - .4byte _08122F8C -_08122DF4: - ldr r0, =gUnknown_0203A144 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x83 - ldrb r0, [r0] - cmp r0, 0 - beq _08122E18 - adds r0, r1, 0 - adds r0, 0x80 - ldrb r0, [r0] - ldr r1, =gUnknown_0859F77C - movs r2, 0 - str r2, [sp] - b _08122E52 - .pool -_08122E18: - ldr r0, =gUnknown_0859F77C - ldr r1, =0x06008000 - bl LZ77UnCompVram - b _08123014 - .pool -_08122E2C: - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - adds r0, 0x83 - ldrb r0, [r0] - cmp r0, 0 - beq _08122E64 - bl free_temp_tile_data_buffers_if_possible - lsls r0, 24 - cmp r0, 0 - beq _08122E44 - b _08123014 -_08122E44: - ldr r0, [r4] - adds r0, 0x80 - ldrb r0, [r0] - ldr r1, =gUnknown_085A04E0 - movs r2, 0x1 - str r2, [sp] - movs r2, 0 -_08122E52: - movs r3, 0 - bl decompress_and_copy_tile_data_to_vram - b _08123014 - .pool -_08122E64: - ldr r0, =gUnknown_085A04E0 - ldr r1, =0x0600e000 - bl LZ77UnCompVram - b _08123014 - .pool -_08122E78: - bl free_temp_tile_data_buffers_if_possible - lsls r0, 24 - cmp r0, 0 - beq _08122E84 - b _08123014 -_08122E84: - ldr r0, =gUnknown_0859F73C - movs r1, 0x70 - movs r2, 0x60 - bl LoadPalette - b _08123014 - .pool -_08122E94: - ldr r0, =gUnknown_0859F60C - ldr r1, =gUnknown_0203A144 - ldr r1, [r1] - movs r2, 0xC2 - lsls r2, 1 - adds r1, r2 - bl LZ77UnCompWram - b _08123014 - .pool -_08122EB0: - ldr r0, =gUnknown_0859F650 - ldr r1, =gUnknown_0203A144 - ldr r1, [r1] - movs r5, 0xA1 - lsls r5, 2 - adds r1, r5 - bl LZ77UnCompWram - b _08123014 - .pool -_08122ECC: - bl sub_81238AC - ldr r4, =gUnknown_0203A144 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x54 - ldrh r1, [r0] - adds r0, 0x20 - strh r1, [r0] - subs r0, 0x1E - ldrh r0, [r0] - adds r1, r2, 0 - adds r1, 0x76 - strh r0, [r1] - ldrh r0, [r2] - bl sub_8123EB4 - ldr r1, [r4] - strh r0, [r1] - ldrh r0, [r1] - bl get_flagnr_blue_points - ldr r1, [r4] - strb r0, [r1, 0x2] - ldr r1, [r4] - adds r0, r1, 0x4 - ldrh r1, [r1] - movs r2, 0x10 - bl GetMapName - b _08123014 - .pool -_08122F10: - ldr r0, =gUnknown_0203A144 - ldr r4, [r0] - adds r0, r4, 0 - adds r0, 0x78 - ldrb r1, [r0] - cmp r1, 0 - bne _08122F3C - movs r0, 0x80 - lsls r0, 1 - str r0, [sp] - str r0, [sp, 0x4] - str r1, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_81236C4 - b _08123014 - .pool -_08122F3C: - adds r1, r4, 0 - adds r1, 0x54 - ldrh r0, [r1] - lsls r0, 3 - subs r0, 0x34 - adds r2, r4, 0 - adds r2, 0x5C - movs r3, 0 - strh r0, [r2] - movs r0, 0x56 - adds r0, r4 - mov r12, r0 - ldrh r0, [r0] - lsls r0, 3 - subs r0, 0x44 - adds r5, r4, 0 - adds r5, 0x5E - strh r0, [r5] - ldrh r1, [r1] - adds r0, r4, 0 - adds r0, 0x64 - strh r1, [r0] - mov r0, r12 - ldrh r1, [r0] - adds r0, r4, 0 - adds r0, 0x66 - strh r1, [r0] - movs r1, 0 - ldrsh r0, [r2, r1] - movs r2, 0 - ldrsh r1, [r5, r2] - movs r2, 0x80 - str r2, [sp] - str r2, [sp, 0x4] - str r3, [sp, 0x8] - movs r2, 0x38 - movs r3, 0x48 - bl sub_81236C4 - b _08123014 -_08122F8C: - bl sub_8123FB0 - bl sub_81237B4 - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - movs r1, 0 - str r1, [r0, 0x1C] - str r1, [r0, 0x20] - adds r0, 0x7A - strb r1, [r0] - ldr r0, [r4] - adds r0, 0x7E - strb r1, [r0] - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x83 - ldrb r0, [r0] - cmp r0, 0 - beq _08123002 - adds r0, r1, 0 - adds r0, 0x80 - ldrb r0, [r0] - movs r1, 0x3 - movs r2, 0x2 - bl SetBgAttribute - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x80 - ldrb r0, [r0] - adds r1, 0x81 - ldrb r2, [r1] - movs r1, 0x1 - bl SetBgAttribute - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x80 - ldrb r0, [r0] - adds r1, 0x82 - ldrb r2, [r1] - movs r1, 0x2 - bl SetBgAttribute - ldr r0, [r4] - adds r0, 0x80 - ldrb r0, [r0] - movs r1, 0x6 - movs r2, 0x1 - bl SetBgAttribute - ldr r0, [r4] - adds r0, 0x80 - ldrb r0, [r0] - movs r1, 0x4 - movs r2, 0x1 - bl SetBgAttribute -_08123002: - ldr r1, [r4] - adds r1, 0x79 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_0812300C: - movs r0, 0 - b _08123022 - .pool -_08123014: - ldr r0, =gUnknown_0203A144 - ldr r1, [r0] - adds r1, 0x79 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0x1 -_08123022: - add sp, 0xC - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8122DB0 - - thumb_func_start sub_8123030 -sub_8123030: @ 8123030 - push {lr} - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - movs r0, 0xE0 - lsls r0, 2 - lsls r1, 24 - lsrs r1, 24 - bl BlendPalettes - ldr r0, =gPlttBufferFaded + 0xE0 - ldr r1, =gPlttBufferUnfaded + 0xE0 - movs r2, 0x30 - bl CpuSet - pop {r0} - bx r0 - .pool - thumb_func_end sub_8123030 - - thumb_func_start sub_812305C -sub_812305C: @ 812305C - push {r4,lr} - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - ldr r0, [r0, 0x1C] - cmp r0, 0 - beq _08123080 - bl DestroySprite - ldr r0, [r4] - adds r0, 0x58 - ldrh r0, [r0] - bl FreeSpriteTilesByTag - ldr r0, [r4] - adds r0, 0x5A - ldrh r0, [r0] - bl FreeSpritePaletteByTag -_08123080: - ldr r0, [r4] - ldr r0, [r0, 0x20] - cmp r0, 0 - beq _081230A0 - bl DestroySprite - ldr r0, [r4] - adds r0, 0x70 - ldrh r0, [r0] - bl FreeSpriteTilesByTag - ldr r0, [r4] - adds r0, 0x72 - ldrh r0, [r0] - bl FreeSpritePaletteByTag -_081230A0: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_812305C - - thumb_func_start sub_81230AC -sub_81230AC: @ 81230AC - push {lr} - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - ldr r0, [r0, 0x18] - bl _call_via_r0 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .pool - thumb_func_end sub_81230AC - - thumb_func_start sub_81230C4 -sub_81230C4: @ 81230C4 - push {r4,lr} - movs r4, 0 - ldr r2, =gUnknown_0203A144 - ldr r0, [r2] - adds r0, 0x7B - strb r4, [r0] - ldr r0, [r2] - adds r0, 0x7C - strb r4, [r0] - ldr r3, =gMain - ldrh r1, [r3, 0x2C] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _081230F6 - ldr r1, [r2] - adds r0, r1, 0 - adds r0, 0x56 - ldrh r0, [r0] - cmp r0, 0x2 - bls _081230F6 - adds r1, 0x7C - movs r0, 0xFF - strb r0, [r1] - movs r4, 0x1 -_081230F6: - ldrh r1, [r3, 0x2C] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08123114 - ldr r1, [r2] - adds r0, r1, 0 - adds r0, 0x56 - ldrh r0, [r0] - cmp r0, 0xF - bhi _08123114 - adds r1, 0x7C - movs r0, 0x1 - strb r0, [r1] - movs r4, 0x1 -_08123114: - ldrh r1, [r3, 0x2C] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _08123132 - ldr r1, [r2] - adds r0, r1, 0 - adds r0, 0x54 - ldrh r0, [r0] - cmp r0, 0x1 - bls _08123132 - adds r1, 0x7B - movs r0, 0xFF - strb r0, [r1] - movs r4, 0x1 -_08123132: - ldrh r1, [r3, 0x2C] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08123150 - ldr r1, [r2] - adds r0, r1, 0 - adds r0, 0x54 - ldrh r0, [r0] - cmp r0, 0x1B - bhi _08123150 - adds r1, 0x7B - movs r0, 0x1 - strb r0, [r1] - movs r4, 0x1 -_08123150: - ldrh r3, [r3, 0x2E] - movs r0, 0x1 - ands r0, r3 - cmp r0, 0 - beq _08123168 - movs r4, 0x4 - b _08123172 - .pool -_08123168: - movs r0, 0x2 - ands r0, r3 - cmp r0, 0 - beq _08123172 - movs r4, 0x5 -_08123172: - cmp r4, 0x1 - bne _08123184 - ldr r0, [r2] - adds r0, 0x7A - movs r1, 0x4 - strb r1, [r0] - ldr r1, [r2] - ldr r0, =_swiopen - str r0, [r1, 0x18] -_08123184: - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_81230C4 - - thumb_func_start _swiopen -_swiopen: @ 8123190 - push {r4,r5,lr} - ldr r5, =gUnknown_0203A144 - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x7A - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - beq _081231AC - movs r0, 0x2 - b _08123248 - .pool -_081231AC: - adds r0, r1, 0 - adds r0, 0x7B - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - ble _081231C2 - adds r1, 0x54 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_081231C2: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x7B - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - bge _081231DA - adds r1, 0x54 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] -_081231DA: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x7C - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - ble _081231F2 - adds r1, 0x56 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_081231F2: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x7C - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0 - bge _0812320A - adds r1, 0x56 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] -_0812320A: - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x54 - ldrh r0, [r0] - adds r1, 0x56 - ldrh r1, [r1] - bl sub_812386C - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - bl get_flagnr_blue_points - ldr r1, [r5] - strb r0, [r1, 0x2] - ldr r1, [r5] - ldrh r0, [r1] - cmp r4, r0 - beq _0812323C - strh r4, [r1] - adds r0, r1, 0x4 - ldrh r1, [r1] - movs r2, 0x10 - bl GetMapName -_0812323C: - bl sub_8123FB0 - ldr r1, [r5] - ldr r0, =sub_81230C4 - str r0, [r1, 0x18] - movs r0, 0x3 -_08123248: - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end _swiopen - - thumb_func_start sub_8123254 -sub_8123254: @ 8123254 - push {r4-r6,lr} - movs r4, 0 - ldr r3, =gUnknown_0203A144 - ldr r0, [r3] - mov r12, r0 - adds r0, 0x6A - strh r4, [r0] - mov r5, r12 - adds r5, 0x68 - strh r4, [r5] - ldr r2, =gMain - ldrh r1, [r2, 0x2C] - movs r0, 0x40 - ands r0, r1 - adds r6, r3, 0 - adds r3, r2, 0 - cmp r0, 0 - beq _0812328E - mov r0, r12 - adds r0, 0x5E - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0x34 - negs r0, r0 - cmp r1, r0 - ble _0812328E - ldr r0, =0x0000ffff - strh r0, [r5] - movs r4, 0x1 -_0812328E: - ldrh r1, [r3, 0x2C] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _081232AE - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0x5E - movs r5, 0 - ldrsh r0, [r0, r5] - cmp r0, 0x3B - bgt _081232AE - adds r1, 0x68 - movs r0, 0x1 - strh r0, [r1] - movs r4, 0x1 -_081232AE: - ldrh r1, [r3, 0x2C] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _081232D4 - ldr r2, [r6] - adds r0, r2, 0 - adds r0, 0x5C - movs r5, 0 - ldrsh r1, [r0, r5] - movs r0, 0x2C - negs r0, r0 - cmp r1, r0 - ble _081232D4 - adds r1, r2, 0 - adds r1, 0x6A - ldr r0, =0x0000ffff - strh r0, [r1] - movs r4, 0x1 -_081232D4: - ldrh r1, [r3, 0x2C] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _081232F4 - ldr r1, [r6] - adds r0, r1, 0 - adds r0, 0x5C - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0xAB - bgt _081232F4 - adds r1, 0x6A - movs r0, 0x1 - strh r0, [r1] - movs r4, 0x1 -_081232F4: - ldrh r2, [r3, 0x2E] - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _08123300 - movs r4, 0x4 -_08123300: - movs r0, 0x2 - ands r0, r2 - cmp r0, 0 - beq _0812330A - movs r4, 0x5 -_0812330A: - cmp r4, 0x1 - bne _0812331A - ldr r0, [r6] - ldr r1, =sub_8123334 - str r1, [r0, 0x18] - adds r0, 0x6C - movs r1, 0 - strh r1, [r0] -_0812331A: - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8123254 - - thumb_func_start sub_8123334 -sub_8123334: @ 8123334 - push {r4,r5,lr} - ldr r5, =gUnknown_0203A144 - ldr r2, [r5] - adds r3, r2, 0 - adds r3, 0x5E - adds r0, r2, 0 - adds r0, 0x68 - ldrh r0, [r0] - ldrh r1, [r3] - adds r0, r1 - strh r0, [r3] - adds r1, r2, 0 - adds r1, 0x5C - adds r0, r2, 0 - adds r0, 0x6A - ldrh r0, [r0] - ldrh r2, [r1] - adds r0, r2 - strh r0, [r1] - movs r4, 0 - ldrsh r0, [r1, r4] - movs r2, 0 - ldrsh r1, [r3, r2] - bl sub_812378C - ldr r2, [r5] - adds r1, r2, 0 - adds r1, 0x6C - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x8 - bne _08123410 - adds r0, r2, 0 - adds r0, 0x5C - movs r3, 0 - ldrsh r1, [r0, r3] - adds r0, r1, 0 - adds r0, 0x2C - cmp r0, 0 - bge _0812338C - adds r0, 0x7 -_0812338C: - asrs r0, 3 - adds r0, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - adds r0, r2, 0 - adds r0, 0x5E - movs r4, 0 - ldrsh r1, [r0, r4] - adds r0, r1, 0 - adds r0, 0x34 - cmp r0, 0 - bge _081233A6 - adds r0, 0x7 -_081233A6: - asrs r0, 3 - adds r0, 0x2 - lsls r0, 16 - lsrs r1, r0, 16 - adds r4, r2, 0 - adds r4, 0x64 - adds r0, r2, 0 - adds r0, 0x66 - ldrh r2, [r4] - cmp r3, r2 - bne _081233C2 - ldrh r2, [r0] - cmp r1, r2 - beq _081233F2 -_081233C2: - strh r3, [r4] - strh r1, [r0] - adds r0, r3, 0 - bl sub_812386C - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - bl get_flagnr_blue_points - ldr r1, [r5] - strb r0, [r1, 0x2] - ldr r1, [r5] - ldrh r3, [r1] - cmp r4, r3 - beq _081233EE - strh r4, [r1] - adds r0, r1, 0x4 - ldrh r1, [r1] - movs r2, 0x10 - bl GetMapName -_081233EE: - bl sub_8123FB0 -_081233F2: - ldr r0, =gUnknown_0203A144 - ldr r2, [r0] - adds r1, r2, 0 - adds r1, 0x6C - movs r0, 0 - strh r0, [r1] - ldr r0, =sub_8123254 - str r0, [r2, 0x18] - movs r0, 0x3 - b _08123412 - .pool -_08123410: - movs r0, 0x2 -_08123412: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8123334 - - thumb_func_start sub_8123418 -sub_8123418: @ 8123418 - push {r4-r6,lr} - ldr r1, =gUnknown_0203A144 - ldr r2, [r1] - adds r0, r2, 0 - adds r0, 0x78 - ldrb r3, [r0] - adds r5, r1, 0 - cmp r3, 0 - bne _0812349C - subs r0, 0x1A - strh r3, [r0] - subs r0, 0x2 - strh r3, [r0] - str r3, [r2, 0x40] - str r3, [r2, 0x3C] - adds r4, r2, 0 - adds r4, 0x54 - ldrh r0, [r4] - lsls r0, 3 - subs r0, 0x34 - adds r1, r2, 0 - adds r1, 0x60 - strh r0, [r1] - movs r0, 0x56 - adds r0, r2 - mov r12, r0 - ldrh r0, [r0] - lsls r0, 3 - subs r0, 0x44 - adds r3, r2, 0 - adds r3, 0x62 - strh r0, [r3] - movs r6, 0 - ldrsh r0, [r1, r6] - lsls r0, 8 - cmp r0, 0 - bge _08123464 - adds r0, 0xF -_08123464: - asrs r0, 4 - str r0, [r2, 0x44] - movs r1, 0 - ldrsh r0, [r3, r1] - lsls r0, 8 - cmp r0, 0 - bge _08123474 - adds r0, 0xF -_08123474: - asrs r0, 4 - str r0, [r2, 0x48] - ldrh r1, [r4] - adds r0, r2, 0 - adds r0, 0x64 - strh r1, [r0] - mov r3, r12 - ldrh r0, [r3] - adds r1, r2, 0 - adds r1, 0x66 - strh r0, [r1] - movs r0, 0x80 - lsls r0, 9 - str r0, [r2, 0x4C] - ldr r0, =0xfffff800 - b _081234FA - .pool -_0812349C: - adds r0, r2, 0 - adds r0, 0x5C - movs r6, 0 - ldrsh r0, [r0, r6] - lsls r0, 8 - str r0, [r2, 0x3C] - adds r0, r2, 0 - adds r0, 0x5E - movs r1, 0 - ldrsh r0, [r0, r1] - lsls r0, 8 - str r0, [r2, 0x40] - adds r0, r2, 0 - adds r0, 0x60 - movs r1, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - ldr r0, [r2, 0x3C] - cmp r0, 0 - bge _081234C8 - adds r0, 0xF -_081234C8: - asrs r0, 4 - negs r0, r0 - str r0, [r2, 0x44] - ldr r0, [r2, 0x40] - cmp r0, 0 - bge _081234D6 - adds r0, 0xF -_081234D6: - asrs r0, 4 - negs r0, r0 - str r0, [r2, 0x48] - adds r0, r2, 0 - adds r0, 0x64 - ldrh r1, [r0] - subs r0, 0x10 - strh r1, [r0] - adds r0, 0x12 - ldrh r0, [r0] - adds r1, r2, 0 - adds r1, 0x56 - strh r0, [r1] - movs r0, 0x80 - lsls r0, 8 - str r0, [r2, 0x4C] - movs r0, 0x80 - lsls r0, 4 -_081234FA: - str r0, [r2, 0x50] - ldr r0, [r5] - adds r0, 0x6E - movs r1, 0 - strh r1, [r0] - bl sub_8124238 - bl sub_81243B0 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8123418 - - thumb_func_start sub_8123514 -sub_8123514: @ 8123514 - push {r4-r6,lr} - sub sp, 0xC - ldr r0, =gUnknown_0203A144 - ldr r3, [r0] - adds r2, r3, 0 - adds r2, 0x6E - ldrh r1, [r2] - adds r5, r0, 0 - cmp r1, 0xF - bls _08123530 - movs r0, 0 - b _081236B8 - .pool -_08123530: - adds r0, r1, 0x1 - movs r1, 0 - strh r0, [r2] - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x10 - bne _081235A4 - str r1, [r3, 0x44] - str r1, [r3, 0x48] - adds r0, r3, 0 - adds r0, 0x60 - ldrh r1, [r0] - subs r0, 0x4 - strh r1, [r0] - adds r0, 0x6 - ldrh r0, [r0] - adds r1, r3, 0 - adds r1, 0x5E - strh r0, [r1] - adds r1, 0x1A - ldrb r0, [r1] - movs r2, 0x80 - lsls r2, 9 - cmp r0, 0 - bne _08123566 - movs r2, 0x80 - lsls r2, 8 -_08123566: - str r2, [r3, 0x4C] - movs r2, 0 - ldrb r0, [r1] - cmp r0, 0 - bne _08123572 - movs r2, 0x1 -_08123572: - strb r2, [r1] - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x78 - ldrb r0, [r0] - ldr r2, =sub_8123254 - cmp r0, 0 - bne _08123584 - ldr r2, =sub_81230C4 -_08123584: - str r2, [r1, 0x18] - adds r0, r1, 0 - adds r0, 0x58 - ldrh r0, [r0] - adds r1, 0x5A - ldrh r1, [r1] - bl sub_81240D4 - bl sub_81243DC - movs r4, 0 - b _08123686 - .pool -_081235A4: - ldr r2, [r3, 0x3C] - ldr r0, [r3, 0x44] - adds r2, r0 - str r2, [r3, 0x3C] - ldr r0, [r3, 0x40] - ldr r1, [r3, 0x48] - adds r0, r1 - str r0, [r3, 0x40] - asrs r2, 8 - adds r4, r3, 0 - adds r4, 0x5C - strh r2, [r4] - ldr r0, [r3, 0x40] - asrs r0, 8 - adds r1, r3, 0 - adds r1, 0x5E - strh r0, [r1] - ldr r0, [r3, 0x4C] - ldr r1, [r3, 0x50] - adds r0, r1 - str r0, [r3, 0x4C] - ldr r2, [r3, 0x44] - cmp r2, 0 - bge _081235E4 - adds r0, r3, 0 - adds r0, 0x60 - movs r6, 0 - ldrsh r1, [r4, r6] - movs r6, 0 - ldrsh r0, [r0, r6] - cmp r1, r0 - blt _081235F8 -_081235E4: - cmp r2, 0 - ble _08123608 - adds r0, r3, 0 - adds r0, 0x60 - movs r2, 0 - ldrsh r1, [r4, r2] - movs r6, 0 - ldrsh r0, [r0, r6] - cmp r1, r0 - ble _08123608 -_081235F8: - ldr r3, [r5] - adds r0, r3, 0 - adds r0, 0x60 - ldrh r2, [r0] - subs r0, 0x4 - movs r1, 0 - strh r2, [r0] - str r1, [r3, 0x44] -_08123608: - ldr r2, [r5] - ldr r4, [r2, 0x48] - cmp r4, 0 - bge _08123624 - adds r0, r2, 0 - adds r0, 0x5E - adds r3, r2, 0 - adds r3, 0x62 - movs r6, 0 - ldrsh r1, [r0, r6] - movs r6, 0 - ldrsh r0, [r3, r6] - cmp r1, r0 - blt _0812363C -_08123624: - cmp r4, 0 - ble _0812364E - adds r1, r2, 0 - adds r1, 0x5E - adds r0, r2, 0 - adds r0, 0x62 - movs r2, 0 - ldrsh r1, [r1, r2] - movs r6, 0 - ldrsh r0, [r0, r6] - cmp r1, r0 - ble _0812364E -_0812363C: - ldr r2, [r5] - adds r0, r2, 0 - adds r0, 0x62 - ldrh r1, [r0] - adds r3, r2, 0 - adds r3, 0x5E - movs r0, 0 - strh r1, [r3] - str r0, [r2, 0x48] -_0812364E: - ldr r0, =gUnknown_0203A144 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x78 - ldrb r3, [r0] - cmp r3, 0 - bne _08123674 - ldr r1, [r2, 0x4C] - ldr r0, =0x00007fff - cmp r1, r0 - bgt _08123684 - adds r0, 0x1 - str r0, [r2, 0x4C] - str r3, [r2, 0x50] - b _08123684 - .pool -_08123674: - ldr r0, [r2, 0x4C] - movs r1, 0x80 - lsls r1, 9 - cmp r0, r1 - ble _08123684 - str r1, [r2, 0x4C] - movs r0, 0 - str r0, [r2, 0x50] -_08123684: - movs r4, 0x1 -_08123686: - ldr r0, =gUnknown_0203A144 - ldr r3, [r0] - adds r0, r3, 0 - adds r0, 0x5C - movs r1, 0 - ldrsh r0, [r0, r1] - adds r1, r3, 0 - adds r1, 0x5E - movs r2, 0 - ldrsh r1, [r1, r2] - ldr r2, [r3, 0x4C] - lsls r2, 8 - lsrs r2, 16 - str r2, [sp] - ldr r2, [r3, 0x4C] - lsls r2, 8 - lsrs r2, 16 - str r2, [sp, 0x4] - movs r2, 0 - str r2, [sp, 0x8] - movs r2, 0x38 - movs r3, 0x48 - bl sub_81236C4 - adds r0, r4, 0 -_081236B8: - add sp, 0xC - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8123514 - - thumb_func_start sub_81236C4 -sub_81236C4: @ 81236C4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - ldr r4, [sp, 0x24] - ldr r7, [sp, 0x28] - ldr r5, [sp, 0x2C] - lsls r4, 16 - lsrs r4, 16 - mov r8, r4 - lsls r7, 16 - adds r4, r7, 0 - lsrs r4, 16 - mov r9, r4 - lsls r5, 24 - lsrs r5, 24 - ldr r4, =gUnknown_0203A144 - ldr r6, [r4] - ldr r7, =gSineTable - mov r12, r7 - adds r4, r5, 0 - adds r4, 0x40 - lsls r4, 1 - add r4, r12 - movs r7, 0 - ldrsh r4, [r4, r7] - str r4, [sp] - mov r7, r8 - muls r7, r4 - adds r4, r7, 0 - asrs r4, 8 - mov r10, r4 - str r4, [r6, 0x2C] - lsls r5, 1 - add r5, r12 - movs r7, 0 - ldrsh r5, [r5, r7] - negs r4, r5 - mov r7, r8 - muls r7, r4 - adds r4, r7, 0 - asrs r4, 8 - mov r12, r4 - str r4, [r6, 0x30] - mov r7, r9 - muls r7, r5 - adds r5, r7, 0 - asrs r5, 8 - str r5, [r6, 0x34] - ldr r7, [sp] - mov r4, r9 - muls r4, r7 - asrs r4, 8 - mov r8, r4 - str r4, [r6, 0x38] - lsls r0, 16 - asrs r0, 8 - lsls r2, 16 - asrs r2, 16 - lsls r4, r2, 8 - adds r0, r4 - lsls r3, 16 - asrs r3, 16 - adds r4, r3, 0 - muls r4, r5 - mov r5, r10 - muls r5, r2 - adds r4, r5 - subs r0, r4 - str r0, [r6, 0x24] - lsls r1, 16 - asrs r1, 8 - lsls r0, r3, 8 - adds r1, r0 - mov r0, r8 - muls r0, r3 - mov r3, r12 - muls r3, r2 - adds r2, r3, 0 - adds r0, r2 - subs r1, r0 - str r1, [r6, 0x28] - adds r6, 0x7D - movs r0, 0x1 - strb r0, [r6] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81236C4 - - thumb_func_start sub_812378C -sub_812378C: @ 812378C - ldr r2, =gUnknown_0203A144 - ldr r2, [r2] - lsls r0, 16 - asrs r0, 8 - movs r3, 0xE0 - lsls r3, 5 - adds r0, r3 - str r0, [r2, 0x24] - lsls r1, 16 - asrs r1, 8 - movs r0, 0x90 - lsls r0, 6 - adds r1, r0 - str r1, [r2, 0x28] - adds r2, 0x7D - movs r0, 0x1 - strb r0, [r2] - bx lr - .pool - thumb_func_end sub_812378C - - thumb_func_start sub_81237B4 -sub_81237B4: @ 81237B4 - push {r4,lr} - ldr r4, =gUnknown_0203A144 - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x7D - ldrb r0, [r0] - cmp r0, 0 - beq _0812381A - ldrh r1, [r1, 0x2C] - movs r0, 0x20 - bl SetGpuReg - ldr r0, [r4] - ldrh r1, [r0, 0x34] - movs r0, 0x22 - bl SetGpuReg - ldr r0, [r4] - ldrh r1, [r0, 0x30] - movs r0, 0x24 - bl SetGpuReg - ldr r0, [r4] - ldrh r1, [r0, 0x38] - movs r0, 0x26 - bl SetGpuReg - ldr r0, [r4] - ldrh r1, [r0, 0x24] - movs r0, 0x28 - bl SetGpuReg - ldr r0, [r4] - ldrh r1, [r0, 0x26] - movs r0, 0x2A - bl SetGpuReg - ldr r0, [r4] - ldrh r1, [r0, 0x28] - movs r0, 0x2C - bl SetGpuReg - ldr r0, [r4] - ldrh r1, [r0, 0x2A] - movs r0, 0x2E - bl SetGpuReg - ldr r0, [r4] - adds r0, 0x7D - movs r1, 0 - strb r1, [r0] -_0812381A: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81237B4 - - thumb_func_start sub_8123824 -sub_8123824: @ 8123824 - push {r4,r5,lr} - sub sp, 0xC - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 16 - asrs r5, r1, 16 - movs r0, 0x80 - lsls r0, 1 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0x8] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x38 - movs r3, 0x48 - bl sub_81236C4 - bl sub_81237B4 - ldr r0, =gUnknown_0203A144 - ldr r2, [r0] - ldr r1, [r2, 0x20] - cmp r1, 0 - beq _08123860 - negs r0, r4 - strh r0, [r1, 0x24] - ldr r1, [r2, 0x20] - negs r0, r5 - strh r0, [r1, 0x26] -_08123860: - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8123824 - - thumb_func_start sub_812386C -sub_812386C: @ 812386C - push {lr} - lsls r0, 16 - lsrs r3, r0, 16 - lsls r1, 16 - ldr r0, =0xfffe0000 - adds r1, r0 - lsrs r2, r1, 16 - cmp r2, 0xE - bhi _08123886 - cmp r3, 0 - beq _08123886 - cmp r3, 0x1C - bls _08123890 -_08123886: - movs r0, 0xD5 - b _081238A4 - .pool -_08123890: - subs r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - ldr r1, =gUnknown_085A096C - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r3, r0 - adds r0, r1 - ldrb r0, [r0] -_081238A4: - pop {r1} - bx r1 - .pool - thumb_func_end sub_812386C - - thumb_func_start sub_81238AC -sub_81238AC: @ 81238AC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - ldr r0, =gSaveBlock1Ptr - ldr r2, [r0] - movs r1, 0x4 - ldrsb r1, [r2, r1] - adds r3, r0, 0 - cmp r1, 0x19 - bne _081238DC - ldrb r0, [r2, 0x5] - subs r0, 0x29 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bhi _081238DC - bl sub_8123C00 - b _08123BEC - .pool -_081238DC: - ldr r1, [r3] - movs r0, 0x4 - ldrsb r0, [r1, r0] - ldrb r1, [r1, 0x5] - lsls r1, 24 - asrs r1, 24 - bl get_map_light_level_by_bank_and_number - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x1 - cmp r0, 0x8 - bhi _08123928 - lsls r0, 2 - ldr r1, =_08123904 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08123904: - .4byte _08123928 - .4byte _08123928 - .4byte _08123928 - .4byte _0812396C - .4byte _08123928 - .4byte _08123928 - .4byte _0812396C - .4byte _08123A28 - .4byte _081239E4 -_08123928: - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - ldr r3, =gMapHeader - ldrb r1, [r3, 0x14] - movs r2, 0 - strh r1, [r0] - adds r0, 0x7F - strb r2, [r0] - ldr r0, [r3] - ldrh r2, [r0] - ldrh r0, [r0, 0x4] - mov r9, r0 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrh r6, [r0] - ldrh r3, [r0, 0x2] - ldr r1, [r4] - ldrh r0, [r1] - cmp r0, 0x45 - beq _08123956 - cmp r0, 0xCC - beq _08123956 - b _08123ABE -_08123956: - adds r1, 0x7F - movs r0, 0x1 - strb r0, [r1] - b _08123ABE - .pool -_0812396C: - ldr r2, =gMapHeader - ldrb r1, [r2, 0x1A] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _081239C8 - ldr r4, =gSaveBlock1Ptr - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x24 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r0, 16 - lsrs r0, 16 - adds r1, 0x25 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - lsls r1, 16 - lsrs r1, 16 - bl get_mapheader_by_bank_and_number - adds r5, r0, 0 - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - ldrb r1, [r5, 0x14] - strh r1, [r0] - adds r0, 0x7F - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r5] - ldrh r2, [r0] - ldrh r0, [r0, 0x4] - mov r9, r0 - ldr r0, [r4] - ldrh r6, [r0, 0x28] - ldrh r3, [r0, 0x2A] - b _08123ABE - .pool -_081239C8: - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - ldrb r1, [r2, 0x14] - strh r1, [r0] - adds r0, 0x7F - movs r1, 0x1 - strb r1, [r0] - movs r2, 0x1 - mov r9, r2 - movs r6, 0x1 - movs r3, 0x1 - b _08123ABE - .pool -_081239E4: - ldr r4, =gSaveBlock1Ptr - ldr r1, [r4] - movs r0, 0x14 - ldrsb r0, [r1, r0] - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r1, 0x15] - lsls r1, 24 - asrs r1, 24 - lsls r1, 16 - lsrs r1, 16 - bl get_mapheader_by_bank_and_number - adds r5, r0, 0 - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - ldrb r1, [r5, 0x14] - strh r1, [r0] - adds r0, 0x7F - movs r1, 0x1 - strb r1, [r0] - ldr r0, [r5] - ldrh r2, [r0] - ldrh r0, [r0, 0x4] - mov r9, r0 - ldr r0, [r4] - ldrh r6, [r0, 0x18] - ldrh r3, [r0, 0x1A] - b _08123ABE - .pool -_08123A28: - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - ldr r1, =gMapHeader - ldrb r1, [r1, 0x14] - strh r1, [r0] - cmp r1, 0x57 - beq _08123A64 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - adds r7, r0, 0 - adds r7, 0x24 - movs r0, 0 - ldrsb r0, [r7, r0] - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ldrsb r1, [r7, r1] - lsls r1, 16 - lsrs r1, 16 - bl get_mapheader_by_bank_and_number - adds r5, r0, 0 - b _08123A8A - .pool -_08123A64: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - adds r7, r0, 0 - adds r7, 0x14 - ldrb r0, [r0, 0x14] - lsls r0, 24 - asrs r0, 24 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ldrsb r1, [r7, r1] - lsls r1, 16 - lsrs r1, 16 - bl get_mapheader_by_bank_and_number - adds r5, r0, 0 - ldr r1, [r4] - ldrb r0, [r5, 0x14] - strh r0, [r1] -_08123A8A: - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - ldrb r0, [r0] - bl sub_8123F74 - adds r1, r0, 0 - cmp r1, 0 - beq _08123AAC - ldr r0, [r4] - adds r0, 0x7F - movs r1, 0x1 - b _08123AB0 - .pool -_08123AAC: - ldr r0, [r4] - adds r0, 0x7F -_08123AB0: - strb r1, [r0] - ldr r0, [r5] - ldrh r2, [r0] - ldrh r0, [r0, 0x4] - mov r9, r0 - ldrh r6, [r7, 0x4] - ldrh r3, [r7, 0x6] -_08123ABE: - str r6, [sp] - ldr r5, =gRegionMapEntries - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - mov r10, r0 - ldrh r7, [r0] - lsls r0, r7, 3 - adds r0, r5 - str r0, [sp, 0x4] - ldrb r0, [r0, 0x2] - mov r8, r0 - adds r0, r2, 0 - mov r1, r8 - str r3, [sp, 0x8] - bl __divsi3 - lsls r0, 16 - lsrs r1, r0, 16 - ldr r3, [sp, 0x8] - cmp r1, 0 - bne _08123AEA - movs r1, 0x1 -_08123AEA: - adds r0, r6, 0 - str r3, [sp, 0x8] - bl __udivsi3 - lsls r0, 16 - lsrs r6, r0, 16 - ldr r3, [sp, 0x8] - cmp r6, r8 - bcc _08123B04 - mov r0, r8 - subs r0, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_08123B04: - ldr r2, [sp, 0x4] - ldrb r4, [r2, 0x3] - mov r0, r9 - adds r1, r4, 0 - str r3, [sp, 0x8] - bl __divsi3 - lsls r0, 16 - lsrs r1, r0, 16 - ldr r3, [sp, 0x8] - cmp r1, 0 - bne _08123B1E - movs r1, 0x1 -_08123B1E: - adds r0, r3, 0 - bl __udivsi3 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, r4 - bcc _08123B32 - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 -_08123B32: - cmp r7, 0x29 - beq _08123B5E - cmp r7, 0x29 - bgt _08123B4C - cmp r7, 0x1D - beq _08123B56 - cmp r7, 0x24 - beq _08123B94 - b _08123BC6 - .pool -_08123B4C: - cmp r7, 0x33 - beq _08123B5E - cmp r7, 0xCC - beq _08123BB8 - b _08123BC6 -_08123B56: - cmp r3, 0 - beq _08123BC6 - movs r6, 0 - b _08123BC6 -_08123B5E: - movs r6, 0 - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0x20 - ble _08123B6E - movs r6, 0x1 -_08123B6E: - cmp r0, 0x33 - ble _08123B78 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_08123B78: - movs r3, 0 - movs r2, 0x2 - ldrsh r0, [r1, r2] - cmp r0, 0x25 - ble _08123B84 - movs r3, 0x1 -_08123B84: - cmp r0, 0x38 - ble _08123BC6 - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - b _08123BC6 - .pool -_08123B94: - movs r6, 0 - ldr r0, [sp] - cmp r0, 0xE - bls _08123B9E - movs r6, 0x1 -_08123B9E: - ldr r2, [sp] - cmp r2, 0x1C - bls _08123BAA - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_08123BAA: - ldr r0, [sp] - cmp r0, 0x36 - bls _08123BC6 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - b _08123BC6 -_08123BB8: - mov r0, r10 - adds r0, 0x54 - mov r1, r10 - adds r1, 0x56 - bl sub_8123F30 - b _08123BEC -_08123BC6: - ldr r0, =gUnknown_0203A144 - ldr r2, [r0] - ldrh r0, [r2] - lsls r0, 3 - adds r0, r5 - ldrb r0, [r0] - adds r0, r6, r0 - adds r0, 0x1 - adds r1, r2, 0 - adds r1, 0x54 - strh r0, [r1] - ldrh r0, [r2] - lsls r0, 3 - adds r0, r5 - ldrb r0, [r0, 0x1] - adds r0, r3, r0 - adds r0, 0x2 - adds r2, 0x56 - strh r0, [r2] -_08123BEC: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81238AC - - thumb_func_start sub_8123C00 -sub_8123C00: @ 8123C00 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - movs r7, 0 - movs r0, 0 - mov r8, r0 - mov r4, sp - adds r4, 0x1 - mov r5, sp - adds r5, 0x2 - add r6, sp, 0x4 - mov r0, sp - adds r1, r4, 0 - adds r2, r5, 0 - adds r3, r6, 0 - bl GetSSTidalLocation - lsls r0, 24 - lsrs r0, 24 - mov r10, r5 - cmp r0, 0x4 - bhi _08123C94 - lsls r0, 2 - ldr r1, =_08123C40 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08123C40: - .4byte _08123C94 - .4byte _08123C54 - .4byte _08123C64 - .4byte _08123C74 - .4byte _08123C84 -_08123C54: - ldr r2, =gUnknown_0203A144 - ldr r1, [r2] - movs r0, 0x8 - strh r0, [r1] - b _08123D10 - .pool -_08123C64: - ldr r2, =gUnknown_0203A144 - ldr r1, [r2] - movs r0, 0xC - strh r0, [r1] - b _08123D10 - .pool -_08123C74: - ldr r2, =gUnknown_0203A144 - ldr r1, [r2] - movs r0, 0x27 - strh r0, [r1] - b _08123D10 - .pool -_08123C84: - ldr r2, =gUnknown_0203A144 - ldr r1, [r2] - movs r0, 0x2E - strh r0, [r1] - b _08123D10 - .pool -_08123C94: - mov r0, sp - ldrb r0, [r0] - ldrb r1, [r4] - bl get_mapheader_by_bank_and_number - ldr r1, =gUnknown_0203A144 - mov r9, r1 - ldr r2, [r1] - ldrb r1, [r0, 0x14] - strh r1, [r2] - ldr r6, [r0] - ldr r1, =gRegionMapEntries - ldrh r0, [r2] - lsls r0, 3 - adds r5, r0, r1 - ldrb r4, [r5, 0x2] - ldr r0, [r6] - adds r1, r4, 0 - bl __divsi3 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _08123CC6 - movs r1, 0x1 -_08123CC6: - mov r2, r10 - movs r3, 0 - ldrsh r0, [r2, r3] - bl __divsi3 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - cmp r8, r4 - bcc _08123CE2 - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 -_08123CE2: - ldrb r4, [r5, 0x3] - ldr r0, [r6, 0x4] - adds r1, r4, 0 - bl __divsi3 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - bne _08123CF6 - movs r1, 0x1 -_08123CF6: - mov r2, sp - movs r3, 0x4 - ldrsh r0, [r2, r3] - bl __divsi3 - lsls r0, 16 - lsrs r7, r0, 16 - mov r2, r9 - cmp r7, r4 - bcc _08123D10 - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r7, r0, 16 -_08123D10: - ldr r0, [r2] - adds r0, 0x7F - movs r1, 0 - strb r1, [r0] - ldr r2, [r2] - ldr r3, =gRegionMapEntries - ldrh r0, [r2] - lsls r0, 3 - adds r0, r3 - ldrb r0, [r0] - add r0, r8 - adds r0, 0x1 - adds r1, r2, 0 - adds r1, 0x54 - strh r0, [r1] - ldrh r0, [r2] - lsls r0, 3 - adds r0, r3 - ldrb r0, [r0, 0x1] - adds r0, r7, r0 - adds r0, 0x2 - adds r2, 0x56 - strh r0, [r2] - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8123C00 - - thumb_func_start get_flagnr_blue_points -get_flagnr_blue_points: @ 8123D58 - push {lr} - lsls r0, 16 - lsrs r0, 16 - adds r1, r0, 0 - cmp r0, 0x9 - beq _08123E18 - cmp r0, 0x9 - bgt _08123D9A - cmp r0, 0x4 - beq _08123DF0 - cmp r0, 0x4 - bgt _08123D88 - cmp r0, 0x1 - beq _08123DD8 - cmp r0, 0x1 - bgt _08123D7E - cmp r0, 0 - beq _08123DD0 - b _08123E94 -_08123D7E: - cmp r0, 0x2 - beq _08123DDE - cmp r0, 0x3 - beq _08123DE8 - b _08123E94 -_08123D88: - cmp r0, 0x6 - beq _08123E00 - cmp r0, 0x6 - blt _08123DF8 - cmp r0, 0x7 - beq _08123E08 - cmp r0, 0x8 - beq _08123E10 - b _08123E94 -_08123D9A: - cmp r0, 0xE - beq _08123E40 - cmp r0, 0xE - bgt _08123DB4 - cmp r0, 0xB - beq _08123E28 - cmp r0, 0xB - blt _08123E20 - cmp r0, 0xC - beq _08123E30 - cmp r0, 0xD - beq _08123E38 - b _08123E94 -_08123DB4: - cmp r0, 0x3A - beq _08123E60 - cmp r0, 0x3A - bgt _08123DC2 - cmp r0, 0xF - beq _08123E48 - b _08123E94 -_08123DC2: - cmp r1, 0x49 - beq _08123E7C - cmp r1, 0xD5 - beq _08123DCC - b _08123E94 -_08123DCC: - movs r0, 0 - b _08123E96 -_08123DD0: - ldr r0, =0x0000086f - b _08123E4A - .pool -_08123DD8: - movs r0, 0x87 - lsls r0, 4 - b _08123E4A -_08123DDE: - ldr r0, =0x00000871 - b _08123E4A - .pool -_08123DE8: - ldr r0, =0x00000872 - b _08123E4A - .pool -_08123DF0: - ldr r0, =0x00000873 - b _08123E4A - .pool -_08123DF8: - ldr r0, =0x00000874 - b _08123E4A - .pool -_08123E00: - ldr r0, =0x00000875 - b _08123E4A - .pool -_08123E08: - ldr r0, =0x00000876 - b _08123E4A - .pool -_08123E10: - ldr r0, =0x00000877 - b _08123E4A - .pool -_08123E18: - ldr r0, =0x00000878 - b _08123E4A - .pool -_08123E20: - ldr r0, =0x00000879 - b _08123E4A - .pool -_08123E28: - ldr r0, =0x0000087a - b _08123E4A - .pool -_08123E30: - ldr r0, =0x0000087b - b _08123E4A - .pool -_08123E38: - ldr r0, =0x0000087c - b _08123E4A - .pool -_08123E40: - ldr r0, =0x0000087d - b _08123E4A - .pool -_08123E48: - ldr r0, =0x0000087e -_08123E4A: - bl FlagGet - lsls r0, 24 - movs r1, 0x3 - cmp r0, 0 - beq _08123E58 - movs r1, 0x2 -_08123E58: - adds r0, r1, 0 - b _08123E96 - .pool -_08123E60: - ldr r0, =0x000008a8 - bl FlagGet - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - negs r0, r1 - orrs r0, r1 - asrs r0, 31 - movs r1, 0x4 - ands r0, r1 - b _08123E96 - .pool -_08123E7C: - ldr r0, =0x000008a9 - bl FlagGet - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 - b _08123E96 - .pool -_08123E94: - movs r0, 0x1 -_08123E96: - pop {r1} - bx r1 - thumb_func_end get_flagnr_blue_points - - thumb_func_start sub_8123E9C -sub_8123E9C: @ 8123E9C - push {lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 16 - lsrs r1, 16 - bl sub_812386C - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_8123E9C - - thumb_func_start sub_8123EB4 -sub_8123EB4: @ 8123EB4 - push {lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r2, 0 - ldr r1, =gUnknown_085A1B84 -_08123EBE: - ldrh r0, [r1] - cmp r0, r3 - bne _08123ED4 - bl sub_8123F04 - lsls r0, 16 - lsrs r0, 16 - b _08123F00 - .pool -_08123ED4: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x2 - bls _08123EBE - ldr r1, =gUnknown_085A1B24 - ldrh r0, [r1] - cmp r0, 0xD5 - beq _08123EFE - adds r2, r1, 0 -_08123EE6: - ldrh r0, [r2] - cmp r0, r3 - bne _08123EF4 - ldrh r0, [r1, 0x2] - b _08123F00 - .pool -_08123EF4: - adds r1, 0x4 - adds r2, 0x4 - ldrh r0, [r1] - cmp r0, 0xD5 - bne _08123EE6 -_08123EFE: - adds r0, r3, 0 -_08123F00: - pop {r1} - bx r1 - thumb_func_end sub_8123EB4 - - thumb_func_start sub_8123F04 -sub_8123F04: @ 8123F04 - push {lr} - ldr r0, =0x00004037 - bl VarGet - subs r0, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0xF - bls _08123F18 - movs r1, 0 -_08123F18: - ldr r0, =gUnknown_085A1B8A - lsls r1, 16 - asrs r1, 15 - adds r1, r0 - ldrh r0, [r1] - pop {r1} - bx r1 - .pool - thumb_func_end sub_8123F04 - - thumb_func_start sub_8123F30 -sub_8123F30: @ 8123F30 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, =0x00004037 - bl VarGet - lsls r0, 16 - lsrs r1, r0, 16 - ldr r2, =0xfff70000 - adds r0, r2 - lsrs r0, 16 - cmp r0, 0x7 - bls _08123F4C - movs r1, 0x9 -_08123F4C: - subs r1, 0x9 - lsls r1, 16 - ldr r0, =gUnknown_085A1BAC - lsrs r1, 14 - adds r1, r0 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r4] - ldrh r0, [r1, 0x2] - adds r0, 0x2 - strh r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8123F30 - - thumb_func_start sub_8123F74 -sub_8123F74: @ 8123F74 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r3, =gUnknown_085A1BCC -_08123F7E: - adds r0, r1, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _08123F90 - movs r0, 0x1 - b _08123F98 - .pool -_08123F90: - adds r1, 0x1 - cmp r1, 0 - beq _08123F7E - movs r0, 0 -_08123F98: - pop {r1} - bx r1 - thumb_func_end sub_8123F74 - - thumb_func_start sub_8123F9C -sub_8123F9C: @ 8123F9C - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl sub_8123EB4 - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_8123F9C - - thumb_func_start sub_8123FB0 -sub_8123FB0: @ 8123FB0 - push {r4-r6,lr} - ldr r0, =gUnknown_0203A144 - ldr r1, [r0] - ldrh r0, [r1] - cmp r0, 0xD5 - bne _08123FC8 - movs r0, 0 - strb r0, [r1, 0x3] - b _0812402E - .pool -_08123FC8: - adds r0, r1, 0 - adds r0, 0x78 - ldrb r0, [r0] - cmp r0, 0 - bne _08123FD8 - adds r0, r1, 0 - adds r0, 0x54 - b _08123FDC -_08123FD8: - adds r0, r1, 0 - adds r0, 0x64 -_08123FDC: - ldrh r4, [r0] - adds r0, 0x2 - ldrh r5, [r0] - movs r6, 0 - b _08124008 -_08123FE6: - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_812386C - ldr r1, =gUnknown_0203A144 - ldr r1, [r1] - lsls r0, 16 - lsrs r0, 16 - ldrh r1, [r1] - cmp r0, r1 - bne _08124008 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_08124008: - cmp r4, 0x1 - bhi _08123FE6 - adds r0, r5, 0 - bl sub_8124038 - lsls r0, 24 - cmp r0, 0 - beq _08124028 - subs r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - movs r4, 0x1D - b _08124008 - .pool -_08124028: - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - strb r6, [r0, 0x3] -_0812402E: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8123FB0 - - thumb_func_start sub_8124038 -sub_8124038: @ 8124038 - push {r4,r5,lr} - lsls r0, 16 - ldr r1, =0xffff0000 - adds r0, r1 - lsrs r5, r0, 16 - ldr r0, =0x0000ffff - cmp r5, r0 - bne _08124058 - b _0812407A - .pool -_08124054: - movs r0, 0x1 - b _0812407C -_08124058: - movs r4, 0x1 -_0812405A: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_812386C - ldr r1, =gUnknown_0203A144 - ldr r1, [r1] - lsls r0, 16 - lsrs r0, 16 - ldrh r1, [r1] - cmp r0, r1 - beq _08124054 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x1C - bls _0812405A -_0812407A: - movs r0, 0 -_0812407C: - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8124038 - - thumb_func_start sub_8124088 -sub_8124088: @ 8124088 - push {r4,lr} - adds r2, r0, 0 - ldr r0, =gUnknown_0203A144 - ldr r1, [r0] - adds r3, r1, 0 - adds r3, 0x7A - movs r0, 0 - ldrsb r0, [r3, r0] - cmp r0, 0 - beq _081240C6 - adds r0, r1, 0 - adds r0, 0x7B - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r0, 1 - ldrh r4, [r2, 0x20] - adds r0, r4 - strh r0, [r2, 0x20] - adds r0, r1, 0 - adds r0, 0x7C - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r0, 1 - ldrh r1, [r2, 0x22] - adds r0, r1 - strh r0, [r2, 0x22] - ldrb r0, [r3] - subs r0, 0x1 - strb r0, [r3] -_081240C6: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124088 - - thumb_func_start TaskDummy8 -TaskDummy8: @ 81240D0 - bx lr - thumb_func_end TaskDummy8 - - thumb_func_start sub_81240D4 -sub_81240D4: @ 81240D4 - push {r4-r7,lr} - sub sp, 0x28 - lsls r0, 16 - lsls r1, 16 - lsrs r6, r1, 16 - ldr r1, =gUnknown_085A1C00 - ldr r2, [r1, 0x4] - ldr r1, [r1] - str r1, [sp, 0x20] - str r2, [sp, 0x24] - mov r2, sp - ldr r1, =gUnknown_085A1C08 - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - ldm r1!, {r3-r5} - stm r2!, {r3-r5} - lsrs r3, r0, 16 - add r2, sp, 0x18 - ldrh r1, [r2, 0x4] - orrs r1, r0 - str r1, [r2, 0x4] - mov r0, sp - strh r3, [r0] - ldr r0, =gUnknown_0203A144 - ldr r4, [r0] - adds r0, r4, 0 - adds r0, 0x58 - strh r3, [r0] - ldr r5, =0xffff0000 - add r1, sp, 0x20 - ldr r0, [r1, 0x4] - ands r0, r5 - orrs r0, r6 - str r0, [r1, 0x4] - mov r0, sp - strh r6, [r0, 0x2] - adds r3, r4, 0 - adds r0, r3, 0 - adds r0, 0x5A - strh r6, [r0] - adds r0, 0x1E - ldrb r0, [r0] - adds r7, r1, 0 - cmp r0, 0 - bne _08124158 - movs r1, 0xC2 - lsls r1, 1 - adds r0, r3, r1 - str r0, [sp, 0x18] - ldr r0, [r2, 0x4] - ands r0, r5 - subs r1, 0x84 - orrs r0, r1 - str r0, [r2, 0x4] - ldr r0, =sub_8124088 - b _0812416E - .pool -_08124158: - movs r3, 0xA1 - lsls r3, 2 - adds r0, r4, r3 - str r0, [sp, 0x18] - ldr r0, [r2, 0x4] - ands r0, r5 - movs r1, 0xC0 - lsls r1, 3 - orrs r0, r1 - str r0, [r2, 0x4] - ldr r0, =TaskDummy8 -_0812416E: - str r0, [sp, 0x14] - adds r0, r2, 0 - bl LoadSpriteSheet - adds r0, r7, 0 - bl LoadSpritePalette - mov r0, sp - movs r1, 0x38 - movs r2, 0x48 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _08124228 - ldr r4, =gUnknown_0203A144 - ldr r2, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r3, r0, r1 - str r3, [r2, 0x1C] - adds r2, 0x78 - ldrb r0, [r2] - cmp r0, 0x1 - bne _081241DC - ldrb r1, [r3, 0x3] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x80 - orrs r0, r1 - strb r0, [r3, 0x3] - ldr r2, [r4] - ldr r1, [r2, 0x1C] - ldrh r0, [r1, 0x20] - subs r0, 0x8 - strh r0, [r1, 0x20] - ldr r1, [r2, 0x1C] - ldrh r0, [r1, 0x22] - subs r0, 0x8 - strh r0, [r1, 0x22] - ldr r0, [r2, 0x1C] - movs r1, 0x1 - bl StartSpriteAnim - b _08124204 - .pool -_081241DC: - ldrb r1, [r3, 0x3] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x40 - orrs r0, r1 - strb r0, [r3, 0x3] - ldr r1, [r4] - ldr r2, [r1, 0x1C] - adds r0, r1, 0 - adds r0, 0x54 - ldrh r0, [r0] - lsls r0, 3 - adds r0, 0x4 - strh r0, [r2, 0x20] - ldr r2, [r1, 0x1C] - adds r1, 0x56 - ldrh r0, [r1] - lsls r0, 3 - adds r0, 0x4 - strh r0, [r2, 0x22] -_08124204: - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - ldr r1, [r0, 0x1C] - movs r0, 0x2 - strh r0, [r1, 0x30] - adds r0, r6, 0 - bl IndexOfSpritePaletteTag - ldr r1, [r4] - ldr r2, [r1, 0x1C] - lsls r0, 24 - lsrs r0, 20 - ldr r4, =0x00000101 - adds r0, r4 - strh r0, [r2, 0x32] - ldr r1, [r1, 0x1C] - movs r0, 0x1 - strh r0, [r1, 0x34] -_08124228: - add sp, 0x28 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_81240D4 - - thumb_func_start sub_8124238 -sub_8124238: @ 8124238 - push {r4,lr} - ldr r4, =gUnknown_0203A144 - ldr r0, [r4] - ldr r0, [r0, 0x1C] - cmp r0, 0 - beq _0812425C - bl DestroySprite - ldr r0, [r4] - adds r0, 0x58 - ldrh r0, [r0] - bl FreeSpriteTilesByTag - ldr r0, [r4] - adds r0, 0x5A - ldrh r0, [r0] - bl FreeSpritePaletteByTag -_0812425C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124238 - - thumb_func_start sub_8124268 -sub_8124268: @ 8124268 - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - ldr r1, [r0, 0x1C] - movs r0, 0x1 - strh r0, [r1, 0x34] - bx lr - .pool - thumb_func_end sub_8124268 - - thumb_func_start sub_8124278 -sub_8124278: @ 8124278 - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - ldr r1, [r0, 0x1C] - movs r0, 0 - strh r0, [r1, 0x34] - bx lr - .pool - thumb_func_end sub_8124278 - - thumb_func_start sub_8124288 -sub_8124288: @ 8124288 - push {r4-r6,lr} - sub sp, 0x28 - lsls r0, 16 - lsls r1, 16 - lsrs r1, 16 - ldr r2, =gUnknown_085A084C - str r2, [sp, 0x18] - movs r2, 0x80 - add r6, sp, 0x18 - lsrs r3, r0, 16 - orrs r0, r2 - str r0, [r6, 0x4] - ldr r0, =gUnknown_085A082C - str r0, [sp, 0x20] - ldr r2, =0xffff0000 - add r4, sp, 0x20 - ldr r0, [r4, 0x4] - ands r0, r2 - orrs r0, r1 - str r0, [r4, 0x4] - mov r0, sp - movs r5, 0 - strh r3, [r0] - strh r1, [r0, 0x2] - ldr r0, =gUnknown_085A1C20 - str r0, [sp, 0x4] - ldr r0, =gUnknown_085A1C30 - str r0, [sp, 0x8] - str r5, [sp, 0xC] - ldr r0, =gDummySpriteAffineAnimTable - str r0, [sp, 0x10] - ldr r0, =SpriteCallbackDummy - str r0, [sp, 0x14] - ldr r0, =gMapHeader - ldrb r0, [r0, 0x14] - bl sub_8124668 - cmp r0, 0 - beq _08124304 - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - str r5, [r0, 0x20] - b _081243A4 - .pool -_08124304: - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - cmp r0, 0x1 - bne _08124316 - ldr r0, =gUnknown_085A08EC - str r0, [sp, 0x18] - ldr r0, =gUnknown_085A08CC - str r0, [sp, 0x20] -_08124316: - adds r0, r6, 0 - bl LoadSpriteSheet - adds r0, r4, 0 - bl LoadSpritePalette - mov r0, sp - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_0203A144 - ldr r2, [r1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, =gSprites - adds r1, r0 - str r1, [r2, 0x20] - adds r0, r2, 0 - adds r0, 0x78 - ldrb r0, [r0] - cmp r0, 0 - bne _08124384 - adds r0, r2, 0 - adds r0, 0x74 - ldrh r0, [r0] - lsls r0, 3 - adds r0, 0x4 - strh r0, [r1, 0x20] - ldr r1, [r2, 0x20] - adds r0, r2, 0 - adds r0, 0x76 - ldrh r0, [r0] - lsls r0, 3 - adds r0, 0x4 - strh r0, [r1, 0x22] - ldr r1, [r2, 0x20] - ldr r0, =sub_81244EC - b _081243A2 - .pool -_08124384: - adds r0, r2, 0 - adds r0, 0x74 - ldrh r0, [r0] - lsls r0, 4 - subs r0, 0x30 - strh r0, [r1, 0x20] - ldr r1, [r2, 0x20] - adds r0, r2, 0 - adds r0, 0x76 - ldrh r0, [r0] - lsls r0, 4 - subs r0, 0x42 - strh r0, [r1, 0x22] - ldr r1, [r2, 0x20] - ldr r0, =sub_812445C -_081243A2: - str r0, [r1, 0x1C] -_081243A4: - add sp, 0x28 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124288 - - thumb_func_start sub_81243B0 -sub_81243B0: @ 81243B0 - push {lr} - ldr r3, =gUnknown_0203A144 - ldr r0, [r3] - ldr r2, [r0, 0x20] - cmp r2, 0 - beq _081243CE - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, [r3] - ldr r1, [r0, 0x20] - ldr r0, =SpriteCallbackDummy - str r0, [r1, 0x1C] -_081243CE: - pop {r0} - bx r0 - .pool - thumb_func_end sub_81243B0 - - thumb_func_start sub_81243DC -sub_81243DC: @ 81243DC - push {lr} - ldr r0, =gUnknown_0203A144 - ldr r3, [r0] - ldr r1, [r3, 0x20] - cmp r1, 0 - beq _08124452 - adds r0, r3, 0 - adds r0, 0x78 - ldrb r0, [r0] - cmp r0, 0x1 - bne _0812441C - adds r0, r3, 0 - adds r0, 0x74 - ldrh r0, [r0] - lsls r0, 4 - subs r0, 0x30 - strh r0, [r1, 0x20] - ldr r1, [r3, 0x20] - adds r0, r3, 0 - adds r0, 0x76 - ldrh r0, [r0] - lsls r0, 4 - subs r0, 0x42 - strh r0, [r1, 0x22] - ldr r1, [r3, 0x20] - ldr r0, =sub_812445C - b _08124444 - .pool -_0812441C: - adds r0, r3, 0 - adds r0, 0x74 - ldrh r0, [r0] - lsls r0, 3 - adds r0, 0x4 - movs r2, 0 - strh r0, [r1, 0x20] - ldr r1, [r3, 0x20] - adds r0, r3, 0 - adds r0, 0x76 - ldrh r0, [r0] - lsls r0, 3 - adds r0, 0x4 - strh r0, [r1, 0x22] - ldr r0, [r3, 0x20] - strh r2, [r0, 0x24] - ldr r0, [r3, 0x20] - strh r2, [r0, 0x26] - ldr r1, [r3, 0x20] - ldr r0, =sub_81244EC -_08124444: - str r0, [r1, 0x1C] - adds r1, 0x3E - ldrb r2, [r1] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - strb r0, [r1] -_08124452: - pop {r0} - bx r0 - .pool - thumb_func_end sub_81243DC - - thumb_func_start sub_812445C -sub_812445C: @ 812445C - push {r4,lr} - adds r3, r0, 0 - ldr r0, =gUnknown_0203A144 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x5C - movs r4, 0 - ldrsh r2, [r0, r4] - lsls r2, 1 - negs r2, r2 - strh r2, [r3, 0x24] - adds r1, 0x5E - movs r4, 0 - ldrsh r0, [r1, r4] - lsls r0, 1 - negs r0, r0 - strh r0, [r3, 0x26] - ldrh r1, [r3, 0x22] - adds r1, r0 - adds r0, r3, 0 - adds r0, 0x29 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - adds r0, r1 - strh r0, [r3, 0x2E] - ldrh r1, [r3, 0x20] - adds r1, r2 - adds r2, r3, 0 - adds r2, 0x28 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - adds r2, r1 - strh r2, [r3, 0x30] - adds r0, 0x8 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xB0 - bhi _081244BC - lsls r0, r2, 16 - asrs r2, r0, 16 - movs r0, 0x8 - negs r0, r0 - cmp r2, r0 - blt _081244BC - cmp r2, 0xF8 - ble _081244C4 -_081244BC: - movs r0, 0 - b _081244C6 - .pool -_081244C4: - movs r0, 0x1 -_081244C6: - strh r0, [r3, 0x32] - movs r1, 0x32 - ldrsh r0, [r3, r1] - cmp r0, 0x1 - bne _081244D8 - adds r0, r3, 0 - bl sub_81244F8 - b _081244E4 -_081244D8: - adds r0, r3, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] -_081244E4: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_812445C - - thumb_func_start sub_81244EC -sub_81244EC: @ 81244EC - push {lr} - bl sub_81244F8 - pop {r0} - bx r0 - thumb_func_end sub_81244EC - - thumb_func_start sub_81244F8 -sub_81244F8: @ 81244F8 - push {lr} - adds r2, r0, 0 - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - adds r0, 0x7E - ldrb r0, [r0] - cmp r0, 0 - beq _0812453C - ldrh r0, [r2, 0x3C] - adds r0, 0x1 - strh r0, [r2, 0x3C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x10 - ble _08124548 - movs r0, 0 - strh r0, [r2, 0x3C] - adds r3, r2, 0 - adds r3, 0x3E - ldrb r2, [r3] - lsrs r1, r2, 2 - movs r0, 0x1 - eors r1, r0 - ands r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - b _08124548 - .pool -_0812453C: - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] -_08124548: - pop {r0} - bx r0 - thumb_func_end sub_81244F8 - - thumb_func_start sub_812454C -sub_812454C: @ 812454C - push {lr} - ldr r0, =gUnknown_0203A144 - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x7F - ldrb r0, [r0] - cmp r0, 0 - beq _08124562 - adds r1, 0x7E - movs r0, 0x1 - strb r0, [r1] -_08124562: - pop {r0} - bx r0 - .pool - thumb_func_end sub_812454C - - thumb_func_start GetMapName -@ u8 *GetMapName(u8 *dest, u16 regionMapId, u16 padLength) -GetMapName: @ 812456C - push {r4,r5,lr} - adds r5, r0, 0 - lsls r1, 16 - lsrs r1, 16 - lsls r2, 16 - lsrs r4, r2, 16 - cmp r1, 0x56 - bne _08124584 - bl GetSecretBaseMapName - adds r1, r0, 0 - b _081245B2 -_08124584: - cmp r1, 0xD4 - bhi _081245A0 - ldr r0, =gRegionMapEntries - lsls r1, 3 - adds r0, 0x4 - adds r1, r0 - ldr r1, [r1] - adds r0, r5, 0 - bl StringCopy - adds r1, r0, 0 - b _081245B2 - .pool -_081245A0: - cmp r4, 0 - bne _081245A6 - movs r4, 0x12 -_081245A6: - adds r0, r5, 0 - movs r1, 0 - adds r2, r4, 0 - bl StringFill - b _081245D6 -_081245B2: - cmp r4, 0 - beq _081245D4 - subs r0, r1, r5 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r4 - bcs _081245D0 - movs r2, 0 -_081245C2: - strb r2, [r1] - adds r1, 0x1 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r4 - bcc _081245C2 -_081245D0: - movs r0, 0xFF - strb r0, [r1] -_081245D4: - adds r0, r1, 0 -_081245D6: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end GetMapName - - thumb_func_start sub_81245DC -sub_81245DC: @ 81245DC - push {lr} - lsls r1, 16 - lsrs r1, 16 - cmp r1, 0x56 - beq _081245F8 - cmp r1, 0x57 - bne _08124604 - ldr r1, =gText_Ferry - bl StringCopy - b _0812460A - .pool -_081245F8: - ldr r1, =gText_SecretBase - bl StringCopy - b _0812460A - .pool -_08124604: - movs r2, 0 - bl GetMapName -_0812460A: - pop {r1} - bx r1 - thumb_func_end sub_81245DC - - thumb_func_start sub_8124610 -sub_8124610: @ 8124610 - push {lr} - lsls r1, 16 - lsrs r1, 16 - cmp r1, 0x42 - beq _08124620 - bl sub_81245DC - b _08124626 -_08124620: - ldr r1, =gText_Hideout - bl StringCopy -_08124626: - pop {r1} - bx r1 - .pool - thumb_func_end sub_8124610 - - thumb_func_start sub_8124630 -sub_8124630: @ 8124630 - push {r4,r5,lr} - ldr r5, [sp, 0xC] - lsls r0, 16 - ldr r4, =gRegionMapEntries - lsrs r0, 13 - adds r0, r4 - ldrb r4, [r0] - strh r4, [r1] - ldrb r1, [r0, 0x1] - strh r1, [r2] - ldrb r1, [r0, 0x2] - strh r1, [r3] - ldrb r0, [r0, 0x3] - strh r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124630 - - thumb_func_start sub_8124658 -sub_8124658: @ 8124658 - ldr r0, =gUnknown_0203A144 - ldr r0, [r0] - adds r0, 0x78 - ldrb r0, [r0] - bx lr - .pool - thumb_func_end sub_8124658 - - thumb_func_start sub_8124668 -sub_8124668: @ 8124668 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - movs r1, 0 - ldr r3, =gUnknown_085A1C34 -_08124672: - adds r0, r1, r3 - ldrb r0, [r0] - cmp r2, r0 - bne _08124684 - movs r0, 0x1 - b _0812468C - .pool -_08124684: - adds r1, 0x1 - cmp r1, 0x2 - bls _08124672 - movs r0, 0 -_0812468C: - pop {r1} - bx r1 - thumb_func_end sub_8124668 - - thumb_func_start sub_8124690 -sub_8124690: @ 8124690 - push {r4,lr} - sub sp, 0xC - ldr r0, =gMain - movs r1, 0x87 - lsls r1, 3 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0xA - bls _081246A4 - b _081248AA -_081246A4: - lsls r0, 2 - ldr r1, =_081246B8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_081246B8: - .4byte _081246E4 - .4byte _08124766 - .4byte _0812477C - .4byte _0812478C - .4byte _0812479C - .4byte _081247E4 - .4byte _081247F8 - .4byte _0812480C - .4byte _0812484C - .4byte _08124852 - .4byte _0812486C -_081246E4: - movs r0, 0 - bl SetVBlankCallback - movs r0, 0 - movs r1, 0 - bl SetGpuReg - movs r0, 0x10 - movs r1, 0 - bl SetGpuReg - movs r0, 0x12 - movs r1, 0 - bl SetGpuReg - movs r0, 0x14 - movs r1, 0 - bl SetGpuReg - movs r0, 0x16 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1A - movs r1, 0 - bl SetGpuReg - movs r0, 0x18 - movs r1, 0 - bl SetGpuReg - movs r0, 0x1C - movs r1, 0 - bl SetGpuReg - movs r0, 0x1E - movs r1, 0 - bl SetGpuReg - ldr r4, =gUnknown_0203A148 - ldr r0, =0x00000a74 - bl Alloc - str r0, [r4] - cmp r0, 0 - bne _08124754 - ldr r0, =sub_8086194 - bl SetMainCallback2 - b _081248AA - .pool -_08124754: - bl ResetPaletteFade - bl ResetSpriteData - bl FreeSpriteTileRanges - bl FreeAllSpritePalettes - b _0812489C -_08124766: - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, =gUnknown_085A1EE4 - movs r0, 0x1 - movs r2, 0x3 - bl InitBgsFromTemplates - b _0812489C - .pool -_0812477C: - ldr r0, =gUnknown_085A1EF0 - bl InitWindows - bl DeactivateAllTextPrinters - b _0812489C - .pool -_0812478C: - movs r0, 0 - movs r1, 0x65 - movs r2, 0xD0 - bl sub_809882C - bl clear_scheduled_bg_copies_to_vram - b _0812489C -_0812479C: - ldr r4, =gUnknown_0203A148 - ldr r0, [r4] - adds r0, 0x8 - movs r1, 0 - bl sub_8122CDC - movs r0, 0 - movs r1, 0 - bl sub_81240D4 - movs r0, 0x1 - movs r1, 0x1 - bl sub_8124288 - ldr r0, [r4] - ldrh r1, [r0, 0x8] - strh r1, [r0, 0x6] - ldr r1, =0x00000a4c - adds r0, r1 - movs r1, 0 - movs r2, 0x10 - bl StringFill - ldr r1, =gUnknown_03001180 - movs r0, 0x1 - str r0, [r1] - bl sub_8124904 - b _0812489C - .pool -_081247E4: - ldr r0, =gUnknown_085A1C58 - ldr r1, =0x0600c000 - bl LZ77UnCompVram - b _0812489C - .pool -_081247F8: - ldr r0, =gUnknown_085A1C90 - ldr r1, =0x0600f000 - bl LZ77UnCompVram - b _0812489C - .pool -_0812480C: - ldr r0, =gUnknown_085A1C38 - movs r1, 0x10 - movs r2, 0x20 - bl LoadPalette - movs r0, 0x2 - bl PutWindowTilemap - movs r0, 0x2 - movs r1, 0 - bl FillWindowPixelBuffer - ldr r2, =gText_FlyToWhere - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - movs r0, 0x2 - movs r1, 0x1 - movs r3, 0 - bl PrintTextOnWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - b _0812489C - .pool -_0812484C: - bl sub_8124A70 - b _0812489C -_08124852: - movs r0, 0x1 - negs r0, r0 - movs r1, 0x10 - movs r2, 0 - bl BlendPalettes - ldr r0, =sub_81248C0 - bl SetVBlankCallback - b _0812489C - .pool -_0812486C: - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuRegBits - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - ldr r0, =sub_8124D14 - bl sub_81248F4 - ldr r0, =sub_81248D4 - bl SetMainCallback2 -_0812489C: - ldr r1, =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] -_081248AA: - add sp, 0xC - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124690 - - thumb_func_start sub_81248C0 -sub_81248C0: @ 81248C0 - push {lr} - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - pop {r0} - bx r0 - thumb_func_end sub_81248C0 - - thumb_func_start sub_81248D4 -sub_81248D4: @ 81248D4 - push {lr} - ldr r0, =gUnknown_0203A148 - ldr r0, [r0] - ldr r0, [r0] - bl _call_via_r0 - bl AnimateSprites - bl BuildOamBuffer - bl do_scheduled_bg_tilemap_copies_to_vram - pop {r0} - bx r0 - .pool - thumb_func_end sub_81248D4 - - thumb_func_start sub_81248F4 -sub_81248F4: @ 81248F4 - ldr r1, =gUnknown_0203A148 - ldr r1, [r1] - str r0, [r1] - movs r0, 0 - strh r0, [r1, 0x4] - bx lr - .pool - thumb_func_end sub_81248F4 - - thumb_func_start sub_8124904 -sub_8124904: @ 8124904 - push {r4-r7,lr} - sub sp, 0xC - ldr r2, =gUnknown_0203A148 - ldr r0, [r2] - ldrb r0, [r0, 0xA] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _0812491A - b _08124A2C -_0812491A: - movs r7, 0 - movs r3, 0 - ldr r0, =gUnknown_085A1EDC - mov r12, r0 - adds r5, r2, 0 - movs r6, 0 -_08124926: - ldr r0, [r5] - lsls r1, r3, 3 - mov r2, r12 - adds r4, r1, r2 - ldrh r0, [r0, 0x8] - ldrh r1, [r4, 0x4] - cmp r0, r1 - bne _081249C4 - ldrh r0, [r4, 0x6] - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _081249CE - ldr r0, [r5] - ldrb r0, [r0, 0xB] - ldr r1, [r4] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl StringLength - movs r7, 0x1 - movs r0, 0 - movs r1, 0 - bl sub_8198070 - movs r0, 0x1 - movs r1, 0 - movs r2, 0x65 - movs r3, 0xD - bl SetWindowBorderStyle - ldr r2, [r5] - adds r2, 0xC - str r7, [sp] - str r6, [sp, 0x4] - str r6, [sp, 0x8] - movs r0, 0x1 - movs r1, 0x1 - movs r3, 0 - bl PrintTextOnWindow - ldr r0, [r5] - ldrb r0, [r0, 0xB] - ldr r1, [r4] - lsls r0, 2 - adds r0, r1 - ldr r4, [r0] - movs r0, 0x1 - adds r1, r4, 0 - movs r2, 0x60 - bl GetStringRightAlignXOffset - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x11 - str r0, [sp] - str r6, [sp, 0x4] - str r6, [sp, 0x8] - movs r0, 0x1 - movs r1, 0x1 - adds r2, r4, 0 - bl PrintTextOnWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldr r0, =gUnknown_03001180 - str r7, [r0] - b _081249CE - .pool -_081249C4: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0 - beq _08124926 -_081249CE: - cmp r7, 0 - bne _08124A62 - ldr r0, =gUnknown_03001180 - ldr r0, [r0] - cmp r0, 0x1 - bne _081249F4 - movs r0, 0x1 - movs r1, 0 - bl sub_8198070 - movs r0, 0 - movs r1, 0 - movs r2, 0x65 - movs r3, 0xD - bl SetWindowBorderStyle - b _081249FC - .pool -_081249F4: - movs r0, 0 - movs r1, 0x11 - bl FillWindowPixelBuffer -_081249FC: - ldr r0, =gUnknown_0203A148 - ldr r2, [r0] - adds r2, 0xC - movs r0, 0x1 - str r0, [sp] - movs r4, 0 - str r4, [sp, 0x4] - str r4, [sp, 0x8] - movs r0, 0 - movs r1, 0x1 - movs r3, 0 - bl PrintTextOnWindow - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - ldr r0, =gUnknown_03001180 - str r4, [r0] - b _08124A62 - .pool -_08124A2C: - ldr r4, =gUnknown_03001180 - ldr r0, [r4] - cmp r0, 0x1 - bne _08124A48 - movs r0, 0x1 - movs r1, 0 - bl sub_8198070 - movs r0, 0 - movs r1, 0 - movs r2, 0x65 - movs r3, 0xD - bl SetWindowBorderStyle -_08124A48: - movs r0, 0 - movs r1, 0x11 - bl FillWindowPixelBuffer - movs r0, 0 - movs r1, 0x2 - bl CopyWindowToVram - movs r0, 0 - bl schedule_bg_copy_tilemap_to_vram - movs r0, 0 - str r0, [r4] -_08124A62: - add sp, 0xC - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124904 - - thumb_func_start sub_8124A70 -sub_8124A70: @ 8124A70 - push {r4,r5,lr} - sub sp, 0x8 - ldr r0, =gUnknown_085A1D68 - ldr r5, =gUnknown_0203A148 - ldr r1, [r5] - ldr r4, =0x0000088c - adds r1, r4 - bl LZ77UnCompWram - ldr r0, [r5] - adds r0, r4 - str r0, [sp] - ldr r1, =0xffff0000 - ldr r0, [sp, 0x4] - ands r0, r1 - movs r1, 0xE0 - lsls r1, 1 - orrs r0, r1 - ldr r1, =0x0000ffff - ands r0, r1 - movs r1, 0x80 - lsls r1, 10 - orrs r0, r1 - str r0, [sp, 0x4] - mov r0, sp - bl LoadSpriteSheet - ldr r0, =gUnknown_085A1F10 - bl LoadSpritePalette - bl sub_8124AD4 - bl sub_8124BE4 - add sp, 0x8 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124A70 - - thumb_func_start sub_8124AD4 -sub_8124AD4: @ 8124AD4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - ldr r0, =0x0000086f - str r0, [sp, 0xC] - movs r1, 0 - mov r9, r1 - mov r2, sp - adds r2, 0x6 - str r2, [sp, 0x14] - mov r3, sp - adds r3, 0xA - str r3, [sp, 0x18] - mov r0, sp - adds r0, 0x8 - str r0, [sp, 0x10] - add r1, sp, 0x4 - mov r10, r1 -_08124AFE: - ldr r2, [sp, 0x18] - str r2, [sp] - mov r0, r9 - add r1, sp, 0x4 - mov r2, sp - adds r2, 0x6 - ldr r3, [sp, 0x10] - bl sub_8124630 - mov r3, r10 - ldrh r0, [r3] - adds r0, 0x1 - lsls r0, 3 - adds r0, 0x4 - strh r0, [r3] - mov r1, sp - ldrh r0, [r1, 0x6] - adds r0, 0x2 - lsls r0, 3 - adds r0, 0x4 - strh r0, [r1, 0x6] - ldr r2, [sp, 0x10] - ldrh r0, [r2] - cmp r0, 0x2 - bne _08124B38 - movs r7, 0x1 - b _08124B44 - .pool -_08124B38: - ldr r3, [sp, 0x18] - ldrh r0, [r3] - movs r7, 0 - cmp r0, 0x2 - bne _08124B44 - movs r7, 0x2 -_08124B44: - mov r0, r10 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r3, [sp, 0x14] - movs r0, 0 - ldrsh r2, [r3, r0] - ldr r0, =gUnknown_085A1F7C - movs r3, 0xA - bl CreateSprite - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x40 - beq _08124BB8 - ldr r1, =gSprites - mov r8, r1 - lsls r4, r5, 4 - adds r0, r4, r5 - lsls r6, r0, 2 - adds r2, r6, r1 - lsls r3, r7, 6 - ldrb r1, [r2, 0x1] - movs r0, 0x3F - ands r0, r1 - orrs r0, r3 - strb r0, [r2, 0x1] - ldr r0, [sp, 0xC] - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _08124B9C - mov r0, r8 - adds r0, 0x1C - adds r0, r6, r0 - ldr r1, =sub_8124CBC - str r1, [r0] - b _08124BA2 - .pool -_08124B9C: - adds r0, r7, 0x3 - lsls r0, 16 - lsrs r7, r0, 16 -_08124BA2: - adds r4, r5 - lsls r4, 2 - ldr r0, =gSprites - adds r4, r0 - lsls r1, r7, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim - mov r2, r9 - strh r2, [r4, 0x2E] -_08124BB8: - ldr r0, [sp, 0xC] - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - str r0, [sp, 0xC] - mov r0, r9 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - cmp r0, 0xF - bls _08124AFE - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124AD4 - - thumb_func_start sub_8124BE4 -sub_8124BE4: @ 8124BE4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - movs r0, 0 - mov r8, r0 - ldr r6, =gUnknown_085A1F18 - ldrh r0, [r6, 0x2] - cmp r0, 0xD5 - beq _08124C9C - mov r5, sp - adds r5, 0x6 - add r7, sp, 0x4 - ldr r1, =gSprites - mov r9, r1 - movs r0, 0x1C - add r0, r9 - mov r10, r0 -_08124C0C: - mov r1, r8 - lsls r4, r1, 2 - adds r0, r4, r6 - ldrh r0, [r0] - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _08124C84 - adds r0, r6, 0x2 - adds r0, r4, r0 - ldrh r6, [r0] - mov r0, sp - adds r0, 0xA - str r0, [sp] - adds r0, r6, 0 - add r1, sp, 0x4 - adds r2, r5, 0 - add r3, sp, 0x8 - bl sub_8124630 - ldrh r0, [r7] - adds r0, 0x1 - lsls r0, 3 - strh r0, [r7] - ldrh r0, [r5] - adds r0, 0x2 - lsls r0, 3 - strh r0, [r5] - movs r0, 0 - ldrsh r1, [r7, r0] - movs r0, 0 - ldrsh r2, [r5, r0] - ldr r0, =gUnknown_085A1F7C - movs r3, 0xA - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _08124C84 - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - mov r1, r9 - adds r4, r2, r1 - ldrb r1, [r4, 0x3] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x40 - orrs r0, r1 - strb r0, [r4, 0x3] - add r2, r10 - ldr r0, =sub_8124CBC - str r0, [r2] - adds r0, r4, 0 - movs r1, 0x6 - bl StartSpriteAnim - strh r6, [r4, 0x2E] -_08124C84: - mov r0, r8 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - ldr r6, =gUnknown_085A1F18 - lsls r0, 2 - adds r1, r6, 0x2 - adds r0, r1 - ldrh r0, [r0] - cmp r0, 0xD5 - bne _08124C0C -_08124C9C: - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124BE4 - - thumb_func_start sub_8124CBC -sub_8124CBC: @ 8124CBC - push {lr} - adds r2, r0, 0 - ldr r0, =gUnknown_0203A148 - ldr r0, [r0] - ldrh r1, [r0, 0x8] - movs r3, 0x2E - ldrsh r0, [r2, r3] - cmp r1, r0 - bne _08124D00 - ldrh r0, [r2, 0x30] - adds r0, 0x1 - strh r0, [r2, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x10 - ble _08124D0E - movs r0, 0 - strh r0, [r2, 0x30] - adds r3, r2, 0 - adds r3, 0x3E - ldrb r2, [r3] - lsrs r1, r2, 2 - movs r0, 0x1 - eors r1, r0 - ands r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - b _08124D0E - .pool -_08124D00: - movs r0, 0x10 - strh r0, [r2, 0x30] - adds r2, 0x3E - ldrb r1, [r2] - subs r0, 0x15 - ands r0, r1 - strb r0, [r2] -_08124D0E: - pop {r0} - bx r0 - thumb_func_end sub_8124CBC - - thumb_func_start sub_8124D14 -sub_8124D14: @ 8124D14 - push {r4,lr} - sub sp, 0x4 - ldr r4, =gUnknown_0203A148 - ldr r0, [r4] - ldrh r1, [r0, 0x4] - cmp r1, 0 - beq _08124D2C - cmp r1, 0x1 - beq _08124D46 - b _08124D56 - .pool -_08124D2C: - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r1, [r4] - ldrh r0, [r1, 0x4] - adds r0, 0x1 - strh r0, [r1, 0x4] - b _08124D56 -_08124D46: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08124D56 - ldr r0, =sub_8124D64 - bl sub_81248F4 -_08124D56: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124D14 - - thumb_func_start sub_8124D64 -sub_8124D64: @ 8124D64 - push {r4,lr} - ldr r0, =gUnknown_0203A148 - ldr r0, [r0] - ldrh r0, [r0, 0x4] - cmp r0, 0 - bne _08124DF8 - bl sub_81230AC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bhi _08124DF8 - lsls r0, 2 - ldr r1, =_08124D90 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08124D90: - .4byte _08124DF8 - .4byte _08124DF8 - .4byte _08124DF8 - .4byte _08124DA8 - .4byte _08124DAE - .4byte _08124DE0 -_08124DA8: - bl sub_8124904 - b _08124DF8 -_08124DAE: - ldr r4, =gUnknown_0203A148 - ldr r0, [r4] - ldrb r0, [r0, 0xA] - cmp r0, 0x2 - beq _08124DBC - cmp r0, 0x4 - bne _08124DF8 -_08124DBC: - movs r0, 0x5 - bl m4aSongNumStart - ldr r0, [r4] - ldr r1, =0x00000a72 - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] - ldr r0, =sub_8124E0C - bl sub_81248F4 - b _08124DF8 - .pool -_08124DE0: - movs r0, 0x5 - bl m4aSongNumStart - ldr r0, =gUnknown_0203A148 - ldr r0, [r0] - ldr r1, =0x00000a72 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, =sub_8124E0C - bl sub_81248F4 -_08124DF8: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124D64 - - thumb_func_start sub_8124E0C -sub_8124E0C: @ 8124E0C - push {r4,lr} - sub sp, 0x4 - ldr r4, =gUnknown_0203A148 - ldr r0, [r4] - ldrh r1, [r0, 0x4] - cmp r1, 0 - beq _08124E24 - cmp r1, 0x1 - beq _08124E3E - b _08124F1A - .pool -_08124E24: - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, [r4] - ldrh r0, [r1, 0x4] - adds r0, 0x1 - strh r0, [r1, 0x4] - b _08124F1A -_08124E3E: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - bne _08124F1A - bl sub_812305C - ldr r1, [r4] - ldr r2, =0x00000a72 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _08124F00 - ldrh r0, [r1, 0x8] - cmp r0, 0xF - beq _08124E98 - cmp r0, 0xF - bgt _08124E6C - cmp r0, 0 - beq _08124E84 - b _08124EBC - .pool -_08124E6C: - cmp r0, 0x3A - beq _08124E7C - cmp r0, 0x49 - bne _08124EBC - movs r0, 0x15 - bl sub_8084CCC - b _08124EFA -_08124E7C: - movs r0, 0x16 - bl sub_8084CCC - b _08124EFA -_08124E84: - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - movs r1, 0xD - cmp r0, 0 - bne _08124EB0 - movs r1, 0xC - b _08124EB0 - .pool -_08124E98: - ldr r0, =0x000008b4 - bl FlagGet - lsls r0, 24 - movs r1, 0xB - cmp r0, 0 - beq _08124EB0 - ldr r0, [r4] - ldrb r0, [r0, 0xB] - cmp r0, 0 - bne _08124EB0 - movs r1, 0x14 -_08124EB0: - adds r0, r1, 0 - bl sub_8084CCC - b _08124EFA - .pool -_08124EBC: - ldr r3, =gUnknown_085A1E3C - ldr r0, =gUnknown_0203A148 - ldr r0, [r0] - ldrh r1, [r0, 0x8] - lsls r0, r1, 1 - adds r2, r0, r1 - adds r0, r3, 0x2 - adds r1, r2, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _08124EE0 - bl sub_8084CCC - b _08124EFA - .pool -_08124EE0: - adds r0, r2, r3 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - adds r1, r3, 0x1 - adds r1, r2, r1 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - movs r2, 0x1 - negs r2, r2 - bl warp1_set_2 -_08124EFA: - bl sub_80B69DC - b _08124F06 -_08124F00: - ldr r0, =sub_81B58A8 - bl SetMainCallback2 -_08124F06: - ldr r4, =gUnknown_0203A148 - ldr r0, [r4] - cmp r0, 0 - beq _08124F16 - bl Free - movs r0, 0 - str r0, [r4] -_08124F16: - bl FreeAllWindowBuffers -_08124F1A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8124E0C - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/rom4.s b/asm/rom4.s index bf682fc51..bf354dbd0 100644 --- a/asm/rom4.s +++ b/asm/rom4.s @@ -841,7 +841,7 @@ sub_8084CCC: @ 8084CCC sub sp, 0x4 lsls r0, 24 lsrs r0, 24 - bl sub_8122CBC + bl GetHealLocationPointer adds r4, r0, 0 cmp r4, 0 beq _08084CFA @@ -885,7 +885,7 @@ Overworld_SetHealLocationWarp: @ 8084D1C sub sp, 0x8 lsls r0, 24 lsrs r0, 24 - bl sub_8122CBC + bl GetHealLocationPointer adds r5, r0, 0 cmp r5, 0 beq _08084D50 @@ -1187,7 +1187,7 @@ sub_8084F6C: @ 8084F6C sub sp, 0x8 lsls r0, 24 lsrs r0, 24 - bl sub_8122CBC + bl GetHealLocationPointer adds r5, r0, 0 cmp r5, 0 beq _08084FA0 |