From 74dd1cc0dc80c0ac6e64b56161c68172763ce8a9 Mon Sep 17 00:00:00 2001 From: John Winans Date: Fri, 10 Feb 2023 21:29:32 -0600 Subject: [PATCH] Minor improvement to messy 'make world' build --- .gitignore | 1 + Makefile | 29 +++++++++- doc/retro.pdf | Bin 106185 -> 106550 bytes filesystem/Makefile | 50 +++++++++++------- .../assemblers/sid/{SID.COM => sid.com} | Bin .../assemblers/sid/{ZSID.COM => zsid.com} | Bin 6 files changed, 60 insertions(+), 20 deletions(-) rename filesystem/assemblers/sid/{SID.COM => sid.com} (100%) rename filesystem/assemblers/sid/{ZSID.COM => zsid.com} (100%) diff --git a/.gitignore b/.gitignore index 96b7d40..557a1ea 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ *.lst *.sym mkfs +2063-Z80-cpm.tar diff --git a/Makefile b/Makefile index d58afc5..9059c3a 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,7 @@ SUBDIRS=\ CLEAN_DIRS=$(SUBDIRS:%=clean-%) ALL_DIRS=$(SUBDIRS:%=all-%) -.PHONY: all clean $(CLEAN_DIRS) $(ALL_DIRS) +.PHONY: all clean release $(CLEAN_DIRS) $(ALL_DIRS) all:: $(ALL_DIRS) @@ -23,3 +23,30 @@ $(ALL_DIRS): $(CLEAN_DIRS): $(MAKE) -C $(@:clean-%=%) clean + +REL_FILES=\ + LICENSE \ + Makefile \ + README-SD.md \ + README.md \ + boot \ + cpm22 \ + doc \ + hello \ + lib \ + retro \ + tests \ + filesystem/Makefile \ + filesystem/README.md \ + filesystem/diskdefs \ + filesystem/retro.img \ + filesystem/sid \ + filesystem/progs/basic/ \ + filesystem/progs/example \ + filesystem/progs/tms9118 \ + filesystem/progs/tty \ + filesystem/progs/README.md + +release: + rm -f 2063-Z80-cpm.tar + zip -r 2063-Z80-cpm.tar $(REL_FILES) diff --git a/doc/retro.pdf b/doc/retro.pdf index 3e8bad428dc6b6fefbc5d5f641d46b320ec18856..59113857245f29f5313e98246880d5bdadb93dcb 100644 GIT binary patch delta 24168 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/dev/null | wc -l` -gt 0 ]; then\ - cpmcp -f z80-retro-2k-8m retro.img progs/tms9118/*.com 0: ; \ - fi - -assemblers: retro.img - if [ `ls -1 assemblers/*/* 2>/dev/null | wc -l` -gt 0 ]; then\ - cpmcp -f z80-retro-2k-8m retro.img assemblers/*/* 0: ; \ - fi + cpmcp -f z80-retro-2k-8m retro.img progs/tms9118/*.com 0: local: retro.img if [ `ls -1 local/*/*/* 2>/dev/null | wc -l` -gt 0 ]; then\ @@ -41,17 +57,13 @@ local: retro.img fi -world: clean all - -adventure/adv-B03: adventure/cpm-advent.zip - unzip -d adventure adventure/cpm-advent.zip - +# this is where the adventure game files came from: adventure/cpm-advent.zip: wget -P adventure https://ifarchive.org/if-archive/games/cpm/cpm-advent.zip -clean: + +clean:: rm -f retro.img - rm -rf `find adventure/* -name \*.zip -o -print` burn: retro.img if [ `hostname` = "raspberrypi" ]; then \ diff --git a/filesystem/assemblers/sid/SID.COM b/filesystem/assemblers/sid/sid.com similarity index 100% rename from filesystem/assemblers/sid/SID.COM rename to filesystem/assemblers/sid/sid.com diff --git a/filesystem/assemblers/sid/ZSID.COM b/filesystem/assemblers/sid/zsid.com similarity index 100% rename from filesystem/assemblers/sid/ZSID.COM rename to filesystem/assemblers/sid/zsid.com