From 70af8cae86d75b4b02e9f7bd7d3614262bc5eb16 Mon Sep 17 00:00:00 2001 From: Thomas Albers Raviola Date: Thu, 13 Feb 2025 01:48:01 +0100 Subject: Linearize Makefiles --- scripts/config.mk | 21 +++++++++++++++++++++ scripts/rules.mk | 26 ++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 scripts/config.mk create mode 100644 scripts/rules.mk (limited to 'scripts') diff --git a/scripts/config.mk b/scripts/config.mk new file mode 100644 index 0000000..62cd377 --- /dev/null +++ b/scripts/config.mk @@ -0,0 +1,21 @@ +AS = sdasz80 +CC = sdcc +CPP = sdcpp + +# Extra LDFLAGS +BOOT_LDFLAGS =\ + --code-loc 0x0120\ + --data-loc 0xC000\ + -Wl-b_GSINIT=0x0090 + +PAYLOAD_LDFLAGS =\ + --code-loc 0x8100\ + --data-loc 0xC000\ + -Wl-b_GSINIT=0x8090 + +SYSTEM_LDFLAGS =\ + --code-loc 0x8100\ + --data-loc 0xC000\ + -Wl-b_GSINIT=0x8080 + +ROM_CHIP = AT28C256 diff --git a/scripts/rules.mk b/scripts/rules.mk new file mode 100644 index 0000000..670cc98 --- /dev/null +++ b/scripts/rules.mk @@ -0,0 +1,26 @@ +INCLUDE = $(PROJECT_ROOT)/include + +DEPFLAGS = -MP -MMD -MF$(basename $@).d -MT$@ + +ASFLAGS = -g +ASCPPFLAGS = $(DEPFLAGS) -P -I$(INCLUDE) -DASSEMBLY +CFLAGS = -mz80 -I$(INCLUDE) --Werror $(patsubst %,-Wp%,$(DEPFLAGS)) +LDFLAGS = -mz80 --no-std-crt0 + +$(BUILD)/%.rel : %.asm + @echo ' (CPP)' $< + @$(CPP) $(ASCPPFLAGS) $< > $(basename $@).asm + @echo ' (AS)' $< + @$(AS) $(ASFLAGS) -o $@ $(basename $@).asm + +$(BUILD)/%.rel : %.c + @echo ' (CC)' $< + @$(CC) $(CFLAGS) -c -o $@ $< + +$(BUILD)/%.hex : $(BUILD)/%.ihx + @hex2bin.py $< $@ + +.SECONDARY : +$(BUILD)/%.ihx : + @echo ' (LD)' $@ ':' $(notdir $+) + @$(CC) $(LDFLAGS) $(EXTRA_LDFLAGS) -o $@ $+ -- cgit v1.2.3