diff options
Diffstat (limited to 'arm9/asm')
47 files changed, 450 insertions, 1426 deletions
diff --git a/arm9/asm/CARD_backup.s b/arm9/asm/CARD_backup.s index ddbb5c63..32e6bc2a 100644 --- a/arm9/asm/CARD_backup.s +++ b/arm9/asm/CARD_backup.s @@ -24,10 +24,10 @@ _020D6DA8: .word cardi_common arm_func_start CARD_TryWaitBackupAsync CARD_TryWaitBackupAsync: ; 0x020D6DAC - ldr ip, _020D6DB4 ; =FUN_020D6714 + ldr ip, _020D6DB4 ; =CARDi_TryWaitAsync bx r12 .balign 4 -_020D6DB4: .word FUN_020D6714 +_020D6DB4: .word CARDi_TryWaitAsync arm_func_start CARD_WaitBackupAsync CARD_WaitBackupAsync: ; 0x020D6DB8 @@ -250,14 +250,11 @@ _020D7094: cmp r7, #0x3 addls pc, pc, r7, lsl #0x2 b _020D7124 -_020D70A0: - b _020D70B0 -_020D70A4: - b _020D70D4 -_020D70A8: - b _020D70D4 -_020D70AC: - b _020D710C + ; jump table + b _020D70B0 ; case 0 + b _020D70D4 ; case 1 + b _020D70D4 ; case 2 + b _020D710C ; case 3 _020D70B0: mov r1, r5 add r0, r9, #0x120 diff --git a/arm9/asm/CARD_common.s b/arm9/asm/CARD_common.s index 37c24188..42bce178 100644 --- a/arm9/asm/CARD_common.s +++ b/arm9/asm/CARD_common.s @@ -68,9 +68,8 @@ CARD_GetResultCode: ; 0x020D6700 .balign 4 _020D6710: .word cardi_common -;CARDi_TryWaitAsync? - arm_func_start FUN_020D6714 -FUN_020D6714: ; 0x020D6714 + arm_func_start CARDi_TryWaitAsync +CARDi_TryWaitAsync: ; 0x020D6714 ldr r0, _020D672C ; =cardi_common ldr r0, [r0, #0x114] ands r0, r0, #0x4 diff --git a/arm9/asm/CTRDG.s b/arm9/asm/CTRDG.s index 3cc4dadd..dc60582b 100644 --- a/arm9/asm/CTRDG.s +++ b/arm9/asm/CTRDG.s @@ -18,13 +18,11 @@ CTRDG_CheckEnabled: stmdb sp!, {lr} sub sp, sp, #0x4 bl CTRDG_IsOptionCartridge -_020DB128: ; 0x020DB128 cmp r0, #0x0 addne sp, sp, #0x4 ldmneia sp!, {lr} bxne lr bl CTRDG_IsEnabled -_020DB13C: ; 0x020DB13C cmp r0, #0x0 addne sp, sp, #0x4 ldmneia sp!, {lr} @@ -44,7 +42,6 @@ CTRDG_Enable: ; 0x020DB15C mov r4, r0 str r5, [r1, #0x0] bl CTRDG_IsOptionCartridge -_020DB17C: ; 0x020DB17C cmp r0, #0x0 bne _020DB198 cmp r5, #0x0 @@ -78,7 +75,6 @@ CTRDGi_AccessCommon: ; 0x020DB1C0 mov r5, r2 mov r4, r3 bl CTRDG_IsExisting -_020DB1DC: ; 0x020DB1DC cmp r0, #0x0 addeq sp, sp, #0x4 moveq r0, #0x0 @@ -137,7 +133,6 @@ _020DB294: ldrh r0, [r0, #0x2] bl OS_UnLockCartridge bl CTRDG_IsExisting -_020DB2A4: ; 0x020DB2A4 cmp r0, #0x0 movne r0, #0x1 moveq r0, #0x0 @@ -166,7 +161,6 @@ CTRDGi_CopyCommon: ; 0x020DB2D8 mov r5, r2 mov r4, r3 bl CTRDG_IsExisting -_020DB2F4: ; 0x020DB2F4 cmp r0, #0x0 addeq sp, sp, #0x4 moveq r0, #0x0 @@ -250,7 +244,6 @@ _020DB404: ldrh r0, [r0, #0x2] bl OS_UnLockCartridge bl CTRDG_IsExisting -_020DB414: ; 0x020DB414 cmp r0, #0x0 movne r0, #0x1 moveq r0, #0x0 @@ -333,7 +326,6 @@ CTRDGi_SendtoPxi: ; 0x020DB504 mov r0, #0xd mov r2, #0x0 bl PXI_SendWordByFifo -_020DB520: ; 0x020DB520 cmp r0, #0x0 addeq sp, sp, #0x4 ldmeqia sp!, {r4-r7,lr} @@ -348,7 +340,6 @@ _020DB53C: mov r1, r7 mov r2, r4 bl PXI_SendWordByFifo -_020DB554: ; 0x020DB554 cmp r0, #0x0 bne _020DB53C add sp, sp, #0x4 @@ -391,7 +382,6 @@ _020DB5A8: bxne lr mov r0, r7 bl OS_TryLockCartridge -_020DB5DC: ; 0x020DB5DC cmp r0, #0x0 addeq sp, sp, #0x4 ldmeqia sp!, {r4-r7,lr} @@ -560,7 +550,6 @@ CTRDGi_GetAgbMakerCodeAtInit: ; 0x020DB808 stmdb sp!, {r4,lr} mov r4, #0x0 bl CTRDGi_IsAgbCartridgeAtInit -_020DB814: ; 0x020DB814 cmp r0, #0x0 ldrne r0, _020DB82C ; =0x027FFC30 ldrneh r4, [r0, #0x6] @@ -575,7 +564,6 @@ CTRDG_GetAgbMakerCode: ; 0x020DB830 stmdb sp!, {r4,lr} mov r4, #0x0 bl CTRDG_IsExisting -_020DB83C: ; 0x020DB83C cmp r0, #0x0 beq _020DB84C bl CTRDGi_GetAgbMakerCodeAtInit @@ -590,7 +578,6 @@ CTRDGi_GetAgbGameCodeAtInit: ; 0x020DB858 stmdb sp!, {r4,lr} mov r4, #0x0 bl CTRDGi_IsAgbCartridgeAtInit -_020DB864: ; 0x020DB864 cmp r0, #0x0 ldrne r0, _020DB87C ; =0x027FFC30 ldrne r4, [r0, #0x8] @@ -605,7 +592,6 @@ CTRDG_GetAgbGameCode: ; 0x020DB880 stmdb sp!, {r4,lr} mov r4, #0x0 bl CTRDG_IsExisting -_020DB88C: ; 0x020DB88C cmp r0, #0x0 beq _020DB89C bl CTRDGi_GetAgbGameCodeAtInit @@ -630,11 +616,9 @@ CTRDG_IsOptionCartridge: stmdb sp!, {lr} sub sp, sp, #0x4 bl CTRDG_IsExisting -_020DB8CC: ; 0x020DB8CC cmp r0, #0x0 beq _020DB8EC bl CTRDGi_IsAgbCartridgeAtInit -_020DB8D8: ; 0x020DB8D8 cmp r0, #0x0 addeq sp, sp, #0x4 moveq r0, #0x1 @@ -651,11 +635,9 @@ CTRDG_IsAgbCartridge: ; 0x020DB8FC stmdb sp!, {lr} sub sp, sp, #0x4 bl CTRDG_IsExisting -_020DB908: ; 0x020DB908 cmp r0, #0x0 beq _020DB928 bl CTRDGi_IsAgbCartridgeAtInit -_020DB914: ; 0x020DB914 cmp r0, #0x0 addne sp, sp, #0x4 movne r0, #0x1 diff --git a/arm9/asm/WM_standard.s b/arm9/asm/WM_standard.s index fe00e8fa..5d7e8db9 100644 --- a/arm9/asm/WM_standard.s +++ b/arm9/asm/WM_standard.s @@ -20,7 +20,6 @@ WM_Disconnect: ; 0x020D9060 mov r3, #0x8 str r12, [sp, #0x4] bl WMi_CheckStateEx -_020D909C: ; 0x020D909C cmp r0, #0x0 addne sp, sp, #0x8 ldmneia sp!, {r4-r6,lr} @@ -71,7 +70,6 @@ _020D9134: mov r2, r1, lsl r5 mov r0, #0xd bl WMi_SendCommand -_020D9150: ; 0x020D9150 cmp r0, #0x0 moveq r0, #0x2 add sp, sp, #0x8 @@ -91,7 +89,6 @@ WM_StartConnectEx: ; 0x020D9168 mov r5, r2 mov r4, r3 bl WMi_CheckStateEx -_020D918C: ; 0x020D918C cmp r0, #0x0 addne sp, sp, #0x2c ldmneia sp!, {r4-r7,lr} @@ -135,7 +132,6 @@ _020D9218: str r4, [sp, #0x20] strh r2, [sp, #0x26] bl WMi_SendCommandDirect -_020D9230: ; 0x020D9230 cmp r0, #0x0 moveq r0, #0x2 add sp, sp, #0x2c @@ -149,7 +145,6 @@ WM_EndScan: ; 0x020D9244 mov r0, #0x1 mov r1, #0x5 bl WMi_CheckStateEx -_020D9258: ; 0x020D9258 cmp r0, #0x0 ldmneia sp!, {r4,lr} bxne lr @@ -159,7 +154,6 @@ _020D9258: ; 0x020D9258 mov r0, #0xb mov r1, #0x0 bl WMi_SendCommand -_020D927C: ; 0x020D927C cmp r0, #0x0 moveq r0, #0x2 ldmia sp!, {r4,lr} @@ -176,7 +170,6 @@ WM_StartScanEx: ; 0x020D928C mov r1, #0x2 mov r3, #0x5 bl WMi_CheckStateEx -_020D92B0: ; 0x020D92B0 cmp r0, #0x0 addne sp, sp, #0x3c ldmneia sp!, {r4-r5,lr} @@ -257,11 +250,9 @@ _020D937C: ldrh r3, [r4, #0x12] strh r3, [sp, #0x14] bl MI_CpuCopy8 -_020D93E8: ; 0x020D93E8 add r0, sp, #0x0 mov r1, #0x3c bl WMi_SendCommandDirect -_020D93F4: ; 0x020D93F4 cmp r0, #0x0 moveq r0, #0x2 add sp, sp, #0x3c @@ -281,7 +272,6 @@ WM_StartScan: ; 0x020D940C mov r1, #0x2 mov r3, #0x5 bl WMi_CheckStateEx -_020D9430: ; 0x020D9430 cmp r0, #0x0 addne sp, sp, #0x14 ldmneia sp!, {r4-r5,lr} @@ -334,7 +324,6 @@ _020D9490: ldrb r2, [r4, #0xd] strb r2, [sp, #0xf] bl WMi_SendCommandDirect -_020D94F8: ; 0x020D94F8 cmp r0, #0x0 moveq r0, #0x2 add sp, sp, #0x14 @@ -348,7 +337,6 @@ WM_EndParent: ; 0x020D950C mov r0, #0x1 mov r1, #0x7 bl WMi_CheckStateEx -_020D9520: ; 0x020D9520 cmp r0, #0x0 ldmneia sp!, {r4,lr} bxne lr @@ -358,7 +346,6 @@ _020D9520: ; 0x020D9520 mov r0, #0x9 mov r1, #0x0 bl WMi_SendCommand -_020D9544: ; 0x020D9544 cmp r0, #0x0 moveq r0, #0x2 ldmia sp!, {r4,lr} @@ -381,7 +368,6 @@ WMi_StartParentEx: ; 0x020D9564 mov r0, #0x1 mov r1, #0x2 bl WMi_CheckStateEx -_020D9580: ; 0x020D9580 cmp r0, #0x0 addne sp, sp, #0x4 ldmneia sp!, {r4-r5,lr} @@ -398,7 +384,6 @@ _020D9580: ; 0x020D9580 mov r0, #0x8 mov r1, #0x1 bl WMi_SendCommand -_020D95C0: ; 0x020D95C0 cmp r0, #0x0 moveq r0, #0x2 add sp, sp, #0x4 @@ -441,7 +426,6 @@ WM_SetParentParameter: ; 0x020D9624 mov r0, #0x1 mov r1, #0x2 bl WMi_CheckStateEx -_020D9640: ; 0x020D9640 cmp r0, #0x0 addne sp, sp, #0x4 ldmneia sp!, {r4-r5,lr} @@ -500,7 +484,6 @@ _020D9708: mov r0, #0x7 mov r1, #0x1 bl WMi_SendCommand -_020D9718: ; 0x020D9718 cmp r0, #0x0 moveq r0, #0x2 add sp, sp, #0x4 @@ -514,7 +497,6 @@ WM_End: ; 0x020D972C mov r0, #0x1 mov r1, #0x2 bl WMi_CheckStateEx -_020D9740: ; 0x020D9740 cmp r0, #0x0 ldmneia sp!, {r4,lr} bxne lr @@ -524,7 +506,6 @@ _020D9740: ; 0x020D9740 mov r0, #0x2 mov r1, #0x0 bl WMi_SendCommand -_020D9764: ; 0x020D9764 cmp r0, #0x0 moveq r0, #0x2 ldmia sp!, {r4,lr} @@ -535,7 +516,6 @@ WM_Reset: ; 0x020D9774 stmdb sp!, {r4,lr} mov r4, r0 bl WMi_CheckIdle -_020D9780: ; 0x020D9780 cmp r0, #0x0 ldmneia sp!, {r4,lr} bxne lr @@ -545,7 +525,6 @@ _020D9780: ; 0x020D9780 mov r0, #0x1 mov r1, #0x0 bl WMi_SendCommand -_020D97A4: ; 0x020D97A4 cmp r0, #0x0 moveq r0, #0x2 ldmia sp!, {r4,lr} @@ -558,7 +537,6 @@ WM_Initialize: ; 0x020D97B4 mov r4, r1 mov r1, r2 bl WM_Init -_020D97C8: ; 0x020D97C8 cmp r0, #0x0 addne sp, sp, #0x8 ldmneia sp!, {r4,lr} @@ -575,7 +553,6 @@ _020D97C8: ; 0x020D97C8 ldr r3, [r3, #0x4] mov r1, #0x3 bl WMi_SendCommand -_020D9808: ; 0x020D9808 cmp r0, #0x0 moveq r0, #0x2 add sp, sp, #0x8 @@ -589,7 +566,6 @@ WM_PowerOff: ; 0x020D981C mov r0, #0x1 mov r1, #0x2 bl WMi_CheckStateEx -_020D9830: ; 0x020D9830 cmp r0, #0x0 ldmneia sp!, {r4,lr} bxne lr @@ -599,7 +575,6 @@ _020D9830: ; 0x020D9830 mov r0, #0x6 mov r1, #0x0 bl WMi_SendCommand -_020D9854: ; 0x020D9854 cmp r0, #0x0 moveq r0, #0x2 ldmia sp!, {r4,lr} @@ -612,7 +587,6 @@ WM_PowerOn: ; 0x020D9864 mov r0, #0x1 mov r1, r0 bl WMi_CheckStateEx -_020D9878: ; 0x020D9878 cmp r0, #0x0 ldmneia sp!, {r4,lr} bxne lr @@ -622,7 +596,6 @@ _020D9878: ; 0x020D9878 mov r0, #0x5 mov r1, #0x0 bl WMi_SendCommand -_020D989C: ; 0x020D989C cmp r0, #0x0 moveq r0, #0x2 ldmia sp!, {r4,lr} @@ -635,7 +608,6 @@ WM_Disable: ; 0x020D98AC mov r0, #0x1 mov r1, r0 bl WMi_CheckStateEx -_020D98C0: ; 0x020D98C0 cmp r0, #0x0 ldmneia sp!, {r4,lr} bxne lr @@ -645,7 +617,6 @@ _020D98C0: ; 0x020D98C0 mov r0, #0x4 mov r1, #0x0 bl WMi_SendCommand -_020D98E4: ; 0x020D98E4 cmp r0, #0x0 moveq r0, #0x2 ldmia sp!, {r4,lr} @@ -659,7 +630,6 @@ WM_Enable: ; 0x020D98F4 mov r0, #0x1 mov r1, #0x0 bl WMi_CheckStateEx -_020D990C: ; 0x020D990C cmp r0, #0x0 addne sp, sp, #0x8 ldmneia sp!, {r4,lr} @@ -676,7 +646,6 @@ _020D990C: ; 0x020D990C ldr r3, [r3, #0x4] mov r1, r0 bl WMi_SendCommand -_020D994C: ; 0x020D994C cmp r0, #0x0 moveq r0, #0x2 add sp, sp, #0x8 diff --git a/arm9/asm/save.s b/arm9/asm/save.s index 4278bd36..b825978e 100644 --- a/arm9/asm/save.s +++ b/arm9/asm/save.s @@ -21,7 +21,7 @@ UNK_020EE700: ; 0x020EE700 .word 0x00, 0x00, FUN_0202376C, FUN_02023770 .word 0x01, 0x00, Sav2_PlayerData_sizeof, Sav2_PlayerData_init .word 0x02, 0x00, SavArray_Party_sizeof, SavArray_Party_init - .word 0x03, 0x00, FUN_0206EB80, FUN_0206EBA0 + .word 0x03, 0x00, Sav2_Bag_sizeof, Sav2_Bag_init .word 0x04, 0x00, SavArray_Flags_sizeof, SavArray_Flags_init .word 0x05, 0x00, FUN_0204BE14, FUN_0204BE18 .word 0x06, 0x00, FUN_02034D7C, FUN_02034D98 @@ -63,8 +63,8 @@ UNK_021C59C8: ; 0x021C59C8 .text - thumb_func_start FUN_0202254C -FUN_0202254C: ; 0x0202254C + thumb_func_start SaveBlock2_new +SaveBlock2_new: ; 0x0202254C push {r4, lr} ldr r1, _020225E0 ; =0x000204A8 mov r0, #0x1 @@ -76,7 +76,7 @@ FUN_0202254C: ; 0x0202254C bl MIi_CpuClearFast ldr r0, _020225E4 ; =UNK_021C59C8 str r4, [r0, #0x0] - bl FUN_02023570 + bl SaveDetectFlash str r0, [r4, #0x0] mov r0, #0x0 str r0, [r4, #0x4] @@ -89,7 +89,7 @@ FUN_0202254C: ; 0x0202254C bl MATHi_CRC16InitTable ldr r0, _020225EC ; =0x00020224 add r0, r4, r0 - bl FUN_020230E4 + bl SaveBlock2_InitSubstructs ldr r0, _020225F0 ; =0x00020464 ldr r1, _020225EC ; =0x00020224 add r0, r4, r0 @@ -207,7 +207,7 @@ _02022660: _02022662: ldr r0, [sp, #0x0] mov r1, #0x0 - bl FUN_02023074 + bl FlashClobberChunkFooter ldr r1, _020226F8 ; =0x00020221 ldr r0, [sp, #0x0] ldrb r0, [r0, r1] @@ -220,19 +220,19 @@ _02022678: _0202267A: ldr r0, [sp, #0x0] mov r1, #0x1 - bl FUN_02023074 + bl FlashClobberChunkFooter ldr r0, [sp, #0x0] ldr r3, _020226F4 ; =0x00020220 add r2, r0, #0x0 ldrb r2, [r2, r3] mov r1, #0x0 - bl FUN_02023074 + bl FlashClobberChunkFooter ldr r0, [sp, #0x0] ldr r3, _020226F8 ; =0x00020221 add r2, r0, #0x0 ldrb r2, [r2, r3] mov r1, #0x1 - bl FUN_02023074 + bl FlashClobberChunkFooter mov r0, #0x0 mov r2, #0x1 mvn r0, r0 @@ -247,13 +247,13 @@ _020226B4: add r0, r5, #0x0 add r1, r6, #0x0 add r2, r7, #0x0 - bl FUN_020235D0 + bl FlashWriteChunk add r0, r4, #0x0 add r0, #0x40 lsl r0, r0, #0xc add r1, r6, #0x0 add r2, r7, #0x0 - bl FUN_020235D0 + bl FlashWriteChunk mov r0, #0x1 lsl r0, r0, #0xc add r4, r4, #0x1 @@ -323,7 +323,7 @@ _02022746: _02022748: add r0, r4, #0x0 mov r1, #0x0 - bl FUN_02023074 + bl FlashClobberChunkFooter ldr r0, _0202279C ; =0x00020221 ldrb r0, [r4, r0] cmp r0, #0x0 @@ -335,17 +335,17 @@ _0202275C: _0202275E: add r0, r4, #0x0 mov r1, #0x1 - bl FUN_02023074 + bl FlashClobberChunkFooter ldr r2, _02022798 ; =0x00020220 add r0, r4, #0x0 ldrb r2, [r4, r2] mov r1, #0x0 - bl FUN_02023074 + bl FlashClobberChunkFooter ldr r2, _0202279C ; =0x00020221 add r0, r4, #0x0 ldrb r2, [r4, r2] mov r1, #0x1 - bl FUN_02023074 + bl FlashClobberChunkFooter mov r0, #0x1 bl FUN_02016454 _02022784: @@ -526,8 +526,8 @@ FUN_02022898: ; 0x02022898 .balign 4 _020228A0: .word MATH_CalcCRC16CCITT - thumb_func_start FUN_020228A4 -FUN_020228A4: ; 0x020228A4 + thumb_func_start GetChunkOffsetFromCurrentSaveSlot +GetChunkOffsetFromCurrentSaveSlot: ; 0x020228A4 cmp r0, #0x0 bne _020228AC mov r2, #0x0 @@ -857,7 +857,7 @@ FUN_02022AD8: ; 0x02022AD8 mov r0, #0x0 add r1, r6, #0x0 lsl r2, r2, #0x10 - bl FUN_020235EC + bl FlashLoadChunk cmp r0, #0x0 add r0, sp, #0x2c beq _02022B20 @@ -880,7 +880,7 @@ _02022B2A: lsl r0, r0, #0x12 add r1, r4, #0x0 lsr r2, r0, #0x1 - bl FUN_020235EC + bl FlashLoadChunk cmp r0, #0x0 add r0, sp, #0x38 beq _02022B54 @@ -1105,30 +1105,31 @@ FUN_02022CF0: ; 0x02022CF0 push {r3-r5, lr} add r5, r1, #0x0 add r4, r2, #0x0 - bl FUN_020228A4 + bl GetChunkOffsetFromCurrentSaveSlot ldr r1, [r5, #0x4] ldr r2, [r5, #0x8] add r1, r4, r1 - bl FUN_020235EC + bl FlashLoadChunk pop {r3-r5, pc} .balign 4 thumb_func_start FUN_02022D08 FUN_02022D08: ; 0x02022D08 + ; BOOL FUN_02022D08(struct SaveBlock2 * sav2) { push {r3-r7, lr} add r5, r0, #0x0 - ldr r0, _02022D4C ; =0x00020464 - mov r7, #0x85 + ldr r0, _02022D4C ; =0x00020464 ; unk_20464 + mov r7, #0x85 ; dynamic_region mov r4, #0x0 add r6, r5, r0 - lsl r7, r7, #0x2 -_02022D16: - ldr r0, _02022D50 ; =0x00020220 + lsl r7, r7, #0x2 ; dynamic_region +_02022D16: ; for (int i = 0; i < 2; i++) { + ldr r0, _02022D50 ; =0x00020220 ; unk_20220 add r1, r5, r4 ldrb r0, [r1, r0] add r1, r6, #0x0 add r2, r5, r7 - bl FUN_02022CF0 + bl FUN_02022CF0 ; if (!FUN_02022CF0(sav2->unk_20220[i], &sav2->unk_20464[i], sav2->dynamic_region)) return FALSE; cmp r0, #0x0 bne _02022D2C mov r0, #0x0 @@ -1137,7 +1138,7 @@ _02022D2C: add r0, r5, #0x0 add r1, r5, r7 add r2, r4, #0x0 - bl FUN_020228E0 + bl FUN_020228E0 ; if (!FUN_020228E0(sav2, sav2->dynamic_region, i)) return FALSE; cmp r0, #0x0 bne _02022D3E mov r0, #0x0 @@ -1146,8 +1147,8 @@ _02022D3E: add r4, r4, #0x1 add r6, #0xc cmp r4, #0x2 - blt _02022D16 - mov r0, #0x1 + blt _02022D16 ; } + mov r0, #0x1 ; return TRUE; } pop {r3-r7, pc} nop _02022D4C: .word 0x00020464 @@ -1171,7 +1172,7 @@ FUN_02022D54: ; 0x02022D54 bl FUN_02022968 add r0, r6, #0x0 add r1, r4, #0x0 - bl FUN_020228A4 + bl GetChunkOffsetFromCurrentSaveSlot mov r1, #0x85 lsl r1, r1, #0x2 add r2, r5, r1 @@ -1179,7 +1180,7 @@ FUN_02022D54: ; 0x02022D54 add r1, r2, r1 ldr r2, [r4, #0x8] sub r2, #0x14 - bl FUN_02023668 + bl FlashWriteChunkInternal pop {r4-r6, pc} nop _02022D90: .word 0x00020464 @@ -1196,7 +1197,7 @@ FUN_02022D94: ; 0x02022D94 add r0, r2, #0x0 add r1, r4, #0x0 ldr r5, [r4, #0x8] - bl FUN_020228A4 + bl GetChunkOffsetFromCurrentSaveSlot mov r1, #0x2 lsl r1, r1, #0x8 add r2, r6, r1 @@ -1206,7 +1207,7 @@ FUN_02022D94: ; 0x02022D94 sub r0, #0x14 add r1, r1, r5 mov r2, #0x14 - bl FUN_02023668 + bl FlashWriteChunkInternal pop {r4-r6, pc} .balign 4 _02022DC4: .word 0x00020464 @@ -1223,7 +1224,7 @@ FUN_02022DC8: ; 0x02022DC8 add r0, r2, #0x0 add r1, r4, #0x0 ldr r5, [r4, #0x8] - bl FUN_020228A4 + bl GetChunkOffsetFromCurrentSaveSlot mov r1, #0x82 lsl r1, r1, #0x2 add r2, r6, r1 @@ -1233,7 +1234,7 @@ FUN_02022DC8: ; 0x02022DC8 sub r0, #0xc add r1, r1, r5 mov r2, #0x8 - bl FUN_02023668 + bl FlashWriteChunkInternal pop {r4-r6, pc} .balign 4 _02022DF8: .word 0x00020464 @@ -1348,7 +1349,7 @@ _02022EAE: _02022EC0: ldr r0, [r4, #0x10] add r1, sp, #0x0 - bl FUN_020236E4 + bl WaitFlashWrite cmp r0, #0x0 beq _02022F78 ldr r0, [sp, #0x0] @@ -1383,7 +1384,7 @@ _02022EEE: _02022F00: ldr r0, [r4, #0x10] add r1, sp, #0x0 - bl FUN_020236E4 + bl WaitFlashWrite cmp r0, #0x0 beq _02022F78 ldr r0, [sp, #0x0] @@ -1425,7 +1426,7 @@ _02022F3C: _02022F4E: ldr r0, [r4, #0x10] add r1, sp, #0x0 - bl FUN_020236E4 + bl WaitFlashWrite cmp r0, #0x0 beq _02022F78 ldr r0, [sp, #0x0] @@ -1581,8 +1582,8 @@ _02023054: add sp, #0x24 pop {r3-r6, pc} - thumb_func_start FUN_02023074 -FUN_02023074: ; 0x02023074 + thumb_func_start FlashClobberChunkFooter +FlashClobberChunkFooter: ; 0x02023074 push {r4-r5, lr} sub sp, #0x14 add r4, r2, #0x0 @@ -1597,13 +1598,13 @@ FUN_02023074: ; 0x02023074 bl MI_CpuFill8 add r0, r4, #0x0 add r1, r5, #0x0 - bl FUN_020228A4 + bl GetChunkOffsetFromCurrentSaveSlot ldr r1, [r5, #0x8] mov r2, #0x14 add r0, r1, r0 sub r0, #0x14 add r1, sp, #0x0 - bl FUN_020235D0 + bl FlashWriteChunk add sp, #0x14 pop {r4-r5, pc} .balign 4 @@ -1638,8 +1639,8 @@ _020230BE: _020230DC: .word UNK_020EE6DC _020230E0: .word UNK_020EE700 - thumb_func_start FUN_020230E4 -FUN_020230E4: ; 0x020230E4 + thumb_func_start SaveBlock2_InitSubstructs +SaveBlock2_InitSubstructs: ; 0x020230E4 push {r3-r7, lr} sub sp, #0x8 add r5, r0, #0x0 @@ -1829,8 +1830,9 @@ _0202323A: _02023240: .word UNK_020EE700 _02023244: .word UNK_020EE6DC - thumb_func_start FUN_02023248 -FUN_02023248: ; 0x02023248 + thumb_func_start CreateChunkFooter +CreateChunkFooter: ; 0x02023248 + ; void CreateChunkFooter(struct SaveBlock2 * sav2, void * data, u16 id, u32 size) push {r3-r5, lr} ldr r5, _0202326C ; =0x20060623 add r4, r1, r3 @@ -1851,8 +1853,8 @@ FUN_02023248: ; 0x02023248 _0202326C: .word 0x20060623 _02023270: .word 0x000204A4 - thumb_func_start FUN_02023274 -FUN_02023274: ; 0x02023274 + thumb_func_start ValidateChunk +ValidateChunk: ; 0x02023274 push {r4-r6, lr} ldr r6, [r1, r3] ldr r5, _020232B0 ; =0x20060623 @@ -1896,8 +1898,8 @@ FUN_020232B4: ; 0x020232B4 bx lr .balign 4 - thumb_func_start FUN_020232BC -FUN_020232BC: ; 0x020232BC + thumb_func_start WriteSaveFileToFlash +WriteSaveFileToFlash: ; 0x020232BC push {r3-r7, lr} sub sp, #0x8 add r7, r0, #0x0 @@ -1934,12 +1936,12 @@ _020232E8: add r0, r7, #0x0 add r1, r6, #0x0 add r2, r5, #0x0 - bl FUN_02023248 + bl CreateChunkFooter ldr r0, [r4, #0x4] ldr r2, [sp, #0x4] lsl r0, r0, #0xc add r1, r6, #0x0 - bl FUN_020235D0 + bl FlashWriteChunk str r0, [sp, #0x0] ldr r0, [r4, #0x8] blx r0 @@ -1947,7 +1949,7 @@ _020232E8: add r0, r7, #0x0 add r1, r6, #0x0 add r2, r5, #0x0 - bl FUN_02023274 + bl ValidateChunk cmp r0, #0x1 beq _02023330 bl ErrorHandling @@ -1958,13 +1960,13 @@ _02023330: add r0, r7, #0x0 add r1, r6, #0x0 add r2, r5, #0x0 - bl FUN_02023248 + bl CreateChunkFooter ldr r0, [r4, #0x4] ldr r2, [sp, #0x4] add r0, #0x40 lsl r0, r0, #0xc add r1, r6, #0x0 - bl FUN_020235D0 + bl FlashWriteChunk ldr r1, [sp, #0x0] orr r0, r1 str r0, [sp, #0x0] @@ -1974,7 +1976,7 @@ _02023330: add r0, r7, #0x0 add r1, r6, #0x0 add r2, r5, #0x0 - bl FUN_02023274 + bl ValidateChunk cmp r0, #0x1 beq _020233DE bl ErrorHandling @@ -1985,13 +1987,13 @@ _0202336E: add r0, r7, #0x0 add r1, r6, #0x0 add r2, r5, #0x0 - bl FUN_02023248 + bl CreateChunkFooter ldr r0, [r4, #0x4] ldr r2, [sp, #0x4] add r0, #0x40 lsl r0, r0, #0xc add r1, r6, #0x0 - bl FUN_020235D0 + bl FlashWriteChunk str r0, [sp, #0x0] ldr r0, [r4, #0x8] blx r0 @@ -1999,7 +2001,7 @@ _0202336E: add r0, r7, #0x0 add r1, r6, #0x0 add r2, r5, #0x0 - bl FUN_02023274 + bl ValidateChunk cmp r0, #0x1 beq _020233A4 bl ErrorHandling @@ -2010,12 +2012,12 @@ _020233A4: add r0, r7, #0x0 add r1, r6, #0x0 add r2, r5, #0x0 - bl FUN_02023248 + bl CreateChunkFooter ldr r0, [r4, #0x4] ldr r2, [sp, #0x4] lsl r0, r0, #0xc add r1, r6, #0x0 - bl FUN_020235D0 + bl FlashWriteChunk ldr r1, [sp, #0x0] orr r0, r1 str r0, [sp, #0x0] @@ -2025,7 +2027,7 @@ _020233A4: add r0, r7, #0x0 add r1, r6, #0x0 add r2, r5, #0x0 - bl FUN_02023274 + bl ValidateChunk cmp r0, #0x1 beq _020233DE bl ErrorHandling @@ -2049,8 +2051,8 @@ _020233FC: .word UNK_020EE6D8 _02023400: .word UNK_020EE6E0 _02023404: .word 0x000204A0 - thumb_func_start FUN_02023408 -FUN_02023408: ; 0x02023408 + thumb_func_start ReadSaveFileFromFlash +ReadSaveFileFromFlash: ; 0x02023408 push {r4-r7, lr} sub sp, #0x14 add r5, r0, #0x0 @@ -2084,14 +2086,14 @@ _02023430: ldr r2, [sp, #0x10] lsl r0, r0, #0xc add r1, r6, #0x0 - bl FUN_020235EC + bl FlashLoadChunk ldr r0, [r4, #0x8] blx r0 add r3, r0, #0x0 add r0, r5, #0x0 add r1, r6, #0x0 add r2, r7, #0x0 - bl FUN_02023274 + bl ValidateChunk str r0, [sp, #0xc] ldr r0, [r4, #0x8] blx r0 @@ -2104,14 +2106,14 @@ _02023430: add r0, #0x40 lsl r0, r0, #0xc add r1, r6, #0x0 - bl FUN_020235EC + bl FlashLoadChunk ldr r0, [r4, #0x8] blx r0 add r3, r0, #0x0 add r0, r5, #0x0 add r1, r6, #0x0 add r2, r7, #0x0 - bl FUN_02023274 + bl ValidateChunk add r7, r0, #0x0 ldr r0, [r4, #0x8] blx r0 @@ -2137,7 +2139,7 @@ _02023430: ldr r0, [r4, #0x4] add r1, r6, #0x0 lsl r0, r0, #0xc - bl FUN_020235EC + bl FlashLoadChunk add sp, #0x14 add r0, r6, #0x0 pop {r4-r7, pc} @@ -2158,7 +2160,7 @@ _020234CC: add r1, r6, #0x0 add r0, #0x40 lsl r0, r0, #0xc - bl FUN_020235EC + bl FlashLoadChunk add sp, #0x14 add r0, r6, #0x0 pop {r4-r7, pc} @@ -2185,7 +2187,7 @@ _020234F6: ldr r0, [r4, #0x4] add r1, r6, #0x0 lsl r0, r0, #0xc - bl FUN_020235EC + bl FlashLoadChunk add sp, #0x14 add r0, r6, #0x0 pop {r4-r7, pc} @@ -2200,7 +2202,7 @@ _0202352E: add r1, r6, #0x0 add r0, #0x40 lsl r0, r0, #0xc - bl FUN_020235EC + bl FlashLoadChunk add sp, #0x14 add r0, r6, #0x0 pop {r4-r7, pc} @@ -2221,8 +2223,8 @@ _02023564: .word UNK_020EE6D8 _02023568: .word UNK_020EE6E0 _0202356C: .word 0x000204A0 - thumb_func_start FUN_02023570 -FUN_02023570: ; 0x02023570 + thumb_func_start SaveDetectFlash +SaveDetectFlash: ; 0x02023570 push {r3-r5, lr} bl OS_GetLockID add r4, r0, #0x0 @@ -2268,24 +2270,24 @@ _020235C2: _020235C8: .word 0x00001302 _020235CC: .word 0x00001202 - thumb_func_start FUN_020235D0 -FUN_020235D0: ; 0x020235D0 + thumb_func_start FlashWriteChunk +FlashWriteChunk: ; 0x020235D0 push {r3-r5, lr} - bl FUN_02023668 + bl FlashWriteChunkInternal add r5, r0, #0x0 add r4, sp, #0x0 _020235DA: add r0, r5, #0x0 add r1, r4, #0x0 - bl FUN_020236E4 + bl WaitFlashWrite cmp r0, #0x0 beq _020235DA ldr r0, [sp, #0x0] pop {r3-r5, pc} .balign 4 - thumb_func_start FUN_020235EC -FUN_020235EC: ; 0x020235EC + thumb_func_start FlashLoadChunk +FlashLoadChunk: ; 0x020235EC push {r4-r7, lr} sub sp, #0x14 add r5, r0, #0x0 @@ -2306,7 +2308,7 @@ _02023608: str r3, [sp, #0x0] mov r1, #0x1 str r1, [sp, #0x4] - mov r0, #0x6 + mov r0, #0x6 ; CARD_REQ_READ_BACKUP str r0, [sp, #0x8] str r1, [sp, #0xc] add r0, r5, #0x0 @@ -2336,8 +2338,8 @@ _02023652: .balign 4 _02023658: .word UNK_021C59C8 - thumb_func_start FUN_0202365C -FUN_0202365C: ; 0x0202365C + thumb_func_start FlashWriteCommandCallback +FlashWriteCommandCallback: ; 0x0202365C ldr r0, _02023664 ; =UNK_021C59C8 mov r1, #0x1 str r1, [r0, #0x4] @@ -2345,8 +2347,8 @@ FUN_0202365C: ; 0x0202365C .balign 4 _02023664: .word UNK_021C59C8 - thumb_func_start FUN_02023668 -FUN_02023668: ; 0x02023668 + thumb_func_start FlashWriteChunkInternal +FlashWriteChunkInternal: ; 0x02023668 push {r3-r7, lr} sub sp, #0x18 add r5, r0, #0x0 @@ -2366,7 +2368,7 @@ _02023684: mov r0, #0x0 str r0, [sp, #0x0] str r0, [sp, #0x4] - mov r1, #0x6 + mov r1, #0x6 ; CARD_REQ_READ_BACKUP str r1, [sp, #0x8] mov r1, #0x1 str r1, [sp, #0xc] @@ -2379,7 +2381,7 @@ _02023684: bne _020236B2 add r0, r4, #0x0 mov r1, #0x1 - bl FUN_02023740 + bl SaveErrorHandling _020236B2: ldr r0, _020236DC ; =UNK_021C59C8 mov r1, #0x0 @@ -2387,13 +2389,13 @@ _020236B2: str r1, [sp, #0x0] mov r0, #0x1 str r0, [sp, #0x4] - mov r0, #0x7 + mov r0, #0x7 ; CARD_REQ_WRITE_BACKUP str r0, [sp, #0x8] mov r0, #0xa str r0, [sp, #0xc] mov r0, #0x2 str r0, [sp, #0x10] - ldr r3, _020236E0 ; =FUN_0202365C + ldr r3, _020236E0 ; =FlashWriteCommandCallback add r0, r6, #0x0 add r1, r5, #0x0 add r2, r7, #0x0 @@ -2403,10 +2405,10 @@ _020236B2: pop {r3-r7, pc} .balign 4 _020236DC: .word UNK_021C59C8 -_020236E0: .word FUN_0202365C +_020236E0: .word FlashWriteCommandCallback - thumb_func_start FUN_020236E4 -FUN_020236E4: ; 0x020236E4 + thumb_func_start WaitFlashWrite +WaitFlashWrite: ; 0x020236E4 push {r3-r5, lr} add r5, r0, #0x0 ldr r0, _0202373C ; =UNK_021C59C8 @@ -2438,13 +2440,13 @@ _0202371E: mov r1, #0x0 add r0, r5, #0x0 str r1, [r4, #0x0] - bl FUN_02023740 + bl SaveErrorHandling _02023728: mov r0, #0x0 str r0, [r4, #0x0] add r0, r5, #0x0 mov r1, #0x1 - bl FUN_02023740 + bl SaveErrorHandling _02023734: mov r0, #0x1 pop {r3-r5, pc} @@ -2454,8 +2456,8 @@ _02023738: .balign 4 _0202373C: .word UNK_021C59C8 - thumb_func_start FUN_02023740 -FUN_02023740: ; 0x02023740 + thumb_func_start SaveErrorHandling +SaveErrorHandling: ; 0x02023740 push {r3-r5, lr} add r5, r0, #0x0 lsl r0, r5, #0x10 diff --git a/arm9/asm/scrcmd.s b/arm9/asm/scrcmd.s index 7ffad1f7..4fa6f75b 100644 --- a/arm9/asm/scrcmd.s +++ b/arm9/asm/scrcmd.s @@ -5091,9 +5091,9 @@ FUN_0203C1AC: ; 0x0203C1AC add r0, #0x80 ldr r0, [r0, #0x0] ldr r0, [r0, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get mov r1, #0x4 - bl FUN_0206EE64 + bl Bag_PocketNotEmpty cmp r0, #0x0 bne _0203C1E0 mov r0, #0x1 @@ -8033,9 +8033,9 @@ FUN_0203D958: ; 0x0203D958 add r4, r0, #0x0 ldr r0, [r5, #0x0] ldr r0, [r0, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r1, r6, #0x0 - bl FUN_0206EE64 + bl Bag_PocketNotEmpty strh r0, [r4, #0x0] mov r0, #0x0 pop {r4-r6, pc} @@ -11772,7 +11772,7 @@ FUN_0203F760: ; 0x0203F760 mov r1, #0x20 ldr r0, [r0, #0xc] add r2, sp, #0x0 - bl FUN_02022534 + bl LoadSaveFile ldr r1, [sp, #0x0] add r4, r0, #0x0 cmp r1, #0x0 diff --git a/arm9/asm/scrcmd_12.s b/arm9/asm/scrcmd_12.s index 2566edfd..059262cf 100644 --- a/arm9/asm/scrcmd_12.s +++ b/arm9/asm/scrcmd_12.s @@ -305,7 +305,7 @@ FUN_02042F28: ; 0x02042F28 ldr r1, [r1, #0xc] ldr r2, _02042F44 ; =0x000001EA mov r0, #0x20 - bl FUN_0204A0C8 + bl GiveEgg add sp, #0x8 pop {r3, pc} .balign 4 @@ -755,7 +755,7 @@ FUN_02043308: ; 0x02043308 push {r3-r5, lr} add r5, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r4, r0, #0x0 add r0, r5, #0x0 bl FUN_02042D04 @@ -766,7 +766,7 @@ FUN_02043308: ; 0x02043308 lsr r1, r1, #0x10 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206ED24 + bl Bag_HasSpaceForItem pop {r3-r5, pc} .balign 4 @@ -775,7 +775,7 @@ FUN_02043330: ; 0x02043330 push {r3-r5, lr} add r5, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r4, r0, #0x0 add r0, r5, #0x0 bl FUN_02042D04 @@ -786,7 +786,7 @@ FUN_02043330: ; 0x02043330 lsr r1, r1, #0x10 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206ED38 + bl Bag_AddItem pop {r3-r5, pc} .balign 4 @@ -827,7 +827,7 @@ FUN_02043394: ; 0x02043394 add r4, r1, #0x0 ldr r0, [r0, #0xc] add r6, r2, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get ldr r0, [r5, #0x0] bl FUN_02042D04 ldr r0, [r0, #0x0] @@ -1099,7 +1099,7 @@ FUN_020435A0: ; 0x020435A0 push {r3-r5, lr} add r5, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r4, r0, #0x0 add r0, r5, #0x0 bl FUN_02042D04 @@ -1107,7 +1107,7 @@ FUN_020435A0: ; 0x020435A0 add r0, r4, #0x0 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206ED24 + bl Bag_HasSpaceForItem pop {r3-r5, pc} .balign 4 _020435C0: .word 0x000001C6 @@ -1117,7 +1117,7 @@ FUN_020435C4: ; 0x020435C4 push {r3-r5, lr} add r4, r0, #0x0 ldr r0, [r4, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r5, r0, #0x0 add r0, r4, #0x0 bl FUN_02042D04 @@ -1128,7 +1128,7 @@ FUN_020435C4: ; 0x020435C4 add r0, r5, #0x0 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206ED38 + bl Bag_AddItem add r0, r4, #0x0 mov r1, #0x0 bl FUN_0205F478 @@ -1172,7 +1172,7 @@ FUN_02043634: ; 0x02043634 add r4, r1, #0x0 ldr r0, [r0, #0xc] add r6, r2, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get ldr r0, [r5, #0x0] bl FUN_02042D04 mov r2, #0x53 @@ -1191,7 +1191,7 @@ FUN_02043660: ; 0x02043660 push {r3-r5, lr} add r5, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r4, r0, #0x0 add r0, r5, #0x0 bl FUN_02042D04 @@ -1200,7 +1200,7 @@ FUN_02043660: ; 0x02043660 lsl r1, r1, #0x2 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206ED24 + bl Bag_HasSpaceForItem pop {r3-r5, pc} .balign 4 @@ -1209,7 +1209,7 @@ FUN_02043684: ; 0x02043684 push {r3-r5, lr} add r4, r0, #0x0 ldr r0, [r4, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r5, r0, #0x0 add r0, r4, #0x0 bl FUN_02042D04 @@ -1221,7 +1221,7 @@ FUN_02043684: ; 0x02043684 lsl r1, r1, #0x2 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206ED38 + bl Bag_AddItem add r0, r4, #0x0 mov r1, #0x1 bl FUN_0205F478 @@ -1263,7 +1263,7 @@ FUN_020436F0: ; 0x020436F0 add r4, r1, #0x0 ldr r0, [r0, #0xc] add r6, r2, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get ldr r0, [r5, #0x0] bl FUN_02042D04 mov r2, #0x53 @@ -1282,7 +1282,7 @@ FUN_0204371C: ; 0x0204371C push {r3-r5, lr} add r5, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r4, r0, #0x0 add r0, r5, #0x0 bl FUN_02042D04 @@ -1290,7 +1290,7 @@ FUN_0204371C: ; 0x0204371C add r0, r4, #0x0 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206ED24 + bl Bag_HasSpaceForItem pop {r3-r5, pc} .balign 4 _0204373C: .word 0x000001C7 @@ -1300,7 +1300,7 @@ FUN_02043740: ; 0x02043740 push {r3-r5, lr} add r4, r0, #0x0 ldr r0, [r4, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r5, r0, #0x0 add r0, r4, #0x0 bl FUN_02042D04 @@ -1311,7 +1311,7 @@ FUN_02043740: ; 0x02043740 add r0, r5, #0x0 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206ED38 + bl Bag_AddItem add r0, r4, #0x0 mov r1, #0x2 bl FUN_0205F478 @@ -1355,7 +1355,7 @@ FUN_020437B0: ; 0x020437B0 add r4, r1, #0x0 ldr r0, [r0, #0xc] add r6, r2, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get ldr r0, [r5, #0x0] bl FUN_02042D04 mov r2, #0x53 diff --git a/arm9/asm/scrcmd_18.s b/arm9/asm/scrcmd_18.s index c4fa299c..c5765553 100644 --- a/arm9/asm/scrcmd_18.s +++ b/arm9/asm/scrcmd_18.s @@ -3,8 +3,8 @@ .text - thumb_func_start FUN_020442BC -FUN_020442BC: ; 0x020442BC + thumb_func_start ScrCmd_givemon +ScrCmd_givemon: ; 0x020442BC push {r4-r7, lr} sub sp, #0x14 add r4, r0, #0x0 @@ -60,15 +60,18 @@ FUN_020442BC: ; 0x020442BC ldr r2, [sp, #0xc] mov r0, #0xb lsr r3, r3, #0x18 - bl FUN_0204A048 + bl GiveMon strh r0, [r4, #0x0] mov r0, #0x0 add sp, #0x14 pop {r4-r7, pc} .balign 4 - thumb_func_start FUN_0204434C -FUN_0204434C: ; 0x0204434C + thumb_func_start ScrCmd_getpartyspecies +ScrCmd_getpartyspecies: ; 0x0204434C + ; getpartyspecies XXXX, YYYY + ; Sets var YYYY to species of mon in party slot XXXX. + ; If mon is an egg, the value is SPECIES_NONE. push {r4-r6, lr} add r4, r0, #0x0 add r1, r4, #0x0 @@ -110,8 +113,8 @@ _020443A2: mov r0, #0x0 pop {r4-r6, pc} - thumb_func_start FUN_020443A8 -FUN_020443A8: ; 0x020443A8 + thumb_func_start ScrCmd_checkpartymonotid +ScrCmd_checkpartymonotid: ; 0x020443A8 push {r3-r7, lr} add r4, r0, #0x0 add r0, #0x80 @@ -159,8 +162,8 @@ _0204440E: mov r0, #0x0 pop {r3-r7, pc} - thumb_func_start FUN_02044414 -FUN_02044414: ; 0x02044414 + thumb_func_start ScrCmd_giveegg +ScrCmd_giveegg: ; 0x02044414 push {r4-r7, lr} sub sp, #0xc add r5, r0, #0x0 @@ -206,7 +209,7 @@ FUN_02044414: ; 0x02044414 add r0, r4, #0x0 mov r2, #0x1 add r3, r7, #0x0 - bl MOD05_021ECF14 + bl MOD05_SetEggStats add r0, r6, #0x0 add r1, r4, #0x0 bl AddMonToParty @@ -218,8 +221,8 @@ _02044494: pop {r4-r7, pc} .balign 4 - thumb_func_start FUN_0204449C -FUN_0204449C: ; 0x0204449C + thumb_func_start ScrCmd_setpartymonmove +ScrCmd_setpartymonmove: ; 0x0204449C push {r3-r7, lr} add r5, r0, #0x0 bl ScriptReadHalfword @@ -252,13 +255,13 @@ FUN_0204449C: ; 0x0204449C add r1, r4, #0x0 add r2, r6, #0x0 add r3, r7, #0x0 - bl FUN_0204A120 + bl PartyMonSetMoveInSlot mov r0, #0x0 pop {r3-r7, pc} .balign 4 - thumb_func_start FUN_020444F4 -FUN_020444F4: ; 0x020444F4 + thumb_func_start ScrCmd_partymonhasmove +ScrCmd_partymonhasmove: ; 0x020444F4 push {r3-r7, lr} add r4, r0, #0x0 add r1, r4, #0x0 @@ -332,8 +335,8 @@ _02044592: pop {r3-r7, pc} .balign 4 - thumb_func_start FUN_02044598 -FUN_02044598: ; 0x02044598 + thumb_func_start ScrCmd_findpartymonwithmove +ScrCmd_findpartymonwithmove: ; 0x02044598 push {r3-r7, lr} sub sp, #0x8 add r4, r0, #0x0 @@ -420,8 +423,8 @@ _02044648: _02044650: .word 0x00000006 _02044654: .word 0x00000000 - thumb_func_start FUN_02044658 -FUN_02044658: ; 0x02044658 + thumb_func_start ScrCmd_survivepsn +ScrCmd_survivepsn: ; 0x02044658 push {r4-r6, lr} add r5, r0, #0x0 bl ScriptReadHalfword @@ -445,13 +448,13 @@ FUN_02044658: ; 0x02044658 bl SavArray_PlayerParty_get add r1, r6, #0x0 bl GetPartyMonByIndex - bl FUN_0204A32C + bl SurvivePoisoning strh r0, [r4, #0x0] mov r0, #0x0 pop {r4-r6, pc} - thumb_func_start FUN_0204469C -FUN_0204469C: ; 0x0204469C + thumb_func_start ScrCmd_countpartymonsatorbelowlevel +ScrCmd_countpartymonsatorbelowlevel: ; 0x0204469C push {r4-r7, lr} sub sp, #0xc add r4, r0, #0x0 @@ -520,8 +523,8 @@ _02044726: add sp, #0xc pop {r4-r7, pc} - thumb_func_start FUN_02044730 -FUN_02044730: ; 0x02044730 + thumb_func_start ScrCmd_getpartymonlevel +ScrCmd_getpartymonlevel: ; 0x02044730 push {r4-r6, lr} add r5, r0, #0x0 add r1, r5, #0x0 @@ -562,8 +565,8 @@ _02044786: pop {r4-r6, pc} .balign 4 - thumb_func_start FUN_0204478C -FUN_0204478C: ; 0x0204478C + thumb_func_start ScrCmd_getpartymonnature +ScrCmd_getpartymonnature: ; 0x0204478C push {r4-r6, lr} add r6, r0, #0x0 add r1, r6, #0x0 @@ -615,8 +618,8 @@ _020447F2: pop {r4-r6, pc} .balign 4 - thumb_func_start FUN_02044800 -FUN_02044800: ; 0x02044800 + thumb_func_start ScrCmd_findpartymonwithnature +ScrCmd_findpartymonwithnature: ; 0x02044800 push {r3-r7, lr} sub sp, #0x8 add r4, r0, #0x0 @@ -680,8 +683,8 @@ _0204487E: _02044884: .word 0x000000FF _02044888: .word 0x00000000 - thumb_func_start FUN_0204488C -FUN_0204488C: ; 0x0204488C + thumb_func_start ScrCmd_getpartymonfriendship +ScrCmd_getpartymonfriendship: ; 0x0204488C push {r4-r6, lr} add r5, r0, #0x0 add r1, r5, #0x0 diff --git a/arm9/asm/scrcmd_19.s b/arm9/asm/scrcmd_19.s index 0e036f08..863006b1 100644 --- a/arm9/asm/scrcmd_19.s +++ b/arm9/asm/scrcmd_19.s @@ -32,11 +32,11 @@ FUN_02045268: ; 0x02045268 add r5, r4, #0x0 _02045288: ldr r0, [r6, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get lsl r1, r4, #0x2 ldrh r1, [r7, r1] mov r2, #0x4 - bl FUN_0206EEF8 + bl Bag_GetQuantity add r0, r5, r0 lsl r0, r0, #0x10 lsr r5, r0, #0x10 @@ -133,11 +133,11 @@ FUN_02045308: ; 0x02045308 _02045358: ldr r0, [r7, #0xc] lsl r5, r4, #0x2 - bl FUN_0206F158 + bl Sav2_Bag_get ldr r1, _02045394 ; =UNK_020F450C mov r2, #0x4 ldrh r1, [r1, r5] - bl FUN_0206EEF8 + bl Bag_GetQuantity add r0, r6, r0 lsl r0, r0, #0x10 lsr r6, r0, #0x10 diff --git a/arm9/asm/scrcmd_22.s b/arm9/asm/scrcmd_22.s index d0563546..1f354520 100644 --- a/arm9/asm/scrcmd_22.s +++ b/arm9/asm/scrcmd_22.s @@ -33,11 +33,11 @@ FUN_02045784: ; 0x02045784 bl GetVarPointer add r4, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r1, r6, #0x0 add r2, r7, #0x0 mov r3, #0x4 - bl FUN_0206ED38 + bl Bag_AddItem strh r0, [r4, #0x0] mov r0, #0x0 pop {r3-r7, pc} @@ -72,11 +72,11 @@ FUN_020457DC: ; 0x020457DC bl GetVarPointer add r4, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r1, r6, #0x0 add r2, r7, #0x0 mov r3, #0x4 - bl FUN_0206EDD4 + bl Bag_TakeItem strh r0, [r4, #0x0] mov r0, #0x0 pop {r3-r7, pc} @@ -111,11 +111,11 @@ FUN_02045834: ; 0x02045834 bl GetVarPointer add r4, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r1, r6, #0x0 add r2, r7, #0x0 mov r3, #0x4 - bl FUN_0206ED24 + bl Bag_HasSpaceForItem strh r0, [r4, #0x0] mov r0, #0x0 pop {r3-r7, pc} @@ -150,11 +150,11 @@ FUN_0204588C: ; 0x0204588C bl GetVarPointer add r4, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r1, r6, #0x0 add r2, r7, #0x0 mov r3, #0xb - bl FUN_0206EE50 + bl Bag_HasItem strh r0, [r4, #0x0] mov r0, #0x0 pop {r3-r7, pc} diff --git a/arm9/asm/scrcmd_7.s b/arm9/asm/scrcmd_7.s index 1a6a6584..7ae38f49 100644 --- a/arm9/asm/scrcmd_7.s +++ b/arm9/asm/scrcmd_7.s @@ -591,7 +591,7 @@ FUN_02041B70: ; 0x02041B70 ldr r0, [r5, #0x0] ldr r0, [r0, #0xc] bl SavArray_PlayerParty_get - bl FUN_0204A248 + bl HasEnoughAlivePokemonForDoubleBattle strh r0, [r4, #0x0] mov r0, #0x0 pop {r3-r5, pc} diff --git a/arm9/asm/scrcmd_9.s b/arm9/asm/scrcmd_9.s index 944243af..5c723f9a 100644 --- a/arm9/asm/scrcmd_9.s +++ b/arm9/asm/scrcmd_9.s @@ -549,7 +549,7 @@ FUN_02042288: ; 0x02042288 ldr r0, [r0, #0xc] add r4, r1, #0x0 bl SavArray_PlayerParty_get - bl FUN_0204A20C + bl GetFirstNonEggInParty bl FUN_020690E4 add r2, r0, #0x0 add r0, r4, #0x0 diff --git a/arm9/asm/unk_02001B80.s b/arm9/asm/unk_02001B80.s index 52c55775..ff804a2f 100644 --- a/arm9/asm/unk_02001B80.s +++ b/arm9/asm/unk_02001B80.s @@ -772,18 +772,18 @@ FUN_020020EC: ; 0x020020EC add r4, r0, #0x0 mov r0, #0x2 add r1, r5, #0x0 - bl FUN_02012838 + bl ListMenu_ctor add r1, r4, #0x0 mov r2, #0x29 mov r3, #0x0 add r6, r0, #0x0 - bl FUN_02012880 + bl ListMenu_ItemFromMsgData mov r3, #0x2a add r2, r3, #0x0 add r0, r6, #0x0 add r1, r4, #0x0 sub r3, #0x2c - bl FUN_02012880 + bl ListMenu_ItemFromMsgData add r0, r4, #0x0 bl DestroyMsgData add r0, r5, #0x0 @@ -896,7 +896,7 @@ FUN_020021EC: ; 0x020021EC add r0, r4, #0x0 bl FUN_02016A8C ldr r0, [r5, #0x0] - bl FUN_02012870 + bl ListMenu_dtor add r0, r5, #0x0 mov r1, #0x0 bl FUN_02001C5C diff --git a/arm9/asm/unk_02011744.s b/arm9/asm/unk_02011744.s index 5d836ed4..d8202d2d 100644 --- a/arm9/asm/unk_02011744.s +++ b/arm9/asm/unk_02011744.s @@ -2388,8 +2388,8 @@ _0201282C: .word UNK_020ED4A4 _02012830: .word UNK_020ED498 _02012834: .word 0xBC19137F - thumb_func_start FUN_02012838 -FUN_02012838: ; 0x02012838 + thumb_func_start ListMenu_ctor +ListMenu_ctor: ; 0x02012838 push {r3-r5, lr} add r5, r0, #0x0 add r4, r1, #0x0 @@ -2421,23 +2421,23 @@ _02012862: _0201286E: pop {r3-r5, pc} - thumb_func_start FUN_02012870 -FUN_02012870: ; 0x02012870 + thumb_func_start ListMenu_dtor +ListMenu_dtor: ; 0x02012870 push {r4, lr} add r4, r0, #0x0 - bl FUN_0201291C + bl ListMenu_DestroyMenuStrings add r0, r4, #0x0 bl FreeToHeap pop {r4, pc} - thumb_func_start FUN_02012880 -FUN_02012880: ; 0x02012880 + thumb_func_start ListMenu_ItemFromMsgData +ListMenu_ItemFromMsgData: ; 0x02012880 push {r3-r7, lr} add r6, r1, #0x0 add r1, sp, #0x0 add r7, r2, #0x0 add r5, r3, #0x0 - bl FUN_020128E0 + bl ListMenu_NewItem add r4, r0, #0x0 beq _0201289E add r0, r6, #0x0 @@ -2448,14 +2448,14 @@ FUN_02012880: ; 0x02012880 _0201289E: pop {r3-r7, pc} - thumb_func_start FUN_020128A0 -FUN_020128A0: ; 0x020128A0 + thumb_func_start ListMenu_AddItem +ListMenu_AddItem: ; 0x020128A0 push {r3-r6, lr} sub sp, #0x4 add r6, r1, #0x0 add r1, sp, #0x0 add r5, r2, #0x0 - bl FUN_020128E0 + bl ListMenu_NewItem add r4, r0, #0x0 beq _020128BE ldr r1, [sp, #0x0] @@ -2468,13 +2468,13 @@ _020128BE: pop {r3-r6, pc} .balign 4 - thumb_func_start FUN_020128C4 -FUN_020128C4: ; 0x020128C4 + thumb_func_start ListMenu_CopyItem +ListMenu_CopyItem: ; 0x020128C4 push {r3-r4, lr} sub sp, #0x4 add r4, r1, #0x0 add r1, sp, #0x0 - bl FUN_020128E0 + bl ListMenu_NewItem cmp r0, #0x0 beq _020128DC ldr r1, [r4, #0x0] @@ -2485,8 +2485,8 @@ _020128DC: add sp, #0x4 pop {r3-r4, pc} - thumb_func_start FUN_020128E0 -FUN_020128E0: ; 0x020128E0 + thumb_func_start ListMenu_NewItem +ListMenu_NewItem: ; 0x020128E0 push {r4, lr} ldr r3, [r0, #0x0] cmp r3, #0x0 @@ -2522,8 +2522,8 @@ _02012912: pop {r4, pc} .balign 4 - thumb_func_start FUN_0201291C -FUN_0201291C: ; 0x0201291C + thumb_func_start ListMenu_DestroyMenuStrings +ListMenu_DestroyMenuStrings: ; 0x0201291C push {r4-r6, lr} add r5, r0, #0x0 mov r0, #0x0 diff --git a/arm9/asm/unk_02022504.s b/arm9/asm/unk_02022504.s index 8aa31ef0..6e6c0d06 100644 --- a/arm9/asm/unk_02022504.s +++ b/arm9/asm/unk_02022504.s @@ -35,19 +35,19 @@ FUN_02022528: ; 0x02022528 nop _02022530: .word SavArray_get - thumb_func_start FUN_02022534 -FUN_02022534: ; 0x02022534 + thumb_func_start LoadSaveFile +LoadSaveFile: ; 0x02022534 push {r3, lr} add r3, r2, #0x0 mov r2, #0x0 - bl FUN_02023408 + bl ReadSaveFileFromFlash pop {r3, pc} - thumb_func_start FUN_02022540 -FUN_02022540: ; 0x02022540 - ldr r3, _02022548 ; =FUN_020232BC + thumb_func_start SaveGame +SaveGame: ; 0x02022540 + ldr r3, _02022548 ; =WriteSaveFileToFlash add r2, r1, #0x0 mov r1, #0x0 bx r3 .balign 4 -_02022548: .word FUN_020232BC +_02022548: .word WriteSaveFileToFlash diff --git a/arm9/asm/unk_02034188.s b/arm9/asm/unk_02034188.s index f4979b35..f84f094a 100644 --- a/arm9/asm/unk_02034188.s +++ b/arm9/asm/unk_02034188.s @@ -179,7 +179,7 @@ _020342E4: and r0, r1 lsl r0, r0, #0x10 lsr r5, r0, #0x10 - bl FUN_02000FE8 + bl HandleDSLidAction add r0, r5, #0x0 tst r0, r7 bne _02034308 diff --git a/arm9/asm/unk_02035068.s b/arm9/asm/unk_02035068.s index 093c06e6..3b3dccfc 100644 --- a/arm9/asm/unk_02035068.s +++ b/arm9/asm/unk_02035068.s @@ -10,8 +10,9 @@ UNK_020F2A8C: ; 0x020F2A8C .global UNK_020F2A90 UNK_020F2A90: ; 0x020F2A90 - .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0xFF, 0x00, 0x00, 0x00 + .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0xFF + .balign 4, 0 .global UNK_020F2A9C UNK_020F2A9C: ; 0x020F2A9C .byte 0x00, 0x01, 0x02, 0x04, 0x03, 0x05, 0x06, 0x07, 0x08, 0x00, 0x00, 0x00 @@ -638,7 +639,7 @@ FUN_0203549C: ; 0x0203549C str r0, [sp, #0x18] ldr r0, [sp, #0x14] mov r1, #0xb - bl FUN_02012838 + bl ListMenu_ctor str r0, [r4, #0x24] mov r5, #0x0 ldr r0, [sp, #0x14] @@ -683,7 +684,7 @@ _02035526: ldrb r2, [r2, #0x0] ldr r0, [r4, #0x24] add r1, r7, #0x0 - bl FUN_020128A0 + bl ListMenu_AddItem ldr r0, [sp, #0x20] bl String_dtor add r0, r7, #0x0 @@ -697,7 +698,7 @@ _02035594: ldr r0, [r4, #0x24] ldr r1, [sp, #0x18] ldr r2, [r2, r6] - bl FUN_02012880 + bl ListMenu_ItemFromMsgData _020355A2: ldr r0, [sp, #0x1c] add r0, #0x8c @@ -901,7 +902,7 @@ FUN_02035718: ; 0x02035718 mov r1, #0x0 bl FUN_02001C5C ldr r0, [r4, #0x24] - bl FUN_02012870 + bl ListMenu_dtor mov r0, #0x0 str r0, [r4, #0x20] pop {r4, pc} @@ -2088,14 +2089,14 @@ _020360EA: lsl r1, r1, #0x2 str r0, [r4, r1] ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r7, r0, #0x0 ldr r0, [r5, #0xc] bl Sav2_PlayerData_GetProfileAddr ldr r1, _0203627C ; =UNK_020F2A90 add r0, r7, #0x0 mov r2, #0xb - bl FUN_0206EFEC + bl CreateBagView mov r1, #0x7e lsl r1, r1, #0x2 add r3, r5, #0x0 @@ -2325,7 +2326,7 @@ FUN_020362E4: ; 0x020362E4 bl FUN_0204652C add r4, r0, #0x0 mov r0, #0xb - bl FUN_0206E2F0 + bl BagView_new str r0, [sp, #0x8] bl FUN_0206E308 mov r1, #0x7e @@ -2402,7 +2403,7 @@ _0203638A: bl SavArray_PlayerParty_get str r0, [r5, #0x0] ldr r0, [r6, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r5, #0x4] ldr r0, [r6, #0xc] bl FUN_02025838 @@ -2501,7 +2502,7 @@ _02036474: ldr r0, [sp, #0x4] str r0, [r5, #0x0] ldr r0, [r6, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r5, #0x4] ldr r0, [r6, #0xc] bl FUN_02025838 @@ -2994,7 +2995,7 @@ FUN_0203684C: ; 0x0203684C bl SavArray_PlayerParty_get str r0, [r5, #0x0] ldr r0, [r6, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r5, #0x4] ldr r0, [r6, #0xc] bl FUN_02025838 @@ -3097,7 +3098,7 @@ FUN_0203695C: ; 0x0203695C str r0, [r6, r1] ldr r0, [sp, #0x4] ldr r0, [r0, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [sp, #0x0] mov r0, #0x7e lsl r0, r0, #0x2 @@ -3115,7 +3116,7 @@ _0203699A: add r1, r7, #0x0 mov r2, #0x1 mov r3, #0xb - bl FUN_0206EE50 + bl Bag_HasItem cmp r0, #0x1 bne _020369C6 mov r0, #0x7e @@ -3523,7 +3524,7 @@ FUN_02036CEC: ; 0x02036CEC bl SavArray_PlayerParty_get str r0, [r4, #0x0] ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] ldr r0, [r5, #0xc] bl FUN_02025838 @@ -3668,7 +3669,7 @@ FUN_02036E08: ; 0x02036E08 bl FUN_02024DA0 str r0, [sp, #0x2c] ldr r0, [r4, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [sp, #0x30] ldr r0, [r4, #0xc] bl FUN_02029FC8 @@ -3705,7 +3706,7 @@ _02036E9E: bl FUN_02024DA0 str r0, [sp, #0x3c] ldr r0, [r4, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [sp, #0x40] ldr r0, [r4, #0xc] bl FUN_02029FC8 diff --git a/arm9/asm/unk_020377F0.s b/arm9/asm/unk_020377F0.s index 48d33a87..3c5fc486 100644 --- a/arm9/asm/unk_020377F0.s +++ b/arm9/asm/unk_020377F0.s @@ -10,165 +10,197 @@ .section .rodata + .balign 4 .global UNK_020F2BC4 UNK_020F2BC4: ; 0x020F2BC4 - .byte 0x04, 0xFF, 0x00, 0x00 + .byte 0x04, 0xFF + .balign 4 .global UNK_020F2BC8 UNK_020F2BC8: ; 0x020F2BC8 - .byte 0x00, 0xFF, 0x00, 0x00 + .byte 0x00, 0xFF + .balign 4 .global UNK_020F2BCC UNK_020F2BCC: ; 0x020F2BCC - .byte 0x03, 0x05, 0x08, 0x00 + .byte 0x03, 0x05, 0x08 + .balign 4 .global UNK_020F2BD0 UNK_020F2BD0: ; 0x020F2BD0 - .byte 0x00, 0x01, 0x02, 0x04, 0x03, 0x05, 0x06, 0x07, 0x08, 0x00, 0x00, 0x00 + .byte 0x00, 0x01, 0x02, 0x04, 0x03, 0x05, 0x06, 0x07, 0x08 + .balign 4 .global UNK_020F2BDC UNK_020F2BDC: ; 0x020F2BDC - .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0xFF, 0x00, 0x00, 0x00 + .byte 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0xFF + .balign 4 .global UNK_020F2BE8 UNK_020F2BE8: ; 0x020F2BE8 .byte 0x00, 0x05, 0x01, 0x01, 0x04, 0x04, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03 + .balign 4 .global UNK_020F2BF4 UNK_020F2BF4: ; 0x020F2BF4 .word MOD70_021D74E0, MOD70_021D758C, MOD70_021D755C, SDK_OVERLAY_MODULE_70_ID + .balign 4 .global UNK_020F2C04 UNK_020F2C04: ; 0x020F2C04 .word MOD84_021D74E0, MOD84_021D7748, MOD84_021D76A4, SDK_OVERLAY_MODULE_84_ID + .balign 4 .global UNK_020F2C14 UNK_020F2C14: ; 0x020F2C14 .word MOD85_021D74E0, MOD85_021D75A0, MOD85_021D7644, SDK_OVERLAY_MODULE_85_ID + .balign 4 .global UNK_020F2C24 UNK_020F2C24: ; 0x020F2C24 .word MOD58_021D9A20, MOD58_021D9B8C, MOD58_021D9BF0, SDK_OVERLAY_MODULE_58_ID + .balign 4 .global UNK_020F2C34 UNK_020F2C34: ; 0x020F2C34 .word MOD64_021D74E0, MOD64_021D7640, MOD64_021D76F4, SDK_OVERLAY_MODULE_64_ID + .balign 4 .global UNK_020F2C44 UNK_020F2C44: ; 0x020F2C44 .word MOD16_021D74E0, MOD16_021D7588, MOD16_021D7614, SDK_OVERLAY_MODULE_16_ID + .balign 4 .global UNK_020F2C54 UNK_020F2C54: ; 0x020F2C54 .word MOD57_021D74E0, MOD57_021D7714, MOD57_021D7944, SDK_OVERLAY_MODULE_57_ID + .balign 4 .global UNK_020F2C64 UNK_020F2C64: ; 0x020F2C64 .word MOD80_0222DFD0, MOD80_0222E134, MOD80_0222E25C, SDK_OVERLAY_MODULE_80_ID + .balign 4 .global UNK_020F2C74 UNK_020F2C74: ; 0x020F2C74 .word MOD82_0222DA34, MOD82_0222DB7C, MOD82_0222DC50, SDK_OVERLAY_MODULE_82_ID + .balign 4 .global UNK_020F2C84 UNK_020F2C84: ; 0x020F2C84 .word MOD76_021D74E0, MOD76_021D7568, MOD76_021D761C, SDK_OVERLAY_MODULE_76_ID + .balign 4 .global UNK_020F2C94 UNK_020F2C94: ; 0x020F2C94 .word MOD53_021D74E0, MOD53_021D7654, MOD53_021D7764, SDK_OVERLAY_MODULE_53_ID + .balign 4 .global UNK_020F2CA4 UNK_020F2CA4: ; 0x020F2CA4 .word MOD81_02237E40, MOD81_02238064, MOD81_02238004, SDK_OVERLAY_MODULE_81_ID + .balign 4 .global UNK_020F2CB4 UNK_020F2CB4: ; 0x020F2CB4 .word MOD74_021D74E0, MOD74_021D755C, MOD74_021D7540, SDK_OVERLAY_MODULE_74_ID + .balign 4 .global UNK_020F2CC4 UNK_020F2CC4: ; 0x020F2CC4 .word MOD60_021D74E0, MOD60_021D76B8, MOD60_021D75B0, SDK_OVERLAY_MODULE_60_ID + .balign 4 .global UNK_020F2CD4 UNK_020F2CD4: ; 0x020F2CD4 .word MOD66_021D74E0, MOD66_021D7538, MOD66_021D75B0, SDK_OVERLAY_MODULE_66_ID + .balign 4 .global UNK_020F2CE4 UNK_020F2CE4: ; 0x020F2CE4 .word MOD15_021D74E0, MOD15_021D7558, MOD15_021D7608, SDK_OVERLAY_MODULE_15_ID + .balign 4 .global UNK_020F2CF4 UNK_020F2CF4: ; 0x020F2CF4 .word MOD14_021D74E0, MOD14_021D754C, MOD14_021D75B8, SDK_OVERLAY_MODULE_14_ID + .balign 4 .global UNK_020F2D04 UNK_020F2D04: ; 0x020F2D04 .word MOD54_021D74E0, MOD54_021D764C, MOD54_021D7740, SDK_OVERLAY_MODULE_54_ID + .balign 4 .global UNK_020F2D14 UNK_020F2D14: ; 0x020F2D14 .word MOD77_021D74E0, MOD77_021D7604, MOD77_021D7BAC, SDK_OVERLAY_MODULE_77_ID + .balign 4 .global UNK_020F2D24 UNK_020F2D24: ; 0x020F2D24 .word MOD67_021D74E0, MOD67_021D75D0, MOD67_021D7624, SDK_OVERLAY_MODULE_67_ID + + .balign 4 + .global UNK_020F2D34 +UNK_020F2D34: ; 0x020F2D34 .word MOD55_021D7614, MOD55_021D76BC, MOD55_021D77AC, SDK_OVERLAY_MODULE_55_ID + .balign 4 .global UNK_020F2D44 UNK_020F2D44: ; 0x020F2D44 .word MOD68_021D74E0, MOD68_021D75D8, MOD68_021D762C, SDK_OVERLAY_MODULE_68_ID + .balign 4 .global UNK_020F2D54 UNK_020F2D54: ; 0x020F2D54 .word MOD55_021D756C, MOD55_021D76BC, MOD55_021D77AC, SDK_OVERLAY_MODULE_55_ID + .balign 4 .global UNK_020F2D64 UNK_020F2D64: ; 0x020F2D64 .word HOF_OverlayInit, HOF_OverlayRun, HOF_OverlayTeardown, SDK_OVERLAY_MODULE_69_ID + .balign 4 .global UNK_020F2D74 UNK_020F2D74: ; 0x020F2D74 .word MOD75_021E6BA0, MOD75_021E6D6C, MOD75_021E6F00, SDK_OVERLAY_MODULE_75_ID + .balign 4 .global UNK_020F2D84 UNK_020F2D84: ; 0x020F2D84 .word MOD78_021D74E0, MOD78_021D75D0, MOD78_021D76B8, SDK_OVERLAY_MODULE_78_ID + .balign 4 .global UNK_020F2D94 UNK_020F2D94: ; 0x020F2D94 .word FUN_020377F0, FUN_020377F4, FUN_02037808, SDK_OVERLAY_MODULE_11_ID + .balign 4 .global UNK_020F2DA4 UNK_020F2DA4: ; 0x020F2DA4 .word MOD86_021D74E0, MOD86_021D758C, MOD86_021D76B0, SDK_OVERLAY_MODULE_86_ID .section .data + .balign 4 .global UNK_02105DB8 UNK_02105DB8: ; 0x02105DB8 - .byte 0x00, 0x00, 0x00, 0x00 + .word 0 ; u8 * + .balign 4 .global UNK_02105DBC UNK_02105DBC: ; 0x02105DBC - .word MOD71_0222D5C0 - .word MOD71_0222D9C8 - .word MOD71_0222E438 - .word SDK_OVERLAY_MODULE_71_ID + .word MOD71_0222D5C0, MOD71_0222D9C8, MOD71_0222E438, SDK_OVERLAY_MODULE_71_ID + .balign 4 .global UNK_02105DCC UNK_02105DCC: ; 0x02105DCC - .word MOD17_021DDB58 - .word MOD17_021DDC30 - .word MOD17_021DDCF4 - .word SDK_OVERLAY_MODULE_17_ID + .word MOD17_021DDB58, MOD17_021DDC30, MOD17_021DDCF4, SDK_OVERLAY_MODULE_17_ID + .balign 4 .global UNK_02105DDC UNK_02105DDC: ; 0x02105DDC - .word MOD17_021D83E4 - .word MOD17_021D84F0 - .word MOD17_021D8738 - .word SDK_OVERLAY_MODULE_17_ID + .word MOD17_021D83E4, MOD17_021D84F0, MOD17_021D8738, SDK_OVERLAY_MODULE_17_ID .text @@ -232,10 +264,10 @@ FUN_02037844: ; 0x02037844 add r5, r0, #0x0 ldr r0, [r5, #0xc] add r6, r1, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get ldr r1, _02037898 ; =UNK_020F2BDC mov r2, #0xb - bl FUN_0206EFEC + bl CreateBagView add r3, r5, #0x0 add r3, #0x94 ldr r1, [r5, #0xc] @@ -272,7 +304,7 @@ FUN_0203789C: ; 0x0203789C add r5, r0, #0x0 ldr r0, [r5, #0xc] add r4, r1, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get add r6, r0, #0x0 cmp r4, #0x0 beq _020378B4 @@ -296,7 +328,7 @@ _020378C8: add r0, r6, #0x0 ldr r1, [r1, #0x0] mov r2, #0x20 - bl FUN_0206EFEC + bl CreateBagView add r3, r5, #0x0 add r3, #0x94 ldr r1, [r5, #0xc] @@ -400,7 +432,7 @@ FUN_0203797C: ; 0x0203797C bl SavArray_PlayerParty_get str r0, [r4, #0x0] ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] ldr r0, [r5, #0xc] bl FUN_02025838 @@ -1612,7 +1644,7 @@ _020382F6: bl FUN_02024DA0 add r7, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [sp, #0x28] ldr r0, [r5, #0xc] bl FUN_02029FC8 @@ -2131,7 +2163,7 @@ FUN_020386E0: ; 0x020386E0 bl FUN_02033830 str r0, [r4, #0x38] ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x30] add r0, r5, #0x0 add r1, sp, #0x0 @@ -2221,7 +2253,7 @@ FUN_02038824: ; 0x02038824 ldr r0, [r5, #0xc] mov r1, #0xb add r2, sp, #0x0 - bl FUN_02022534 + bl LoadSaveFile ldr r1, [sp, #0x0] add r4, r0, #0x0 cmp r1, #0x2 diff --git a/arm9/asm/unk_02038C78.s b/arm9/asm/unk_02038C78.s index 8eb56920..352c4094 100644 --- a/arm9/asm/unk_02038C78.s +++ b/arm9/asm/unk_02038C78.s @@ -299,11 +299,11 @@ gScriptCmdTable: ; 0x020F355C .word FUN_0203B81C .word FUN_0203B85C .word FUN_0203B8A0 - .word FUN_020442BC - .word FUN_02044414 - .word FUN_0204449C - .word FUN_020444F4 - .word FUN_02044598 + .word ScrCmd_givemon + .word ScrCmd_giveegg + .word ScrCmd_setpartymonmove + .word ScrCmd_partymonhasmove + .word ScrCmd_findpartymonwithmove .word FUN_0203BB34 .word FUN_0203BB80 .word FUN_0203BB84 @@ -557,8 +557,8 @@ gScriptCmdTable: ; 0x020F355C .word FUN_0203BA3C .word FUN_0203BAB0 .word FUN_0203BAF4 - .word FUN_0204434C - .word FUN_020443A8 + .word ScrCmd_getpartyspecies + .word ScrCmd_checkpartymonotid .word FUN_02044B2C .word FUN_02044B84 .word FUN_02044C0C @@ -590,7 +590,7 @@ gScriptCmdTable: ; 0x020F355C .word FUN_0203DF84 .word FUN_0203DFA8 .word FUN_0203DFE0 - .word FUN_0204488C + .word ScrCmd_getpartymonfriendship .word FUN_020448D4 .word FUN_020449A4 .word FUN_02044034 @@ -651,8 +651,8 @@ gScriptCmdTable: ; 0x020F355C .word FUN_0204539C .word FUN_020452B4 .word FUN_02045308 - .word FUN_0204469C - .word FUN_02044658 + .word ScrCmd_countpartymonsatorbelowlevel + .word ScrCmd_survivepsn .word FUN_0203BC2C .word FUN_02039A10 .word ScrCmd_message_from @@ -679,8 +679,8 @@ gScriptCmdTable: ; 0x020F355C .word FUN_0203E6C4 .word FUN_0203E6FC .word FUN_0203E72C - .word FUN_0204478C - .word FUN_02044800 + .word ScrCmd_getpartymonnature + .word ScrCmd_findpartymonwithnature .word FUN_0203E744 .word FUN_02044158 .word FUN_0204416C @@ -781,7 +781,7 @@ gScriptCmdTable: ; 0x020F355C .word FUN_0203F2E4 .word FUN_02043C28 .word FUN_0203F31C - .word FUN_02044730 + .word ScrCmd_getpartymonlevel .word FUN_0203F348 .word FUN_0203F38C .word FUN_0203F39C diff --git a/arm9/asm/unk_02047500.s b/arm9/asm/unk_02047500.s index 04d99ac3..905cf7b1 100644 --- a/arm9/asm/unk_02047500.s +++ b/arm9/asm/unk_02047500.s @@ -239,7 +239,7 @@ _02047662: FUN_02047668: ; 0x02047668 push {r4, lr} mov r4, #0x1e - bl FUN_0204A1D8 + bl GetFirstAliveMonInParty_CrashIfNone mov r1, #0x5 mov r2, #0x0 bl GetMonData diff --git a/arm9/asm/unk_020476CC.s b/arm9/asm/unk_020476CC.s index 0936ad10..39b89324 100644 --- a/arm9/asm/unk_020476CC.s +++ b/arm9/asm/unk_020476CC.s @@ -106,7 +106,7 @@ _02047774: cmp r6, #0x4 blt _02047774 add r0, r5, #0x0 - bl FUN_0206EB88 + bl Sav2_Bag_new mov r1, #0x42 lsl r1, r1, #0x2 str r0, [r7, r1] @@ -248,7 +248,7 @@ FUN_02047814: ; 0x02047814 mov r1, #0x4 mov r2, #0x14 add r3, r6, #0x0 - bl FUN_0206ED38 + bl Bag_AddItem add r0, r6, #0x0 bl AllocMonZeroed add r6, r0, #0x0 @@ -474,7 +474,7 @@ FUN_02047A78: ; 0x02047A78 bl SavArray_PlayerParty_get add r7, r0, #0x0 ldr r0, [r4, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [sp, #0x0] ldr r0, [r4, #0xc] bl FUN_02024DA0 @@ -503,7 +503,7 @@ FUN_02047A78: ; 0x02047A78 lsl r1, r1, #0x2 ldr r0, [sp, #0x0] ldr r1, [r5, r1] - bl FUN_0206EBB4 + bl Sav2_Bag_copy mov r1, #0x11 lsl r1, r1, #0x4 ldr r0, [sp, #0x4] @@ -620,7 +620,7 @@ FUN_02047BC0: ; 0x02047BC0 str r0, [sp, #0x14] ldr r0, [sp, #0x0] ldr r0, [r0, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [sp, #0x10] ldr r0, [sp, #0x0] ldr r0, [r0, #0xc] @@ -702,7 +702,7 @@ _02047C98: lsl r1, r1, #0x2 ldr r0, [sp, #0x10] ldr r1, [r6, r1] - bl FUN_0206EBB4 + bl Sav2_Bag_copy mov r1, #0x11 lsl r1, r1, #0x4 ldr r0, [sp, #0xc] @@ -787,7 +787,7 @@ FUN_02047D48: ; 0x02047D48 str r0, [sp, #0x20] ldr r0, [sp, #0x0] ldr r0, [r0, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [sp, #0x1c] ldr r0, [sp, #0x0] ldr r0, [r0, #0xc] @@ -886,7 +886,7 @@ _02047E2C: lsl r1, r1, #0x2 ldr r0, [sp, #0x1c] ldr r1, [r5, r1] - bl FUN_0206EBB4 + bl Sav2_Bag_copy mov r1, #0x11 lsl r1, r1, #0x4 ldr r0, [sp, #0x18] @@ -1016,7 +1016,7 @@ FUN_02047F38: ; 0x02047F38 bl SavArray_PlayerParty_get add r7, r0, #0x0 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [sp, #0x0] ldr r0, [r5, #0xc] bl FUN_02024DA0 @@ -1037,7 +1037,7 @@ FUN_02047F38: ; 0x02047F38 lsl r0, r0, #0x2 ldr r0, [r4, r0] ldr r1, [sp, #0x0] - bl FUN_0206EBB4 + bl Sav2_Bag_copy mov r0, #0x11 lsl r0, r0, #0x4 ldr r0, [r4, r0] @@ -1060,7 +1060,7 @@ FUN_02047FA4: ; 0x02047FA4 ldr r0, [r5, #0xc] bl SavArray_PlayerParty_get ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get ldr r0, [r5, #0xc] bl FUN_02024DA0 add r1, r0, #0x0 diff --git a/arm9/asm/unk_020484A8.s b/arm9/asm/unk_020484A8.s index 36b0d359..1d7ad0d5 100644 --- a/arm9/asm/unk_020484A8.s +++ b/arm9/asm/unk_020484A8.s @@ -29,7 +29,7 @@ FUN_020484A8: ; 0x020484A8 add r6, r1, #0x0 mov r1, #0xb add r2, sp, #0x0 - bl FUN_02022534 + bl LoadSaveFile add r4, r0, #0x0 ldr r0, [sp, #0x0] cmp r0, #0x1 @@ -51,7 +51,7 @@ _020484CC: bl FUN_0202B050 ldr r0, [r5, #0xc] add r1, r4, #0x0 - bl FUN_02022540 + bl SaveGame add r0, r4, #0x0 bl FreeToHeap add sp, #0x14 @@ -309,7 +309,7 @@ FUN_02048694: ; 0x02048694 _0204871E: ldr r0, [r4, #0xc] bl SavArray_PlayerParty_get - bl FUN_0204A25C + bl GiveAllMonsTheSinnohChampRibbon ldr r0, [sp, #0x8] bl FUN_020377B0 ldr r0, [sp, #0x4] diff --git a/arm9/asm/unk_0204A01C.s b/arm9/asm/unk_0204A01C.s index d66ec174..49ac1fa6 100644 --- a/arm9/asm/unk_0204A01C.s +++ b/arm9/asm/unk_0204A01C.s @@ -3,8 +3,8 @@ .text - thumb_func_start FUN_0204A01C -FUN_0204A01C: ; 0x0204A01C + thumb_func_start MonNotFaintedOrEgg +MonNotFaintedOrEgg: ; 0x0204A01C push {r4, lr} mov r1, #0xa2 mov r2, #0x0 @@ -28,8 +28,8 @@ _0204A042: pop {r4, pc} .balign 4 - thumb_func_start FUN_0204A048 -FUN_0204A048: ; 0x0204A048 + thumb_func_start GiveMon +GiveMon: ; 0x0204A048 push {r3-r7, lr} sub sp, #0x20 add r6, r1, #0x0 @@ -86,8 +86,8 @@ _0204A0BC: add sp, #0x20 pop {r3-r7, pc} - thumb_func_start FUN_0204A0C8 -FUN_0204A0C8: ; 0x0204A0C8 + thumb_func_start GiveEgg +GiveEgg: ; 0x0204A0C8 push {r4-r7, lr} sub sp, #0xc add r4, r1, #0x0 @@ -113,7 +113,7 @@ FUN_0204A0C8: ; 0x0204A0C8 add r0, r4, #0x0 add r1, r5, #0x0 add r2, r7, #0x0 - bl MOD05_021ECF14 + bl MOD05_SetEggStats add r0, r6, #0x0 add r1, r4, #0x0 bl AddMonToParty @@ -125,8 +125,8 @@ FUN_0204A0C8: ; 0x0204A0C8 pop {r4-r7, pc} .balign 4 - thumb_func_start FUN_0204A120 -FUN_0204A120: ; 0x0204A120 + thumb_func_start PartyMonSetMoveInSlot +PartyMonSetMoveInSlot: ; 0x0204A120 push {r3-r5, lr} add r5, r2, #0x0 add r4, r3, #0x0 @@ -134,12 +134,12 @@ FUN_0204A120: ; 0x0204A120 lsl r2, r5, #0x18 add r1, r4, #0x0 lsr r2, r2, #0x18 - bl FUN_020697CC + bl MonSetMoveInSlot pop {r3-r5, pc} .balign 4 - thumb_func_start FUN_0204A138 -FUN_0204A138: ; 0x0204A138 + thumb_func_start GetIdxOfFirstPartyMonWithMove +GetIdxOfFirstPartyMonWithMove: ; 0x0204A138 push {r3-r7, lr} str r0, [sp, #0x0] add r5, r1, #0x0 @@ -194,8 +194,8 @@ _0204A1A2: pop {r3-r7, pc} .balign 4 - thumb_func_start FUN_0204A1A8 -FUN_0204A1A8: ; 0x0204A1A8 + thumb_func_start CountAlivePokemon +CountAlivePokemon: ; 0x0204A1A8 push {r3-r7, lr} add r7, r0, #0x0 bl GetPartyCount @@ -208,7 +208,7 @@ _0204A1BA: add r0, r7, #0x0 add r1, r4, #0x0 bl GetPartyMonByIndex - bl FUN_0204A01C + bl MonNotFaintedOrEgg cmp r0, #0x0 beq _0204A1CC add r5, r5, #0x1 @@ -221,8 +221,8 @@ _0204A1D2: pop {r3-r7, pc} .balign 4 - thumb_func_start FUN_0204A1D8 -FUN_0204A1D8: ; 0x0204A1D8 + thumb_func_start GetFirstAliveMonInParty_CrashIfNone +GetFirstAliveMonInParty_CrashIfNone: ; 0x0204A1D8 push {r3-r7, lr} add r6, r0, #0x0 bl GetPartyCount @@ -235,7 +235,7 @@ _0204A1E8: add r1, r4, #0x0 bl GetPartyMonByIndex add r7, r0, #0x0 - bl FUN_0204A01C + bl MonNotFaintedOrEgg cmp r0, #0x0 beq _0204A1FE add r0, r7, #0x0 @@ -249,8 +249,8 @@ _0204A204: mov r0, #0x0 pop {r3-r7, pc} - thumb_func_start FUN_0204A20C -FUN_0204A20C: ; 0x0204A20C + thumb_func_start GetFirstNonEggInParty +GetFirstNonEggInParty: ; 0x0204A20C push {r3-r7, lr} add r6, r0, #0x0 bl GetPartyCount @@ -282,10 +282,10 @@ _0204A240: .balign 4 _0204A244: .word 0x00000000 - thumb_func_start FUN_0204A248 -FUN_0204A248: ; 0x0204A248 + thumb_func_start HasEnoughAlivePokemonForDoubleBattle +HasEnoughAlivePokemonForDoubleBattle: ; 0x0204A248 push {r3, lr} - bl FUN_0204A1A8 + bl CountAlivePokemon cmp r0, #0x2 blt _0204A256 mov r0, #0x1 @@ -295,8 +295,8 @@ _0204A256: pop {r3, pc} .balign 4 - thumb_func_start FUN_0204A25C -FUN_0204A25C: ; 0x0204A25C + thumb_func_start GiveAllMonsTheSinnohChampRibbon +GiveAllMonsTheSinnohChampRibbon: ; 0x0204A25C push {r3-r7, lr} mov r2, #0x1 add r1, sp, #0x0 @@ -329,8 +329,8 @@ _0204A298: pop {r3-r7, pc} .balign 4 - thumb_func_start FUN_0204A29C -FUN_0204A29C: ; 0x0204A29C + thumb_func_start ApplyPoisonStep +ApplyPoisonStep: ; 0x0204A29C push {r3-r7, lr} sub sp, #0x10 mov r7, #0x0 @@ -347,7 +347,7 @@ _0204A2B4: add r1, r4, #0x0 bl GetPartyMonByIndex add r5, r0, #0x0 - bl FUN_0204A01C + bl MonNotFaintedOrEgg cmp r0, #0x0 beq _0204A308 add r0, r5, #0x0 @@ -404,8 +404,8 @@ _0204A324: pop {r3-r7, pc} .balign 4 - thumb_func_start FUN_0204A32C -FUN_0204A32C: ; 0x0204A32C + thumb_func_start SurvivePoisoning +SurvivePoisoning: ; 0x0204A32C push {r3-r4, lr} sub sp, #0x4 mov r1, #0x9f diff --git a/arm9/asm/unk_0204B34C.s b/arm9/asm/unk_0204B34C.s index ac1c53ff..fe9cc3fd 100644 --- a/arm9/asm/unk_0204B34C.s +++ b/arm9/asm/unk_0204B34C.s @@ -288,7 +288,7 @@ FUN_0204B4FC: ; 0x0204B4FC add r0, r7, #0x0 bl FUN_0205C374 ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get add r4, r0, #0x0 ldr r0, [sp, #0x4] bl FUN_0204B34C @@ -297,7 +297,7 @@ FUN_0204B4FC: ; 0x0204B4FC add r0, r4, #0x0 lsr r2, r2, #0x10 mov r3, #0x4 - bl FUN_0206ED38 + bl Bag_AddItem add sp, #0xc pop {r4-r7, pc} .balign 4 diff --git a/arm9/asm/unk_02050E48.s b/arm9/asm/unk_02050E48.s index 74026711..51c42247 100644 --- a/arm9/asm/unk_02050E48.s +++ b/arm9/asm/unk_02050E48.s @@ -98,7 +98,7 @@ FUN_02050ED4: ; 0x02050ED4 str r0, [r4, #0x0] ldr r0, [r5, #0x24] ldr r0, [r0, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] add r0, r4, #0x0 mov r1, #0x0 diff --git a/arm9/asm/unk_0205CE48.s b/arm9/asm/unk_0205CE48.s index 631cedd6..c42ef09c 100644 --- a/arm9/asm/unk_0205CE48.s +++ b/arm9/asm/unk_0205CE48.s @@ -291,7 +291,7 @@ FUN_0205D024: ; 0x0205D024 bl SavArray_PlayerParty_get str r0, [r4, #0x0] ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] ldr r0, [r5, #0xc] bl FUN_02025838 @@ -774,7 +774,7 @@ FUN_0205D400: ; 0x0205D400 bl SavArray_PlayerParty_get str r0, [r4, #0x0] ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] ldr r0, [r5, #0xc] bl FUN_02025838 @@ -1146,11 +1146,11 @@ FUN_0205D6BC: ; 0x0205D6BC mov r0, #0xa strh r0, [r4, #0x2a] ldr r0, [r6, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get ldrh r1, [r5, #0x4] mov r2, #0x1 mov r3, #0xb - bl FUN_0206EDD4 + bl Bag_TakeItem pop {r3-r7, pc} .balign 4 _0205D710: .word MOD05_021F57F0 @@ -1389,8 +1389,8 @@ FUN_0205D8B8: ; 0x0205D8B8 str r0, [r4, #0x10] ldr r0, [r5, #0x0] ldr r0, [r0, #0xc] - bl FUN_0206F158 - bl FUN_0206EBC4 + bl Sav2_Bag_get + bl Bag_GetRegisteredItem add r2, r0, #0x0 ldr r0, [r5, #0x0] lsl r2, r2, #0x10 @@ -1505,7 +1505,7 @@ FUN_0205D9A8: ; 0x0205D9A8 bl SavArray_PlayerParty_get str r0, [r4, #0x0] ldr r0, [r5, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] ldr r0, [r5, #0xc] bl FUN_02025838 @@ -1571,11 +1571,11 @@ FUN_0205DA3C: ; 0x0205DA3C mov r0, #0xa strh r0, [r4, #0x2a] ldr r0, [r6, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get ldrh r1, [r5, #0x4] mov r2, #0x1 mov r3, #0xb - bl FUN_0206EDD4 + bl Bag_TakeItem pop {r4-r6, pc} nop _0205DA7C: .word FUN_0205DAAC @@ -1704,8 +1704,8 @@ _0205DB54: pop {r3-r7, pc} _0205DB66: ldr r0, [r5, #0xc] - bl FUN_0206F158 - bl FUN_0206EBC4 + bl Sav2_Bag_get + bl Bag_GetRegisteredItem lsl r0, r0, #0x10 lsr r0, r0, #0x10 mov r1, #0x6 diff --git a/arm9/asm/unk_0205DD18.s b/arm9/asm/unk_0205DD18.s index f5987509..80b7ca1a 100644 --- a/arm9/asm/unk_0205DD18.s +++ b/arm9/asm/unk_0205DD18.s @@ -1037,11 +1037,11 @@ FUN_0205E4A4: ; 0x0205E4A4 push {r4, lr} add r4, r0, #0x0 ldr r0, [r4, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get ldr r1, _0205E4D4 ; =0x000001AF mov r2, #0x1 mov r3, #0x4 - bl FUN_0206EE50 + bl Bag_HasItem cmp r0, #0x1 bne _0205E4D0 ldr r0, [r4, #0xc] diff --git a/arm9/asm/unk_0205FA2C.s b/arm9/asm/unk_0205FA2C.s index fc7d7a17..ae0d9d3f 100644 --- a/arm9/asm/unk_0205FA2C.s +++ b/arm9/asm/unk_0205FA2C.s @@ -32,7 +32,7 @@ FUN_0205FA2C: ; 0x0205FA2C bl SavArray_PlayerParty_get str r0, [r4, #0x0] add r0, r6, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] add r0, r4, #0x0 mov r1, #0x0 diff --git a/arm9/asm/unk_02060CCC.s b/arm9/asm/unk_02060CCC.s index 11145e7b..eaf86357 100644 --- a/arm9/asm/unk_02060CCC.s +++ b/arm9/asm/unk_02060CCC.s @@ -1726,12 +1726,12 @@ FUN_020618E0: ; 0x020618E0 FUN_020618EC: ; 0x020618EC push {r3, lr} ldr r0, [r0, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get mov r1, #0x6b lsl r1, r1, #0x2 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206EE50 + bl Bag_HasItem pop {r3, pc} .balign 4 @@ -2083,12 +2083,12 @@ FUN_02061B80: ; 0x02061B80 FUN_02061BB4: ; 0x02061BB4 push {r3, lr} ldr r0, [r0, #0xc] - bl FUN_0206F158 + bl Sav2_Bag_get mov r1, #0x6b lsl r1, r1, #0x2 mov r2, #0x1 mov r3, #0x20 - bl FUN_0206EE50 + bl Bag_HasItem pop {r3, pc} .balign 4 @@ -2173,7 +2173,7 @@ FUN_02061C5C: ; 0x02061C5C ldr r0, [r5, #0xc] add r4, r1, #0x0 bl SavArray_PlayerParty_get - bl FUN_0204A20C + bl GetFirstNonEggInParty add r1, sp, #0x8 add r2, sp, #0x4 add r3, sp, #0x4 diff --git a/arm9/asm/unk_020625EC.s b/arm9/asm/unk_020625EC.s index 5179b667..92829a69 100644 --- a/arm9/asm/unk_020625EC.s +++ b/arm9/asm/unk_020625EC.s @@ -1361,7 +1361,7 @@ FUN_02063028: ; 0x02063028 ldr r1, [r5, #0x0] add r7, r0, #0x1 add r0, r7, #0x0 - bl FUN_02012838 + bl ListMenu_ctor add r1, r5, #0x0 add r1, #0xc4 str r0, [r1, #0x0] @@ -1397,7 +1397,7 @@ _0206307C: ldr r0, [r0, #0x0] ldr r1, [r4, #0x64] add r2, r6, #0x0 - bl FUN_020128A0 + bl ListMenu_AddItem ldrb r0, [r5, #0x18] add r6, r6, #0x1 add r4, r4, #0x4 @@ -1409,7 +1409,7 @@ _02063094: ldr r0, [r0, #0x0] ldr r1, [r5, #0x38] ldr r2, _02063160 ; =0x0000FFFF - bl FUN_020128A0 + bl ListMenu_AddItem add r1, r5, #0x0 ldr r0, _02063164 ; =UNK_020F7C2C add r1, #0xa0 @@ -1519,7 +1519,7 @@ FUN_02063178: ; 0x02063178 add r0, r4, #0x0 add r0, #0xc4 ldr r0, [r0, #0x0] - bl FUN_02012870 + bl ListMenu_dtor add r0, r4, #0x0 add r0, #0xd4 bl FUN_02019570 diff --git a/arm9/asm/unk_020653EC.s b/arm9/asm/unk_020653EC.s index 452513ab..edeab8fa 100644 --- a/arm9/asm/unk_020653EC.s +++ b/arm9/asm/unk_020653EC.s @@ -800,7 +800,7 @@ _020659DC: add r1, r4, r1 ldrh r1, [r1, #0x22] ldr r2, [r4, #0x0] - bl FUN_0206EEF8 + bl Bag_GetQuantity cmp r0, #0x0 ldr r1, _02065AE8 ; =0x0000013B beq _02065A1A @@ -976,7 +976,7 @@ FUN_02065AF4: ; 0x02065AF4 ldrb r0, [r5, #0x1b] ldr r1, [r5, #0x0] add r0, r0, #0x1 - bl FUN_02012838 + bl ListMenu_ctor mov r1, #0x59 lsl r1, r1, #0x2 add r7, r5, #0x0 @@ -995,7 +995,7 @@ _02065B7E: ldr r1, [r2, #0x8] ldrb r2, [r2, #0x0] ldr r0, [r5, r0] - bl FUN_020128A0 + bl ListMenu_AddItem add r0, r6, #0x1 lsl r0, r0, #0x18 lsr r6, r0, #0x18 @@ -1011,7 +1011,7 @@ _02065B9E: sub r1, #0x4c ldr r1, [r5, r1] ldr r2, _02065CE0 ; =0x0000FFFF - bl FUN_020128A0 + bl ListMenu_AddItem add r0, r6, #0x1 lsl r0, r0, #0x18 mov r1, #0x5 @@ -1280,7 +1280,7 @@ FUN_02065DD8: ; 0x02065DD8 str r2, [sp, #0x4] ldr r1, [r5, #0x0] mov r0, #0x4 - bl FUN_02012838 + bl ListMenu_ctor mov r1, #0x59 lsl r1, r1, #0x2 str r0, [r5, r1] @@ -1309,7 +1309,7 @@ _02065E14: ldr r1, [r5, r7] ldr r2, [r6, r2] ldr r3, [r3, #0x4] - bl FUN_02012880 + bl ListMenu_ItemFromMsgData add r0, r4, #0x1 lsl r0, r0, #0x18 lsr r4, r0, #0x18 @@ -1422,7 +1422,7 @@ FUN_02065EF8: ; 0x02065EF8 mov r0, #0x59 lsl r0, r0, #0x2 ldr r0, [r4, r0] - bl FUN_02012870 + bl ListMenu_dtor mov r0, #0x65 lsl r0, r0, #0x2 add r0, r4, r0 @@ -1499,7 +1499,7 @@ FUN_02065F8C: ; 0x02065F8C mov r0, #0x59 lsl r0, r0, #0x2 ldr r0, [r4, r0] - bl FUN_02012870 + bl ListMenu_dtor mov r0, #0x5d lsl r0, r0, #0x2 add r0, r4, r0 @@ -1612,7 +1612,7 @@ FUN_02066070: ; 0x02066070 str r0, [sp, #0x4] str r0, [r6, r1] add r0, r4, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get mov r1, #0x1b lsl r1, r1, #0x4 str r0, [r6, r1] @@ -1762,7 +1762,7 @@ FUN_020661A0: ; 0x020661A0 ldr r0, [r5, r0] ldr r3, [r5, #0x0] mov r2, #0x1 - bl FUN_0206ED24 + bl Bag_HasSpaceForItem add r6, r0, #0x0 beq _020661D4 mov r0, #0x1b @@ -1771,7 +1771,7 @@ FUN_020661A0: ; 0x020661A0 ldr r0, [r5, r0] ldr r3, [r5, #0x0] mov r2, #0x1 - bl FUN_0206ED38 + bl Bag_AddItem _020661D4: mov r0, #0x6b lsl r0, r0, #0x2 @@ -1826,7 +1826,7 @@ FUN_020661F8: ; 0x020661F8 ldr r0, [r5, r0] ldr r3, [r5, #0x0] mov r2, #0x1 - bl FUN_0206ED24 + bl Bag_HasSpaceForItem cmp r0, #0x0 beq _0206625E mov r0, #0x1b @@ -1835,7 +1835,7 @@ FUN_020661F8: ; 0x020661F8 ldr r0, [r5, r0] ldr r3, [r5, #0x0] mov r2, #0x1 - bl FUN_0206ED38 + bl Bag_AddItem _0206625E: ldrb r1, [r5, #0x18] add r0, r5, #0x0 @@ -2383,7 +2383,7 @@ _02066676: lsl r0, r0, #0x2 ldr r0, [r5, r0] bl FUN_020377AC - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] mov r0, #0x5b lsl r0, r0, #0x2 diff --git a/arm9/asm/unk_0206ABC4.s b/arm9/asm/unk_0206ABC4.s index ddce6b39..9d8b12d8 100644 --- a/arm9/asm/unk_0206ABC4.s +++ b/arm9/asm/unk_0206ABC4.s @@ -535,7 +535,7 @@ _0206AFB0: lsl r2, r6, #0x18 ldr r0, [sp, #0x40] lsr r2, r2, #0x18 - bl FUN_020697CC + bl MonSetMoveInSlot add r6, r6, #0x1 add r7, r7, #0x2 cmp r6, #0x4 @@ -717,7 +717,7 @@ _0206B120: lsl r2, r6, #0x18 ldr r0, [sp, #0x40] lsr r2, r2, #0x18 - bl FUN_020697CC + bl MonSetMoveInSlot add r6, r6, #0x1 add r7, r7, #0x2 cmp r6, #0x4 diff --git a/arm9/asm/unk_0206C700.s b/arm9/asm/unk_0206C700.s index 94b4217b..7387f701 100644 --- a/arm9/asm/unk_0206C700.s +++ b/arm9/asm/unk_0206C700.s @@ -1744,7 +1744,7 @@ _0206D560: ldrh r1, [r1, #0x0] ldrb r2, [r2, #0x0] ldr r0, [r4, #0x28] - bl FUN_020697CC + bl MonSetMoveInSlot add r0, r4, #0x0 mov r1, #0x14 add r0, #0x66 @@ -2081,7 +2081,7 @@ _0206D854: ldr r0, [r4, #0x4c] ldr r2, [r4, #0x5c] mov r1, #0x4 - bl FUN_0206EEF8 + bl Bag_GetQuantity cmp r0, #0x0 beq _0206D86C ldr r0, [r4, #0x24] @@ -2216,7 +2216,7 @@ _0206D8EA: ldr r3, [r4, #0x5c] mov r1, #0x4 mov r2, #0x1 - bl FUN_0206EDD4 + bl Bag_TakeItem add sp, #0x20 pop {r4-r6, pc} _0206D9A0: diff --git a/arm9/asm/unk_0206E2F0.s b/arm9/asm/unk_0206E2F0.s index 264f9294..8694a11b 100644 --- a/arm9/asm/unk_0206E2F0.s +++ b/arm9/asm/unk_0206E2F0.s @@ -3,8 +3,8 @@ .text - thumb_func_start FUN_0206E2F0 -FUN_0206E2F0: ; 0x0206E2F0 + thumb_func_start BagView_new +BagView_new: ; 0x0206E2F0 push {r4, lr} mov r1, #0x78 bl AllocFromHeap @@ -44,8 +44,8 @@ FUN_0206E314: ; 0x0206E314 pop {r4-r6, pc} .balign 4 - thumb_func_start FUN_0206E330 -FUN_0206E330: ; 0x0206E330 + thumb_func_start BagView_setitem +BagView_setitem: ; 0x0206E330 push {r3-r4} mov r4, #0xc mul r4, r3 @@ -199,7 +199,7 @@ FUN_0206E3F8: ; 0x0206E3F8 b _0206E4FA _0206E428: mov r1, #0x1b - lsl r1, r1, #0x4 + lsl r1, r1, #0x4 ; ITEM_POINT_CARD cmp r5, r1 bne _0206E454 add r0, r6, #0x0 @@ -218,7 +218,7 @@ _0206E428: bl FUN_0200AD38 b _0206E4FA _0206E454: - add r2, r1, #0x2 + add r2, r1, #0x2 ; ITEM_SEAL_CASE cmp r5, r2 bne _0206E47E add r0, r6, #0x0 @@ -237,7 +237,7 @@ _0206E454: bl FUN_0200AD38 b _0206E4FA _0206E47E: - add r2, r1, #0x3 + add r2, r1, #0x3 ; ITEM_FASHION_CASE cmp r5, r2 bne _0206E4C0 add r0, r6, #0x0 @@ -266,7 +266,7 @@ _0206E47E: bl FUN_0200AD38 b _0206E4FA _0206E4C0: - add r1, #0xc + add r1, #0xc ; ITEM_COIN_CASE cmp r5, r1 bne _0206E4EA add r0, r6, #0x0 diff --git a/arm9/asm/unk_0206EB80.s b/arm9/asm/unk_0206EB80.s deleted file mode 100644 index bca18f77..00000000 --- a/arm9/asm/unk_0206EB80.s +++ /dev/null @@ -1,962 +0,0 @@ - .include "asm/macros.inc" - .include "global.inc" - - .text - - thumb_func_start FUN_0206EB80 -FUN_0206EB80: ; 0x0206EB80 - ldr r0, _0206EB84 ; =0x00000774 - bx lr - .balign 4 -_0206EB84: .word 0x00000774 - - thumb_func_start FUN_0206EB88 -FUN_0206EB88: ; 0x0206EB88 - push {r4, lr} - ldr r1, _0206EB9C ; =0x00000774 - bl AllocFromHeap - add r4, r0, #0x0 - bl FUN_0206EBA0 - add r0, r4, #0x0 - pop {r4, pc} - nop -_0206EB9C: .word 0x00000774 - - thumb_func_start FUN_0206EBA0 -FUN_0206EBA0: ; 0x0206EBA0 - ldr r3, _0206EBAC ; =MIi_CpuClear16 - add r1, r0, #0x0 - mov r0, #0x0 - ldr r2, _0206EBB0 ; =0x00000774 - bx r3 - nop -_0206EBAC: .word MIi_CpuClear16 -_0206EBB0: .word 0x00000774 - - thumb_func_start FUN_0206EBB4 -FUN_0206EBB4: ; 0x0206EBB4 - ldr r3, _0206EBBC ; =MI_CpuCopy8 - ldr r2, _0206EBC0 ; =0x00000774 - bx r3 - nop -_0206EBBC: .word MI_CpuCopy8 -_0206EBC0: .word 0x00000774 - - thumb_func_start FUN_0206EBC4 -FUN_0206EBC4: ; 0x0206EBC4 - mov r1, #0x77 - lsl r1, r1, #0x4 - ldr r0, [r0, r1] - bx lr - - thumb_func_start FUN_0206EBCC -FUN_0206EBCC: ; 0x0206EBCC - mov r2, #0x77 - lsl r2, r2, #0x4 - str r1, [r0, r2] - bx lr - - thumb_func_start FUN_0206EBD4 -FUN_0206EBD4: ; 0x0206EBD4 - push {r4-r6, lr} - add r5, r2, #0x0 - add r4, r0, #0x0 - add r0, r1, #0x0 - ldr r2, [sp, #0x10] - mov r1, #0x5 - add r6, r3, #0x0 - bl GetItemAttr - cmp r0, #0x7 - bhi _0206EC64 - add r1, r0, r0 - add r1, pc - ldrh r1, [r1, #0x6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0206EBF6: ; jump table (using 16-bit offset) - .short _0206EC14 - _0206EBF6 - 2; case 0 - .short _0206EC28 - _0206EBF6 - 2; case 1 - .short _0206EC34 - _0206EBF6 - 2; case 2 - .short _0206EC58 - _0206EBF6 - 2; case 3 - .short _0206EC1C - _0206EBF6 - 2; case 4 - .short _0206EC4C - _0206EBF6 - 2; case 5 - .short _0206EC40 - _0206EBF6 - 2; case 6 - .short _0206EC06 - _0206EBF6 - 2; case 7 -_0206EC06: - mov r1, #0xa5 - lsl r1, r1, #0x2 - add r1, r4, r1 - str r1, [r5, #0x0] - mov r1, #0x32 - str r1, [r6, #0x0] - pop {r4-r6, pc} -_0206EC14: - str r4, [r5, #0x0] - mov r1, #0xa5 - str r1, [r6, #0x0] - pop {r4-r6, pc} -_0206EC1C: - ldr r1, _0206EC68 ; =0x000005BC - add r1, r4, r1 - str r1, [r5, #0x0] - mov r1, #0x40 - str r1, [r6, #0x0] - pop {r4-r6, pc} -_0206EC28: - ldr r1, _0206EC6C ; =0x0000051C - add r1, r4, r1 - str r1, [r5, #0x0] - mov r1, #0x28 - str r1, [r6, #0x0] - pop {r4-r6, pc} -_0206EC34: - ldr r1, _0206EC70 ; =0x000006BC - add r1, r4, r1 - str r1, [r5, #0x0] - mov r1, #0xf - str r1, [r6, #0x0] - pop {r4-r6, pc} -_0206EC40: - ldr r1, _0206EC74 ; =0x000006F8 - add r1, r4, r1 - str r1, [r5, #0x0] - mov r1, #0x1e - str r1, [r6, #0x0] - pop {r4-r6, pc} -_0206EC4C: - ldr r1, _0206EC78 ; =0x000004EC - add r1, r4, r1 - str r1, [r5, #0x0] - mov r1, #0xc - str r1, [r6, #0x0] - pop {r4-r6, pc} -_0206EC58: - mov r1, #0xd7 - lsl r1, r1, #0x2 - add r1, r4, r1 - str r1, [r5, #0x0] - mov r1, #0x64 - str r1, [r6, #0x0] -_0206EC64: - pop {r4-r6, pc} - nop -_0206EC68: .word 0x000005BC -_0206EC6C: .word 0x0000051C -_0206EC70: .word 0x000006BC -_0206EC74: .word 0x000006F8 -_0206EC78: .word 0x000004EC - - thumb_func_start FUN_0206EC7C -FUN_0206EC7C: ; 0x0206EC7C - push {r4-r7} - add r5, r1, #0x0 - mov r1, #0x0 - add r7, r0, #0x0 - add r4, r2, #0x0 - mov r12, r3 - mvn r1, r1 - mov r0, #0x0 - cmp r5, #0x0 - bls _0206ECCA - add r2, r7, #0x0 - add r3, r1, #0x0 -_0206EC94: - ldrh r6, [r2, #0x0] - cmp r4, r6 - bne _0206ECB2 - lsl r0, r0, #0x2 - add r0, r7, r0 - ldrh r2, [r0, #0x2] - mov r1, r12 - add r2, r1, r2 - add r1, sp, #0x0 - ldrh r1, [r1, #0x10] - cmp r2, r1 - ble _0206ECDC - mov r0, #0x0 - pop {r4-r7} - bx lr -_0206ECB2: - cmp r1, r3 - bne _0206ECC2 - cmp r6, #0x0 - bne _0206ECC2 - ldrh r6, [r2, #0x2] - cmp r6, #0x0 - bne _0206ECC2 - add r1, r0, #0x0 -_0206ECC2: - add r0, r0, #0x1 - add r2, r2, #0x4 - cmp r0, r5 - blo _0206EC94 -_0206ECCA: - mov r0, #0x0 - mvn r0, r0 - cmp r1, r0 - bne _0206ECD8 - mov r0, #0x0 - pop {r4-r7} - bx lr -_0206ECD8: - lsl r0, r1, #0x2 - add r0, r7, r0 -_0206ECDC: - pop {r4-r7} - bx lr - - thumb_func_start FUN_0206ECE0 -FUN_0206ECE0: ; 0x0206ECE0 - push {r4-r5, lr} - sub sp, #0xc - add r4, r2, #0x0 - str r3, [sp, #0x0] - add r2, sp, #0x8 - add r3, sp, #0x4 - add r5, r1, #0x0 - bl FUN_0206EBD4 - cmp r0, #0x3 - bne _0206ED0A - mov r0, #0x63 - str r0, [sp, #0x0] - ldr r0, [sp, #0x8] - ldr r1, [sp, #0x4] - add r2, r5, #0x0 - add r3, r4, #0x0 - bl FUN_0206EC7C - add sp, #0xc - pop {r4-r5, pc} -_0206ED0A: - ldr r0, _0206ED20 ; =0x000003E7 - add r2, r5, #0x0 - str r0, [sp, #0x0] - ldr r0, [sp, #0x8] - ldr r1, [sp, #0x4] - add r3, r4, #0x0 - bl FUN_0206EC7C - add sp, #0xc - pop {r4-r5, pc} - nop -_0206ED20: .word 0x000003E7 - - thumb_func_start FUN_0206ED24 -FUN_0206ED24: ; 0x0206ED24 - push {r3, lr} - bl FUN_0206ECE0 - cmp r0, #0x0 - beq _0206ED32 - mov r0, #0x1 - pop {r3, pc} -_0206ED32: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start FUN_0206ED38 -FUN_0206ED38: ; 0x0206ED38 - push {r4-r7, lr} - sub sp, #0xc - add r7, r0, #0x0 - add r5, r1, #0x0 - add r4, r2, #0x0 - add r6, r3, #0x0 - bl FUN_0206ECE0 - str r0, [sp, #0x8] - cmp r0, #0x0 - bne _0206ED54 - add sp, #0xc - mov r0, #0x0 - pop {r4-r7, pc} -_0206ED54: - strh r5, [r0, #0x0] - ldr r1, [sp, #0x8] - add r2, sp, #0x8 - ldrh r0, [r1, #0x2] - add r3, sp, #0x4 - add r0, r0, r4 - strh r0, [r1, #0x2] - add r0, r7, #0x0 - add r1, r5, #0x0 - str r6, [sp, #0x0] - bl FUN_0206EBD4 - sub r0, r0, #0x3 - cmp r0, #0x1 - bhi _0206ED7A - ldr r0, [sp, #0x8] - ldr r1, [sp, #0x4] - bl FUN_0206EF94 -_0206ED7A: - mov r0, #0x1 - add sp, #0xc - pop {r4-r7, pc} - - thumb_func_start FUN_0206ED80 -FUN_0206ED80: ; 0x0206ED80 - push {r3-r6} - mov r5, #0x0 - cmp r1, #0x0 - bls _0206EDA8 - add r6, r0, #0x0 -_0206ED8A: - ldrh r4, [r6, #0x0] - cmp r2, r4 - bne _0206EDA0 - lsl r1, r5, #0x2 - add r0, r0, r1 - ldrh r1, [r0, #0x2] - cmp r1, r3 - bhs _0206EDAA - mov r0, #0x0 - pop {r3-r6} - bx lr -_0206EDA0: - add r5, r5, #0x1 - add r6, r6, #0x4 - cmp r5, r1 - blo _0206ED8A -_0206EDA8: - mov r0, #0x0 -_0206EDAA: - pop {r3-r6} - bx lr - .balign 4 - - thumb_func_start FUN_0206EDB0 -FUN_0206EDB0: ; 0x0206EDB0 - push {r4-r5, lr} - sub sp, #0xc - add r4, r2, #0x0 - str r3, [sp, #0x0] - add r2, sp, #0x8 - add r3, sp, #0x4 - add r5, r1, #0x0 - bl FUN_0206EBD4 - ldr r0, [sp, #0x8] - ldr r1, [sp, #0x4] - add r2, r5, #0x0 - add r3, r4, #0x0 - bl FUN_0206ED80 - add sp, #0xc - pop {r4-r5, pc} - .balign 4 - - thumb_func_start FUN_0206EDD4 -FUN_0206EDD4: ; 0x0206EDD4 - push {r4-r7, lr} - sub sp, #0xc - add r6, r0, #0x0 - add r7, r1, #0x0 - add r5, r2, #0x0 - add r4, r3, #0x0 - bl FUN_0206EDB0 - str r0, [sp, #0x8] - cmp r0, #0x0 - bne _0206EDF0 - add sp, #0xc - mov r0, #0x0 - pop {r4-r7, pc} -_0206EDF0: - ldrh r1, [r0, #0x2] - sub r1, r1, r5 - strh r1, [r0, #0x2] - ldr r1, [sp, #0x8] - ldrh r0, [r1, #0x2] - cmp r0, #0x0 - bne _0206EE02 - mov r0, #0x0 - strh r0, [r1, #0x0] -_0206EE02: - str r4, [sp, #0x0] - add r0, r6, #0x0 - add r1, r7, #0x0 - add r2, sp, #0x8 - add r3, sp, #0x4 - bl FUN_0206EBD4 - ldr r0, [sp, #0x8] - ldr r1, [sp, #0x4] - bl FUN_0206EF48 - mov r0, #0x1 - add sp, #0xc - pop {r4-r7, pc} - .balign 4 - - thumb_func_start FUN_0206EE20 -FUN_0206EE20: ; 0x0206EE20 - push {r4-r6, lr} - add r5, r0, #0x0 - add r6, r1, #0x0 - add r4, r3, #0x0 - bl FUN_0206ED80 - cmp r0, #0x0 - bne _0206EE34 - mov r0, #0x0 - pop {r4-r6, pc} -_0206EE34: - ldrh r1, [r0, #0x2] - sub r1, r1, r4 - strh r1, [r0, #0x2] - ldrh r1, [r0, #0x2] - cmp r1, #0x0 - bne _0206EE44 - mov r1, #0x0 - strh r1, [r0, #0x0] -_0206EE44: - add r0, r5, #0x0 - add r1, r6, #0x0 - bl FUN_0206EF48 - mov r0, #0x1 - pop {r4-r6, pc} - - thumb_func_start FUN_0206EE50 -FUN_0206EE50: ; 0x0206EE50 - push {r3, lr} - bl FUN_0206EDB0 - cmp r0, #0x0 - beq _0206EE5E - mov r0, #0x1 - pop {r3, pc} -_0206EE5E: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start FUN_0206EE64 -FUN_0206EE64: ; 0x0206EE64 - cmp r1, #0x7 - bhi _0206EEC4 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #0x6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0206EE74: ; jump table (using 16-bit offset) - .short _0206EE8E - _0206EE74 - 2; case 0 - .short _0206EE9A - _0206EE74 - 2; case 1 - .short _0206EEA2 - _0206EE74 - 2; case 2 - .short _0206EEBA - _0206EE74 - 2; case 3 - .short _0206EE92 - _0206EE74 - 2; case 4 - .short _0206EEB2 - _0206EE74 - 2; case 5 - .short _0206EEAA - _0206EE74 - 2; case 6 - .short _0206EE84 - _0206EE74 - 2; case 7 -_0206EE84: - mov r1, #0xa5 - lsl r1, r1, #0x2 - add r0, r0, r1 - mov r2, #0x32 - b _0206EEC8 -_0206EE8E: - mov r2, #0xa5 - b _0206EEC8 -_0206EE92: - ldr r1, _0206EEE4 ; =0x000005BC - mov r2, #0x40 - add r0, r0, r1 - b _0206EEC8 -_0206EE9A: - ldr r1, _0206EEE8 ; =0x0000051C - mov r2, #0x28 - add r0, r0, r1 - b _0206EEC8 -_0206EEA2: - ldr r1, _0206EEEC ; =0x000006BC - mov r2, #0xf - add r0, r0, r1 - b _0206EEC8 -_0206EEAA: - ldr r1, _0206EEF0 ; =0x000006F8 - mov r2, #0x1e - add r0, r0, r1 - b _0206EEC8 -_0206EEB2: - ldr r1, _0206EEF4 ; =0x000004EC - mov r2, #0xc - add r0, r0, r1 - b _0206EEC8 -_0206EEBA: - mov r1, #0xd7 - lsl r1, r1, #0x2 - add r0, r0, r1 - mov r2, #0x64 - b _0206EEC8 -_0206EEC4: - mov r0, #0x0 - bx lr -_0206EEC8: - mov r3, #0x0 - cmp r2, #0x0 - bls _0206EEE0 -_0206EECE: - ldrh r1, [r0, #0x0] - cmp r1, #0x0 - beq _0206EED8 - mov r0, #0x1 - bx lr -_0206EED8: - add r3, r3, #0x1 - add r0, r0, #0x4 - cmp r3, r2 - blo _0206EECE -_0206EEE0: - mov r0, #0x0 - bx lr - .balign 4 -_0206EEE4: .word 0x000005BC -_0206EEE8: .word 0x0000051C -_0206EEEC: .word 0x000006BC -_0206EEF0: .word 0x000006F8 -_0206EEF4: .word 0x000004EC - - thumb_func_start FUN_0206EEF8 -FUN_0206EEF8: ; 0x0206EEF8 - push {r3, lr} - add r3, r2, #0x0 - mov r2, #0x1 - bl FUN_0206EDB0 - cmp r0, #0x0 - bne _0206EF0A - mov r0, #0x0 - pop {r3, pc} -_0206EF0A: - ldrh r0, [r0, #0x2] - pop {r3, pc} - .balign 4 - - thumb_func_start FUN_0206EF10 -FUN_0206EF10: ; 0x0206EF10 - push {r3, lr} - mov r3, #0x1 - bl FUN_0206ED80 - cmp r0, #0x0 - bne _0206EF20 - mov r0, #0x0 - pop {r3, pc} -_0206EF20: - ldrh r0, [r0, #0x2] - pop {r3, pc} - - thumb_func_start FUN_0206EF24 -FUN_0206EF24: ; 0x0206EF24 - push {r3} - sub sp, #0x4 - ldrh r3, [r0, #0x0] - add r2, sp, #0x0 - strh r3, [r2, #0x0] - ldrh r3, [r0, #0x2] - strh r3, [r2, #0x2] - ldrh r3, [r1, #0x0] - strh r3, [r0, #0x0] - ldrh r3, [r1, #0x2] - strh r3, [r0, #0x2] - ldrh r0, [r2, #0x0] - strh r0, [r1, #0x0] - ldrh r0, [r2, #0x2] - strh r0, [r1, #0x2] - add sp, #0x4 - pop {r3} - bx lr - - thumb_func_start FUN_0206EF48 -FUN_0206EF48: ; 0x0206EF48 - push {r4-r7, lr} - sub sp, #0xc - str r0, [sp, #0x0] - mov r0, #0x0 - add r7, r1, #0x0 - str r0, [sp, #0x4] - sub r0, r7, #0x1 - str r0, [sp, #0x8] - beq _0206EF8E - ldr r4, [sp, #0x0] -_0206EF5C: - ldr r0, [sp, #0x4] - add r6, r0, #0x1 - cmp r6, r7 - bhs _0206EF80 - ldr r0, [sp, #0x0] - lsl r1, r6, #0x2 - add r5, r0, r1 -_0206EF6A: - ldrh r0, [r4, #0x2] - cmp r0, #0x0 - bne _0206EF78 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl FUN_0206EF24 -_0206EF78: - add r6, r6, #0x1 - add r5, r5, #0x4 - cmp r6, r7 - blo _0206EF6A -_0206EF80: - ldr r0, [sp, #0x4] - add r4, r4, #0x4 - add r1, r0, #0x1 - ldr r0, [sp, #0x8] - str r1, [sp, #0x4] - cmp r1, r0 - blo _0206EF5C -_0206EF8E: - add sp, #0xc - pop {r4-r7, pc} - .balign 4 - - thumb_func_start FUN_0206EF94 -FUN_0206EF94: ; 0x0206EF94 - push {r4-r7, lr} - sub sp, #0xc - str r0, [sp, #0x0] - mov r0, #0x0 - add r7, r1, #0x0 - str r0, [sp, #0x4] - sub r0, r7, #0x1 - str r0, [sp, #0x8] - beq _0206EFE8 - ldr r4, [sp, #0x0] -_0206EFA8: - ldr r0, [sp, #0x4] - add r6, r0, #0x1 - cmp r6, r7 - bhs _0206EFDA - ldr r0, [sp, #0x0] - lsl r1, r6, #0x2 - add r5, r0, r1 -_0206EFB6: - ldrh r0, [r4, #0x2] - cmp r0, #0x0 - beq _0206EFCA - ldrh r0, [r5, #0x2] - cmp r0, #0x0 - beq _0206EFD2 - ldrh r1, [r4, #0x0] - ldrh r0, [r5, #0x0] - cmp r1, r0 - bls _0206EFD2 -_0206EFCA: - add r0, r4, #0x0 - add r1, r5, #0x0 - bl FUN_0206EF24 -_0206EFD2: - add r6, r6, #0x1 - add r5, r5, #0x4 - cmp r6, r7 - blo _0206EFB6 -_0206EFDA: - ldr r0, [sp, #0x4] - add r4, r4, #0x4 - add r1, r0, #0x1 - ldr r0, [sp, #0x8] - str r1, [sp, #0x4] - cmp r1, r0 - blo _0206EFA8 -_0206EFE8: - add sp, #0xc - pop {r4-r7, pc} - - thumb_func_start FUN_0206EFEC -FUN_0206EFEC: ; 0x0206EFEC - push {r3-r7, lr} - add r5, r0, #0x0 - lsl r0, r2, #0x18 - add r7, r1, #0x0 - lsr r0, r0, #0x18 - bl FUN_0206E2F0 - add r6, r0, #0x0 - ldrb r0, [r7, #0x0] - mov r4, #0x0 - cmp r0, #0xff - beq _0206F0BE -_0206F004: - ldrb r0, [r7, r4] - cmp r0, #0x7 - bhi _0206F0B6 - add r0, r0, r0 - add r0, pc - ldrh r0, [r0, #0x6] - lsl r0, r0, #0x10 - asr r0, r0, #0x10 - add pc, r0 -_0206F016: ; jump table (using 16-bit offset) - .short _0206F03A - _0206F016 - 2; case 0 - .short _0206F05C - _0206F016 - 2; case 1 - .short _0206F06E - _0206F016 - 2; case 2 - .short _0206F0A4 - _0206F016 - 2; case 3 - .short _0206F04A - _0206F016 - 2; case 4 - .short _0206F092 - _0206F016 - 2; case 5 - .short _0206F080 - _0206F016 - 2; case 6 - .short _0206F026 - _0206F016 - 2; case 7 -_0206F026: - mov r1, #0xa5 - lsl r1, r1, #0x2 - lsl r3, r4, #0x18 - add r0, r6, #0x0 - add r1, r5, r1 - mov r2, #0x7 - lsr r3, r3, #0x18 - bl FUN_0206E330 - b _0206F0B6 -_0206F03A: - lsl r3, r4, #0x18 - add r0, r6, #0x0 - add r1, r5, #0x0 - mov r2, #0x0 - lsr r3, r3, #0x18 - bl FUN_0206E330 - b _0206F0B6 -_0206F04A: - ldr r1, _0206F0C4 ; =0x000005BC - lsl r3, r4, #0x18 - add r0, r6, #0x0 - add r1, r5, r1 - mov r2, #0x4 - lsr r3, r3, #0x18 - bl FUN_0206E330 - b _0206F0B6 -_0206F05C: - ldr r1, _0206F0C8 ; =0x0000051C - lsl r3, r4, #0x18 - add r0, r6, #0x0 - add r1, r5, r1 - mov r2, #0x1 - lsr r3, r3, #0x18 - bl FUN_0206E330 - b _0206F0B6 -_0206F06E: - ldr r1, _0206F0CC ; =0x000006BC - lsl r3, r4, #0x18 - add r0, r6, #0x0 - add r1, r5, r1 - mov r2, #0x2 - lsr r3, r3, #0x18 - bl FUN_0206E330 - b _0206F0B6 -_0206F080: - ldr r1, _0206F0D0 ; =0x000006F8 - lsl r3, r4, #0x18 - add r0, r6, #0x0 - add r1, r5, r1 - mov r2, #0x6 - lsr r3, r3, #0x18 - bl FUN_0206E330 - b _0206F0B6 -_0206F092: - ldr r1, _0206F0D4 ; =0x000004EC - lsl r3, r4, #0x18 - add r0, r6, #0x0 - add r1, r5, r1 - mov r2, #0x5 - lsr r3, r3, #0x18 - bl FUN_0206E330 - b _0206F0B6 -_0206F0A4: - mov r1, #0xd7 - lsl r1, r1, #0x2 - lsl r3, r4, #0x18 - add r0, r6, #0x0 - add r1, r5, r1 - mov r2, #0x3 - lsr r3, r3, #0x18 - bl FUN_0206E330 -_0206F0B6: - add r4, r4, #0x1 - ldrb r0, [r7, r4] - cmp r0, #0xff - bne _0206F004 -_0206F0BE: - add r0, r6, #0x0 - pop {r3-r7, pc} - nop -_0206F0C4: .word 0x000005BC -_0206F0C8: .word 0x0000051C -_0206F0CC: .word 0x000006BC -_0206F0D0: .word 0x000006F8 -_0206F0D4: .word 0x000004EC - - thumb_func_start FUN_0206F0D8 -FUN_0206F0D8: ; 0x0206F0D8 - cmp r1, #0x7 - bhi _0206F136 - add r1, r1, r1 - add r1, pc - ldrh r1, [r1, #0x6] - lsl r1, r1, #0x10 - asr r1, r1, #0x10 - add pc, r1 -_0206F0E8: ; jump table (using 16-bit offset) - .short _0206F102 - _0206F0E8 - 2; case 0 - .short _0206F10E - _0206F0E8 - 2; case 1 - .short _0206F116 - _0206F0E8 - 2; case 2 - .short _0206F12E - _0206F0E8 - 2; case 3 - .short _0206F106 - _0206F0E8 - 2; case 4 - .short _0206F126 - _0206F0E8 - 2; case 5 - .short _0206F11E - _0206F0E8 - 2; case 6 - .short _0206F0F8 - _0206F0E8 - 2; case 7 -_0206F0F8: - mov r1, #0xa5 - lsl r1, r1, #0x2 - add r0, r0, r1 - mov r3, #0x32 - b _0206F136 -_0206F102: - mov r3, #0xa5 - b _0206F136 -_0206F106: - ldr r1, _0206F144 ; =0x000005BC - mov r3, #0x40 - add r0, r0, r1 - b _0206F136 -_0206F10E: - ldr r1, _0206F148 ; =0x0000051C - mov r3, #0x28 - add r0, r0, r1 - b _0206F136 -_0206F116: - ldr r1, _0206F14C ; =0x000006BC - mov r3, #0xf - add r0, r0, r1 - b _0206F136 -_0206F11E: - ldr r1, _0206F150 ; =0x000006F8 - mov r3, #0x1e - add r0, r0, r1 - b _0206F136 -_0206F126: - ldr r1, _0206F154 ; =0x000004EC - mov r3, #0xc - add r0, r0, r1 - b _0206F136 -_0206F12E: - mov r1, #0xd7 - lsl r1, r1, #0x2 - add r0, r0, r1 - mov r3, #0x64 -_0206F136: - cmp r2, r3 - blo _0206F13E - mov r0, #0x0 - bx lr -_0206F13E: - lsl r1, r2, #0x2 - add r0, r0, r1 - bx lr - .balign 4 -_0206F144: .word 0x000005BC -_0206F148: .word 0x0000051C -_0206F14C: .word 0x000006BC -_0206F150: .word 0x000006F8 -_0206F154: .word 0x000004EC - - thumb_func_start FUN_0206F158 -FUN_0206F158: ; 0x0206F158 - ldr r3, _0206F160 ; =SavArray_get - mov r1, #0x3 - bx r3 - nop -_0206F160: .word SavArray_get - - thumb_func_start FUN_0206F164 -FUN_0206F164: ; 0x0206F164 - push {r4, lr} - mov r1, #0x24 - bl AllocFromHeap - add r4, r0, #0x0 - mov r0, #0x0 - add r1, r4, #0x0 - mov r2, #0x24 - bl MIi_CpuClear16 - add r0, r4, #0x0 - pop {r4, pc} - - thumb_func_start FUN_0206F17C -FUN_0206F17C: ; 0x0206F17C - push {r3-r4} - add r4, r0, r1 - ldrb r4, [r4, #0x8] - strb r4, [r2, #0x0] - ldrb r0, [r0, r1] - strb r0, [r3, #0x0] - pop {r3-r4} - bx lr - - thumb_func_start FUN_0206F18C -FUN_0206F18C: ; 0x0206F18C - ldrh r0, [r0, #0x10] - bx lr - - thumb_func_start FUN_0206F190 -FUN_0206F190: ; 0x0206F190 - push {r3-r4} - add r4, r0, r1 - strb r2, [r4, #0x8] - strb r3, [r0, r1] - pop {r3-r4} - bx lr - - thumb_func_start FUN_0206F19C -FUN_0206F19C: ; 0x0206F19C - strh r1, [r0, #0x10] - bx lr - - thumb_func_start FUN_0206F1A0 -FUN_0206F1A0: ; 0x0206F1A0 - add r1, r0, r1 - ldrb r0, [r1, #0x19] - strb r0, [r2, #0x0] - ldrb r0, [r1, #0x14] - strb r0, [r3, #0x0] - bx lr - - thumb_func_start FUN_0206F1AC -FUN_0206F1AC: ; 0x0206F1AC - ldrh r0, [r0, #0x1e] - bx lr - - thumb_func_start FUN_0206F1B0 -FUN_0206F1B0: ; 0x0206F1B0 - ldrh r0, [r0, #0x20] - bx lr - - thumb_func_start FUN_0206F1B4 -FUN_0206F1B4: ; 0x0206F1B4 - ldrh r0, [r0, #0x22] - bx lr - - thumb_func_start FUN_0206F1B8 -FUN_0206F1B8: ; 0x0206F1B8 - add r0, r0, r1 - strb r2, [r0, #0x19] - strb r3, [r0, #0x14] - bx lr - - thumb_func_start FUN_0206F1C0 -FUN_0206F1C0: ; 0x0206F1C0 - push {r4-r6, lr} - mov r4, #0x0 - add r5, r0, #0x0 - add r6, r4, #0x0 -_0206F1C8: - add r0, r5, #0x0 - add r1, r4, #0x0 - add r2, r6, #0x0 - add r3, r6, #0x0 - bl FUN_0206F1B8 - add r4, r4, #0x1 - cmp r4, #0x5 - blo _0206F1C8 - add r0, r5, #0x0 - mov r1, #0x0 - bl FUN_0206F1EC - pop {r4-r6, pc} - - thumb_func_start FUN_0206F1E4 -FUN_0206F1E4: ; 0x0206F1E4 - strh r1, [r0, #0x1e] - strh r2, [r0, #0x20] - bx lr - .balign 4 - - thumb_func_start FUN_0206F1EC -FUN_0206F1EC: ; 0x0206F1EC - strh r1, [r0, #0x22] - bx lr diff --git a/arm9/asm/unk_0206F3FC.s b/arm9/asm/unk_0206F3FC.s index 4dc1be07..5c8bbf31 100644 --- a/arm9/asm/unk_0206F3FC.s +++ b/arm9/asm/unk_0206F3FC.s @@ -778,7 +778,7 @@ _0206F914: bl FUN_02001C5C ldr r0, _0206F978 ; =0x000006F8 ldr r0, [r4, r0] - bl FUN_02012870 + bl ListMenu_dtor add r0, r4, #0x0 mov r1, #0x1d mov r2, #0x1 @@ -5415,7 +5415,7 @@ _02071E5A: mov r3, #0xc ldr r0, [r1, #0x4] ldrh r1, [r1, #0x24] - bl FUN_0206EDD4 + bl Bag_TakeItem add r0, r4, #0x0 mov r1, #0x1a bl GetItemAttr_PreloadedItemData @@ -5666,7 +5666,7 @@ FUN_02072080: ; 0x02072080 ldr r1, [r4, r0] ldr r0, [r1, #0x4] ldrh r1, [r1, #0x24] - bl FUN_0206EDD4 + bl Bag_TakeItem add r0, r5, #0x0 mov r1, #0x6 add r2, sp, #0x0 @@ -5709,7 +5709,7 @@ FUN_020720E0: ; 0x020720E0 lsr r1, r1, #0x10 mov r2, #0x1 mov r3, #0xc - bl FUN_0206ED38 + bl Bag_AddItem add r0, r5, #0x0 mov r1, #0x6 add r2, sp, #0x1c @@ -5825,7 +5825,7 @@ _020721B0: mov r2, #0x1 ldr r0, [r0, #0x4] mov r3, #0xc - bl FUN_0206ED38 + bl Bag_AddItem cmp r0, #0x0 bne _0207220C add r0, r5, #0x0 @@ -5854,7 +5854,7 @@ _0207220C: ldr r0, [r0, #0x4] mov r2, #0x1 mov r3, #0xc - bl FUN_0206EDD4 + bl Bag_TakeItem add r0, r5, #0x0 add r1, r7, #0x0 add r2, r6, #0x0 @@ -6024,7 +6024,7 @@ _02072388: ldr r0, [r0, #0x4] mov r2, #0x1 mov r3, #0xc - bl FUN_0206ED38 + bl Bag_AddItem ldr r2, _0207241C ; =0x0000069C mov r1, #0x54 ldr r0, [r5, r2] diff --git a/arm9/asm/unk_02072548.s b/arm9/asm/unk_02072548.s index 3479c659..99ab8a55 100644 --- a/arm9/asm/unk_02072548.s +++ b/arm9/asm/unk_02072548.s @@ -453,7 +453,7 @@ FUN_02072844: ; 0x02072844 bl FUN_02019064 ldr r0, [sp, #0x14] mov r1, #0xc - bl FUN_02012838 + bl ListMenu_ctor ldr r1, _0207294C ; =0x000006F8 mov r6, #0x0 str r0, [r5, r1] @@ -473,7 +473,7 @@ _02072890: ldr r1, _02072950 ; =0x000006E8 ldr r0, [r5, r0] ldr r1, [r3, r1] - bl FUN_020128A0 + bl ListMenu_AddItem add r0, r6, #0x1 lsl r0, r0, #0x10 lsr r6, r0, #0x10 @@ -488,7 +488,7 @@ _020728B4: ldr r1, _02072954 ; =0x000006AC ldr r0, [r5, r0] ldr r1, [r3, r1] - bl FUN_020128A0 + bl ListMenu_AddItem _020728CC: add r0, r4, #0x1 lsl r0, r0, #0x10 diff --git a/arm9/asm/unk_02073DA8.s b/arm9/asm/unk_02073DA8.s index cf11907a..8eed46de 100644 --- a/arm9/asm/unk_02073DA8.s +++ b/arm9/asm/unk_02073DA8.s @@ -46,7 +46,7 @@ FUN_02073DB4: ; 0x02073DB4 bl FUN_02001C5C ldr r0, _02073DF0 ; =0x000006F8 ldr r0, [r4, r0] - bl FUN_02012870 + bl ListMenu_dtor mov r0, #0x95 lsl r0, r0, #0x2 add r0, r4, r0 @@ -69,7 +69,7 @@ FUN_02073DF4: ; 0x02073DF4 bl FUN_020731D4 mov r0, #0x3 mov r1, #0xc - bl FUN_02012838 + bl ListMenu_ctor ldr r1, _02073EB0 ; =0x000006F8 str r0, [r5, r1] mov r0, #0x3 @@ -79,7 +79,7 @@ FUN_02073DF4: ; 0x02073DF4 ldr r0, [r5, r1] sub r1, #0x40 ldr r1, [r5, r1] - bl FUN_020128A0 + bl ListMenu_AddItem mov r0, #0x4 bl FUN_02073DA8 ldr r1, _02073EB0 ; =0x000006F8 @@ -87,7 +87,7 @@ FUN_02073DF4: ; 0x02073DF4 ldr r0, [r5, r1] sub r1, #0x3c ldr r1, [r5, r1] - bl FUN_020128A0 + bl ListMenu_AddItem mov r0, #0x9 bl FUN_02073DA8 ldr r1, _02073EB0 ; =0x000006F8 @@ -95,7 +95,7 @@ FUN_02073DF4: ; 0x02073DF4 ldr r0, [r5, r1] sub r1, #0x28 ldr r1, [r5, r1] - bl FUN_020128A0 + bl ListMenu_AddItem ldr r0, _02073EB0 ; =0x000006F8 mov r1, #0x0 ldr r0, [r5, r0] @@ -155,7 +155,7 @@ FUN_02073EB8: ; 0x02073EB8 bl FUN_02001C5C ldr r0, _02073EE4 ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor ldr r0, _02073EE8 ; =0x000005A4 mov r1, #0x3 ldr r0, [r5, r0] @@ -186,7 +186,7 @@ FUN_02073EEC: ; 0x02073EEC bl FUN_02001C5C ldr r0, _02074048 ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor ldr r0, _0207404C ; =0x00000B25 ldrb r1, [r5, r0] mov r0, #0x2c @@ -230,7 +230,7 @@ _02073F66: ldr r0, [r0, #0x4] mov r2, #0x1 mov r3, #0xc - bl FUN_0206ED38 + bl Bag_AddItem cmp r0, #0x1 bne _0207400A ldr r0, _02074054 ; =0x000005A4 @@ -381,7 +381,7 @@ FUN_020740AC: ; 0x020740AC bl FUN_020731D4 mov r0, #0x3 mov r1, #0xc - bl FUN_02012838 + bl ListMenu_ctor ldr r1, _02074168 ; =0x000006F8 str r0, [r5, r1] mov r0, #0x6 @@ -391,7 +391,7 @@ FUN_020740AC: ; 0x020740AC ldr r0, [r5, r1] sub r1, #0x34 ldr r1, [r5, r1] - bl FUN_020128A0 + bl ListMenu_AddItem mov r0, #0x7 bl FUN_02073DA8 ldr r1, _02074168 ; =0x000006F8 @@ -399,7 +399,7 @@ FUN_020740AC: ; 0x020740AC ldr r0, [r5, r1] sub r1, #0x30 ldr r1, [r5, r1] - bl FUN_020128A0 + bl ListMenu_AddItem mov r0, #0x9 bl FUN_02073DA8 ldr r1, _02074168 ; =0x000006F8 @@ -407,7 +407,7 @@ FUN_020740AC: ; 0x020740AC ldr r0, [r5, r1] sub r1, #0x28 ldr r1, [r5, r1] - bl FUN_020128A0 + bl ListMenu_AddItem ldr r0, _02074168 ; =0x000006F8 mov r1, #0x0 ldr r0, [r5, r0] @@ -467,7 +467,7 @@ FUN_02074170: ; 0x02074170 bl FUN_02001C5C ldr r0, _0207419C ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor ldr r0, _020741A0 ; =0x000005A4 mov r1, #0x7 ldr r0, [r5, r0] @@ -497,7 +497,7 @@ FUN_020741A4: ; 0x020741A4 bl FUN_02001C5C ldr r0, _020741F0 ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor add r0, r5, #0x0 mov r1, #0x2b mov r2, #0x1 @@ -617,7 +617,7 @@ FUN_020742A8: ; 0x020742A8 ldr r0, [r0, #0x4] mov r2, #0x1 mov r3, #0xc - bl FUN_0206ED38 + bl Bag_AddItem cmp r0, #0x1 bne _0207431A ldr r0, _02074334 ; =0x000005A4 @@ -744,7 +744,7 @@ FUN_020743AC: ; 0x020743AC bl FUN_02001C5C ldr r0, _02074414 ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor ldr r0, _02074418 ; =0x000005A4 mov r1, #0x0 ldr r0, [r5, r0] @@ -2324,7 +2324,7 @@ FUN_02075090: ; 0x02075090 bl FUN_02001C5C ldr r0, _020750C0 ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor mov r0, #0x1b str r0, [r4, #0x0] pop {r3-r5, pc} @@ -2349,7 +2349,7 @@ FUN_020750C4: ; 0x020750C4 bl FUN_02001C5C ldr r0, _020750F4 ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor mov r0, #0x1b str r0, [r4, #0x0] pop {r3-r5, pc} @@ -2482,7 +2482,7 @@ _020751E4: bl FUN_02001C5C ldr r0, _0207523C ; =0x000006F8 ldr r0, [r4, r0] - bl FUN_02012870 + bl ListMenu_dtor mov r0, #0x1b str r0, [r6, #0x0] pop {r4-r6, pc} diff --git a/arm9/asm/unk_0207550C.s b/arm9/asm/unk_0207550C.s index d2c20b95..4750d078 100644 --- a/arm9/asm/unk_0207550C.s +++ b/arm9/asm/unk_0207550C.s @@ -1744,7 +1744,7 @@ _020763B2: mov r3, #0xc ldr r0, [r1, #0x4] ldrh r1, [r1, #0x24] - bl FUN_0206EDD4 + bl Bag_TakeItem ldr r0, _020763F0 ; =0x000005A4 mov r1, #0x0 ldr r0, [r4, r0] @@ -3114,7 +3114,7 @@ FUN_02076F2C: ; 0x02076F2C mov r3, #0xc ldr r0, [r1, #0x4] ldrh r1, [r1, #0x24] - bl FUN_0206EDD4 + bl Bag_TakeItem _02076F98: add r0, r5, #0x0 bl FUN_020772CC @@ -3174,7 +3174,7 @@ FUN_02076FB0: ; 0x02076FB0 mov r2, #0x2 ldr r1, [r5, r1] mvn r2, r2 - bl FUN_020128A0 + bl ListMenu_AddItem mov r0, #0x0 pop {r3-r7, pc} _0207701C: @@ -3182,7 +3182,7 @@ _0207701C: sub r1, #0x50 ldr r1, [r5, r1] add r2, r6, #0x0 - bl FUN_020128A0 + bl ListMenu_AddItem mov r0, #0x1 pop {r3-r7, pc} .balign 4 @@ -3209,7 +3209,7 @@ _02077050: _02077058: mov r0, #0x4 mov r1, #0xc - bl FUN_02012838 + bl ListMenu_ctor ldr r1, _02077108 ; =0x000006F8 str r0, [r4, r1] add r0, r4, #0x0 @@ -3328,7 +3328,7 @@ _02077130: bl FUN_02001C5C ldr r0, _02077230 ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor add r0, r5, #0x0 mov r1, #0x20 mov r2, #0x1 @@ -3353,7 +3353,7 @@ _0207716A: bl FUN_02001C5C ldr r0, _02077230 ; =0x000006F8 ldr r0, [r5, r0] - bl FUN_02012870 + bl ListMenu_dtor ldr r0, _02077234 ; =0x000005A4 ldr r6, [r5, r0] add r0, r5, #0x0 @@ -3392,7 +3392,7 @@ _0207716A: mov r3, #0xc ldr r0, [r1, #0x4] ldrh r1, [r1, #0x24] - bl FUN_0206EDD4 + bl Bag_TakeItem ldr r0, _0207723C ; =0x000005EC bl FUN_020054C8 b _02077204 diff --git a/arm9/asm/unk_020859C0.s b/arm9/asm/unk_020859C0.s index 410345d4..8f1aa043 100644 --- a/arm9/asm/unk_020859C0.s +++ b/arm9/asm/unk_020859C0.s @@ -635,7 +635,7 @@ _02085E66: ldr r0, [r7, #0x1c] str r0, [r4, #0x0] ldr r0, [r6, #0x10] - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x4] ldr r0, [r6, #0x10] bl FUN_02025838 diff --git a/arm9/asm/unk_02086414.s b/arm9/asm/unk_02086414.s index 598bb827..05e25ce3 100644 --- a/arm9/asm/unk_02086414.s +++ b/arm9/asm/unk_02086414.s @@ -658,7 +658,7 @@ FUN_02086878: ; 0x02086878 bl FUN_02019064 mov r0, #0x2 mov r1, #0x47 - bl FUN_02012838 + bl ListMenu_ctor str r0, [r5, #0x44] ldr r2, _0208695C ; =0x0000013F mov r0, #0x0 @@ -675,7 +675,7 @@ _020868DE: ldr r0, [r5, #0x44] add r1, r6, #0x0 add r2, r4, #0x0 - bl FUN_020128A0 + bl ListMenu_AddItem add r0, r6, #0x0 bl String_dtor add r4, r4, #0x1 @@ -744,7 +744,7 @@ FUN_02086960: ; 0x02086960 mov r1, #0x0 bl FUN_02001C5C ldr r0, [r4, #0x44] - bl FUN_02012870 + bl ListMenu_dtor pop {r4, pc} thumb_func_start FUN_0208698C diff --git a/arm9/asm/unk_02087D00.s b/arm9/asm/unk_02087D00.s index 46f48b7a..5676baf3 100644 --- a/arm9/asm/unk_02087D00.s +++ b/arm9/asm/unk_02087D00.s @@ -66,7 +66,7 @@ FUN_02087D00: ; 0x02087D00 bl SavArray_PlayerParty_get str r0, [r7, #0x10] add r0, r4, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r7, #0x14] add r0, r4, #0x0 bl Sav2_PlayerData_GetOptionsAddr diff --git a/arm9/asm/unk_0208890C.s b/arm9/asm/unk_0208890C.s index 92bfc9b5..58ffb9d8 100644 --- a/arm9/asm/unk_0208890C.s +++ b/arm9/asm/unk_0208890C.s @@ -30,7 +30,7 @@ FUN_0208890C: ; 0x0208890C bl Sav2_PlayerData_GetProfileAddr str r0, [r4, #0x10] add r0, r5, #0x0 - bl FUN_0206F158 + bl Sav2_Bag_get str r0, [r4, #0x14] add r0, r5, #0x0 bl Sav2_PlayerData_GetOptionsAddr diff --git a/arm9/asm/unk_02088AAC.s b/arm9/asm/unk_02088AAC.s index b8a83eab..30ea796e 100644 --- a/arm9/asm/unk_02088AAC.s +++ b/arm9/asm/unk_02088AAC.s @@ -131,7 +131,7 @@ FUN_02088B4C: ; 0x02088B4C ldr r1, _02088BA4 ; =UNK_020FD6F4 ldr r0, [r0, #0x14] ldr r2, [r5, #0x0] - bl FUN_0206EFEC + bl CreateBagView add r4, r0, #0x0 ldrh r0, [r5, #0x6] lsl r0, r0, #0x18 @@ -177,7 +177,7 @@ _02088BBA: ldr r0, [r4, #0x0] lsl r0, r0, #0x18 lsr r0, r0, #0x18 - bl FUN_0206E2F0 + bl BagView_new add r5, r0, #0x0 bl FUN_0206E308 add r2, r0, #0x0 @@ -228,7 +228,7 @@ _02088C1E: ldr r3, [r4, #0x0] lsr r1, r1, #0x10 mov r2, #0x1 - bl FUN_0206EDD4 + bl Bag_TakeItem cmp r0, #0x0 bne _02088C38 bl ErrorHandling @@ -271,7 +271,7 @@ _02088C70: ldr r3, [r5, #0x0] add r1, r7, #0x0 mov r2, #0x1 - bl FUN_0206EE50 + bl Bag_HasItem cmp r0, #0x1 bne _02088C9A ldr r0, [r5, #0x18] diff --git a/arm9/asm/unk_02089D90.s b/arm9/asm/unk_02089D90.s index 6849192b..b4a6a662 100644 --- a/arm9/asm/unk_02089D90.s +++ b/arm9/asm/unk_02089D90.s @@ -168,7 +168,7 @@ FUN_02089D90: ; 0x02089D90 bl FUN_0200A274 mov r4, #0x1 _02089EE4: - bl FUN_02000FE8 + bl HandleDSLidAction add r0, r4, #0x0 add r1, r4, #0x0 bl OS_WaitIrq diff --git a/arm9/asm/unk_02089F24.s b/arm9/asm/unk_02089F24.s index 19e3631e..8dfe9755 100644 --- a/arm9/asm/unk_02089F24.s +++ b/arm9/asm/unk_02089F24.s @@ -172,7 +172,7 @@ FUN_02089F24: ; 0x02089F24 bl FUN_0200A274 mov r4, #0x1 _0208A078: - bl FUN_02000FE8 + bl HandleDSLidAction add r0, r4, #0x0 add r1, r4, #0x0 bl OS_WaitIrq @@ -340,8 +340,9 @@ _0208A0C8: mov r2, #0x3 bl FUN_0200A274 mov r4, #0x1 + ; Battery-saver trap _0208A21A: - bl FUN_02000FE8 + bl HandleDSLidAction add r0, r4, #0x0 add r1, r4, #0x0 bl OS_WaitIrq diff --git a/arm9/asm/unk_0208A998.s b/arm9/asm/unk_0208A998.s index bd8f0bf7..4b3a5510 100644 --- a/arm9/asm/unk_0208A998.s +++ b/arm9/asm/unk_0208A998.s @@ -224,7 +224,7 @@ _0208A9C6: bl FUN_02032DAC mov r4, #0x1 _0208AB58: - bl FUN_02000FE8 + bl HandleDSLidAction bl FUN_0202FB80 bl FUN_02033678 cmp r0, #0x0 @@ -239,7 +239,7 @@ _0208AB72: ldr r7, _0208AC0C ; =0x00002FFF mov r6, #0x1 _0208AB7A: - bl FUN_02000FE8 + bl HandleDSLidAction ldrh r1, [r5, #0x0] ldrh r0, [r4, #0x0] orr r1, r0 |