2026-01-06 14:13:17 +02:00
|
|
|
# Scoundrel65 reference implementation makefile
|
|
|
|
|
|
|
|
|
|
PROJNAME=scoundrel
|
|
|
|
|
CFILES=scoundrel.c
|
|
|
|
|
PBTDIR=platform-build-tools
|
2026-01-07 09:07:35 +02:00
|
|
|
CCBUILD=cl65 -O -Os
|
2026-01-07 00:46:52 +02:00
|
|
|
Z80BUILD=zcc
|
2026-01-06 15:51:54 +02:00
|
|
|
BUILDDIR=build
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 15:51:54 +02:00
|
|
|
$(PROJNAME): bdir
|
|
|
|
|
$(CC) -std=c89 -O2 -o $(BUILDDIR)/scoundrel $(CFILES)
|
|
|
|
|
|
|
|
|
|
bdir:
|
|
|
|
|
mkdir -p $(BUILDDIR)
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 16:59:07 +02:00
|
|
|
a2-build: bdir
|
2026-01-06 16:57:08 +02:00
|
|
|
$(CCBUILD) -t apple2 -C apple2-system.cfg -o $(BUILDDIR)/$(PROJNAME)-a2.bin $(CFILES)
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 16:59:07 +02:00
|
|
|
a2: a2-build
|
2026-01-06 16:57:08 +02:00
|
|
|
cp $(PBTDIR)/apple2/tpl.dsk $(PROJNAME)-a2.dsk
|
|
|
|
|
java -jar $(PBTDIR)/apple2/ac.jar -p $(PROJNAME)-a2.dsk $(PROJNAME).system sys < $$(cl65 --print-target-path)/apple2/util/loader.system
|
|
|
|
|
java -jar $(PBTDIR)/apple2/ac.jar -as $(PROJNAME)-a2.dsk $(PROJNAME) bin < $(BUILDDIR)/$(PROJNAME)-a2.bin
|
|
|
|
|
mv $(PROJNAME)-a2.dsk $(BUILDDIR)/
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 16:59:07 +02:00
|
|
|
a2e-build: bdir
|
2026-01-06 16:57:08 +02:00
|
|
|
$(CCBUILD) -t apple2enh -C apple2enh-system.cfg -o $(BUILDDIR)/$(PROJNAME)-a2e.bin $(CFILES)
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 16:59:07 +02:00
|
|
|
a2e: a2e-build
|
2026-01-06 16:57:08 +02:00
|
|
|
cp $(PBTDIR)/apple2/tpl.dsk $(PROJNAME)-a2e.dsk
|
|
|
|
|
java -jar $(PBTDIR)/apple2/ac.jar -p $(PROJNAME)-a2e.dsk $(PROJNAME).system sys < $$(cl65 --print-target-path)/apple2enh/util/loader.system
|
|
|
|
|
java -jar $(PBTDIR)/apple2/ac.jar -as $(PROJNAME)-a2e.dsk $(PROJNAME) bin < $(BUILDDIR)/$(PROJNAME)-a2e.bin
|
|
|
|
|
mv $(PROJNAME)-a2e.dsk $(BUILDDIR)/
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 15:51:54 +02:00
|
|
|
atari8bit: bdir
|
|
|
|
|
$(CCBUILD) -t atari -o $(BUILDDIR)/$(PROJNAME)-atari.bin $(CFILES)
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 15:51:54 +02:00
|
|
|
c64: bdir
|
|
|
|
|
$(CCBUILD) -t c64 -o $(BUILDDIR)/$(PROJNAME)-c64.bin $(CFILES)
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 15:51:54 +02:00
|
|
|
c16: bdir
|
|
|
|
|
$(CCBUILD) -t c16 -o $(BUILDDIR)/$(PROJNAME)-c16.bin $(CFILES)
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 15:51:54 +02:00
|
|
|
c128: bdir
|
|
|
|
|
$(CCBUILD) -t c128 -o $(BUILDDIR)/$(PROJNAME)-c128.bin $(CFILES)
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 15:51:54 +02:00
|
|
|
pet: bdir
|
|
|
|
|
$(CCBUILD) -t pet -o $(BUILDDIR)/$(PROJNAME)-pet.bin $(CFILES)
|
2026-01-06 14:13:17 +02:00
|
|
|
|
2026-01-06 17:00:34 +02:00
|
|
|
plus4: bdir
|
2026-01-06 15:51:54 +02:00
|
|
|
$(CCBUILD) -t plus4 -o $(BUILDDIR)/$(PROJNAME)-plus4.bin $(CFILES)
|
|
|
|
|
|
2026-01-07 00:46:52 +02:00
|
|
|
msx: bdir
|
|
|
|
|
$(Z80BUILD) +msx -create-app -subtype=rom $(CFILES) -o $(PROJNAME)
|
|
|
|
|
mv $(PROJNAME).rom $(BUILDDIR)/$(PROJNAME)-msx.rom
|
|
|
|
|
rm -f $(PROJNAME) *.bin *.img
|
|
|
|
|
|
|
|
|
|
zxspec: bdir
|
|
|
|
|
$(Z80BUILD) +zx -lndos -clib=ansi -pragma-define:ansicolumns=40 -create-app $(CFILES) -o $(PROJNAME)
|
|
|
|
|
mv $(PROJNAME).tap $(BUILDDIR)/$(PROJNAME)-zxspec.tap
|
|
|
|
|
rm $(PROJNAME)
|
|
|
|
|
|
|
|
|
|
all: $(PROJNAME) a2 a2e atari8bit c64 c16 c128 pet plus4 zxspec msx
|
2026-01-06 14:13:17 +02:00
|
|
|
|
|
|
|
|
clean:
|
2026-01-06 15:51:54 +02:00
|
|
|
rm -rf $(BUILDDIR) *.o
|