From 31768fefd6a8705513c3752279d406a7a144e079 Mon Sep 17 00:00:00 2001 From: Bobbi Webber-Manners Date: Tue, 27 Dec 2022 18:25:36 -0500 Subject: [PATCH] MODE 1 fixes - SHRSCR1LINE and SHRCLREOL --- applecorn.po | Bin 819200 -> 819200 bytes auxmem.init.s | 2 +- auxmem.shr.s | 58 ++++++++++++++++++++++++++++---------------------- 3 files changed, 33 insertions(+), 27 deletions(-) diff --git a/applecorn.po b/applecorn.po index 563cdba4190c4203be2178e966420e2c8037ff1f..23e2e005ccaa01a410167851ad7277e75f528b66 100644 GIT binary patch delta 11147 zcmch7d0bRS^7uPAhDKym)RBm`i3fP%kz|Y-MZ^rr7zm&u$>KvFG8o;EWDmk-Gn0*E z{TUvaB${WkV8&T7JmMo`F0Vz$BMF1osL943@xY)6BI84lV?5?tJ;NyK?&tIU{qviv zyQ{0JtE;Q4s{4(}G{t0^VjC4e5Bq3zK%9EqBI+L#hV-XQ^%N$Rum2qID{FitH9jRR zAvJB{+_+QvtiN z7b4zSkA_8J;W{h5AhfZGWkNeEsRV^ITUoqSd}0HdKxgjYHy}jQ?})E_jGm78&0R_{ zHR?|J344sG@B)6;jTeafKSo38DDm9KC~`oQdwh^7xly7DZ%d}aJC+dqix?`R$Dn_b zhz3HDAfoZ~lj3V4y2+@z#aA|>FQ%XBw9Sg0;TYh25})dfonq^D^mE=Yjg=|8dQ_qb zZ|)rFi5&vn8bNI*z?+FCM?WPPZ{Csm3ED{0vEtQFQ8t|>ru+lF0>y!Upbd2Dj`R`~ zMvpD64_&PqY;xmwxD#02Yv9~m!He7_V#+_|Hy6a~`sX7P(n z=x}&@X4xs>MrKK%J=&0Ob%+zKXo$G!GlauCGb=x3io3jB`PRq8qo1M29svGL^n8XM zeX>2X>ilV7B9}8lN2dHKBlxL4FK%J2nZ+)4cQH*@QnY5LKH^}$bqoQ&B+}(5LR@7* zkM_HsDFm)3GUQudy4N?vpbl5%mju{jj6$nd4$j*Y6!C}!r9aY^Dccz#XuZ6j5rWst z2N*%s!=zfAy%|N(ZQ}1Xqj9wLzSdLXsmhGlK3RD3w-GSimW@nL2ZJIHOcrNsMQQy?>Rg{PppgpX z?Q_!N#;s^fKuMj`As*a{CeP@9;eEz-;eFP2L3r*gXNU=}r~(iLAli0;i!mt!3^8m) zRo@5D2uPgtIU4h*tr1r2Ga`8ELxN8v;54G)fpmme{5it(TjH0WqrpMT@AgE9b)Tb0 z=r!W4&rxKbh$fApz|GZWNKN$|x*R{xbFv{`H!m@Tlu5}; zJnuL78uP%}r6eu!jA@*glDH_r6L5KcNJfM?3UdF=o$m??boXv zBW&GkG3SDwcaN<(Zb-Zt8-kNAKBchw-Sv`3XlI~>7hRMn&g!x-`m-L1)~;%25`#1= z;Z=A5+ZxLbpVE4fx!pk@c~m z76kQbyV~5vSw`TDOBN0M01?5M)c}^j*tZ`lVeQennBn-}m#TX~kYOymV!{F33#xM@ zOGAd)7zyJFkKtKdeTfXvn+{it7rsCv=xUMOh8}ma?;z)R|h#p*Ni@F zt+uEz*KOVI#lp*0y|Vn}*D-~cz43=^C|A6eogGH~@%3yzj7XzQ=N;RxJHnJf)iLL- z0cVFbID@MmYY21{I%?Fdu@}o6iS~T!A|lm`#BM~s5)Bl!m1t-%5QBQY6<@4GQ#H_t z0fjmHfJy`GC2_28JAWZ=twc|NH#u90hWFPrd3%c~Z|^z|za{ql5)G#{;>0ge)ZoOX zQi_IvYS29kFZ^_qprQ@r+?Xi|D!ldkHOCY@@|z9viaiKa76*P*1YSepA@8G2>> zl^ItST=^Y*S6?Z(Qg~&3hAX3*wap8fmo~rJY=QSX-d{`e zhGxr-rZ3TT+L+e@IZtA|XN@a9F0Bw+3lsJ8Oy4W<;3(FXUyIi#r6za|T$`7mPe@C6 zxBS|?g$t5R(Mm#kLcA%qH6i`~LmZc)P9)2^i&larG4rv9yIOOg{z$FEU$g-M#1uy#vJ zLcA`?Bf93Ndp>KKAD5cuS=g#e&?lR=x}Hl|;+cO#pZI)&sjBUTg^6jNN3NwLEfBV} zr0SCvdserm#U&>cZD~ncWZu%^S&)?Ksdddy1mE_POP7?IHb2#K%;kBv!MNtKm9kKq z8)B!ua6RU{GYChuR67;0jETx1sH<x$q-}29iruHG~W1g zi-`rA!fTLwDTS?giA#yVKerSrq=rbX6-0E}wzO_l%C6ydPhJ^^Z@1XCfy7V@)Ri?m zB5j)x%5Fx5&4%n|bA!zc6lKj?4#bT$cR8N2wO7Z46Do7xnDdS}^CibKwt%K5sx=&r z2zA+}KynC)7R{70OexFYP;u!ukotWnzVi)=9p_CA)j>7t8~Qg|^aq?;e87Xh_t@&e zPw7j@eDS~&)(w`cc$;|c8x)lUvB8O~yDiPm0PEA1tM4|D1p_Atz6zW!g2f1d%387@ zZC>zNXBRYlAB9n$kyJih{nYM!>&N1=-=atjjFRhehIs>sK}na4`m$?Q1rHbB{1)NK zOI_Amc(^Ot*&lM`sxIcQx0upfOyjy3)=9Ld^s}}@w}J?T3nI~n;?Zx>@G$H~| zD?TO2{Yq&X96b2;#vdA;EgJJ6X{=9vJWDM54o#xF#h<@JBZe+$)k&02XDHBg<G6TK9|ncc8g1ENCTSNR%pL+ag9$NfZbM;uSF%blHi5Z%=0 z2|MKSpS9w5Tg`#Oi+0;H!b^5eG7Wvg&imkE*$y<@_+#6_HV3?ag!iHAhpvC$=6jR6 z@14=%uldSjC+MzwklUSiI_o>z+v>XlZ=7kn(AEI&Z%+OB)W5vkn!UdVoK4Pq6!+D} z-W}%X>BDWmU7y>Q+Q!2>yX}Lvz%H(<`n2P8&FRCZkDRuP!cH{r$(^l*H+Su5Ep(S% zBUWzEk1vJW%O9XPOcU<(pJSm8_d^6)+MvJyUpr}HjFySL!mb4Bb zwF8goFc!EC9FP!LD(RHrH>CqOcnQ5Y1Vy6iC`Ao2Fm}yfhh~#>sm64bt4!(Gmf9hw zbtuEVeN`Ydba`d{q-O%v$I?1XXFxJaUc)GZt>MLM82@By#E<@k#;Sc(t~Z!t1_pfB z1o7y<&@*8m_#2Gd$2UqGQH36-L&U{Zs2maHciIAL@k}vfFPsP_iKF(Skux&7@b<2P z^n7w84e_5-$GB^EY5`uy#$Iw)Z&&bpT|K|O3vta}G-{wZhp4=|(cag2m1w25Am93f zxOXoa6SR_8P%b&23=r?^h4q^t4%vrN`owpy^QH=rBqoc0-iMy2Iq`>m;8r*>)Q(1u zJAXZom5e*9121W~vUc6Z3LNDIv+r=LF19P9VT^pp!iN*)&-;#-zqg}s`jYsT9nI?# z<#rp=S1}A6an6g!>?q23#Nx*P@Zg`_dWSnKAtfa#A=3?p~4|kC|eB!(H zPj~CNZm2);n_I7T_tWn{b)kiUbn-&+Ktn1S*a?6`0aj# z`&~-1&W7N#hJ{mp@jL9cOJc)*G%R>&5`cDrat@%;V@vp|LY7>Ln5>i*E=3GBR(OZa zuYAuAAM4XZD{k1d+VPpMaNHa>gPbVs)E!oT=vl`T-Jgbq9?$Mz(| z_?eQqa2AwLOCJ`_mTQs==gNnZD~}|@z6p$stTA;K#z(6L+XC@~6_6P8JLo!+Y}!M3 zUF31Nxcd+qV^nmiRd?=Ae@CzBzd&vwdeoBp0DN~bMa$`SIm0gh&Mq&t!*!D%l_IE4 zp9TpFZOOT0Jp7I=7%y7oI+x7h8?SJmR=#bAPdbhi6fHi$-;#z1SzFAP>T;{+5UvTT4oNBr4$F_eAPt3kU~WY;5ry(st-DHTO7M9 z4vatvk|upJm#wx^S2K78RlUeVtFhYDS`^0uD*htHHVcn2F0)ORD^i3w*7P-=v;4o! z5xS)LrVFIVG}V%VGM&;vX)qn3DA1XQ7pz2CRJQO>9)GjK_AICmfZy~0za>iC|1~cK z3wL)L_^vMsZ?3rB8 z^h01Kl@rp)H2%KCzdYXSw+lU9VrVrQq8XQ?464<6_f?K=qw( zn^zdgljwn4f*!YWi;PnLuy92UWQ3!aczw|#{|o_etldZ;R>sL#DY!|~fuBk2kBj_r#`@(n zLRcVbcTh^W!=v0TI!y3@L@*@Kh7GkyvojQh^QQzn^1p1_C#U z<{+eyNHU&8lGXe93KC6L9}qt|jD|k){$hvT2?oJwLFkrhR`@DiKFYQ@SmA5Yc^C~e zf|~@tM=PP`M__7<6sMn^{@{FU<0|d!w*4&GZgoVKUx_U9(|gOJ@=Z>n9nS-oBu)UU zq=@x1VEyvfpbuMLQu`_$fMKV3B~c6Y7UM5G5$WsnmeaiOb-G5bW?>QltY#}@2MZGc zxPvWU=cL!xy!-ST$O{VR!UW?r5C?Hoj*ZnPrbB`VI}KDFBz(aaZ{v$(UVmf-=oX?h z2;uQLPjIKOTmQa9X0ru5Y*khc$QGvVXNB+Ck^^kX4{XUnw&X`vrn4P$Vpx@MghlX* zwlN{9up=xq<&bRMN?DaH4myfrji82UWG#HVsGSER1);%8L0m9Xp@uCv%-&rriLMOH zt_#bhILACiFf`474?G6jH@vBf2PkvBu}iRQBljoP*(>ZioVLt%UhcCTc2ywM&Fy}ky$2VK$58Z>;OvKk zo0lfqGzE4FT)vP2i*=nWRvYmfKeYbGTtPf{3`K(3+NSyl?yatEgdCXd2zL&XgR;Rd z%E8$JZ6>SDn8{MJW{L7DeXL)m8DyT9?$D z+~1%h5qQrEJZ72sqBoqo{k$K{P^45-y`Mkm(-sNb%>j@N^dZqKm~iNT&`ENE|Hi`S z@?`r>EfzbDBTd`|B7aYo+dGQLt>h6CRIoDx?Y@Cr zU77IsqZ_)b+?j>(jg6!}lhkKfscoH^+h=|-xB5tzn0OM6d+t9|`mlYJJ}#!u{PO_z zvTtl)E>Xa;Bh$xl-$}Sl%M|NRqWC#gOJ$mMJmq}6jsp3iCE z#z@Om7Gx>?YpM#eAjJ)?siU3kCbqaBi}OBlsiRl=pG5QWYz7|JMMeq*S<)ooFIlB; zWth7NO~T>&sA5Oe&ygcG6-%ZAwkt}x+0m|MzPgLWYPQ+n*96e;O?^u<8dX& zNz>t^l;u4s&6U^(U~z!whmjK%gbt}UEUpJe!iOKP;30nEh+ok=MzZr^BXT99mzmjP zqnDM8T4tq+r)Sl=altaO%@v`~a_AYgtX3Yv!tP)Wf?)*=Z2$^hV%Ky2DcUhSLJk~PIc9ESO{lO4UA$kvT#2_$W%bqi{L7( z+QZlnA!|8{cMXQZ8i1w|{(RXdkvuHLm7*aKlSy5}`Kwya@fT2jmYIn;4=38ILwKdX zu_}^>TkJ5$V@il)wi4KAYSM68ZrgM)fKQ&vB1a)WLx2S>?-EbXy06!NP`cL(7dQ|T z6o_0NWsvF7dvR(YiIAboeJPAN1Y!$Y64hrp+~lM#=Ttg5bh#4ZOUFw>m&3`SvX7|$ z1!=lr!xxqt$_*8^t8j96x-?#M_$Y67 zfcWugluQ@wxO^Hdg(u|VGqp(D?_T7QC|d}`9?@Kjh8yqjocDMJA?zR=(h!`~IH>;( zf=4+CZW1}TRq(QTpYSCwf3Q!m@$!fJgzdci(LUiT68Y?(0}G1$$-{f$00+2#cv&2& z_ZBsKyv5;D-r`3W4`y`lB~JVmIleoCUUYq=WL)Sf* zugb4llXG@$juKUlO@{4rba~-^PNi!;J{%fhylQ}_?dw7UD#lO9#djNk420#|=fo%< z%yDz7yhv@;+ML^Ka@4FQcc6uW+^d31^k{PjR&dZ!x+Z7SOJD;%-ZjImi_VL}b93RU zt>++eoW!DDg84g*-b}mc+?fji zC4gLF9_x4j3r{3i@CPKyH7Up0-xZtV40BD+ajINXa)8IwoMYQoI#)}9!nT!G)>y?E zl)!VG!L$U+E6HFll*fcS|A>EFX?q3_%H0^FIG2#}DYZH>(Gy7$Po3l`t&R zgJIJu!=^mLrhEg*5(edFc+pEagQ4^fh63EMvPS)>m963pv7s2fY!1TnUdFp$u2HwZ zRvKi?1#Ch9_@-a*_FU7+KtP4RCWLKz(~x1I;0)ccvVfD=(tHC~+X%0n8c^Okw}Xv^ zYgM>8IG3!j`fIE7T%L~90}OiiDue!ydA^QKtMza9RI66&_vM{47!-0HJLqLC2Lq|g z@tBukKhB9U!b~{HEaIb~Lyf$Fz^hgnz|YXi5Xfp{I7`6xIcM_>%2c?SoP)o3`A(jJ zvjqBJ!!67`Sdb6a-@@L7-SMgj+#d{Na<=+3#ufj(TJzUG5H*$K_LW2&@2L3(anI4v zNaMg&HW*a}R%_|AeNF*}_7KhzvVBfDC}rR(&Vu|^TOfA_)Z<+j!c|zf3OviS*a2tX zG&mu6ZPfhrO~cWJt89Z!n%*E=FaXUAWKs)PmA(n1dsb>VcziFJHm%KJHWi7Bj)kVv zHR6}YLI)bptcKNi)Ea=@tE^k#QMk8l0t)SptX8lO76s$UQU20rBI7I@%cw zr&;h9t99kOZv37Ie|$CI7@)Pf9G0$zu01I3j zS!kz+atyT-i+3>tThdld>dw~v8<7$vYQ^QNu#(apJ7lozugp zXcfMRCx=l})c7)i;UZ{H38QAJT4yBA2&3i)x8TGuDj6~W93Mty^y0#kdJmi5t8wd$ zs^}*kAD0+21BX%h1Rv=7{jG%N5hXZf@tjWN53NTLYB|pr?cy|Ik0$xBKM!{6>(?osKGBC8nkg_NV0DDJZAetgE+=g&tRJQ^lu?Qb0e5(>FG?5 zE3{FqV$=-t_CpUx#WMB5%-&fS)&Ed^f~r_m*qaA>{rx~M6+A3F96TZLsNo5PCk!49 zJmGr}^g`?Y-sgf)@dwt8<%EOcuL5Qce*JHfwF#|>tC)$W%#uvvMnM`TZW5$Tc1DlS zrAsf~g-8Jixw8oki5VbX<)m3+JC{}}c5sqkR5&R^Y~yeVd3-Z^NHuq_uo)qhYBhOb z3;IL!zkDSOTcf)!KkkgT6rRV)KAb`hZ9#)o(d6G-P)y%w-`G$~Mx(?O{ztMD-m!(_ z6GThUgHZnnLH!^}C1|Ybaq<^}Zn6FwSQ`-g-UOpD+-r^`g#6fw$5ut|%o8Z{0h48``Q;jUrdxMN3t)N#=I+0wjmG zqs^+!y;;R5LN$6*9d8enn38WnaGzws(`)g^b#?}FGiqfw8y{v6zhwhZ@^%S``0?J- z5~NnCwvvx_pzk7E7M7k7uPiK9JL60Rb|-n*js}t)?;#xNU0CrhThtn;DzL|pX@k;_=ovrvAQ6}zc+6nQxN!XhuXzeuI3U{v}qjL}C5>_bT9 zJ`_!?yO5gX+tBb{O$$Z!CMrXLefGV&fhJv~rl2^)8E+OF19I?zqIj7cv!Sd(%?o8G zD~4{853yp{CiyTcYPy&l3^FO%iNaOQ=ilZW=fxT4cvF02c~v-x+J*W?tM9Af z%B$2QaTgl(z^+CZmn~F}vwx?@5yZU<4P>#FkX;B5e93F;6;M#+)olm4b-Ei}qq=~i zjSqc=GMP(W--Y@`X`A$>)jqyPryHxH+1I=x?B7Dw>9^rG9=oLPP(HDY4IVOOoaj^laNr6%r za04w52oy+f309w$43yB2fx8-QQ99L)wy1qx_8lj5jLM!ob!zJD z+5RstPfhW=8m1aj(lTk9p7EUjt%hJBC3W_k%=G8{LmE>u)8?i6Z#7KIOilF@ish}7x&cDJ2Q|=Y;Z+5`WGI4%enRtDz92w|Cpib&3Z%W;SUad z=;W3Db!tbnGsK}Qt)G0l{<)vJ-i7u2(@03O?4Gt4_>0Ydy?RTr1>K>Om&d-+KndYVj7gNs(uY1RdtQ7)%X;dwHpl_IPvDX z8n>61u+i(syBd|j_~%BtV&{=lyU`G`b2l0m2`VYSSMw{ac_JJj18q!!y@V zlF=Y_d1Hb7LQpkeh(dF;O^E?oa@)%4y%f3P`e6UHM+Khi>0nKXMuetd9VUa3~Sk7VUG8LD!c44R}pO{Ar|=}c1-q}Sn5H}`FRu=&yE zl;%0`2+gaSUv1vdytDa}=7Y`OH#aq3Z$>Q}ng_Q$(vs3Luf^0t;9ebgla>uFWbf6F z(N&c>*E1z~cG^_`E8eNea|)p}H_e!0`AV4z3wPanty7KZvs3;1T2oSusdG}_dapHQ z?#v9!P$e}hb*g1lTWZ!nay@C!PD@{(>oKM$r@S8DI&(&lGCgC?Keu}_=RUhO*OQt0 zZ1T+14Ky<|eO~HYw$|Cn^HN_Q(>mLnk)Cd}gtyIkE+f_QO)GO(nDms?b=y6uQw{0< zBJZ>;{}#`*sy4~ZSnLgWp$~!F$Y|VFGL;CDF(`Ng>_JVmbuf1$%Y|PGvgz>Yk z#{cRL#nGN>w*nL5VWmIhb+_OZ{JA+=KEnfUOQ5FOjRJUQUCEB`ar+gC;lX+&YIZgh zQUn7$<)*k=gC@3RB?m^Ov?Y%3Y;d!kmv=V66abUsiZCc4)$Z%O&5!4KU89woFb}V~ zURAuVM-&~9P=ocptpyC08}Wdm_$1b?wK4V(+~ig~5@!G;Q@j~_i1aBMn}5t>;ee*F z6#^rrunlK;m1um-Q>f4!qPaE@(e3!4?L(!s6?gbomh!m6_BK~ z3o2|eEp4$jIIKWX+LFkFxCz!9u8EG0>i9^YBFUeDzhu3RMG~D~M8f!T$e){P;N?yA(O9M5V&z)P6U9)9Ci-t^K9Z!Cv6;q+$?Yabdub7by2 zO0`pM?F28ugAuM&wvEgU0@O~P$2;2{A)olHYP_P|7V?h5m-;@qRbcngSnT=x;yk>Q ze7g^s21eRC>cW%|NpI@_XAkRW;!SB7%@f0ZG%03cN6B)!d66vQ8WtNn?MI4=*s(ue z#Usd${b+$IkKEjkQp_tm%C{zj+88Tq8^qVC?2JQ)M_sdzEmJi1hvOp^);`+C==lPB z%YTzaHnDCUENGX`+Ml^KC0oGDm%hySW-NUf=lvPK^x{%RbX>!qT!V#AS6oHqHM-~? z4EUjv*rmm4voo&o%JfcmQ-$MN0JqUocu41JpNR(w3Yt#qWO%1_0)qhEqPsW}Q^zQ} zfIrv2)^{oO<~5cpd_`L4?&+QKj80`}psos}hN^(9+h`A<1Jx&HbXtA^$ryPps|>J5 z7OiEwIz!(53XRnTX}mA9CrqrK$Fbzcuh26QAok0wFUU2TjIKfxR1D#(P}xX2O4l9g zTKw2`U#y>peW0CzMI9~wl~qtyQ65`lV)01w@BtM2)T|r0?8fS>0=iQS@7_L+^3{Hk z2=F>C;gYYqQo(QB=z8}|h8>v$y*S)l}{30(%u5Y!lrZ^d-L@K#{6! z(s}?rs){AU52DOo6K}2$1PKt-Jwq%9(X*=g=#hMYZ~po-ge% zY%RypK3FuJKF!4rWhAsw0P%2tve1d*RKJkFJ5fqhw9jYC%4b>Ff&54t&j>c&>O^Yo z5t|Qh_v2$eqm%fZXn^^wZ;$VDxF7Jmbalbi*p6i#^%wLPn$90Szxe#X^Ck6XegEw? zHo1*weGr)$k9my!y)+NMi8qZCZW`y`g#6?G@)^T?#=WPEi+skSo5uHU8e=<*%R2H0 zv-vS>zMjqR&*n$7`DF7UG&tgOpVKG!aMo=*Q?-a3ID~N2FX{HD!3VA7VDDY@Cb#<+ z(s~FD37eM=pnag5!)WB_jY3r+M~^Bjb|w*yDohSee3L7v_@@(o_6fA_K3MUIW9Jg# zFuE0GN`Eo^we)|aZ%HpruS|EQpCl`fpn|Z&8AXROijR=iBS;^*Q7D`wZz2uO7l zA(TD#=UAVJv#NNI?&}OC6np;DXt^c_F@?g(FdUP_qZ!AJW+~kIdT+@GG8`m^6%X3T}6-H&7xcXu3q!^!S@$2Dmlw3FL26#a>|RGaK_V( z%1~5yP(hSMV(||dc<3ER7@nE${UL+LS6<-Xt$5uDzbuT+i|`jb)?{P62zT)K7%wqm z1y#_;f|M*eXs(hTCmoiB?gq@XfrfhxbTgBaId=pwkyIkXNlBuL1E!8pymo7YIUe$)lrO_g}4 zT#&-VYl3t{yg|#(Yl7L1imnNc2Vl!IHK%CPY@C_n(23iH4aF3pdaK}IEo>q$mk8n! zp<>hQlHs|)IMCF)LXc>4fJpca(L73UMyS|K34l?}VZj>eGAepYvRo~QKMJx-5PyOu zMj!m{wBUHi@{3+0F$VceaBAiP;f~?C@{#W1CMc4(zeR)1Fr))a2A4(Qf}>OpBY{jh zjg)LK8P#)4E{i*Ay`skI`Hm-O$c{hCay%RqGA9WKMrdtQg2RZSIU}N`HbK5+^I^A`U;Y5pI<&5lH=p1VuK{39hLr}9{aOBHQ zt}sD9#1)PsQZ*XW`#S+9`3ca!cv8U8pqFQo88dOt&E08GGp!T zB1;J_-0NaDfyh`l{I;E32gL8)WWW6PcFb8~n*e;xSvPBE;FQY%c2Gk_X%Q@;K}mcL2o2kW=8f3n^kfvd8Gyo zeEx_3p$>dtUbj%A?i0$zD3LC|(%TiP^tEbT8f6-9JTTulem*{sWh6Q9#w5pp)ugos z&c)U|XE0GK7g(9y%aR8qupxb=2(eU)TO*(3Jl}C}Vm~%uM8PVm6s>g-EKpWTHa?ye=(HJ(RCli( zV=A27?n4}1qjgl|pQ*@`vwDiG393L+xt;|!>AVPYlA&{-g}E=6gVr3qX->)lV8ls5 zNlS#h=Y&8dEYI?s6hK0~T+KmG0azW*mCG&;x_gqmeGCnn7oF?ij7eD#8^V$T-G_>H zq3C^K!v})#NDgQl95l4o88o9{SYeH>c~15TqLUMka`G)fJj97#bH#_b;%~U(BV6&f zoP0yravbTyn5BkgvR@!WkD~-L^lm&IiQv*`5n$$t)f`Mc(Z$KI2x_?E@3^}|C8;WI z3w05B4DU)&G_F)7#5FCTetdeFw}TVsIK|#hn9xhZmfm%y;+qS=_;JRB1v0}a{qFiP zB@||sIZ}#9o8~s+LAmx-wrooXOfjx#qp%?mhy+CoP6~bZG=Gau^NaV^UT^~R7@Kay zg8LAmW$G-!ExI3+rUl8K3OcLf-HTNY2)iE7SnT*!=9a+nQA6I^(ap1G<7C|l6h{sJ zP%!z@!w&swCj;hx?E)B>COR<9)EIoz`2UX(7?`Er9>Kw5K_>S`*D*}KEx01xL*)Mm zU;yPif~d06(Pqt7I@X+3Vge&Ex?9jkY3DEB(^7W_4WI>wMo)u=P^(r-vcv^__^{v1 zCPyEWf%@W4a`2GF){6nh?(1g#n^Pi|fq&%q}I zwS0M@B@!03CQ%CWK%NUy8g-kxS>eC_5f3KAPNC>N0n(oEf&T+OA^?xP51$M_Vh1UMTrBT(cN5sl!M1_9 z!~jdr!XU%y({SK5ms~lGrY3#1NLF#KiS7w?99W>Q7Rel!*fg$OW+6$yXBT0_2Y+-m zFMyapp!kot{{&FWbUcW>a0ZPr1Co=XQY0N9#RQT1Qlx!&1dj)2<4hh;=JjwCl*m`C z%2xW+RISQ}_%y7hPUY^fa7C-KdHpiD>Qu|RzugM*(=2@Liir_dWlN8Uf5|R+F&lho zc-7Nv$zQT-EbV*+wJ|m_@O#w1->Pf~a-oc>RNS_|WCw!WRV3wm6gzG;Z|&<;DdGG4 zEHuelLZxT%TYPo3q)!ncl(u)I&hjaujjk7iM;C-(0{g-jsF$4pjUK)(#KpC zCBW%&gzG^i-1W4gZnQM%`9ywq0?dJJs)nk>Z`Iqlvj&iTH{EO>z%ubTRIFzVTd?p!n7swi@tR zqCJZ)s#fh)&Z0%|fth5~qQt0sUPEFW;ovvOwpujQd`;j3n=EiiM_{XkV86vf{tdAE z?@?!EquZ~Yf^0n~ekjQA929p6^8Xza%LIAjK~bWf%((+tF!cWsfpY@bhW%fF#j)Bz zQu9e5`K~6Ae0xcN$#n19xbW#dFqfTsenHQBiL)0QLQFNBp9Nv6GeP0hryK4iLr|+wTQ!vq!SM1HRb6B6}K=F~s zJ$Y`<>&>gtdA*)I*_#IdC4`<|p77j_e=P|GRHGGB5!NF;(m^%6Lq?n zG=B_&%OLqno;O*d;U%d`7MXS|G404T?RddN1AvIU1p)Mu`6g4za?@&j&b+Kf_bxQ_ zyeUD8Rm-iR_^IW%a(Ru;11l~fFZkOE_?Dk=S)S#z8ZhC@f5eU#O$%%c?4QpqTg^*c z$qOdFwh^u`^q{--J{Ok&=cRBy@I!{e85{DA^H&;ZKEz~f%QqSGR|YFKuXxB<(3Sse zg>lcye=jmA^q@6jc_I%jmEj@F;k+v;-V8nArN5K-%!l57h&eB7^^GjBh_oVTBc{{fs?0V6it z9)jEQ?H|}Q!LkKraa;b5`6l?{z~dij4FfgwJQ>6SPc*Ae}m#-p$#9IZLu3K12zz!2yy@Ww%g9@m$%y zcLLm3l-V&rR?~LuR1ka8>IF1$+Cpez3rI(o*5;)XnA!zBAHLYzLxHo8_gff-Qb(@W=Y^GT9Ul0YPx0+& zYamaN&dL!-Rb?=qa+UPK_>QU67Yjl>bD{0|l!ya3hWFh#D_Q42!&x^`p@NL<=pF={`BZd9>x6qW=6@?n#5a@OSJ0j(9XNo}1+Ssh4MFw>Et0xx+60oI?WNH{X($E3b%VYFEs(QKTAk)DD8r)- zw5%bH1}!4{FKc@fXRB62bZy%4AxGdMmRms-Dx77@1yv~V)@w6K(jBdiWHoDbTi_u{ o+Fp8Hufdb@*YxT|WeGG)bn0Gul5j!$6gktTov;_zY3ttmf5>bby#N3J diff --git a/auxmem.init.s b/auxmem.init.s index 8c8c66a..1d8ddce 100644 --- a/auxmem.init.s +++ b/auxmem.init.s @@ -218,6 +218,6 @@ BYTE00 BEQ BYTE00A ; OSBYTE 0,0 - generate error RTS ; %000x1xxx host type, 'A'pple BYTE00A BRK DB $F7 -HELLO ASC 'Applecorn MOS 2022-12-26' +HELLO ASC 'Applecorn MOS 2022-12-27' DB $00 ; Unify MOS messages diff --git a/auxmem.shr.s b/auxmem.shr.s index 11d13e9..016cf20 100644 --- a/auxmem.shr.s +++ b/auxmem.shr.s @@ -482,6 +482,7 @@ SHRNEXTROW LDA VDUADDR+0 ; Add 160 to VDUADDR * Forwards scroll one line * Copy text line A+1 to line A * Note: Code for this courtesy Kent Dickey +* TODO: Not quite right in 320 mode SHRSCR1LINE PHY PHX STA VDUADDR+1 ; Screen line -> MSB @@ -499,47 +500,48 @@ SHRSCR1LINE PHY ADC VDUADDR ; Mult 5 STA VDUADDR ; VDUADDR = line * $500 LDA TXTWINLFT ; Left margin - ASL ; 2 bytes / char LDY VDUPIXELS ; Pixels per byte CPY #$02 ; 2 pixels per byte in 320 mode BNE :S1 - ASL ; 4 bytes / char -:S1 AND #$00ff ; Mask to get 8 bit result + ASL ; Double TXTWINLFT +:S1 ASL ; 2 bytes / char + AND #$00ff ; Mask to get 8 bit result ADC VDUADDR ; Add to beginning of line addr STA VDUADDR ; VDUADDR = start position SEP #$21 ; M 8 bit, X 16 bit, carry set MX %10 ; Tell Merlin LDA TXTWINRGT ; Compute width .. SBC TXTWINLFT ; .. right minus left - REP #$31 ; M,X 16 bit, carry clear - MX %00 ; Tell Merlin - ASL ; 2 bytes / char LDY VDUPIXELS ; Pixels per byte CPY #$02 ; 2 pixels per byte in 320 mode BNE :S2 - ASL ; 4 bytes / char -:S2 AND #$00ff ; Mask to get 8 bit result + ASL ; Double the width for 320 + INC A ; Plus one +:S2 REP #$31 ; M,X 16 bit, carry clear + MX %00 ; Tell Merlin + ASL ; 2 bytes / char + AND #$00ff ; Mask to get 8 bit result ADC VDUADDR ; Add to start position TAX ; Will use as index - PEA #$e1e1 ; Set databank to $E1 + PEA #$E1E1 ; Set databank to $E1 PLB PLB -:LOOP1 LDA $2500,x ; 2 bytes, row 0 - STA $2000,x - LDA $25a0,x ; row 1 - STA $20a0,x - LDA $2640,x ; row 2 - STA $2140,x - LDA $26e0,x ; row 3 - STA $21e0,x - LDA $2780,x ; row 4 - STA $2280,x - LDA $2820,x ; row 5 - STA $2320,x - LDA $28c0,x ; row 6 - STA $23c0,x - LDA $2960,x ; row 7 - STA $2460,x +:LOOP1 LDA $2500,X ; 2 bytes, row 0 + STA $2000,X + LDA $25A0,X ; row 1 + STA $20A0,X + LDA $2640,X ; row 2 + STA $2140,X + LDA $26E0,X ; row 3 + STA $21E0,X + LDA $2780,X ; row 4 + STA $2280,X + LDA $2820,X ; row 5 + STA $2320,X + LDA $28C0,X ; row 6 + STA $23C0,X + LDA $2960,X ; row 7 + STA $2460,X DEX ; Update index DEX BMI :DONE ; Jump out if odd->-ve @@ -570,7 +572,11 @@ SHRCLREOL JSR SHRCHARADDR :L0 LDA VDUTEXTX TAX ASL ; 2 bytes / char - TAY + LDY VDUPIXELS ; Pixels per byte + CPY #$02 ; 2 is 320-mode (MODE 1) + BNE :S0 + ASL ; 4 bytes / char +:S0 TAY :L1 CPX TXTWINRGT BCS :S1 LDA SHRBGMASKA