From ada5402dc07b2a65d647aa82aef5336c2b3c38ee Mon Sep 17 00:00:00 2001 From: Seth Barberee Date: Fri, 9 Oct 2020 01:34:01 -0500 Subject: decomp some save stuff --- asm/save1.s | 745 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 745 insertions(+) create mode 100644 asm/save1.s (limited to 'asm/save1.s') diff --git a/asm/save1.s b/asm/save1.s new file mode 100644 index 0000000..3a64f71 --- /dev/null +++ b/asm/save1.s @@ -0,0 +1,745 @@ + .include "constants/gba_constants.inc" + .include "asm/macros.inc" + + .syntax unified + + .text + + thumb_func_start sub_8012468 +sub_8012468: + push {r4,lr} + ldr r4, _08012480 + movs r0, 0x8 + movs r1, 0x5 + bl MemoryAlloc + str r0, [r4] + movs r1, 0x1 + str r1, [r0] + pop {r4} + pop {r0} + bx r0 + .align 2, 0 +_08012480: .4byte gUnknown_203B188 + thumb_func_end sub_8012468 + + thumb_func_start sub_8012484 +sub_8012484: + push {r4,r5,lr} + sub sp, 0x8 + ldr r1, _080124A0 + ldr r0, [r1] + ldr r0, [r0] + adds r4, r1, 0 + cmp r0, 0x6 + bhi _0801254C + lsls r0, 2 + ldr r1, _080124A4 + adds r0, r1 + ldr r0, [r0] + mov pc, r0 + .align 2, 0 +_080124A0: .4byte gUnknown_203B188 +_080124A4: .4byte _080124A8 + .align 2, 0 +_080124A8: + .4byte _080124C4 + .4byte _080124CC + .4byte _080124E8 + .4byte _0801251C + .4byte _08012534 + .4byte _0801254C + .4byte _08012548 +_080124C4: + ldr r1, [r4] + movs r0, 0x1 + str r0, [r1] + b _0801254C +_080124CC: + movs r0, 0 + str r0, [sp] + mov r0, sp + bl sub_8011DAC + ldr r1, _080124E4 + ldr r1, [r1] + str r0, [r1, 0x4] + movs r0, 0x2 + str r0, [r1] + b _0801254C + .align 2, 0 +_080124E4: .4byte gUnknown_203B188 +_080124E8: + adds r5, r4, 0 + ldr r1, [r5] + ldr r0, [r1, 0x4] + cmp r0, 0 + beq _0801253C + bl sub_8011FF8 + lsls r0, 24 + cmp r0, 0 + beq _08012518 + ldr r0, _08012510 + ldr r3, _08012514 + movs r1, 0 + movs r2, 0 + bl sub_80141B4 + ldr r1, [r5] + movs r0, 0x3 + str r0, [r1] + b _0801254C + .align 2, 0 +_08012510: .4byte gUnknown_80D4354 +_08012514: .4byte 0x00000301 +_08012518: + ldr r1, [r4] + b _0801252A +_0801251C: + add r0, sp, 0x4 + bl sub_80144A4 + cmp r0, 0 + bne _0801254C + ldr r0, _08012530 + ldr r1, [r0] +_0801252A: + movs r0, 0x4 + str r0, [r1] + b _0801254C + .align 2, 0 +_08012530: .4byte gUnknown_203B188 +_08012534: + bl sub_8012298 + ldr r0, _08012544 + ldr r1, [r0] +_0801253C: + movs r0, 0x6 + str r0, [r1] + b _0801254C + .align 2, 0 +_08012544: .4byte gUnknown_203B188 +_08012548: + movs r0, 0 + b _0801254E +_0801254C: + movs r0, 0x1 +_0801254E: + add sp, 0x8 + pop {r4,r5} + pop {r1} + bx r1 + thumb_func_end sub_8012484 + + thumb_func_start sub_8012558 +sub_8012558: + push {r4,lr} + ldr r4, _08012570 + ldr r0, [r4] + cmp r0, 0 + beq _0801256A + bl MemoryFree + movs r0, 0 + str r0, [r4] +_0801256A: + pop {r4} + pop {r0} + bx r0 + .align 2, 0 +_08012570: .4byte gUnknown_203B188 + thumb_func_end sub_8012558 + + thumb_func_start sub_8012574 +sub_8012574: + push {r4-r6,lr} + lsls r0, 16 + asrs r4, r0, 16 + bl sub_80993D8 + ldr r5, _080125D4 + movs r0, 0x20 + movs r1, 0x5 + bl MemoryAlloc + str r0, [r5] + movs r6, 0 + movs r1, 0 + strh r4, [r0, 0x1C] + str r1, [r0, 0xC] + str r1, [r0, 0x10] + cmp r4, 0 + beq _080125BA + adds r0, r4, 0 + bl sub_808DDD0 + ldr r1, [r5] + str r0, [r1, 0xC] + ldr r0, [r0, 0x4] + str r0, [r1, 0x10] + strb r6, [r1, 0x18] + ldr r0, [r5] + strb r6, [r0, 0x19] + ldr r0, [r5] + strb r6, [r0, 0x1A] + ldr r1, [r5] + movs r0, 0x2 + strh r0, [r1, 0x14] + movs r0, 0x8 + strh r0, [r1, 0x16] +_080125BA: + ldr r1, [r5] + ldr r0, [r1, 0xC] + cmp r0, 0 + beq _080125DC + adds r2, r1, 0 + adds r2, 0xC + ldr r0, _080125D8 + movs r1, 0 + movs r3, 0x20 + bl sub_80141B4 + b _080125E8 + .align 2, 0 +_080125D4: .4byte gUnknown_203B18C +_080125D8: .4byte gUnknown_80D4398 +_080125DC: + ldr r0, _080125F8 + movs r1, 0 + movs r2, 0 + movs r3, 0x20 + bl sub_80141B4 +_080125E8: + ldr r0, _080125FC + ldr r1, [r0] + movs r0, 0x3 + str r0, [r1] + pop {r4-r6} + pop {r0} + bx r0 + .align 2, 0 +_080125F8: .4byte gUnknown_80D4398 +_080125FC: .4byte gUnknown_203B18C + thumb_func_end sub_8012574 + + thumb_func_start sub_8012600 +sub_8012600: + push {r4,r5,lr} + sub sp, 0x8 + movs r5, 0 + ldr r0, _08012628 + ldr r2, [r0] + ldr r1, [r2, 0xC] + adds r4, r0, 0 + cmp r1, 0 + beq _08012616 + adds r5, r2, 0 + adds r5, 0xC +_08012616: + ldr r0, [r2] + cmp r0, 0x7 + bls _0801261E + b _08012738 +_0801261E: + lsls r0, 2 + ldr r1, _0801262C + adds r0, r1 + ldr r0, [r0] + mov pc, r0 + .align 2, 0 +_08012628: .4byte gUnknown_203B18C +_0801262C: .4byte _08012630 + .align 2, 0 +_08012630: + .4byte _08012650 + .4byte _08012654 + .4byte _08012738 + .4byte _08012678 + .4byte _08012680 + .4byte _0801271C + .4byte _08012738 + .4byte _08012734 +_08012650: + ldr r1, [r4] + b _0801272A +_08012654: + ldr r1, [r4] + ldr r0, [r1, 0x4] + adds r0, 0x1 + str r0, [r1, 0x4] + cmp r0, 0x8 + ble _08012738 + ldr r0, _08012674 + movs r1, 0 + movs r2, 0 + movs r3, 0x20 + bl sub_80141B4 + ldr r1, [r4] + movs r0, 0x3 + str r0, [r1] + b _08012738 + .align 2, 0 +_08012674: .4byte gUnknown_80D43D8 +_08012678: + ldr r1, [r4] + movs r0, 0x4 + str r0, [r1] + b _08012738 +_08012680: + movs r0, 0 + str r0, [sp] + bl sub_80140DC + bl sub_8011C1C + adds r1, r0, 0 + mov r0, sp + bl sub_801203C + ldr r4, _080126B8 + ldr r1, [r4] + str r0, [r1, 0x8] + cmp r0, 0 + beq _080126C4 + cmp r0, 0x1 + beq _080126DC + ldr r0, [r1, 0xC] + cmp r0, 0 + beq _080126F4 + ldr r0, _080126BC +_080126AA: + ldr r3, _080126C0 + movs r1, 0 + adds r2, r5, 0 + bl sub_80141B4 + b _08012700 + .align 2, 0 +_080126B8: .4byte gUnknown_203B18C +_080126BC: .4byte gUnknown_80D44B0 +_080126C0: .4byte 0x00000101 +_080126C4: + ldr r0, [r1, 0xC] + cmp r0, 0 + beq _080126D4 + ldr r0, _080126D0 + b _080126AA + .align 2, 0 +_080126D0: .4byte gUnknown_80D4438 +_080126D4: + ldr r0, _080126D8 + b _080126F6 + .align 2, 0 +_080126D8: .4byte gUnknown_80D4438 +_080126DC: + ldr r0, _080126F0 + movs r1, 0 + movs r2, 0 + movs r3, 0 + bl sub_80141B4 + ldr r1, [r4] + movs r0, 0x6 + b _08012706 + .align 2, 0 +_080126F0: .4byte gUnknown_80D444C +_080126F4: + ldr r0, _08012710 +_080126F6: + ldr r3, _08012714 + movs r1, 0 + adds r2, r5, 0 + bl sub_80141B4 +_08012700: + ldr r0, _08012718 + ldr r1, [r0] + movs r0, 0x5 +_08012706: + str r0, [r1] + bl sub_8014114 + b _08012738 + .align 2, 0 +_08012710: .4byte gUnknown_80D44B0 +_08012714: .4byte 0x00000101 +_08012718: .4byte gUnknown_203B18C +_0801271C: + add r0, sp, 0x4 + bl sub_80144A4 + cmp r0, 0 + bne _08012738 + ldr r0, _08012730 + ldr r1, [r0] +_0801272A: + movs r0, 0x7 + str r0, [r1] + b _08012738 + .align 2, 0 +_08012730: .4byte gUnknown_203B18C +_08012734: + movs r0, 0 + b _0801273A +_08012738: + movs r0, 0x1 +_0801273A: + add sp, 0x8 + pop {r4,r5} + pop {r1} + bx r1 + thumb_func_end sub_8012600 + + thumb_func_start sub_8012744 +sub_8012744: + ldr r0, _0801274C + ldr r0, [r0] + ldr r0, [r0, 0x8] + bx lr + .align 2, 0 +_0801274C: .4byte gUnknown_203B18C + thumb_func_end sub_8012744 + + thumb_func_start sub_8012750 +sub_8012750: + push {r4,lr} + ldr r4, _08012778 + ldr r0, [r4] + cmp r0, 0 + beq _0801276E + ldr r0, [r0, 0xC] + cmp r0, 0 + beq _08012764 + bl CloseFile +_08012764: + ldr r0, [r4] + bl MemoryFree + movs r0, 0 + str r0, [r4] +_0801276E: + bl sub_80993E4 + pop {r4} + pop {r0} + bx r0 + .align 2, 0 +_08012778: .4byte gUnknown_203B18C + thumb_func_end sub_8012750 + + thumb_func_start sub_801277C +sub_801277C: + push {r4-r6,lr} + adds r5, r0, 0 + adds r6, r1, 0 + ldr r4, _080127A4 + movs r0, 0x10 + movs r1, 0x5 + bl MemoryAlloc + str r0, [r4] + str r5, [r0, 0x4] + str r6, [r0, 0x8] + movs r1, 0 + strb r1, [r0, 0xC] + ldr r1, [r4] + movs r0, 0x1 + str r0, [r1] + pop {r4-r6} + pop {r0} + bx r0 + .align 2, 0 +_080127A4: .4byte gUnknown_203B190 + thumb_func_end sub_801277C + + thumb_func_start sub_80127A8 +sub_80127A8: + push {r4,r5,lr} + sub sp, 0x8 + ldr r5, _080127C0 + ldr r2, [r5] + ldr r4, [r2] + cmp r4, 0x1 + beq _080127D4 + cmp r4, 0x1 + bgt _080127C4 + cmp r4, 0 + beq _080127CE + b _0801281E + .align 2, 0 +_080127C0: .4byte gUnknown_203B190 +_080127C4: + cmp r4, 0x2 + beq _08012808 + cmp r4, 0x3 + beq _0801281A + b _0801281E +_080127CE: + movs r0, 0x1 + str r0, [r2] + b _0801281E +_080127D4: + movs r0, 0x10 + str r0, [sp] + ldr r1, [r2, 0x4] + ldr r2, [r2, 0x8] + mov r0, sp + bl sub_8011F9C + cmp r0, 0 + bne _080127EC + ldr r0, [r5] + strb r4, [r0, 0xC] + b _08012812 +_080127EC: + ldr r0, _08012800 + ldr r3, _08012804 + movs r1, 0 + movs r2, 0 + bl sub_80141B4 + ldr r1, [r5] + movs r0, 0x2 + str r0, [r1] + b _0801281E + .align 2, 0 +_08012800: .4byte gUnknown_80D44C8 +_08012804: .4byte 0x00000301 +_08012808: + add r0, sp, 0x4 + bl sub_80144A4 + cmp r0, 0 + bne _0801281E +_08012812: + ldr r1, [r5] + movs r0, 0x3 + str r0, [r1] + b _0801281E +_0801281A: + movs r0, 0 + b _08012820 +_0801281E: + movs r0, 0x1 +_08012820: + add sp, 0x8 + pop {r4,r5} + pop {r1} + bx r1 + thumb_func_end sub_80127A8 + + thumb_func_start sub_8012828 +sub_8012828: + ldr r0, _08012830 + ldr r0, [r0] + ldrb r0, [r0, 0xC] + bx lr + .align 2, 0 +_08012830: .4byte gUnknown_203B190 + thumb_func_end sub_8012828 + + thumb_func_start sub_8012834 +sub_8012834: + push {r4,lr} + ldr r4, _0801284C + ldr r0, [r4] + cmp r0, 0 + beq _08012846 + bl MemoryFree + movs r0, 0 + str r0, [r4] +_08012846: + pop {r4} + pop {r0} + bx r0 + .align 2, 0 +_0801284C: .4byte gUnknown_203B190 + thumb_func_end sub_8012834 + + thumb_func_start sub_8012850 +sub_8012850: + push {r4-r6,lr} + mov r6, r8 + push {r6} + adds r6, r0, 0 + mov r8, r1 + lsls r4, r2, 24 + lsrs r4, 24 + ldr r5, _0801288C + movs r0, 0x14 + movs r1, 0x5 + bl MemoryAlloc + str r0, [r5] + str r6, [r0, 0x4] + mov r1, r8 + str r1, [r0, 0x8] + movs r1, 0 + strb r4, [r0, 0xC] + ldr r0, [r5] + str r1, [r0] + ldrb r0, [r0, 0xC] + cmp r0, 0 + beq _08012894 + ldr r0, _08012890 + movs r2, 0 + movs r3, 0x20 + bl sub_80141B4 + b _080128A0 + .align 2, 0 +_0801288C: .4byte gUnknown_203B194 +_08012890: .4byte gUnknown_80D45AC +_08012894: + ldr r0, _080128AC + movs r1, 0 + movs r2, 0 + movs r3, 0x20 + bl sub_80141B4 +_080128A0: + pop {r3} + mov r8, r3 + pop {r4-r6} + pop {r0} + bx r0 + .align 2, 0 +_080128AC: .4byte gUnknown_80D45AC + thumb_func_end sub_8012850 + + thumb_func_start sub_80128B0 +sub_80128B0: + push {r4,lr} + sub sp, 0x8 + ldr r1, _080128CC + ldr r0, [r1] + ldr r0, [r0] + adds r4, r1, 0 + cmp r0, 0x5 + bls _080128C2 + b _080129F0 +_080128C2: + lsls r0, 2 + ldr r1, _080128D0 + adds r0, r1 + ldr r0, [r0] + mov pc, r0 + .align 2, 0 +_080128CC: .4byte gUnknown_203B194 +_080128D0: .4byte _080128D4 + .align 2, 0 +_080128D4: + .4byte _080128EC + .4byte _080128F4 + .4byte _0801291C + .4byte _080129C8 + .4byte _080129F0 + .4byte _080129E0 +_080128EC: + ldr r1, [r4] + movs r0, 0x1 + str r0, [r1] + b _080129F0 +_080128F4: + bl sub_80140DC + movs r0, 0x10 + str r0, [sp] + ldr r4, _08012918 + ldr r0, [r4] + ldr r1, [r0, 0x4] + ldr r2, [r0, 0x8] + mov r0, sp + bl sub_80121D4 + ldr r1, [r4] + str r0, [r1, 0x10] + movs r0, 0x2 + str r0, [r1] + movs r0, 0x1 + b _080129F2 + .align 2, 0 +_08012918: .4byte gUnknown_203B194 +_0801291C: + movs r0, 0 + str r0, [sp] + ldr r0, [r4] + ldr r0, [r0, 0x10] + cmp r0, 0 + bne _08012934 + mov r0, sp + movs r1, 0x2 + bl sub_801203C + ldr r1, [r4] + str r0, [r1, 0x10] +_08012934: + ldr r0, [r4] + ldr r0, [r0, 0x10] + cmp r0, 0 + beq _08012964 + cmp r0, 0x1 + beq _080129AC + ldr r0, _08012958 + bl sub_80121E0 + ldr r0, _0801295C + ldr r3, _08012960 + movs r1, 0 + movs r2, 0 + bl sub_80141B4 + ldr r1, [r4] + movs r0, 0x3 + b _080129BC + .align 2, 0 +_08012958: .4byte 0x000f1209 +_0801295C: .4byte gUnknown_80D47A0 +_08012960: .4byte 0x00000301 +_08012964: + ldr r0, _08012980 + bl sub_80121E0 + ldr r0, [r4] + ldrb r0, [r0, 0xC] + cmp r0, 0 + beq _0801298C + ldr r0, _08012984 + ldr r3, _08012988 + movs r1, 0 + movs r2, 0 + bl sub_80141B4 + b _08012998 + .align 2, 0 +_08012980: .4byte 0x000f1207 +_08012984: .4byte gUnknown_80D45F4 +_08012988: .4byte 0x00000301 +_0801298C: + ldr r0, _080129A0 + ldr r3, _080129A4 + movs r1, 0 + movs r2, 0 + bl sub_80141B4 +_08012998: + ldr r0, _080129A8 + ldr r1, [r0] + movs r0, 0x3 + b _080129BC + .align 2, 0 +_080129A0: .4byte gUnknown_80D4668 +_080129A4: .4byte 0x00000301 +_080129A8: .4byte gUnknown_203B194 +_080129AC: + ldr r0, _080129C4 + movs r1, 0 + movs r2, 0 + movs r3, 0 + bl sub_80141B4 + ldr r1, [r4] + movs r0, 0x4 +_080129BC: + str r0, [r1] + bl sub_8014114 + b _080129F0 + .align 2, 0 +_080129C4: .4byte gUnknown_80D473C +_080129C8: + add r0, sp, 0x4 + bl sub_80144A4 + cmp r0, 0 + bne _080129F0 + ldr r0, _080129DC + ldr r1, [r0] + movs r0, 0x5 + str r0, [r1] + b _080129F0 + .align 2, 0 +_080129DC: .4byte gUnknown_203B194 +_080129E0: + ldr r0, [r4] + ldr r0, [r0, 0x10] + cmp r0, 0 + bne _080129EC + movs r0, 0x2 + b _080129F2 +_080129EC: + movs r0, 0x3 + b _080129F2 +_080129F0: + movs r0, 0 +_080129F2: + add sp, 0x8 + pop {r4} + pop {r1} + bx r1 + thumb_func_end sub_80128B0 + + .align 2,0 -- cgit v1.2.3 From 184d3819ab381c54821b157770d015c0dce8d82a Mon Sep 17 00:00:00 2001 From: Seth Barberee Date: Tue, 20 Oct 2020 18:05:01 -0500 Subject: more decomping of funcs --- asm/save1.s | 17 ----------------- 1 file changed, 17 deletions(-) (limited to 'asm/save1.s') diff --git a/asm/save1.s b/asm/save1.s index 3a64f71..543552e 100644 --- a/asm/save1.s +++ b/asm/save1.s @@ -5,23 +5,6 @@ .text - thumb_func_start sub_8012468 -sub_8012468: - push {r4,lr} - ldr r4, _08012480 - movs r0, 0x8 - movs r1, 0x5 - bl MemoryAlloc - str r0, [r4] - movs r1, 0x1 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08012480: .4byte gUnknown_203B188 - thumb_func_end sub_8012468 - thumb_func_start sub_8012484 sub_8012484: push {r4,r5,lr} -- cgit v1.2.3 From fc7f14ab66ff8e23cd758a9435f8ac48e99ae75f Mon Sep 17 00:00:00 2001 From: Seth Barberee Date: Sun, 22 Nov 2020 17:37:48 -0600 Subject: random assortment of decomp work and fix of nonmatchings --- asm/save1.s | 123 ------------------------------------------------------------ 1 file changed, 123 deletions(-) (limited to 'asm/save1.s') diff --git a/asm/save1.s b/asm/save1.s index 543552e..52eb5c8 100644 --- a/asm/save1.s +++ b/asm/save1.s @@ -5,129 +5,6 @@ .text - thumb_func_start sub_8012484 -sub_8012484: - push {r4,r5,lr} - sub sp, 0x8 - ldr r1, _080124A0 - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x6 - bhi _0801254C - lsls r0, 2 - ldr r1, _080124A4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080124A0: .4byte gUnknown_203B188 -_080124A4: .4byte _080124A8 - .align 2, 0 -_080124A8: - .4byte _080124C4 - .4byte _080124CC - .4byte _080124E8 - .4byte _0801251C - .4byte _08012534 - .4byte _0801254C - .4byte _08012548 -_080124C4: - ldr r1, [r4] - movs r0, 0x1 - str r0, [r1] - b _0801254C -_080124CC: - movs r0, 0 - str r0, [sp] - mov r0, sp - bl sub_8011DAC - ldr r1, _080124E4 - ldr r1, [r1] - str r0, [r1, 0x4] - movs r0, 0x2 - str r0, [r1] - b _0801254C - .align 2, 0 -_080124E4: .4byte gUnknown_203B188 -_080124E8: - adds r5, r4, 0 - ldr r1, [r5] - ldr r0, [r1, 0x4] - cmp r0, 0 - beq _0801253C - bl sub_8011FF8 - lsls r0, 24 - cmp r0, 0 - beq _08012518 - ldr r0, _08012510 - ldr r3, _08012514 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - ldr r1, [r5] - movs r0, 0x3 - str r0, [r1] - b _0801254C - .align 2, 0 -_08012510: .4byte gUnknown_80D4354 -_08012514: .4byte 0x00000301 -_08012518: - ldr r1, [r4] - b _0801252A -_0801251C: - add r0, sp, 0x4 - bl sub_80144A4 - cmp r0, 0 - bne _0801254C - ldr r0, _08012530 - ldr r1, [r0] -_0801252A: - movs r0, 0x4 - str r0, [r1] - b _0801254C - .align 2, 0 -_08012530: .4byte gUnknown_203B188 -_08012534: - bl sub_8012298 - ldr r0, _08012544 - ldr r1, [r0] -_0801253C: - movs r0, 0x6 - str r0, [r1] - b _0801254C - .align 2, 0 -_08012544: .4byte gUnknown_203B188 -_08012548: - movs r0, 0 - b _0801254E -_0801254C: - movs r0, 0x1 -_0801254E: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8012484 - - thumb_func_start sub_8012558 -sub_8012558: - push {r4,lr} - ldr r4, _08012570 - ldr r0, [r4] - cmp r0, 0 - beq _0801256A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801256A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08012570: .4byte gUnknown_203B188 - thumb_func_end sub_8012558 - thumb_func_start sub_8012574 sub_8012574: push {r4-r6,lr} -- cgit v1.2.3