diff --git a/asm/high_scores.s b/asm/high_scores.s deleted file mode 100644 index 0dffa410..00000000 --- a/asm/high_scores.s +++ /dev/null @@ -1,1726 +0,0 @@ - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_F8B0 -sub_F8B0: @ 0x0800F8B0 - push {r4, r5, r6, r7, lr} - lsls r2, r2, #0x10 - lsrs r5, r2, #0x10 - cmp r0, #0 - beq _0800F8BC - b _0800F9CC -_0800F8BC: - cmp r1, #0 - bne _0800F93C - ldr r0, _0800F924 @ =gUnknown_03005C00 - ldr r7, _0800F928 @ =0x000090EA - ldr r6, _0800F92C @ =0x0000912A - ldr r1, _0800F930 @ =gUnknown_086A7FA4 - adds r2, r0, #0 - adds r2, #0x98 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r3, r0, r1 - movs r4, #0xe -_0800F8D4: - ldrh r1, [r2] - adds r0, r1, #0 - cmp r0, r7 - beq _0800F8E8 - cmp r0, r6 - beq _0800F8E8 - movs r0, #0 - ldrsb r0, [r3, r0] - adds r0, r1, r0 - strh r0, [r2] -_0800F8E8: - adds r2, #2 - subs r4, #1 - cmp r4, #0 - bge _0800F8D4 - ldr r0, _0800F924 @ =gUnknown_03005C00 - ldr r7, _0800F934 @ =0x0000910A - ldr r6, _0800F938 @ =0x0000914A - ldr r1, _0800F930 @ =gUnknown_086A7FA4 - adds r3, r0, #0 - adds r3, #0xd8 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r2, r0, r1 - movs r4, #0xe -_0800F904: - ldrh r1, [r3] - adds r0, r1, #0 - cmp r0, r7 - beq _0800F918 - cmp r0, r6 - beq _0800F918 - movs r0, #0 - ldrsb r0, [r2, r0] - adds r0, r1, r0 - strh r0, [r3] -_0800F918: - adds r3, #2 - subs r4, #1 - cmp r4, #0 - bge _0800F904 - b _0800FAC2 - .align 2, 0 -_0800F924: .4byte gUnknown_03005C00 -_0800F928: .4byte 0x000090EA -_0800F92C: .4byte 0x0000912A -_0800F930: .4byte gUnknown_086A7FA4 -_0800F934: .4byte 0x0000910A -_0800F938: .4byte 0x0000914A -_0800F93C: - lsls r1, r1, #1 - adds r0, r1, #3 - lsls r0, r0, #5 - adds r3, r0, #0 - adds r3, #0xc - adds r6, r1, #0 - ldr r1, _0800F9B4 @ =gUnknown_03005C00 - ldr r0, _0800F9B8 @ =0x0000916A - mov ip, r0 - ldr r7, _0800F9BC @ =0x000091AA - ldr r2, _0800F9C0 @ =gUnknown_086A7FA4 - lsls r0, r3, #1 - adds r1, r0, r1 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r3, r0, r2 - movs r4, #0xe -_0800F95E: - ldrh r2, [r1] - adds r0, r2, #0 - cmp r0, ip - beq _0800F972 - cmp r0, r7 - beq _0800F972 - movs r0, #0 - ldrsb r0, [r3, r0] - adds r0, r2, r0 - strh r0, [r1] -_0800F972: - adds r1, #2 - subs r4, #1 - cmp r4, #0 - bge _0800F95E - adds r0, r6, #4 - lsls r0, r0, #5 - adds r3, r0, #0 - adds r3, #0xc - ldr r1, _0800F9B4 @ =gUnknown_03005C00 - ldr r7, _0800F9C4 @ =0x0000918A - ldr r6, _0800F9C8 @ =0x000091CA - ldr r2, _0800F9C0 @ =gUnknown_086A7FA4 - lsls r0, r3, #1 - adds r1, r0, r1 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r2, r0, r2 - movs r4, #0xe -_0800F996: - ldrh r3, [r1] - adds r0, r3, #0 - cmp r0, r7 - beq _0800F9AA - cmp r0, r6 - beq _0800F9AA - movs r0, #0 - ldrsb r0, [r2, r0] - adds r0, r3, r0 - strh r0, [r1] -_0800F9AA: - adds r1, #2 - subs r4, #1 - cmp r4, #0 - bge _0800F996 - b _0800FAC2 - .align 2, 0 -_0800F9B4: .4byte gUnknown_03005C00 -_0800F9B8: .4byte 0x0000916A -_0800F9BC: .4byte 0x000091AA -_0800F9C0: .4byte gUnknown_086A7FA4 -_0800F9C4: .4byte 0x0000918A -_0800F9C8: .4byte 0x000091CA -_0800F9CC: - cmp r1, #0 - bne _0800FA54 - ldr r0, _0800FA34 @ =gUnknown_03005C00 - ldr r7, _0800FA38 @ =0x000090EA - ldr r6, _0800FA3C @ =0x0000912A - ldr r1, _0800FA40 @ =gUnknown_086A7FA4 - ldr r3, _0800FA44 @ =0x00000894 - adds r2, r0, r3 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r3, r0, r1 - movs r4, #0xe -_0800F9E4: - ldrh r1, [r2] - adds r0, r1, #0 - cmp r0, r7 - beq _0800F9F8 - cmp r0, r6 - beq _0800F9F8 - movs r0, #0 - ldrsb r0, [r3, r0] - adds r0, r1, r0 - strh r0, [r2] -_0800F9F8: - adds r2, #2 - subs r4, #1 - cmp r4, #0 - bge _0800F9E4 - ldr r0, _0800FA34 @ =gUnknown_03005C00 - ldr r7, _0800FA48 @ =0x0000910A - ldr r6, _0800FA4C @ =0x0000914A - ldr r1, _0800FA40 @ =gUnknown_086A7FA4 - ldr r4, _0800FA50 @ =0x000008D4 - adds r3, r0, r4 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r2, r0, r1 - movs r4, #0xe -_0800FA14: - ldrh r1, [r3] - adds r0, r1, #0 - cmp r0, r7 - beq _0800FA28 - cmp r0, r6 - beq _0800FA28 - movs r0, #0 - ldrsb r0, [r2, r0] - adds r0, r1, r0 - strh r0, [r3] -_0800FA28: - adds r3, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FA14 - b _0800FAC2 - .align 2, 0 -_0800FA34: .4byte gUnknown_03005C00 -_0800FA38: .4byte 0x000090EA -_0800FA3C: .4byte 0x0000912A -_0800FA40: .4byte gUnknown_086A7FA4 -_0800FA44: .4byte 0x00000894 -_0800FA48: .4byte 0x0000910A -_0800FA4C: .4byte 0x0000914A -_0800FA50: .4byte 0x000008D4 -_0800FA54: - lsls r0, r1, #1 - lsls r3, r0, #6 - adds r6, r0, #0 - ldr r1, _0800FAC8 @ =gUnknown_03005C00 - ldr r0, _0800FACC @ =0x0000916A - mov ip, r0 - ldr r7, _0800FAD0 @ =0x000091AA - ldr r2, _0800FAD4 @ =gUnknown_086A7FA4 - ldr r4, _0800FAD8 @ =0x000008D4 - adds r0, r3, r4 - adds r1, r0, r1 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r3, r0, r2 - movs r4, #0xe -_0800FA72: - ldrh r2, [r1] - adds r0, r2, #0 - cmp r0, ip - beq _0800FA86 - cmp r0, r7 - beq _0800FA86 - movs r0, #0 - ldrsb r0, [r3, r0] - adds r0, r2, r0 - strh r0, [r1] -_0800FA86: - adds r1, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FA72 - lsls r3, r6, #6 - ldr r1, _0800FAC8 @ =gUnknown_03005C00 - ldr r7, _0800FADC @ =0x0000918A - ldr r6, _0800FAE0 @ =0x000091CA - ldr r2, _0800FAD4 @ =gUnknown_086A7FA4 - ldr r4, _0800FAE4 @ =0x00000914 - adds r0, r3, r4 - adds r1, r0, r1 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r2, r0, r2 - movs r4, #0xe -_0800FAA6: - ldrh r3, [r1] - adds r0, r3, #0 - cmp r0, r7 - beq _0800FABA - cmp r0, r6 - beq _0800FABA - movs r0, #0 - ldrsb r0, [r2, r0] - adds r0, r3, r0 - strh r0, [r1] -_0800FABA: - adds r1, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FAA6 -_0800FAC2: - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_0800FAC8: .4byte gUnknown_03005C00 -_0800FACC: .4byte 0x0000916A -_0800FAD0: .4byte 0x000091AA -_0800FAD4: .4byte gUnknown_086A7FA4 -_0800FAD8: .4byte 0x000008D4 -_0800FADC: .4byte 0x0000918A -_0800FAE0: .4byte 0x000091CA -_0800FAE4: .4byte 0x00000914 - - thumb_func_start sub_FAE8 -sub_FAE8: @ 0x0800FAE8 - push {r4, r5, r6, r7, lr} - lsls r2, r2, #0x10 - lsrs r5, r2, #0x10 - cmp r0, #0 - beq _0800FAF4 - b _0800FC04 -_0800FAF4: - cmp r1, #0 - bne _0800FB74 - ldr r0, _0800FB5C @ =gUnknown_03005C00 - ldr r7, _0800FB60 @ =0x000090EA - ldr r6, _0800FB64 @ =0x0000912A - ldr r1, _0800FB68 @ =gUnknown_086A7FA8 - adds r2, r0, #0 - adds r2, #0x98 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r3, r0, r1 - movs r4, #0xe -_0800FB0C: - ldrh r1, [r2] - adds r0, r1, #0 - cmp r0, r7 - beq _0800FB20 - cmp r0, r6 - beq _0800FB20 - movs r0, #0 - ldrsb r0, [r3, r0] - adds r0, r1, r0 - strh r0, [r2] -_0800FB20: - adds r2, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FB0C - ldr r0, _0800FB5C @ =gUnknown_03005C00 - ldr r7, _0800FB6C @ =0x0000910A - ldr r6, _0800FB70 @ =0x0000914A - ldr r1, _0800FB68 @ =gUnknown_086A7FA8 - adds r3, r0, #0 - adds r3, #0xd8 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r2, r0, r1 - movs r4, #0xe -_0800FB3C: - ldrh r1, [r3] - adds r0, r1, #0 - cmp r0, r7 - beq _0800FB50 - cmp r0, r6 - beq _0800FB50 - movs r0, #0 - ldrsb r0, [r2, r0] - adds r0, r1, r0 - strh r0, [r3] -_0800FB50: - adds r3, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FB3C - b _0800FCFA - .align 2, 0 -_0800FB5C: .4byte gUnknown_03005C00 -_0800FB60: .4byte 0x000090EA -_0800FB64: .4byte 0x0000912A -_0800FB68: .4byte gUnknown_086A7FA8 -_0800FB6C: .4byte 0x0000910A -_0800FB70: .4byte 0x0000914A -_0800FB74: - lsls r1, r1, #1 - adds r0, r1, #3 - lsls r0, r0, #5 - adds r3, r0, #0 - adds r3, #0xc - adds r6, r1, #0 - ldr r1, _0800FBEC @ =gUnknown_03005C00 - ldr r0, _0800FBF0 @ =0x0000916A - mov ip, r0 - ldr r7, _0800FBF4 @ =0x000091AA - ldr r2, _0800FBF8 @ =gUnknown_086A7FA8 - lsls r0, r3, #1 - adds r1, r0, r1 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r3, r0, r2 - movs r4, #0xe -_0800FB96: - ldrh r2, [r1] - adds r0, r2, #0 - cmp r0, ip - beq _0800FBAA - cmp r0, r7 - beq _0800FBAA - movs r0, #0 - ldrsb r0, [r3, r0] - adds r0, r2, r0 - strh r0, [r1] -_0800FBAA: - adds r1, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FB96 - adds r0, r6, #4 - lsls r0, r0, #5 - adds r3, r0, #0 - adds r3, #0xc - ldr r1, _0800FBEC @ =gUnknown_03005C00 - ldr r7, _0800FBFC @ =0x0000918A - ldr r6, _0800FC00 @ =0x000091CA - ldr r2, _0800FBF8 @ =gUnknown_086A7FA8 - lsls r0, r3, #1 - adds r1, r0, r1 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r2, r0, r2 - movs r4, #0xe -_0800FBCE: - ldrh r3, [r1] - adds r0, r3, #0 - cmp r0, r7 - beq _0800FBE2 - cmp r0, r6 - beq _0800FBE2 - movs r0, #0 - ldrsb r0, [r2, r0] - adds r0, r3, r0 - strh r0, [r1] -_0800FBE2: - adds r1, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FBCE - b _0800FCFA - .align 2, 0 -_0800FBEC: .4byte gUnknown_03005C00 -_0800FBF0: .4byte 0x0000916A -_0800FBF4: .4byte 0x000091AA -_0800FBF8: .4byte gUnknown_086A7FA8 -_0800FBFC: .4byte 0x0000918A -_0800FC00: .4byte 0x000091CA -_0800FC04: - cmp r1, #0 - bne _0800FC8C - ldr r0, _0800FC6C @ =gUnknown_03005C00 - ldr r7, _0800FC70 @ =0x000090EA - ldr r6, _0800FC74 @ =0x0000912A - ldr r1, _0800FC78 @ =gUnknown_086A7FA8 - ldr r3, _0800FC7C @ =0x00000894 - adds r2, r0, r3 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r3, r0, r1 - movs r4, #0xe -_0800FC1C: - ldrh r1, [r2] - adds r0, r1, #0 - cmp r0, r7 - beq _0800FC30 - cmp r0, r6 - beq _0800FC30 - movs r0, #0 - ldrsb r0, [r3, r0] - adds r0, r1, r0 - strh r0, [r2] -_0800FC30: - adds r2, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FC1C - ldr r0, _0800FC6C @ =gUnknown_03005C00 - ldr r7, _0800FC80 @ =0x0000910A - ldr r6, _0800FC84 @ =0x0000914A - ldr r1, _0800FC78 @ =gUnknown_086A7FA8 - ldr r4, _0800FC88 @ =0x000008D4 - adds r3, r0, r4 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r2, r0, r1 - movs r4, #0xe -_0800FC4C: - ldrh r1, [r3] - adds r0, r1, #0 - cmp r0, r7 - beq _0800FC60 - cmp r0, r6 - beq _0800FC60 - movs r0, #0 - ldrsb r0, [r2, r0] - adds r0, r1, r0 - strh r0, [r3] -_0800FC60: - adds r3, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FC4C - b _0800FCFA - .align 2, 0 -_0800FC6C: .4byte gUnknown_03005C00 -_0800FC70: .4byte 0x000090EA -_0800FC74: .4byte 0x0000912A -_0800FC78: .4byte gUnknown_086A7FA8 -_0800FC7C: .4byte 0x00000894 -_0800FC80: .4byte 0x0000910A -_0800FC84: .4byte 0x0000914A -_0800FC88: .4byte 0x000008D4 -_0800FC8C: - lsls r0, r1, #1 - lsls r3, r0, #6 - adds r6, r0, #0 - ldr r1, _0800FD00 @ =gUnknown_03005C00 - ldr r0, _0800FD04 @ =0x0000916A - mov ip, r0 - ldr r7, _0800FD08 @ =0x000091AA - ldr r2, _0800FD0C @ =gUnknown_086A7FA8 - ldr r4, _0800FD10 @ =0x000008D4 - adds r0, r3, r4 - adds r1, r0, r1 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r3, r0, r2 - movs r4, #0xe -_0800FCAA: - ldrh r2, [r1] - adds r0, r2, #0 - cmp r0, ip - beq _0800FCBE - cmp r0, r7 - beq _0800FCBE - movs r0, #0 - ldrsb r0, [r3, r0] - adds r0, r2, r0 - strh r0, [r1] -_0800FCBE: - adds r1, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FCAA - lsls r3, r6, #6 - ldr r1, _0800FD00 @ =gUnknown_03005C00 - ldr r7, _0800FD14 @ =0x0000918A - ldr r6, _0800FD18 @ =0x000091CA - ldr r2, _0800FD0C @ =gUnknown_086A7FA8 - ldr r4, _0800FD1C @ =0x00000914 - adds r0, r3, r4 - adds r1, r0, r1 - lsls r0, r5, #0x10 - asrs r0, r0, #0x10 - adds r2, r0, r2 - movs r4, #0xe -_0800FCDE: - ldrh r3, [r1] - adds r0, r3, #0 - cmp r0, r7 - beq _0800FCF2 - cmp r0, r6 - beq _0800FCF2 - movs r0, #0 - ldrsb r0, [r2, r0] - adds r0, r3, r0 - strh r0, [r1] -_0800FCF2: - adds r1, #2 - subs r4, #1 - cmp r4, #0 - bge _0800FCDE -_0800FCFA: - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_0800FD00: .4byte gUnknown_03005C00 -_0800FD04: .4byte 0x0000916A -_0800FD08: .4byte 0x000091AA -_0800FD0C: .4byte gUnknown_086A7FA8 -_0800FD10: .4byte 0x000008D4 -_0800FD14: .4byte 0x0000918A -_0800FD18: .4byte 0x000091CA -_0800FD1C: .4byte 0x00000914 - - thumb_func_start sub_FD20 -sub_FD20: @ 0x0800FD20 - sub sp, #0x19c - movs r2, #0 - ldr r3, _0800FD48 @ =gMain+0x74 - mov r1, sp -_0800FD28: - adds r0, r2, r3 - ldrb r0, [r0] - strh r0, [r1] - adds r1, #2 - adds r2, #1 - cmp r2, #0xcc - ble _0800FD28 - movs r2, #0 - mov r1, sp -_0800FD3A: - movs r3, #0 - ldrsh r0, [r1, r3] - cmp r0, #4 - beq _0800FD4C - movs r0, #0 - b _0800FD56 - .align 2, 0 -_0800FD48: .4byte gMain+0x74 -_0800FD4C: - adds r1, #2 - adds r2, #1 - cmp r2, #0xc8 - ble _0800FD3A - movs r0, #1 -_0800FD56: - add sp, #0x19c - bx lr - - thumb_func_start sub_FD5C -sub_FD5C: @ 0x0800FD5C - push {r4, r5, r6, r7, lr} - mov r7, r8 - push {r7} - sub sp, #4 - mov r8, r0 - ldr r4, _0800FDC8 @ =0x040000D4 - movs r6, #0xa0 - lsls r6, r6, #0x13 - str r6, [r4] - ldr r2, _0800FDCC @ =gUnknown_0201A920 - str r2, [r4, #4] - ldr r5, _0800FDD0 @ =0x80000200 - str r5, [r4, #8] - ldr r0, [r4, #8] - mov r1, sp - ldr r3, _0800FDD4 @ =0x00007FFF - adds r0, r3, #0 - strh r0, [r1] - str r1, [r4] - ldr r0, _0800FDD8 @ =0xFFFFFC00 - adds r1, r2, r0 - str r1, [r4, #4] - ldr r0, _0800FDDC @ =0x81000200 - str r0, [r4, #8] - ldr r0, [r4, #8] - str r1, [r4] - movs r3, #0x80 - lsls r3, r3, #3 - adds r2, r2, r3 - str r2, [r4, #4] - str r5, [r4, #8] - ldr r0, [r4, #8] - str r2, [r4] - str r6, [r4, #4] - str r5, [r4, #8] - ldr r0, [r4, #8] - bl sub_1050C - movs r7, #0 -_0800FDAA: - mov r0, r8 - cmp r0, #0 - beq _0800FDB4 - bl _call_via_r8 -_0800FDB4: - adds r0, r7, #0 - bl sub_1001C - bl MainLoopIter - cmp r7, #0x1f - bne _0800FDE0 - ldr r0, _0800FDCC @ =gUnknown_0201A920 - b _0800FDE2 - .align 2, 0 -_0800FDC8: .4byte 0x040000D4 -_0800FDCC: .4byte gUnknown_0201A920 -_0800FDD0: .4byte 0x80000200 -_0800FDD4: .4byte 0x00007FFF -_0800FDD8: .4byte 0xFFFFFC00 -_0800FDDC: .4byte 0x81000200 -_0800FDE0: - ldr r0, _0800FE00 @ =gUnknown_0201AD20 -_0800FDE2: - str r0, [r4] - str r6, [r4, #4] - str r5, [r4, #8] - ldr r0, [r4, #8] - adds r0, r7, #1 - lsls r0, r0, #0x10 - lsrs r7, r0, #0x10 - cmp r7, #0x1f - bls _0800FDAA - add sp, #4 - pop {r3} - mov r8, r3 - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_0800FE00: .4byte gUnknown_0201AD20 - - thumb_func_start sub_FE04 -sub_FE04: @ 0x0800FE04 - push {r4, r5, r6, r7, lr} - mov r7, r8 - push {r7} - sub sp, #4 - adds r5, r0, #0 - ldr r1, _0800FE6C @ =0x040000D4 - movs r0, #0xa0 - lsls r0, r0, #0x13 - mov r8, r0 - str r0, [r1] - ldr r3, _0800FE70 @ =gUnknown_0201A520 - str r3, [r1, #4] - ldr r4, _0800FE74 @ =0x80000200 - str r4, [r1, #8] - ldr r0, [r1, #8] - mov r2, sp - ldr r6, _0800FE78 @ =0x00007FFF - adds r0, r6, #0 - strh r0, [r2] - str r2, [r1] - movs r2, #0x80 - lsls r2, r2, #3 - adds r0, r3, r2 - str r0, [r1, #4] - ldr r0, _0800FE7C @ =0x81000200 - str r0, [r1, #8] - ldr r0, [r1, #8] - str r3, [r1] - movs r6, #0x80 - lsls r6, r6, #4 - adds r3, r3, r6 - str r3, [r1, #4] - str r4, [r1, #8] - ldr r0, [r1, #8] - movs r7, #0 - adds r6, r1, #0 -_0800FE4C: - cmp r5, #0 - beq _0800FE54 - bl _call_via_r5 -_0800FE54: - adds r0, r7, #0 - bl sub_1001C - bl MainLoopIter - cmp r7, #0x1f - bne _0800FE84 - ldr r0, _0800FE80 @ =gUnknown_0201A920 - str r0, [r6] - mov r0, r8 - str r0, [r6, #4] - b _0800FE8C - .align 2, 0 -_0800FE6C: .4byte 0x040000D4 -_0800FE70: .4byte gUnknown_0201A520 -_0800FE74: .4byte 0x80000200 -_0800FE78: .4byte 0x00007FFF -_0800FE7C: .4byte 0x81000200 -_0800FE80: .4byte gUnknown_0201A920 -_0800FE84: - ldr r0, _0800FEB4 @ =gUnknown_0201AD20 - str r0, [r6] - mov r2, r8 - str r2, [r6, #4] -_0800FE8C: - str r4, [r6, #8] - ldr r0, [r6, #8] - adds r0, r7, #1 - lsls r0, r0, #0x10 - lsrs r7, r0, #0x10 - cmp r7, #0x1f - bls _0800FE4C - bl sub_10528 - bl MainLoopIter - bl ClearGraphicsMemory - add sp, #4 - pop {r3} - mov r8, r3 - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_0800FEB4: .4byte gUnknown_0201AD20 - - thumb_func_start sub_FEB8 -sub_FEB8: @ 0x0800FEB8 - push {r4, r5, r6, r7, lr} - mov r7, r8 - push {r7} - sub sp, #4 - mov r8, r2 - ldr r4, _0800FF34 @ =0x040000D4 - str r0, [r4] - ldr r2, _0800FF38 @ =gUnknown_0201A920 - str r2, [r4, #4] - ldr r0, _0800FF3C @ =0x80000100 - str r0, [r4, #8] - ldr r3, [r4, #8] - str r1, [r4] - movs r1, #0x80 - lsls r1, r1, #3 - adds r3, r2, r1 - str r3, [r4, #4] - str r0, [r4, #8] - ldr r0, [r4, #8] - mov r1, sp - movs r0, #0 - strh r0, [r1] - str r1, [r4] - ldr r0, _0800FF40 @ =0xFFFFFC00 - adds r2, r2, r0 - str r2, [r4, #4] - ldr r0, _0800FF44 @ =0x81000200 - str r0, [r4, #8] - ldr r0, [r4, #8] - str r2, [r4] - str r3, [r4, #4] - ldr r5, _0800FF48 @ =0x80000200 - str r5, [r4, #8] - ldr r0, [r4, #8] - str r3, [r4] - movs r6, #0xa0 - lsls r6, r6, #0x13 - str r6, [r4, #4] - str r5, [r4, #8] - ldr r0, [r4, #8] - bl sub_1050C - ldr r1, _0800FF4C @ =gMain - movs r0, #0x80 - lsls r0, r0, #0x13 - ldrh r0, [r0] - strh r0, [r1, #0x16] - movs r7, #0 -_0800FF18: - mov r1, r8 - cmp r1, #0 - beq _0800FF22 - bl _call_via_r8 -_0800FF22: - adds r0, r7, #0 - bl sub_1001C - bl MainLoopIter - cmp r7, #0x1f - bne _0800FF50 - ldr r0, _0800FF38 @ =gUnknown_0201A920 - b _0800FF52 - .align 2, 0 -_0800FF34: .4byte 0x040000D4 -_0800FF38: .4byte gUnknown_0201A920 -_0800FF3C: .4byte 0x80000100 -_0800FF40: .4byte 0xFFFFFC00 -_0800FF44: .4byte 0x81000200 -_0800FF48: .4byte 0x80000200 -_0800FF4C: .4byte gMain -_0800FF50: - ldr r0, _0800FF70 @ =gUnknown_0201AD20 -_0800FF52: - str r0, [r4] - str r6, [r4, #4] - str r5, [r4, #8] - ldr r0, [r4, #8] - adds r0, r7, #1 - lsls r0, r0, #0x10 - lsrs r7, r0, #0x10 - cmp r7, #0x1f - bls _0800FF18 - add sp, #4 - pop {r3} - mov r8, r3 - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_0800FF70: .4byte gUnknown_0201AD20 - - thumb_func_start sub_FF74 -sub_FF74: @ 0x0800FF74 - push {r4, r5, r6, r7, lr} - mov r7, r8 - push {r7} - sub sp, #4 - adds r5, r0, #0 - ldr r1, _0800FFDC @ =0x040000D4 - movs r0, #0xa0 - lsls r0, r0, #0x13 - mov r8, r0 - str r0, [r1] - ldr r3, _0800FFE0 @ =gUnknown_0201A520 - str r3, [r1, #4] - ldr r4, _0800FFE4 @ =0x80000200 - str r4, [r1, #8] - ldr r0, [r1, #8] - mov r2, sp - movs r0, #0 - strh r0, [r2] - str r2, [r1] - movs r2, #0x80 - lsls r2, r2, #3 - adds r0, r3, r2 - str r0, [r1, #4] - ldr r0, _0800FFE8 @ =0x81000200 - str r0, [r1, #8] - ldr r0, [r1, #8] - str r3, [r1] - movs r0, #0x80 - lsls r0, r0, #4 - adds r3, r3, r0 - str r3, [r1, #4] - str r4, [r1, #8] - ldr r0, [r1, #8] - movs r7, #0 - adds r6, r1, #0 -_0800FFBA: - cmp r5, #0 - beq _0800FFC2 - bl _call_via_r5 -_0800FFC2: - adds r0, r7, #0 - bl sub_1001C - bl MainLoopIter - cmp r7, #0x1f - bne _0800FFF0 - ldr r0, _0800FFEC @ =gUnknown_0201A920 - str r0, [r6] - mov r2, r8 - str r2, [r6, #4] - b _0800FFF8 - .align 2, 0 -_0800FFDC: .4byte 0x040000D4 -_0800FFE0: .4byte gUnknown_0201A520 -_0800FFE4: .4byte 0x80000200 -_0800FFE8: .4byte 0x81000200 -_0800FFEC: .4byte gUnknown_0201A920 -_0800FFF0: - ldr r0, _08010018 @ =gUnknown_0201AD20 - str r0, [r6] - mov r0, r8 - str r0, [r6, #4] -_0800FFF8: - str r4, [r6, #8] - ldr r0, [r6, #8] - adds r0, r7, #1 - lsls r0, r0, #0x10 - lsrs r7, r0, #0x10 - cmp r7, #0x1f - bls _0800FFBA - bl MainLoopIter - add sp, #4 - pop {r3} - mov r8, r3 - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_08010018: .4byte gUnknown_0201AD20 - - thumb_func_start sub_1001C -sub_1001C: @ 0x0801001C - push {r4, r5, r6, r7, lr} - mov r7, sl - mov r6, sb - mov r5, r8 - push {r5, r6, r7} - sub sp, #0x14 - lsls r0, r0, #0x10 - lsrs r7, r0, #0x10 - add r1, sp, #0xc - movs r0, #0 - strh r0, [r1] - movs r0, #2 - strh r0, [r1, #2] - movs r0, #1 - strh r0, [r1, #4] - movs r2, #3 - strh r2, [r1, #6] - adds r0, r7, #0 - ands r0, r2 - lsls r0, r0, #1 - adds r1, r1, r0 - ldrh r0, [r1] - lsls r0, r0, #0x17 - lsrs r1, r0, #0x10 - mov ip, r1 - movs r1, #0x80 - lsls r1, r1, #0x10 - adds r0, r0, r1 - lsrs r0, r0, #0x10 - mov r8, r0 - ldr r0, _080100D8 @ =0x0000FFFC - ands r7, r0 - adds r0, r7, #4 - lsls r0, r0, #0x10 - lsrs r7, r0, #0x10 - cmp ip, r8 - bhs _08010160 - add r5, sp, #8 - ldr r0, _080100DC @ =gUnknown_0201A520 - mov sb, r0 - add r4, sp, #4 - mov r6, sp - movs r1, #0xf8 - lsls r1, r1, #7 - mov sl, r1 -_08010076: - mov r0, ip - lsls r3, r0, #1 - mov r1, sb - adds r2, r3, r1 - ldrh r1, [r2] - movs r0, #0x1f - ands r0, r1 - strh r0, [r5] - ldrh r1, [r2] - movs r0, #0xf8 - lsls r0, r0, #2 - ands r0, r1 - lsrs r0, r0, #5 - strh r0, [r4] - ldrh r1, [r2] - mov r0, sl - ands r0, r1 - lsrs r0, r0, #0xa - strh r0, [r6] - movs r2, #0x80 - lsls r2, r2, #3 - add r2, sb - adds r2, r3, r2 - ldrh r1, [r2] - movs r0, #0x1f - ands r0, r1 - strh r0, [r5, #2] - ldrh r1, [r2] - movs r0, #0xf8 - lsls r0, r0, #2 - ands r0, r1 - lsrs r0, r0, #5 - strh r0, [r4, #2] - ldrh r1, [r2] - mov r0, sl - ands r0, r1 - lsrs r0, r0, #0xa - strh r0, [r6, #2] - ldrh r1, [r6] - cmp r1, r0 - bhs _080100E0 - ldrh r0, [r6, #2] - subs r0, r0, r1 - muls r0, r7, r0 - asrs r0, r0, #5 - adds r1, r1, r0 - strh r1, [r6] - b _080100EE - .align 2, 0 -_080100D8: .4byte 0x0000FFFC -_080100DC: .4byte gUnknown_0201A520 -_080100E0: - ldrh r0, [r6] - ldrh r1, [r6, #2] - subs r1, r0, r1 - muls r1, r7, r1 - asrs r1, r1, #5 - subs r0, r0, r1 - strh r0, [r6] -_080100EE: - ldrh r1, [r4, #2] - ldrh r0, [r4] - cmp r0, r1 - bhs _08010106 - ldrh r0, [r4, #2] - ldrh r1, [r4] - subs r0, r0, r1 - muls r0, r7, r0 - asrs r0, r0, #5 - adds r1, r1, r0 - strh r1, [r4] - b _08010114 -_08010106: - ldrh r0, [r4] - ldrh r1, [r4, #2] - subs r1, r0, r1 - muls r1, r7, r1 - asrs r1, r1, #5 - subs r0, r0, r1 - strh r0, [r4] -_08010114: - ldrh r1, [r5, #2] - ldrh r0, [r5] - cmp r0, r1 - bhs _0801012C - ldrh r0, [r5, #2] - ldrh r1, [r5] - subs r0, r0, r1 - muls r0, r7, r0 - asrs r0, r0, #5 - adds r1, r1, r0 - strh r1, [r5] - b _0801013A -_0801012C: - ldrh r0, [r5] - ldrh r1, [r5, #2] - subs r1, r0, r1 - muls r1, r7, r1 - asrs r1, r1, #5 - subs r0, r0, r1 - strh r0, [r5] -_0801013A: - movs r2, #0x80 - lsls r2, r2, #4 - add r2, sb - adds r2, r3, r2 - ldrh r1, [r6] - lsls r1, r1, #0xa - ldrh r0, [r4] - lsls r0, r0, #5 - orrs r1, r0 - ldrh r0, [r5] - orrs r1, r0 - strh r1, [r2] - mov r0, ip - adds r0, #1 - lsls r0, r0, #0x10 - lsrs r0, r0, #0x10 - mov ip, r0 - cmp ip, r8 - blo _08010076 -_08010160: - add sp, #0x14 - pop {r3, r4, r5} - mov r8, r3 - mov sb, r4 - mov sl, r5 - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - - thumb_func_start sub_10170 -sub_10170: @ 0x08010170 - push {r4, r5, r6, r7, lr} - mov r7, sl - mov r6, sb - mov r5, r8 - push {r5, r6, r7} - sub sp, #0x14 - str r1, [sp, #0x10] - lsls r2, r2, #0x10 - lsrs r1, r2, #0x10 - mov r8, r1 - lsls r3, r3, #0x10 - lsrs r3, r3, #0x10 - mov ip, r3 - ldr r1, _08010298 @ =0x040000D4 - str r0, [r1] - ldr r4, _0801029C @ =gUnknown_0201A520 - str r4, [r1, #4] - lsrs r2, r2, #0x11 - movs r0, #0x80 - lsls r0, r0, #0x18 - orrs r0, r2 - str r0, [r1, #8] - ldr r0, [r1, #8] - add r3, sp, #0xc - movs r0, #0 - strh r0, [r3] - str r3, [r1] - movs r0, #0x80 - lsls r0, r0, #3 - adds r3, r4, r0 - str r3, [r1, #4] - movs r0, #0x81 - lsls r0, r0, #0x18 - orrs r2, r0 - str r2, [r1, #8] - ldr r0, [r1, #8] - movs r7, #0 - cmp r7, r8 - bhs _08010270 - add r5, sp, #8 - add r4, sp, #4 - movs r1, #0xf8 - lsls r1, r1, #2 - mov sl, r1 - mov r6, sp - movs r0, #0xf8 - lsls r0, r0, #7 - mov sb, r0 -_080101D0: - lsls r3, r7, #1 - ldr r1, _0801029C @ =gUnknown_0201A520 - adds r2, r3, r1 - ldrh r1, [r2] - movs r0, #0x1f - ands r0, r1 - strh r0, [r5] - ldrh r1, [r2] - mov r0, sl - ands r0, r1 - lsrs r0, r0, #5 - strh r0, [r4] - ldrh r1, [r2] - mov r0, sb - ands r0, r1 - lsrs r0, r0, #0xa - strh r0, [r6] - ldr r0, _080102A0 @ =gUnknown_0201A920 - adds r2, r3, r0 - ldrh r1, [r2] - movs r0, #0x1f - ands r0, r1 - strh r0, [r5, #2] - ldrh r1, [r2] - mov r0, sl - ands r0, r1 - lsrs r0, r0, #5 - strh r0, [r4, #2] - ldrh r1, [r2] - mov r0, sb - ands r0, r1 - lsrs r1, r0, #0xa - strh r1, [r6, #2] - ldrh r0, [r6] - cmp r0, r1 - bls _08010222 - adds r1, r0, #0 - mov r0, ip - muls r0, r1, r0 - asrs r0, r0, #5 - subs r1, r1, r0 -_08010222: - strh r1, [r6] - ldrh r1, [r4, #2] - ldrh r0, [r4] - cmp r0, r1 - bls _08010236 - adds r1, r0, #0 - mov r0, ip - muls r0, r1, r0 - asrs r0, r0, #5 - subs r1, r1, r0 -_08010236: - strh r1, [r4] - ldrh r1, [r5, #2] - ldrh r0, [r5] - cmp r0, r1 - bls _0801024A - adds r1, r0, #0 - mov r0, ip - muls r0, r1, r0 - asrs r0, r0, #5 - subs r1, r1, r0 -_0801024A: - strh r1, [r5] - ldr r1, _0801029C @ =gUnknown_0201A520 - movs r0, #0x80 - lsls r0, r0, #4 - adds r2, r1, r0 - adds r2, r3, r2 - ldrh r1, [r6] - lsls r1, r1, #0xa - ldrh r0, [r4] - lsls r0, r0, #5 - orrs r1, r0 - ldrh r0, [r5] - orrs r1, r0 - strh r1, [r2] - adds r0, r7, #1 - lsls r0, r0, #0x10 - lsrs r7, r0, #0x10 - cmp r7, r8 - blo _080101D0 -_08010270: - ldr r2, _08010298 @ =0x040000D4 - ldr r1, _080102A4 @ =gUnknown_0201AD20 - str r1, [r2] - ldr r0, [sp, #0x10] - str r0, [r2, #4] - mov r1, r8 - lsrs r0, r1, #1 - movs r1, #0x80 - lsls r1, r1, #0x18 - orrs r0, r1 - str r0, [r2, #8] - ldr r0, [r2, #8] - add sp, #0x14 - pop {r3, r4, r5} - mov r8, r3 - mov sb, r4 - mov sl, r5 - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_08010298: .4byte 0x040000D4 -_0801029C: .4byte gUnknown_0201A520 -_080102A0: .4byte gUnknown_0201A920 -_080102A4: .4byte gUnknown_0201AD20 - - thumb_func_start sub_102A8 -sub_102A8: @ 0x080102A8 - push {r4, r5, r6, r7, lr} - mov r7, sl - mov r6, sb - mov r5, r8 - push {r5, r6, r7} - sub sp, #0x14 - str r1, [sp, #0x10] - lsls r2, r2, #0x10 - lsrs r1, r2, #0x10 - mov r8, r1 - lsls r3, r3, #0x10 - lsrs r7, r3, #0x10 - ldr r1, _08010368 @ =0x040000D4 - str r0, [r1] - ldr r4, _0801036C @ =gUnknown_0201A520 - str r4, [r1, #4] - lsrs r2, r2, #0x11 - movs r0, #0x80 - lsls r0, r0, #0x18 - orrs r0, r2 - str r0, [r1, #8] - ldr r0, [r1, #8] - add r3, sp, #0xc - ldr r5, _08010370 @ =0x00007FFF - adds r0, r5, #0 - strh r0, [r3] - str r3, [r1] - movs r3, #0x80 - lsls r3, r3, #3 - adds r0, r4, r3 - str r0, [r1, #4] - movs r0, #0x81 - lsls r0, r0, #0x18 - orrs r2, r0 - str r2, [r1, #8] - ldr r0, [r1, #8] - movs r5, #0 - mov ip, r5 - cmp ip, r8 - bhs _080103F4 - add r5, sp, #8 - mov sb, r4 - add r4, sp, #4 - mov r6, sp - movs r0, #0xf8 - lsls r0, r0, #7 - mov sl, r0 -_08010306: - mov r1, ip - lsls r3, r1, #1 - mov r0, sb - adds r2, r3, r0 - ldrh r1, [r2] - movs r0, #0x1f - ands r0, r1 - strh r0, [r5] - ldrh r1, [r2] - movs r0, #0xf8 - lsls r0, r0, #2 - ands r0, r1 - lsrs r0, r0, #5 - strh r0, [r4] - ldrh r1, [r2] - mov r0, sl - ands r0, r1 - lsrs r0, r0, #0xa - strh r0, [r6] - movs r2, #0x80 - lsls r2, r2, #3 - add r2, sb - adds r2, r3, r2 - ldrh r1, [r2] - movs r0, #0x1f - ands r0, r1 - strh r0, [r5, #2] - ldrh r1, [r2] - movs r0, #0xf8 - lsls r0, r0, #2 - ands r0, r1 - lsrs r0, r0, #5 - strh r0, [r4, #2] - ldrh r1, [r2] - mov r0, sl - ands r0, r1 - lsrs r0, r0, #0xa - strh r0, [r6, #2] - ldrh r1, [r6] - cmp r1, r0 - bhs _08010374 - ldrh r0, [r6, #2] - subs r0, r0, r1 - muls r0, r7, r0 - asrs r0, r0, #5 - adds r1, r1, r0 - strh r1, [r6] - b _08010382 - .align 2, 0 -_08010368: .4byte 0x040000D4 -_0801036C: .4byte gUnknown_0201A520 -_08010370: .4byte 0x00007FFF -_08010374: - ldrh r0, [r6] - ldrh r1, [r6, #2] - subs r1, r0, r1 - muls r1, r7, r1 - asrs r1, r1, #5 - subs r0, r0, r1 - strh r0, [r6] -_08010382: - ldrh r1, [r4, #2] - ldrh r0, [r4] - cmp r0, r1 - bhs _0801039A - ldrh r0, [r4, #2] - ldrh r1, [r4] - subs r0, r0, r1 - muls r0, r7, r0 - asrs r0, r0, #5 - adds r1, r1, r0 - strh r1, [r4] - b _080103A8 -_0801039A: - ldrh r0, [r4] - ldrh r1, [r4, #2] - subs r1, r0, r1 - muls r1, r7, r1 - asrs r1, r1, #5 - subs r0, r0, r1 - strh r0, [r4] -_080103A8: - ldrh r1, [r5, #2] - ldrh r0, [r5] - cmp r0, r1 - bhs _080103C0 - ldrh r0, [r5, #2] - ldrh r1, [r5] - subs r0, r0, r1 - muls r0, r7, r0 - asrs r0, r0, #5 - adds r1, r1, r0 - strh r1, [r5] - b _080103CE -_080103C0: - ldrh r0, [r5] - ldrh r1, [r5, #2] - subs r1, r0, r1 - muls r1, r7, r1 - asrs r1, r1, #5 - subs r0, r0, r1 - strh r0, [r5] -_080103CE: - movs r2, #0x80 - lsls r2, r2, #4 - add r2, sb - adds r2, r3, r2 - ldrh r1, [r6] - lsls r1, r1, #0xa - ldrh r0, [r4] - lsls r0, r0, #5 - orrs r1, r0 - ldrh r0, [r5] - orrs r1, r0 - strh r1, [r2] - mov r0, ip - adds r0, #1 - lsls r0, r0, #0x10 - lsrs r0, r0, #0x10 - mov ip, r0 - cmp ip, r8 - blo _08010306 -_080103F4: - ldr r2, _0801041C @ =0x040000D4 - ldr r1, _08010420 @ =gUnknown_0201AD20 - str r1, [r2] - ldr r3, [sp, #0x10] - str r3, [r2, #4] - mov r5, r8 - lsrs r0, r5, #1 - movs r1, #0x80 - lsls r1, r1, #0x18 - orrs r0, r1 - str r0, [r2, #8] - ldr r0, [r2, #8] - add sp, #0x14 - pop {r3, r4, r5} - mov r8, r3 - mov sb, r4 - mov sl, r5 - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_0801041C: .4byte 0x040000D4 -_08010420: .4byte gUnknown_0201AD20 - - thumb_func_start sub_10424 -sub_10424: @ 0x08010424 - push {r4, r5, r6, lr} - ldr r4, _08010470 @ =0x04000054 - movs r3, #0x10 - strh r3, [r4] - ldr r6, _08010474 @ =0x04000050 - movs r2, #0x80 - lsls r2, r2, #0x13 - ldrh r1, [r2] - movs r0, #0xf8 - lsls r0, r0, #5 - ands r0, r1 - lsrs r0, r0, #8 - movs r1, #0xa0 - orrs r0, r1 - strh r0, [r6] - ldrh r1, [r2] - ldr r0, _08010478 @ =0x0000FF7F - ands r0, r1 - strh r0, [r2] - ldr r1, _0801047C @ =gMain - ldrh r0, [r2] - movs r5, #0 - strh r0, [r1, #0x16] - strh r3, [r4] - bl MainLoopIter - movs r0, #8 - strh r0, [r4] - bl MainLoopIter - strh r5, [r4] - bl MainLoopIter - strh r5, [r6] - pop {r4, r5, r6} - pop {r0} - bx r0 - .align 2, 0 -_08010470: .4byte 0x04000054 -_08010474: .4byte 0x04000050 -_08010478: .4byte 0x0000FF7F -_0801047C: .4byte gMain - - thumb_func_start sub_10480 -sub_10480: @ 0x08010480 - push {r4, r5, lr} - sub sp, #4 - ldr r5, _080104F8 @ =0x04000054 - movs r4, #0 - strh r4, [r5] - ldr r2, _080104FC @ =0x04000050 - movs r0, #0x80 - lsls r0, r0, #0x13 - ldrh r1, [r0] - movs r0, #0xf8 - lsls r0, r0, #5 - ands r0, r1 - lsrs r0, r0, #8 - movs r1, #0xa0 - orrs r0, r1 - strh r0, [r2] - strh r4, [r5] - bl MainLoopIter - movs r0, #8 - strh r0, [r5] - bl MainLoopIter - movs r0, #0x10 - strh r0, [r5] - bl MainLoopIter - mov r0, sp - strh r4, [r0] - ldr r1, _08010500 @ =0x040000D4 - str r0, [r1] - movs r0, #0xc0 - lsls r0, r0, #0x13 - str r0, [r1, #4] - ldr r0, _08010504 @ =0x8100C000 - str r0, [r1, #8] - ldr r0, [r1, #8] - ldr r0, _08010508 @ =0x04000010 - strh r4, [r0] - adds r0, #2 - strh r4, [r0] - adds r0, #2 - strh r4, [r0] - adds r0, #2 - strh r4, [r0] - adds r0, #2 - strh r4, [r0] - adds r0, #2 - strh r4, [r0] - adds r0, #2 - strh r4, [r0] - adds r0, #2 - strh r4, [r0] - bl MainLoopIter - add sp, #4 - pop {r4, r5} - pop {r0} - bx r0 - .align 2, 0 -_080104F8: .4byte 0x04000054 -_080104FC: .4byte 0x04000050 -_08010500: .4byte 0x040000D4 -_08010504: .4byte 0x8100C000 -_08010508: .4byte 0x04000010 - - thumb_func_start sub_1050C -sub_1050C: @ 0x0801050C - movs r1, #0x80 - lsls r1, r1, #0x13 - ldrh r2, [r1] - ldr r0, _08010520 @ =0x0000FF7F - ands r0, r2 - strh r0, [r1] - ldr r2, _08010524 @ =gMain - ldrh r0, [r1] - strh r0, [r2, #0x16] - bx lr - .align 2, 0 -_08010520: .4byte 0x0000FF7F -_08010524: .4byte gMain - - thumb_func_start sub_10528 -sub_10528: @ 0x08010528 - ldr r1, _08010540 @ =gMain - ldrh r0, [r1, #0x16] - movs r2, #0x80 - orrs r0, r2 - strh r0, [r1, #0x16] - movs r1, #0x80 - lsls r1, r1, #0x13 - ldrh r0, [r1] - orrs r0, r2 - strh r0, [r1] - bx lr - .align 2, 0 -_08010540: .4byte gMain - - thumb_func_start sub_10544 -sub_10544: @ 0x08010544 - ldr r1, _08010580 @ =0x04000004 - ldrh r2, [r1] - ldr r0, _08010584 @ =0x0000FFF7 - ands r0, r2 - strh r0, [r1] - ldrh r2, [r1] - ldr r0, _08010588 @ =0x0000FFDF - ands r0, r2 - strh r0, [r1] - ldr r1, _0801058C @ =0x04000200 - ldrh r2, [r1] - ldr r0, _08010590 @ =0x00003FFF - ands r0, r2 - strh r0, [r1] - ldrh r2, [r1] - ldr r0, _08010594 @ =0x00003FFE - ands r0, r2 - strh r0, [r1] - ldrh r0, [r1] - adds r1, r0, #0 - cmp r1, #0 - bne _08010574 - ldr r0, _08010598 @ =0x04000208 - strh r1, [r0] -_08010574: - ldr r0, _0801059C @ =0x04000202 - ldrh r1, [r0] - movs r2, #1 - orrs r1, r2 - strh r1, [r0] - bx lr - .align 2, 0 -_08010580: .4byte 0x04000004 -_08010584: .4byte 0x0000FFF7 -_08010588: .4byte 0x0000FFDF -_0801058C: .4byte 0x04000200 -_08010590: .4byte 0x00003FFF -_08010594: .4byte 0x00003FFE -_08010598: .4byte 0x04000208 -_0801059C: .4byte 0x04000202 - - thumb_func_start sub_105A0 -sub_105A0: @ 0x080105A0 - push {r4, r5, r6, r7, lr} - mov r7, sl - mov r6, sb - mov r5, r8 - push {r5, r6, r7} - sub sp, #4 - ldr r4, [sp, #0x24] - mov ip, r4 - ldr r4, [sp, #0x28] - mov sb, r4 - lsls r0, r0, #0x10 - lsrs r0, r0, #0x10 - str r0, [sp] - lsls r1, r1, #0x10 - lsrs r1, r1, #0x10 - mov sl, r1 - movs r1, #0 - cmp r1, sb - bge _08010602 - lsls r0, r3, #5 - adds r0, r0, r2 - mov r8, r0 -_080105CC: - movs r2, #0 - adds r6, r1, #1 - cmp r2, ip - bge _080105FA - ldr r7, _08010614 @ =gUnknown_03005C00 - lsls r0, r1, #5 - mov r1, r8 - adds r5, r1, r0 - ldr r1, [sp] - adds r4, r1, r0 - mov r0, sl - lsls r3, r0, #0xc -_080105E4: - adds r0, r5, r2 - lsls r0, r0, #1 - adds r0, r0, r7 - adds r1, r2, r4 - orrs r1, r3 - strh r1, [r0] - adds r0, r2, #1 - lsls r0, r0, #0x10 - lsrs r2, r0, #0x10 - cmp r2, ip - blt _080105E4 -_080105FA: - lsls r0, r6, #0x10 - lsrs r1, r0, #0x10 - cmp r1, sb - blt _080105CC -_08010602: - add sp, #4 - pop {r3, r4, r5} - mov r8, r3 - mov sb, r4 - mov sl, r5 - pop {r4, r5, r6, r7} - pop {r0} - bx r0 - .align 2, 0 -_08010614: .4byte gUnknown_03005C00 diff --git a/include/functions.h b/include/functions.h index 7dbb2251..3b25fcf8 100644 --- a/include/functions.h +++ b/include/functions.h @@ -159,20 +159,20 @@ extern void sub_F434(u32, u32, u32, int); extern u32 sub_F4FC(u32); extern void sub_F670(u32, u32, s16, u32); extern void SetDefaultHighScores(void); -extern void sub_F8B0(u8, u32, s16); +extern void sub_F8B0(u32, u32, s16); extern void sub_FAE8(u32, u32, s16); extern s8 sub_FD20(void); extern void sub_FD5C(void (*func)(void)); extern void sub_FE04(void (*func)(void)); -//extern ? sub_FEB8(); +extern void sub_FEB8(u8 *, u8 *, void (*func)(void)); extern void sub_FF74(void (*func)(void)); -extern void sub_1001C(int); -//extern ? sub_10170(); -extern void sub_102A8(u8 *, void *, u16, u16); // Very much subject to change +extern void sub_1001C(u16); +extern void sub_10170(u8 *, u8 *, u16, u16); // Very much subject to change +extern void sub_102A8(u8 *, u8 *, u16, u16); extern void sub_10424(void); extern void sub_10480(void); extern void sub_1050C(void); -//extern ? sub_10528(); +extern void sub_10528(void); extern void sub_10544(void); extern void sub_105A0(u16, u16, int, int, int, int); diff --git a/include/variables.h b/include/variables.h index 56cca69d..aeecb60f 100644 --- a/include/variables.h +++ b/include/variables.h @@ -18,10 +18,8 @@ extern u16 gOptionsSEList[]; extern u8 gUnknown_02031AF0[][10]; extern u8 gUnknown_08527ED6[][10]; extern void (*const gOptionsStateFuncs[])(void); -extern u16 gUnknown_0201A520[]; -extern u16 gUnknown_0201AD20[]; extern u32 gUnknown_0201A500[HIGH_SCORE_NAME_LENGTH]; -extern u16 gUnknown_0201A920[]; +extern u16 gUnknown_0201A520[3][0x200]; extern u16 gUnknown_03000000[]; extern u8 gUnknown_03001800[3][0x800]; //extern ? gOamBuffer; @@ -111,6 +109,8 @@ extern const IntrFunc gIntrTableTemplate[14]; //extern ? gUnknown_086A4C2C; extern const int *gUnknown_086A4C44[]; extern const u16 gUnknown_086A4CF8[][3*0x18]; +extern const s8 gUnknown_086A7FA4[]; +extern const s8 gUnknown_086A7FA8[]; extern const s16 gUnknown_086A964C[]; extern const s8 gUnknown_086A9662[]; extern const s8 gUnknown_086A9666[6][2]; diff --git a/ld_script.txt b/ld_script.txt index 0cfea2f2..424c1711 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -45,7 +45,6 @@ SECTIONS src/intro.o(.text); asm/intro.o(.text); src/high_scores.o(.text); - asm/high_scores.o(.text); src/rom_1068C.o(.text); src/titlescreen.o(.text); src/rom_11B9C.o(.text); diff --git a/src/high_scores.c b/src/high_scores.c index b9abfdb1..e453fbca 100644 --- a/src/high_scores.c +++ b/src/high_scores.c @@ -2169,3 +2169,506 @@ void sub_F74C(void) } } } + +void sub_F8B0(u32 arg0, u32 arg1, s16 arg2) +{ + int i; + u32 r3; + if(arg0 == 0) + { + if(arg1 == 0) + { + r3 = (0 * 2 + 2) * 32 + 12; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x90EA && gUnknown_03005C00[r3 + i] != 0x912A) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA4[arg2]; + } + } + r3 = (0 * 2 + 3) * 32 + 12; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x910A && gUnknown_03005C00[r3 + i] != 0x914A) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA4[arg2]; + } + } + } + else + { + r3 = (arg1 * 2 + 3) * 32 + 12; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x916A && gUnknown_03005C00[r3 + i] != 0x91AA) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA4[arg2]; + } + } + r3 = (arg1 * 2 + 4) * 32 + 12; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x918A && gUnknown_03005C00[r3 + i] != 0x91CA) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA4[arg2]; + } + } + } + } + else + { + if(arg1 == 0) + { + r3 = (0 * 2 + 2) * 32 + 32 * 32 + 10; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x90EA && gUnknown_03005C00[r3 + i] != 0x912A) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA4[arg2]; + } + } + r3 = (0 * 2 + 3) * 32 + 32 * 32 + 10; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x910A && gUnknown_03005C00[r3 + i] != 0x914A) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA4[arg2]; + } + } + } + else + { + r3 = (arg1 * 2 + 3) * 32 + 32 * 32 + 10; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x916A && gUnknown_03005C00[r3 + i] != 0x91AA) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA4[arg2]; + } + } + r3 = (arg1 * 2 + 4) * 32 + 32 * 32 + 10; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x918A && gUnknown_03005C00[r3 + i] != 0x91CA) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA4[arg2]; + } + } + } + } +} + +void sub_FAE8(u32 arg0, u32 arg1, s16 arg2) +{ + int i; + u32 r3; + if(arg0 == 0) + { + if(arg1 == 0) + { + r3 = (0 * 2 + 2) * 32 + 12; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x90EA && gUnknown_03005C00[r3 + i] != 0x912A) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA8[arg2]; + } + } + r3 = (0 * 2 + 3) * 32 + 12; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x910A && gUnknown_03005C00[r3 + i] != 0x914A) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA8[arg2]; + } + } + } + else + { + r3 = (arg1 * 2 + 3) * 32 + 12; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x916A && gUnknown_03005C00[r3 + i] != 0x91AA) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA8[arg2]; + } + } + r3 = (arg1 * 2 + 4) * 32 + 12; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x918A && gUnknown_03005C00[r3 + i] != 0x91CA) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA8[arg2]; + } + } + } + } + else + { + if(arg1 == 0) + { + r3 = (0 * 2 + 2) * 32 + 32 * 32 + 10; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x90EA && gUnknown_03005C00[r3 + i] != 0x912A) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA8[arg2]; + } + } + r3 = (0 * 2 + 3) * 32 + 32 * 32 + 10; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x910A && gUnknown_03005C00[r3 + i] != 0x914A) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA8[arg2]; + } + } + } + else + { + r3 = (arg1 * 2 + 3) * 32 + 32 * 32 + 10; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x916A && gUnknown_03005C00[r3 + i] != 0x91AA) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA8[arg2]; + } + } + r3 = (arg1 * 2 + 4) * 32 + 32 * 32 + 10; + for(i = 0; i < 15; i++) + { + if(gUnknown_03005C00[r3 + i] != 0x918A && gUnknown_03005C00[r3 + i] != 0x91CA) + { + gUnknown_03005C00[r3 + i] += gUnknown_086A7FA8[arg2]; + } + } + } + } +} + +s8 sub_FD20(void) +{ + int i; + s16 sp0[NUM_SPECIES]; + + for(i = 0; i < NUM_SPECIES; i++) + sp0[i] = gMain_saveData.pokedexFlags[i]; + + for(i = 0; i < BONUS_SPECIES_START; i++) // TODO: add a proper count for non bonus + { + if(sp0[i] != 4) + return 0; + } + return 1; +} + +void sub_FD5C(void (*func)(void)) +{ + u16 i; + + DmaCopy16(3, (void*)PLTT, gUnknown_0201A520[1], PLTT_SIZE); + DmaFill16(3, 0x7FFF, gUnknown_0201A520[0], PLTT_SIZE); + DmaCopy16(3, gUnknown_0201A520[0], gUnknown_0201A520[2], PLTT_SIZE); + DmaCopy16(3, gUnknown_0201A520[2], (void*)PLTT, PLTT_SIZE); + + sub_1050C(); + + for (i = 0; i < 32; i++) + { + if (func != NULL) + func(); + sub_1001C(i); + MainLoopIter(); + if (i == 31) + { + DmaCopy16(3, gUnknown_0201A520[1], (void *)PLTT, 0x400); + } + else + { + DmaCopy16(3, gUnknown_0201A520[2], (void *)PLTT, 0x400); + } + } +} + +void sub_FE04(void (*func)(void)) +{ + u16 i; + + DmaCopy16(3, (void*)PLTT, gUnknown_0201A520[0], PLTT_SIZE); + DmaFill16(3, 0x7FFF, gUnknown_0201A520[1], PLTT_SIZE); + DmaCopy16(3, gUnknown_0201A520[0], gUnknown_0201A520[2], PLTT_SIZE); + + for (i = 0; i < 32; i++) + { + if (func != NULL) + func(); + sub_1001C(i); + MainLoopIter(); + if (i == 31) + { + DmaCopy16(3, gUnknown_0201A520[1], (void *)PLTT, 0x400); + } + else + { + DmaCopy16(3, gUnknown_0201A520[2], (void *)PLTT, 0x400); + } + } + sub_10528(); + MainLoopIter(); + ClearGraphicsMemory(); +} + +void sub_FEB8(u8 * arg0, u8 * arg1, void (*func)(void)) +{ + u16 i; + + DmaCopy16(3, arg0, gUnknown_0201A520[1], 0x200); + DmaCopy16(3, arg1, gUnknown_0201A520[2], 0x200); + DmaFill16(3, 0, gUnknown_0201A520[0], PLTT_SIZE); + DmaCopy16(3, gUnknown_0201A520[0], gUnknown_0201A520[2], PLTT_SIZE); + DmaCopy16(3, gUnknown_0201A520[2], (void*)PLTT, PLTT_SIZE); + + sub_1050C(); + gMain.unk16 = REG_DISPCNT; + + for (i = 0; i < 32; i++) + { + if (func != NULL) + func(); + sub_1001C(i); + MainLoopIter(); + if (i == 31) + { + DmaCopy16(3, gUnknown_0201A520[1], (void *)PLTT, 0x400); + } + else + { + DmaCopy16(3, gUnknown_0201A520[2], (void *)PLTT, 0x400); + } + } +} + +void sub_FF74(void (*func)(void)) +{ + u16 i; + + DmaCopy16(3, (void*)PLTT, gUnknown_0201A520[0], PLTT_SIZE); + DmaFill16(3, 0, gUnknown_0201A520[1], PLTT_SIZE); + DmaCopy16(3, gUnknown_0201A520[0], gUnknown_0201A520[2], PLTT_SIZE); + + for (i = 0; i < 32; i++) + { + if (func != NULL) + func(); + sub_1001C(i); + MainLoopIter(); + if (i == 31) + { + DmaCopy16(3, gUnknown_0201A520[1], (void *)PLTT, 0x400); + } + else + { + DmaCopy16(3, gUnknown_0201A520[2], (void *)PLTT, 0x400); + } + } + MainLoopIter(); +} + +void sub_1001C(u16 arg0) +{ + u16 var0; + u16 var1; + u16 b[2]; + u16 g[2]; + u16 r[2]; + u16 spC[4]; + + spC[0] = 0; + spC[1] = 2; + spC[2] = 1; + spC[3] = 3; + var0 = spC[arg0 & 3] * 128; + var1 = var0 + 128; + + arg0 &= ~3; + arg0 += 4; + + while(var0 < var1) + { + r[0] = gUnknown_0201A520[0][var0] & 0x1F; + g[0] = (gUnknown_0201A520[0][var0] & 0x3E0) >> 5; + b[0] = (gUnknown_0201A520[0][var0] & 0x7C00) >> 10; + + r[1] = gUnknown_0201A520[1][var0] & 0x1F; + g[1] = (gUnknown_0201A520[1][var0] & 0x3E0) >> 5; + b[1] = (gUnknown_0201A520[1][var0] & 0x7C00) >> 10; + + if(b[0] < b[1]) + b[0] += ((b[1] - b[0]) * arg0) >> 5; + else + b[0] -= ((b[0] - b[1]) * arg0) >> 5; + + if(g[0] < g[1]) + g[0] += ((g[1] - g[0]) * arg0) >> 5; + else + g[0] -= ((g[0] - g[1]) * arg0) >> 5; + + if(r[0] < r[1]) + r[0] += ((r[1] - r[0]) * arg0) >> 5; + else + r[0] -= ((r[0] - r[1]) * arg0) >> 5; + + gUnknown_0201A520[2][var0] = (b[0] << 10) | (g[0] << 5) | r[0]; + var0++; + } +} + +void sub_10170(u8 * pal, u8 * dest, u16 arg2, u16 arg3) +{ + u16 i; + u16 b[2]; + u16 g[2]; + u16 r[2]; + DmaCopy16(3, pal, gUnknown_0201A520[0], arg2); + DmaFill16(3, 0, gUnknown_0201A520[1], arg2); + + for(i = 0; i < arg2; i++) + { + r[0] = gUnknown_0201A520[0][i] & 0x1F; + g[0] = (gUnknown_0201A520[0][i] & 0x3E0) >> 5; + b[0] = (gUnknown_0201A520[0][i] & 0x7C00) >> 10; + + r[1] = gUnknown_0201A520[1][i] & 0x1F; + g[1] = (gUnknown_0201A520[1][i] & 0x3E0) >> 5; + b[1] = (gUnknown_0201A520[1][i] & 0x7C00) >> 10; + + if(b[0] > b[1]) + b[0] -= (b[0] * arg3) >> 5; + else + b[0] = b[1]; + + if(g[0] > g[1]) + g[0] -= (g[0] * arg3) >> 5; + else + g[0] = g[1]; + + if(r[0] > r[1]) + r[0] -= (r[0] * arg3) >> 5; + else + r[0] = r[1]; + + gUnknown_0201A520[2][i] = (b[0] << 10) | (g[0] << 5) | r[0]; + } + DmaCopy16(3, gUnknown_0201A520[2], dest, arg2); +} + +void sub_102A8(u8 * pal, u8 * dest, u16 arg2, u16 arg3) +{ + u16 i; + u16 b[2]; + u16 g[2]; + u16 r[2]; + DmaCopy16(3, pal, gUnknown_0201A520[0], arg2); + DmaFill16(3, 0x7FFF, gUnknown_0201A520[1], arg2); + + for(i = 0; i < arg2; i++) + { + r[0] = gUnknown_0201A520[0][i] & 0x1F; + g[0] = (gUnknown_0201A520[0][i] & 0x3E0) >> 5; + b[0] = (gUnknown_0201A520[0][i] & 0x7C00) >> 10; + + r[1] = gUnknown_0201A520[1][i] & 0x1F; + g[1] = (gUnknown_0201A520[1][i] & 0x3E0) >> 5; + b[1] = (gUnknown_0201A520[1][i] & 0x7C00) >> 10; + + if(b[0] < b[1]) + b[0] += ((b[1] - b[0]) * arg3) >> 5; + else + b[0] -= ((b[0] - b[1]) * arg3) >> 5; + + if(g[0] < g[1]) + g[0] += ((g[1] - g[0]) * arg3) >> 5; + else + g[0] -= ((g[0] - g[1]) * arg3) >> 5; + + if(r[0] < r[1]) + r[0] += ((r[1] - r[0]) * arg3) >> 5; + else + r[0] -= ((r[0] - r[1]) * arg3) >> 5; + + gUnknown_0201A520[2][i] = (b[0] << 10) | (g[0] << 5) | r[0]; + } + DmaCopy16(3, gUnknown_0201A520[2], dest, arg2); +} + +void sub_10424(void) +{ + REG_BLDY = 0x10; + REG_BLDCNT = ((REG_DISPCNT & (DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON)) >> 8) | BLDCNT_EFFECT_LIGHTEN | BLDCNT_TGT1_BD; + REG_DISPCNT &= ~DISPCNT_FORCED_BLANK; + gMain.unk16 = REG_DISPCNT; + REG_BLDY = 0x10; + MainLoopIter(); + REG_BLDY = 0x8; + MainLoopIter(); + REG_BLDY = 0; + MainLoopIter(); + REG_BLDCNT = 0; +} + +void sub_10480(void) +{ + REG_BLDY = 0; + REG_BLDCNT = ((REG_DISPCNT & (DISPCNT_BG_ALL_ON | DISPCNT_OBJ_ON)) >> 8) | BLDCNT_EFFECT_LIGHTEN | BLDCNT_TGT1_BD; + REG_BLDY = 0; + MainLoopIter(); + REG_BLDY = 0x8; + MainLoopIter(); + REG_BLDY = 0x10; + MainLoopIter(); + DmaFill16(3, 0, (void*)VRAM, VRAM_SIZE); + REG_BG0HOFS = 0; + REG_BG0VOFS = 0; + REG_BG1HOFS = 0; + REG_BG1VOFS = 0; + REG_BG2HOFS = 0; + REG_BG2VOFS = 0; + REG_BG3HOFS = 0; + REG_BG3VOFS = 0; + MainLoopIter(); +} + +void sub_1050C(void) +{ + REG_DISPCNT &= ~DISPCNT_FORCED_BLANK; + gMain.unk16 = REG_DISPCNT; +} + +void sub_10528(void) +{ + gMain.unk16 |= DISPCNT_FORCED_BLANK; + REG_DISPCNT |= DISPCNT_FORCED_BLANK; +} + +void sub_10544(void) +{ + REG_DISPSTAT &= ~DISPSTAT_VBLANK_INTR; + REG_DISPSTAT &= ~DISPSTAT_VCOUNT_INTR; + REG_IE &= 0x3FFF; + REG_IE &= 0x3FFE; + if(REG_IE == 0) + REG_IME = 0; + REG_IF |= 1; +} + +void sub_105A0(u16 arg0, u16 arg1, int arg2, int arg3, int arg4, int arg5) +{ + u16 i, j; + for(i = 0; i < arg5; i++) + { + for(j = 0; j < arg4; j++) + { + gUnknown_03005C00[arg3 * 32 + arg2 + i * 32 + j] = (arg0 + i * 32 + j) | (arg1 << 12); + } + } +} \ No newline at end of file diff --git a/src/intro.c b/src/intro.c index 2fbd3130..872799cb 100644 --- a/src/intro.c +++ b/src/intro.c @@ -6,8 +6,6 @@ #include "titlescreen.h" #include "constants/bg_music.h" -extern void sub_10170(u8 *, u32, u32, u32); -void sub_FEB8(u32, u8 *, u32); void sub_A628(void); void sub_A87C(void); void sub_AAA8(void); @@ -200,7 +198,7 @@ void sub_9498(void) { DmaCopy16(3, gUnknown_080B3CA0, 0x0600f800 , BG_SCREEN_SIZE); DmaCopy16(3, gUnknown_080B44A0, BG_CHAR_ADDR(0), 0x5800); DmaCopy16(3, gUnknown_080BD4C0, gUnknown_0201C1C0, 0x6800); - sub_10170(gIntroScene1Sprites_Pals, BG_PLTT, BG_PLTT_SIZE, 0x20); + sub_10170(gIntroScene1Sprites_Pals, (void*)BG_PLTT, BG_PLTT_SIZE, 0x20); DmaCopy16(3, gIntroScene1Sprites_Gfx, BG_CHAR_ADDR(4), 0x8000); DmaCopy16(3, gIntroScene1Sprites_Pals, 0x05000200, BG_PLTT_SIZE); sub_96A8(); @@ -213,7 +211,7 @@ void sub_9498(void) { gMain.unk2E8[3].unk0 = gUnknown_0202ADA0[12]; gMain.unk2E8[3].unk2 = gUnknown_0202ADA0[13]; sub_0CBC(); - sub_FEB8(BG_PLTT, gIntroScene1Sprites_Pals, 0); + sub_FEB8((void*)BG_PLTT, gIntroScene1Sprites_Pals, NULL); DmaCopy16(3, gIntroScene1Sprites_Pals, 0x05000200, BG_PLTT_SIZE); DmaCopy16(3, 0, 0x05000200, 0x20); gUnknown_0202C790++; @@ -330,7 +328,7 @@ void sub_98B4(void) if (gUnknown_0201A450[0].unkA > 1) { gUnknown_0201A450[0].unkC = 0; - sub_10170(&gIntroScene1Sprites_Pals[0x1C0], BG_PLTT + 0xE0, 0x20, 0); + sub_10170(&gIntroScene1Sprites_Pals[0x1C0], (void*)BG_PLTT + 0xE0, 0x20, 0); m4aSongNumStart(MUS_OPENING); gUnknown_0202C790++; } @@ -382,8 +380,8 @@ void sub_999C(void) { gUnknown_0202BEF0 = 0; } - sub_10170(gIntroScene1Sprites_Pals, BG_PLTT, 0x200, (u16) gUnknown_0202BEF0); - sub_10170(gIntroScene1Sprites_Pals, OBJ_PLTT, 0x20, (u16) gUnknown_0202BEF0); + sub_10170(gIntroScene1Sprites_Pals, (void*)BG_PLTT, 0x200, gUnknown_0202BEF0); + sub_10170(gIntroScene1Sprites_Pals, (void*)OBJ_PLTT, 0x20, gUnknown_0202BEF0); } if (gUnknown_0202BF10 % 3 == 0) diff --git a/src/rom_1068C.c b/src/rom_1068C.c index b17f5e9c..1802f02c 100644 --- a/src/rom_1068C.c +++ b/src/rom_1068C.c @@ -56,11 +56,11 @@ void sub_10798(void *a, void *b, void (*func)(void)) { u16 i; - DmaCopy16(3, a, gUnknown_0201A920, 0x200); - DmaCopy16(3, b, gUnknown_0201A920 + 0x200, 0x200); - DmaFill16(3, 0x7FFF, gUnknown_0201A920 - 0x200, 0x400); - DmaCopy16(3, gUnknown_0201A920 - 0x200, gUnknown_0201A920 + 0x200, 0x400); - DmaCopy16(3, gUnknown_0201A920 + 0x200, (void *)PLTT, 0x400); + DmaCopy16(3, a, gUnknown_0201A520[1], 0x200); + DmaCopy16(3, b, gUnknown_0201A520[2], 0x200); + DmaFill16(3, 0x7FFF, gUnknown_0201A520[0], 0x400); + DmaCopy16(3, gUnknown_0201A520[0], gUnknown_0201A520[2], 0x400); + DmaCopy16(3, gUnknown_0201A520[2], (void *)PLTT, 0x400); sub_1050C(); gMain.unk16 = REG_DISPCNT; @@ -73,11 +73,11 @@ void sub_10798(void *a, void *b, void (*func)(void)) MainLoopIter(); if (i == 32) { - DmaCopy16(3, gUnknown_0201A920, (void *)PLTT, 0x400); + DmaCopy16(3, gUnknown_0201A520[1], (void *)PLTT, 0x400); } else { - DmaCopy16(3, gUnknown_0201AD20, (void *)PLTT, 0x400); + DmaCopy16(3, gUnknown_0201A520[2], (void *)PLTT, 0x400); } } } @@ -86,9 +86,9 @@ void sub_10860(void (*func)(void)) { u16 i; - DmaCopy16(3, (void *)PLTT, gUnknown_0201A520, 0x400); - DmaFill16(3, 0x7FFF, gUnknown_0201A520 + 0x200, 0x400); - DmaCopy16(3, gUnknown_0201A520, gUnknown_0201A520 + 0x400, 0x400); + DmaCopy16(3, (void *)PLTT, gUnknown_0201A520[0], 0x400); + DmaFill16(3, 0x7FFF, gUnknown_0201A520[1], 0x400); + DmaCopy16(3, gUnknown_0201A520[0], gUnknown_0201A520[2], 0x400); for (i = 0; i <= 32; i += 16) { @@ -98,11 +98,11 @@ void sub_10860(void (*func)(void)) MainLoopIter(); if (i == 32) { - DmaCopy16(3, gUnknown_0201A920, (void *)PLTT, 0x400); + DmaCopy16(3, gUnknown_0201A520[1], (void *)PLTT, 0x400); } else { - DmaCopy16(3, gUnknown_0201AD20, (void *)PLTT, 0x400); + DmaCopy16(3, gUnknown_0201A520[2], (void *)PLTT, 0x400); } } MainLoopIter(); diff --git a/sym_ewram.txt b/sym_ewram.txt index 2bcbb0be..86d436ed 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -315,11 +315,7 @@ gUnknown_0201A510: @ 0x0201A510 gUnknown_0201A514: @ 0x0201A514 .space 0xC gUnknown_0201A520: @ 0x0201A520 - .space 0x400 -gUnknown_0201A920: @ 0x0201A920 - .space 0x400 -gUnknown_0201AD20: @ 0x0201AD20 - .space 0x400 + .space 0xC00 gUnknown_0201B120: @ 0x0201B120 .space 0x4 gUnknown_0201B124: @ 0x0201B124