From 6d4ad089c5b758ad8af4f68bf385a26ec4e9653a Mon Sep 17 00:00:00 2001 From: Thomas Albers Raviola Date: Thu, 21 Nov 2024 15:55:03 +0100 Subject: Initial commit --- Makefile | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 Makefile (limited to 'Makefile') diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..9311c3e --- /dev/null +++ b/Makefile @@ -0,0 +1,65 @@ +PROJECT=firmware + +AS=sdasz80 +CC=sdcc +CPP=sdcpp + +ASM=crt0.asm\ + isr.asm\ + delay.asm +SRC=crc16.c\ + bootloader.c\ + font.c\ + i2c.c\ + input.c\ + main.c\ + tft.c\ + tty.c\ + menu.c + +OBJ=$(ASM:%.asm=build/%.rel)\ + $(SRC:%.c=build/%.rel) + +IHX=build/$(PROJECT).ihx +TARGET=build/$(PROJECT).hex + +INCLUDE=include +CFLAGS=-mz80 -I$(INCLUDE) --Werror +LDFLAGS=-mz80 --no-std-crt0\ + --code-loc 0x0100\ + --data-loc 0x8010\ + -Wl-b_ISR_TABLE=0x0070\ + -Wl-b_GSINIT=0x0080 + +ROM_CHIP=AT28C256 + +all : $(TARGET) + +$(OBJ): | build + +build: + @mkdir -p build + +build/%.rel : asm/%.asm + @echo ' (AS)' $< + @$(CPP) -P -I$(INCLUDE) -DASSEMBLY $< > build/$(notdir $<) + @$(AS) -g -o $@ build/$(notdir $<) + +build/%.rel : src/%.c + @echo ' (CC)' $< + @$(CC) $(CFLAGS) -c -o $@ $< + +$(IHX) : $(OBJ) + @echo ' (LD)' $(OBJ) + @$(CC) $(LDFLAGS) -o $@ $(OBJ) + +$(TARGET) : $(IHX) + @hex2bin.py $< $@ + +.PHONE : flash +flash : + @minipro -y -sp $(ROM_CHIP) -w $(TARGET) + +.PHONY : clean +clean : + @find build -type f -delete -- cgit v1.2.3