From 460a3f926842ebedb5c5c23a963e52ec347104cb Mon Sep 17 00:00:00 2001 From: AnonymousRandomPerson Date: Mon, 7 Aug 2023 23:46:33 -0400 Subject: [PATCH] Matched arm7 --- sub/arm7.lsf | 3 +-- sub/asm/main.s | 46 +++++++++++++++++++++++++--------------------- sub/asm/wram.s | 15 ++++++++++----- 3 files changed, 36 insertions(+), 28 deletions(-) diff --git a/sub/arm7.lsf b/sub/arm7.lsf index 44ee1fbb..e09ca9f0 100644 --- a/sub/arm7.lsf +++ b/sub/arm7.lsf @@ -15,10 +15,9 @@ Autoload MAIN { Address 0x027E0000 Object asm/main.o - Object asm/main.o (.wram) } -Autoload EXT_WRAM +Overlay EXT_WRAM { Address 0x06000000 } diff --git a/sub/asm/main.s b/sub/asm/main.s index b6424e6c..8ed448d5 100644 --- a/sub/asm/main.s +++ b/sub/asm/main.s @@ -40,7 +40,7 @@ sub_027E0000: ; 0x027E0000 sub_027E01CC: ; 0x027E01CC stmdb sp!, {r3, lr} mov r1, r0 - ldr r0, _027E023C ; =0x027F7878 + ldr r0, _027E023C ; =mainBssFiller mov r2, #1 bl sub_037FC6D4 ldr r0, _027E0240 ; =0x027F78D0 @@ -68,7 +68,7 @@ _027E0230: ldmia sp!, {r3, lr} bx lr .align 2, 0 -_027E023C: .word 0x027F7878 +_027E023C: .word mainBssFiller _027E0240: .word 0x027F78D0 arm_func_end sub_027E01CC @@ -307,7 +307,7 @@ _027E0560: .word 0x027FFF98 arm_func_start sub_027E0564 sub_027E0564: ; 0x027E0564 - ldr r2, _027E0594 ; =0x027F7878 + ldr r2, _027E0594 ; =mainBssFiller mov r3, #0 _027E056C: add r1, r2, r3 @@ -321,13 +321,13 @@ _027E056C: str r1, [r0, #0x574] bx lr .align 2, 0 -_027E0594: .word 0x027F7878 +_027E0594: .word mainBssFiller _027E0598: .word 0x027F8878 arm_func_end sub_027E0564 arm_func_start sub_027E059C sub_027E059C: ; 0x027E059C - ldr r1, _027E05D0 ; =0x027F7878 + ldr r1, _027E05D0 ; =mainBssFiller mov r3, #0 mov r2, r3 _027E05A8: @@ -342,7 +342,7 @@ _027E05A8: mov r0, r3, lsr #5 bx ip .align 2, 0 -_027E05D0: .word 0x027F7878 +_027E05D0: .word mainBssFiller _027E05D4: .word sub_027E05D8 arm_func_end sub_027E059C @@ -577,7 +577,7 @@ sub_027E0898: ; 0x027E0898 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x20 _027E08A0: - ldr r0, _027E16F0 ; =0x027F7878 + ldr r0, _027E16F0 ; =mainBssFiller add r1, sp, #0x1c add r0, r0, #0x28 mov r2, #1 @@ -1543,7 +1543,7 @@ _027E16D4: bl sub_037FDD14 b _027E19CC .align 2, 0 -_027E16F0: .word 0x027F7878 +_027E16F0: .word mainBssFiller _027E16F4: .word 0x027F8878 _027E16F8: .word 0x00000182 _027E16FC: .word 0x027F7900 @@ -1743,7 +1743,7 @@ _027E19CC: bl sub_027E1A08 b _027E08A0 _027E19D8: - ldr r0, _027E16F0 ; =0x027F7878 + ldr r0, _027E16F0 ; =mainBssFiller mov r1, sb add r0, r0, #0x58 mov r2, #1 @@ -1842,7 +1842,7 @@ sub_027E1AE8: ; 0x027E1AE8 mov r5, r0 bl sub_027E0700 movs r1, r0 - ldr r4, _027E1B64 ; =0x027F7878 + ldr r4, _027E1B64 ; =mainBssFiller moveq r0, #0 beq _027E1B1C mov r0, #0x2b @@ -1872,7 +1872,7 @@ _027E1B5C: ldmia sp!, {r3, r4, r5, lr} bx lr .align 2, 0 -_027E1B64: .word 0x027F7878 +_027E1B64: .word mainBssFiller arm_func_end sub_027E1AE8 arm_func_start sub_027E1B68 @@ -1882,7 +1882,7 @@ sub_027E1B68: ; 0x027E1B68 mov r2, #0x40 ldr r0, [r1, #0x544] ldr r1, [r1, #0x548] - ldr r5, _027E1BF4 ; =0x027F7878 + ldr r5, _027E1BF4 ; =mainBssFiller bl sub_037FCC74 mov r4, r0 ldr r1, _027E1BF8 ; =0x00000185 @@ -1914,7 +1914,7 @@ _027E1BE8: bx lr .align 2, 0 _027E1BF0: .word 0x027F8878 -_027E1BF4: .word 0x027F7878 +_027E1BF4: .word mainBssFiller _027E1BF8: .word 0x00000185 _027E1BFC: .word 0x027F78A0 arm_func_end sub_027E1B68 @@ -1937,7 +1937,7 @@ sub_027E1C0C: ; 0x027E1C0C mov r2, #0 strh r2, [r0, #0x5e] strh r2, [r0, #0x60] - ldr r4, _027E1C98 ; =0x027F7878 + ldr r4, _027E1C98 ; =mainBssFiller strh r2, [r0, #0x88] beq _027E1C4C mov r3, #0x2c @@ -1967,7 +1967,7 @@ _027E1C8C: bx lr .align 2, 0 _027E1C94: .word 0x027F8878 -_027E1C98: .word 0x027F7878 +_027E1C98: .word mainBssFiller arm_func_end sub_027E1C0C arm_func_start sub_027E1C9C @@ -1989,7 +1989,7 @@ sub_027E1CC0: ; 0x027E1CC0 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} ldr r0, _027E1D58 ; =0x027F8878 mov r6, #1 - ldr r8, _027E1D5C ; =0x027F7878 + ldr r8, _027E1D5C ; =mainBssFiller ldr sb, [r0, #0x550] ldr r5, _027E1D60 ; =0x027F7184 add r7, sp, #0 @@ -2031,7 +2031,7 @@ _027E1D50: bx lr .align 2, 0 _027E1D58: .word 0x027F8878 -_027E1D5C: .word 0x027F7878 +_027E1D5C: .word mainBssFiller _027E1D60: .word 0x027F7184 arm_func_end sub_027E1CC0 @@ -5466,7 +5466,7 @@ sub_027E4BD4: ; 0x027E4BD4 ldr r4, [sl, #8] ldr r5, [sl, #0xc] ldr r6, [sl, #0x10] - ldr r0, _027E4F60 ; =0x027F7878 + ldr r0, _027E4F60 ; =mainBssFiller cmp r1, #0 mov r7, #0 bne _027E4C58 @@ -5694,7 +5694,7 @@ _027E4F50: bx lr .align 2, 0 _027E4F5C: .word 0x027F8878 -_027E4F60: .word 0x027F7878 +_027E4F60: .word mainBssFiller _027E4F64: .word 0x0000FFFF arm_func_end sub_027E4BD4 @@ -6984,7 +6984,7 @@ _027E608C: .word 0x027E5F8C sub_027E6090: ; 0x027E6090 stmdb sp!, {r3, r4, r5, lr} ldr r0, _027E6138 ; =0x027F8878 - ldr r4, _027E613C ; =0x027F7878 + ldr r4, _027E613C ; =mainBssFiller ldr r5, [r0, #0x550] bl sub_037FDD00 ldrh r1, [r5, #0xce] @@ -7029,7 +7029,7 @@ _027E6130: bx lr .align 2, 0 _027E6138: .word 0x027F8878 -_027E613C: .word 0x027F7878 +_027E613C: .word mainBssFiller arm_func_end sub_027E6090 arm_func_start sub_027E6140 @@ -27591,3 +27591,7 @@ _027F7174: .byte 0xCC, 0xE5, 0x7E, 0x02, 0x01, 0x00, 0x01, 0x00, 0x0C, 0xE6, 0x7E, 0x02, 0x01, 0x00, 0x01, 0x00 .byte 0x4C, 0xE6, 0x7E, 0x02, 0x32, 0x2E, 0x38, 0x33, 0x2E, 0x30, 0x30, 0x00, 0x01, 0x00, 0x04, 0x00 .byte 0x08, 0x00, 0x00, 0x00 + + .bss +mainBssFiller: + .space 0x1968 diff --git a/sub/asm/wram.s b/sub/asm/wram.s index 0a5b4b44..06a8087e 100644 --- a/sub/asm/wram.s +++ b/sub/asm/wram.s @@ -3888,7 +3888,7 @@ _037FB4F0: .word 0x037FB4F4 arm_func_start sub_037FB4F4 sub_037FB4F4: ; 0x037FB4F4 - ldr ip, _037FB630 ; =0x03807608 + ldr ip, _037FB630 ; =wramBssFiller mov r3, #0 ldr ip, [ip] mov r2, #1 @@ -3903,7 +3903,7 @@ _037FB50C: mov ip, r0 cmp ip, #0 bne _037FB50C - ldr ip, _037FB630 ; =0x03807608 + ldr ip, _037FB630 ; =wramBssFiller str r3, [ip] str r3, [ip, #4] ldr ip, _037FB634 ; =0x038076A4 @@ -3983,7 +3983,7 @@ _037FB5DC: stmda sp!, {r0, r1, r2, r3, ip, lr} ldmia sp!, {pc} .align 2, 0 -_037FB630: .word 0x03807608 +_037FB630: .word wramBssFiller _037FB634: .word 0x038076A4 arm_func_end sub_037FB4F4 @@ -4134,7 +4134,7 @@ _037FB794: .word 0x0380FFF8 arm_func_start sub_037FB798 sub_037FB798: ; 0x037FB798 - ldr r0, _037FB7B4 ; =0x03807608 + ldr r0, _037FB7B4 ; =wramBssFiller mov r2, #0 str r2, [r0, #4] ldr r1, _037FB7B8 ; =0x027FFC3C @@ -4142,7 +4142,7 @@ sub_037FB798: ; 0x037FB798 str r2, [r1] bx lr .align 2, 0 -_037FB7B4: .word 0x03807608 +_037FB7B4: .word wramBssFiller _037FB7B8: .word 0x027FFC3C arm_func_end sub_037FB798 @@ -18809,6 +18809,7 @@ sub_03806DDC: ; 0x03806DDC mov r1, r3 bx lr arm_func_end sub_03806DDC + _03806FB8: .byte 0x00, 0x06, 0x0C, 0x13, 0x19, 0x1F, 0x25, 0x2B, 0x31, 0x36, 0x3C, 0x41, 0x47, 0x4C, 0x51, 0x55 .byte 0x5A, 0x5E, 0x62, 0x66, 0x6A, 0x6D, 0x70, 0x73, 0x75, 0x78, 0x7A, 0x7B, 0x7D, 0x7E, 0x7E, 0x7F @@ -19052,3 +19053,7 @@ _038074E0: .byte 0x20, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x20, 0x00, 0x01, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x20, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0xC3, 0x28, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF + + .bss +wramBssFiller: + .space 0x3E80