obj = $(asrc:.s=.o) $(aSsrc:.S=.o) $(csrc:.c=.o)
dep = $(csrc:.c=.d)
+z80src = $(wildcard src/z80/*.asm)
+z80obj = $(z80src:.asm=.z80)
+z80bin = z80.bin
+
name = life
elf = $(name).elf
bin = $(name).bin
LDFLAGS = -T megadrive.ld -print-gc-sections \
-L/usr/lib/gcc-cross/m68k-linux-gnu/11 -lgcc
+Z80AS = vasmz80_oldstyle
+Z80ASFLAGS = -Fvobj
+Z80LD = vlink
+Z80LDFLAGS = -T z80.ld -b rawbin1
+
+
$(bin): $(elf)
$(OBJCOPY) -O binary $< $@
$(elf): $(obj)
$(LD) -o $@ $(obj) -Map link.map $(LDFLAGS)
+$(z80bin): $(z80obj)
+ $(Z80LD) -o $@ $(Z80LDFLAGS) $(z80obj)
+
+src/z80prog.o: src/z80prog.s $(z80bin)
+
-include $(dep)
+%.z80: %.asm
+ $(Z80AS) -o $@ $(Z80ASFLAGS) $< >/dev/null
+
.PHONY: clean
clean:
rm -f $(obj) $(elf) $(bin)
+ rm -f $(z80obj) $(z80bin)
.PHONY: cleandep
cleandep:
mount /media/usbmass
[ -f /media/usbmass/MEGA/MEGA.RBF ] || cp $(bin) /media/usbmass/MEGA/MEGA.BIN
umount /media/usbmass
+