Remove dead code and redundant operations, fix corrupt byte in lemonade flash
authorNick Downing <nick@ndcode.org>
Thu, 19 May 2022 15:00:39 +0000 (01:00 +1000)
committerNick Downing <nick@ndcode.org>
Thu, 19 May 2022 15:01:20 +0000 (01:01 +1000)
.gitignore
lemonade/Makefile
lemonade/lemonade.bas.patch
lemonade/lemonade_flash.asm.patch [new file with mode: 0644]
lemonade/lemonade_flash_asm.txt [deleted file]
lemonade/lemonade_flash_patched_asm.txt [new file with mode: 0644]
lemonade/lemonade_tone.asm.patch [new file with mode: 0644]
lemonade/lemonade_tone_asm.txt [deleted file]
lemonade/lemonade_tone_patched_asm.txt [new file with mode: 0644]

index 9fea0fd..cae1803 100644 (file)
@@ -8,7 +8,9 @@ __pycache__
 /lemonade/bootable.dsk
 /lemonade/lemonade.bas
 /lemonade/lemonade_flash.asm
+/lemonade/lemonade_flash_patched.asm
 /lemonade/lemonade_tone.asm
+/lemonade/lemonade_tone_patched.asm
 /lemonade/lemonade_patched.bas
 /lemonade/lemonade_patched.dsk
 /lex_yy.py
index 5b2c323..82f2cd2 100644 (file)
@@ -8,12 +8,12 @@ BAS_TO_TOK=../bas_to_tok.py
 .PHONY: all
 all: lemonade_patched.dsk
 
-lemonade_patched.dsk: lemonade_patched.bin lemonade_tone.obj lemonade_flash.obj bootable.dsk
+lemonade_patched.dsk: lemonade_patched.bin lemonade_tone_patched.obj lemonade_flash_patched.obj bootable.dsk
        cp bootable.dsk $@
        ${DOS33} $@ DELETE HELLO
        ${DOS33} $@ SAVE A lemonade_patched.bin "LEMONADE PATCHED"
-       ${DOS33} $@ SAVE B lemonade_tone.obj "LEMONADE TONE.OBJ"
-       ${DOS33} $@ SAVE B lemonade_flash.obj "LEMONADE FLASH.OBJ"
+       ${DOS33} $@ SAVE B lemonade_tone_patched.obj "LEMONADE TONE PATCHED.OBJ"
+       ${DOS33} $@ SAVE B lemonade_flash_patched.obj "LEMONADE FLASH PATCHED.OBJ"
        ${DOS33} $@ HELLO "LEMONADE PATCHED"
 
 lemonade_patched.bin: lemonade_patched.tok
@@ -35,26 +35,30 @@ lemonade.tok: lemonade.bin
 lemonade.bin: ../orig/Lemonade_Stand_1979_Apple.do
        ${DOS33} $< LOAD LEMONADE $@
 
-lemonade_tone.obj: \
-lemonade_tone.asm \
-lemonade_tone_asm.txt \
+lemonade_tone_patched.obj: \
+lemonade_tone_patched.asm \
+lemonade_tone_patched_asm.txt \
 bootable.dsk \
 ../orig/DOS_Tool_Kit_v1.0_1980_Apple.do
        cp ../orig/DOS_Tool_Kit_v1.0_1980_Apple.do .
-       tr '\t\na-z' ' \rA-Z' <lemonade_tone.asm |\
+       tr '\t\na-z' ' \rA-Z' <lemonade_tone_patched.asm |\
 LC_ALL=C tr '\000-\177' '\200-\377' >__temp__.asm
        ${MKDOS33FS} __temp__.dsk
-       ${DOS33} __temp__.dsk SAVE T __temp__.asm "LEMONADE TONE.ASM"
+       ${DOS33} __temp__.dsk SAVE T __temp__.asm "LEMONADE TONE PATCHED.ASM"
        rm -f ../linapple-pie/Printer.txt
-       tr '\n' '\r' <lemonade_tone_asm.txt |\
+       tr '\n' '\r' <lemonade_tone_patched_asm.txt |\
 ( \
   cd ../linapple-pie && \
   ./linapple -b -1 ../lemonade/DOS_Tool_Kit_v1.0_1980_Apple.do -2 ../lemonade/__temp__.dsk \
 )
-       tr -d '\r' <../linapple-pie/Printer.txt >lemonade_tone.lst
-       ${DOS33} __temp__.dsk LOAD "LEMONADE TONE.OBJ" $@
+       tr -d '\r' <../linapple-pie/Printer.txt >lemonade_tone_patched.lst
+       ${DOS33} __temp__.dsk LOAD "LEMONADE TONE PATCHED.OBJ" $@
        rm DOS_Tool_Kit_v1.0_1980_Apple.do __temp__.asm __temp__.dsk
 
+lemonade_tone_patched.asm: lemonade_tone.asm lemonade_tone.asm.patch
+       cp lemonade_tone.asm $@
+       patch $@ <lemonade_tone.asm.patch
+
 lemonade_tone.asm: bootable.dsk ../orig/Lemonade_Stand_1979_Apple.do
        rm -f ../linapple-pie/Printer.txt
        tr '\n' '\r' <lemonade_tone_disasm.txt |\
@@ -85,26 +89,30 @@ done
 ) >$@
        rm __temp__.asm __defs__.txt __refs__.txt
 
-lemonade_flash.obj: \
-lemonade_flash.asm \
-lemonade_flash_asm.txt \
+lemonade_flash_patched.obj: \
+lemonade_flash_patched.asm \
+lemonade_flash_patched_asm.txt \
 bootable.dsk \
 ../orig/DOS_Tool_Kit_v1.0_1980_Apple.do
        cp ../orig/DOS_Tool_Kit_v1.0_1980_Apple.do .
-       tr '\t\na-z' ' \rA-Z' <lemonade_flash.asm |\
+       tr '\t\na-z' ' \rA-Z' <lemonade_flash_patched.asm |\
 LC_ALL=C tr '\000-\177' '\200-\377' >__temp__.asm
        ${MKDOS33FS} __temp__.dsk
-       ${DOS33} __temp__.dsk SAVE T __temp__.asm "LEMONADE FLASH.ASM"
+       ${DOS33} __temp__.dsk SAVE T __temp__.asm "LEMONADE FLASH PATCHED.ASM"
        rm -f ../linapple-pie/Printer.txt
-       tr '\n' '\r' <lemonade_flash_asm.txt |\
+       tr '\n' '\r' <lemonade_flash_patched_asm.txt |\
 ( \
   cd ../linapple-pie && \
   ./linapple -b -1 ../lemonade/DOS_Tool_Kit_v1.0_1980_Apple.do -2 ../lemonade/__temp__.dsk \
 )
-       tr -d '\r' <../linapple-pie/Printer.txt >lemonade_flash.lst
-       ${DOS33} __temp__.dsk LOAD "LEMONADE FLASH.OBJ" $@
+       tr -d '\r' <../linapple-pie/Printer.txt >lemonade_flash_patched.lst
+       ${DOS33} __temp__.dsk LOAD "LEMONADE FLASH PATCHED.OBJ" $@
        rm DOS_Tool_Kit_v1.0_1980_Apple.do __temp__.asm __temp__.dsk
 
+lemonade_flash_patched.asm: lemonade_flash.asm lemonade_flash.asm.patch
+       cp lemonade_flash.asm $@
+       patch $@ <lemonade_flash.asm.patch
+
 lemonade_flash.asm: bootable.dsk ../orig/Lemonade_Stand_1979_Apple.do
        rm -f ../linapple-pie/Printer.txt
        tr '\n' '\r' <lemonade_flash_disasm.txt |\
index 3a9ff69..1102a13 100644 (file)
@@ -1,10 +1,10 @@
 --- lemonade.bas       2022-05-20 00:21:16.340356477 +1000
-+++ lemonade_patched.bas       2022-05-20 00:34:45.776389102 +1000
++++ lemonade_patched.bas       2022-05-20 00:55:29.548439233 +1000
 @@ -1,5 +1,8 @@
  1LOMEM:14080
 -5GOSUB10000:GOSUB11000:GOSUB16000:GOTO135
-+2PRINT CHR$(4);"BLOAD LEMONADE TONE.OBJ"
-+3PRINT CHR$(4);"BLOAD LEMONADE FLASH.OBJ"
++2PRINT CHR$(4);"BLOAD LEMONADE TONE PATCHED.OBJ"
++3PRINT CHR$(4);"BLOAD LEMONADE FLASH PATCHED.OBJ"
 +4IN#0:PR#0
 +5GOSUB11000
  10REM  <<< LEMONADE STAND >>>
  11530DATA96,16,85,4,128,4,96,4,76,4,128,4,96,16,0,0
  11540DATA114,120,144,60,114,255,1,120,128,120,144,60,128,120,114,60,144,120,171,255,228,255,0,0
  11550DATA152,180,152,120,152,60,144,120,152,60,171,120,192,60,152,255,0,0
-@@ -345,20 +345,6 @@
- 15440IFSC=5THENGOSUB17000
- 15500IFSC=5THENGOSUB17000
+@@ -318,7 +318,7 @@
+ 15151IFSC=2ORSC=7THEN15160
+ 15152IFSC=10THENCOLOR=15
+ 15157IFSC=5THENCOLOR=0
+-15158HLIN6,10AT2:HLIN4,14AT3:HLIN7,12AT4:HLIN22,30AT4:HLIN20,36AT5:HLIN23,33AT6:::GOSUB17000:GOTO15170
++15158HLIN6,10AT2:HLIN4,14AT3:HLIN7,12AT4:HLIN22,30AT4:HLIN20,36AT5:HLIN23,33AT6:GOSUB17000:GOTO15170
+ 15160IFSC=7THENCOLOR=9
+ 15162HLIN3,5AT1:HLIN2,6AT2:FORI=3TO6:HLIN1,7ATI:NEXT:HLIN2,6AT7:HLIN3,5AT8
+ 15170VTAB22:HTAB8:PRINT" LEMONSVILLE WEATHER REPORT ":PRINT
+@@ -342,33 +342,16 @@
+ 15410IFI=1THENFORI=1TOJ:NEXT:GOTO15400
+ 15420POKE768,I:POKE769,J:CALL770
+ 15430GOTO15400
+-15440IFSC=5THENGOSUB17000
+-15500IFSC=5THENGOSUB17000
++15500GOSUB17000
  15510I=FRE(0):FORI=1TO2000:NEXT:RETURN
 -16000POKE13824,76:POKE13825,108:POKE13826,54:POKE13827,165:POKE13828,48:POKE13829,41:POKE13830,15:POKE13831,141:POKE13832,160:POKE13833,54:
 -16010POKE13834,165:POKE13835,48:POKE13836,41:POKE13837,240:POKE13838,141:POKE13839,161:POKE13840,54:POKE13841,165:POKE13842,36:POKE13843,141:
  17000IFSC<>5THENRETURN
  17001COLOR=10:VLIN7,9AT29:HLIN30,31AT9:VLIN9,14AT32:HLIN33,34AT14:VLIN14,25AT35
  17005VLIN5,8AT8:PLOT9,8:VLIN8,13AT10:PLOT11,13:VLIN13,17AT12
++17006CALL13824
+ 17010FORRPT=1TO5
+-17020CALL13824
+ 17030COLOR=7:CALL13827
+-17040CALL13824
+ 17050COLOR=9:CALL13827
+ 17060NEXTRPT
+-17070CALL13824
+ 17080COLOR=5:CALL13827
+ 17090RETURN
+ 18000VTAB24:PRINT" PRESS SPACE TO CONTINUE, ESC TO END...";
diff --git a/lemonade/lemonade_flash.asm.patch b/lemonade/lemonade_flash.asm.patch
new file mode 100644 (file)
index 0000000..1a6a253
--- /dev/null
@@ -0,0 +1,24 @@
+--- lemonade_flash.asm 2022-05-20 00:26:41.208369571 +1000
++++ lemonade_flash_patched.asm 2022-05-20 00:50:06.744426222 +1000
+@@ -3,7 +3,6 @@
+ l.25  equ     $25
+ l.28  equ     $28
+ l.30  equ     $30
+-l.30a2        equ     $30a2
+ l.36a0        equ     $36a0
+ l.36a1        equ     $36a1
+ l.36a2        equ     $36a2
+@@ -58,7 +57,7 @@
+       bcc     l.3621                  90 c4
+       jsr     l.fbc1                  20 c1 fb
+       sta     l.28                    85 28
+-      lda     l.30a2                  ad a2 30
++      lda     l.36a2                  ad a2 30 (should have been ad a2 36)
+       sta     l.24                    85 24
+       lda     l.36a3                  ad a3 36
+       sta     l.25                    85 25
+@@ -69,4 +68,3 @@
+       and     #$f0                    29 f0
+       sta     l.36a5                  8d a5 36
+       rts                             60
+-      dfb     0                       00
diff --git a/lemonade/lemonade_flash_asm.txt b/lemonade/lemonade_flash_asm.txt
deleted file mode 100644 (file)
index a0c43bf..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-BRUN EDASM.OBJ
-PR#1
-DR 2
-ASM LEMONADE FLASH.ASM,LEMONADE FLASH.OBJ
-
diff --git a/lemonade/lemonade_flash_patched_asm.txt b/lemonade/lemonade_flash_patched_asm.txt
new file mode 100644 (file)
index 0000000..ccce0f1
--- /dev/null
@@ -0,0 +1,5 @@
+BRUN EDASM.OBJ
+PR#1
+DR 2
+ASM LEMONADE FLASH PATCHED.ASM,LEMONADE FLASH PATCHED.OBJ
+
diff --git a/lemonade/lemonade_tone.asm.patch b/lemonade/lemonade_tone.asm.patch
new file mode 100644 (file)
index 0000000..fc4505e
--- /dev/null
@@ -0,0 +1,8 @@
+--- lemonade_tone.asm  2022-05-20 00:27:07.748370641 +1000
++++ lemonade_tone_patched.asm  2022-05-20 00:50:41.208427611 +1000
+@@ -13,5 +13,3 @@
+       ldx     l.0300                  ae 00 03
+       jmp     l.0302                  4c 02 03
+ l.0316        rts                             60
+-      dfb     0                       00
+-      dfb     0                       00
diff --git a/lemonade/lemonade_tone_asm.txt b/lemonade/lemonade_tone_asm.txt
deleted file mode 100644 (file)
index 7b4f5b4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-BRUN EDASM.OBJ
-PR#1
-DR 2
-ASM LEMONADE TONE.ASM,LEMONADE TONE.OBJ
-
diff --git a/lemonade/lemonade_tone_patched_asm.txt b/lemonade/lemonade_tone_patched_asm.txt
new file mode 100644 (file)
index 0000000..cdca704
--- /dev/null
@@ -0,0 +1,5 @@
+BRUN EDASM.OBJ
+PR#1
+DR 2
+ASM LEMONADE TONE PATCHED.ASM,LEMONADE TONE PATCHED.OBJ
+