From 991f5788af0b27415a7555f08849e81c43f26c38 Mon Sep 17 00:00:00 2001 From: Terence Boldt Date: Fri, 15 Jan 2021 22:58:13 -0500 Subject: [PATCH] Fix full byte firmware --- Apple2/Firmware.asm | 24 +++++++++++++++--------- Apple2/Firmware.bin | Bin 2048 -> 2048 bytes Apple2/Firmware_27256_EPROM.bin | Bin 0 -> 32768 bytes Apple2/driver_assemble.sh | 6 ++++++ 4 files changed, 21 insertions(+), 9 deletions(-) create mode 100644 Apple2/Firmware_27256_EPROM.bin diff --git a/Apple2/Firmware.asm b/Apple2/Firmware.asm index cfbb583..c60f7a6 100644 --- a/Apple2/Firmware.asm +++ b/Apple2/Firmware.asm @@ -147,31 +147,37 @@ SendByte: pha waitWrite: lda InputFlags,x - asl ;Second highest bit goes low when ready - bmi waitWrite + ror + ror ;Second lowest bit goes low when ready + bcs waitWrite pla sta OutputByte,x + lda #$0e ; set bit 0 low to indicate write started + sta OutputFlags,x finishWrite: lda InputFlags,x - asl - bpl finishWrite - lda #$FF + ror + ror + bcc finishWrite + lda #$0f sta OutputFlags,x rts GetByte: - lda #$b0 ;set read flag low + lda #$0d ;set read flag low sta OutputFlags,x waitRead: lda InputFlags,x - bmi waitRead + ror + bcs waitRead lda InputByte pha - lda #$f0 ;set all flags high + lda #$0f ;set all flags high sta OutputFlags,x finishRead: lda InputFlags,x - bpl finishRead + ror + bcc finishRead pla end: rts diff --git a/Apple2/Firmware.bin b/Apple2/Firmware.bin index 1b61fbdbdcaac89dd150f693d9ffe5a1d32507d2..02b250daa9660e160dd470acaed472f1a41e6e33 100644 GIT binary patch literal 2048 zcmd7NElUJJ9LMop&miJcG)@=H2Gemg2D)bRzaNSnQQkF zHkq#oYB~2Ov+S-QY!P(;iz$ z`(%^v#|w8mx83Q|IG(PJ=ca=#c97i6Ml%+zC!>gU$UP^XUkzV9pP#(5I6vPGFn04X zipU9n>*vGv@gXlSdw%kfu({tIMMp#T)XSgI?Y*4wvbkg=uP>ipue4_eJ`1>VF+a!QZR9nKbrO13xjMs-NH|_z8Z3p9(*f{(8sJ@w|hd+Td3W{ECsP z`W5^Neg(gRUlo2;`s*D>$MX(;)ds(A;Ma_F)vw{#@N4)r{JQY#(qHd5I-Ym%>o)jJ z1HWNps(u5%f#1My;5UWel>U0h(eb>4-?YJR8~80FTlHJ`E&LXK3%@P=w)EFKj*jOY z{I(5#*TC->xvJm6@8EavJNRAUccs7HadbTI;CF5C`v!i`$XERyeh@LaLvF8>ryk(+1c|1z^=Hkz%@UZmscM)Lah`}t^mzkf}i zO*c=|(R63JJKajxrrXJS_Hw-TW%Fd?>cPeM>dD2*)z0(u)#UT-@ohSKIyoMttI27W zblIoFA6<6u@>e?U-=FO0vD-h6N6DM)=XU>Sw)F>nxXRb?n4C}-t13C|9q{k&z9!T zm*CHnF8BF!@#o^t#h;5mpY!Jn{xHrc&e%Bd=P~dXOYj#-SNQye_zUqD;xEKs%=wE2 ze;8*JXKbAKix~LJCHTvvD}DY_{H6Fy@t5K+=ltb@Ka4YqGd52AWeoh)68u%tRX%?u z{!09n_$%>ObN*_~3I00iYM;Lre=Yu6{I&S&Ie)$2595sDjExh2 z9Rq)}1b>rsjnChRzY%{U{zm-GoWEJ{hjB)6#>R=iiGjaeg1=3=*5_}<--^E#e=GiW z&fhNh!#JZjW8=i%#=y_|KkPrO|E&N1|9`lyv;OP*kM-Z~e^~$B{*U$F_XO5|`49X5 zyYC74AN&6Z&VShd5Bo3sfA;^r|Ay;2`+xTTod0wFZ}&f(|GWK9cuv6izxC|Cj%g|9AdN{a*zBOa0%l z|5E=){h#l@;kr)!pZu5lKkL8L|2h8+`veU2|GocF|L^>d`u_<0kNW>%|D*n&`hVa5 z!n%Iy|K)$Su8;md`v08&g?R${|8)LG|DW@}Du(_i`u~RghyFkM|9t-m_x1Gu%YUf< zv*%yb|2hAm{;$vfx;X*#|I7dA|9AdJ|9=GMfAs$k`!D_f^#A+*8?Nj0|I2^r|F`~2 z|G)F!uuqWsKlvZ^f6o7?|BJx?sQ(-GKkEOe|MUHi`ai#}pZ|7HHa^d`Tr64AM^i*{g3(o%>VcOFRbe$|1bX||8M<|{J- Firmware_27256_EPROM.bin