diff options
Diffstat (limited to 'arm7/asm/wram2.s')
-rw-r--r-- | arm7/asm/wram2.s | 494 |
1 files changed, 0 insertions, 494 deletions
diff --git a/arm7/asm/wram2.s b/arm7/asm/wram2.s index 4e48222d..68b31543 100644 --- a/arm7/asm/wram2.s +++ b/arm7/asm/wram2.s @@ -3,500 +3,6 @@ .section .text - arm_func_start FUN_03803BD4 -FUN_03803BD4: ;@ 0x03803BD4 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - and r0, r1, #63 ;@ 0x3f - cmp r0, #3 - bne _03803C40 - ldr r0, _03803C50 ;@ =0x01FFFFC0 - and r0, r1, r0 - mov r2, r0, lsr #6 - ldr r1, _03803C54 ;@ =0x04000204 - ldrh r0, [r1] - bic r0, r0, #96 ;@ 0x60 - orr r0, r0, r2, lsl #5 - strh r0, [r1] - mov r7, #1 - mov r6, #17 - mov r5, #18 - mov r4, #0 - b _03803C24 -_03803C1C: - mov r0, r7 - bl FUN_037F8CB4 -_03803C24: - mov r0, r6 - mov r1, r5 - mov r2, r4 - bl PXI_SendWordByFifo - cmp r0, #0 - bne _03803C1C - b _03803C44 -_03803C40: - bl OS_Terminate -_03803C44: - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, lr} - bx lr -_03803C50: .word 0x01FFFFC0 -_03803C54: .word 0x04000204 - - arm_func_start FUN_03803C58 -FUN_03803C58: ;@ 0x03803C58 - stmfd sp!, {lr} - sub sp, sp, #4 - mov r0, #0 - bl CTRDG_VibPulseEdgeUpdate - bl SND_BeginSleep - bl WVR_Shutdown - bl OS_Terminate - add sp, sp, #4 - ldmia sp!, {lr} - bx lr - - arm_func_start CTRDG_CheckPullOut_Polling -CTRDG_CheckPullOut_Polling: ;@ 0x03803C80 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - ldr r1, _03803D80 ;@ =_03807708 - ldr r3, [r1] - mvn r0, #0 - cmp r3, r0 - ldreq r0, _03803D84 ;@ =0x027FFC3C - ldreq r0, [r0] - addeq r0, r0, #10 - streq r0, [r1] - beq _03803D74 - ldr r0, _03803D88 ;@ =_03809FCC - ldr r0, [r0] - cmp r0, #0 - bne _03803D74 - ldr r0, _03803D8C ;@ =_03809FC8 - ldr r0, [r0] - cmp r0, #0 - bne _03803D74 - ldr r2, _03803D84 ;@ =0x027FFC3C - ldr r0, [r2] - cmp r0, r3 - bcc _03803D74 - ldr r0, [r2] - add r0, r0, #10 - str r0, [r1] - bl CTRDG_IsPulledOut - ldr r1, _03803D8C ;@ =_03809FC8 - str r0, [r1] - bl CTRDG_IsExisting - cmp r0, #0 - bne _03803D28 - ldr r0, _03803D90 ;@ =_03807704 - ldr r0, [r0] - cmp r0, #0 - movne r1, #1 - ldrne r0, _03803D88 ;@ =_03809FCC - strne r1, [r0] - bne _03803D74 - mov r1, #1 - ldr r0, _03803D8C ;@ =_03809FC8 - str r1, [r0] -_03803D28: - mov r7, #0 - ldr r0, _03803D90 ;@ =_03807704 - str r7, [r0] - ldr r0, _03803D8C ;@ =_03809FC8 - ldr r0, [r0] - cmp r0, #0 - beq _03803D74 - mov r6, #100 ;@ 0x64 - mov r5, #13 - mov r4, #17 - b _03803D5C -_03803D54: - mov r0, r6 - bl OS_Sleep -_03803D5C: - mov r0, r5 - mov r1, r4 - mov r2, r7 - bl PXI_SendWordByFifo - cmp r0, #0 - bne _03803D54 -_03803D74: - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, lr} - bx lr -_03803D80: .word _03807708 -_03803D84: .word 0x027FFC3C -_03803D88: .word _03809FCC -_03803D8C: .word _03809FC8 -_03803D90: .word _03807704 - - arm_func_start FUN_03803D94 -FUN_03803D94: ;@ 0x03803D94 - stmdb sp!, {r4, r5, r6, r7, r8, lr} - mov r7, r0 - mov r0, #134217728 ;@ 0x8000000 - add r6, r0, #4 - mov r4, #1 - bl OS_GetLockID - mov r0, r0, lsl #16 - mov r5, r0, lsr #16 - mov r0, r5 - bl OS_LockCartridge - mov r1, #0 - ldr r0, _03803E3C ;@ =0x0000FFFF - eor r2, r0, #3 - mov r2, r2, lsl #16 - mov lr, r2, lsr #16 - eor r2, r0, #132 ;@ 0x84 - mov r2, r2, lsl #16 - mov r8, r2, lsr #16 - b _03803E18 -_03803DE0: - mov ip, r0 - cmp r1, #76 ;@ 0x4c - moveq ip, r8 - beq _03803DF8 - cmp r1, #77 ;@ 0x4d - moveq ip, lr -_03803DF8: - mov r3, r1, lsl #1 - ldrh r2, [r7, r3] - and ip, ip, r2 - ldrh r2, [r6, r3] - cmp ip, r2 - movne r4, #0 - bne _03803E20 - add r1, r1, #1 -_03803E18: - cmp r1, #78 ;@ 0x4e - blt _03803DE0 -_03803E20: - mov r0, r5 - bl OS_UnLockCartridge - mov r0, r5 - bl OS_ReleaseLockID - mov r0, r4 - ldmia sp!, {r4, r5, r6, r7, r8, lr} - bx lr -_03803E3C: .word 0x0000FFFF - - arm_func_start FUN_03803E40 -FUN_03803E40: ;@ 0x03803E40 - ldr r1, _03803E54 ;@ =current_vib - str r0, [r1] - ldr r1, _03803E58 ;@ =0x08001000 - strh r0, [r1] - bx lr -_03803E54: .word current_vib -_03803E58: .word 0x08001000 - - arm_func_start CTRDG_VibPulseEdgeUpdate -CTRDG_VibPulseEdgeUpdate: ;@ 0x03803E5C - stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - sub sp, sp, #4 - movs r5, r0 - beq _03803E9C - ldr r0, [r5] - cmp r0, #0 - bne _03803E9C - ldr r0, [r5, #68] ;@ 0x44 - add r0, r0, #1 - str r0, [r5, #68] ;@ 0x44 - ldr r1, [r5, #64] ;@ 0x40 - cmp r1, #0 - beq _03803E9C - ldr r0, [r5, #68] ;@ 0x44 - cmp r0, r1 - movhi r5, #0 -_03803E9C: - cmp r5, #0 - beq _03803EB0 - ldr r0, [r5, #60] ;@ 0x3c - cmp r0, #0 - bne _03803F48 -_03803EB0: - bl OS_DisableInterrupts - mov r9, r0 - ldr r0, _03804068 ;@ =current_vib - ldr r0, [r0] - cmp r0, #2 - bne _03803F34 - mov r8, #0 - ldr r7, _0380406C ;@ =0x027FFFE8 - ldr r4, _03804070 ;@ =_03809FBC - ldr fp, _03804074 ;@ =0x000080E8 - mov r6, r8 - mov r5, #1 - b _03803F2C -_03803EE4: - mov r0, r7 - bl OS_ReadOwnerOfLockWord - ands sl, r0, #128 ;@ 0x80 - bne _03803F04 - ldrh r0, [r4] - bl OS_TryLockCartridge - cmp r0, #0 - bne _03803F24 -_03803F04: - mov r0, r6 - bl FUN_03803E40 - mov r8, r5 - cmp sl, #0 - bne _03803F2C - ldrh r0, [r4] - bl OS_UnlockCartridge - b _03803F2C -_03803F24: - mov r0, fp - bl OS_SpinWait -_03803F2C: - cmp r8, #0 - beq _03803EE4 -_03803F34: - ldr r0, _03804078 ;@ =_03809FEC - bl OS_CancelAlarm - mov r0, r9 - bl OS_RestoreInterrupts - b _0380405C -_03803F48: - cmp r5, #0 - beq _0380405C - ldr r0, _0380406C ;@ =0x027FFFE8 - bl OS_ReadOwnerOfLockWord - ands r4, r0, #128 ;@ 0x80 - bne _03803F74 - ldr r0, _03804070 ;@ =_03809FBC - ldrh r0, [r0] - bl OS_TryLockCartridge - cmp r0, #0 - bne _03804044 -_03803F74: - ldr r1, [r5] - ldr r0, [r5, #4] - cmp r1, r0 - bne _03803FB0 - mov r0, #0 - bl FUN_03803E40 - str r5, [sp] - ldr r0, _03804078 ;@ =_03809FEC - ldr r1, [r5, #8] - mov r2, #0 - ldr r3, _0380407C ;@ =CTRDG_VibPulseEdgeUpdate - bl OS_SetAlarm - mov r0, #0 - str r0, [r5] - b _0380402C -_03803FB0: - ands r0, r1, #1 - beq _03803FF4 - mov r0, #0 - bl FUN_03803E40 - str r5, [sp] - ldr r0, _03804078 ;@ =_03809FEC - ldr r1, [r5] - mov r1, r1, lsr #1 - add r1, r5, r1, lsl #2 - ldr r1, [r1, #36] ;@ 0x24 - mov r2, #0 - ldr r3, _0380407C ;@ =CTRDG_VibPulseEdgeUpdate - bl OS_SetAlarm - ldr r0, [r5] - add r0, r0, #1 - str r0, [r5] - b _0380402C -_03803FF4: - mov r0, #2 - bl FUN_03803E40 - str r5, [sp] - ldr r0, _03804078 ;@ =_03809FEC - ldr r1, [r5] - mov r1, r1, lsr #1 - add r1, r5, r1, lsl #2 - ldr r1, [r1, #12] - mov r2, #0 - ldr r3, _0380407C ;@ =CTRDG_VibPulseEdgeUpdate - bl OS_SetAlarm - ldr r0, [r5] - add r0, r0, #1 - str r0, [r5] -_0380402C: - cmp r4, #0 - bne _0380405C - ldr r0, _03804070 ;@ =_03809FBC - ldrh r0, [r0] - bl OS_UnlockCartridge - b _0380405C -_03804044: - str r5, [sp] - ldr r0, _03804078 ;@ =_03809FEC - ldr r1, _03804080 ;@ =0x0000020B - mov r2, #0 - ldr r3, _0380407C ;@ =CTRDG_VibPulseEdgeUpdate - bl OS_SetAlarm -_0380405C: - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - bx lr -_03804068: .word current_vib -_0380406C: .word 0x027FFFE8 -_03804070: .word _03809FBC -_03804074: .word 0x000080E8 -_03804078: .word _03809FEC -_0380407C: .word CTRDG_VibPulseEdgeUpdate -_03804080: .word 0x0000020B -_03804084: - mov r0, r1 - ldr ip, _03804090 ;@ =CTRDG_VibPulseEdgeUpdate - bx ip -_03804090: .word CTRDG_VibPulseEdgeUpdate - - arm_func_start FUN_03804094 -FUN_03804094: ;@ 0x03804094 - stmfd sp!, {lr} - sub sp, sp, #4 - and r0, r1, #63 ;@ 0x3f - cmp r0, #2 - bne _038040B0 - bl FUN_03803C58 - b _038040B4 -_038040B0: - bl OS_Terminate -_038040B4: - add sp, sp, #4 - ldmia sp!, {lr} - bx lr - - arm_func_start FUN_038040C0 -FUN_038040C0: ;@ 0x038040C0 - stmfd sp!, {lr} - sub sp, sp, #4 - and r0, r1, #63 ;@ 0x3f - cmp r0, #1 - ldreq r0, _038040F4 ;@ =_03809FD4 - streq r1, [r0] - moveq r1, #1 - streq r1, [r0, #16] - beq _038040E8 - bl OS_Terminate -_038040E8: - add sp, sp, #4 - ldmia sp!, {lr} - bx lr -_038040F4: .word _03809FD4 - - arm_func_start CTRDGi_InitModuleInfo -CTRDGi_InitModuleInfo: ;@ 0x038040F8 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - ldr r0, _038041C8 ;@ =_03809FC4 - ldr r1, [r0] - cmp r1, #0 - bne _038041BC - mov r1, #1 - str r1, [r0] - ldr r0, _038041CC ;@ =0x04000300 - ldrh r0, [r0] - ands r0, r0, #1 - beq _038041BC - mov r0, #262144 ;@ 0x40000 - bl OS_SetIrqMask - mov r5, r0 - ldr r1, _038041D0 ;@ =0x04000208 - ldrh r4, [r1] - mov r0, #1 - strh r0, [r1] - mov r7, #256 ;@ 0x100 - ldr r6, _038041D4 ;@ =_03809FD4 - b _03804158 -_03804150: - mov r0, r7 - bl FUN_037F8CB4 -_03804158: - ldr r0, [r6, #16] - cmp r0, #1 - bne _03804150 - ldr r1, [r6] - ldr r0, _038041D8 ;@ =0x01FFFFC0 - and r0, r1, r0 - mov r0, r0, lsr #6 - mov r0, r0, lsl #5 - add r0, r0, #33554432 ;@ 0x2000000 - add r0, r0, #4 - bl FUN_03803D94 - ldr r2, _038041DC ;@ =0x027FFC30 - ldrb r1, [r2, #5] - bic r1, r1, #1 - and r0, r0, #255 ;@ 0xff - and r0, r0, #1 - orr r0, r1, r0 - strb r0, [r2, #5] - mov r0, #1 - bl CTRDGi_SendtoPxi - ldr r1, _038041D0 ;@ =0x04000208 - ldrh r0, [r1] - strh r4, [r1] - mov r0, r5 - bl OS_SetIrqMask -_038041BC: - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, lr} - bx lr -_038041C8: .word _03809FC4 -_038041CC: .word 0x04000300 -_038041D0: .word 0x04000208 -_038041D4: .word _03809FD4 -_038041D8: .word 0x01FFFFC0 -_038041DC: .word 0x027FFC30 - - arm_func_start CTRDG_Init -CTRDG_Init: ;@ 0x038041E0 - stmfd sp!, {lr} - sub sp, sp, #4 - bl OS_InitTick - bl OS_InitAlarm - ldr r0, _03804270 ;@ =_03809FEC - bl OS_CreateAlarm - ldr r0, _03804274 ;@ =_03809FD0 - ldr r1, [r0] - cmp r1, #0 - bne _03804264 - mov r1, #1 - str r1, [r0] - bl CTRDGi_InitCommon - bl OS_GetLockID - mvn r1, #2 - cmp r0, r1 - beq _03804264 - ldr r1, _03804278 ;@ =_03809FBC - strh r0, [r1] - bl PXI_Init - mov r0, #13 - ldr r1, _0380427C ;@ =FUN_038040C0 - bl PXI_SetFifoRecvCallback - bl CTRDGi_InitModuleInfo - mov r0, #13 - ldr r1, _03804280 ;@ =FUN_03804094 - bl PXI_SetFifoRecvCallback - mov r0, #16 - ldr r1, _03804284 ;@ =_03804084 - bl PXI_SetFifoRecvCallback - mov r0, #17 - ldr r1, _03804288 ;@ =FUN_03803BD4 - bl PXI_SetFifoRecvCallback -_03804264: - add sp, sp, #4 - ldmia sp!, {lr} - bx lr -_03804270: .word _03809FEC -_03804274: .word _03809FD0 -_03804278: .word _03809FBC -_0380427C: .word FUN_038040C0 -_03804280: .word FUN_03804094 -_03804284: .word _03804084 -_03804288: .word FUN_03803BD4 - arm_func_start FUN_0380428C FUN_0380428C: ;@ 0x0380428C stmfd sp!, {lr} |