From 997ab30f44e641377c8f15795d8e5edbc5c7c73a Mon Sep 17 00:00:00 2001 From: David Schmenk Date: Thu, 30 Oct 2025 14:30:16 -0700 Subject: [PATCH] Fix portRead --- images/apple/PLEIADES-2.20-SYS.po | Bin 143360 -> 143360 bytes images/apple/PLEIADES-2.20.po | Bin 33553920 -> 33553920 bytes images/apple/PLFORTH.po | Bin 143360 -> 143360 bytes src/libsrc/apple/portio.pla | 2 +- src/mk4th | 3 ++- 5 files changed, 3 insertions(+), 2 deletions(-) diff --git a/images/apple/PLEIADES-2.20-SYS.po b/images/apple/PLEIADES-2.20-SYS.po index 86909b49e9239442e8966c33b10ad26d0063f185..edebb2abdf8ad071b602d57823a074d0a3460d84 100644 GIT binary patch delta 50 zcmV-20L}k^;0S==2(Wbo0|yQQvjGB#0kQ@j#tR1y2ms>%0A8&J4znrD1p)!egD=jv IFU|qcVSp14`v3p{ delta 50 zcmV-20L}k^;0S==2(Wbo12_!=vjGB#0kQ@j#tSzM2ms>%0A8&(4YMiC1p)!+gD=jv IFU|qcVUYz8rvLx| diff --git a/images/apple/PLEIADES-2.20.po b/images/apple/PLEIADES-2.20.po index c68f24572e3cd00b336bde221fab0ef6cee7989b..f006f4e9d79b9a8ea6e8ae4d017ec44b58893f08 100644 GIT binary patch delta 2345 zcmWmERd^5t7)D_R%#kCcyQMovNjFGJr*wChq=Js_R*)Xj-6h@K-90)y=i)sV|MmC$ zLq30tH3X{)21X1D9u^WfDkLxf5fKTI;q5yFAqt`*8locxVj>u^5F2q27vCe^hLFJc zZ<+=i8kM6}d?Y|ZBtl{&K~f|`a-={?q(W+>L0Y6kdSt*4$cRkHj4a5CY{-rr$cbFY zjXcPUe8`UiD2PG`L17d@Q4~XQ{D=}LiBc$yGAN63D31!Lh)Sr8DyWKT_zBff12s_# zwNVE@qb};9J{q7Q8lf?opedT6Ia=Tsv_vbkMjNz6JG4g!bVMg~Mi+ENH*`l2^h7W8 zMj!M=KlH}{48$M|#t;m}uNa2m7=e)(h0*v8zhex>;t%|ZP>jQPOu$4;!emUrR7}Hk z%)m^{!fedJT+G9KEWls*8w;@r|6nneU@4YiIaXjL!mtYeVl~!aE!JT@Hee$*VKcU1 zE4E=fc3>xVVK??*FZN+S4&WgE!yz2T5gf%a9LEWq#3`J{8JxvAoW})R#3fwD66L9rly%`Zd#aMOiRNc!opjd zHm0p1BGGKBlkfXZo7~W}q2l2Ad&fsQJ|lGsDdY zGt!JQqs?#TcQeL}HGh~tO{f`X#+wOdqM2kSn<-|hnP#S&8D^%LWoDZ>X0DlM=9>lP zFY~uqXcn1&%wn^|EH%r_a2+`KjK%zN{}d^DfT SXY<8;4cHMD{w<(-l>Y$(j~|`@ delta 2345 zcmWmERd^5t7)D_ROmZ|x2+|$G$k8d?DJk9EE!{)9yKAI$s&sdEm()<&b1vR<@n3(> zKlt;v*n_b?e_+JmprIjwBSQiM5D}3O8Q#7_6huWdL`Mw7L=a*jHsT;I;vqf~Yz+xa z_^wI7U9CPX59kHkoVq)3JzkQ^!SBT^z2QX>u0A|28r12Q5LG9wGJA{(+J2Yy0M z+B~TKjP#R_MGs>bI%A*1*q7o{j3aX+Ss-p&K zq84hS4(g&FenEXSKtnV_V>H39Xo_ZNjuvQ%R%nejXp44ej}GXFPUws-=!$OWjvnZV zUg(WJ=!<^nj{z8nK^TnRFa$#}48t)3BQXl2F$QBX4&yNap_qu@F$t3~1yeB%(=h`x zF$=RX2XiqG^RWO6u?UN?1WU0D%drA0u?nlP25YenVOWn1*oaNoj4k*BTd@t>u>(7? z3%jugd$AAuaR7hfFZ_*zIE2GEf}=Qw<2ZqnIEB+VgR?k?^SFSExP;5Nf~&ZO>$riN zxP{xegS)tg`*?tdc!bAzf~R8gK9x?+}jn_!s}-13uytKI03%;@j99 zEdxSfBAQ4hvI#WbnJ6ZziDsgk7$&9(GOl*vY4zUo5^l+n4e5elgk7L?B!(y^aza+927Oe zy$BH+tql$e4GYg5K=PQpCZEY~3YZX6&=fL-O%YSn6f?z52~*OPGNnx!^Rp>y%9-+} zf~jaKnaZY$scNd3>ZXRNX=<6;rjDs=>X~0mebc}+G>uGS)5QF0nwn;&xoKe-L|Aw$ z)7rE#ZB0AV-gGb>O()aYbTM5`H`CqpFg;B#)7$hheN8{p-wZGV%^)+_{APxjp=OvF zZbq1qW|SFi#+b2YoEdK>m{2p({B9z*W|`S$j+txbnfYdcS!foS z#b$|FYL=PhW`$X4R+-gijah5fnJ}~7Y%m+mCbQXWF@Kn?W}De=c9@-Jm)ULhn7wA7 z*>4V*Kh0m}Z*$NbGKb9(bJQF&$IS_I(ws7<%^7pnoHOUm1#{6{GMCL2bJbik*Ub%c z)7&z*%^h>s+%xyh1M|>4GLOv@^VB>u&&><-()?pynb+oxd28O8aP!{$YyLAI%t!Od Sd^TUq*MPlY;okzPMg1S^zaTvT diff --git a/images/apple/PLFORTH.po b/images/apple/PLFORTH.po index 862bb5436dd35c8f940168f3fd0d0a045025ed8b..1f56086652b8ae8602b4b3172de4b14dbbf259e0 100644 GIT binary patch delta 3838 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 TwYGIMFB8!PH70+;j?ei&Q1z>8 diff --git a/src/libsrc/apple/portio.pla b/src/libsrc/apple/portio.pla index c6a805e..ef76d98 100644 --- a/src/libsrc/apple/portio.pla +++ b/src/libsrc/apple/portio.pla @@ -53,7 +53,7 @@ end //export def portRead // return (^FLAG0>>7)&1|(^FLAG1>>6)&2|(^FLAG2>>5)&4|(^FLAG3>>4)&8 export asm portRead#1 - INX + DEX LDA #$00 STA ESTKH,X BIT FLAG0 diff --git a/src/mk4th b/src/mk4th index a5d1a74..82c034a 100755 --- a/src/mk4th +++ b/src/mk4th @@ -21,6 +21,7 @@ cat rel/apple/CAT#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/CAT RE #cat rel/apple/NEWDIR#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/NEWDIR REL cat rel/apple/MATCHFILES#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/MATCHFILES REL cat rel/INT32#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/INT32 REL +cat rel/apple/PORTIO#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/PORTIO REL #cat rel/FPSTR#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/FPSTR REL #cat rel/FPU#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/FPU REL #cat rel/SANE#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/SANE REL @@ -30,7 +31,6 @@ cat rel/ED#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/ED REL cat rel/LINES#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/LINES REL cat rel/apple/HGRFONT#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HGRFONT REL cat rel/apple/HGRTILE#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HGRTILE REL -cat rel/apple/HGRSPRITE#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HGRSPRITE REL cat rel/apple/HGRLIB#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/HGRLIB REL cat rel/apple/GRLIB#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/GRLIB REL cat rel/apple/DGRLIB#FE1000 | java -jar ac.jar -p PLFORTH.PO sys/DGRLIB REL @@ -42,6 +42,7 @@ cat scripts/grlib.4th | java -jar ac.jar -ptx PLFORTH.PO sys/script cat scripts/dgrlib.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/DGRLIB.4TH TXT cat scripts/hgrlib.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/HGRLIB.4TH TXT cat scripts/int32.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/INT32.4TH TXT +cat scripts/portio.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/PORTIO.4TH TXT #cat scripts/fpu.4th | java -jar ac.jar -ptx PLFORTH.PO sys/scripts/FPU.4TH TXT cat scripts/rod.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/ROD.4TH TXT cat scripts/bounce.4th | java -jar ac.jar -ptx PLFORTH.PO scripts/BOUNCE.4TH TXT