diff options
| author | Henny022p <info@henny022.de> | 2021-03-22 10:18:20 +0100 |
|---|---|---|
| committer | Henny022p <info@henny022.de> | 2021-03-22 10:18:20 +0100 |
| commit | 5cebf089fd0b34e017aeb36d540bfce051a4969c (patch) | |
| tree | b896213a6d2ead9a54518209d7a7e0a1ab855cbe /asm | |
| parent | 61b284265f37dda398a561f1f8a3ccdd8d1b39da (diff) | |
| parent | 8e3bebad007d5ba082ffb14aafbb2be94dfd8fcd (diff) | |
Merge branch 'master' into m4a
Diffstat (limited to 'asm')
84 files changed, 527 insertions, 1730 deletions
diff --git a/asm/bigBarrel.s b/asm/bigBarrel.s index e7390c31..f721b772 100644 --- a/asm/bigBarrel.s +++ b/asm/bigBarrel.s @@ -176,7 +176,7 @@ _08088B82: subs r1, #0x50 movs r2, #0xa0 movs r3, #0x30 - bl sub_0806FBFC + bl CheckPlayerProximity cmp r0, #0 beq _08088BBA ldrb r0, [r5] @@ -194,7 +194,7 @@ _08088BBA: adds r1, #0x30 movs r2, #0xa0 movs r3, #0x30 - bl sub_0806FBFC + bl CheckPlayerProximity cmp r0, #0 beq _08088BDE ldrb r0, [r5] diff --git a/asm/bigGoron.s b/asm/bigGoron.s index 439e2cd7..8e59000e 100644 --- a/asm/bigGoron.s +++ b/asm/bigGoron.s @@ -95,7 +95,7 @@ sub_0806D0B0: @ 0x0806D0B0 movs r1, #0x80 lsls r1, r1, #6 adds r0, r5, #0 - bl MemClear32 + bl MemClear cmp r4, #0 beq _0806D0DA adds r0, r4, #0 @@ -120,7 +120,7 @@ sub_0806D0F8: @ 0x0806D0F8 movs r0, #7 movs r1, #0x4c movs r2, #7 - bl FindEntityInListBySubtype + bl FindEntityByID cmp r0, #0 beq _0806D10C bl sub_0806D0B0 @@ -583,7 +583,7 @@ _0806D46C: ldrsh r1, [r4, r2] movs r2, #0x40 movs r3, #0x40 - bl sub_0806FBFC + bl CheckPlayerProximity cmp r0, #0 beq _0806D4AC adds r2, r4, #0 @@ -724,7 +724,7 @@ _0806D540: ldrsh r1, [r4, r2] movs r2, #0x18 movs r3, #0x40 - bl sub_0806FBFC + bl CheckPlayerProximity cmp r0, #0 beq _0806D5B4 _0806D590: @@ -928,7 +928,7 @@ sub_0806D6D0: @ 0x0806D6D0 movs r1, #0x4c movs r2, #7 movs r3, #2 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _0806D6EE @@ -940,7 +940,7 @@ _0806D6EE: movs r1, #0x4c movs r2, #7 movs r3, #1 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _0806D706 @@ -961,7 +961,7 @@ sub_0806D70C: @ 0x0806D70C movs r1, #0x4c movs r2, #7 movs r3, #2 - bl FindEntityInListByForm + bl FindEntity adds r2, r0, #0 cmp r2, #0 beq _0806D728 @@ -972,7 +972,7 @@ _0806D728: movs r1, #0x4c movs r2, #7 movs r3, #1 - bl FindEntityInListByForm + bl FindEntity adds r2, r0, #0 cmp r2, #0 beq _0806D746 @@ -996,7 +996,7 @@ sub_0806D74C: @ 0x0806D74C movs r1, #0x4c movs r2, #7 movs r3, #2 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _0806D76A @@ -1008,7 +1008,7 @@ _0806D76A: movs r1, #0x4c movs r2, #7 movs r3, #1 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _0806D782 @@ -1029,7 +1029,7 @@ sub_0806D788: @ 0x0806D788 movs r1, #0x4c movs r2, #7 movs r3, #2 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _0806D7A6 @@ -1041,7 +1041,7 @@ _0806D7A6: movs r1, #0x4c movs r2, #7 movs r3, #1 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _0806D7BE @@ -1070,7 +1070,7 @@ sub_0806D7C4: @ 0x0806D7C4 movs r1, #0x4c movs r2, #7 movs r3, #2 - bl FindEntityInListByForm + bl FindEntity cmp r0, #0 beq _0806D7FC movs r1, #0x2e @@ -1098,7 +1098,7 @@ sub_0806D804: @ 0x0806D804 movs r1, #0x4c movs r2, #7 movs r3, #2 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _0806D83A @@ -639,7 +639,7 @@ CreateBird: @ 0x0809D700 movs r1, #0x95 movs r2, #6 movs r3, #8 - bl FindEntityInListByForm + bl FindEntity adds r4, r0, #0 cmp r4, #0 bne _0809D732 @@ -327,7 +327,7 @@ _0809B606: movs r0, #7 movs r1, #0x1a movs r2, #7 - bl FindEntityInListBySubtype + bl FindEntityByID adds r2, r0, #0 cmp r2, #0 beq _0809B682 diff --git a/asm/code_08000108.s b/asm/code_08000108.s index 7fb9b84d..b54a3d0a 100644 --- a/asm/code_08000108.s +++ b/asm/code_08000108.s @@ -33,7 +33,7 @@ _08000136: pop {r4, pc} _08000138: _08000138: .4byte gUnk_030056F1 -_0800013C: .4byte sub_0807D280 +_0800013C: .4byte sub_0807D280 @ layer 1, 2, 3? _08000140: .4byte sub_0807D46C _08000144: .4byte sub_0807D6D8 @@ -55,8 +55,8 @@ sub_08000152: @ 0x08000152 lsrs r2, r2, #2 non_word_aligned_thumb_func_start SetTile -SetTile: @ 0x0800015E - push {r4, r5, r6, r7, lr} +SetTile: @ r0 = tile type, r1, = tile position, r2 = layer + push {r4-r7, lr} lsls r3, r2, #3 ldr r4, _08000208 @ =gUnk_08000228 ldr r5, [r4, r3] @@ -75,7 +75,7 @@ SetTile: @ 0x0800015E ldrb r0, [r3, r4] lsrs r2, r2, #2 bl sub_08000148 - pop {r0, r1} + pop {r0, r1} @ tilepos, layer push {r0, r1} bl DeleteLoadedTileEntity adds r0, r7, #0 @@ -170,8 +170,8 @@ gUnk_08000278:: @ call 0x80B19CC @ ======== @ Unused? Doesn't seem to be called by anything in Ghidra. - thumb_func_start sub_08000288 -sub_08000288: @ 0x08000288 + thumb_func_start GetTileAtEntityPos +GetTileAtEntityPos: @ 0x08000288 ldr r3, _080002F4 @ =gUnk_03005740 bx r3 diff --git a/asm/code_080011C4.s b/asm/code_080011C4.s index 94684d6e..b050d9e8 100644 --- a/asm/code_080011C4.s +++ b/asm/code_080011C4.s @@ -1238,7 +1238,7 @@ _08002812: cmp r0, #0 beq _08002834 adds r6, #1 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #8 _08002834: adds r4, r0, #0 @@ -1256,7 +1256,7 @@ _0800283E: cmp r0, #0 beq _08002856 adds r6, #2 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #8 _08002856: adds r4, r0, #0 diff --git a/asm/code_0800857C.s b/asm/code_0800857C.s index 3522fc17..c4a611b9 100644 --- a/asm/code_0800857C.s +++ b/asm/code_0800857C.s @@ -719,7 +719,7 @@ sub_08008AC6: @ 0x08008AC6 movs r3, #0xe2 movs r2, #0x3d strb r3, [r0, r2] - bl sub_08079458 + bl RespawnPlayer _08008AEC: pop {r0, pc} diff --git a/asm/code_08016B30.s b/asm/code_08016B30.s index 4b1079c9..059e1c4c 100644 --- a/asm/code_08016B30.s +++ b/asm/code_08016B30.s @@ -13,7 +13,7 @@ sub_08016B30: @ 0x08016B30 thumb_func_start sub_08016B34 sub_08016B34: @ 0x08016B34 ldr r1, _08016B54 @ =0x03007FFC - ldr r0, _08016B58 @ =gUnk_03005D90 + ldr r0, _08016B58 @ =IntrMain str r0, [r1] ldr r1, _08016B5C @ =0x04000004 ldr r2, _08016B60 @ =0x00005028 @@ -29,7 +29,7 @@ sub_08016B34: @ 0x08016B34 bx lr .align 2, 0 _08016B54: .4byte 0x03007FFC -_08016B58: .4byte gUnk_03005D90 +_08016B58: .4byte IntrMain _08016B5C: .4byte 0x04000004 _08016B60: .4byte 0x00005028 _08016B64: .4byte 0x04000200 diff --git a/asm/code_08018500.s b/asm/code_08018500.s index 182c60f8..bec8ac59 100644 --- a/asm/code_08018500.s +++ b/asm/code_08018500.s @@ -58,7 +58,7 @@ sub_0801855C: @ 0x0801855C ldr r4, _08018570 @ =gUnk_02033AB8 adds r0, r4, #0 movs r1, #0x14 - bl MemClear32 + bl MemClear adds r5, r4, #0 ldr r4, _08018574 @ =gUnk_080B3D20 movs r6, #0 diff --git a/asm/code_0801C370.s b/asm/code_0801C370.s index 8ca381af..88b5614f 100644 --- a/asm/code_0801C370.s +++ b/asm/code_0801C370.s @@ -32,7 +32,7 @@ _0801C398: movs r1, #0xcd lsls r1, r1, #2 adds r0, r5, #0 - bl MemClear32 + bl MemClear strb r6, [r5, #3] strh r4, [r5, #0xe] ldr r0, _0801C474 @ =gSave @@ -48,7 +48,7 @@ _0801C398: movs r1, #0x80 lsls r1, r1, #4 adds r0, r4, #0 - bl MemClear32 + bl MemClear ldr r1, _0801C47C @ =gScreen str r4, [r1, #0x10] ldr r0, _0801C480 @ =0x00001F0C @@ -93,7 +93,7 @@ _0801C398: adds r0, #0x34 movs r1, #0xc0 lsls r1, r1, #2 - bl MemClear32 + bl MemClear movs r0, #5 movs r1, #9 bl sub_0801CA6C diff --git a/asm/code_0801CEC0.s b/asm/code_0801CEC0.s index 95184820..bfdab8a3 100644 --- a/asm/code_0801CEC0.s +++ b/asm/code_0801CEC0.s @@ -12,7 +12,7 @@ sub_0801CFA8: @ 0x0801CFA8 adds r5, r0, #0 ldr r0, _0801CFCC @ =gUnk_02001A00 movs r1, #0x40 - bl MemClear32 + bl MemClear movs r4, #0 _0801CFB6: adds r0, r4, #0 diff --git a/asm/code_0801D79C.s b/asm/code_0801D79C.s index 6ac7a011..4cbc3a6f 100644 --- a/asm/code_0801D79C.s +++ b/asm/code_0801D79C.s @@ -203,7 +203,7 @@ _0801D9D8: strh r0, [r3] adds r0, r4, #0 mov r1, ip - bl MemClear32 + bl MemClear adds r0, r4, #0 b _0801DA02 .align 2, 0 @@ -217,8 +217,8 @@ _0801DA02: mov sl, r5 pop {r4, r5, r6, r7, pc} - thumb_func_start sub_0801DA0C -sub_0801DA0C: @ 0x0801DA0C + thumb_func_start zFree +zFree: @ 0x0801DA0C push {r4, r5, lr} ldr r3, _0801DA44 @ =gzHeap subs r1, r0, r3 @@ -282,13 +282,13 @@ zMallocInit: @ 0x0801DA7C ldr r0, _0801DA8C @ =gzHeap movs r1, #0x80 lsls r1, r1, #5 - bl MemClear32 + bl MemClear pop {pc} .align 2, 0 _0801DA8C: .4byte gzHeap - thumb_func_start sub_0801DA90 -sub_0801DA90: @ 0x0801DA90 + thumb_func_start DispReset +DispReset: @ 0x0801DA90 push {r4, r5, lr} adds r4, r0, #0 ldr r1, _0801DAEC @ =gMain @@ -319,15 +319,15 @@ sub_0801DA90: @ 0x0801DA90 movs r0, #0x80 lsls r0, r0, #0x13 strh r3, [r0] - bl sub_0801DB10 + bl ClearOAM bl sub_0801DB34 ldr r0, _0801DB08 @ =0x0600C000 movs r1, #0x20 - bl MemClear32 + bl MemClear ldr r0, _0801DB0C @ =gBG0Buffer movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear strh r4, [r5, #0xe] pop {r4, r5, pc} .align 2, 0 @@ -341,8 +341,8 @@ _0801DB04: .4byte 0x00007FFF _0801DB08: .4byte 0x0600C000 _0801DB0C: .4byte gBG0Buffer - thumb_func_start sub_0801DB10 -sub_0801DB10: @ 0x0801DB10 + thumb_func_start ClearOAM +ClearOAM: @ 0x0801DB10 push {r4, lr} ldr r3, _0801DB30 @ =gUnk_03000020 movs r1, #0xe0 @@ -369,7 +369,7 @@ sub_0801DB34: @ 0x0801DB34 ldr r4, _0801DB6C @ =gScreen adds r0, r4, #0 movs r1, #0x7c - bl MemClear32 + bl MemClear ldr r0, _0801DB70 @ =gBG0Buffer str r0, [r4, #0x10] ldr r0, _0801DB74 @ =0x00001F0C @@ -424,7 +424,7 @@ sub_0801DBA0: @ 0x0801DBA0 adds r5, r1, #0 adds r1, r2, #0 adds r0, r5, #0 - bl MemClear32 + bl MemClear movs r0, #1 strb r0, [r5] ldr r2, _0801DBE4 @ =gScreenTransition @@ -699,7 +699,7 @@ _0801DDB8: ldr r0, _0801DDE0 @ =gUnk_02019EE0 movs r1, #0x80 lsls r1, r1, #8 - bl MemClear32 + bl MemClear b _0801DEE2 .align 2, 0 _0801DDD8: .4byte gUnk_080C9C50 @@ -968,7 +968,7 @@ sub_0801DFB4: @ 0x0801DFB4 ldr r7, _0801E004 @ =gUnk_02022740 adds r0, r7, #0 movs r1, #0x10 - bl MemClear32 + bl MemClear strh r4, [r7, #6] strh r5, [r7, #8] strh r6, [r7, #0xa] @@ -1209,7 +1209,7 @@ sub_0801E160: @ 0x0801E160 adds r0, r0, r4 movs r1, #0xa0 lsls r1, r1, #4 - bl MemClear32 + bl MemClear adds r0, r6, #0 mov r1, r8 mov r2, sb @@ -1279,7 +1279,7 @@ sub_0801E1EC: @ 0x0801E1EC adds r0, r0, r5 movs r1, #0xa0 lsls r1, r1, #4 - bl MemClear32 + bl MemClear adds r0, r4, #0 movs r1, #0 bl sub_0801E24C @@ -1443,7 +1443,7 @@ sub_0801E31C: @ 0x0801E31C adds r0, r0, r1 movs r1, #0xa0 lsls r1, r1, #4 - bl MemClear32 + bl MemClear cmp sl, sb bge _0801E3DC movs r6, #0 @@ -1738,7 +1738,7 @@ sub_0801E49C: @ 0x0801E49C adds r0, r0, r6 movs r1, #0xa0 lsls r1, r1, #4 - bl MemClear32 + bl MemClear ldr r2, _0801E5E8 @ =gUnk_02018EE0 ldrb r1, [r5] lsls r0, r1, #2 diff --git a/asm/code_0804AA84.s b/asm/code_0804AA84.s index c6424780..3174946c 100644 --- a/asm/code_0804AA84.s +++ b/asm/code_0804AA84.s @@ -9,7 +9,7 @@ sub_0804AB70: @ 0x0804AB70 push {r4, r5, lr} movs r0, #0 - bl sub_0801DA90 + bl DispReset ldr r1, _0804ABF8 @ =gScreen movs r2, #0 movs r0, #0x92 diff --git a/asm/code_0804B9F8.s b/asm/code_0804B9F8.s index 6ee254e6..a564376f 100644 --- a/asm/code_0804B9F8.s +++ b/asm/code_0804B9F8.s @@ -50,10 +50,10 @@ sub_0804FFE4: @ 0x0804FFE4 ldr r4, _08050000 @ =gFadeControl adds r0, r4, #0 movs r1, #0x1c - bl MemClear32 + bl MemClear ldr r0, _08050004 @ =gUnk_020354C0 movs r1, #0x80 - bl MemClear32 + bl MemClear movs r0, #1 rsbs r0, r0, #0 str r0, [r4, #4] diff --git a/asm/code_080526F8.s b/asm/code_080526F8.s index 2b0f3061..150d4fea 100644 --- a/asm/code_080526F8.s +++ b/asm/code_080526F8.s @@ -791,7 +791,7 @@ sub_08052CFC: @ 0x08052CFC ldr r4, _08052D44 @ =gArea ldr r1, _08052D48 @ =0x00000894 adds r0, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _08052D4C @ =gRoomControls ldrb r1, [r0, #4] lsls r1, r1, #2 @@ -996,7 +996,7 @@ sub_08052EA0: @ 0x08052EA0 ldr r4, _08052EE4 @ =gRoomVars adds r0, r4, #0 movs r1, #0xcc - bl MemClear32 + bl MemClear movs r0, #0xff strb r0, [r4, #0x10] strb r0, [r4, #0x11] @@ -1178,7 +1178,7 @@ sub_08052FF4: @ 0x08052FF4 ldr r5, _08053074 @ =gUnk_020342CC adds r0, r5, #0 movs r1, #0x20 - bl MemClear32 + bl MemClear str r5, [r5, #0x20] ldr r0, _08053078 @ =gAreaRoomHeaders lsls r6, r6, #2 @@ -1570,17 +1570,17 @@ sub_08053320: @ 0x08053320 movs r4, #0x80 lsls r4, r4, #4 adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _08053380 @ =gBG1Buffer adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _08053384 @ =gBG2Buffer adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _08053388 @ =gBG3Buffer movs r1, #0x80 lsls r1, r1, #5 - bl MemClear32 + bl MemClear movs r0, #0x10 bl LoadGfxGroup movs r0, #0x17 @@ -2013,7 +2013,7 @@ sub_0805368C: @ 0x0805368C movs r0, #6 movs r1, #0x5d movs r2, #6 - bl FindEntityInListBySubtype + bl FindEntityByID cmp r0, #0 beq _080536A6 bl DeleteEntity @@ -2139,7 +2139,7 @@ sub_08053758: @ 0x08053758 strh r2, [r0, #0xa] bl sub_0801B170 movs r0, #0 - bl sub_0801DA90 + bl DispReset ldr r2, _080537F0 @ =gScreen movs r0, #0x99 lsls r0, r0, #6 @@ -2222,7 +2222,7 @@ sub_08053800: @ 0x08053800 ldr r0, _08053888 @ =gBG1Buffer movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear ldr r0, _0805388C @ =0x00000F01 adds r5, r5, r0 ldr r1, [r4] @@ -2380,7 +2380,7 @@ sub_08053974: @ 0x08053974 bne _080539A8 bl sub_0804FFE4 movs r0, #1 - bl sub_0801DA90 + bl DispReset bl sub_080197AC bl sub_08051F78 ldr r0, _080539B0 @ =gUnk_080FCBC4 @@ -2437,7 +2437,7 @@ sub_080539F4: @ 0x080539F4 cmp r0, #0 bne _08053A10 movs r0, #1 - bl sub_0801DA90 + bl DispReset ldr r0, _08053A18 @ =gMenu ldrb r1, [r0, #6] adds r1, #1 @@ -2587,7 +2587,7 @@ sub_08053B10: @ 0x08053B10 adds r1, #1 strb r1, [r0, #5] movs r0, #1 - bl sub_0801DA90 + bl DispReset movs r1, #0x80 lsls r1, r1, #1 movs r0, #4 @@ -2673,7 +2673,7 @@ sub_08053BBC: @ 0x08053BBC adds r1, #1 strb r1, [r0, #5] movs r0, #1 - bl sub_0801DA90 + bl DispReset movs r1, #0x80 lsls r1, r1, #1 movs r0, #4 diff --git a/asm/code_0805436C.s b/asm/code_0805436C.s index 4ab2c097..6e6c053a 100644 --- a/asm/code_0805436C.s +++ b/asm/code_0805436C.s @@ -33,7 +33,7 @@ sub_0805488C: @ 0x0805488C lsls r0, r0, #1 strh r0, [r2, #8] movs r0, #0 - bl sub_0801DA90 + bl DispReset ldrb r0, [r4, #3] movs r1, #1 bl sub_08054974 @@ -2571,7 +2571,7 @@ _08055C6C: movs r1, #0x9e movs r2, #6 movs r3, #0 - bl FindEntityInListByForm + bl FindEntity adds r4, r0, #0 cmp r4, #0 beq _08055C8C diff --git a/asm/code_08056418.s b/asm/code_08056418.s index 97457697..144005f4 100644 --- a/asm/code_08056418.s +++ b/asm/code_08056418.s @@ -267,11 +267,11 @@ _080568B2: beq _080568D2 adds r0, r6, #0 movs r1, #4 - bl MemClear32 + bl MemClear ldr r4, _08056910 @ =gUnk_02024030 adds r0, r4, #0 movs r1, #0x18 - bl MemClear32 + bl MemClear movs r0, #1 strb r0, [r4] strb r0, [r6] @@ -472,7 +472,7 @@ _08056A30: movs r1, #3 strb r1, [r2] movs r1, #0x18 - bl MemClear32 + bl MemClear movs r0, #0x6a bl SoundReq adds r1, r6, #0 diff --git a/asm/code_0805E3B0.s b/asm/code_0805E3B0.s index ba150ef6..5a0336df 100644 --- a/asm/code_0805E3B0.s +++ b/asm/code_0805E3B0.s @@ -360,15 +360,15 @@ EraseAllEntities: @ 0x0805E60C bl DeleteAllEntities ldr r0, _0805E654 @ =gUnk_03003DC0 movs r1, #0xc - bl MemClear32 + bl MemClear ldr r0, _0805E658 @ =gPlayerEntity movs r1, #0xaa lsls r1, r1, #6 - bl MemClear32 + bl MemClear ldr r0, _0805E65C @ =gUnk_02033290 movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear bl sub_0805E98C ldr r0, _0805E660 @ =gEntCount movs r1, #0 diff --git a/asm/code_0805EC04.s b/asm/code_0805EC04.s index 45cad29a..6c8dc59f 100644 --- a/asm/code_0805EC04.s +++ b/asm/code_0805EC04.s @@ -751,7 +751,7 @@ _0805F2D0: bne _0805F2F0 adds r0, r5, #0 movs r1, #0xc - bl MemClear32 + bl MemClear ldrb r0, [r4] movs r1, #1 orrs r0, r1 @@ -781,7 +781,7 @@ _0805F308: cmp r0, r2 bne _0805F318 movs r1, #0xc - bl MemClear32 + bl MemClear b _0805F320 .align 2, 0 _0805F314: .4byte gUnk_02036540 @@ -944,7 +944,7 @@ sub_0805F440: @ 0x0805F440 adds r4, r0, #0 adds r5, r1, #0 movs r1, #0x30 - bl MemClear32 + bl MemClear ldr r0, _0805F45C @ =0x0000FFFF cmp r5, r0 bls _0805F460 @@ -1122,7 +1122,7 @@ _0805F596: _0805F59E: ldr r0, _0805F5C8 @ =gUnk_02034330 movs r1, #0x18 - bl MemClear32 + bl MemClear _0805F5A6: mov r0, sb mov r1, sp diff --git a/asm/code_0806EC20.s b/asm/code_0806EC20.s index 293d4e87..ff7f71a1 100644 --- a/asm/code_0806EC20.s +++ b/asm/code_0806EC20.s @@ -27,7 +27,7 @@ sub_0806EC38: @ 0x0806EC38 movs r0, #7 movs r1, #0x58 movs r2, #7 - bl FindEntityInListBySubtype + bl FindEntityByID cmp r0, #0 beq _0806EC4C bl DeleteEntity diff --git a/asm/code_0806ED78.s b/asm/code_0806ED78.s index 264756c7..d6735892 100644 --- a/asm/code_0806ED78.s +++ b/asm/code_0806ED78.s @@ -842,7 +842,7 @@ sub_0806F364: @ 0x0806F364 adds r1, r2, r3 adds r0, r0, r1 movs r1, #0x10 - bl MemClear32 + bl MemClear pop {pc} .align 2, 0 _0806F384: .4byte gArea @@ -1193,13 +1193,13 @@ sub_0806F5BC: @ 0x0806F5BC lsls r5, r1, #0x10 asrs r5, r5, #0x10 adds r1, r5, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r6, #0x80 lsls r6, r6, #1 adds r1, r6, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r7, #0x2c] @@ -1211,11 +1211,11 @@ sub_0806F5BC: @ 0x0806F5BC movs r1, #0 ldrsh r0, [r4, r1] adds r1, r5, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r6, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r7, #0x30] @@ -1248,13 +1248,13 @@ sub_0806F62C: @ 0x0806F62C lsls r5, r5, #0x10 asrs r5, r5, #0x10 adds r1, r5, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r1, #0x80 lsls r1, r1, #1 mov r8, r1 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r6, #0x2c] @@ -1266,11 +1266,11 @@ sub_0806F62C: @ 0x0806F62C movs r1, #0 ldrsh r0, [r4, r1] adds r1, r5, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 mov r1, r8 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r6, #0x30] @@ -1300,13 +1300,13 @@ sub_0806F69C: @ 0x0806F69C ldrsh r0, [r0, r1] movs r2, #0x24 ldrsh r1, [r6, r2] - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r4, #0x80 lsls r4, r4, #1 adds r1, r4, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r6, #0x2c] @@ -1320,11 +1320,11 @@ sub_0806F69C: @ 0x0806F69C ldrsh r0, [r0, r1] movs r2, #0x24 ldrsh r1, [r6, r2] - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r4, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r6, #0x30] diff --git a/asm/code_0806FA6C.s b/asm/code_0806FA6C.s index 81ff4789..f006651f 100644 --- a/asm/code_0806FA6C.s +++ b/asm/code_0806FA6C.s @@ -139,13 +139,13 @@ UnloadHitbox: @ 0x0806FBEC push {r4, lr} adds r4, r0, #0 ldr r0, [r4, #0x48] - bl sub_0801DA0C + bl zFree movs r0, #0 str r0, [r4, #0x48] pop {r4, pc} - thumb_func_start sub_0806FBFC -sub_0806FBFC: @ 0x0806FBFC + thumb_func_start CheckPlayerProximity +CheckPlayerProximity: @ 0x0806FBFC push {r4, r5, r6, lr} adds r5, r3, #0 ldr r4, _0806FC20 @ =gPlayerEntity @@ -385,7 +385,7 @@ sub_0806FD8C: @ 0x0806FD8C ldr r0, _0806FD9C @ =gUnk_020000C0 movs r1, #0xc0 lsls r1, r1, #4 - bl MemClear32 + bl MemClear pop {pc} .align 2, 0 _0806FD9C: .4byte gUnk_020000C0 @@ -534,7 +534,7 @@ _0806FE9E: bls _0806FE9E adds r0, r6, #0 movs r1, #0x40 - bl MemClear32 + bl MemClear _0806FEB4: pop {r4, r5, r6, pc} .align 2, 0 @@ -1454,7 +1454,7 @@ sub_0807059C: @ 0x0807059C push {lr} ldr r0, _080705A8 @ =gUnk_02034490 movs r1, #0x18 - bl MemClear32 + bl MemClear pop {pc} .align 2, 0 _080705A8: .4byte gUnk_02034490 diff --git a/asm/code_08070698.s b/asm/code_08070698.s index 10b20c3e..69452e1c 100644 --- a/asm/code_08070698.s +++ b/asm/code_08070698.s @@ -6,1322 +6,9 @@ .text - thumb_func_start sub_080714A8 -sub_080714A8: @ 0x080714A8 - push {r4, lr} - adds r4, r0, #0 - ldr r0, _08071524 @ =gArea - ldrb r0, [r0, #0x17] - cmp r0, #5 - bgt _080714BE - cmp r0, #4 - blt _080714BE - ldr r0, _08071528 @ =gPlayerEntity - bl sub_0806F948 -_080714BE: - ldr r3, _0807152C @ =gPlayerState - ldrb r1, [r3, #0xd] - movs r0, #0x84 - ands r0, r1 - cmp r0, #0 - bne _0807153E - ldrb r0, [r4, #0x15] - cmp r0, r1 - beq _080714D4 - movs r0, #8 - strb r0, [r4, #0xe] -_080714D4: - ldrb r0, [r4, #0xe] - subs r0, #1 - strb r0, [r4, #0xe] - lsls r0, r0, #0x18 - lsrs r0, r0, #0x18 - cmp r0, #0xff - bne _08071538 - ldrb r0, [r3, #0xd] - strb r0, [r4, #0x15] - lsls r0, r0, #0x18 - lsrs r0, r0, #0x1a - strb r0, [r4, #0x14] - movs r0, #0x80 - lsls r0, r0, #0xa - str r0, [r4, #0x20] - movs r1, #0 - movs r0, #0x80 - lsls r0, r0, #1 - strh r0, [r4, #0x24] - movs r0, #9 - strb r0, [r4, #0xc] - movs r0, #7 - strb r0, [r4, #0xd] - strb r1, [r4, #0xf] - ldr r1, [r3, #0x30] - movs r0, #8 - ands r0, r1 - ldr r4, _08071530 @ =0x0000080C - adds r2, r4, #0 - cmp r0, #0 - beq _08071516 - ldr r0, _08071534 @ =0x0000041C - adds r2, r0, #0 -_08071516: - strh r2, [r3, #8] - movs r0, #0x21 - rsbs r0, r0, #0 - ands r1, r0 - str r1, [r3, #0x30] - b _0807156A - .align 2, 0 -_08071524: .4byte gArea -_08071528: .4byte gPlayerEntity -_0807152C: .4byte gPlayerState -_08071530: .4byte 0x0000080C -_08071534: .4byte 0x0000041C -_08071538: - ldrb r0, [r3, #0xd] - strb r0, [r4, #0x15] - b _08071542 -_0807153E: - movs r0, #8 - strb r0, [r4, #0xe] -_08071542: - ldr r0, _0807155C @ =gArea - ldrb r0, [r0, #0x17] - cmp r0, #4 - bne _08071560 - adds r0, r4, #0 - adds r0, #0x5a - ldrb r0, [r0] - cmp r0, #0 - bne _08071566 - adds r0, r4, #0 - bl UpdateAnimationSingleFrame - b _0807156A - .align 2, 0 -_0807155C: .4byte gArea -_08071560: - adds r0, r4, #0 - bl sub_08077698 -_08071566: - bl sub_08079938 -_0807156A: - pop {r4, pc} - - thumb_func_start sub_0807156C -sub_0807156C: @ 0x0807156C - push {lr} - ldr r2, _080715A0 @ =gRoomControls - movs r1, #0 - str r1, [r2, #0x30] - ldr r2, _080715A4 @ =gUnk_02034490 - movs r1, #1 - strb r1, [r2] - movs r1, #3 - strb r1, [r0, #0xd] - movs r1, #0x1e - strb r1, [r0, #0xf] - ldr r2, _080715A8 @ =gPlayerState - movs r1, #0xe7 - lsls r1, r1, #3 - strh r1, [r2, #8] - movs r1, #6 - movs r2, #1 - movs r3, #0 - bl CreateObjectWithParent - bl sub_08077B20 - bl sub_0805E544 - pop {pc} - .align 2, 0 -_080715A0: .4byte gRoomControls -_080715A4: .4byte gUnk_02034490 -_080715A8: .4byte gPlayerState - - thumb_func_start sub_080715AC -sub_080715AC: @ 0x080715AC - push {r4, lr} - adds r4, r0, #0 - ldrb r0, [r4, #0xf] - cmp r0, #0 - bne _080715CC - adds r0, r4, #0 - bl UpdateAnimationSingleFrame - ldr r0, _080715D0 @ =gPlayerState - ldr r0, [r0, #0x30] - movs r1, #0x80 - ands r0, r1 - cmp r0, #0 - beq _080715CC - movs r0, #4 - strb r0, [r4, #0xd] -_080715CC: - pop {r4, pc} - .align 2, 0 -_080715D0: .4byte gPlayerState - - thumb_func_start sub_080715D4 -sub_080715D4: @ 0x080715D4 - push {lr} - adds r3, r0, #0 - movs r2, #0 - movs r0, #5 - strb r0, [r3, #0xd] - movs r0, #0x29 - adds r0, r0, r3 - mov ip, r0 - ldrb r1, [r0] - movs r0, #0x39 - rsbs r0, r0, #0 - ands r0, r1 - mov r1, ip - strb r0, [r1] - strb r2, [r3, #0xf] - ldrb r0, [r3, #0x19] - movs r1, #3 - orrs r0, r1 - strb r0, [r3, #0x19] - adds r0, r3, #0 - adds r0, #0x80 - movs r2, #0x80 - lsls r2, r2, #1 - str r2, [r0] - adds r0, #4 - str r2, [r0] - adds r0, r3, #0 - adds r1, r2, #0 - movs r3, #0 - bl sub_0805EC9C - ldr r2, _08071628 @ =gPlayerState - ldr r0, _0807162C @ =0x000002C3 - strh r0, [r2, #8] - ldr r0, [r2, #0x30] - movs r1, #0x80 - orrs r0, r1 - str r0, [r2, #0x30] - ldr r0, _08071630 @ =0x0000016F - bl SoundReq - pop {pc} - .align 2, 0 -_08071628: .4byte gPlayerState -_0807162C: .4byte 0x000002C3 -_08071630: .4byte 0x0000016F - - thumb_func_start sub_08071634 -sub_08071634: @ 0x08071634 - push {r4, r5, r6, r7, lr} - mov r7, r8 - push {r7} - adds r5, r0, #0 - adds r0, #0x81 - ldrb r0, [r0] - cmp r0, #0 - beq _08071654 - adds r1, r5, #0 - adds r1, #0x80 - ldr r0, [r1] - adds r0, #0x80 - lsls r0, r0, #0x14 - lsrs r7, r0, #0x17 - adds r4, r1, #0 - b _0807166A -_08071654: - adds r4, r5, #0 - adds r4, #0x80 - ldrb r1, [r4] - lsrs r1, r1, #6 - movs r0, #3 - eors r1, r0 - adds r1, #1 - movs r0, #0x10 - bl __divsi3 - asrs r7, r0, #1 -_0807166A: - adds r0, r5, #0 - adds r0, #0x84 - ldr r3, [r0] - movs r1, #0x80 - lsls r1, r1, #1 - adds r2, r0, #0 - cmp r3, r1 - bls _08071684 - adds r0, r3, #0 - adds r0, #0x80 - lsls r0, r0, #0x14 - lsrs r3, r0, #0x17 - b _08071694 -_08071684: - cmp r3, r1 - bne _0807168C - movs r3, #0x10 - b _08071694 -_0807168C: - ldr r1, _080716B0 @ =gUnk_0811BABC - lsrs r0, r3, #5 - adds r0, r0, r1 - ldrb r3, [r0] -_08071694: - movs r0, #0x80 - lsls r0, r0, #9 - mov r8, r0 - adds r0, r5, #0 - adds r0, #0x5a - ldrb r0, [r0] - cmp r0, #2 - beq _080716EA - cmp r0, #2 - bgt _080716B4 - cmp r0, #1 - beq _080716BA - b _08071754 - .align 2, 0 -_080716B0: .4byte gUnk_0811BABC -_080716B4: - cmp r0, #3 - beq _0807171E - b _08071754 -_080716BA: - movs r1, #0x29 - adds r1, r1, r5 - mov ip, r1 - ldrb r1, [r1] - movs r0, #0x39 - rsbs r0, r0, #0 - ands r0, r1 - mov r1, ip - strb r0, [r1] - ldr r0, [r4] - cmp r0, #0x80 - bls _080716D6 - subs r0, r0, r7 - str r0, [r4] -_080716D6: - lsls r1, r3, #1 - ldr r0, [r2] - adds r0, r0, r1 - str r0, [r2] - mov r0, r8 - lsls r1, r0, #1 - ldr r0, [r5, #0x30] - adds r0, r0, r1 - str r0, [r5, #0x30] - b _08071754 -_080716EA: - ldr r0, [r4] - adds r0, r0, r7 - str r0, [r4] - ldr r1, [r2] - movs r6, #0x80 - lsls r6, r6, #1 - cmp r1, r6 - bls _08071710 - ldr r0, _0807170C @ =0x0000017F - cmp r1, r0 - bhi _08071702 - lsrs r3, r3, #1 -_08071702: - subs r0, r1, r3 - cmp r0, #0xff - bhi _08071716 - str r6, [r2] - b _08071718 - .align 2, 0 -_0807170C: .4byte 0x0000017F -_08071710: - cmp r1, #0x80 - bls _08071718 - subs r0, r1, r3 -_08071716: - str r0, [r2] -_08071718: - ldr r0, [r5, #0x34] - mov r1, r8 - b _08071750 -_0807171E: - ldr r0, [r4] - ldr r6, _08071740 @ =0x0000033F - cmp r0, r6 - bhi _0807172A - adds r0, r0, r7 - str r0, [r4] -_0807172A: - ldr r1, [r2] - cmp r1, r6 - bls _08071744 - movs r0, #8 - strb r0, [r5, #0xe] - movs r0, #0x1e - strb r0, [r5, #0xf] - movs r0, #6 - strb r0, [r5, #0xd] - b _0807174A - .align 2, 0 -_08071740: .4byte 0x0000033F -_08071744: - lsls r0, r3, #1 - adds r0, r1, r0 - str r0, [r2] -_0807174A: - mov r0, r8 - lsls r1, r0, #1 - ldr r0, [r5, #0x34] -_08071750: - subs r0, r0, r1 - str r0, [r5, #0x34] -_08071754: - ldr r1, [r4] - ldr r2, [r2] - adds r0, r5, #0 - movs r3, #0 - bl sub_0805EC9C - adds r0, r5, #0 - bl UpdateAnimationSingleFrame - pop {r3} - mov r8, r3 - pop {r4, r5, r6, r7, pc} - - thumb_func_start sub_0807176C -sub_0807176C: @ 0x0807176C - push {r4, lr} - adds r4, r0, #0 - ldrb r0, [r4, #0xe] - cmp r0, #0 - bne _080717C6 - movs r1, #0x80 - lsls r1, r1, #6 - adds r0, r4, #0 - bl sub_08003FC4 - cmp r0, #0 - bne _080717CA - ldrb r1, [r4, #0x18] - movs r0, #4 - rsbs r0, r0, #0 - ands r0, r1 - strb r0, [r4, #0x18] - ldr r1, _080717AC @ =gArea - ldrb r0, [r1, #0x17] - cmp r0, #3 - bne _080717B0 - ldrb r0, [r4, #0xf] - subs r0, #1 - strb r0, [r4, #0xf] - lsls r0, r0, #0x18 - cmp r0, #0 - bne _080717CA - adds r0, r4, #0 - bl sub_080717F8 - b _080717CA - .align 2, 0 -_080717AC: .4byte gArea -_080717B0: - cmp r0, #6 - bne _080717C0 - ldr r0, _080717BC @ =gUnk_0813AB58 - bl DoExitTransition - b _080717CA - .align 2, 0 -_080717BC: .4byte gUnk_0813AB58 -_080717C0: - movs r0, #1 - strb r0, [r1, #0x19] - b _080717CA -_080717C6: - subs r0, #1 - strb r0, [r4, #0xe] -_080717CA: - pop {r4, pc} - - thumb_func_start sub_080717CC -sub_080717CC: @ 0x080717CC - push {lr} - adds r1, r0, #0 - ldr r0, _080717E4 @ =gFadeControl - ldrb r0, [r0] - cmp r0, #0 - bne _080717F4 - ldrb r0, [r1, #0xe] - cmp r0, #0 - beq _080717E8 - subs r0, #1 - strb r0, [r1, #0xe] - b _080717F4 - .align 2, 0 -_080717E4: .4byte gFadeControl -_080717E8: - adds r0, r1, #0 - bl sub_080717F8 - movs r0, #0x10 - bl sub_080500F4 -_080717F4: - pop {pc} - .align 2, 0 - - thumb_func_start sub_080717F8 -sub_080717F8: @ 0x080717F8 - push {r4, lr} - ldr r2, _08071850 @ =gArea - ldrb r1, [r2, #0x16] - lsls r1, r1, #1 - strb r1, [r0, #0x14] - ldr r3, _08071854 @ =gUnk_0811BAC4 - ldrb r1, [r2, #0x16] - lsls r1, r1, #2 - adds r1, r1, r3 - ldrh r1, [r1] - ldrh r4, [r2, #0x12] - adds r1, r1, r4 - movs r4, #0 - strh r1, [r0, #0x2e] - ldrb r1, [r2, #0x16] - lsls r1, r1, #1 - adds r1, #1 - lsls r1, r1, #1 - adds r1, r1, r3 - ldrh r1, [r1] - ldrh r3, [r2, #0x14] - adds r1, r1, r3 - strh r1, [r0, #0x32] - movs r1, #0xb4 - strb r1, [r2, #0x1a] - ldr r1, _08071858 @ =gUnk_02034490 - strb r4, [r1] - movs r1, #9 - strb r1, [r0, #0xc] - strb r4, [r0, #0xd] - ldr r3, _0807185C @ =gPlayerState - ldr r1, [r3, #0x30] - movs r2, #0x21 - rsbs r2, r2, #0 - ands r1, r2 - movs r2, #0x80 - orrs r1, r2 - str r1, [r3, #0x30] - bl sub_0805EC60 - bl UnfreezeTime - pop {r4, pc} - .align 2, 0 -_08071850: .4byte gArea -_08071854: .4byte gUnk_0811BAC4 -_08071858: .4byte gUnk_02034490 -_0807185C: .4byte gPlayerState - - thumb_func_start sub_08071860 -sub_08071860: @ 0x08071860 - push {r4, lr} - adds r4, r0, #0 - bl sub_08078EFC - cmp r0, #0 - beq _08071876 - bl sub_08056360 - bl sub_08071A6C - b _08071896 -_08071876: - ldr r0, _08071898 @ =gPlayerState - adds r0, #0xa8 - movs r1, #0x13 - strb r1, [r0] - ldrb r1, [r4, #0x10] - movs r0, #0x7f - ands r0, r1 - strb r0, [r4, #0x10] - ldr r1, _0807189C @ =gUnk_0811BAD4 - ldrb r0, [r4, #0xd] - lsls r0, r0, #2 - adds r0, r0, r1 - ldr r1, [r0] - adds r0, r4, #0 - bl _call_via_r1 -_08071896: - pop {r4, pc} - .align 2, 0 -_08071898: .4byte gPlayerState -_0807189C: .4byte gUnk_0811BAD4 - - thumb_func_start sub_080718A0 -sub_080718A0: @ 0x080718A0 - push {r4, r5, lr} - adds r4, r0, #0 - bl ResetPlayer - ldr r0, _080718EC @ =gUnk_03000B80 - adds r0, #0x63 - movs r1, #0 - strb r1, [r0] - adds r0, r4, #0 - adds r0, #0x3d - strb r1, [r0] - ldr r1, _080718F0 @ =gUnk_03003DC0 - movs r2, #6 - movs r0, #6 - strb r0, [r1] - ldrb r1, [r4, #0x11] - subs r0, #0x16 - ands r0, r1 - orrs r0, r2 - strb r0, [r4, #0x11] - ldr r5, _080718F4 @ =gPlayerState - ldr r0, [r5, #0x30] - movs r1, #0x80 - ands r0, r1 - cmp r0, #0 - beq _080718F8 - movs r0, #2 - strb r0, [r4, #0xd] - adds r2, r4, #0 - adds r2, #0x29 - ldrb r1, [r2] - subs r0, #0x3b - ands r0, r1 - strb r0, [r2] - bl sub_08052BB8 - b _08071938 - .align 2, 0 -_080718EC: .4byte gUnk_03000B80 -_080718F0: .4byte gUnk_03003DC0 -_080718F4: .4byte gPlayerState -_080718F8: - ldrb r0, [r5, #2] - cmp r0, #0 - bne _08071928 - ldrb r0, [r4, #0xd] - adds r0, #1 - strb r0, [r4, #0xd] - ldrb r0, [r4, #0x14] - cmp r0, #2 - bne _08071914 - ldr r0, _08071910 @ =0x000003CA - b _08071916 - .align 2, 0 -_08071910: .4byte 0x000003CA -_08071914: - ldr r0, _08071924 @ =0x000003C6 -_08071916: - strh r0, [r5, #8] - ldrb r1, [r4, #0x18] - movs r0, #0x41 - rsbs r0, r0, #0 - ands r0, r1 - strb r0, [r4, #0x18] - b _08071938 - .align 2, 0 -_08071924: .4byte 0x000003C6 -_08071928: - movs r1, #0x80 - lsls r1, r1, #6 - adds r0, r4, #0 - bl sub_08003FC4 - cmp r0, #0 - bne _08071938 - strb r0, [r5, #2] -_08071938: - pop {r4, r5, pc} - .align 2, 0 - - thumb_func_start sub_0807193C -sub_0807193C: @ 0x0807193C - push {r4, lr} - adds r4, r0, #0 - bl UpdateAnimationSingleFrame - adds r0, r4, #0 - adds r0, #0x5a - ldrb r1, [r0] - movs r0, #0x80 - ands r0, r1 - cmp r0, #0 - beq _08071986 - ldrb r0, [r4, #0xd] - adds r0, #1 - strb r0, [r4, #0xd] - adds r0, r4, #0 - movs r1, #6 - movs r2, #0 - movs r3, #0 - bl CreateObjectWithParent - str r0, [r4, #0x54] - cmp r0, #0 - beq _08071986 - ldrb r0, [r4, #0x14] - cmp r0, #2 - bne _0807197C - ldr r1, _08071978 @ =gPlayerState - movs r0, #0xf3 - lsls r0, r0, #2 - b _08071980 - .align 2, 0 -_08071978: .4byte gPlayerState -_0807197C: - ldr r1, _08071988 @ =gPlayerState - ldr r0, _0807198C @ =0x000003C7 -_08071980: - strh r0, [r1, #8] - bl sub_08052BB8 -_08071986: - pop {r4, pc} - .align 2, 0 -_08071988: .4byte gPlayerState -_0807198C: .4byte 0x000003C7 - - thumb_func_start sub_08071990 -sub_08071990: @ 0x08071990 - push {r4, lr} - adds r2, r0, #0 - ldr r0, _080719C0 @ =gTextBox - ldrb r1, [r0] - movs r0, #0x7f - ands r0, r1 - cmp r0, #0 - bne _080719E2 - ldrb r0, [r2, #0xd] - adds r0, #1 - strb r0, [r2, #0xd] - ldr r3, _080719C4 @ =gPlayerState - ldr r0, [r3, #0x30] - movs r1, #0x80 - ands r0, r1 - cmp r0, #0 - bne _080719D8 - ldrb r0, [r2, #0x14] - cmp r0, #2 - bne _080719CC - ldr r0, _080719C8 @ =0x000003CD - strh r0, [r3, #8] - b _08071A4A - .align 2, 0 -_080719C0: .4byte gTextBox -_080719C4: .4byte gPlayerState -_080719C8: .4byte 0x000003CD -_080719CC: - ldr r0, _080719D4 @ =0x000003C9 - strh r0, [r3, #8] - b _08071A4A - .align 2, 0 -_080719D4: .4byte 0x000003C9 -_080719D8: - bl sub_08071A6C - bl sub_08079258 - b _08071A4A -_080719E2: - ldr r4, _08071A20 @ =gPlayerState - ldr r0, [r4, #0x30] - movs r1, #0x80 - ands r0, r1 - cmp r0, #0 - bne _08071A4A - ldrb r0, [r2, #0x14] - movs r3, #0 - cmp r0, #2 - bne _080719F8 - movs r3, #4 -_080719F8: - ldr r0, [r2, #0x54] - ldrb r0, [r0, #0xe] - cmp r0, #0 - beq _08071A24 - adds r0, r3, #0 - adds r0, #0xc8 - adds r1, r2, #0 - adds r1, #0x58 - lsls r0, r0, #0x18 - lsrs r0, r0, #0x18 - ldrb r1, [r1] - cmp r0, r1 - beq _08071A44 - movs r1, #0xf2 - lsls r1, r1, #2 - adds r0, r1, #0 - adds r0, r3, r0 - strh r0, [r4, #8] - b _08071A4A - .align 2, 0 -_08071A20: .4byte gPlayerState -_08071A24: - adds r0, r3, #0 - adds r0, #0xc7 - adds r1, r2, #0 - adds r1, #0x58 - lsls r0, r0, #0x18 - lsrs r0, r0, #0x18 - ldrb r1, [r1] - cmp r0, r1 - beq _08071A44 - ldr r1, _08071A40 @ =0x000003C7 - adds r0, r3, r1 - strh r0, [r4, #8] - b _08071A4A - .align 2, 0 -_08071A40: .4byte 0x000003C7 -_08071A44: - adds r0, r2, #0 - bl UpdateAnimationSingleFrame -_08071A4A: - pop {r4, pc} - - thumb_func_start sub_08071A4C -sub_08071A4C: @ 0x08071A4C - push {r4, lr} - adds r4, r0, #0 - bl UpdateAnimationSingleFrame - adds r4, #0x5a - ldrb r1, [r4] - movs r0, #0x80 - ands r0, r1 - cmp r0, #0 - beq _08071A68 - bl sub_08071A6C - bl sub_0807921C -_08071A68: - pop {r4, pc} - .align 2, 0 - - thumb_func_start sub_08071A6C -sub_08071A6C: @ 0x08071A6C - ldr r1, _08071A84 @ =gUnk_03003DC0 - movs r0, #0 - strb r0, [r1] - ldr r3, _08071A88 @ =gPlayerEntity - ldrb r1, [r3, #0x11] - lsrs r2, r1, #4 - subs r0, #0x10 - ands r0, r1 - orrs r0, r2 - strb r0, [r3, #0x11] - bx lr - .align 2, 0 -_08071A84: .4byte gUnk_03003DC0 -_08071A88: .4byte gPlayerEntity - - thumb_func_start sub_08071A8C -sub_08071A8C: @ 0x08071A8C - push {lr} - ldr r1, _08071AA8 @ =gPlayerState - adds r1, #0xa8 - movs r2, #0x19 - strb r2, [r1] - ldr r2, _08071AAC @ =gUnk_0811BAE4 - ldrb r1, [r0, #0xd] - lsls r1, r1, #2 - adds r1, r1, r2 - ldr r1, [r1] - bl _call_via_r1 - pop {pc} - .align 2, 0 -_08071AA8: .4byte gPlayerState -_08071AAC: .4byte gUnk_0811BAE4 - - thumb_func_start sub_08071AB0 -sub_08071AB0: @ 0x08071AB0 - push {r4, lr} - adds r3, r0, #0 - ldrb r0, [r3, #0xd] - adds r0, #1 - strb r0, [r3, #0xd] - ldr r1, _08071AD8 @ =gPlayerState - ldr r2, [r1, #0x30] - movs r0, #1 - orrs r2, r0 - str r2, [r1, #0x30] - ldrb r4, [r3, #0xa] - cmp r4, #1 - bne _08071ADC - movs r1, #0 - movs r0, #0 - strh r0, [r3, #0x24] - strb r1, [r3, #0xe] - strb r4, [r3, #0xf] - b _08071AE8 - .align 2, 0 -_08071AD8: .4byte gPlayerState -_08071ADC: - movs r0, #0x80 - ands r2, r0 - cmp r2, #0 - beq _08071AE6 - movs r0, #0x40 -_08071AE6: - strh r0, [r3, #0x24] -_08071AE8: - adds r0, r3, #0 - bl sub_08071AF0 - pop {r4, pc} - - thumb_func_start sub_08071AF0 -sub_08071AF0: @ 0x08071AF0 - push {r4, r5, lr} - adds r4, r0, #0 - ldr r5, _08071B34 @ =gPlayerState - adds r0, r5, #0 - adds r0, #0x80 - movs r1, #0 - strh r1, [r0] - adds r0, r4, #0 - bl UpdateAnimationSingleFrame - ldrb r0, [r4, #0xa] - cmp r0, #1 - bne _08071B44 - ldrb r0, [r4, #0xf] - subs r0, #1 - strb r0, [r4, #0xf] - lsls r0, r0, #0x18 - cmp r0, #0 - bne _08071B58 - ldr r0, _08071B38 @ =gUnk_0811BAF0 - ldrb r1, [r4, #0xe] - lsls r1, r1, #2 - adds r1, r1, r0 - ldrb r2, [r1] - adds r0, r2, #0 - cmp r0, #0xff - beq _08071B3C - strb r2, [r4, #0xf] - ldrh r0, [r1, #2] - strh r0, [r4, #0x24] - ldrb r0, [r4, #0xe] - adds r0, #1 - strb r0, [r4, #0xe] - b _08071B58 - .align 2, 0 -_08071B34: .4byte gPlayerState -_08071B38: .4byte gUnk_0811BAF0 -_08071B3C: - ldrb r0, [r4, #0xd] - adds r0, #1 - strb r0, [r4, #0xd] - b _08071B5C -_08071B44: - ldrb r0, [r5, #6] - subs r0, #1 - strb r0, [r5, #6] - movs r1, #0x7f - ands r0, r1 - cmp r0, #0 - bne _08071B58 - ldrb r0, [r4, #0xd] - adds r0, #1 - strb r0, [r4, #0xd] -_08071B58: - bl sub_08079E08 -_08071B5C: - pop {r4, r5, pc} - .align 2, 0 - - thumb_func_start sub_08071B60 -sub_08071B60: @ 0x08071B60 - push {r4, r5, lr} - adds r4, r0, #0 - ldr r5, _08071BAC @ =gPlayerState - movs r2, #0 - movs r0, #2 - strb r0, [r5, #6] - ldr r0, [r5, #0x30] - movs r1, #2 - rsbs r1, r1, #0 - ands r0, r1 - str r0, [r5, #0x30] - strb r2, [r4, #0xa] - adds r0, r4, #0 - adds r0, #0x42 - strb r2, [r0] - adds r0, r4, #0 - bl sub_080728AC - movs r0, #6 - strb r0, [r4, #0xf] - ldr r0, [r5, #0x30] - movs r1, #0x80 - ands r0, r1 - cmp r0, #0 - bne _08071BA8 - movs r0, #0x82 - lsls r0, r0, #1 - strh r0, [r5, #8] - movs r0, #3 - strh r0, [r4, #0x12] - ldrb r1, [r4, #0x14] - lsrs r1, r1, #1 - adds r1, #0x3c - adds r0, r4, #0 - bl InitAnimationForceUpdate -_08071BA8: - pop {r4, r5, pc} - .align 2, 0 -_08071BAC: .4byte gPlayerState - - thumb_func_start sub_08071BB0 -sub_08071BB0: @ 0x08071BB0 - push {lr} - ldrb r2, [r0, #0x10] - movs r1, #0x7f - ands r1, r2 - strb r1, [r0, #0x10] - ldr r2, _08071BD4 @ =gUnk_0811BB2C - ldrb r1, [r0, #0xd] - lsls r1, r1, #2 - adds r1, r1, r2 - ldr r1, [r1] - bl _call_via_r1 - ldr r0, _08071BD8 @ =gPlayerState - adds r0, #0xa8 - movs r1, #0x12 - strb r1, [r0] - pop {pc} - .align 2, 0 -_08071BD4: .4byte gUnk_0811BB2C -_08071BD8: .4byte gPlayerState - - thumb_func_start sub_08071BDC -sub_08071BDC: @ 0x08071BDC - push {r4, r5, lr} - adds r4, r0, #0 - ldr r5, _08071C10 @ =gPlayerState - ldr r0, [r5, #0x30] - movs r1, #0x88 - lsls r1, r1, #1 - ands r0, r1 - cmp r0, #0 - bne _08071C9C - movs r1, #0x80 - lsls r1, r1, #6 - adds r0, r4, #0 - bl sub_08003FC4 - cmp r0, #0 - beq _08071C1C - ldr r0, [r5, #0x30] - movs r1, #8 - ands r0, r1 - cmp r0, #0 - beq _08071C14 - movs r0, #0x84 - lsls r0, r0, #3 - strh r0, [r5, #8] - b _08071C9C - .align 2, 0 -_08071C10: .4byte gPlayerState -_08071C14: - movs r0, #0x81 - lsls r0, r0, #4 - strh r0, [r5, #8] - b _08071C9C -_08071C1C: - strb r0, [r5, #0xc] - ldr r1, [r5, #0x30] - movs r0, #0x80 - ands r0, r1 - cmp r0, #0 - beq _08071C4C - ldrb r0, [r5, #0x12] - subs r0, #8 - lsls r0, r0, #0x18 - lsrs r0, r0, #0x18 - cmp r0, #2 - bhi _08071C42 - adds r0, r4, #0 - bl sub_0807A298 - bl sub_08079458 - movs r0, #0xa - strb r0, [r4, #0xc] -_08071C42: - ldr r0, _08071C48 @ =0x00000C1A - b _08071C5A - .align 2, 0 -_08071C48: .4byte 0x00000C1A -_08071C4C: - movs r0, #8 - ands r1, r0 - movs r0, #0xde - lsls r0, r0, #1 - cmp r1, #0 - beq _08071C5A - ldr r0, _08071CA0 @ =0x00000459 -_08071C5A: - ldr r2, _08071CA4 @ =gPlayerState - movs r3, #0 - strh r0, [r2, #8] - ldr r0, [r2, #0x30] - ldr r1, _08071CA8 @ =0xFEDBF2FE - ands r0, r1 - str r0, [r2, #0x30] - movs r0, #1 - strb r0, [r4, #0xd] - movs r0, #4 - strb r0, [r4, #0x14] - adds r5, r4, #0 - adds r5, #0x29 - ldrb r1, [r5] - subs r0, #0x3d - ands r0, r1 - movs r1, #8 - orrs r0, r1 - strb r0, [r5] - ldrb r0, [r4, #0x18] - movs r1, #3 - orrs r0, r1 - strb r0, [r4, #0x18] - strb r3, [r2, #2] - strb r3, [r2, #6] - adds r0, r4, #0 - bl sub_0800451C - bl ResetPlayer - movs r0, #0x87 - bl SoundReq -_08071C9C: - pop {r4, r5, pc} - .align 2, 0 -_08071CA0: .4byte 0x00000459 -_08071CA4: .4byte gPlayerState -_08071CA8: .4byte 0xFEDBF2FE - - thumb_func_start sub_08071CAC -sub_08071CAC: @ 0x08071CAC - push {r4, lr} - adds r4, r0, #0 - bl UpdateAnimationSingleFrame - adds r0, r4, #0 - adds r0, #0x5a - ldrb r1, [r0] - movs r3, #0x80 - adds r0, r3, #0 - ands r0, r1 - cmp r0, #0 - beq _08071CFE - ldr r1, _08071CE0 @ =gPlayerState - ldr r2, [r1, #0x30] - adds r0, r2, #0 - ands r0, r3 - cmp r0, #0 - bne _08071CEC - movs r0, #8 - ands r2, r0 - ldr r0, _08071CE4 @ =0x000002BD - cmp r2, #0 - beq _08071CEE - ldr r0, _08071CE8 @ =0x0000045A - b _08071CEE - .align 2, 0 -_08071CE0: .4byte gPlayerState -_08071CE4: .4byte 0x000002BD -_08071CE8: .4byte 0x0000045A -_08071CEC: - ldr r0, _08071D00 @ =0x00000C1B -_08071CEE: - strh r0, [r1, #8] - movs r0, #2 - strb r0, [r4, #0xd] - movs r0, #0xf0 - strb r0, [r4, #0xe] - movs r0, #0x7b - bl SoundReq -_08071CFE: - pop {r4, pc} - .align 2, 0 -_08071D00: .4byte 0x00000C1B - - thumb_func_start sub_08071D04 -sub_08071D04: @ 0x08071D04 - push {r4, r5, lr} - adds r5, r0, #0 - bl UpdateAnimationSingleFrame - adds r0, r5, #0 - adds r0, #0x5a - ldrb r0, [r0] - cmp r0, #0 - beq _08071D7A - movs r4, #0 - movs r0, #0x28 - bl sub_080544DC - adds r1, r0, #0 - cmp r1, #0 - beq _08071D3A - ldr r0, _08071D6C @ =gSave - adds r0, r0, r1 - adds r0, #0xb5 - movs r1, #0x20 - strb r1, [r0] - movs r0, #0x40 - movs r1, #0x60 - movs r2, #2 - bl CreateObject - movs r4, #0x20 -_08071D3A: - cmp r4, #0 - beq _08071D74 - adds r0, r4, #0 - bl ModHealth - movs r2, #0 - movs r0, #3 - strb r0, [r5, #0xd] - ldr r1, _08071D70 @ =gPlayerState - adds r0, r1, #0 - adds r0, #0x3c - strb r2, [r0] - movs r0, #0xff - strb r0, [r5, #0x15] - movs r3, #0 - strh r2, [r5, #0x24] - movs r0, #0xc0 - lsls r0, r0, #9 - str r0, [r5, #0x20] - movs r0, #1 - strb r0, [r1, #2] - adds r1, #0x26 - strb r3, [r1] - b _08071D7A - .align 2, 0 -_08071D6C: .4byte gSave -_08071D70: .4byte gPlayerState -_08071D74: - ldr r1, _08071D7C @ =gScreenTransition - movs r0, #1 - strb r0, [r1, #5] -_08071D7A: - pop {r4, r5, pc} - .align 2, 0 -_08071D7C: .4byte gScreenTransition - - thumb_func_start sub_08071D80 -sub_08071D80: @ 0x08071D80 - push {r4, r5, lr} - adds r4, r0, #0 - bl UpdateAnimationSingleFrame - ldr r5, _08071DB4 @ =gPlayerState - movs r0, #1 - strb r0, [r5, #0x14] - adds r0, r4, #0 - bl sub_08073904 - ldrb r1, [r5, #2] - movs r0, #7 - ands r0, r1 - cmp r0, #3 - bne _08071DB2 - movs r0, #0 - strb r0, [r5, #2] - adds r1, r4, #0 - adds r1, #0x3d - movs r0, #0xe2 - strb r0, [r1] - bl UnfreezeTime - bl sub_080791D0 -_08071DB2: - pop {r4, r5, pc} - .align 2, 0 -_08071DB4: .4byte gPlayerState - - thumb_func_start sub_08071DB8 -sub_08071DB8: @ 0x08071DB8 - push {lr} - ldr r2, _08071DCC @ =gUnk_0811BB3C - ldrb r1, [r0, #0xd] - lsls r1, r1, #2 - adds r1, r1, r2 - ldr r1, [r1] - bl _call_via_r1 - pop {pc} - .align 2, 0 -_08071DCC: .4byte gUnk_0811BB3C - - thumb_func_start sub_08071DD0 -sub_08071DD0: @ 0x08071DD0 - push {lr} - adds r2, r0, #0 - ldr r1, _08071DF4 @ =gPlayerState - adds r0, r1, #0 - adds r0, #0x38 - ldrb r0, [r0] - strb r0, [r2, #0xe] - adds r3, r1, #0 - adds r3, #0x39 - ldrb r0, [r3] - cmp r0, #0 - beq _08071DF8 - movs r0, #0 - strb r0, [r3] - movs r0, #2 - strb r0, [r2, #0xd] - adds r0, #0xfe - b _08071E00 - .align 2, 0 -_08071DF4: .4byte gPlayerState -_08071DF8: - movs r0, #1 - strb r0, [r2, #0xd] - movs r0, #0x8a - lsls r0, r0, #1 -_08071E00: - strh r0, [r1, #8] - pop {pc} - - thumb_func_start sub_08071E04 -sub_08071E04: @ 0x08071E04 - push {r4, r5, lr} - adds r4, r0, #0 - ldr r0, [r4, #0x34] - cmp r0, #0 - beq _08071E38 - ldr r5, _08071E34 @ =gPlayerState - ldrb r0, [r5, #0x14] - cmp r0, #0 - bne _08071E38 - bl sub_0807A1B8 - ldrb r0, [r5, #0x12] - cmp r0, #1 - bne _08071E38 - movs r0, #7 - strb r0, [r5, #0x11] - ldr r0, [r5, #0x30] - movs r1, #0x80 - lsls r1, r1, #2 - orrs r0, r1 - str r0, [r5, #0x30] - bl sub_080791BC - b _08071E72 - .align 2, 0 -_08071E34: .4byte gPlayerState -_08071E38: - adds r0, r4, #0 - bl UpdateAnimationSingleFrame - bl sub_08079B24 - cmp r0, #0 - bne _08071E4E - adds r0, r4, #0 - bl sub_08079708 - b _08071E72 -_08071E4E: - bl sub_080792D8 - bl sub_0807953C - cmp r0, #0 - beq _08071E60 - ldrb r0, [r4, #0xe] - subs r0, #2 - b _08071E64 -_08071E60: - ldrb r0, [r4, #0xe] - subs r0, #1 -_08071E64: - strb r0, [r4, #0xe] - movs r0, #0xe - ldrsb r0, [r4, r0] - cmp r0, #0 - bgt _08071E72 - bl sub_080791BC -_08071E72: - pop {r4, r5, pc} - - thumb_func_start sub_08071E74 -sub_08071E74: @ 0x08071E74 - push {r4, lr} - adds r4, r0, #0 - movs r1, #0x80 - lsls r1, r1, #6 - bl sub_08003FC4 - bl sub_08079E08 - ldrb r0, [r4, #0xe] - adds r1, r0, #0 - adds r1, #0xff - strb r1, [r4, #0xe] - lsls r0, r0, #0x18 - cmp r0, #0 - bne _08071E96 - bl sub_080791BC -_08071E96: - pop {r4, pc} - thumb_func_start sub_08071E98 -sub_08071E98: @ 0x08071E98 + thumb_func_start PlayerEmptyBottle +PlayerEmptyBottle: @ 0x08071E98 push {lr} ldr r2, _08071EAC @ =gUnk_0811BB48 ldrb r1, [r0, #0xd] @@ -1403,8 +90,8 @@ _08071F32: .align 2, 0 _08071F34: .4byte gPlayerState - thumb_func_start sub_08071F38 -sub_08071F38: @ 0x08071F38 + thumb_func_start PlayerFrozen +PlayerFrozen: @ 0x08071F38 push {lr} ldr r2, _08071F4C @ =gUnk_0811BB50 ldrb r1, [r0, #0xd] @@ -1754,8 +441,8 @@ _080721DE: .align 2, 0 _080721E0: .4byte gPlayerState - thumb_func_start sub_080721E4 -sub_080721E4: @ 0x080721E4 + thumb_func_start PlayerPull +PlayerPull: @ 0x080721E4 push {lr} ldr r1, _08072208 @ =gPlayerState adds r1, #0xa8 @@ -1865,8 +552,8 @@ _080722B0: .align 2, 0 _080722B4: .4byte 0x00000944 - thumb_func_start sub_080722B8 -sub_080722B8: @ 0x080722B8 + thumb_func_start PlayerLava +PlayerLava: @ 0x080722B8 push {lr} ldr r1, _080722D4 @ =gPlayerState adds r1, #0xa8 @@ -2026,7 +713,7 @@ sub_080723D0: @ 0x080723D0 strb r0, [r1] subs r0, #0x16 bl ModHealth - bl sub_08079458 + bl RespawnPlayer _0807240A: pop {r4, pc} @@ -2059,7 +746,7 @@ sub_0807240C: @ 0x0807240C movs r0, #2 rsbs r0, r0, #0 bl ModHealth - bl sub_08079458 + bl RespawnPlayer _08072448: pop {pc} .align 2, 0 @@ -2125,8 +812,8 @@ _080724AE: _080724C2: pop {pc} - thumb_func_start sub_080724C4 -sub_080724C4: @ 0x080724C4 + thumb_func_start PlayerRoomTransition +PlayerRoomTransition: @ 0x080724C4 push {lr} ldr r2, _080724D8 @ =gUnk_0811BB88 ldrb r1, [r0, #0xd] @@ -2303,8 +990,8 @@ _08072620: _08072624: .4byte gPlayerState _08072628: .4byte gPlayerEntity - thumb_func_start sub_0807262C -sub_0807262C: @ 0x0807262C + thumb_func_start PlayerRoll +PlayerRoll: @ 0x0807262C push {lr} ldr r1, _08072648 @ =gPlayerState adds r1, #0xa8 @@ -2714,8 +1401,8 @@ _08072940: .4byte gPlayerState _08072944: .4byte gPlayerEntity _08072948: .4byte gRoomControls - thumb_func_start sub_0807294C -sub_0807294C: @ 0x0807294C + thumb_func_start PlayerInHole +PlayerInHole: @ 0x0807294C push {lr} ldr r1, _08072968 @ =gPlayerState adds r1, #0xa8 @@ -3776,8 +2463,8 @@ _080731A4: pop {r4, pc} .align 2, 0 - thumb_func_start sub_080731A8 -sub_080731A8: @ 0x080731A8 + thumb_func_start PlayerUseEntrance +PlayerUseEntrance: @ 0x080731A8 push {r4, lr} adds r4, r0, #0 ldr r0, _080731D0 @ =gPlayerState diff --git a/asm/code_080732D0.s b/asm/code_080732D0.s index 45299238..f2e7f6fa 100644 --- a/asm/code_080732D0.s +++ b/asm/code_080732D0.s @@ -175,8 +175,8 @@ _08073418: .align 2, 0 _0807341C: .4byte gRoomControls - thumb_func_start sub_08073420 -sub_08073420: @ 0x08073420 + thumb_func_start PlayerParachute +PlayerParachute: @ 0x08073420 push {r4, lr} adds r4, r0, #0 bl sub_08078EFC @@ -1280,8 +1280,8 @@ _08073C58: _08073C66: pop {pc} - thumb_func_start sub_08073C68 -sub_08073C68: @ 0x08073C68 + thumb_func_start PlayerMinish +PlayerMinish: @ 0x08073C68 push {lr} ldr r2, _08073C7C @ =gUnk_0811BC60 ldrb r1, [r0, #0xd] @@ -2760,7 +2760,7 @@ _0807476C: strb r0, [r1] subs r0, #0x24 bl ModHealth - bl sub_08079458 + bl RespawnPlayer _08074792: pop {r4, pc} .align 2, 0 @@ -4198,7 +4198,7 @@ sub_080751E8: @ 0x080751E8 ldr r4, _08075230 @ =gPlayerScriptExecutionContext adds r0, r4, #0 movs r1, #0x24 - bl MemClear32 + bl MemClear str r6, [r4] ldr r0, _08075234 @ =gPlayerEntity adds r0, #0x84 @@ -4592,7 +4592,7 @@ _080754F2: movs r0, #8 movs r1, #0xf movs r2, #2 - bl FindEntityInListBySubtype + bl FindEntityByID cmp r0, #0 bne _08075538 adds r0, r4, #0 @@ -6017,7 +6017,7 @@ sub_08075FF8: @ 0x08075FF8 movs r0, #8 movs r1, #2 movs r2, #2 - bl FindEntityInListBySubtype + bl FindEntityByID b _08076026 .align 2, 0 _08076018: .4byte gPlayerState @@ -6025,7 +6025,7 @@ _0807601C: adds r5, #1 adds r0, r4, #0 movs r1, #2 - bl FindNextEntityOfSameSubtype + bl FindNextDuplicateID _08076026: adds r4, r0, #0 cmp r4, #0 diff --git a/asm/code_08077B98.s b/asm/code_08077B98.s index b6c78cf4..75eb2a4b 100644 --- a/asm/code_08077B98.s +++ b/asm/code_08077B98.s @@ -642,7 +642,7 @@ sub_080784C8: @ 0x080784C8 movs r1, #0xc4 lsls r1, r1, #1 adds r0, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _080784E0 @ =gUnk_0811C000 str r0, [r4, #4] pop {r4, pc} diff --git a/asm/code_08078778.s b/asm/code_08078778.s index e1ddb07e..323f2c4f 100644 --- a/asm/code_08078778.s +++ b/asm/code_08078778.s @@ -44,7 +44,7 @@ _080788BA: movs r0, #6 movs r1, #9 movs r2, #6 - bl FindEntityInListBySubtype + bl FindEntityByID cmp r0, #0 bne _080788D6 movs r0, #9 @@ -70,7 +70,7 @@ sub_080788E0: @ 0x080788E0 ldr r1, _08078900 @ =gUnk_03003DF8 adds r0, r0, r1 movs r1, #0xc - bl MemClear32 + bl MemClear _080788FC: pop {pc} .align 2, 0 @@ -542,7 +542,7 @@ sub_08078C24: @ 0x08078C24 ldr r0, _08078CB0 @ =gUnk_03003DF0 movs r1, #0xc4 lsls r1, r1, #1 - bl MemClear32 + bl MemClear pop {pc} .align 2, 0 _08078CAC: .4byte gPlayerState @@ -866,7 +866,7 @@ sub_08078EFC: @ 0x08078EFC strb r2, [r0, #0xc] strb r1, [r0, #0xd] strb r1, [r3, #0xc] - bl sub_08070680 + bl DoPlayerAction movs r0, #1 b _08078F22 .align 2, 0 @@ -1583,8 +1583,8 @@ _08079454: _08079456: pop {r4, r5, pc} - thumb_func_start sub_08079458 -sub_08079458: @ 0x08079458 + thumb_func_start RespawnPlayer +RespawnPlayer: @ 0x08079458 push {r4, r5, lr} ldr r4, _08079498 @ =gPlayerEntity movs r1, #0 @@ -1915,7 +1915,7 @@ _080796C8: strb r1, [r0, #0x10] movs r1, #0x81 strb r1, [r4, #2] - bl sub_08070680 + bl DoPlayerAction movs r0, #1 b _080796FE .align 2, 0 @@ -2537,7 +2537,7 @@ sub_08079B24: @ 0x08079B24 ldrb r0, [r0] cmp r0, #0 beq _08079B6C - bl sub_08079458 + bl RespawnPlayer b _08079BC0 .align 2, 0 _08079B60: .4byte gPlayerEntity @@ -5401,8 +5401,8 @@ sub_0807B0C8: @ 0x0807B0C8 .align 2, 0 _0807B0F8: .4byte gPlayerEntity - thumb_func_start sub_0807B0FC -sub_0807B0FC: @ 0x0807B0FC + thumb_func_start PlayerWarp +PlayerWarp: @ 0x0807B0FC push {lr} ldr r2, _0807B110 @ =gUnk_0811C27C ldrb r1, [r0, #0xd] diff --git a/asm/code_0807B9B8.s b/asm/code_0807B9B8.s index 393c255c..59896509 100644 --- a/asm/code_0807B9B8.s +++ b/asm/code_0807B9B8.s @@ -948,19 +948,19 @@ sub_0807C0DC: @ 0x0807C0DC lsls r6, r6, #6 adds r0, r5, #0 adds r1, r6, #0 - bl MemClear32 + bl MemClear adds r0, r5, r6 movs r1, #0x80 lsls r1, r1, #5 - bl MemClear32 + bl MemClear ldr r0, _0807C160 @ =gUnk_02019EE0 movs r4, #0x80 lsls r4, r4, #8 adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _0807C164 @ =gMapDataTopSpecial adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _0807C168 @ =gArea ldr r1, _0807C16C @ =0x0000085C adds r0, r0, r1 @@ -999,7 +999,7 @@ _0807C174: .4byte 0x0000FFFF _0807C178: adds r0, r2, #4 adds r1, r6, #0 - bl MemClear32 + bl MemClear movs r3, #1 mov sb, r3 _0807C184: @@ -1167,7 +1167,7 @@ _0807C2E4: bl sub_0807C5F4 adds r0, r5, #0 adds r1, r6, #0 - bl MemClear32 + bl MemClear ldr r4, _0807C350 @ =gMapDataTopSpecial adds r5, r4, r6 adds r0, r4, #0 @@ -1179,7 +1179,7 @@ _0807C2E4: bl sub_0807C5F4 adds r0, r5, #0 adds r1, r6, #0 - bl MemClear32 + bl MemClear _0807C326: mov r1, sb cmp r1, #0 @@ -1406,10 +1406,10 @@ sub_0807C4F8: @ 0x0807C4F8 movs r4, #0x80 lsls r4, r4, #8 adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _0807C59C @ =gMapDataTopSpecial adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r5, _0807C5A0 @ =gUnk_02022830 ldr r0, _0807C5A4 @ =gArea ldr r1, _0807C5A8 @ =0x0000085C @@ -1455,7 +1455,7 @@ _0807C54A: bl sub_0807C5F4 adds r0, r5, #0 adds r1, r6, #0 - bl MemClear32 + bl MemClear ldr r4, _0807C59C @ =gMapDataTopSpecial adds r5, r4, r6 adds r0, r4, #0 @@ -1467,7 +1467,7 @@ _0807C54A: bl sub_0807C5F4 adds r0, r5, #0 adds r1, r6, #0 - bl MemClear32 + bl MemClear _0807C592: pop {r4, r5, r6, pc} .align 2, 0 @@ -1694,7 +1694,7 @@ _0807C710: _0807C726: adds r0, r4, #0 movs r1, #0x40 - bl MemClear32 + bl MemClear adds r4, #0x40 adds r5, #1 cmp r5, r7 @@ -1984,7 +1984,7 @@ _0807C92E: _0807C946: adds r0, r4, #0 movs r1, #0x80 - bl MemClear32 + bl MemClear adds r4, #0x80 adds r5, #1 cmp r5, r6 diff --git a/asm/code_0807F0D8.s b/asm/code_0807F0D8.s index e525b5a6..22e915bf 100644 --- a/asm/code_0807F0D8.s +++ b/asm/code_0807F0D8.s @@ -1228,7 +1228,7 @@ sub_0807F950: @ 0x0807F950 movs r1, #0x56 movs r2, #6 movs r3, #0 - bl FindEntityInListByForm + bl FindEntity cmp r0, #0 beq _0807F96C bl DeleteEntity @@ -2934,11 +2934,11 @@ sub_08080668: @ 0x08080668 ldr r5, _080806A4 @ =gRoomControls adds r0, r5, #0 movs r1, #0x38 - bl MemClear32 + bl MemClear ldr r4, _080806A8 @ =gUnk_03004030 adds r0, r4, #0 movs r1, #0xc - bl MemClear32 + bl MemClear ldr r0, _080806AC @ =0x0000FFFF strh r0, [r5, #0x22] movs r0, #0xff @@ -2950,10 +2950,10 @@ sub_08080668: @ 0x08080668 movs r4, #0x80 lsls r4, r4, #8 adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _080806B8 @ =gMapDataTopSpecial adds r1, r4, #0 - bl MemClear32 + bl MemClear pop {r4, r5, pc} .align 2, 0 _080806A4: .4byte gRoomControls diff --git a/asm/code_080A29BC.s b/asm/code_080A29BC.s index e5f4bf59..c0b7228f 100644 --- a/asm/code_080A29BC.s +++ b/asm/code_080A29BC.s @@ -96,13 +96,13 @@ sub_080A2AF4: @ 0x080A2AF4 lsls r4, r4, #0x18 asrs r4, r4, #0x10 adds r1, r4, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r5, #0x80 lsls r5, r5, #1 adds r1, r5, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r6, #0x2c] @@ -115,11 +115,11 @@ sub_080A2AF4: @ 0x080A2AF4 movs r1, #0 ldrsh r0, [r0, r1] adds r1, r4, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r5, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r6, #0x30] @@ -995,7 +995,7 @@ sub_080A3210: @ 0x080A3210 ldr r4, _080A3230 @ =gUnk_02021EE0 adds r0, r4, #0 movs r1, #0x18 - bl MemClear32 + bl MemClear bl sub_080A35C8 movs r0, #0x80 lsls r0, r0, #1 diff --git a/asm/code_080A3480.s b/asm/code_080A3480.s index 4a4030d9..2ade5735 100644 --- a/asm/code_080A3480.s +++ b/asm/code_080A3480.s @@ -266,7 +266,7 @@ _080A365C: _080A365E: str r0, [r2, #0xc] movs r0, #0 - bl sub_0801DA90 + bl DispReset movs r0, #0xb bl LoadPaletteGroup movs r0, #0xc @@ -354,7 +354,7 @@ sub_080A36F8: @ 0x080A36F8 ldr r0, _080A3760 @ =gBG1Buffer movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear ldr r1, _080A3764 @ =gScreen movs r2, #0 movs r0, #1 @@ -410,7 +410,7 @@ _080A378A: ldr r0, _080A37B8 @ =gBG1Buffer movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear movs r1, #0x10 ldrsh r0, [r4, r1] ldr r2, _080A37BC @ =gUnk_081272E0 @@ -580,7 +580,7 @@ sub_080A38D0: @ 0x080A38D0 movs r6, #0x80 lsls r6, r6, #4 adds r1, r6, #0 - bl MemClear32 + bl MemClear ldr r4, _080A3924 @ =gScreen movs r0, #0 mov r8, r0 @@ -588,7 +588,7 @@ sub_080A38D0: @ 0x080A38D0 strh r5, [r4, #0x1a] ldr r0, _080A3928 @ =gBG2Buffer adds r1, r6, #0 - bl MemClear32 + bl MemClear strh r5, [r4, #0x26] adds r4, #0x68 movs r0, #0x80 @@ -699,7 +699,7 @@ _080A39C8: strh r0, [r2, #8] strb r4, [r2, #3] movs r0, #1 - bl sub_0801DA90 + bl DispReset bl sub_080A3210 bl sub_080A4D34 movs r0, #0xa @@ -712,7 +712,7 @@ _080A39C8: movs r0, #0xc0 lsls r0, r0, #0x13 movs r1, #0x20 - bl MemClear32 + bl MemClear movs r0, #0 movs r1, #0 bl sub_08052418 diff --git a/asm/code_080A3BD0.s b/asm/code_080A3BD0.s index 18beb360..08159cb0 100644 --- a/asm/code_080A3BD0.s +++ b/asm/code_080A3BD0.s @@ -935,7 +935,7 @@ sub_080A4398: @ 0x080A4398 push {lr} ldr r0, _080A43A4 @ =gUnk_02019EE0 movs r1, #0x40 - bl MemClear32 + bl MemClear pop {pc} .align 2, 0 _080A43A4: .4byte gUnk_02019EE0 @@ -1119,7 +1119,7 @@ sub_080A44E0: @ 0x080A44E0 mov r8, r0 ldr r0, [r4, #8] mov r1, r8 - bl MemClear32 + bl MemClear adds r0, r6, #0 adds r1, r4, #0 bl sub_0805F76C @@ -1269,11 +1269,11 @@ sub_080A4608: @ 0x080A4608 ldr r0, _080A46A4 @ =gBG0Buffer movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear ldr r0, _080A46A8 @ =gBG3Buffer movs r1, #0x80 lsls r1, r1, #5 - bl MemClear32 + bl MemClear ldr r2, _080A46AC @ =gScreen adds r1, r2, #0 adds r1, #0x58 @@ -1976,7 +1976,7 @@ sub_080A4BA0: @ 0x080A4BA0 adds r6, r1, #0 add r0, sp, #0x18 movs r1, #0x30 - bl MemClear32 + bl MemClear ldr r0, _080A4C08 @ =gUnk_0812816C mov r1, sp movs r2, #0x18 @@ -2123,7 +2123,7 @@ sub_080A4CBC: @ 0x080A4CBC lsls r5, r5, #4 adds r0, r4, #0 adds r1, r5, #0 - bl MemClear32 + bl MemClear ldr r1, _080A4D14 @ =0x0600E000 adds r0, r4, #0 adds r2, r5, #0 @@ -2217,7 +2217,7 @@ sub_080A4D88: @ 0x080A4D88 push {lr} ldr r0, _080A4DA4 @ =gUnk_020344A0 movs r1, #8 - bl MemClear32 + bl MemClear movs r0, #1 movs r1, #0 bl MenuFadeIn @@ -2245,21 +2245,21 @@ sub_080A4DB8: @ 0x080A4DB8 movs r4, #0x80 lsls r4, r4, #4 adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _080A4E5C @ =gBG1Buffer adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _080A4E60 @ =gBG2Buffer adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _080A4E64 @ =gUnk_0200AF34 movs r1, #0xc0 lsls r1, r1, #2 - bl MemClear32 + bl MemClear ldr r4, _080A4E68 @ =gMenu adds r0, r4, #0 movs r1, #0x30 - bl MemClear32 + bl MemClear ldr r0, _080A4E6C @ =0x0000FFFF strh r0, [r4, #0x2e] ldr r0, _080A4E70 @ =gUnk_02034490 @@ -2580,7 +2580,7 @@ _080A5080: ldr r0, _080A5098 @ =gBG0Buffer movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear ldr r1, _080A509C @ =gScreen movs r0, #1 strh r0, [r1, #0xe] diff --git a/asm/code_080A5574.s b/asm/code_080A5574.s index 1bd8ec85..05b47ec9 100644 --- a/asm/code_080A5574.s +++ b/asm/code_080A5574.s @@ -2442,7 +2442,7 @@ _080A6886: ldr r0, _080A68D0 @ =gUnk_02019EE0 movs r1, #0x80 lsls r1, r1, #3 - bl MemClear32 + bl MemClear pop {r4, r5, r6, r7, pc} .align 2, 0 _080A68AC: .4byte gUnk_02032EC0 @@ -3307,7 +3307,7 @@ sub_080A6F6C: @ 0x080A6F6C ldr r0, _080A6FA8 @ =gUnk_020350F0 movs r1, #0x80 lsls r1, r1, #1 - bl MemClear32 + bl MemClear movs r0, #0xff ands r0, r4 cmp r0, #0 @@ -3376,7 +3376,7 @@ _080A6FFA: ldr r0, _080A7038 @ =gUnk_020350F0 movs r1, #0x80 lsls r1, r1, #1 - bl MemClear32 + bl MemClear movs r0, #0xff ands r0, r4 cmp r0, #0 @@ -3413,7 +3413,7 @@ sub_080A7040: @ 0x080A7040 movs r1, #0xc0 lsls r1, r1, #2 adds r0, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _080A7098 @ =0xFFFFFE00 adds r4, r4, r0 ldr r1, _080A709C @ =0x0600E000 @@ -3456,7 +3456,7 @@ sub_080A70AC: @ 0x080A70AC movs r1, #0xc0 lsls r1, r1, #2 adds r0, r4, #0 - bl MemClear32 + bl MemClear adds r2, r4, #0 subs r2, #0x34 movs r0, #0x7f @@ -3519,7 +3519,7 @@ sub_080A7124: @ 0x080A7124 ldr r0, _080A7134 @ =gUnk_02032EC0 movs r1, #0xed lsls r1, r1, #2 - bl MemClear32 + bl MemClear pop {pc} .align 2, 0 _080A7134: .4byte gUnk_02032EC0 @@ -3536,7 +3536,7 @@ MenuFadeIn: @ 0x080A7138 movs r1, #0xed lsls r1, r1, #2 adds r0, r4, #0 - bl MemClear32 + bl MemClear strb r5, [r4, #2] strb r6, [r4, #3] ldr r0, _080A7160 @ =gMain @@ -3767,22 +3767,22 @@ sub_080A7328: @ 0x080A7328 bl DeleteAllEntities ldr r0, _080A738C @ =gMenu movs r1, #0x30 - bl MemClear32 + bl MemClear ldr r0, _080A7390 @ =gRoomControls movs r1, #0x38 - bl MemClear32 + bl MemClear ldr r0, _080A7394 @ =gUnk_03000420 movs r1, #0x80 lsls r1, r1, #1 - bl MemClear32 + bl MemClear ldr r4, _080A7398 @ =gActiveScriptInfo adds r0, r4, #0 movs r1, #0xc - bl MemClear32 + bl MemClear movs r0, #8 strb r0, [r4, #8] movs r0, #1 - bl sub_0801DA90 + bl DispReset bl MessageInitialize bl sub_080ADD30 movs r0, #0 @@ -4943,7 +4943,7 @@ sub_080A7C7C: @ 0x080A7C7C push {lr} ldr r0, _080A7C88 @ =gUnk_02017660 movs r1, #0x40 - bl MemClear32 + bl MemClear pop {pc} .align 2, 0 _080A7C88: .4byte gUnk_02017660 diff --git a/asm/code_080AD90C.s b/asm/code_080AD90C.s index d08c7ef4..54509736 100644 --- a/asm/code_080AD90C.s +++ b/asm/code_080AD90C.s @@ -567,7 +567,7 @@ sub_080ADD30: @ 0x080ADD30 movs r1, #0x85 lsls r1, r1, #2 adds r0, r4, #0 - bl MemClear32 + bl MemClear movs r5, #0 adds r4, #4 movs r0, #0x10 @@ -718,7 +718,7 @@ _080ADE54: .4byte gUnk_02024494 _080ADE58: adds r0, r1, #0 movs r1, #0xc - bl MemClear32 + bl MemClear _080ADE60: adds r5, #0xc adds r4, #1 @@ -1084,7 +1084,7 @@ sub_080AE104: @ 0x080AE104 adds r1, r1, r5 lsls r1, r1, #2 adds r0, r4, #0 - bl MemClear32 + bl MemClear strb r5, [r4, #1] strh r6, [r4, #4] adds r0, r4, #0 @@ -1396,7 +1396,7 @@ _080AE350: stm r0!, {r2, r3, r7} adds r0, r6, #0 movs r1, #0xc - bl MemClear32 + bl MemClear adds r6, #0xc adds r5, #0xc movs r0, #0xc @@ -1,32 +1,31 @@ .include "asm/macros.inc" .include "constants/constants.inc" - .syntax unified - .text arm_func_start __start -__start: @ 0x08000000 - b _080000C0 -_08000004: +__start: + b start_vector + +header: .include "asm/rom_header.inc" -_080000C0: + +start_vector: mov r0, #0x12 msr cpsr_fc, r0 - ldr sp, _080000F4 @ =gUnk_03007FA0 + ldr sp, sp_irq mov r0, #0x1f msr cpsr_fc, r0 - ldr sp, _080000F8 @ =gUnk_03007F00 - ldr r1, _080000FC @ =0x03007FFC - ldr r0, _08000100 @ =gUnk_03005D90 + ldr sp, sp_usr + ldr r1, INTR_VECTOR_BUF + ldr r0, intr_main str r0, [r1] - ldr r1, _08000104 @ =MainLoop + ldr r1, =AgbMain mov lr, pc bx r1 _080000F0: - b _080000C0 -_080000F4: .4byte gUnk_03007FA0 -_080000F8: .4byte gUnk_03007F00 -_080000FC: .4byte 0x03007FFC -_08000100: .4byte gUnk_03005D90 -_08000104: .4byte MainLoop + b start_vector +sp_irq: .4byte gUnk_03007FA0 +sp_usr: .4byte gUnk_03007F00 +INTR_VECTOR_BUF: .4byte 0x03007FFC +intr_main: .4byte IntrMain @@ -160,7 +160,7 @@ _080441F2: cmp r2, #0 bne _08044248 ldr r0, [r4, #0x64] - bl sub_0801DA0C + bl zFree b _0804429A .align 2, 0 _08044244: .4byte 0x000001EB diff --git a/asm/evilSpirit.s b/asm/evilSpirit.s index 79a69521..1baea3de 100644 --- a/asm/evilSpirit.s +++ b/asm/evilSpirit.s @@ -341,13 +341,13 @@ _080864EE: ldrsh r0, [r0, r1] movs r1, #0x80 lsls r1, r1, #6 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r4, #0x80 lsls r4, r4, #1 adds r1, r4, #0 - bl sub_0806FA04 + bl FixedDiv adds r1, r6, #0 adds r1, #0x80 lsls r0, r0, #0x10 @@ -363,11 +363,11 @@ _080864EE: ldrsh r0, [r0, r3] movs r1, #0x80 lsls r1, r1, #5 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r4, #0 - bl sub_0806FA04 + bl FixedDiv adds r1, r6, #0 adds r1, #0x84 lsls r0, r0, #0x10 @@ -520,13 +520,13 @@ _0808663A: ldrsh r0, [r0, r1] movs r1, #0x80 lsls r1, r1, #6 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r5, #0x80 lsls r5, r5, #1 adds r1, r5, #0 - bl sub_0806FA04 + bl FixedDiv adds r1, r7, #0 adds r1, #0x80 lsls r0, r0, #0x10 @@ -541,11 +541,11 @@ _0808663A: ldrsh r0, [r0, r1] movs r1, #0x80 lsls r1, r1, #5 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r5, #0 - bl sub_0806FA04 + bl FixedDiv adds r1, r7, #0 adds r1, #0x84 lsls r0, r0, #0x10 diff --git a/asm/fileScreen.s b/asm/fileScreen.s index 341bfde7..ba7813d0 100755 --- a/asm/fileScreen.s +++ b/asm/fileScreen.s @@ -33,7 +33,7 @@ sub_080519B0: @ 0x080519B0 cmp r5, #0 bne _08051A02 movs r0, #1 - bl sub_0801DA90 + bl DispReset bl sub_080A3210 bl zMallocInit bl sub_080A7124 @@ -41,7 +41,7 @@ sub_080519B0: @ 0x080519B0 ldr r4, _08051A08 @ =gScreenTransition adds r0, r4, #0 movs r1, #0xb0 - bl MemClear32 + bl MemClear bl sub_08049CD4 bl sub_080300AC bl sub_0807CA18 @@ -69,18 +69,18 @@ _08051A10: .4byte gMain sub_08051A14: @ 0x08051A14 push {lr} movs r0, #1 - bl sub_0801DA90 + bl DispReset ldr r1, _08051A70 @ =gFadeControl movs r0, #1 rsbs r0, r0, #0 str r0, [r1, #4] ldr r0, _08051A74 @ =gUnk_03000000 ldr r1, _08051A78 @ =0x00000B74 - bl MemClear32 + bl MemClear ldr r0, _08051A7C @ =gUnk_02032EC0 movs r1, #0xed lsls r1, r1, #2 - bl MemClear32 + bl MemClear bl EraseAllEntities bl sub_080197AC bl sub_08080668 @@ -368,7 +368,7 @@ sub_08051CF0: @ 0x08051CF0 cmp r4, #0 bne _08051D1E movs r0, #1 - bl sub_0801DA90 + bl DispReset strb r6, [r5, #3] strb r4, [r5, #4] ldr r0, _08051D28 @ =gScreenTransition @@ -729,15 +729,15 @@ sub_08052010: @ 0x08052010 bl sub_080A3210 bl MessageInitialize movs r0, #1 - bl sub_0801DA90 + bl DispReset ldr r0, _0805207C @ =gBG1Buffer movs r4, #0x80 lsls r4, r4, #4 adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _08052080 @ =gBG2Buffer adds r1, r4, #0 - bl MemClear32 + bl MemClear bl sub_080A4D34 movs r0, #0xa bl LoadPaletteGroup @@ -749,10 +749,10 @@ sub_08052010: @ 0x08052010 movs r0, #0xc0 lsls r0, r0, #0x13 movs r1, #0x20 - bl MemClear32 + bl MemClear ldr r0, _08052084 @ =gMenu movs r1, #0x30 - bl MemClear32 + bl MemClear ldr r1, _08052088 @ =gScreen ldrh r2, [r1] movs r3, #0x80 diff --git a/asm/fourElements.s b/asm/fourElements.s index 42e2badb..dd5ffa82 100644 --- a/asm/fourElements.s +++ b/asm/fourElements.s @@ -355,7 +355,7 @@ sub_080A0464: @ 0x080A0464 movs r0, #6 movs r1, #0xac movs r2, #6 - bl FindEntityInListBySubtype + bl FindEntityByID cmp r0, #0 beq _080A048A movs r1, #0x2e diff --git a/asm/gleerok.s b/asm/gleerok.s index d6272ec5..d8709272 100644 --- a/asm/gleerok.s +++ b/asm/gleerok.s @@ -2824,11 +2824,11 @@ _0802E580: ldrb r1, [r6] lsls r1, r1, #0x18 asrs r1, r1, #0x10 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r7, #0 - bl sub_0806FA04 + bl FixedDiv adds r1, r0, #0 ldrb r0, [r4, #1] lsls r0, r0, #4 @@ -2838,11 +2838,11 @@ _0802E580: ldrsh r0, [r0, r2] lsls r1, r1, #0x10 asrs r1, r1, #0x10 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r7, #0 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r5] lsls r0, r0, #0x10 asrs r0, r0, #8 @@ -2859,11 +2859,11 @@ _0802E580: ldrb r1, [r6] lsls r1, r1, #0x18 asrs r1, r1, #0x10 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r7, #0 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r5] lsls r0, r0, #0x10 asrs r0, r0, #8 diff --git a/asm/guardWithSpear.s b/asm/guardWithSpear.s index 14da7633..4d328260 100644 --- a/asm/guardWithSpear.s +++ b/asm/guardWithSpear.s @@ -153,7 +153,7 @@ sub_08064180: @ 0x08064180 movs r0, #7 movs r1, #0x15 movs r2, #7 - bl FindEntityInListBySubtype + bl FindEntityByID cmp r0, #0 beq _08064194 bl DeleteEntity diff --git a/asm/gyorgFemale.s b/asm/gyorgFemale.s index 14d08573..daba4aa9 100644 --- a/asm/gyorgFemale.s +++ b/asm/gyorgFemale.s @@ -112,10 +112,10 @@ sub_0804614C: @ 0x0804614C movs r4, #0x80 lsls r4, r4, #8 adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _08046250 @ =gMapDataTopSpecial adds r1, r4, #0 - bl MemClear32 + bl MemClear adds r0, r6, #0 movs r1, #0 bl sub_0804660C @@ -445,10 +445,10 @@ sub_08046498: @ 0x08046498 movs r4, #0x80 lsls r4, r4, #8 adds r1, r4, #0 - bl MemClear32 + bl MemClear ldr r0, _080464BC @ =gMapDataTopSpecial adds r1, r4, #0 - bl MemClear32 + bl MemClear adds r0, r5, #0 bl sub_080464C0 pop {r4, r5, pc} @@ -486,7 +486,7 @@ _080464DE: ldr r0, _0804650C @ =gUnk_02019EE0 movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear ldr r1, _08046514 @ =gUnk_02000070 movs r0, #1 strb r0, [r1] @@ -49,16 +49,17 @@ _080B19C0: .4byte gRoomControls _080B19C4: .4byte 0x80000020 _080B19C8: .4byte 0x040000D4 - arm_func_start sub_080B19CC -sub_080B19CC: @ 0x080B19CC - ldrb r2, [r0, #0x38] - ldrh r1, [r0, #0x32] - ldrh r0, [r0, #0x2e] +@ r0 = entity* + arm_func_start _GetTileAtEntityPos +_GetTileAtEntityPos: @ 0x080B19CC + ldrb r2, [r0, #0x38] @ obj layer + ldrh r1, [r0, #0x32] @ obj y + ldrh r0, [r0, #0x2e] @ obj x ldr ip, _080B1C10 @ =gRoomControls ldrh r3, [ip, #6] - sub r0, r0, r3 + sub r0, r0, r3 @ obj x - room x ldrh r3, [ip, #8] - sub r1, r1, r3 + sub r1, r1, r3 @ obj y - room y lsl r0, r0, #0x16 lsr r0, r0, #0x1a lsl r1, r1, #0x16 @@ -102,7 +103,7 @@ _080B1A64: ldr r1, [r2] lsl r0, r0, #1 ldrh r0, [r1, r0] - cmp r0, #0x4000 + cmp r0, #0x4000 @ return tile index is OOB bxhs lr ldr r1, [r2, #4] lsl r0, r0, #1 diff --git a/asm/jarPortal.s b/asm/jarPortal.s index 09c48e54..8b057fc8 100644 --- a/asm/jarPortal.s +++ b/asm/jarPortal.s @@ -230,7 +230,7 @@ sub_0808C01C: @ 0x0808C01C subs r1, #0x18 movs r2, #0x30 movs r3, #0x30 - bl sub_0806FBFC + bl CheckPlayerProximity cmp r0, #0 beq _0808C0A6 ldr r2, _0808C06C @ =gArea @@ -656,7 +656,7 @@ sub_0806252C: @ 0x0806252C lsls r0, r1, #0x10 asrs r0, r0, #0x10 movs r1, #0x14 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #0x10 mov sl, r0 @@ -664,7 +664,7 @@ sub_0806252C: @ 0x0806252C lsls r0, r2, #0x10 asrs r0, r0, #0x10 movs r1, #0x14 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #0x10 mov r8, r0 diff --git a/asm/lilypadLarge.s b/asm/lilypadLarge.s index 5202438a..4d2e643d 100644 --- a/asm/lilypadLarge.s +++ b/asm/lilypadLarge.s @@ -73,7 +73,7 @@ _08085566: b _0808557A _0808556C: adds r0, r4, #0 - bl DoesSimilarEntityExist + bl EntityHasDuplicateID cmp r0, #0 beq _0808557A bl DeleteThisEntity @@ -349,13 +349,13 @@ _08085774: lsls r4, r4, #0x10 asrs r4, r4, #0x18 adds r1, r4, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r5, #0x80 lsls r5, r5, #1 adds r1, r5, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r7, #0x6c] @@ -368,11 +368,11 @@ _08085774: movs r2, #0 ldrsh r0, [r0, r2] adds r1, r4, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r5, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 ldr r1, [r7, #0x70] @@ -441,7 +441,7 @@ _0808581A: movs r4, #0x80 lsls r4, r4, #1 adds r1, r4, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 ldr r5, _080858A8 @ =gSineTable @@ -450,13 +450,13 @@ _0808581A: adds r1, r1, r5 movs r2, #0 ldrsh r1, [r1, r2] - bl sub_0806FA04 + bl FixedDiv strh r0, [r7, #0x24] ldr r0, [r7, #0x70] lsls r0, r0, #8 asrs r0, r0, #0x10 adds r1, r4, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 ldrb r1, [r7, #0x15] @@ -465,7 +465,7 @@ _0808581A: adds r1, r1, r5 movs r2, #0 ldrsh r1, [r1, r2] - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #0x10 rsbs r4, r0, #0 @@ -1072,7 +1072,7 @@ _08085D0C: sub_08085D10: @ 0x08085D10 push {r4, lr} adds r4, r0, #0 - bl DoesSimilarEntityExist + bl EntityHasDuplicateID cmp r0, #0 beq _08085D26 ldrb r0, [r4, #0xb] diff --git a/asm/loadRoomEntity.s b/asm/loadRoomEntity.s index 81a81688..50933176 100644 --- a/asm/loadRoomEntity.s +++ b/asm/loadRoomEntity.s @@ -19,14 +19,14 @@ LoadRoomEntity: @ 0x0804ADF8 bne _0804AE1C ldrb r1, [r4, #2] adds r0, r6, #0 - bl FindEntityBySubtype + bl DeepFindEntityByID cmp r0, #0 beq _0804AE1C movs r0, #0 b _0804AEAC _0804AE1C: adds r0, r6, #0 - bl GetEmptyEntityByType + bl GetEmptyEntityByKind adds r5, r0, #0 cmp r5, #0 beq _0804AEAA diff --git a/asm/macroBook.s b/asm/macroBook.s index 7836e99b..654f182a 100644 --- a/asm/macroBook.s +++ b/asm/macroBook.s @@ -360,7 +360,7 @@ sub_0809AA00: @ 0x0809AA00 movs r0, #7 movs r1, #0x38 movs r2, #7 - bl FindEntityInListBySubtype + bl FindEntityByID adds r4, r0, #0 adds r7, r5, #0 adds r7, #0x78 @@ -380,7 +380,7 @@ _0809AA30: _0809AA3A: adds r0, r4, #0 movs r1, #7 - bl FindNextEntityOfSameSubtype + bl FindNextDuplicateID adds r4, r0, #0 cmp r4, #0 bne _0809AA30 diff --git a/asm/manager10.s b/asm/manager10.s index 2826845f..f0d19df0 100644 --- a/asm/manager10.s +++ b/asm/manager10.s @@ -338,7 +338,7 @@ _08059800: lsls r5, r5, #4 adds r0, r4, #0 adds r1, r5, #0 - bl MemClear32 + bl MemClear ldr r1, _08059820 @ =0x0600E800 adds r0, r4, #0 adds r2, r5, #0 diff --git a/asm/manager14.s b/asm/manager14.s index cfdf3e17..cae54bf4 100644 --- a/asm/manager14.s +++ b/asm/manager14.s @@ -30,7 +30,7 @@ _08059E7C: .4byte gUnk_081085A4 sub_08059E80: @ 0x08059E80 push {r4, r5, lr} adds r4, r0, #0 - bl DoesSimilarEntityExist + bl EntityHasDuplicateID cmp r0, #0 beq _08059E90 bl DeleteThisEntity diff --git a/asm/manager1B.s b/asm/manager1B.s index c591eaa4..31e610bc 100644 --- a/asm/manager1B.s +++ b/asm/manager1B.s @@ -10,7 +10,7 @@ sub_0805B3B4: @ 0x0805B3B4 push {r4, r5, lr} adds r4, r0, #0 - bl DoesSimilarEntityExist + bl EntityHasDuplicateID cmp r0, #0 beq _0805B3C4 bl DeleteThisEntity diff --git a/asm/manager22.s b/asm/manager22.s index 4159a42b..aae066dc 100644 --- a/asm/manager22.s +++ b/asm/manager22.s @@ -342,7 +342,7 @@ _0805BB82: strh r1, [r2, #0xc] movs r0, #9 movs r1, #0x22 - bl FindEntityBySubtype + bl DeepFindEntityByID cmp r0, #0 beq _0805BBAE bl sub_0805B8EC diff --git a/asm/manager2C.s b/asm/manager2C.s index 4da87eb7..123784c0 100644 --- a/asm/manager2C.s +++ b/asm/manager2C.s @@ -44,7 +44,7 @@ _0805D184: ldr r4, _0805D1F8 @ =gUnk_030010AC adds r0, r4, #0 movs r1, #0x20 - bl MemClear32 + bl MemClear subs r4, #0xc movs r1, #0 movs r0, #1 diff --git a/asm/manager36.s b/asm/manager36.s index 5245d37b..e4fae5aa 100644 --- a/asm/manager36.s +++ b/asm/manager36.s @@ -72,7 +72,7 @@ sub_0805DE18: @ 0x0805DE18 movs r0, #9 movs r1, #0x36 movs r2, #6 - bl FindEntityInListByForm + bl FindEntity cmp r0, #0 beq _0805DE34 bl DeleteEntityAny diff --git a/asm/managerF.s b/asm/managerF.s index b9d9444a..1e268250 100644 --- a/asm/managerF.s +++ b/asm/managerF.s @@ -492,7 +492,7 @@ sub_08059278: @ 0x08059278 movs r0, #9 movs r1, #0xf movs r2, #6 - bl FindEntityInListBySubtype + bl FindEntityByID cmp r0, #0 beq _0805928C bl sub_08058ECC diff --git a/asm/minishSizedEntrance.s b/asm/minishSizedEntrance.s deleted file mode 100644 index aa4edc0d..00000000 --- a/asm/minishSizedEntrance.s +++ /dev/null @@ -1,62 +0,0 @@ - .include "asm/macros.inc" - - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_08090F00 -sub_08090F00: @ 0x08090F00 - push {r4, r5, r6, lr} - adds r4, r0, #0 - ldrb r1, [r4, #0xa] - cmp r1, #1 - bne _08090F1C - ldr r0, [r4, #0x50] - ldrb r2, [r4, #0xf] - lsls r1, r2 - ldr r0, [r0, #0x20] - ands r0, r1 - cmp r0, #0 - bne _08090F1C - bl DeleteThisEntity -_08090F1C: - ldr r6, _08090F64 @ =gPlayerState - ldr r0, [r6, #0x30] - movs r1, #0x80 - ands r0, r1 - cmp r0, #0 - beq _08090F62 - ldr r5, _08090F68 @ =gPlayerEntity - adds r0, r4, #0 - adds r1, r5, #0 - movs r2, #4 - movs r3, #4 - bl sub_080041A0 - cmp r0, #0 - beq _08090F62 - movs r1, #0x36 - ldrsh r0, [r5, r1] - cmp r0, #0 - bne _08090F62 - adds r2, r6, #0 - adds r2, #0x90 - ldr r1, _08090F6C @ =gUnk_0812225C - ldrb r0, [r4, #0xb] - lsls r0, r0, #1 - adds r0, r0, r1 - ldrh r1, [r2] - ldrh r0, [r0] - ands r0, r1 - cmp r0, #0 - beq _08090F62 - ldrb r0, [r4, #0xe] - bl GetCurrentRoomProperty - bl DoExitTransition -_08090F62: - pop {r4, r5, r6, pc} - .align 2, 0 -_08090F64: .4byte gPlayerState -_08090F68: .4byte gPlayerEntity -_08090F6C: .4byte gUnk_0812225C diff --git a/asm/non_matching/arm_proxy/ItemInit.inc b/asm/non_matching/arm_proxy/ItemInit.inc index e48870ae..efdae83e 100644 --- a/asm/non_matching/arm_proxy/ItemInit.inc +++ b/asm/non_matching/arm_proxy/ItemInit.inc @@ -127,4 +127,4 @@ _08017438: .align 2, 0 _0801749C: .4byte 0x000003FF _080174A0: .4byte gPlayerEntity - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/arm_proxy/sub_08017530.inc b/asm/non_matching/arm_proxy/sub_08017530.inc index 4c2b9134..278daa48 100644 --- a/asm/non_matching/arm_proxy/sub_08017530.inc +++ b/asm/non_matching/arm_proxy/sub_08017530.inc @@ -87,4 +87,4 @@ _080175D8: .4byte gUnk_020342F8 _080175DC: .4byte gNPCFunctions _080175E0: .4byte gUnk_02031EC0 _080175E4: .4byte gRoomControls - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/arm_proxy/sub_0801766C.inc b/asm/non_matching/arm_proxy/sub_0801766C.inc index 6ef38554..239a6506 100644 --- a/asm/non_matching/arm_proxy/sub_0801766C.inc +++ b/asm/non_matching/arm_proxy/sub_0801766C.inc @@ -65,4 +65,4 @@ _080176DE: pop {r4} pop {r1} bx r1 - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/arm_proxy/sub_080176E4.inc b/asm/non_matching/arm_proxy/sub_080176E4.inc index 5000774e..e8a48278 100644 --- a/asm/non_matching/arm_proxy/sub_080176E4.inc +++ b/asm/non_matching/arm_proxy/sub_080176E4.inc @@ -51,4 +51,4 @@ _0801773A: bx r1 .align 2, 0 _08017740: .4byte gUnk_03003C70 - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/arm_proxy/sub_08017744.inc b/asm/non_matching/arm_proxy/sub_08017744.inc index 2d47df2c..e5e245ec 100644 --- a/asm/non_matching/arm_proxy/sub_08017744.inc +++ b/asm/non_matching/arm_proxy/sub_08017744.inc @@ -47,4 +47,4 @@ _0801779A: pop {r4, r5, r6, r7} pop {r0} bx r0 - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/arm_proxy/sub_080177A0.inc b/asm/non_matching/arm_proxy/sub_080177A0.inc index 99962e08..da64049f 100644 --- a/asm/non_matching/arm_proxy/sub_080177A0.inc +++ b/asm/non_matching/arm_proxy/sub_080177A0.inc @@ -92,4 +92,4 @@ _0801784A: pop {r4, r5, r6} pop {r1} bx r1 - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/fileScreen/sub_08050EF4.inc b/asm/non_matching/fileScreen/sub_08050EF4.inc index 1ef73ae0..dbad9f1e 100644 --- a/asm/non_matching/fileScreen/sub_08050EF4.inc +++ b/asm/non_matching/fileScreen/sub_08050EF4.inc @@ -135,4 +135,4 @@ _08050FF4: mov r8, r3 pop {r4, r5, r6, r7, pc} .align 2, 0 - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/fileScreen/sub_08051738.inc b/asm/non_matching/fileScreen/sub_08051738.inc index bde5ca42..16ca61e3 100644 --- a/asm/non_matching/fileScreen/sub_08051738.inc +++ b/asm/non_matching/fileScreen/sub_08051738.inc @@ -62,4 +62,4 @@ _080517A2: pop {r4, r5, r6, r7, pc} .align 2, 0 _080517B0: .4byte gMenu - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/fileScreen/sub_080517B4.inc b/asm/non_matching/fileScreen/sub_080517B4.inc index 45bc25e3..f9bef9e7 100644 --- a/asm/non_matching/fileScreen/sub_080517B4.inc +++ b/asm/non_matching/fileScreen/sub_080517B4.inc @@ -29,4 +29,4 @@ _080517DE: .align 2, 0 _080517E4: .4byte gUnk_02019EE0 _080517E8: .4byte gUnk_02000090 - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/fileScreen/sub_080610B8.inc b/asm/non_matching/fileScreen/sub_080610B8.inc index f7b6721c..037a8765 100644 --- a/asm/non_matching/fileScreen/sub_080610B8.inc +++ b/asm/non_matching/fileScreen/sub_080610B8.inc @@ -345,4 +345,4 @@ _0805134C: .align 2, 0 _08051350: .4byte gSave _08051354: .4byte gMenu - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/game/sub_08052418.inc b/asm/non_matching/game/sub_08052418.inc index 179cce1d..bd30db21 100644 --- a/asm/non_matching/game/sub_08052418.inc +++ b/asm/non_matching/game/sub_08052418.inc @@ -6,7 +6,7 @@ ldr r0, _08052494 @ =gBG1Buffer movs r1, #0x80 lsls r1, r1, #4 - bl MemClear32 + bl MemClear ldr r0, _08052498 @ =gUnk_020227E8 movs r1, #0xf str r1, [r0] @@ -63,4 +63,4 @@ _08052498: .4byte gUnk_020227E8 _0805249C: .4byte gUnk_080FCA8C _080524A0: .4byte gUnk_080FCAA4 _080524A4: .4byte gScreen - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/gibdo/sub_080376D0.inc b/asm/non_matching/gibdo/sub_080376D0.inc index c6c76bd6..8c07e3dc 100644 --- a/asm/non_matching/gibdo/sub_080376D0.inc +++ b/asm/non_matching/gibdo/sub_080376D0.inc @@ -54,4 +54,4 @@ _0803772C: _0803773A: pop {r4, pc} - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/gibdo/sub_08037810.inc b/asm/non_matching/gibdo/sub_08037810.inc index 42f4ed8c..b4ce2803 100644 --- a/asm/non_matching/gibdo/sub_08037810.inc +++ b/asm/non_matching/gibdo/sub_08037810.inc @@ -83,4 +83,4 @@ _080378AC: _080378AE: pop {r4, r5, r6, pc} - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/gibdo/sub_0803797C.inc b/asm/non_matching/gibdo/sub_0803797C.inc index 47da634a..4e0ecf7a 100644 --- a/asm/non_matching/gibdo/sub_0803797C.inc +++ b/asm/non_matching/gibdo/sub_0803797C.inc @@ -36,4 +36,4 @@ _080379BA: pop {r4, r5, pc} - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/player/sub_08071634.s b/asm/non_matching/player/sub_08071634.s new file mode 100644 index 00000000..3c377521 --- /dev/null +++ b/asm/non_matching/player/sub_08071634.s @@ -0,0 +1,172 @@ + .syntax unified + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + adds r5, r0, #0 + adds r0, #0x81 + ldrb r0, [r0] + cmp r0, #0 + beq _08071654 + adds r1, r5, #0 + adds r1, #0x80 + ldr r0, [r1] + adds r0, #0x80 + lsls r0, r0, #0x14 + lsrs r7, r0, #0x17 + adds r4, r1, #0 + b _0807166A +_08071654: + adds r4, r5, #0 + adds r4, #0x80 + ldrb r1, [r4] + lsrs r1, r1, #6 + movs r0, #3 + eors r1, r0 + adds r1, #1 + movs r0, #0x10 + bl __divsi3 + asrs r7, r0, #1 +_0807166A: + adds r0, r5, #0 + adds r0, #0x84 + ldr r3, [r0] + movs r1, #0x80 + lsls r1, r1, #1 + adds r2, r0, #0 + cmp r3, r1 + bls _08071684 + adds r0, r3, #0 + adds r0, #0x80 + lsls r0, r0, #0x14 + lsrs r3, r0, #0x17 + b _08071694 +_08071684: + cmp r3, r1 + bne _0807168C + movs r3, #0x10 + b _08071694 +_0807168C: + ldr r1, _080716B0 @ =gUnk_0811BABC + lsrs r0, r3, #5 + adds r0, r0, r1 + ldrb r3, [r0] +_08071694: + movs r0, #0x80 + lsls r0, r0, #9 + mov r8, r0 + adds r0, r5, #0 + adds r0, #0x5a + ldrb r0, [r0] + cmp r0, #2 + beq _080716EA + cmp r0, #2 + bgt _080716B4 + cmp r0, #1 + beq _080716BA + b _08071754 + .align 2, 0 +_080716B0: .4byte gUnk_0811BABC +_080716B4: + cmp r0, #3 + beq _0807171E + b _08071754 +_080716BA: + movs r1, #0x29 + adds r1, r1, r5 + mov ip, r1 + ldrb r1, [r1] + movs r0, #0x39 + rsbs r0, r0, #0 + ands r0, r1 + mov r1, ip + strb r0, [r1] + ldr r0, [r4] + cmp r0, #0x80 + bls _080716D6 + subs r0, r0, r7 + str r0, [r4] +_080716D6: + lsls r1, r3, #1 + ldr r0, [r2] + adds r0, r0, r1 + str r0, [r2] + mov r0, r8 + lsls r1, r0, #1 + ldr r0, [r5, #0x30] + adds r0, r0, r1 + str r0, [r5, #0x30] + b _08071754 +_080716EA: + ldr r0, [r4] + adds r0, r0, r7 + str r0, [r4] + ldr r1, [r2] + movs r6, #0x80 + lsls r6, r6, #1 + cmp r1, r6 + bls _08071710 + ldr r0, _0807170C @ =0x0000017F + cmp r1, r0 + bhi _08071702 + lsrs r3, r3, #1 +_08071702: + subs r0, r1, r3 + cmp r0, #0xff + bhi _08071716 + str r6, [r2] + b _08071718 + .align 2, 0 +_0807170C: .4byte 0x0000017F +_08071710: + cmp r1, #0x80 + bls _08071718 + subs r0, r1, r3 +_08071716: + str r0, [r2] +_08071718: + ldr r0, [r5, #0x34] + mov r1, r8 + b _08071750 +_0807171E: + ldr r0, [r4] + ldr r6, _08071740 @ =0x0000033F + cmp r0, r6 + bhi _0807172A + adds r0, r0, r7 + str r0, [r4] +_0807172A: + ldr r1, [r2] + cmp r1, r6 + bls _08071744 + movs r0, #8 + strb r0, [r5, #0xe] + movs r0, #0x1e + strb r0, [r5, #0xf] + movs r0, #6 + strb r0, [r5, #0xd] + b _0807174A + .align 2, 0 +_08071740: .4byte 0x0000033F +_08071744: + lsls r0, r3, #1 + adds r0, r1, r0 + str r0, [r2] +_0807174A: + mov r0, r8 + lsls r1, r0, #1 + ldr r0, [r5, #0x34] +_08071750: + subs r0, r0, r1 + str r0, [r5, #0x34] +_08071754: + ldr r1, [r4] + ldr r2, [r2] + adds r0, r5, #0 + movs r3, #0 + bl sub_0805EC9C + adds r0, r5, #0 + bl UpdateAnimationSingleFrame + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} + .syntax divided diff --git a/asm/non_matching/save/sub_08050B3C.inc b/asm/non_matching/save/sub_08050B3C.inc index a3b5b6b3..356b8a6c 100644 --- a/asm/non_matching/save/sub_08050B3C.inc +++ b/asm/non_matching/save/sub_08050B3C.inc @@ -122,4 +122,4 @@ _08050C1C: .4byte 0x0000F24C _08050C20: .4byte 0x040000D4 _08050C24: .4byte gUnk_080FC914 _08050C28: .4byte 0xFFFFF24D - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/non_matching/sub_080560B8.inc b/asm/non_matching/sub_080560B8.inc index 29ca150f..73872d2a 100644 --- a/asm/non_matching/sub_080560B8.inc +++ b/asm/non_matching/sub_080560B8.inc @@ -54,7 +54,7 @@ _08056112: ldr r4, _0805612C @ =gUnk_02000010 adds r0, r4, #0 movs r1, #0x20 - bl MemClear32 + bl MemClear ldr r0, _08056130 @ =0x4D435A33 str r0, [r4] _08056124: diff --git a/asm/non_matching/textbox/sub_080564EC.inc b/asm/non_matching/textbox/sub_080564EC.inc index 4c3fdf84..e76e5fa6 100644 --- a/asm/non_matching/textbox/sub_080564EC.inc +++ b/asm/non_matching/textbox/sub_080564EC.inc @@ -2,14 +2,14 @@ push {r4, lr} ldr r0, _08056598 @ =gUnk_02036A40 movs r1, #8 - bl MemClear32 + bl MemClear ldr r0, _0805659C @ =gUnk_02024030 movs r1, #0x18 - bl MemClear32 + bl MemClear ldr r4, _080565A0 @ =gUnk_02022780 adds r0, r4, #0 movs r1, #0xa8 - bl MemClear32 + bl MemClear ldr r0, _080565A4 @ =gTextBox adds r1, r4, #0 movs r2, #0x20 @@ -87,4 +87,4 @@ _080565A4: .4byte gTextBox _080565A8: .4byte gSave _080565AC: .4byte gUnk_08107BE0 _080565B0: .4byte gUnk_02000D00 - .syntax divided
\ No newline at end of file + .syntax divided diff --git a/asm/object3D.s b/asm/object3D.s index a6dbf01d..07297cfa 100644 --- a/asm/object3D.s +++ b/asm/object3D.s @@ -170,7 +170,7 @@ sub_0808D030: @ 0x0808D030 adds r0, r4, #0 subs r0, #0x20 ldr r1, _0808D05C @ =0x00000B74 - bl MemClear32 + bl MemClear movs r1, #0xa8 lsls r1, r1, #2 adds r0, r1, #0 diff --git a/asm/object3E.s b/asm/object3E.s index 786ee7ba..ee4b5d42 100644 --- a/asm/object3E.s +++ b/asm/object3E.s @@ -247,7 +247,7 @@ sub_0808D280: @ 0x0808D280 movs r1, #0x3e movs r2, #6 movs r3, #9 - bl FindEntityInListByForm + bl FindEntity adds r2, r0, #0 cmp r2, #0 beq _0808D2C4 @@ -287,7 +287,7 @@ sub_0808D2CC: @ 0x0808D2CC movs r1, #0x3e movs r2, #6 movs r3, #1 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _0808D2F2 diff --git a/asm/object6A.s b/asm/object6A.s index 761e95e4..fb464dcb 100644 --- a/asm/object6A.s +++ b/asm/object6A.s @@ -235,7 +235,7 @@ sub_08094BE0: @ 0x08094BE0 movs r1, #0x6a movs r2, #6 movs r3, #0x22 - bl FindEntityInListByForm + bl FindEntity adds r4, r0, #0 cmp r4, #0 beq _08094C22 @@ -390,7 +390,7 @@ sub_08094D10: @ 0x08094D10 movs r1, #0x6a movs r2, #6 movs r3, #3 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _08094D2E @@ -442,7 +442,7 @@ sub_08094D70: @ 0x08094D70 movs r1, #0x6a movs r2, #6 movs r3, #0x15 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _08094D8E @@ -527,7 +527,7 @@ sub_08094E0C: @ 0x08094E0C movs r1, #0x6a movs r2, #6 movs r3, #4 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _08094E2A @@ -951,7 +951,7 @@ sub_08095164: @ 0x08095164 movs r1, #0x6a movs r2, #6 movs r3, #8 - bl FindEntityInListByForm + bl FindEntity cmp r0, #0 beq _08095182 movs r1, #3 @@ -2103,7 +2103,7 @@ sub_08095A68: @ 0x08095A68 movs r1, #0x6a movs r2, #6 movs r3, #0x16 - bl FindEntityInListByForm + bl FindEntity adds r1, r0, #0 cmp r1, #0 beq _08095A86 diff --git a/asm/object87.s b/asm/object87.s index f4bf6ed0..2af555eb 100644 --- a/asm/object87.s +++ b/asm/object87.s @@ -968,13 +968,13 @@ sub_0809A648: @ 0x0809A648 lsls r5, r5, #8 asrs r5, r5, #0x10 adds r1, r5, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r4, #0x80 lsls r4, r4, #1 adds r1, r4, #0 - bl sub_0806FA04 + bl FixedDiv ldr r1, [r7, #0x50] lsls r0, r0, #0x10 asrs r0, r0, #8 @@ -989,11 +989,11 @@ sub_0809A648: @ 0x0809A648 movs r2, #0 ldrsh r0, [r0, r2] adds r1, r5, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r4, #0 - bl sub_0806FA04 + bl FixedDiv ldr r1, [r7, #0x50] lsls r0, r0, #0x10 asrs r0, r0, #8 diff --git a/asm/object91.s b/asm/object91.s index 80fbd82d..35eb581d 100644 --- a/asm/object91.s +++ b/asm/object91.s @@ -1024,13 +1024,13 @@ sub_0809CB70: @ 0x0809CB70 lsls r5, r5, #0x10 asrs r5, r5, #0x10 adds r1, r5, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r1, #0x80 lsls r1, r1, #1 mov r8, r1 - bl sub_0806FA04 + bl FixedDiv ldr r1, [r6, #0x50] lsls r0, r0, #0x10 asrs r0, r0, #8 @@ -1043,11 +1043,11 @@ sub_0809CB70: @ 0x0809CB70 movs r1, #0 ldrsh r0, [r4, r1] adds r1, r5, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 mov r1, r8 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r6, #0x50] lsls r0, r0, #0x10 asrs r0, r0, #8 diff --git a/asm/object97.s b/asm/object97.s index 0da8dbe7..380c921b 100644 --- a/asm/object97.s +++ b/asm/object97.s @@ -62,7 +62,7 @@ sub_0809D9D8: @ 0x0809D9D8 bl InitAnimationForceUpdate adds r0, r4, #0 movs r1, #6 - bl FindNextEntityOfSameSubtype + bl FindNextDuplicateID cmp r0, #0 beq _0809DA1E str r4, [r0, #0x50] @@ -436,7 +436,7 @@ sub_0809DC80: @ 0x0809DC80 bl InitAnimationForceUpdate adds r0, r4, #0 movs r1, #6 - bl FindNextEntityOfSameSubtype + bl FindNextDuplicateID cmp r0, #0 beq _0809DD00 str r4, [r0, #0x50] @@ -1141,7 +1141,7 @@ sub_0809E238: @ 0x0809E238 adds r5, #0x6c movs r2, #0 ldrsh r1, [r5, r2] - bl sub_0806F9EC + bl FixedMul adds r4, r0, #0 lsls r4, r4, #0x10 asrs r4, r4, #0x10 @@ -1154,7 +1154,7 @@ sub_0809E238: @ 0x0809E238 ldrsh r0, [r0, r2] movs r2, #0 ldrsh r1, [r5, r2] - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r7, #0 diff --git a/asm/objectB.s b/asm/objectB.s index e7f17d89..cfb07492 100644 --- a/asm/objectB.s +++ b/asm/objectB.s @@ -281,7 +281,7 @@ _08083DA0: _08083DA8: .4byte gSave _08083DAC: ldrb r0, [r4, #0xa] - bl sub_080544DC + bl GetBottleContaining adds r1, r0, #0 cmp r1, #0 beq _08083DC8 diff --git a/asm/octorokBoss.s b/asm/octorokBoss.s index 419c15ac..e9a21351 100644 --- a/asm/octorokBoss.s +++ b/asm/octorokBoss.s @@ -597,13 +597,13 @@ _08035616: adds r1, r4, #0 ands r1, r2 lsls r1, r1, #8 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r5, #0x80 lsls r5, r5, #1 adds r1, r5, #0 - bl sub_0806FA04 + bl FixedDiv lsrs r0, r0, #8 adds r1, r7, #0 adds r1, #0x62 @@ -619,11 +619,11 @@ _08035616: ands r4, r1 lsls r4, r4, #8 adds r1, r4, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r5, #0 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #8 rsbs r0, r0, #0 @@ -3086,13 +3086,13 @@ sub_08036914: @ 0x08036914 lsls r6, r6, #0x10 asrs r6, r6, #0x10 adds r1, r6, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r1, #0x80 lsls r1, r1, #1 mov r8, r1 - bl sub_0806FA04 + bl FixedDiv ldr r1, [r5, #0x50] lsls r0, r0, #0x10 asrs r0, r0, #8 @@ -3105,11 +3105,11 @@ sub_08036914: @ 0x08036914 movs r1, #0 ldrsh r0, [r4, r1] adds r1, r6, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 mov r1, r8 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r5, #0x50] lsls r0, r0, #0x10 asrs r0, r0, #8 @@ -3270,11 +3270,11 @@ _08036A78: movs r1, #0 ldrsh r0, [r0, r1] adds r1, r6, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r7, #0 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r5] ldr r1, [r5, #4] lsls r0, r0, #0x10 @@ -3293,11 +3293,11 @@ _08036A78: movs r1, #0 ldrsh r0, [r0, r1] adds r1, r6, #0 - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 adds r1, r7, #0 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r5] ldr r1, [r5, #4] lsls r0, r0, #0x10 @@ -3386,12 +3386,12 @@ _08036B48: movs r3, #0 ldrsh r0, [r0, r3] mov r1, sl - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r1, #0x80 lsls r1, r1, #1 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r5] ldr r1, [r6] lsls r0, r0, #0x10 @@ -3409,12 +3409,12 @@ _08036B48: movs r2, #0 ldrsh r0, [r0, r2] mov r1, sl - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r1, #0x80 lsls r1, r1, #1 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r5] ldr r1, [r6] b _08036C6E @@ -3475,12 +3475,12 @@ _08036C0E: movs r2, #0 ldrsh r0, [r0, r2] mov r1, sl - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r1, #0x80 lsls r1, r1, #1 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r4] adds r5, r6, r7 ldr r1, [r5] @@ -3499,12 +3499,12 @@ _08036C0E: movs r1, #0 ldrsh r0, [r0, r1] mov r1, sl - bl sub_0806F9EC + bl FixedMul lsls r0, r0, #0x10 asrs r0, r0, #0x10 movs r1, #0x80 lsls r1, r1, #1 - bl sub_0806FA04 + bl FixedDiv ldr r2, [r4] ldr r1, [r5] _08036C6E: @@ -235,7 +235,7 @@ sub_08063C14: @ 0x08063C14 push {lr} movs r0, #7 movs r1, #0x14 - bl FindEntityBySubtype + bl DeepFindEntityByID cmp r0, #0 beq _08063C28 movs r1, #8 @@ -249,7 +249,7 @@ sub_08063C2C: @ 0x08063C2C push {lr} movs r0, #7 movs r1, #0x14 - bl FindEntityBySubtype + bl DeepFindEntityByID cmp r0, #0 beq _08063C40 movs r1, #4 @@ -263,7 +263,7 @@ sub_08063C44: @ 0x08063C44 push {lr} movs r0, #7 movs r1, #0x14 - bl FindEntityBySubtype + bl DeepFindEntityByID cmp r0, #0 beq _08063C58 movs r1, #0 @@ -277,7 +277,7 @@ sub_08063C5C: @ 0x08063C5C push {lr} movs r0, #7 movs r1, #0x14 - bl FindEntityBySubtype + bl DeepFindEntityByID cmp r0, #0 beq _08063C70 movs r1, #9 @@ -291,7 +291,7 @@ sub_08063C74: @ 0x08063C74 push {lr} movs r0, #7 movs r1, #0x14 - bl FindEntityBySubtype + bl DeepFindEntityByID cmp r0, #0 beq _08063C8C movs r2, #0x18 @@ -938,7 +938,7 @@ _0806AAEE: adds r0, #0xac ldr r0, [r0] movs r1, #7 - bl FindNextEntityOfSameSubtype + bl FindNextDuplicateID adds r1, r0, #0 adds r0, r4, #0 adds r0, #0xb0 @@ -948,7 +948,7 @@ _0806AB02: adds r0, #0xb0 ldr r0, [r0] movs r1, #7 - bl FindNextEntityOfSameSubtype + bl FindNextDuplicateID adds r1, r0, #0 mov r0, r8 adds r0, #0xb4 @@ -1041,7 +1041,7 @@ sub_0806AB9C: @ 0x0806AB9C movs r1, #0x37 movs r2, #7 movs r3, #1 - bl FindEntityInListByForm + bl FindEntity cmp r0, #0 beq _0806ABBC bl DeleteEntity diff --git a/asm/zeldaFollower.s b/asm/zeldaFollower.s index 34f0cbf1..51994bf1 100644 --- a/asm/zeldaFollower.s +++ b/asm/zeldaFollower.s @@ -378,7 +378,7 @@ sub_08068578: @ 0x08068578 lsls r0, r1, #0x10 asrs r0, r0, #0x10 movs r1, #0x14 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #0x10 mov sl, r0 @@ -386,7 +386,7 @@ sub_08068578: @ 0x08068578 lsls r0, r2, #0x10 asrs r0, r0, #0x10 movs r1, #0x14 - bl sub_0806FA04 + bl FixedDiv lsls r0, r0, #0x10 asrs r0, r0, #0x10 mov r8, r0 |
