From b71302d05df64ae373e7a5dee0605b4b920c2dd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 19 Dec 2018 08:12:58 +0100 Subject: [PATCH] Kernel 0.92 --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes DRV/DHGR.DRV.G.txt | 4 +- DRV/DHGR.DRV.S.BLT.txt | 6 +- DRV/DHGR.DRV.S.LBUF.txt | 4 +- DRV/DHGR.DRV.S.LINE.txt | 4 +- DRV/DHGR.DRV.S.PIX.txt | 4 +- DRV/DHGR.DRV.S.RECT.txt | 8 +- DRV/DHGR.DRV.S.txt | 302 ++++++++++++++++++++++----------------- DRV/MOUSE.DRV.S.txt | 2 +- INC/A2osX.I.txt | 1 + INC/GFX.I.txt | 11 +- 11 files changed, 195 insertions(+), 151 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 00096ed3c5a05df789da56f957ff2f300589ad35..47025e4461c5a4a1b04e7fbcd69c1f0657fd9dca 100644 GIT binary patch delta 16037 zcmch830PD|wtwA*hRaUVEY03DYXdgj&8{K>)j(?lE!}{-Ahd#tB8%eMqEfE7CMikO z7!!>;VqB6K*O19(cC$_P88bx^qFhliWX-MThQI$}KW&$nFM+WTCqsl235oo#@T){;=gF%+qhL za0|@MM5{DLe}q1IZv3u9ZO9qx`y3Z|KSHbH)4YJ4(XlI05pt&CgJ3ss;>^-(Z@P(I zoUwlVGbb0^=s2VJ;uLpAb|b&GBCLh8>2OK0&aNvfoxELVn$(k!mx=g!TwXk%W2qnE}2_F3&(S@+)6rYJeR<&qU*DY7rMdYVD9t@vu(lx*@h?n2ldgmltsw zu9xmBg1QrWQHVCs_lmgi$c-+qb=K-CTxAoRAi-cjx=l2om>b1yrUk{EHhjyFUP*aT zb)V>-Aq$0VrOsk5G_7w)Y^%hq!wfk{xlN*NcCky0Mx@$K2aCBd=Z+zX4%;T$>R7p1 z(Cj;hC6!gxrV1u8>XB-fB&ju3+ssv!EXzzJ-_50>z&n^wEZdlk_&eEH@xF^o?Xl@f zG2$s>0{4LCgi@@tZxd>vN5TC-2x(olsZ6v7?rs-{&DAVV6mpM?E5W8(k<3CNd+C7^ zE;xOkOJ=E@D2nn>*nSs>Z7?XsHiOX4<`b0N+Lm@fFIGglSYloIfKE!6xF)LeOZNGP^QRuAGIl+2GX5!3f0;L1T^&i%UyHaZc~jMeR*UJ|MVpVn{5ykq2%(#N1Gw zq0Tjvgq}BXF?o*)S)Uy;6tgxM z5&sy=+W(x?y*g-j#Ghwu%mt2q*yMBx|ds8UW9c}dDg=nh?prOIYnFDPW8 z@XNFw6zU!ysZdvKwljqs6gfCjVzU?7Yi#QT+gv1n0$dFK;|Td?L6C>|Cnay5qOX)f zjh?1o3Qj!3G;P0i;#sOL<5bQoBNc9Q;<=HM+nsn`aN>m#a+eb?GABY_VlrW{>1<-} z8ByHJBS~F#Rhwg>gPtwp{J2->(`8&7ca?rx22;nY)VrLE=U$__a_Gm`M_Ab#S{8`? zn1xht(3v1Ee^cnPKMm`MH!w8ETg;Pyx1r0dwjP_kx~9aA_;(l`_%2vj;YO71%JBE- zrE*Rc@xDass%t96Iwk52Fb$)~59rtBTm<)L>TQPU>@QSn<|3o7xwLH-lgTO!_?|>* zK9Bs6HkiTSuXH6u&X1U;)oR9~g9a4zu|%0Mn_7_a6ULOdlrmA!bw)Lp*x22MfLgkZX6=yveX`nxwxmaYhhz&%c6xn=7mj;Zbt{= zJ(xy_rwrs3Wz~>r5tfEx7=M?A3-$71Dv{na)&c{_hb0xhG8nbyN;6yc^(fF!AYinz z`lDcfA&sj{wWdnD*vMH(5g>4rY9u3ADFa0#ldY!0tWtDKB#?!b;a4><6 zt>hwe5=BXc33_;nXqCC%pwnd6 zWn$wd==J(M6g8U0SwV9QEfAuybP7b#1-BX0)wm4upoDRBr=VF#2duELjHfSHp)N)A zZ$eZ;y(V#yWASa~umcc>UIOfF^(e-4n^4%!Y!a%QU=*dLw0;s~TSiw4Q90c^39>cQ z3qmx3z6)f8#g&0;CuCe-S5=Kscm-8dbE>RLm%Pl(wu3oL9#Q2Im@BK;I9WeQw2ZRS z8P!myNpu-R)2m&2MRs$AN!&Xbjq8PRRAE|&Vr(vP#gI5tFNsl%-6bsx-w@O-M71K49bG=%+T$ zpT2J6f@L#gkJ>pdf^y9;FTfK^4|XhRX%wavPb5w}Av|IaG$52#I0Fjt8bP|2 zWSw}I!aVIWf-DzFxaE8ith0W@5;kwRA>RM&H*a_ZaJvJ2?WBz(Z8Fm4M%vsTZIgGE z%c4T*(#Pa?!&4Ylo|DImkANFSpOXVT&W=9kSv?~t2zke$#fd3AJo$ZJy(=+1^z8mn zenS~2qe(OQ^u!cg4ihAwDt$NO6_xXP4>mdiaMTUZpVy`S7OKfCs}&6!N;H!5;g> zr$XfOhRY23yg78~|0i}iQ3p>6LwgR@+Z;SjvI1F0usk&H(4K>QbWTqx@_m;X>U(X- z|2=k{ouluqL;mlxlp){PTaNe-SRH)+%u&NQ{uk%l7PYzo9+uycTH_t{Kh()_6XSa0 zy5f4`5IP>H9#E(crmE4Ufjy6FuROQ$s^8Hyeci_6LFxgedQCCk-B&Ys0=XZ()rZ{s z?1RVQlIuG+D5PozE0FtD_tBufO%!fL?kUHE)dL~w^lqcx<9Mi3JrKrnKWcpD{ax=L zT`m4<#osRRH%|QR6@HJa)C1w_gZsgmld)S@#PzL=8;Dj5l7T2OIv$}Oh*Te}1cmyd zwzdThwb|^*Fq<3ILZ_>7d&?3>yACl?Mn@_ zb3>=PqM>VvBUxRssL7#2x3g+k(vsE1iyGRS)L6hg>_b?Kt6 zg(Gv$(>F@Fxl7G$5n{Nl(Az6F#k~;cdrA1yYJ4yK6o=ur6kth8PJT1NoVZ_;lKhCK zCH`W(HsRJSAzqd6Ui!3A?~R(Kdrvnl<6A8)x+sfC_&V;&DRtk?xJ%QG`)=KOKJW)s z{n5C*`o51YA4CU?S=l+cdHK8A|9Mv=?@jp?Uf(;pOBdq$I}JC4Xoca%m219NzXVke zA-$H-n+!KLUj6z25_(N`!0+-jgWh8w8oaXRyQ6M>*DkB-RrTxDy>X}2$1d(LoKpAi zH*5_2Q9VPWs$Y3;+-QA>>ZaGZH&R>7m)}mSKlfH@OTy*%;Ntbv%WtLCJ4xYsU2nz# zv}cW9`5u)+ccj^o;h{^)C@nns_0{j|)o&&of57nK5yMTND^t~>@yp@z>UZ_W4;lvU zH>m41y@kgQ8wMT}E+g_jDLe+s1BVQ1r)KH_Z{3{0&hki)?ds_ z?MH(b*QK7)>`K3$epPmT)W?}OcH96ZZNRaW192l%PN(nGj8Lf`Av&c=H1rl;@-aFS zjq<`tnw^>(A7|bSJDD+*KgcBd>gPiwm}QA(iP_BRck>joWEp0kocQjLG32;YbL9pU zwBsK?iN%4)$!arFb~tm$AXRnWq@7-sZfWV&f78- z#0Hmms1^|?M|xCn-ViO+1Zr^g#*nAK$yifAaKP{!cU3D5l@B%2K>0>9aG&9(?5Ojw zejl{I(0f0^sIi2`4;(aTe?B6Ns}D5;hYenCM}&bT>U(>uTAz*U%S#-%64!$I@)Hm1 zH*4LFoV#@k@({B4hGiiY+CDTskDObV+FN)oGxZ2GGz^lP1yK6c7|>S12y+xVr9pOD zQ!t?2rGe3XWyhz&;ByoXNunSAPm&oUB;bAJ{f2o0j=;_3ec}PbDq##?62|bkx6-`5 zk3rGi-bXIIrM;=h|5n>u2vf8Z3cjF~7w*#BxH3Xu9~|PZ-!7>cmi#9Rp%FImS0~)o z2vdbBFB`h4mP<|I6xt+AXcJy)g8I`Mty8SBcqLY`{{L3Fp*s90Pp@m7w~78Im8(B~ z!Z7fV;c94~+hCu3aL>Vy)$Lk!X>y-zu+M$4etk->_JHT9l>XDgEO-zNoQ6?&Q+99- z8Fwf})%uvBH}#OV^_-zM4U#Rqvo~dj?7H^&NyES?!}|2zQP4~ARM4 zX|uNPLQ3Dw6w9_0VFu)H#ypU7C|9W7q0zl#4(myQTCY7^ulp)c_fVdAod>SxTU06aOegc##qK|E zfRf9#w~m}jI$RKa-T*E%i>ZAVm@n6U?aO{2Pl_Vdx&zJf5{_p$v zpIqFQQh#{NP3`kHGcK()^d?-|Wav#ioid@IOMB#0LizQStI)BhQwmmUk2EV1o*7er z)U$WY=@hNA9+aBKFuAjSCA#KZy|TNlemvsbJOg42orSRho^Bi(U*Fcfa`sL>z zZ(bXe6noZf*naQhw^pxOv2@X_LQdw+2dc-n!Db?0HT*OHVpqaX381hWemu9s&rR6q zq5XhsZt!yvFzAV#2>l3G$O+-to5$XSf5&znd}`yF>o4|S_~EM$;BqHio`K5?8$r+y zf)79d^g*Dn1N}pd{r~>w{5?~II8G*Wb8~l>%RM|iJ$c^C%iG(>$Jf`-&)+{FATUs& z2ntdvgM&jtLPNvCRI2dsh=|C@sHo`Zn3&jDwK^_Nqlu4CNJvaff(?{VK?ocRG8Wv# z;DkcNAZNjY1y2@u7Q9&SX2FLAUl#mW@Mj@_g+LY*ECjKjWFeS^5Eh)FEQGP3Vj-M` z2o@q)h+-j{g%}oMSx~bO$AX51coq^^NJN~>&0X$sd*r-5`TsrT{5_}sUwVOL?jF3i zuYX`raHuLGipt~N4C6UBxu=(pUw}dx5*8jA9UB*)n5<13m0`%t&dncFP*_xADl<>4 zsG4M}shcuw#;k@$$K00rt&0|SbS+)BVwICFiFZ@eN8!gQ^YHc$3XO=-B&F(%IitrF zmrkgxuAMq__MCYO+m|d~?dItdpbU$QjZaR?$jlv6SW-5z%2qdRR^#0Hi#nFBa3VfX zrB2c3jW4%Ou5WJZ=DZZ)aau!uk$KXThL*+4WZpp$npETH;tADLXU}V2?&hP6j8DrP zQ!>#ut#N*bbA`Kaa8yEi)>v$@Pj6b#xl-;I5}i0IyTDXYGsDr^waUXkG$u)xGp@9< zcIKRgOICXZgvBOj_#) zI(ov?dCPqw)5c7kHh+b0RQg!U^aU&ZqDK`}%xGQZAEO&rIdkFafY^+}s#%MiNIkxu ziz{l7X^LmN#g{a?C*US|qRHWrR655qxoj?1# zK&xU>P_@z)Y!9gktqrSFO%9(DF*R~p)b!{X&X}38v()u*4Vu~UjR{SOj-)xsb5okN zEvfU;=BFOz>4Sy&^5 z|3%szGGyl$xMJ7c;fh^%gDZB~ zxnh@{D|XqrVwYX~Ea|p#8MBztS!YTuc&X3p}1pIeZa0V&~{DpG@@ zeLayU@b)ufIB{&=rrKO!h<4 zIR)|34S6Jk@|)bFEBQ1JnyTV``LY^whVcG^j(>p9qiqj+_|X+xJtC8X{7^rB9>4)r%IZ0d<;X`LN~W}yDY*0y0r2k&=~j~?~U zUg+r28Iarn+4vb*Ht`AY##x<-`a3!sdf+Wu+R&TKAf0V32n*mf5RzwsNn|$d`Gyaf zX*QQ2c@7XhxsYdjLyr!=Rp&w4J0Ix`w5_=f@uML_M+;JnWf|K{c56|Y$%rBggkrmU z60-F0LbqXwqo=5grI36aWRX!wi?{H)*zwFxP(zAhmMF1QvrM8&==Lpqqz49rQ6_qF z3!l!F(hs)q$sT1uC6-g~t$ae18Lkx*e&v9CBCvTDI$}7m-?^cRig=-YAvp?HMh*^w05#DxKpj*NLm((-T*RNW4lWz ze&l3AIFqoE*019uxJ`7$IzBRSGs_0<7|2EZM!*z>(-K=)$q`%Wg>`(mS078Nw$TsP z@nOE(kp*g{D>3LQitZwO9=C($6TXDoNmmg*n%hP1A$%0Kn?44S*B#6@=1%&7AiRtI zONb~9-@r#r+k=WNc3p8raZ6{_oDTL)mU&^!MKS%N6sp6-BPwIeLos)|q$P_Mn47vs zO7l^~J#@zgK77_*sUrKJvi8=t;$@u<@v{dj1U?+{`^-$eGZB~ zMn4USW$_ z%2cbls>E*5rY}Q2&%x~GSS&7h&%?A9_W~Wf%Bv^52sEsNY)}Zt5Rv>P5G!703sb!K z5o(kHDPI9k%3;gCYAS z>Tg-N3I1(yNgeW z`b?^@9{K!DxLno~4|{{p!6NkwdTkf4jro#!Cr(c~3!IsNX63&Us?&{9Zc^_%_~hbm zZr3R{3p#&iI{de+>c0N~FWaEiV6yW0j;!sRh529Z$%9p#7e^nxgOBy} zhD4MPN8i7Lk7)9hO!9h73!C5*S`X|YklYVc0{uC0=aoOzB=evxre$7EfRt)$un6BTSF`{{>!J%XKn;hcE#ZM!%sA~A{8v%|VB-7F{~h7)&`LwC=*GDl|*%wfn|&B1{0Z0JV8ae~gW9yqlN0*hlI z_$t>x1w!LFX}}8RGhBC{GJ*Li=r=SrJB02^l)4}ZswR!$WNshwPvKxMGq0l^Dhq9| zg-rQWjt%QHRsnfBkYS_f<9G3)P93X^R|Xt3GgppAzIwQr(o@i5sY1R6xGsY0ax?Na z!gW=ReKhjRlvr%8MSfY3m<%d#rUUWWEHgz8e6p?uCU;8F7GVqMlPh%@jFUX(j88sL zj>UAzGl~GGaDUe3>aq<+sF~kbuD_wFu_rzuD<3HfgqG?SvUkb(ajY64iw#9G@`z8*4Al#Z|w2(L2HVm;!^rKU1Nm4&7X znE)44(uD?E*wt$2NipPTQP4!GL4Y#$q~vLlw*?rnO+XGF9_)5+xo_h$d z;-(Z;bS>zdysM+L8^)8gW}~1J*B z@)Ei+sD|tBT-HD&20Bw-3%Wja(oK=+gv~S%-cy7IZEJ2o{8Z5b@zYpm1x;tII#eFw zXMjcn48xfmY{?r?@T^~H2p-i#rojzD8#i<;80r3OXwpT)44u`_%bksac9SrA7r^Kp zuD*{0{1i6UkmDS|@41i`p1ok!ZiY19!n)LT;yqzL96=DCQ)_J18Mf+@4A|R<546H5 z44n;5z1vaZg5T&kZ&MPMca+%r8?D=wgw006!v9_gb}T4y(SNTa>^ssC-^K=*|6)$s zjtTpIzMZk^juCm#19$Vm&Q2y#cDbfpovqGZQf{&##S%D|C_ID0Q=Z*4*^Yvi4igoy zhk{4lZi#`X$#Qcw7zHmI*2&Y`>~NqQ1uY-u*yEydh089&WH(pUV6zPctQzt_c&O5@ zrWN<_DIC0}yayi7*UWj$ z7j-r=olQb2!Kv5+4In(exay?b3ZA$asZxEC&QPU7wvAA7)k?X21SwT($FQYTE9I`? z0`v4vsHhbwcMq#!)@;f$h5TSSwG@vfndIx$^2~lvAj;i@WhD;ITmSj%MyXYoZX=suU$5s7k+sQ%I4s44y+Ro_)R zvE_k_N{~uHPw+G;mBB9f7BZOBCDT%y8OOori}D zbXDh(VJ#Q+=&+W{@a!<<(sDlbTg!95QS&=5QNo^xzrZGl;EUYwu5+{S@Scl;;e5aF z6b(DkaGTE4B zSjQg6R8NiIrwBZIFpGSez5r(2GgNmUJS#m*C*H>=jJd+H4tb7q?RK^b9t)YGkmtGL z3bqB3$l?mbzrZYVU!=$G<8!=U;@GoUk^RvJ_{6pDyAtD+RGZ{AF1O6hbyDwK+pff@ zP#^b^>w+)||8(44fw&l#+O3*hiQyr1f09=`%jRizrBR;!BFRgs3k-&LcESzg+U(K5 z8n58MVBvk;NH)91>xHww)OcOzqQWAj2L*T+se_$ig`*W-K_F!mJZ>MJ>?J!Zo9gvT z^oC!SdI7x8{<74^dK1ncZm>4{p0zgn{k)wWLbU$qx54_OKOg`Qc-H!(;-ooFI$sM1 zF-^6_!hi0vtrd={X6Lg5rSRg*yErIf%q-W5%~E*fBmG|{@f8AW80+C!ucARx5Dx+i zXToQ*BfP3cI;%J+%-IBTYn{$oWV6+=Bddno^_kGKNa(C> zf#5`flL$^GIE7#>!KnnN5u8r&D1vnaXArC>*g&w6;7o$E2+k%rhu~a-^9ar-cr?Ld z2p&st0m0)4E+lw7!9@fY6I?sX83fNHcoxC+1UC>oo8U%*n+SFgJcr=91UD1h zLhw9-=M%hu;8ubc61<4uHi8!u+)i)@!JPzm5xj)pr37~qyo})G1g{`?CBdr*UQMu* z;57vI5WJS)bp)>`xR+o;@CJf661<7v%>-{Dcq_qu1aBjFJHa~$-bwH-f_D>q2f=p| zd>6r#;5`KQ6MQ$p_Yl07;C%$|C-`214-kAG!3PPxpWp`wK1A?gf*&OK2*F1QK1T2# z2tH2m0Kq2+eu&_c1fL@KG{I*Gewg4#2!52{vjjgz@Hv9d6MTW-iv(XH_%gwd6Ff-p z69oT};3o-wir}XSeum&@3BE$`a|Az6@CyXLNbpMpzfABe1YafiRf1n5_;rHcAoxv! z|3vUx1iwx2I|RQ=@OuQmPw)o>|C!*w5PXf`4+;J&!5aaLU2Yr&;XbXXaqC?9Dq51xqxOs3t%2#K41Z$ z6|fMn2+#&t3}^>*06GC(fF*#XfNsDtz;eI}z)HX>z-oXKum;crSPNJOSP$q05Woh& zM!+V(X22G}RzM$M8(=$N2Vf^)7hpHw4#1s&y8slh2hb0=8*mR`FJK>FKj2=#0lX2K>UEz_+;b{{;d#4kZ8p delta 17030 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 j;3wc`;1}S3z^}kz;5XoR;1A$W;4k2BLDYA CB.Cache+S.CB.X1 phy ldy #S.CB.DstPtr+1 - sta (ZPCmdPtr),y + sta (ZPIOCTL),y pla dey - sta (ZPCmdPtr),y + sta (ZPIOCTL),y rts *-------------------------------------- MAN -SAVE USR/SRC/BIN/DRV/DHGR.DRV.S.BLT -LOAD USR/SRC/BIN/DRV/DHGR.DRV.S +SAVE USR/SRC/DRV/DHGR.DRV.S.BLT +LOAD USR/SRC/DRV/DHGR.DRV.S ASM diff --git a/DRV/DHGR.DRV.S.txt b/DRV/DHGR.DRV.S.txt index 09fd2782..3ae1817b 100644 --- a/DRV/DHGR.DRV.S.txt +++ b/DRV/DHGR.DRV.S.txt @@ -9,13 +9,127 @@ AUTO 4,1 .INB INC/MACROS.I .INB INC/A2OSX.I .INB INC/MLI.I + .INB INC/MLI.E.I .INB INC/IO.I .INB INC/GFX.I .INB INC/GFX.EVE.I .INB INC/GUI.I .INB INC/LIBGUI.I *-------------------------------------- -ZPCmdPtr .EQ ZPDRV +* File Header (16 Bytes) +*-------------------------------------- +CS.START cld + jmp Dev.Detect cld,jmp abs=DRV + .DA #$61 6502,Level 1 (65c02) + .DA #1 DRV Layout Version 1 + .DA 0 + .DA CS.END-CS.START Code Length + .DA 0 + .DA 0 + .DA 0 +*-------------------------------------- +* Relocation Table +*-------------------------------------- +L.MSG.DETECT .DA MSG.DETECT +L.MSG.DETECT.IIC .DA MSG.DETECT.IIC +L.MSG.DETECT.EVE .DA MSG.DETECT.EVE +L.MSG.DETECT.80C .DA MSG.DETECT.80C +L.DRV.CS.START .DA DRV.CS.START +L.FD.DEV .DA FD.DEV +L.FD.DEV.NAME .DA FD.DEV.NAME + .DA 0 End Of Reloc Table +*-------------------------------------- +Dev.Detect >LDYA L.MSG.DETECT + >SYSCALL puts + + lda MACHID + and #MACHID.T + cmp #MACHID.T.IIc + bne .1 + + lda #$80 + sta DCB+S.DCB.GFX.S $80=//c + + >LDYA L.MSG.DETECT.IIC + + bra .3 + +.1 php + sei + + sta SETPAGE2 + ldx $400 Save Aux $400 + + lda #$ff Make sure !=1 for comparing later + sta $400 + + sta CLRPAGE2 + ldy $400 Save Main $400 + + lda #$01 Select Foreground/BKgrnd Colors + sta TXT16.ON Activate 16 color mode + + sta $400 Store something in Main + + sta SETPAGE2 + + eor $400 read back AUX, If EVE, must be F/BG colors + bne .2 + + dec + sta DCB+S.DCB.GFX.S 0=80C,$ff=EVE + +.2 stx $400 Set back Aux $400 + sta CLRPAGE2 + sty $400 Set back Main $400 + + plp + + + >LDYA L.MSG.DETECT.EVE + + bit DCB+S.DCB.GFX.S + bmi .3 + + >LDYA L.MSG.DETECT.80C + +.3 >SYSCALL puts + + >PUSHWI DRV.END + >PUSHWI DRV.CS.END + >PUSHWI DRV.CS.START + >LDYA L.DRV.CS.START + >SYSCALL InsDrv + bcs .9 + >STYA FD.DEV+S.FD.DEV.DRVPTR + + >PUSHW L.FD.DEV.NAME + >LDYA L.FD.DEV + >SYSCALL MKDEV + +.9 rts +*-------------------------------------- +CS.END +MSG.DETECT .AZ "Apple IIe/IIc DHGR Driver." +MSG.DETECT.IIC .AZ "Apple //c detected, Assuming 'Le Chat Mauve' Mode." +MSG.DETECT.EVE .AZ "'Le Chat Mauve EVE' Board Detected." +MSG.DETECT.80C .AZ "No Specific H/W Found, Assuming 80c Mode." +*-------------------------------------- +* Device Header (16 Bytes) +*-------------------------------------- +FD.DEV .DA #S.FD.T.CDEV + .DA #0 HANDLER + .DA #0 BUSID + .DA #0 DEVID + .DA 0 BUSPTR + .BS 2 DRVPTR + .DA 0 DCBPTR + .DA 0 BUFPTR +FD.DEV.NAME .AZ "GFX" +*-------------------------------------- +* Driver Code +*-------------------------------------- +ZPIOCTL .EQ ZPDRV ZPBasePtr .EQ ZPDRV+2 ZPBMShiftPtr .EQ ZPDRV+4 ZPScrShiftPtr .EQ ZPDRV+6 @@ -42,106 +156,9 @@ BLT.CMASK .EQ ZPDRV+30 *-------------------------------------- ZPTmpByte .EQ ZPDRV+31 *-------------------------------------- -* File Header (16 Bytes) -*-------------------------------------- -CS.START cld - jmp Dev.Detect cld,jmp abs=DRV - .DA #$61 6502,Level 1 (65c02) - .DA #1 DRV Layout Version 1 - .DA 0 - .DA CS.END-CS.START Code Length - .DA DEV.HEADER-CS.START Device Header Offset - .DA DRV.CS.START-CS.START Driver Code Offset - .DA DRV.CS.END-DRV.CS.START Drv Code Length -*-------------------------------------- -* Relocation Table -*-------------------------------------- -L.MSG.DETECT .DA MSG.DETECT -L.MSG.DETECT.IIC .DA MSG.DETECT.IIC -L.MSG.DETECT.EVE .DA MSG.DETECT.EVE -L.MSG.DETECT.80C .DA MSG.DETECT.80C - .DA 0 End Of Reloc Table -*-------------------------------------- -Dev.Detect >LDYA L.MSG.DETECT - >SYSCALL puts - - lda MACHID - and #MACHID.T - cmp #MACHID.T.IIc - bne .1 - - lda #$80 - sta DSTAT+S.DIB.ST $80=//c - - >LDYA L.MSG.DETECT.IIC - - bra .3 - -.1 php - sei - - sta SET80STORE - - sta SETPAGE2 - ldx $400 Save Aux $400 - - lda #$ff Make sure !=1 for comparing later - sta $400 - - sta CLRPAGE2 - ldy $400 Save Main $400 - - lda #$01 Select Foreground/BKgrnd Colors - sta TXT16.ON Activate 16 color mode - - sta $400 Store something in Main - - sta SETPAGE2 - - eor $400 read back AUX, If EVE, must be F/BG colors - bne .2 - - dec - sta DSTAT+S.DIB.ST 0=80C,$ff=EVE - -.2 stx $400 Set back Aux $400 - sta CLRPAGE2 - sty $400 Set back Main $400 - - sta CLR80STORE - - plp - - - >LDYA L.MSG.DETECT.EVE - - bit DSTAT+S.DIB.ST - bmi .3 - - >LDYA L.MSG.DETECT.80C - -.3 >SYSCALL puts - clc - rts -*-------------------------------------- -CS.END -MSG.DETECT .AZ "Apple IIe/IIc DHGR Driver." -MSG.DETECT.IIC .AZ "Apple //c detected, Assuming 'Le Chat Mauve' Mode." -MSG.DETECT.EVE .AZ "'Le Chat Mauve EVE' Board Detected." -MSG.DETECT.80C .AZ "No Specific H/W Found, Assuming 80c Mode." -*-------------------------------------- -* Device Header (16 Bytes) -*-------------------------------------- -DEV.HEADER cld - jmp (DRV.CS.START,x) - .DA #0 - .BS 6 -DEV.HEADER.NAME .AZ "GFX" - .BS 1 -*-------------------------------------- -* Driver Code -*-------------------------------------- -DRV.CS.START .DA STATUS +DRV.CS.START cld + jmp (.1,x) +.1 .DA STATUS .DA A2osX.BADCALL .DA A2osX.BADCALL .DA A2osX.BADCALL @@ -174,13 +191,42 @@ L.SHIFT .DA SHIFT.L1 .DA SHIFT.L4 .DA SHIFT.L5 .DA SHIFT.L6 -L.DSTAT .DA DSTAT L.Color.Pixels .DA Color.Pixels .DA 0 end or relocation *-------------------------------------- -STATUS >LDYA L.DSTAT +STATUS >STYA ZPIOCTL + + ldy #S.IOCTL.STATCODE + lda (ZPIOCTL),y + beq .1 + + cmp #S.IOCTL.STATCODE.GETDIB + bne STATUS.DCB + + ldx #S.DIB-1 + .HS 2C bit abs +.1 ldx #3 + + ldy #S.IOCTL.BUFPTR + lda (ZPIOCTL),y + sta .3+1 + iny + lda (ZPIOCTL),y + sta .3+2 + +.2 lda DIB,x +.3 sta $ffff,x SELF MODIFIED + dex + bpl .2 + clc rts + +STATUS.DCB + +STATUS.9 lda #MLI.E.BADCTL + sec + rts *-------------------------------------- OPEN sta A2osX.SCRNDEVS+2 DEV.ID in A @@ -213,7 +259,7 @@ OPEN sta A2osX.SCRNDEVS+2 DEV.ID in A *-------------------------------------- CONTROL ldy #0 - bit DSTAT+S.DIB.ST + bit DCB+S.DCB.GFX.S bmi .1 //c,EVE mode ldy #CONTROL.LCM-CONTROL.80C @@ -235,26 +281,20 @@ CONTROL ldy #0 CLOSE clc rts *-------------------------------------- -WRITE >STYA ZPCmdPtr +WRITE >STYA ZPIOCTL - sta SETHIRES Make sure SET80STORE active at $2000 - sta SET80STORE - - lda (ZPCmdPtr) Get Cmd + lda (ZPIOCTL) Get Cmd .1 tax ldy CB.CmdLen,x -.2 lda (ZPCmdPtr),y +.2 lda (ZPIOCTL),y sta CB.Cache,y dey bpl .2 .3 jsr .10 - sta CLRPAGE2 - sta CLR80STORE - clc rts @@ -320,15 +360,15 @@ YAMultX stx ZPTmpByte rts *-------------------------------------- - .INB USR/SRC/BIN/DRV/DHGR.DRV.S.BLT - .INB USR/SRC/BIN/DRV/DHGR.DRV.S.LBUF - .INB USR/SRC/BIN/DRV/DHGR.DRV.S.LINE - .INB USR/SRC/BIN/DRV/DHGR.DRV.S.PIX - .INB USR/SRC/BIN/DRV/DHGR.DRV.S.RECT + .INB USR/SRC/DRV/DHGR.DRV.S.BLT + .INB USR/SRC/DRV/DHGR.DRV.S.LBUF + .INB USR/SRC/DRV/DHGR.DRV.S.LINE + .INB USR/SRC/DRV/DHGR.DRV.S.PIX + .INB USR/SRC/DRV/DHGR.DRV.S.RECT *-------------------------------------- DRV.CS.END *-------------------------------------- - .INB USR/SRC/BIN/DRV/DHGR.DRV.G + .INB USR/SRC/DRV/DHGR.DRV.G *-------------------------------------- CONTROL.SWTCHES * sta CLRTEXT @@ -353,10 +393,10 @@ CONTROL.80C * sta SETDHIRES STA $C05E ;AN3 OFF .DA #CLRTEXT - .DA #CLRMIXED +* .DA #CLRMIXED .DA #SETHIRES - .DA #CLR80STORE - .DA #CLRPAGE2 +* .DA #CLR80STORE +* .DA #CLRPAGE2 .DA #SETIOUDIS .DA #CLR80DISP @@ -385,10 +425,10 @@ CONTROL.LCM * sta SETDHIRES .DA #CLRTEXT - .DA #CLRMIXED +* .DA #CLRMIXED .DA #SETHIRES - .DA #CLR80STORE - .DA #CLRPAGE2 +* .DA #CLR80STORE +* .DA #CLRPAGE2 .DA #SETIOUDIS .DA #CLRAN2 @@ -420,20 +460,22 @@ BM.Cache .BS S.BM LBUF.MASK .BS 81 81 because of sta LBUF.DATA+1,x!!! LBUF.DATA .BS 81 *-------------------------------------- -DSTAT .DA #0 +DIB .DA #0 .DA #0,#0,#0 >PSTR "Apple II DHGR" .BS 3 .DA #S.DIB.T.GFX .DA #0 .DA #0 - .DA #91 + .DA K.VER *-------------------------------------- - .DA #S.CB.M.MONO+S.CB.M.C16 - .DA #0 S +DCB .DA #S.DCB.T.GFX + .DA #S.CB.M.MONO+S.CB.M.C16 F + .DA 0 S .DA 560 W .DA 192 H *-------------------------------------- +DRV.END MAN -SAVE USR/SRC/BIN/DRV/DHGR.DRV.S +SAVE USR/SRC/DRV/DHGR.DRV.S ASM diff --git a/DRV/MOUSE.DRV.S.txt b/DRV/MOUSE.DRV.S.txt index 8eb808f2..b8c8ebe4 100644 --- a/DRV/MOUSE.DRV.S.txt +++ b/DRV/MOUSE.DRV.S.txt @@ -166,7 +166,7 @@ STATUS.DCB STATUS.9 lda #MLI.E.BADCTL sec - rts + rts *-------------------------------------- READBLOCK >STYA ZPIOCTL diff --git a/INC/A2osX.I.txt b/INC/A2osX.I.txt index d2818d1c..c0d2fa46 100644 --- a/INC/A2osX.I.txt +++ b/INC/A2osX.I.txt @@ -358,6 +358,7 @@ S.IOCTL .EQ 9 S.DCB.T .EQ 0 S.DCB.T.NIC .EQ $81 S.DCB.T.COM .EQ $82 +S.DCB.T.GFX .EQ $83 *-------------------------------------- S.DIB.S .EQ 0 S.DIB.S.BLOCK .EQ %10000000 diff --git a/INC/GFX.I.txt b/INC/GFX.I.txt index 243f8bc1..b25dff90 100644 --- a/INC/GFX.I.txt +++ b/INC/GFX.I.txt @@ -5,11 +5,12 @@ AUTO 4,1 *-------------------------------------- * GFX Devices *-------------------------------------- -S.DIB.GFX.F .EQ S.DIB -S.DIB.GFX.S .EQ S.DIB+1 -S.DIB.GFX.W .EQ S.DIB+2 -S.DIB.GFX.H .EQ S.DIB+4 -S.DIB.GFX .EQ S.DIB+6 +S.DCB.GFX.F .EQ 1 +S.DCB.GFX.S .EQ 2 +S.DCB.GFX.W .EQ 4 +S.DCB.GFX.H .EQ 6 +* +S.DCB.GFX .EQ 8 *-------------------------------------- MAN SAVE INC/GFX.I