diff options
Diffstat (limited to 'asm/memory.s')
-rw-r--r-- | asm/memory.s | 359 |
1 files changed, 0 insertions, 359 deletions
diff --git a/asm/memory.s b/asm/memory.s index d113ece..e856585 100644 --- a/asm/memory.s +++ b/asm/memory.s @@ -412,364 +412,5 @@ _08003328: bx r1 thumb_func_end _LocateSetBack - thumb_func_start _LocateSet -_LocateSet: - push {r4-r7,lr} - sub sp, 0x8 - adds r5, r0, 0 - adds r7, r1, 0 - adds r6, r2, 0 - cmp r5, 0 - bne _0800335C - ldr r5, =gMainHeapDescriptor -_0800335C: - asrs r4, r6, 8 - movs r0, 0x1 - orrs r4, r0 - movs r0, 0xFF - ands r6, r0 - movs r0, 0x2 - ands r0, r4 - cmp r0, 0 - beq _08003394 - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r7, 0 - bl MemorySearchFromFront - adds r1, r0, 0 - cmp r1, 0 - blt _080033B4 - str r6, [sp] - adds r0, r5, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl _LocateSetFront - ldr r0, [r0, 0xC] - b _080033CC - .align 2, 0 - .pool -_08003394: - adds r0, r5, 0 - adds r1, r4, 0 - adds r2, r7, 0 - bl MemorySearchFromBack - adds r1, r0, 0 - cmp r1, 0 - blt _080033B4 - str r6, [sp] - adds r0, r5, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl _LocateSetBack - ldr r0, [r0, 0xC] - b _080033CC -_080033B4: - ldr r0, =gUnknown_80B7F14 - ldr r1, =gUnknown_80B7F20 - str r4, [sp] - str r6, [sp, 0x4] - adds r2, r5, 0 - adds r3, r7, 0 - bl FatalError - .align 2, 0 - .pool -_080033CC: - add sp, 0x8 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end _LocateSet - - thumb_func_start MemoryAlloc -MemoryAlloc: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldr r0, =gMainHeapDescriptor - adds r1, r3, 0 - bl DoAlloc - pop {r1} - bx r1 - .align 2, 0 - .pool - thumb_func_end MemoryAlloc - - thumb_func_start MemoryFree -MemoryFree: - push {lr} - adds r1, r0, 0 - ldr r0, =gMainHeapDescriptor - bl DoFree - pop {r0} - bx r0 - .align 2, 0 - .pool - thumb_func_end MemoryFree - - thumb_func_start MemoryLocate_LocalCreate -MemoryLocate_LocalCreate: - push {r4-r7,lr} - sub sp, 0xC - adds r4, r0, 0 - adds r5, r1, 0 - adds r7, r2, 0 - adds r6, r3, 0 - cmp r4, 0 - bne _08003412 - ldr r4, =gMainHeapDescriptor -_08003412: - adds r0, r4, 0 - movs r1, 0x9 - adds r2, r5, 0 - bl MemorySearchFromBack - adds r1, r0, 0 - cmp r1, 0 - bge _08003438 - ldr r0, =gUnknown_80B7F88 - ldr r1, =gUnknown_80B7F94 - adds r2, r5, 0 - bl FatalError - .align 2, 0 - .pool -_08003438: - str r6, [sp] - adds r0, r4, 0 - movs r2, 0x9 - adds r3, r5, 0 - bl _LocateSetBack - ldr r1, [r0, 0xC] - str r1, [sp, 0x4] - ldr r0, [r0, 0x10] - str r0, [sp, 0x8] - add r0, sp, 0x4 - adds r1, r7, 0 - bl DoCreateSubHeap - str r4, [r0, 0x4] - add sp, 0xC - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end MemoryLocate_LocalCreate - - thumb_func_start DoCreateSubHeap -DoCreateSubHeap: - push {r4,lr} - sub sp, 0x8 - adds r2, r1, 0 - ldr r4, [r0] - adds r1, r4, 0 - adds r1, 0x1C - str r1, [sp] - ldr r0, [r0, 0x4] - subs r0, 0x1C - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r1, sp - bl InitSubHeap - adds r0, r4, 0 - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end DoCreateSubHeap - - thumb_func_start xxx_unused_memory_free -xxx_unused_memory_free: - push {r4-r7,lr} - adds r4, r0, 0 - cmp r4, 0 - beq _08003504 - movs r1, 0 - ldr r0, [r4, 0xC] - cmp r0, 0x1 - bne _080034A2 - ldr r0, [r4, 0x8] - ldr r0, [r0, 0x4] - cmp r0, 0 - bne _080034A2 - movs r1, 0x1 -_080034A2: - cmp r1, 0 - beq _08003504 - movs r0, 0 - mov r12, r0 - movs r3, 0 - ldr r6, =gHeapCount - ldr r0, [r6] - cmp r12, r0 - bge _080034F2 - ldr r5, =gHeapDescriptorList - adds r1, r6, 0 - adds r7, r5, 0 - movs r2, 0 -_080034BC: - adds r0, r2, r5 - ldr r0, [r0] - cmp r0, r4 - bne _080034E8 - ldr r0, [r1] - subs r0, 0x1 - str r0, [r1] - cmp r3, r0 - bge _080034F8 - ldr r1, =gHeapCount - adds r2, r7 -_080034D2: - ldr r0, [r2, 0x4] - stm r2!, {r0} - adds r3, 0x1 - ldr r0, [r1] - cmp r3, r0 - blt _080034D2 - b _080034F8 - .align 2, 0 - .pool -_080034E8: - adds r2, 0x4 - adds r3, 0x1 - ldr r0, [r6] - cmp r3, r0 - blt _080034BC -_080034F2: - mov r0, r12 - cmp r0, 0 - beq _08003504 -_080034F8: - ldr r0, [r4, 0x4] - cmp r0, 0 - beq _08003504 - adds r1, r4, 0 - bl DoFree -_08003504: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end xxx_unused_memory_free - - thumb_func_start DoAlloc -DoAlloc: - push {lr} - movs r3, 0x80 - lsls r3, 1 - orrs r3, r2 - adds r2, r3, 0 - bl _LocateSet - pop {r1} - bx r1 - thumb_func_end DoAlloc - - thumb_func_start DoFree -DoFree: - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - cmp r4, 0 - bne _0800352E - ldr r4, =gMainHeapDescriptor -_0800352E: - cmp r1, 0 - beq _080035E4 - movs r0, 0 - mov r8, r0 - ldr r3, [r4, 0x8] - mov r12, r3 - ldr r3, [r4, 0xC] - cmp r8, r3 - bge _080035E4 - movs r2, 0 -_08003542: - mov r5, r12 - ldr r0, [r5, 0xC] - cmp r0, r1 - bne _080035D8 - str r2, [r5] - str r2, [r5, 0x4] - str r2, [r5, 0x14] - str r2, [r5, 0x8] - ldr r0, [r4, 0xC] - subs r0, 0x1 - cmp r8, r0 - bge _08003592 - mov r2, r12 - adds r2, 0x18 - ldr r0, [r2, 0x4] - cmp r0, 0 - bne _08003592 - ldr r0, [r5, 0x10] - ldr r1, [r2, 0x10] - adds r0, r1 - str r0, [r5, 0x10] - ldr r0, [r4, 0xC] - subs r0, 0x1 - str r0, [r4, 0xC] - mov r3, r8 - adds r3, 0x1 - cmp r3, r0 - bge _08003592 -_0800357A: - adds r0, r2, 0 - adds r1, r2, 0 - adds r1, 0x18 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r3, 0x1 - adds r2, 0x18 - ldr r0, [r4, 0xC] - cmp r3, r0 - blt _0800357A -_08003592: - mov r6, r8 - cmp r6, 0 - ble _080035E4 - mov r2, r12 - subs r2, 0x18 - ldr r0, [r2, 0x4] - cmp r0, 0 - bne _080035E4 - ldr r0, [r2, 0x10] - mov r7, r12 - ldr r1, [r7, 0x10] - adds r0, r1 - str r0, [r2, 0x10] - ldr r0, [r4, 0xC] - subs r0, 0x1 - str r0, [r4, 0xC] - mov r2, r12 - mov r3, r8 - cmp r3, r0 - bge _080035E4 -_080035BA: - adds r0, r2, 0 - adds r1, r2, 0 - adds r1, 0x18 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r3, 0x1 - adds r2, 0x18 - ldr r0, [r4, 0xC] - cmp r3, r0 - blt _080035BA - b _080035E4 - .align 2, 0 - .pool -_080035D8: - movs r0, 0x1 - add r8, r0 - movs r5, 0x18 - add r12, r5 - cmp r8, r3 - blt _08003542 -_080035E4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end DoFree .align 2, 0 @ Don't pad with nop. |