From 3fed09954372d388470d53810c100dc38c1cef39 Mon Sep 17 00:00:00 2001 From: kris Date: Thu, 5 Jul 2018 22:31:20 +0100 Subject: [PATCH 1/3] Specify apple2enh-asm.cfg config to avoid linker errors. --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 9f613ff..67350db 100644 --- a/Makefile +++ b/Makefile @@ -31,7 +31,7 @@ clean: rm -f $(PGM).lst $(PGM): - @PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh -l$(PGM).lst --start-addr $(ADDR) $(PGM).s + @PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh --config apple2enh-asm.cfg -l$(PGM).lst --start-addr $(ADDR) $(PGM).s java -jar $(AC) -d $(PGM).dsk $(PGM) java -jar $(AC) -p $(PGM).dsk $(PGM) BIN 0x$(ADDR) < $(PGM) rm -f $(PGM) From 03aee5087119873baf2fc5315f1127376c012278 Mon Sep 17 00:00:00 2001 From: kris Date: Sun, 8 Jul 2018 14:55:32 +0100 Subject: [PATCH 2/3] Work around a regression in versions 8.3+ of Virtual II that cause the .dsk image to be rewritten upon floppy eject (which would spam our changes). Add some comments while I'm in here. --- Makefile | 20 ++++++++++++++------ V2Eject.scpt | Bin 0 -> 3070 bytes 2 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 V2Eject.scpt diff --git a/Makefile b/Makefile index 67350db..0c2e77c 100644 --- a/Makefile +++ b/Makefile @@ -31,9 +31,17 @@ clean: rm -f $(PGM).lst $(PGM): - @PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh --config apple2enh-asm.cfg -l$(PGM).lst --start-addr $(ADDR) $(PGM).s - java -jar $(AC) -d $(PGM).dsk $(PGM) - java -jar $(AC) -p $(PGM).dsk $(PGM) BIN 0x$(ADDR) < $(PGM) - rm -f $(PGM) - rm -f $(PGM).o - osascript V2Make.scpt $(PROJECT_DIR) $(PGM) + # First eject the mounted disk in S6D1, which (in some versions of Virtual II) also rewrites + # the .dsk image + osascript V2Eject.scpt $(PROJECT_DIR) $(PGM) + # Rebuild binary + @PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh --config apple2enh-asm.cfg -l$(PGM).lst --start-addr $(ADDR) $(PGM).s + # Update the disk image + java -jar $(AC) -d $(PGM).dsk $(PGM) + java -jar $(AC) -p $(PGM).dsk $(PGM) BIN 0x$(ADDR) < $(PGM) + # Clean up for next time + rm -f $(PGM) + rm -f $(PGM).o + # Insert disk into S6D1, reset the machine and invoke -$(PGM) from prompt + osascript V2Make.scpt $(PROJECT_DIR) $(PGM) + diff --git a/V2Eject.scpt b/V2Eject.scpt new file mode 100644 index 0000000000000000000000000000000000000000..284dc6bd4e0039f8f4940bc890bfa1f55e534d2a GIT binary patch literal 3070 zcmb_eYj+#P8Gd%HCeA7=TjmlqN$sseb8)cNHohndCCHJTgkqdi9Dm8l=~=I2YpwN4 zNGqG1(+~6?@Dun0{lIUa;Nn?&Alm`^;71oqGilRktxERFg>y^kSWE^E-^S2WH(s(4& zRJowQTEOV@kfx3mva@N2o5ZP(JNW&dW2Z?VQ^q&9$aVQvzR~15pvkuiz5#o7vh2cc zlc0NQ9NO>;ben{>6RR`7Mvr`D$k#}vo#Jv>ajMmz;rqa29R4`^_?YN{R#DTr(wA}h z672(sIkkmlE+Sv4P2Anu#5OFQ>gxC7VC9^7RT^dM@-@GI;!3HmVG8e;MV z_8Ekj;a27rP3(iV#2%&z`8WU2Ozdru(B$*De7=r^iMv{Tkk8`s8Bzl1q+{|&EyFzF9954wHyRGEkhl2_tc3TFfcM5cxBKgnT3) z$_JW!q+I!-f)A7}23Q8=n#mlfPt!UHP8q^ICLzk9T@0RK9m5DzYxw#8Fa!Qdy7Kcqj#HojtxmU-%9QJG6XA&Y#J=iDz#1Xk@@Rdr>dS^~gEV^Nf z6SyDq#bwXLk){)Rut)xZ`wc?OX!hLSbOHknxdhV?x7&D<$-Ny9lYbtAx?EHY?_)VC z7fc*&F1;W9@^|Fr9fPk_x_-9KBX1Y048!smJ)&f8XBx>i-j! zJ)vuGe6Joc?xqp6UHOsxWIi{X>z~XV8tNY&8z1e@jAkqk6X5 zNZl+qJ1NpUU#k3d-~lF?JhxPyj?FXNhFSVq&oJ_bSR3YE8E4@2Q!>huiF$J!dz7Qb zIcAu$9N%N;LeehS8)<;2Utq7A!lo(gRa4l0)xNbU>>2x~rm+7TQz$R#a!q+*H_LH( z%f#`uL*-3*LtfY9O|{qGQ1H4M{+2QqPo0iVo+ex5uQ)-|{00xoYZ@Eew-rN8xo}^uc(zDz}8Or3%ccHc?nZ^NM1D9-2Cv0%ggI>vCc`P zI7MY%h|3G>dOGnC^ZfJjoIHzT@{Bw!e@0IJgb8`dkmpx3e_WosCF5r|FgD~F65A}@ z8uIjNsxY`zGpQL|aPwqn$W!dyEMFz%MGQP~v20JAn||V=Z%>?`zSM>8zQyf`P4`_c z+g<4FyK>cLyM6i^(KvOgBSFtGZ%!vM&G5EyiWjINZ-8~y%Y3W*q|GfbM5($ihY8+h dIN@XxCwVDa*P+R4+}sW?;XKaG>lZHk@kd)d+4}$h literal 0 HcmV?d00001 From 3309c75b1f2fd1577b617ce8b6f34224f7f491e4 Mon Sep 17 00:00:00 2001 From: kris Date: Sun, 8 Jul 2018 14:56:38 +0100 Subject: [PATCH 3/3] Oops, tabs not spaces --- Makefile | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Makefile b/Makefile index 0c2e77c..2c3d43d 100644 --- a/Makefile +++ b/Makefile @@ -31,17 +31,17 @@ clean: rm -f $(PGM).lst $(PGM): - # First eject the mounted disk in S6D1, which (in some versions of Virtual II) also rewrites - # the .dsk image - osascript V2Eject.scpt $(PROJECT_DIR) $(PGM) - # Rebuild binary - @PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh --config apple2enh-asm.cfg -l$(PGM).lst --start-addr $(ADDR) $(PGM).s - # Update the disk image - java -jar $(AC) -d $(PGM).dsk $(PGM) - java -jar $(AC) -p $(PGM).dsk $(PGM) BIN 0x$(ADDR) < $(PGM) - # Clean up for next time - rm -f $(PGM) - rm -f $(PGM).o - # Insert disk into S6D1, reset the machine and invoke -$(PGM) from prompt - osascript V2Make.scpt $(PROJECT_DIR) $(PGM) + # First eject the mounted disk in S6D1, which (in some versions of Virtual II) also rewrites + # the .dsk image + osascript V2Eject.scpt $(PROJECT_DIR) $(PGM) + # Rebuild binary + @PATH=$(PATH):/usr/local/bin; $(CL65) -t apple2enh --config apple2enh-asm.cfg -l$(PGM).lst --start-addr $(ADDR) $(PGM).s + # Update the disk image + java -jar $(AC) -d $(PGM).dsk $(PGM) + java -jar $(AC) -p $(PGM).dsk $(PGM) BIN 0x$(ADDR) < $(PGM) + # Clean up for next time + rm -f $(PGM) + rm -f $(PGM).o + # Insert disk into S6D1, reset the machine and invoke -$(PGM) from prompt + osascript V2Make.scpt $(PROJECT_DIR) $(PGM)