From 34af9d54c7c0dfe19001b0a00fc2a7a74bfd1b89 Mon Sep 17 00:00:00 2001 From: Terence Boldt Date: Thu, 1 Jul 2021 22:34:09 -0400 Subject: [PATCH] Assembler clean-up --- Apple2/27256.bin | Bin 32768 -> 32768 bytes Apple2/AT28C64B.bin | Bin 8192 -> 8192 bytes Apple2/CommandFirmware.asm | 7 +++++-- Apple2/CommandFirmware.lst | 9 ++++++--- Apple2/DriveFirmware.lst | 2 +- Apple2/FileAccessFirmware.asm | 7 +++++-- Apple2/FileAccessFirmware.lst | 9 ++++++--- Apple2/MenuFirmware.asm | 21 +++++++++++++-------- Apple2/MenuFirmware.lst | 23 ++++++++++++++--------- RaspberryPi/Apple2-IO-RPi.hdv | Bin 33553920 -> 33553920 bytes 10 files changed, 50 insertions(+), 28 deletions(-) diff --git a/Apple2/27256.bin b/Apple2/27256.bin index ac35d972c37e030901976468d29fb38a011e86d8..2c7ea15f98168d3fafa4938892dc131557746074 100644 GIT binary patch delta 204 zcmZo@U}|V!+F&ois5jX`;y;L#1d~!=QW{LkfJs>}DF-AsJIMbZWEv(r$R7XzIF?5R delta 204 zcmZo@U}|V!+F&oixNfq8#D5Se2_~h$q%@e60h6*|QVvLNc98!+$TUoLkUszbaPU_J diff --git a/Apple2/AT28C64B.bin b/Apple2/AT28C64B.bin index b2e9f5f0993ac1b1473c1196520c07f6ef92e9e6..55e89c368f8f91fd9ebff32307c56341b8551832 100644 GIT binary patch delta 55 ocmZp0XmHqIFTtoc*+Jqzh?E4AQeaXVOv->sSuiOFCgl$R01vbiEdT%j delta 55 ocmZp0XmHqIFTuEOvV+8b5Ge^JrNE>#n3MsNvS3mUOv)bs0C%((EdT%j diff --git a/Apple2/CommandFirmware.asm b/Apple2/CommandFirmware.asm index 0986782..e419c29 100644 --- a/Apple2/CommandFirmware.asm +++ b/Apple2/CommandFirmware.asm @@ -24,6 +24,9 @@ ExecCommand = $05 LoadFileCommand = $06 SaveFileCommand = $07 +InputString = $fd67 +PrintChar = $fded + .org SLOT*$100 + $C000 ;ID bytes for booting and drive detection cpx #$20 ;ID bytes for ProDOS and the @@ -66,7 +69,7 @@ endSendHelp: lda #$a4 sta $33 GetCommand: - jsr $fd67 + jsr InputString lda $0200 cmp #$8d ;skip when return found beq GetCommand @@ -93,7 +96,7 @@ DumpOutput: jsr GetByte cmp #$00 beq endOutput - jsr $fded + jsr PrintChar clc bcc DumpOutput endOutput: diff --git a/Apple2/CommandFirmware.lst b/Apple2/CommandFirmware.lst index f168514..1ef5036 100644 --- a/Apple2/CommandFirmware.lst +++ b/Apple2/CommandFirmware.lst @@ -1,4 +1,4 @@ -ca65 V2.17 - Raspbian 2.17-1 +ca65 V2.18 - N/A Main file : CommandFirmware.asm Current file: CommandFirmware.asm @@ -28,6 +28,9 @@ Current file: CommandFirmware.asm 000000r 1 LoadFileCommand = $06 000000r 1 SaveFileCommand = $07 000000r 1 +000000r 1 InputString = $fd67 +000000r 1 PrintChar = $fded +000000r 1 000000r 1 .org SLOT*$100 + $C000 00C700 1 ;ID bytes for booting and drive detection 00C700 1 E0 20 cpx #$20 ;ID bytes for ProDOS and the @@ -70,7 +73,7 @@ Current file: CommandFirmware.asm 00C739 1 A9 A4 lda #$a4 00C73B 1 85 33 sta $33 00C73D 1 GetCommand: -00C73D 1 20 67 FD jsr $fd67 +00C73D 1 20 67 FD jsr InputString 00C740 1 AD 00 02 lda $0200 00C743 1 C9 8D cmp #$8d ;skip when return found 00C745 1 F0 F6 beq GetCommand @@ -97,7 +100,7 @@ Current file: CommandFirmware.asm 00C768 1 20 9B C7 jsr GetByte 00C76B 1 C9 00 cmp #$00 00C76D 1 F0 06 beq endOutput -00C76F 1 20 ED FD jsr $fded +00C76F 1 20 ED FD jsr PrintChar 00C772 1 18 clc 00C773 1 90 F3 bcc DumpOutput 00C775 1 endOutput: diff --git a/Apple2/DriveFirmware.lst b/Apple2/DriveFirmware.lst index efb6b7a..7814de7 100644 --- a/Apple2/DriveFirmware.lst +++ b/Apple2/DriveFirmware.lst @@ -1,4 +1,4 @@ -ca65 V2.17 - Raspbian 2.17-1 +ca65 V2.18 - N/A Main file : DriveFirmware.asm Current file: DriveFirmware.asm diff --git a/Apple2/FileAccessFirmware.asm b/Apple2/FileAccessFirmware.asm index a9baea1..393e2eb 100644 --- a/Apple2/FileAccessFirmware.asm +++ b/Apple2/FileAccessFirmware.asm @@ -24,6 +24,9 @@ ExecCommand = $05 LoadFileCommand = $06 SaveFileCommand = $07 +InputString = $fd67 +Monitor = $ff59 + .org SLOT*$100 + $C000 ;ID bytes for booting and drive detection cpx #$20 ;ID bytes for ProDOS and the @@ -50,7 +53,7 @@ Start: sta $33 GetFilename: - jsr $fd67 + jsr InputString LoadFile: lda #$00 @@ -99,7 +102,7 @@ NextByteFinal: cpy BlockLo bne NextByteFinal ExitToMonitor: - jsr $ff59 + jsr Monitor SendByte: pha diff --git a/Apple2/FileAccessFirmware.lst b/Apple2/FileAccessFirmware.lst index 1a3de04..6562f9a 100644 --- a/Apple2/FileAccessFirmware.lst +++ b/Apple2/FileAccessFirmware.lst @@ -1,4 +1,4 @@ -ca65 V2.17 - Raspbian 2.17-1 +ca65 V2.18 - N/A Main file : FileAccessFirmware.asm Current file: FileAccessFirmware.asm @@ -28,6 +28,9 @@ Current file: FileAccessFirmware.asm 000000r 1 LoadFileCommand = $06 000000r 1 SaveFileCommand = $07 000000r 1 +000000r 1 InputString = $fd67 +000000r 1 Monitor = $ff59 +000000r 1 000000r 1 .org SLOT*$100 + $C000 00C700 1 ;ID bytes for booting and drive detection 00C700 1 E0 20 cpx #$20 ;ID bytes for ProDOS and the @@ -54,7 +57,7 @@ Current file: FileAccessFirmware.asm 00C71B 1 85 33 sta $33 00C71D 1 00C71D 1 GetFilename: -00C71D 1 20 67 FD jsr $fd67 +00C71D 1 20 67 FD jsr InputString 00C720 1 00C720 1 LoadFile: 00C720 1 A9 00 lda #$00 @@ -103,7 +106,7 @@ Current file: FileAccessFirmware.asm 00C76D 1 C4 46 cpy BlockLo 00C76F 1 D0 F6 bne NextByteFinal 00C771 1 ExitToMonitor: -00C771 1 20 59 FF jsr $ff59 +00C771 1 20 59 FF jsr Monitor 00C774 1 00C774 1 SendByte: 00C774 1 48 pha diff --git a/Apple2/MenuFirmware.asm b/Apple2/MenuFirmware.asm index c277e23..5ee465a 100644 --- a/Apple2/MenuFirmware.asm +++ b/Apple2/MenuFirmware.asm @@ -25,6 +25,11 @@ LoadFileCommand = $06 SaveFileCommand = $07 MenuCommand = $08 +Wait = $fca8 +PrintChar = $fded +Home = $fc58 +ReadChar = $fd0c + .org SLOT*$100 + $C000 ;ID bytes for booting and drive detection cpx #$20 ;ID bytes for ProDOS and the @@ -52,13 +57,13 @@ Start: sta $36 lda #$fd sta $37 - jsr $fc58 ;clear screen and show menu options + jsr Home ;clear screen and show menu options ldy #$00 PrintString: lda Text,y beq WaitForRPi ora #$80 - jsr $fded + jsr PrintChar iny bne PrintString @@ -67,13 +72,13 @@ WaitForRPi: rol bcs OK lda #$ff - jsr $fca8 - lda #$ae - jsr $fded + jsr Wait + lda #'.' + jsr PrintChar jmp WaitForRPi OK: - jsr $fc58 ;clear screen + jsr Home ;clear screen lda #MenuCommand ;request menu text from RPi jsr SendByte @@ -82,12 +87,12 @@ DumpOutput: jsr GetByte cmp #$00 beq GetChar - jsr $fded + jsr PrintChar clc bcc DumpOutput GetChar: - jsr $fd0c + jsr ReadChar sec ;subtract ascii "1" to get 0 - 3 from "1" to "4" sbc #$b1 asl ;put in top nibble as EPROM page diff --git a/Apple2/MenuFirmware.lst b/Apple2/MenuFirmware.lst index bbc2edb..e6e7ba8 100644 --- a/Apple2/MenuFirmware.lst +++ b/Apple2/MenuFirmware.lst @@ -1,4 +1,4 @@ -ca65 V2.17 - Raspbian 2.17-1 +ca65 V2.18 - N/A Main file : MenuFirmware.asm Current file: MenuFirmware.asm @@ -29,6 +29,11 @@ Current file: MenuFirmware.asm 000000r 1 SaveFileCommand = $07 000000r 1 MenuCommand = $08 000000r 1 +000000r 1 Wait = $fca8 +000000r 1 PrintChar = $fded +000000r 1 Home = $fc58 +000000r 1 ReadChar = $fd0c +000000r 1 000000r 1 .org SLOT*$100 + $C000 00C700 1 ;ID bytes for booting and drive detection 00C700 1 E0 20 cpx #$20 ;ID bytes for ProDOS and the @@ -56,13 +61,13 @@ Current file: MenuFirmware.asm 00C71B 1 85 36 sta $36 00C71D 1 A9 FD lda #$fd 00C71F 1 85 37 sta $37 -00C721 1 20 58 FC jsr $fc58 ;clear screen and show menu options +00C721 1 20 58 FC jsr Home ;clear screen and show menu options 00C724 1 A0 00 ldy #$00 00C726 1 PrintString: 00C726 1 B9 B8 C7 lda Text,y 00C729 1 F0 08 beq WaitForRPi 00C72B 1 09 80 ora #$80 -00C72D 1 20 ED FD jsr $fded +00C72D 1 20 ED FD jsr PrintChar 00C730 1 C8 iny 00C731 1 D0 F3 bne PrintString 00C733 1 @@ -71,13 +76,13 @@ Current file: MenuFirmware.asm 00C736 1 2A rol 00C737 1 B0 0D bcs OK 00C739 1 A9 FF lda #$ff -00C73B 1 20 A8 FC jsr $fca8 -00C73E 1 A9 AE lda #$ae -00C740 1 20 ED FD jsr $fded +00C73B 1 20 A8 FC jsr Wait +00C73E 1 A9 2E lda #'.' +00C740 1 20 ED FD jsr PrintChar 00C743 1 4C 33 C7 jmp WaitForRPi 00C746 1 00C746 1 OK: -00C746 1 20 58 FC jsr $fc58 ;clear screen +00C746 1 20 58 FC jsr Home ;clear screen 00C749 1 00C749 1 A9 08 lda #MenuCommand ;request menu text from RPi 00C74B 1 20 6A C7 jsr SendByte @@ -86,12 +91,12 @@ Current file: MenuFirmware.asm 00C74E 1 20 88 C7 jsr GetByte 00C751 1 C9 00 cmp #$00 00C753 1 F0 06 beq GetChar -00C755 1 20 ED FD jsr $fded +00C755 1 20 ED FD jsr PrintChar 00C758 1 18 clc 00C759 1 90 F3 bcc DumpOutput 00C75B 1 00C75B 1 GetChar: -00C75B 1 20 0C FD jsr $fd0c +00C75B 1 20 0C FD jsr ReadChar 00C75E 1 38 sec ;subtract ascii "1" to get 0 - 3 from "1" to "4" 00C75F 1 E9 B1 sbc #$b1 00C761 1 0A asl ;put in top nibble as EPROM page diff --git a/RaspberryPi/Apple2-IO-RPi.hdv b/RaspberryPi/Apple2-IO-RPi.hdv index d87bf2580c5d242c2289b21a30bad2989b2fcb70..5436402436ab11ffa748a8d89145843d682aa5dd 100755 GIT binary patch delta 2386 zcmXBURg_Rw07hX37`l<}E{86M?rsr~66r3bW9aVgMv?9=0qO4UM!M6zoriD#=kczy z*0~{{zr_r}s-VE=H#3Kgoi@zvFeyC@2oBsB92gK76p(dF(VPL_oLr%kJ9P4dPTtVT z7drW!Aw_=(Kv;xBcmyH>A|etZBMPD-8locxVj>n|BM#!?JH$hLBtSwWLSiIAQY1ri zq(DlfLTaQzTBJjIWI#q_LS|&a_XvXDoekNM138fkxseBXkq`Ot1A6bB~c2cQ3hpE4&_k+6;TP5Q3X{|4b@QtKcXgnLM_xr9sG>CsE7J!fQI-5jqocP zqY0X#8JeR7TA~$NqYc`k9onMKWK6+SOv7}{z)Z}-Y|O!2%)@*vz(Op-V*G(W zu>^l%DVAY5R$wJoVKvrZE!JT@Hee$*VKcU1E4E=fc3>xVVK@H99_+Q~(IEVANfQz_<%eaE8xQ6Svft$F6+qi?fxQF|AfQNX5$9RH& z@f6SS953(^ukadg@D}gz9v|=#pYR!9@D<-i@b<^Rgf-zzcoS$Mn208liEN^ns3w|; zZep02CYFh9;+VMRI}^{uHwjEalgK1CNla3c%p^A{OiGi=q&8_xT9eMCHyKPulgVT@ zSsQ}(rnD(z z%9?Vfys2O+no6d!sbZ>{YNooWVSY3<%}=J5scq_*pG{p;&(t>!OhfaFX=HvijZG8N z)HE~AO$*b~v@)$t8`IXbGwn?W)6sM?oy~9NchkjmHQh{i)5G*My-aV@$MiKJrl09= z2AF|nkQr=-n4xBv8E!_Hk!F+`ZN`|fW}F#sCYXt4l9_C#n5kx(nQms7nP!%mZRVJ{ zW}caE7MO)*ky&j1Fn^jQ<}b6&*tU(QGoC%@(uOY%|-< z4zttjGP}*+W{=rx_L+aoesjPaG>6P#bHp4q$INka!kjdx%xQDRoHggnd2_*BG?&a} zbH!XW*UWWu!`w8t%x!bW+%@;iee=LPG>^<<^ThmXo|6BE-rMpYI8|m%_0j0Y^x+J8-d)1R*Gd_j3F3` zVHl1P7>Q9BjWHODaTt#Yn21T3j47CkY4{D(F#|I(3$rl?b1@I|u>cFP2#c`vcx3cq7D)?h8xVLdirBQ{|(wqPr^VLNtUCw5^s_FymeVLuMwAP(U$j^HT%z%d-h z3H*t_a1y6*8fS18=Wreua1obq8CP%>*Ki#-a1*z18+ULQf8!qR;{hJx5gy|Sp5hsv z;|2b~OT5BsyurVCi+6aB5BP{r_>3?3if^NM`{Q83ns6q(2{aK*L=(wGHc?De6U{_7 zF-%Mo%fvQuOk5Ms#5V~{LX*fOHc3oUlguPHDNIU}%A_`FOj?u9q&FE%Mw7{8Hd#zo zlg$K~>?ViFX>ys|CXdN$@|pamfGKGHznoxC-Osd)82G29Ze_G+5BX>n69Rq>27+Mp5|xsi}}^`GQCY7)7SJf{Y{7&U{GOTr!u<6?4^G zGuO=xbJN^1x6K`M*ZghnnfvB}d1xM)$L5K7YMz