X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=Makefile;h=8f847511636ef8f6d4716b8ec591339571097c75;hb=c01146f8ecd395bfcdeb8af3b50f8a9ab2b87488;hp=002cba4650e5a73af0d935318fe20ea07732dc61;hpb=3e2b2c146c2f341ef38e24e32e5b1fc6176e7cca;p=mdlife diff --git a/Makefile b/Makefile index 002cba4..8f84751 100644 --- a/Makefile +++ b/Makefile @@ -1,9 +1,13 @@ csrc = $(wildcard src/*.c) $(wildcard src/libc/*.c) asrc = $(wildcard src/*.s) aSsrc = $(wildcard src/*.S) -obj = $(asrc:.s=.o) $(aSsrc:.S=.o) $(csrc:.c=.o) +obj = $(asrc:.s=-asm.o) $(aSsrc:.S=-asm.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 @@ -27,17 +31,39 @@ ASFLAGS = -m68000 $(inc) 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/data.o: src/data.s data/font8x8.img +src/z80prog-asm.o: src/z80prog.s $(z80bin) + -include $(dep) +%-asm.o: %.s + $(AS) -o $@ $(ASFLAGS) $< + +%-asm.o: %.S + $(CC) -o $@ $(ASFLAGS) -c $< + +%.z80: %.asm + $(Z80AS) -o $@ $(Z80ASFLAGS) $< >/dev/null + .PHONY: clean clean: rm -f $(obj) $(elf) $(bin) + rm -f $(z80obj) $(z80bin) .PHONY: cleandep cleandep: @@ -57,3 +83,12 @@ install: $(bin) mount /media/usbmass [ -f /media/usbmass/MEGA/MEGA.RBF ] || cp $(bin) /media/usbmass/MEGA/MEGA.BIN umount /media/usbmass + +# ---- tools ---- +PNGDUMP = tools/pngdump/pngdump + +$(PNGDUMP): tools/pngdump/main.c tools/pngdump/image.c tools/pngdump/quant.c + $(MAKE) -C tools/pngdump + +%.img: %.png $(PNGDUMP) + $(PNGDUMP) -o $@ -oc $(@:.img=.cmap) -T 8x8 $<