]> git.sur5r.net Git - c128-kasse/blobdiff - Makefile
README: remove emulator configuration, we use -config vicerc
[c128-kasse] / Makefile
index bc83ef6a022a8082cd0f0064fba91046174aa881..eea1a79d4bd8068c4996f1f94263fec0d6e72faf 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,52 +1,76 @@
 CC=cc65
 AS=ca65
 LD=cl65
-INCLUDES:=$(wildcard include/*.h) include/version.h
+INCLUDES:=$(wildcard include/*.h) include/version.h include/charset_umlauts.h
 GV:=$(shell git describe --tags --always)
 CFLAGS= -I include -t c128 -g
 
-.PHONY: include/version.h clean dist-clean format
+.PHONY: clean dist-clean format
 
-all: kasse itemz
+all: kasse itemz cat
 
 build/%.o: src/%.c ${INCLUDES}
        ${CC} ${CFLAGS} -O $< -o build/$(addsuffix .s,$(shell basename $< .c))
        ${AS} ${CFLAGS} build/$(addsuffix .s,$(shell basename $< .c)) -o $@
 
-include/version.h:
+build/%.o: src/%.s
+       ${AS} ${CFLAGS} $< -o $@
+
+build/%.o: test/%.c ${INCLUDES}
+       ${CC} ${CFLAGS} -O $< -o build/$(addsuffix .s,$(shell basename $< .c))
+       ${AS} ${CFLAGS} build/$(addsuffix .s,$(shell basename $< .c)) -o $@
+
+build/%.o: test/%.s
+       ${AS} ${CFLAGS} $< -o $@
+
+.git/index:
+
+include/version.h: .git/index
        mkdir -p build
        echo "#define GV \"${GV}\"" > $@
 
-kasse: build/config.o build/kasse.o build/general.o build/credit_manager.o build/c128time.o build/print.o
-       ${LD} -t c128 $^ -o $@
+include/charset_umlauts.h: assets/umlauts.pbm
+       ./util/mkfont assets/umlauts.pbm chars_umlauts > $@
+
+kasse: build/config.o build/kasse.o build/general.o build/credit_manager.o build/c128time.o build/print.o build/vdc_patch_charset.o build/vdc_util.o build/globals.o build/bcd2dec.o
+       ${LD} -Ln $@.lbl -t c128 $^ -o $@
+
+itemz: build/config.o build/itemz.o build/general.o build/credit_manager.o build/c128time.o build/print.o build/globals.o build/bcd2dec.o build/vdc_util.o
+       ${LD} -Ln $@.lbl -t c128 $^ -o $@
 
-itemz: build/config.o build/itemz.o build/general.o build/credit_manager.o build/c128time.o build/print.o
-       ${LD} -t c128 $^ -o $@
+cat: build/general.o build/cat.o build/config.o build/print.o build/globals.o
+       ${LD} -Ln $@.lbl -t c128 $^ -o $@
 
-cat: build/general.o build/cat.o
-       ${LD} -t c128 $^ -o $@
+charmap: build/print_charmap.o build/vdc_util.o build/vdc_patch_charset.o
+       ${LD} -Ln $@.lbl -t c128 $^ -o $@
+
+ascii: build/print_ascii.o
+       ${LD} -Ln $@.lbl -t c128 $^ -o $@
 
 package: all
-       c1541 -format "${GV}",KA d64 kasse.d64
-       c1541 -attach kasse.d64 -write kasse
-       c1541 -attach kasse.d64 -write itemz
-       [ -e state ] && c1541 -attach kasse.d64 -write state || exit 0
-       [ -e items ] && c1541 -attach kasse.d64 -write items || exit 0
+       c1541 -format "${GV}",KA d71 kasse.d71
+       c1541 -attach kasse.d71 -write kasse
+       c1541 -attach kasse.d71 -write itemz
+       [ -e state ] && c1541 -attach kasse.d71 -write state || exit 0
+       [ -e items ] && c1541 -attach kasse.d71 -write items || exit 0
 
-test: build/config.o test/test.o build/general.o
-       cl65 -t c128 $^ -o build/test
+test: build/config.o build/test.o build/general.o build/print.o build/globals.o
+       ${LD} -Ln $@.lbl -t c128 $^ -o test/$@
 
 test-package: test
-       c1541 -format "test",TE d64 test.d64
-       c1541 -attach test.d64 -write test || exit 0
-       c1541 -attach test.d64 -write state || exit 0
-       c1541 -attach test.d64 -write items || exit 0
+       c1541 -format "test",TE d71 test.d71
+       c1541 -attach test.d71 -write test/test || exit 0
+       c1541 -attach test.d71 -write state || exit 0
+       c1541 -attach test.d71 -write items || exit 0
 
 clean:
-       rm -rf build/*.o build/*.s test/*.o test/*.s
+       rm -rf build/*.o build/*.s test/test
 
 dist-clean: clean
-       rm -f kasse itemz kasse.d64
+       rm -f kasse kasse.lbl itemz itemz.lbl cat cat.lbl kasse.d71
 
 format:
        clang-format-3.9 -i **/*.[ch]
+
+vice:
+       x128 -config vicerc -autostart kasse.d71 +go64 -80col