split assemblies

This commit is contained in:
theo 2020-05-18 16:20:01 -07:00
parent 369dedd8f8
commit 1e34d9fcc6
8 changed files with 167 additions and 310618 deletions

View File

@ -38,7 +38,8 @@ MID_BUILDDIR = $(OBJ_DIR)/$(MID_SUBDIR)
ASFLAGS := -mcpu=arm7tdmi --defsym $(GAME_VERSION)=1 --defsym REVISION=$(REVISION) --defsym $(GAME_LANGUAGE)=1
CC1 := tools/agbcc/bin/agbcc
override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm
override CFLAGS += -Wimplicit -Wparentheses -Werror -O2
# -fhex-asm
ifeq ($(DINFO),1)
override CFLAGS += -g
@ -48,7 +49,7 @@ CPPFLAGS := -I tools/agbcc -I tools/agbcc/include -iquote include -nostdinc -und
LDFLAGS = -Map ../../$(MAP)
LIB := -L ../../tools/agbcc/lib -lc
LIB := -L ../../tools/agbcc/lib -lc
SHA1 := $(shell { command -v sha1sum || command -v shasum; } 2>/dev/null) -c
GFX := tools/gbagfx/gbagfx
@ -80,6 +81,8 @@ else
NODEP := 1
endif
#$(C_BUILDDIR)/need_interworking_file_name.o: CFLAGS += -mthumb-interwork
C_SRCS := $(wildcard $(C_SUBDIR)/*.c)
C_OBJS := $(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(C_SRCS))
@ -117,8 +120,6 @@ endif
tools: $(TOOLDIRS)
$(TOOLDIRS):
@$(MAKE) -C $@
# For contributors to make sure a change didn't affect the contents of the ROM.
compare:

310648
asm/code.s

File diff suppressed because it is too large Load Diff

View File

@ -1404,7 +1404,7 @@ _0800293A:
sub_0800293E: @ 0x0800293E
push {r4, r5, r6, r7, lr}
ldr r4, _080029AC @ =gUnk_03000BF0
ldr r7, _080029B0 @ =gUnk_03001160
ldr r7, _080029B0 @ =gLinkEntity
ldrh r6, [r4, #6]
ldrh r5, [r7, #0x2e]
subs r5, r5, r6
@ -1444,4 +1444,4 @@ _080029A0: .4byte 0x0000E040
_080029A4: .4byte 0x00000E20
_080029A8: .4byte gUnk_03000BF0
_080029AC: .4byte gUnk_03000BF0
_080029B0: .4byte gUnk_03001160
_080029B0: .4byte gLinkEntity

View File

@ -687,7 +687,7 @@ sub_0800445C: @ 0x0800445C
bl sub_08079F8C
cmp r0, #0
beq _08004482
ldr r5, _080044D8 @ =gUnk_03001160
ldr r5, _080044D8 @ =gLinkEntity
adds r0, r4, #0
adds r1, r5, #0
bl sub_08004484
@ -736,7 +736,7 @@ _080044AC:
non_word_aligned_thumb_func_start sub_080044AE
sub_080044AE: @ 0x080044AE
push {lr}
ldr r3, _080044E8 @ =gUnk_03001160
ldr r3, _080044E8 @ =gLinkEntity
cmp r0, r3
beq _080044CC
push {r0, r1, r2}
@ -755,11 +755,11 @@ _080044CC:
bl sub_08079E58
b _080044C8
.align 2, 0
_080044D8: .4byte gUnk_03001160
_080044D8: .4byte gLinkEntity
_080044DC: .4byte gUnk_03005FF0
_080044E0: .4byte gUnk_02024048
_080044E4: .4byte gUnk_02021F20
_080044E8: .4byte gUnk_03001160
_080044E8: .4byte gLinkEntity
thumb_func_start sub_080044EC
sub_080044EC: @ 0x080044EC

View File

@ -179,7 +179,7 @@ sub_080086B4: @ 0x080086B4
mov r7, fp
push {r4, r5, r6, r7}
mov fp, r2
ldr r2, _080088BC @ =gUnk_03001160
ldr r2, _080088BC @ =gLinkEntity
mov r8, r2
bl sub_080086D8
pop {r4, r5, r6, r7}
@ -441,7 +441,7 @@ _080088AC: .4byte gUnk_0800851C
_080088B0: .4byte gUnk_080082DC
_080088B4: .4byte gUnk_03000BF6
_080088B8: .4byte gUnk_03000BF8
_080088BC: .4byte gUnk_03001160
_080088BC: .4byte gLinkEntity
_080088C0: .4byte 0x000003F0
_080088C4: .4byte gUnk_08000248
_080088C8: .4byte gUnk_03003F80
@ -760,7 +760,7 @@ _08008B20:
non_word_aligned_thumb_func_start sub_08008B22
sub_08008B22: @ 0x08008B22
push {lr}
ldr r0, _08008B58 @ =gUnk_03001160
ldr r0, _08008B58 @ =gLinkEntity
bl sub_08008B02
adds r0, r2, #0
pop {pc}
@ -780,7 +780,7 @@ _08008B48: .4byte gUnk_03003F80
_08008B4C: .4byte gUnk_02000020
_08008B50: .4byte 0x00004000
_08008B54: .4byte gUnk_08007CAC
_08008B58: .4byte gUnk_03001160
_08008B58: .4byte gLinkEntity
gUnk_08008B5C:: @ 08008B5C
.incbin "baserom.gba", 0x008B5C, 0x0000034

View File

@ -620,7 +620,7 @@ sub_08016FF4: @ 0x08016FF4
strb r1, [r2]
adds r0, #0x2e
strb r1, [r0]
ldr r2, _080170A4 @ =gUnk_03001160
ldr r2, _080170A4 @ =gLinkEntity
adds r0, r2, #0
adds r0, #0x41
ldrb r1, [r0]
@ -697,7 +697,7 @@ _08017084:
b _080171EA
.align 2, 0
_080170A0: .4byte gUnk_0200AF00
_080170A4: .4byte gUnk_03001160
_080170A4: .4byte gLinkEntity
_080170A8: .4byte gUnk_03003F80
_080170AC: .4byte 0xFDFFFDFF
_080170B0: .4byte gUnk_03003DF0
@ -858,7 +858,7 @@ _080171D6:
adds r1, #0x55
adds r0, r5, #0
movs r2, #0
bl sub_080A29AC
bl CreateFX
_080171EA:
pop {r4, r5}
pop {r0}
@ -881,7 +881,7 @@ _08017202:
subs r0, #1
strb r0, [r4, #0x14]
_0801720C:
ldr r6, _080172E0 @ =gUnk_03001160
ldr r6, _080172E0 @ =gLinkEntity
adds r1, r6, #0
adds r1, #0x7a
ldrh r0, [r1]
@ -987,7 +987,7 @@ _080172CC:
b _080172FA
.align 2, 0
_080172DC: .4byte gUnk_03003F80
_080172E0: .4byte gUnk_03001160
_080172E0: .4byte gLinkEntity
_080172E4: .4byte 0xFFFEFFFF
_080172E8: .4byte gUnk_0200AF00
_080172EC: .4byte gUnk_03003BE0
@ -998,7 +998,7 @@ _080172F4:
ands r0, r1
_080172FA:
str r0, [r4, #0x30]
ldr r4, _08017330 @ =gUnk_03001160
ldr r4, _08017330 @ =gLinkEntity
adds r0, r4, #0
bl sub_0807A8D8
ldr r0, _08017334 @ =gUnk_03003F80
@ -1024,7 +1024,7 @@ _08017322:
bx r0
.align 2, 0
_0801732C: .4byte 0xDFFFFFFF
_08017330: .4byte gUnk_03001160
_08017330: .4byte gLinkEntity
_08017334: .4byte gUnk_03003F80
thumb_func_start sub_08017338
@ -1131,7 +1131,7 @@ _080173CE:
ldrh r1, [r3, #6]
cmp r1, #0
bne _0801741C
ldr r2, _08017418 @ =gUnk_03001160
ldr r2, _08017418 @ =gLinkEntity
adds r0, r2, #0
adds r0, #0x60
ldrh r1, [r0]
@ -1143,14 +1143,14 @@ _080173CE:
.align 2, 0
_08017410: .4byte gUnk_08126DA8
_08017414: .4byte gUnk_08126ED8
_08017418: .4byte gUnk_03001160
_08017418: .4byte gLinkEntity
_0801741C:
ldr r0, _0801749C @ =0x000003FF
ands r0, r1
mov r1, ip
adds r1, #0x60
strh r0, [r1]
ldr r5, _080174A0 @ =gUnk_03001160
ldr r5, _080174A0 @ =gLinkEntity
_08017428:
mov r3, ip
ldrb r0, [r3, #0x14]
@ -1212,7 +1212,7 @@ _08017438:
bx r0
.align 2, 0
_0801749C: .4byte 0x000003FF
_080174A0: .4byte gUnk_03001160
_080174A0: .4byte gLinkEntity
thumb_func_start sub_080174A4
sub_080174A4: @ 0x080174A4
@ -1404,7 +1404,7 @@ _08017602:
ldrb r0, [r0]
cmp r0, #0
beq _08017634
ldr r4, _08017630 @ =gUnk_03001160
ldr r4, _08017630 @ =gLinkEntity
ldrb r5, [r4, #0x10]
movs r0, #0x7f
ands r0, r5
@ -1416,7 +1416,7 @@ _08017602:
_08017624: .4byte gUnk_03003DC0
_08017628: .4byte gUnk_030059F0
_0801762C: .4byte gUnk_03003F80
_08017630: .4byte gUnk_03001160
_08017630: .4byte gLinkEntity
_08017634:
bl _call_via_r1
_08017638:
@ -1437,7 +1437,7 @@ sub_08017640: @ 0x08017640
str r4, [r0]
str r4, [r4]
str r4, [r4, #4]
ldr r0, _08017668 @ =gUnk_03001160
ldr r0, _08017668 @ =gLinkEntity
str r0, [r4, #8]
pop {r4}
pop {r0}
@ -1445,7 +1445,7 @@ sub_08017640: @ 0x08017640
.align 2, 0
_08017660: .4byte gUnk_03003C70
_08017664: .4byte gUnk_02018EA0
_08017668: .4byte gUnk_03001160
_08017668: .4byte gLinkEntity
thumb_func_start sub_0801766C
sub_0801766C: @ 0x0801766C
@ -1728,7 +1728,7 @@ sub_08017850: @ 0x08017850
movs r0, #0
b _08017868
_08017860:
ldr r1, _08017870 @ =gUnk_03001160
ldr r1, _08017870 @ =gLinkEntity
adds r0, r4, #0
bl sub_080177A0
_08017868:
@ -1736,7 +1736,7 @@ _08017868:
pop {r1}
bx r1
.align 2, 0
_08017870: .4byte gUnk_03001160
_08017870: .4byte gLinkEntity
thumb_func_start sub_08017874
sub_08017874: @ 0x08017874
@ -1858,7 +1858,7 @@ sub_08017940: @ 0x08017940
adds r0, r4, #0
movs r1, #0x2c
movs r2, #0
bl sub_080A29AC
bl CreateFX
adds r2, r0, #0
cmp r2, #0
beq _080179CC
@ -1922,7 +1922,7 @@ sub_08017940: @ 0x08017940
bl sub_08016A04
_080179CC:
movs r1, #0
ldr r0, _080179E8 @ =gUnk_03001160
ldr r0, _080179E8 @ =gLinkEntity
cmp r5, r0
beq _080179DA
cmp r4, r0
@ -1937,7 +1937,7 @@ _080179E0:
pop {r0}
bx r0
.align 2, 0
_080179E8: .4byte gUnk_03001160
_080179E8: .4byte gLinkEntity
thumb_func_start sub_080179EC
sub_080179EC: @ 0x080179EC
@ -1952,7 +1952,7 @@ sub_080179EC: @ 0x080179EC
ldrb r1, [r1]
adds r0, r5, #0
movs r2, #0
bl sub_080A29AC
bl CreateFX
adds r4, r0, #0
cmp r4, #0
beq _08017A84
@ -2499,7 +2499,7 @@ _08017DFC:
movs r0, #4
_08017DFE:
strb r0, [r1]
ldr r4, _08017E34 @ =gUnk_03001160
ldr r4, _08017E34 @ =gLinkEntity
adds r0, r4, #0
adds r1, r5, #0
bl sub_08017874
@ -2524,7 +2524,7 @@ _08017DFE:
strb r0, [r1]
b _08017E6E
.align 2, 0
_08017E34: .4byte gUnk_03001160
_08017E34: .4byte gLinkEntity
_08017E38: .4byte gUnk_03003F80
_08017E3C:
adds r0, r5, #0
@ -2605,7 +2605,7 @@ sub_08017EB0: @ 0x08017EB0
movs r0, #0
b _08017F36
_08017EC4:
ldr r6, _08017EF8 @ =gUnk_03001160
ldr r6, _08017EF8 @ =gLinkEntity
cmp r2, r6
bne _08017EFC
ldrb r4, [r5]
@ -2630,7 +2630,7 @@ _08017EC4:
strh r0, [r1]
b _08017F22
.align 2, 0
_08017EF8: .4byte gUnk_03001160
_08017EF8: .4byte gLinkEntity
_08017EFC:
ldrh r1, [r2, #8]
movs r0, #0xa1
@ -2683,7 +2683,7 @@ sub_08017F40: @ 0x08017F40
ldrb r6, [r0]
cmp r6, #0
bne _0801800A
ldr r0, _08017FAC @ =gUnk_03001160
ldr r0, _08017FAC @ =gLinkEntity
cmp r4, r0
bne _08018002
bl sub_08079F8C
@ -2729,7 +2729,7 @@ _08017F9A:
bl sub_0806FA48
b _08017FC2
.align 2, 0
_08017FAC: .4byte gUnk_03001160
_08017FAC: .4byte gLinkEntity
_08017FB0: .4byte gUnk_03003F80
_08017FB4:
movs r3, #0x80
@ -2779,7 +2779,7 @@ _0801800A:
ldrb r0, [r5, #8]
cmp r0, #3
bne _0801801E
ldr r0, _08018028 @ =gUnk_03001160
ldr r0, _08018028 @ =gLinkEntity
cmp r4, r0
bne _0801801E
adds r0, r5, #0
@ -2792,7 +2792,7 @@ _08018020:
pop {r1}
bx r1
.align 2, 0
_08018028: .4byte gUnk_03001160
_08018028: .4byte gLinkEntity
thumb_func_start sub_0801802C
sub_0801802C: @ 0x0801802C
@ -2972,7 +2972,7 @@ sub_08018168: @ 0x08018168
ldrb r5, [r0]
cmp r5, #0
bne _08018208
ldr r0, _080181F4 @ =gUnk_03001160
ldr r0, _080181F4 @ =gLinkEntity
cmp r4, r0
bne _08018200
bl sub_08079F8C
@ -3033,7 +3033,7 @@ sub_08018168: @ 0x08018168
movs r0, #1
b _0801821E
.align 2, 0
_080181F4: .4byte gUnk_03001160
_080181F4: .4byte gLinkEntity
_080181F8: .4byte gUnk_03003F80
_080181FC: .4byte 0x00040080
_08018200:
@ -3045,7 +3045,7 @@ _08018208:
ldrb r0, [r6, #8]
cmp r0, #3
bne _0801821C
ldr r0, _08018224 @ =gUnk_03001160
ldr r0, _08018224 @ =gLinkEntity
cmp r4, r0
bne _0801821C
adds r0, r6, #0
@ -3058,14 +3058,14 @@ _0801821E:
pop {r1}
bx r1
.align 2, 0
_08018224: .4byte gUnk_03001160
_08018224: .4byte gLinkEntity
thumb_func_start sub_08018228
sub_08018228: @ 0x08018228
push {r4, r5, lr}
adds r4, r0, #0
adds r5, r1, #0
ldr r0, _0801824C @ =gUnk_03001160
ldr r0, _0801824C @ =gLinkEntity
cmp r4, r0
bne _08018244
bl sub_08079F8C
@ -3080,7 +3080,7 @@ _08018244:
pop {r1}
bx r1
.align 2, 0
_0801824C: .4byte gUnk_03001160
_0801824C: .4byte gLinkEntity
thumb_func_start sub_08018250
sub_08018250: @ 0x08018250
@ -3118,13 +3118,13 @@ _08018280:
sub_08018288: @ 0x08018288
push {lr}
adds r1, r0, #0
ldr r0, _08018298 @ =gUnk_03001160
ldr r0, _08018298 @ =gLinkEntity
cmp r1, r0
bne _0801829C
bl sub_0807AFE8
b _080182A2
.align 2, 0
_08018298: .4byte gUnk_03001160
_08018298: .4byte gLinkEntity
_0801829C:
adds r1, #0x45
movs r0, #0
@ -3204,7 +3204,7 @@ sub_08018308: @ 0x08018308
ldrb r0, [r4, #8]
cmp r0, #3
bne _08018338
ldr r0, _0801835C @ =gUnk_03001160
ldr r0, _0801835C @ =gLinkEntity
cmp r6, r0
bne _08018338
adds r0, r4, #0
@ -3217,7 +3217,7 @@ _08018338:
lsls r0, r0, #3
cmp r1, r0
bne _08018360
ldr r0, _0801835C @ =gUnk_03001160
ldr r0, _0801835C @ =gLinkEntity
ldrb r2, [r0, #0x14]
mov r0, r8
adds r0, #4
@ -3231,7 +3231,7 @@ _08018338:
movs r0, #0
b _080184F0
.align 2, 0
_0801835C: .4byte gUnk_03001160
_0801835C: .4byte gLinkEntity
_08018360:
cmp r3, #0
bne _08018408
@ -3426,7 +3426,7 @@ _080184BA:
_080184CE:
cmp r0, #5
bne _080184DA
ldr r0, _080184FC @ =gUnk_03001160
ldr r0, _080184FC @ =gLinkEntity
adds r0, #0x3d
movs r1, #0x80
strb r1, [r0]
@ -3437,7 +3437,7 @@ _080184DA:
ldrb r0, [r6, #9]
cmp r0, #5
bne _080184EE
ldr r0, _080184FC @ =gUnk_03001160
ldr r0, _080184FC @ =gLinkEntity
adds r0, #0x3d
movs r1, #0x80
strb r1, [r0]
@ -3450,4 +3450,4 @@ _080184F0:
pop {r1}
bx r1
.align 2, 0
_080184FC: .4byte gUnk_03001160
_080184FC: .4byte gLinkEntity

View File

@ -20,7 +20,7 @@ _080000C0:
ldr r1, _080000FC @ =0x03007FFC
ldr r0, _08000100 @ =gUnk_03005D90
str r0, [r1]
ldr r1, _08000104 @ =sub_08055E6C
ldr r1, _08000104 @ =MainLoop
mov lr, pc
bx r1
_080000F0:
@ -29,4 +29,4 @@ _080000F4: .4byte gUnk_03007FA0
_080000F8: .4byte gUnk_03007F00
_080000FC: .4byte 0x03007FFC
_08000100: .4byte gUnk_03005D90
_08000104: .4byte sub_08055E6C
_08000104: .4byte MainLoop

View File

@ -180,7 +180,7 @@ SECTIONS {
. = 0x000010EC; gUnk_030010EC = .;
. = 0x0000110C; gUnk_0300110C = .;
. = 0x00001150; gUnk_03001150 = .;
. = 0x00001160; gUnk_03001160 = .;
. = 0x00001160; gLinkEntity = .;
. = 0x00001198; gUnk_03001198 = .;
. = 0x000011E8; gUnk_030011E8 = .;
. = 0x000015A0; gUnk_030015A0 = .;
@ -290,12 +290,23 @@ SECTIONS {
data/data_6.o(.rodata);
asm/code_0800857C.o(.text);
/* C source compiled with interworking */
asm/code_08016B30.o(.text);
/* C source compiled without interworking */
asm/code.o(.text);
asm/readKeyInput.o(.text);
asm/code_0801D6E0.o(.text);
src/loadRoom.o(.text);
asm/code_0804B058.o(.text);
asm/InitializeLink.o(.text);
asm/code_08052620.o(.text);
asm/mainLoop.o(.text);
asm/code_08055FF4.o(.text);
asm/GetProgressFlag.o(.text);
asm/code_0807CC3C.o(.text);
asm/createFx.o(.text);
asm/code_080A29BC.o(.text);
/* library functions */
asm/m4a_asm.o(.text);
asm/m4a.o(.text);
@ -305,7 +316,6 @@ SECTIONS {
/* handwritten assembly in arm mode */
asm/intr.o(.text);
/* data */
data/data_8.o(.rodata);
} >rom