projects
/
mdlife
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
finished the tile deduplication and tilemap generation in pngdump
[mdlife]
/
Makefile
diff --git
a/Makefile
b/Makefile
index
8f84751
..
bcbcdc5
100644
(file)
--- a/
Makefile
+++ b/
Makefile
@@
-1,8
+1,8
@@
csrc = $(wildcard src/*.c) $(wildcard src/libc/*.c)
csrc = $(wildcard src/*.c) $(wildcard src/libc/*.c)
-asrc = $(wildcard src/*.s)
-aSsrc = $(wildcard src/*.S)
+asrc = $(wildcard src/*.s) $(wildcard src/libc/*.s)
+aSsrc = $(wildcard src/*.S) $(wildcard src/libc/*.S)
obj = $(asrc:.s=-asm.o) $(aSsrc:.S=-asm.o) $(csrc:.c=.o)
obj = $(asrc:.s=-asm.o) $(aSsrc:.S=-asm.o) $(csrc:.c=.o)
-dep = $(csrc:.c=.d)
+dep = $(csrc:.c=.d) $(aSsrc:.S=-asm.d)
z80src = $(wildcard src/z80/*.asm)
z80obj = $(z80src:.asm=.z80)
z80src = $(wildcard src/z80/*.asm)
z80obj = $(z80src:.asm=.z80)
@@
-14,22
+14,23
@@
bin = $(name).bin
warn = -pedantic -Wall
dbg = -g
warn = -pedantic -Wall
dbg = -g
-opt = -O2
+opt = -O3
def = -D__NO_CTYPE
inc = -I. -Isrc -Isrc/libc
def = -D__NO_CTYPE
inc = -I. -Isrc -Isrc/libc
-TC = m68k-linux-gnu-
+ARCH = m68k-elf
+TC = $(ARCH)-
CC = $(TC)gcc
AS = $(TC)as
LD = $(TC)ld
OBJCOPY = $(TC)objcopy
CC = $(TC)gcc
AS = $(TC)as
LD = $(TC)ld
OBJCOPY = $(TC)objcopy
+OBJDUMP = $(TC)objdump
CFLAGS = -m68000 -ffreestanding -fno-builtin -fcommon $(warn) $(dbg) $(opt) $(def) $(inc) -MMD
CPPFLAGS = $(def)
ASFLAGS = -m68000 $(inc)
CFLAGS = -m68000 -ffreestanding -fno-builtin -fcommon $(warn) $(dbg) $(opt) $(def) $(inc) -MMD
CPPFLAGS = $(def)
ASFLAGS = -m68000 $(inc)
-LDFLAGS = -T megadrive.ld -print-gc-sections \
- -L/usr/lib/gcc-cross/m68k-linux-gnu/11 -lgcc
+LDFLAGS = -T megadrive.ld -Wl,-print-gc-sections -nostdlib -lgcc
Z80AS = vasmz80_oldstyle
Z80ASFLAGS = -Fvobj
Z80AS = vasmz80_oldstyle
Z80ASFLAGS = -Fvobj
@@
-41,21
+42,27
@@
$(bin): $(elf)
$(OBJCOPY) -O binary $< $@
$(elf): $(obj)
$(OBJCOPY) -O binary $< $@
$(elf): $(obj)
- $(LD) -o $@ $(obj) -Map link.map $(LDFLAGS)
+ $(CC) -o $@ $(obj) -Wl,-Map,link.map $(LDFLAGS)
$(z80bin): $(z80obj)
$(Z80LD) -o $@ $(Z80LDFLAGS) $(z80obj)
$(z80bin): $(z80obj)
$(Z80LD) -o $@ $(Z80LDFLAGS) $(z80obj)
-src/data.o: src/data.s data/font8x8.img
+disasm: $(elf)
+ $(OBJDUMP) -D $< >$@
+
+src/data-asm.o: src/data.s data/font8x8.img data/cellspr.img data/lifebg.tiles \
+ data/lifefg.tiles
src/z80prog-asm.o: src/z80prog.s $(z80bin)
src/z80prog-asm.o: src/z80prog.s $(z80bin)
+data/cellspr.img: data/cellspr.png
+
-include $(dep)
%-asm.o: %.s
$(AS) -o $@ $(ASFLAGS) $<
%-asm.o: %.S
-include $(dep)
%-asm.o: %.s
$(AS) -o $@ $(ASFLAGS) $<
%-asm.o: %.S
- $(CC) -o $@ $(ASFLAGS) -c $<
+ $(CC) -o $@ $(ASFLAGS) -DASM -MMD -c $<
%.z80: %.asm
$(Z80AS) -o $@ $(Z80ASFLAGS) $< >/dev/null
%.z80: %.asm
$(Z80AS) -o $@ $(Z80ASFLAGS) $< >/dev/null
@@
-90,5
+97,8
@@
PNGDUMP = tools/pngdump/pngdump
$(PNGDUMP): tools/pngdump/main.c tools/pngdump/image.c tools/pngdump/quant.c
$(MAKE) -C tools/pngdump
$(PNGDUMP): tools/pngdump/main.c tools/pngdump/image.c tools/pngdump/quant.c
$(MAKE) -C tools/pngdump
+%.tiles: %.png $(PNGDUMP)
+ $(PNGDUMP) -o $@ -oc $(@:.tiles=.cmap) -om $(@:.tiles=.tmap) -T 8x8 -D $<
+
%.img: %.png $(PNGDUMP)
$(PNGDUMP) -o $@ -oc $(@:.img=.cmap) -T 8x8 $<
%.img: %.png $(PNGDUMP)
$(PNGDUMP) -o $@ -oc $(@:.img=.cmap) -T 8x8 $<