diff options
Diffstat (limited to 'asm/code_800B5F0.s')
-rw-r--r-- | asm/code_800B5F0.s | 877 |
1 files changed, 2 insertions, 875 deletions
diff --git a/asm/code_800B5F0.s b/asm/code_800B5F0.s index fb03810..020ff3a 100644 --- a/asm/code_800B5F0.s +++ b/asm/code_800B5F0.s @@ -891,7 +891,7 @@ sub_800BDFC: lsrs r4, r0, 16 adds r6, r4, 0 adds r0, r4, 0 - bl sub_800CA9C + bl IsBGSong lsls r0, 24 cmp r0, 0 beq _0800BE78 @@ -961,7 +961,7 @@ sub_800BE8C: lsls r4, r1, 16 lsrs r5, r4, 16 adds r0, r6, 0 - bl sub_800CA9C + bl IsBGSong lsls r0, 24 cmp r0, 0 beq _0800BF2E @@ -2280,878 +2280,5 @@ _0800C926: bx r0 thumb_func_end UpdateSound - thumb_func_start sub_800C93C -sub_800C93C: - push {r4,r5,lr} - ldr r0, _0800C984 - movs r1, 0x10 - bl sub_800C3F8 - ldr r0, _0800C988 - movs r1, 0x10 - bl sub_800C3F8 - bl DisableInterrupts - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0800C98C - ldrh r3, [r0] - cmp r3, 0 - bne _0800C9AC - ldr r0, _0800C990 - ldrh r1, [r0] - ldr r0, _0800C994 - cmp r1, r0 - beq _0800C9AC - ldr r1, _0800C998 - ldrh r2, [r1] - subs r0, r2, 0x1 - lsls r0, 16 - lsrs r0, 16 - adds r4, r1, 0 - cmp r0, 0x1 - bhi _0800C9AC - adds r1, r2, 0 - cmp r1, 0x2 - bne _0800C9A0 - ldr r0, _0800C99C - strb r3, [r0] - b _0800C9A8 - .align 2, 0 -_0800C984: .4byte 0x000003e5 -_0800C988: .4byte 0x000003e6 -_0800C98C: .4byte gUnknown_202D690 -_0800C990: .4byte gUnknown_202D68A -_0800C994: .4byte 0x000003e7 -_0800C998: .4byte gUnknown_202D688 -_0800C99C: .4byte gUnknown_202D694 -_0800C9A0: - cmp r1, 0x1 - bne _0800C9A8 - ldr r0, _0800C9C4 - strb r1, [r0] -_0800C9A8: - movs r0, 0x4 - strh r0, [r4] -_0800C9AC: - ldr r0, _0800C9C8 - bl m4aMPlayStop - bl m4aSoundVSyncOff - cmp r5, 0 - beq _0800C9BE - bl EnableInterrupts -_0800C9BE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800C9C4: .4byte gUnknown_202D694 -_0800C9C8: .4byte gUnknown_20008F0 - thumb_func_end sub_800C93C - - thumb_func_start sub_800C9CC -sub_800C9CC: - push {r4,lr} - bl DisableInterrupts - lsls r0, 24 - lsrs r4, r0, 24 - bl m4aSoundVSyncOn - ldr r0, _0800CA08 - ldrh r0, [r0] - cmp r0, 0 - bne _0800CA22 - ldr r2, _0800CA0C - ldrh r1, [r2] - ldr r0, _0800CA10 - cmp r1, r0 - beq _0800CA22 - ldr r1, _0800CA14 - ldrh r0, [r1] - cmp r0, 0x4 - bne _0800CA22 - movs r0, 0x1 - strh r0, [r1] - ldr r0, _0800CA18 - ldrb r0, [r0] - cmp r0, 0 - beq _0800CA1C - ldrh r0, [r2] - bl m4aSongNumStart - b _0800CA22 - .align 2, 0 -_0800CA08: .4byte gUnknown_202D690 -_0800CA0C: .4byte gUnknown_202D68A -_0800CA10: .4byte 0x000003e7 -_0800CA14: .4byte gUnknown_202D688 -_0800CA18: .4byte gUnknown_202D694 -_0800CA1C: - ldr r0, _0800CA30 - bl m4aMPlayContinue -_0800CA22: - cmp r4, 0 - beq _0800CA2A - bl EnableInterrupts -_0800CA2A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800CA30: .4byte gUnknown_20008F0 - thumb_func_end sub_800C9CC - - thumb_func_start nullsub_179 -nullsub_179: - bx lr - thumb_func_end nullsub_179 - - thumb_func_start sub_800CA38 -sub_800CA38: - push {r4,lr} - adds r4, r0, 0 - bl sub_800CA9C - lsls r0, 24 - cmp r0, 0 - beq _0800CA54 - lsls r0, r4, 16 - lsrs r0, 16 - bl sub_800CAE0 - lsls r0, 16 - cmp r0, 0 - beq _0800CA70 -_0800CA54: - adds r0, r4, 0 - bl sub_800CACC - lsls r0, 24 - cmp r0, 0 - beq _0800CA74 - lsls r0, r4, 16 - lsrs r0, 16 - bl sub_800CAE0 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bne _0800CA90 -_0800CA70: - movs r0, 0x1 - b _0800CA92 -_0800CA74: - adds r0, r4, 0 - bl sub_800CAAC - lsls r0, 24 - cmp r0, 0 - beq _0800CA90 - lsls r0, r4, 16 - lsrs r0, 16 - bl sub_800CAE0 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _0800CA70 -_0800CA90: - movs r0, 0 -_0800CA92: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_800CA38 - - thumb_func_start nullsub_19 -nullsub_19: - bx lr - thumb_func_end nullsub_19 - - thumb_func_start sub_800CA9C -sub_800CA9C: - push {lr} - cmp r0, 0x80 - bls _0800CAA6 - movs r0, 0 - b _0800CAA8 -_0800CAA6: - movs r0, 0x1 -_0800CAA8: - pop {r1} - bx r1 - thumb_func_end sub_800CA9C - - thumb_func_start sub_800CAAC -sub_800CAAC: - push {lr} - ldr r1, _0800CABC - adds r0, r1 - ldr r1, _0800CAC0 - cmp r0, r1 - bls _0800CAC4 - movs r0, 0 - b _0800CAC6 - .align 2, 0 -_0800CABC: .4byte 0xfffffed4 -_0800CAC0: .4byte 0x0000027f -_0800CAC4: - movs r0, 0x1 -_0800CAC6: - pop {r1} - bx r1 - thumb_func_end sub_800CAAC - - thumb_func_start sub_800CACC -sub_800CACC: - push {lr} - subs r0, 0xC8 - cmp r0, 0x13 - bls _0800CAD8 - movs r0, 0 - b _0800CADA -_0800CAD8: - movs r0, 0x1 -_0800CADA: - pop {r1} - bx r1 - thumb_func_end sub_800CACC - - thumb_func_start sub_800CAE0 -sub_800CAE0: - lsls r0, 16 - ldr r1, _0800CAEC - lsrs r0, 13 - adds r0, r1 - ldrh r0, [r0, 0x4] - bx lr - .align 2, 0 -_0800CAEC: .4byte gSongTable - thumb_func_end sub_800CAE0 - - thumb_func_start sub_800CAF0 -sub_800CAF0: - push {lr} - lsls r0, 16 - lsrs r0, 16 - ldr r2, _0800CB0C - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldr r0, [r1] - ldrh r0, [r0, 0x4] - cmp r0, 0 - beq _0800CB10 - movs r0, 0x1 - b _0800CB12 - .align 2, 0 -_0800CB0C: .4byte gMPlayTable -_0800CB10: - movs r0, 0 -_0800CB12: - pop {r1} - bx r1 - thumb_func_end sub_800CAF0 - - thumb_func_start nullsub_20 -nullsub_20: - bx lr - thumb_func_end nullsub_20 - - thumb_func_start nullsub_21 -nullsub_21: - bx lr - thumb_func_end nullsub_21 - - thumb_func_start sub_800CB20 -sub_800CB20: - push {lr} - bl sub_800BA5C - ldr r1, _0800CB48 - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] - ldr r0, _0800CB4C - ldrh r1, [r0] - movs r0, 0x5 - ands r0, r1 - cmp r0, 0 - beq _0800CB3E - bl Random -_0800CB3E: - bl Random - pop {r0} - bx r0 - .align 2, 0 -_0800CB48: .4byte gUnknown_203B0B8 -_0800CB4C: .4byte gUnknown_203B0BC - thumb_func_end sub_800CB20 - - thumb_func_start sub_800CB50 -sub_800CB50: - ldr r0, _0800CB58 - ldr r0, [r0] - bx lr - .align 2, 0 -_0800CB58: .4byte gUnknown_203B0B8 - thumb_func_end sub_800CB50 - - thumb_func_start nullsub_180 -nullsub_180: - bx lr - thumb_func_end nullsub_180 - - thumb_func_start xxx_call_update_bg_sound_input -xxx_call_update_bg_sound_input: - push {lr} - bl xxx_update_bg_sound_input - pop {r0} - bx r0 - thumb_func_end xxx_call_update_bg_sound_input - - thumb_func_start nullsub_181 -nullsub_181: - bx lr - thumb_func_end nullsub_181 - - thumb_func_start sub_800CB70 -sub_800CB70: - movs r0, 0 - bx lr - thumb_func_end sub_800CB70 - - thumb_func_start ReadKeyInput -ReadKeyInput: - push {r4,lr} - adds r2, r0, 0 - ldr r0, _0800CC38 - ldrh r1, [r0] - ldr r3, _0800CC3C - adds r0, r3, 0 - adds r3, r0, 0 - eors r3, r1 - movs r0, 0 - strh r0, [r2] - movs r1, 0x40 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0800CB94 - strh r1, [r2] -_0800CB94: - movs r0, 0x80 - ands r0, r3 - cmp r0, 0 - beq _0800CBA4 - ldrh r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strh r0, [r2] -_0800CBA4: - movs r0, 0x20 - ands r0, r3 - cmp r0, 0 - beq _0800CBB4 - ldrh r0, [r2] - movs r1, 0x20 - orrs r0, r1 - strh r0, [r2] -_0800CBB4: - movs r0, 0x10 - ands r0, r3 - cmp r0, 0 - beq _0800CBC4 - ldrh r0, [r2] - movs r1, 0x10 - orrs r0, r1 - strh r0, [r2] -_0800CBC4: - movs r0, 0x1 - ands r0, r3 - cmp r0, 0 - beq _0800CBD4 - ldrh r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r2] -_0800CBD4: - movs r0, 0x2 - ands r0, r3 - cmp r0, 0 - beq _0800CBE4 - ldrh r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strh r0, [r2] -_0800CBE4: - movs r0, 0x8 - ands r0, r3 - cmp r0, 0 - beq _0800CBF4 - ldrh r0, [r2] - movs r1, 0x8 - orrs r0, r1 - strh r0, [r2] -_0800CBF4: - movs r0, 0x4 - ands r0, r3 - cmp r0, 0 - beq _0800CC04 - ldrh r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strh r0, [r2] -_0800CC04: - movs r4, 0x80 - lsls r4, 1 - adds r0, r3, 0 - ands r0, r4 - cmp r0, 0 - beq _0800CC18 - ldrh r1, [r2] - adds r0, r4, 0 - orrs r0, r1 - strh r0, [r2] -_0800CC18: - movs r4, 0x80 - lsls r4, 2 - adds r0, r3, 0 - ands r0, r4 - cmp r0, 0 - beq _0800CC2C - ldrh r1, [r2] - adds r0, r4, 0 - orrs r0, r1 - strh r0, [r2] -_0800CC2C: - ldr r0, _0800CC40 - strh r3, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800CC38: .4byte 0x04000130 -_0800CC3C: .4byte 0x000003ff -_0800CC40: .4byte gUnknown_203B0BC - thumb_func_end ReadKeyInput - - thumb_func_start sub_800CC44 -sub_800CC44: - push {lr} - adds r2, r1, 0 - cmp r0, 0 - bge _0800CC50 - movs r0, 0 - b _0800CC56 -_0800CC50: - cmp r0, 0x10 - ble _0800CC56 - movs r0, 0x10 -_0800CC56: - cmp r2, 0 - bge _0800CC5E - movs r2, 0 - b _0800CC64 -_0800CC5E: - cmp r2, 0x10 - ble _0800CC64 - movs r2, 0x10 -_0800CC64: - ldr r1, _0800CC7C - strb r0, [r1] - ldr r0, _0800CC80 - strb r2, [r0] - ldr r2, _0800CC84 - ldrb r1, [r1] - ldrb r0, [r0] - lsls r0, 8 - orrs r1, r0 - strh r1, [r2] - pop {r0} - bx r0 - .align 2, 0 -_0800CC7C: .4byte gUnknown_202D6B8 -_0800CC80: .4byte gUnknown_202D6B9 -_0800CC84: .4byte gUnknown_202D7FA - thumb_func_end sub_800CC44 - - thumb_func_start sub_800CC88 -sub_800CC88: - ldr r2, _0800CC90 - strh r0, [r2, 0x4] - strh r1, [r2, 0x6] - bx lr - .align 2, 0 -_0800CC90: .4byte gUnknown_202D698 - thumb_func_end sub_800CC88 - - thumb_func_start sub_800CC94 -sub_800CC94: - ldr r2, _0800CC9C - strh r0, [r2, 0x4] - strh r1, [r2, 0x6] - bx lr - .align 2, 0 -_0800CC9C: .4byte gUnknown_202D6A0 - thumb_func_end sub_800CC94 - - thumb_func_start sub_800CCA0 -sub_800CCA0: - ldr r2, _0800CCA8 - strh r0, [r2, 0x4] - strh r1, [r2, 0x6] - bx lr - .align 2, 0 -_0800CCA8: .4byte gUnknown_202D6A8 - thumb_func_end sub_800CCA0 - - thumb_func_start sub_800CCAC -sub_800CCAC: - ldr r2, _0800CCB4 - strh r0, [r2, 0x4] - strh r1, [r2, 0x6] - bx lr - .align 2, 0 -_0800CCB4: .4byte gUnknown_202D6B0 - thumb_func_end sub_800CCAC - - thumb_func_start sub_800CCB8 -sub_800CCB8: - push {lr} - cmp r0, 0x1 - beq _0800CCD4 - cmp r0, 0x1 - ble _0800CCCA - cmp r0, 0x2 - beq _0800CCDE - cmp r0, 0x3 - beq _0800CCE8 -_0800CCCA: - adds r0, r1, 0 - adds r1, r2, 0 - bl sub_800CC88 - b _0800CCF0 -_0800CCD4: - adds r0, r1, 0 - adds r1, r2, 0 - bl sub_800CC94 - b _0800CCF0 -_0800CCDE: - adds r0, r1, 0 - adds r1, r2, 0 - bl sub_800CCA0 - b _0800CCF0 -_0800CCE8: - adds r0, r1, 0 - adds r1, r2, 0 - bl sub_800CCAC -_0800CCF0: - pop {r0} - bx r0 - thumb_func_end sub_800CCB8 - - thumb_func_start sub_800CCF4 -sub_800CCF4: - push {lr} - cmp r0, 0x1 - beq _0800CD10 - cmp r0, 0x1 - ble _0800CD06 - cmp r0, 0x2 - beq _0800CD18 - cmp r0, 0x3 - beq _0800CD20 -_0800CD06: - ldr r0, _0800CD0C - b _0800CD22 - .align 2, 0 -_0800CD0C: .4byte gUnknown_202D698 -_0800CD10: - ldr r0, _0800CD14 - b _0800CD22 - .align 2, 0 -_0800CD14: .4byte gUnknown_202D6A0 -_0800CD18: - ldr r0, _0800CD1C - b _0800CD22 - .align 2, 0 -_0800CD1C: .4byte gUnknown_202D6A8 -_0800CD20: - ldr r0, _0800CD28 -_0800CD22: - strh r1, [r0, 0x4] - pop {r0} - bx r0 - .align 2, 0 -_0800CD28: .4byte gUnknown_202D6B0 - thumb_func_end sub_800CCF4 - - thumb_func_start sub_800CD2C -sub_800CD2C: - push {lr} - cmp r0, 0x1 - beq _0800CD48 - cmp r0, 0x1 - ble _0800CD3E - cmp r0, 0x2 - beq _0800CD50 - cmp r0, 0x3 - beq _0800CD58 -_0800CD3E: - ldr r0, _0800CD44 - b _0800CD5A - .align 2, 0 -_0800CD44: .4byte gUnknown_202D698 -_0800CD48: - ldr r0, _0800CD4C - b _0800CD5A - .align 2, 0 -_0800CD4C: .4byte gUnknown_202D6A0 -_0800CD50: - ldr r0, _0800CD54 - b _0800CD5A - .align 2, 0 -_0800CD54: .4byte gUnknown_202D6A8 -_0800CD58: - ldr r0, _0800CD60 -_0800CD5A: - strh r1, [r0, 0x6] - pop {r0} - bx r0 - .align 2, 0 -_0800CD60: .4byte gUnknown_202D6B0 - thumb_func_end sub_800CD2C - - thumb_func_start sub_800CD64 -sub_800CD64: - ldr r2, _0800CD7C - strb r1, [r2] - ldr r2, _0800CD80 - negs r1, r0 - orrs r1, r0 - asrs r1, 31 - movs r3, 0x80 - lsls r3, 8 - adds r0, r3, 0 - ands r1, r0 - strh r1, [r2, 0x2] - bx lr - .align 2, 0 -_0800CD7C: .4byte gUnknown_202D7FE -_0800CD80: .4byte gUnknown_202D6A8 - thumb_func_end sub_800CD64 - - thumb_func_start SetBGOBJEnableFlags -SetBGOBJEnableFlags: - push {r4,lr} - movs r3, 0x80 - lsls r3, 19 - ldrh r1, [r3] - ldr r2, _0800CDA4 - ands r2, r1 - lsls r0, 8 - movs r4, 0xF8 - lsls r4, 5 - adds r1, r4, 0 - bics r1, r0 - orrs r2, r1 - strh r2, [r3] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800CDA4: .4byte 0x0000e0ff - thumb_func_end SetBGOBJEnableFlags - - thumb_func_start sub_800CDA8 -sub_800CDA8: - ldr r1, _0800CDBC - str r0, [r1] - ldr r2, _0800CDC0 - ldr r1, _0800CDC4 - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - bx lr - .align 2, 0 -_0800CDBC: .4byte gUnknown_202D800 -_0800CDC0: .4byte gUnknown_202D7FC -_0800CDC4: .4byte gUnknown_203B0BE - thumb_func_end sub_800CDA8 - - thumb_func_start sub_800CDC8 -sub_800CDC8: - ldr r0, _0800CDD0 - ldr r0, [r0] - bx lr - .align 2, 0 -_0800CDD0: .4byte gUnknown_202D800 - thumb_func_end sub_800CDC8 - - thumb_func_start SetWindowTitle -SetWindowTitle: - bx lr - thumb_func_end SetWindowTitle - - thumb_func_start nullsub_23 -nullsub_23: - bx lr - thumb_func_end nullsub_23 - - thumb_func_start nullsub_182 -nullsub_182: - bx lr - thumb_func_end nullsub_182 - - thumb_func_start sub_800CDE0 -sub_800CDE0: - movs r0, 0x1 - bx lr - thumb_func_end sub_800CDE0 - - thumb_func_start CpuCopy -CpuCopy: - push {lr} - adds r3, r0, 0 - cmp r2, 0 - bge _0800CDEE - adds r2, 0x3 -_0800CDEE: - lsls r2, 9 - lsrs r2, 11 - movs r0, 0x80 - lsls r0, 19 - orrs r2, r0 - adds r0, r1, 0 - adds r1, r3, 0 - bl CpuSet - pop {r0} - bx r0 - thumb_func_end CpuCopy - - thumb_func_start CpuClear -CpuClear: - push {lr} - sub sp, 0x4 - adds r3, r0, 0 - movs r0, 0 - str r0, [sp] - cmp r1, 0 - bge _0800CE14 - adds r1, 0x3 -_0800CE14: - lsls r2, r1, 9 - lsrs r2, 11 - movs r0, 0xA0 - lsls r0, 19 - orrs r2, r0 - mov r0, sp - adds r1, r3, 0 - bl CpuSet - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end CpuClear - - thumb_func_start CpuFill -CpuFill: - push {lr} - sub sp, 0x4 - adds r3, r0, 0 - str r1, [sp] - cmp r2, 0 - bge _0800CE3A - adds r2, 0x3 -_0800CE3A: - lsls r2, 9 - lsrs r2, 11 - movs r0, 0xA0 - lsls r0, 19 - orrs r2, r0 - mov r0, sp - adds r1, r3, 0 - bl CpuSet - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end CpuFill - - thumb_func_start sub_800CE54 -sub_800CE54: - push {lr} - ldr r2, _0800CEC0 - ldrh r0, [r2] - movs r3, 0x80 - lsls r3, 8 - adds r1, r3, 0 - orrs r0, r1 - ldr r1, _0800CEC4 - ands r0, r1 - strh r0, [r2] - mov r8, r8 - mov r8, r8 - mov r8, r8 - mov r8, r8 - ldr r1, _0800CEC8 - ands r0, r1 - strh r0, [r2] - ldr r1, _0800CECC - ldr r2, _0800CED0 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - movs r0, 0x3D - strh r0, [r1] - adds r1, 0x6 - ldr r0, _0800CED4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0800CED8 - ldrh r0, [r0] - strh r0, [r1] - ldr r0, _0800CEDC - ldrb r1, [r0] - cmp r1, 0 - beq _0800CEF4 - ldr r1, _0800CEE0 - ldr r0, _0800CEE4 - ldr r2, [r0] - adds r0, r2, 0x4 - str r0, [r1] - ldr r3, _0800CEE8 - str r3, [r1, 0x4] - ldr r0, _0800CEEC - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldrh r0, [r2] - strh r0, [r3] - subs r1, 0x6E - ldrh r0, [r2, 0x2] - strh r0, [r1] - ldr r0, _0800CEF0 - movs r1, 0xA0 - b _0800CEFE - .align 2, 0 -_0800CEC0: .4byte 0x040000ba -_0800CEC4: .4byte 0x0000cdff -_0800CEC8: .4byte 0x00007fff -_0800CECC: .4byte 0x04000048 -_0800CED0: .4byte 0x00003f3f -_0800CED4: .4byte gUnknown_202D7FC -_0800CED8: .4byte gUnknown_202D7FA -_0800CEDC: .4byte gUnknown_2026E38 -_0800CEE0: .4byte 0x040000b0 -_0800CEE4: .4byte gUnknown_2026E3C -_0800CEE8: .4byte 0x04000040 -_0800CEEC: .4byte 0xa2600002 -_0800CEF0: .4byte 0x04000044 -_0800CEF4: - ldr r0, _0800CF08 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, 0x2 -_0800CEFE: - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_0800CF08: .4byte 0x04000040 - thumb_func_end sub_800CE54 .align 2, 0 @ Don't pad with nop. |