From a46eb9165c989a28ad8c67f0621c33b9c6b924e5 Mon Sep 17 00:00:00 2001 From: Bobbi Webber-Manners Date: Sun, 15 Jan 2023 20:35:55 -0500 Subject: [PATCH] Implemented VDU14/15 paged mode. Fixes #241. --- applecorn.po | Bin 819200 -> 819200 bytes auxmem.vdu.s | 32 +++++++++++++++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/applecorn.po b/applecorn.po index 64f0d301d08dd131973ac91ecdbd359948b6143f..39fee75e698ad578d8813d0f1ed14820fa9db359 100644 GIT binary patch delta 13504 zcma)j3qTXc*6?PRN7#TwMUC(A(JQE}R9od*5K*w9#zzIMui7ouHndfdM2OVhYdfWf|+3fC_nKNh3 zIdkUB%$bE{$FuBs`x`#Ws1?Mxr-p|R>?HzW;GgL}|C8<`gPVk#f*YrO;r4^uA8t9^ z0ejMY=wCnS^*~oNg>)eyd>_}UL&UzrfA9-8(*FoedJ)}Av}w5_ooyKRjn1~wN~qAM z2{zrs9GjHGcWk7G3^>Z&rfiAa9V$MLYo=`9aw1MPQRqc};^*{}WWfAAD?XWrMb=5S8+?c=|_K zDIc(zW}?nj>nlF1;42Ij+bh0p|7Ybdm8w&kQ|Z6`>y)YDi;Az#kY`7peevwBGg%dl zr#`KIwW_4*$k|~PW2*|P9H)-+`I~9|vmaF2kn2Tto+}KAlxF?Ok?!zmD5}jK75<#F zw`&rB;p6RpID5M8vZDpUp?o5qMK}35TWFQ+Ca>K>&sjR+++0c%Si=;KJwm4VWNM;L zW=8DQ^snij9-DFR(Hzxd7^+7xT;-Xny{LZ;-+L?lw(&$Vsibm}Nd~y|5r+#~$cTn7 zNbcRr#$-}RCXc^cX%0efwF!&KFqwD{BN9b2+17;^ABls2uelKh>yOzDlyyaRBlSbJ zOjbn5fQ68QLIHVvGb#F>C?MGo!A2hcf)oQ!*hpb3$rX@jW+l)tdWlRhSc5Q;*Z+jb zR?^%@*eq2_ti*)2kYYfijbs{uaw}STy0h^6-@0-2gu$x*GlJ+L2_GQQi_rw0>JnwL z!McV|_<|lWqBr`e8(HAm!>^a!;Rfpge$yB99GQ#1`UM?1p)x7Q*AZH>x|};g+GNOD zVS9z!OLE1e&BFaaqTOfEFK4-V4$zm9()7UHx{sfqLx(EA{|)E)qKoHP-?E@t&p51pHX`>I7)z}-77aLSCEzvlJRtc?;DpP9iwyHubH9*Msg`qs z+}?73G~qHM93-6%JEa+LHY}JsP8OD=mvhfJ81w?hqR{zEjD-{q@nlzNwjcUT~03r8r91N797=(*=O9$~0Ji=RYl^LwNmmy6@m4XMucJaL|#nPMs#7H=x~duf3g=18VA5j@!Wg0pJ$kuN4ZM_GtOjOaymDVA;nC@BVBViq zHdrfg_A8Ij9ROX@uxw%Xotwpe2J0575@oRN!@%Gk@{5?gfQy(tXuEv}T}yAdY_Nt&M#M8; z(ILH%;WvgLipt3v5=7isqcQVA`SifKnKjuT*Vt-Jr%~+hc@?T;##E7aGTFy;(n44X zZRlK|I`}j9-&1k?;~MdaJr%iGHNwX=d_`U9vCJCREk-JE1(sxW=JAGndWc^tZh5)X zGH=hPM;c>)|2Xfo`s)MXJ5J?S6cYq`=J)LcQCmz(5DAcv1X%#`lOQWVatWF$t1YG_ zXc|C)5>x|F4+;7mAf*JcWNmRT33?x(5D7w5ZE;@$O@-!$1E`WR9RLlGpaTF6k|4&X zws?pHCHd5T9nr=_Tt|hH1INxJmH+JD^s|fp-%?=SJyKwfJyKvkJyKxqJW^nuJW^mr zBq{h|1>l_jy=O`RJx(?^_V?u#HaWNNQsY(<22UZqvz&C0E*V`=zm>EP5@^tMDg1_2lqp=)DN>5wWs$-g|T99ZCG$&34ieu(q8)s zWv}Jv8pfMNK$gs2%XrYJ!jjJ(L&I78kV1OkLjIy>^j-6eDWFhL?9IE9lwIe^20|g) zFsh*Vv&Yf9<#nMOtOeK?kMN7F2N(7NUk+{@Z2c?-2FMEd`a&9!{crOfV0xIQyO^1eLTy?s^_+PrJS#=f0J?_|M zTqk6>Q|1~kiIU~7|Bm3~`tM|1fc`rePI`}1xhUbuLEX5PD5d;?8jQxHQbK{7lzbB^ z;8*RWhsa`iZYSN(Zw~H)#ZniLP~?C-OL&yB?RL`|Ig?oD^%we)L+*S5fY>so?z-IAbF*PTK3 zzNP~k93Skb3rmJwQbwIx_UAhov2Ts9J;dQ-SLR(B7`6J^BKLa>T%oFq0Vk3vu=@)zw36XbC~^)4^dkalx#Th z!LQo*w(tOS>DpwG(#*bQb92okq|l9PHiEG>T1d@#w@nuDb~738r+O3qOb1YGecl0s zH4!W4Wl1@{&~NAhA5uh*8e*{2A!mC8`k+pgcPM$3=}_Kbn6C~WDRrGRSl#@hB07H6 znYxh&!u>R<*EQGNmSI-PMj+>P+Zfd7w)8_kT}S2DQR?-Pm%3`31| z78N|862>UM4!uq~b{)#09HHv4q3F%)rQLF9?P&N53r279%5Ug_Axm+M((V{&DIfg} zJxsQgfAt&s+2{9M7yV0iUk4^i%ape?XX@s?G))sLBawr!Qr!rn#`X`(T#bwkX&T+2 z3vm!K)MM99V};D;f8GT~eGdqSfKs0CD*minajc#09{^?jEilkuJ$P!&ztS^K;P%<4c1K<0S}*}c6v~J-<#H1mYb-wUE-;TFz=L^u?j$mP?TV~ zsVQyW;QXM>bQB40Yovs_ywuP6x3a$-wU%1sNb$fLhq3tZUG&f};NtJgox5&3gT%h2 zVHd4F=XYOs`Iqdu?&~x;%al#wm-C$Q4ue(37w@8n@SAqggZ!Zm$jjiI2`Wg0fd*WG zz>kk3Cx-Hjx&^$?Zh9gf?2)_aA-#9jOU2oQRGi6xE%Ga&K(>?5+D#AccfLNCkimXV zt9}9gP(?i_muXQ2@7PU`TjbNAE}cyrHyMEH#BZ+{5PbF8;>>CHr{FUz4Z)S{iNqJx5D7PNBu3`Br__S zro|-0Pj?T!Jv}DT1gZJ)npl=;o({wM!|8XXYvv@xxnI5$8>fj&jN35%PVD?ybJ>G; z;ugkDXOA|=E&NE)6hC{$oJ>WNW=>4(d&h6jn(3)IXKv!h(M|K_&;CHsG%s#;%&fR9 z49uFdAZ|nKorIVLaqsc{7Cq&y#mEl(~1+Mc%vik~^=49ah^kB4{!Y@}plE=lH6B+BOx z?V(4IPd4$__t4|!cZL@rB%uju(v-O(&;d6(?6zM5f1{a%g+qhOt>G3Cd+if~9~&No zuDPuN78ZTs1_Y8Ccp;l`%RQHo*W?AW( z#p*)veBkY^OZoI4=xMS#{)ZpvffKJb0~?HOD)3X_YQem*ffF4NJDPkK4ZCah<(4?? z&vQ#1jEx;M(XqTUpI7`yPcbI7ENfW~R}x&W+?74pY!wY%dzm>n$)|K-{ zo3?FM+b1pA?RodpTh_O{2iMTb-%q|IQQIIr%Un&at{RU(qaQYNy!!Q)cki9Q*Lcqj z7tu1d#onf9FRgY~msKCFK32Vizx^W}t4g?QYAc?1*VLMK3){Ed*Fx+PBTxoE`zN}e zd}E8%9jYCh!LR&@o*~=A|K}%q_^g<;PsLJ)ulXKKCJcD;UE-FQG*5=FgJDoyi`{2; ztJxRzY_a%!Dl&PkJK7A^B0Q@-y6+1)h~oGWCA7Bxx0aR~f6>SGlcfdL1Te@N+iiz2 z%xAjC{{lQTV4z_9=8Zy8|cn4@NY2E@{JgwEa>NT%EaJ6M# zX%HjxZ^{jvkAou}x#RSOc?}U)>I=l78|w2L7FU%->(yoO$epVH&~;A>)m!T_j?|BL zUFmEj=L3={EE%T<+f|vVcgN`={!*xAgbzrupEWr915c~~IO9w9(PNa*JWTP8>&O#Y z68z0a{QZ6O3$m~H=??nu!~WC0SBgMnHZI6@I0)beD)Gws$@sdGW3L>5+Y`X;@jMb&ejcdPZHfxGKY7J;P5pK#!8G z=a(Fy$ICwAvk%bo0vp>irTHF~X>EM{0eZHqjeqVS9Sbk^AU$$S#=R8EX53rqdqu_M zHLEv6K=uJx^1W91qhWk#!ZLvtvz{10hyB$)X-K+RbCpjEr@ zZIXmtMJ7g0d?Zd0auBcmq2^R;x}^iVTed@^?+A*UH*e0o$%wGXc0CaN!1sW$Fj*aM zb|k~KU+jOc<8En7kNfP^@2+gP^2!zW)MXu>f3 z8rwD3+ck;@08ivPG(SGj>?_yw?$AtophA3NY@y^fXf0F)6iHefzqewc3UIVfRN!qW*+2`?lpN?4JgPxvQ)?g(vo zA}uj{ZDLM(BDDV=nLCZDt7l1bb6LqW$~n$;UntUC}Uep(?jJdyDy4f3sZm3 zgN^Bl?2nk%JsldB#)p^Ee=~lemcQNcPytC;0UezRfbg_eF(HrT|By|{goO@au|s&- zA-v*%qYW=Afl*yuBqDM?N<>3D?EXmmPUA<34DvTJTZ`Uvz;7XX&bSJlT#ZJgpyyVh z;1qOiwT7c!>!ylq(2`*kl|**`{(b3W(bM zP{cCL$oYR&S>vtU$wu31%*pW-#INNN7j(~zK&MjdY3R@zbAXVz05;ESSOS{l<}UzT zCn-)45_yZ0RvF*ciFC~cpGl+d<=XGX3r$$t$uyv zjiU`Z`;+WBl^j+mLSv^PLd9)SX~G3>QjL>*dl@~@2p!l@t9G&?<>`|`&^xVF%55=f zt)}=Tt&?^2%oKf5@nZWVyjDlAEVV!7;q;8eX{3i!P+F%Loq`4c&qZe>hR46`?FbQD z*5xkCvKgnjY6-7}Sc%Ope+YO-rHOs3)SfY9@2v$@x_rU!M5VQsDSx*S;y10W_OHE_ z)GwF^3HvC{UvD9cOQ|h#{fEjH;NgUy-b`t}UkJjH<|i=5Z&*KNr*!tW1qWpc7xq)8 zr};j|=rO@pbzsuhp#!)ZIy5egpL2}<8#!?ypMH#vFven@uXOS3Z8*zIuK=%g1j6hU zQd$)JNd=BDXFb-E9TxE3YU}>I9pgeSP!G}p@8t@8fqfzXzxo02WP}i;Z;eZdgz5tQSd}J08~Z-d4=Gm1}<@&3&w$<1ISPq{UtdA>)Lf zQ4cv*(nVSc2zRN$^T{zQetOo=!%3?>RBjMHcEB$uz#+)>pA$lW{&Sf?>pv&;RF2#s zyoY}fF7PrT1$?jmHxnpzu@~hK<`bj%NHazF3A$fM>Jm-eVwAd6vwJN((eAZsRLn0q zK@TvFe_5?%p!=lp=^dL4Ac5QHZ42TYI$N-0y{|6?e`UaR8LLl;gZezYOnJZ4AsLoB zkv+gE6Xm1heUoD}6PM&YBhp>Af|O}?6*zY^X^HxwkJq|<(e43jZ88St4?Jy*#nZ;h zle$7Yb*!x9d;CfdGEQFN)WGor!9)nhsD@ICdwHpFoN91V+_I&@396xta><2XsfMEz zoI;OfFhk(-WTL`65XK{Ei_zRz^0;{RF+~n)=Y9&0$QsOBHRi495#Hn;S?Aeg&e=d_ z4#R-~64=y9Fm+)W=*QjzLoY9d%%B@OF+Kv|hU+@a;j*O-H*~YTv!WIz+?=~_0&tQ6#OWR$nh@= zee|4z;to+lUp=><;to?e2dJDQRL(&v=NC%ot>@o%(JKFedi9&a06qV)iw-w}c+X&+ zd&YsE9?T4w0XyTI6c`#;M&%r(9(IaNR@6^l6O>Fa&R9|Ij1zsFGbHt+hINh26qo4W zdN{y(R}9xboGH0U%fQ!Bn#(T>1SR%)I7x|qU_-`WTTuKAmj+Etvu0URSRXJZD!WLR zC9OId3!jM#_8$9&uYs}4FnvXQj-z}#{VMjj{T)gcmyDGy$fV+=a23_NWyT%tgmm`$k zTl+8Pe*(<3vD?%?!9%30f9=DBetKuHYlxuIgS!*@>p7Vj_cv)YNJ*MyFZ@YkfYty13+su$#tQeYEP+_)U!!$l@w+PNu%JhH;;&WGlltVsfzL)z z0IZ?B>dMLCC!C@~{kA8;O54J}dWs$ry#njy+M`Ae2 zO6;^I?TY+#TIsQ`_@7U~7D4#Gh2B zbKyh%I&W7>ONMT}P4F-OM(-HJyfy$_%zZDG4D(deDHuQaG(9Ld$`qLwmHfVEuYy{5 z^=W$W@>5ApWPS!t7z=F5qRJ#Vk|k}3yZ0K5;-0F!sVncjW}2E8lT4UmK4fpgssC?D zsO7a%2Yh7UZRsDlrOGZ95*{+XX!LT}w#-{zRLMI}(;vtx`Ppaa7y5nuwrOgKZlx&( zPI{*u2+v=zVakjtLM8vr89J-^EP^zdo6*CX2giaD>=Rc!~t(O)9+D2zN3;+%!#zXk&-OyWImGmhrM` zdWi8X9-oAW(D!c$0E=))=!^cXg|Rx-HBQwAs;PbhsuEh$BCTnm*7TCrw7@I0^g%>* zSC44nPq>=IT}fik30IQ1t4Ww71*2X8$$0kwTtYi3m!EJAV=)K9`EAwoaM{=S=jcXb z_YTXCoDubUB*=&>?}*F{lNFXkY1ts0i<5958?99fbxC3VbfI?rbgdZd2oIzZw6AI3 z(!Q_F)Na>W;4X}JPnv3q%zW}nl5ZqGm4SD^sqilJ<~|V#r5MRK(pM_y`?|I0 zs#fFH<}ExtMM-IxWSnI9{4&KNS@ou)isiCue#KG6@L{LA^#ir+R8q+)JbX_l(eJ`d z!;>#Ksu&73S$b44+W3e~f({O?vHSB=OAoDK@77&j<~r|@cVOO9Ebi_%(cU+Ato|@> zF;4BoDYicpf$0C~DuPrIP8|q8vh2vxE`vOc4f#@6-?)R_(Z*nk5DACauFhvl9^pl+ z_9#lLe)5{6Da_6}?Zb5iHe=|^AksbyUpZOfhvELC-})K&CX=DvLK@+Hfe<*)9n`ex!EbOcM2$pCUd!zGWHHrgqN8XzTTzi+b1i< zO4LJ|E|F1NxD+X@k;V5bSB&iQ`D$}-hfEA8c9YN~$@%ZuI z_G0wV&y?hHBVMAxiiydISYxJ6M6Ah~w8lzg&rGRmMOka`f=uLwq(aH0HC4hG9js<1 ztr0InkjEY@M63~U61-;Z8aB{6(~^RQrkZ;o_Zp0}uN8t-D#o+Cz1kW9n~b8FScl4z znV@}_Um3K*8mTh29#@k?wQd#ap{xEI`@fJQ7>lI%L7;e0FO7=VY#FNq{olwM13M)Q zs~9gB!8qTs`#E1VlVKMj$XGu{C-yRyjMc%>VUTl#7~qT+ee2lkDkg&2ITLz)izcPi zgGK`uq@;eGnes@fH<;B`N)T9P5jGxfu`fHkYn#yrZ*T^udN!Ko0N5H(IdMZ$Av(Vz zm65B3!Kq?^Cu)*2I8__U6b(tO5y52o3O?qr8fOh0;K^9n$5$b9YO7sdR}$o~O{+J4kQZ0#qVVBW{=*9o8Q;|}PAf9>NA>V(hs zaffik!cnZlTTE{V7=mnq4wE=`S9+BlmtIG&NUvWAJy=oK-)GCBdwr`U2g-OyAnC(D zcUIBgn44}QOY+lA6oc_*EJ-opH<1Q^gxs)L{nJ)BqUz%!EyU*Yo66xCeoD47@{|D)C0o-TY)Vs7s^mTv zBGgV6GV$(+^LuXC-m`Eox)&63n~(f2}XI=cw%TZbEau^=qiwHBRS zXMY}r8a9WCu0{AgS*aWVizZk`&}y4IH!YnFfrm|&n~}clAL-lPPv4fAj(2*YhQ$(k zZfd$VcSCvxx^D!gw?ac{>EQ}AD8uZB7G$7f8SrsF46{&!=eHT~+0*EtfvxZbO!%@Z zXj^vrVhaI*(fjK%7#o$Fna)(C4^kCc9Yd-4)e_gLBH(tm{7x9r?XhsABtrwub zXTVq`!;ByuW3!q_TiT}I6)K~rsN^5%;F)A%f0*RM7>my?^8EYh;siKiB2h_3$NTAw z#n+QJ)IxUU`FZksS*VA39g^n2VM1H1tI4BCCi~iY)w>(gL3;(rFT=}FNoKkcoT8`M zC!CZxma+JQgu9$ z1K#MF@ZRUM(_Iir->iB!JN@_@@7VjXs_t2K|Ko$+c*jh_Uipo8aGwYK%2JOxkUlW|0?wHChrYFrN;Io#@l0@qu2z}HJsng!zy zT)!cOh|3mm#;MBk(v$B{D{xovudbLraXN8Y2)@R^$ zte6q&)QrXW<*@kRmqp?Z54+D-JWEt9?#@pJq`L8gKY;YI1fM3JLG-$}R4cEoFJuTI z(h=Uqs8QW|fWpiH!Ca&xd&-`DbqZ3Je?t+%@4v2y-qfME8QjE;(c6sNSR7888m8x4 zI}{_06pIjxkK7}y{_w9Zwh%}%XrU1hdmIu*>$#^edd!o0M!mQIeP+x+i7Ha?97~d?z!ilbMCq4 zzJ}wT=eXx>Z+U5&6Nq6$+qEaSD+I#8N2y*Pr+TU2CgG;w#%XW3ec<+mTMf70o>VXT z_~#w|%jUmKI*}B*kN=rP#J+<+3G>#|9|ZTCf%e3T20n=u`|`=GxZX-=(ac#Q`xqlC z7@>JR-Mjlb{thL^@^`7IY`%^X-{WPRtff!~VdMt-IkGr*&zl=)KNWd9T1ehVM|Pdo zoJEkuntExZJ%lq|Mn676Vm*?CBOB>%LqB~q#D`06U#z)DJe-z<^l!ZTR>~W1y-8@* zNXeRBArhuXB4=v0_@RkHM}h9wRmsr!Ad1VAy>se{HPwdFJoKp$Ezm!!z7+g6(ahMa zviC~9DiKQ3O171}*EIdq7pE?r(wq+aW7cU?$=4+bXMa0;?QDm0OV6$=*>!qm*)ydd zlzx1!Z%OsJ#L`u#GlZN?^m{MPI3*(I3|+P}1j&?s<;ni8&R<%5pDw@`fBDlfBmJ$DUjpwpU+z zscm}5nEOv+v`Ls0q_lUGAQ zgHr!!Q~H@StDo@s*R-}9P{;~5Iew-cwA4`gMQQpq*&4ze}h7u8*1q~Az~-A3ul&V~f>N6Eax)D!#*b_V%lE)?2& zg|U#*Z^FWDbk6~GS8@wJKA|2I{I)*ef@CKh8hN0!kEHVergMQ_yEe`GKY}xl?j(G_ zjqcLx<8#11Bq;FXbC7vnotEik&)BFKHq9C!T;E2&tkPogZr)Zebmp8e(Lzre^-gI^ z`+rUH&_?}Fg{l~uc-)sf96RE|@lO>_vwnrquRn!WdTOTQVrXXZMR6a0_#)%( zyNpgG%DtT6@=AsLYw^7Idbfp(6h6YX|DpRVTBs=DR*hfaPN1U~!5Km*2jQgjKPs^7 zAmpiz@p6!Z0bIaEhZ$aTF1pJBG5>lzxDM~LUiy{feb-C-NnYJj+Y3V9?R2m9K;XED z35qXbg2NYunC)~ARlEN+HwWi-AM|8F;Ed}ESnsYE>lE_9u}SWlW{t!2ov1V`rvP0Q zQ($7pMJ!nHMJyOpJtmvJ92$2u&3g0iEUlD6qyJzCBL4(gPJ*hl%k?t^eGc7Y`qc6a zeYtqqbOw3MAP98t@-~9FTtF%i z36PfpSpf1;AS*y>1sboqTtF+(1b_k*s2ren3iKyH8U^CW%LN@2=tF=yDG;JA7jz-e zc&P3f0JRFz4p4Um+7D1q1!BA|7xY%3c(2Pl!Wx;dN|dLBXdE#{2qoXrFV6qpwZO8w zwZIa)wZL+^wZPK3wZJmDwZMWXS_n)oL}0_7_jBoCs;S<8CX|S3p1V@Bg@itoNAEmA z+DWI1&aK))+ImWdF9{_@@Rv@I4$|rOI9$9+!d$e*cOr@(yadx>P33+n0c2z zCvBHMr)-z`!R*GisdO~jG4pO1GHgeQMNvqSOlEg0yoN)!g~pi#Hd zT1$XZ_wGBJ_fel{9^hU9RDiNZ3i9P zY0Pzp3w&LBT|ewP^nKi-KL~wy(!I4s><IT~W2hh6e&Z#X(g)oTU3?u0DYWB;NHEqK3#q^05>;XE)R9p>+PC3n z+K;@eviGN1J7W_qd~70(dqiomZWY=l%*v++_8x7iKx>=AP-KNR`#|DA(}C=RFmxR} zROCFFX0;2O^64n!=8FFNLw)okD)l#9mcCX>B+%MQaWJZJS-PV4E76ygXhdcIE1~`t z8sH+k#{7V>^hLWWELwO#Ax!aQCA1@H-+dsHvIpxz`k=v;MQt#&VG#U6f&kqHt8+{j zy9vxLn(ovKvnXm?1oaX=*hTkM^%5+*=oeo}tCW2U*-DVAs91Abzqw-O+zI+gDiYZV zE7gW4+ST+)v9pE|k-o+Swvv0I(N%aXIE)PzD?Hi_{{Nzl?%N4kO5K_ri?e6Dvp=%Y z-P%E3Hwy%V4mjgAoYCDsY90dfz-lr8{NZOU6p2?E8MmzJ&)c^_l!Do)7s8* z3w_$8$dpf*cdE?TCSX;_>SVd4|Fmh1V|B6VFp^x>N0ysFno#897*IUmu(imdMn{^g zKA1{K+D-Qv3Q~+taO}S02$Z`NgIUkR@7=wb5@R_O{4RO!^?J5}GS z8BjgE`W1N3hI>)~vlPK<~(L27oCeiGNWZX)#gPrU9< z)W^(#h>n>PxyJkMtcW?0tIT(18K=j@=(%_6V&_kf zb_8BkxR&obSqgppTjs$#tur zF*_>Om3n7pOf*l_&eFxqb$$C_mL6V?y4Z;6k?V-s*g0mR))gHy%Qf=OQL~amCr$5Yuyil!E zt`;dB5E(*@Xr?e}4?Se;@LG<7GN#+G_?Atz=!aUl6B=G?k}*VMs1`(Y+P2r`$l141 zohvz;LGx>EJ3-?4g0zS3Hue{gGmHVnLd_2xFWKsfLV_@fxn0O5M}+yB;}x4%<;Wr} zgWjsOJr5fMu&h#%StOZ7k?1Xf+DrE%Yh)pKFFkB_%X%O72=u3AeX%nP?RTMrF549d zI{F7#In?WfwN}wjJ|_8ap@Haz%j#$0(AO@2KuS8$%Ky)#JvR+UKPqGK+84$03Y8F>i$whoV{|+i3P( zqJ1R0=#6AyUjZGi`c`NHSzr^S*H5&z)0dSMhbo-aT5}h1kXs$}r4aQKOv+{p%YUN# z_7v-2^`X-l(zOo~Rc2Mu**IMugg*%R)?UJoKhYCZqVVu1y2r?G>p%=f91rs3I_t4) zT);>>Z00o9p+D=)-u$a}+bjG6J0o&EN7@rw@WPaz>6eZD>ig6`3s*n5(0z2jZ@v4% zu=`s1&;z;Of1DW7*op~m3~6lFIK4im>0b}R>c`ekfUD1`KTm2EZm%fMVrQ+hwZs$9 zpvTo@lntzZ`To}XyYAcJ`t^SG{Uwb@8b2*tTlQJmx-!13r!f2%dXl!&JyT;r$9txR z?AzGCZQd4Qw;YDX2>dT}SM}_At1H+rWQ?%$7kaWPO}P6D{Y*5u>#RKb*Tv=@$8WJRv)Z>KlX*su*Y?^1|vD}SYX_MMqP>m7(_>~?Qey9=k zYD%A%hW7*g@P1%Je^=}p!8jQ22k`$ZW18$C_+i;(^sJqcd> zexv&j7;`_F5{-L{ysv4Q>^j{h*dcuco_xPSeYH*=0G!iclKh$AcYqF7%@CeHKubm*vtLcU+IT&>`LEZQ=w=AhdU$@?q#s_Z zUr~!;`0r}c=QZh%GyyzvTC;xTBmKS;`csee)FXYTNBU3e^~dXl(1Y}lc7vKbZ_Y^P^*rjEQj-V3=?JTTNIj_cP|Thedy;2uVfs0OJCk`km&-2Iz+k(A;7G*dX&5=5$-b0RE>8 zLM6?!OL2B-pNvLTtawehNB$43PVuO9giV^%e4Dt8~WB;eDr-BQ(g38tkJj|pB${7euL={g^ z;&@&~0aKd~dbm)3?Xh%E7uI`9w}|nJB1uLvnwP?Np3@c?hBhYKmLby;v!B#?4s2j7 z;RvXb?=lBy9i%)$>MUGx&|2ejtV|aUWjBLU6mhldA}An7UFX=wqK0JKaH-22K7!)D zM;({`lR}UsPUbG-*K1rUei7VB9lQmxl9;-eYYfM}{%d za+cr5=KIafYEA*hN>$5PcOhCSl<-8MIk>o}ax+MeUiYt=9tk#@B>A{5-(oFZ-WB>iww7;~8JVT1c+EA=BuM<+|1?m#40EEiBkvJa>@@vquqSkpG(kJYinuHzSpFC*9cQbHS^hXHIoayNEbn9?EATiQ z=wxM5bVb43+*8X8T+5BW(WU^`aC9%Le=y&pAs~+ZZp0WX=_IYhx*}Ew(M^p-`JLr_ z+>$idg4Jo#XLk5!`q?E1yMd63*$pb`FuQ?#kIGcrrB(P3djK9GMqnYX|5XSyBF;l% z@{o8bqe0R!x@)Hquj<7(G-83CO@Sw3Q*oXy_;g z@~c=eNb%5t3m_(q#$_3+SD~HS5L&ExfWsd+_~-==Wb<>VWc8pZ@5BgweO&enGA-FD zQ>gSSWg3o7q}a3&z|n&^-QzfJaC#%Qdy1%HV2r>+!w@_)EMCv%;o)KN1|j-5-P70@ z=g`C91HptzN2ux|itoKZI!aYLD8A1E=@?aAOgYukajN<-1;@NY7%UKkHI?jd?g4#{ z6eILIUVU0U+u(dVwewdB_quW{TN#$^yI0%FrgrN(Q&c&o0h<_x2L~jutCQgBQXjC7 ztsRDXF92lV4pxo|1GqYm#S->eP`!f%3AIuY1v&w;h{}^36zH`>c*zM7LQb(!`X63} zqXFnZU}PWu12)6RuH#t!wiM6;23)AF#2qdnRzfGdyFmJbe@;eJI2!etS@(v1|kT0e(4^xjDOjPBcWy=E-3C1x=Ry!hPFUMr1X;A+1nmUS) zwe#)l;Ms3pVIPl_{DXxM>nMHpLW!W{&Mp2jFGcnN|1t)Nfl-s4dQ_icjkY9nUf^g{ zMiRSDnRU2DbGwGtV$6RXwz^W!atrOgqrb42+rZ`Cr)-33wIArM?Jk(QiNTL z1}?E(k}fTAxFA9gTw<>C@O+|j;e`@pa+OUZQ67@0pb4PLTI*wxY-WjuyE+W z|2_T_;KDU+hW-(5CarC6>nojQ9YN0C(m57Fp;XH9Dl_&4(rCt>K$%5CX^KG}NzGXM zn|}=xIxvGxt;JIUAG5zWo(pyl+I^q!HCqRR4v)PVDKPY#uPP&XgNOAKGm(ifrxIsz zS3DNP?7IVZvlq++0`TzWi&@-mRTB+f?;#n3NiMXKNUz7kfuzdm4a~S82odTq(YJbmF`lE`Rp~YBJ$0j7 zucMxiIVq#;#a2#jsk;4tQ9b+5RH2@kB~%&w&t$Dsf_#b&34B5(VZdp6ROi>=aA-Xk z0On90b7d|RmY$}AeVBNdX}=*@PSd@|4fqGs)g;8j0mhp^S@^Gb)5MAj42NTQtd-cg zD1LYN7ZZw(BnXdA!xG`$|BH#cpqq)CA-BzAH>gQ+O9b_ZaOk-+K3?G+?|g85qWi+f z`4yg~RHhScnvxJQ|Dd<`?7OHtgqQ~&DrH0aQcE)l3(n9zgPKj@*<%w|xz{Rauki61 zx>v%+cn31S0LPBGq9%VsJe~KquGgp;~%zRy+(z_!&aD5((m#>E*CSu6LBn)%|gvFusiL z-ERx-pM;E1>RS@P@WBAg6AT9EtK*%+w2fezOkq_S-EExmWkhMKWeo6>zK!Q|;<@uu zPCWlDdr_4(*_vK2k1F3Fpe_0pp)&l$`L%WB(Nndf+nK!`FtW@(P>Z z;sP-iC*gpWFz6&PKE#*KGpzJ7$U!;h>6%D;XaLp8(BCk`Fwrp8z!=_uJ1@#LYP>0Y z?Q=Qt-r>S{2HsuA!#mG|eKs6&F;Pplu)5fPY8Sf!eQVI$4cYS!zO142eG_rAuW+r{ zf4(YH7rg-{&xM_F_HxB#v0q65Q;y=jvgr1=P zfh9IyVSLenCEUG=tFJjPxRvgay#VXXzKxc@y*=rZ>^PiSj8j}U$O8RSTC*UPgj4%N z550D1L96F&!XA62wOw36u5rd7ijWDr+@#B43ZIb0pmQ6_pnEP?u@n~Pyy5W#0{bhp z~K?D_RA)im$sx9K=n|l)@x(0-7JmttewcG1WN=ep$|ij11jhoZOiYNWG(gqeP1O-o6(Cg-dXR*M zCZTRgTG*WrWAdYu$x7qkGqJqx-TCNb zaTq@>IV&a^7EpeL{s9-p-PhT5vQT}q@p6OjDb@hA2|JiodYeSTgN5sB&ebzoUr4B|M18F z(*!ZuG!d;zV#EO0uu4`otR{%mQ@9AA^WgBt7R>O)$2g&HiGRl~m__toSbQ~OT%WHr zWP%Y-#$ay5WIjwbQ^y`AXFdRBG6IrI8&LETJoS?KOG_ZX1KeC!1^Yi3)-oP2jB%_0 zlfPjmLoUH~VpY{rxr4E=dMO+T20Hr5evWancLi6eWx|-90nqH51Cxu~WHeAgN@>`D z z?(LGyi%Sf_O#Y=MuNEtNBtiV`+m;T~QwB#M|r{mzD^hpYnem z*_Nua!=2=zv4_Hg&04%M3SUq@$L7M6LcKeD^K-)GQ~n)86n(oEfwEqXeon95;qo&l z!kxVs|boD;HNxj;r39qc2CG3{$VN-wwo56 z@gLQ`b*Uf{Ha}P_2s_UB_c5Me8D%F8)*-*aei{v%Y7D?1!eoC1UZJeSdu;Esl6fEh zAuD~ckN=33zTC&JW~Hz8@g}@{v8MwI0)J+$Yz4z++q(*jBR?vy;tb_=I7fN?{woVU z*82PEwQ(K3*N{C_f<1ur64KB4cQd}0Y9b5YN;Odort|GNd@_C$%isr}amML>c@>VO zIy*@VvFXCxWwHj+S+6cbvr-LTkmSxa9&%U|71=&ns^)+LsDnGhuKDk=B}k!oVnZHyI*- zK{hbz z$r#NJQzAh}e;y=%r_4#weWpU-_L*Yq$K8(0*y$qjz?OF*f_l(sG9bIAF4&Ny$ zX%4*k=!&f)QsIc0LEqsV0&?(yB8UZp)QobK(-+nO5O-GUatn&y$GTWo0*wJuD|6wa z2ql#s7f8@*G;!?kz&(Cf{p%?sd<3B6K&{+k$o?3zxFIe=7vd#*S>WWrqOx+BFaDHr zu~ON}Tq^=hIA!^ zI-K@z?c&^(c?=_0Ha7c@%em>_Nf_7ce=F!azKRu%d^HZk<8QLU zXqSI~;{hYOY{aMPVOC#sz$kWtB!jvcfw0{H=@!f1#^ez-ETfCdMX| paged mode + BEQ :DONE + LDA TXTWINBOT + SEC + SBC TXTWINTOP + STA :HEIGHT + INC FXLINES + LDA FXLINES + CMP :HEIGHT + BCC :DONE ; FXLINES <= limit +:L1 JSR BYTE76 ; Check keyboard + LDA FXKBDSTATE + AND #$01 ; See if Open Apple depressed + BEQ :L1 ; If not, spin + STZ FXLINES +:DONE RTS +:HEIGHT DB $00 + * Generic return for all SHRVDUxx returns to aux mem VDUXXRET >>> ENTAUX ; SHRVDU08 returns here RTS @@ -559,6 +585,7 @@ VDU08VDU4 LDA VDUTEXTX ; COL DEC VDUTEXTY ; ROW LDA TXTWINRGT STA VDUTEXTX ; COL + JSR VDUUP ; Handle paged mode VDU08DONE RTS * Move cursor right @@ -573,6 +600,7 @@ VDU09VDU4 LDA VDUTEXTX ; COL BCC VDU09RGHT LDA TXTWINLFT STA VDUTEXTX ; COL + JSR VDUDOWN ; Handle paged mode LDA VDUTEXTY ; ROW CMP TXTWINBOT BEQ SCROLL @@ -593,7 +621,8 @@ VDU10 LDA VDUSTATUS BIT VDUSCREEN BVC VDU10DONE ; VDU5 but not SHR >>> XF2MAIN,SHRVDU10 -VDU10VDU4 LDA VDUTEXTY ; ROW +VDU10VDU4 JSR VDUDOWN ; Handle paged mode + LDA VDUTEXTY ; ROW CMP TXTWINBOT BEQ VDU10SCRL INC VDUTEXTY ; ROW @@ -619,6 +648,7 @@ VDU11VDU4 LDA VDUTEXTY ; ROW JSR CLREOL RTS VDU11UP DEC VDUTEXTY ; ROW + JSR VDUUP ; Handle paged mode VDU11DONE RTS * Move to start of line