Add a convenience script for each game showing how to launch it, with comments
authorNick Downing <nick@ndcode.org>
Thu, 26 May 2022 07:52:26 +0000 (17:52 +1000)
committerNick Downing <nick@ndcode.org>
Thu, 26 May 2022 07:52:26 +0000 (17:52 +1000)
lemonade/lemonade.sh [new file with mode: 0755]
little_brick_out/little_brick_out.sh [new file with mode: 0755]
ribbit/ribbit.sh [new file with mode: 0755]

diff --git a/lemonade/lemonade.sh b/lemonade/lemonade.sh
new file mode 100755 (executable)
index 0000000..7104290
--- /dev/null
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+# the interpreter is now smart enough to run the unpatched lemonade game
+# - it can detect FOR/NEXT delay loops and convert them to time.sleep()
+# - it can detect the POKEd sound routine and emulate its functionality
+# - it allows GR screen to be written by positioning cursor and PRINTing
+../applesoft_basic.py lemonade.tok
+
+# the patched lemonade game is also available, with following enhancements
+# - music has been edited slightly to reflect what I think was the original
+#   designer's intentions: tones are quantized to the nearest musical note,
+#   and maximal-duration notes are lengthened to a multiple of the others
+# - the intro sequence is smoother as the cup appears to move at a constant
+#   rate, and "plip" sound effects are changed to a musical (semitone) scale
+# - the tone and lightning-flash routines are loaded using BLOAD rather than
+#   POKEd into memory: makes Applesoft code shorter, assembly code editable
+# - delays are slightly shorter, and are generated using the 0 Hz tone call
+# - simplified by using inline code instead of DATA statements for weather
+#   music, avoiding a need to synthesize the missing RESTORE <line number>
+# - uses Applesoft commands for all GR screen drawing, for easier emulation
+# - still works on real Applesoft, but timing is slightly off because the
+#   processing time (negligible on the PC) is added to the explicit delays
+#../applesoft_basic.py lemonade_patched.tok
diff --git a/little_brick_out/little_brick_out.sh b/little_brick_out/little_brick_out.sh
new file mode 100755 (executable)
index 0000000..ca495e1
--- /dev/null
@@ -0,0 +1,2 @@
+#!/bin/sh
+../applesoft_basic.py --joystick=/dev/input/by-id/usb-Madcatz_Mad_Catz_V.1_Stick-event-joystick,swap_axes,flip_y little_brick_out_patched.tok
diff --git a/ribbit/ribbit.sh b/ribbit/ribbit.sh
new file mode 100755 (executable)
index 0000000..3918706
--- /dev/null
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+# launch ribbit in one of two ways:
+# - with ../terminal/ribbit.sh (cwd must be ../terminal for BLOADable data)
+# - with ../terminal/busybox.sh (cwd must be ../terminal for BLOADable data),
+#   and then inside the busybox terminal, do cd ../ribbit and run this script
+
+../applesoft_basic.py --hrcg --joystick=/dev/input/by-id/usb-Madcatz_Mad_Catz_V.1_Stick-event-joystick,flip_y,swap_buttons ../ribbit/ribbit_patched.tok