From 63cb89dcfc12d7d81b50f65360e37302e2645b60 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Tue, 23 May 2023 18:35:18 -0700 Subject: [PATCH] Preliminary IMM Driver (Zip Drive) Thanks to Alan Cox for inspiring this. Much of the code was usurped from Fuzix. --- Doc/ChangeLog.txt | 1 + Doc/RomWBW Applications.pdf | Bin 226592 -> 231153 bytes Doc/RomWBW Disk Catalog.pdf | Bin 124419 -> 124418 bytes Doc/RomWBW Errata.pdf | Bin 28506 -> 28506 bytes Doc/RomWBW ROM Applications.pdf | Bin 159619 -> 159619 bytes Doc/RomWBW System Guide.pdf | Bin 529184 -> 529183 bytes Doc/RomWBW User Guide.pdf | Bin 597351 -> 597581 bytes Doc/Z180 ASCI Baud Rate Options.pdf | Bin 120186 -> 157214 bytes ReadMe.md | 2 +- ReadMe.txt | 2 +- Source/Apps/assign.asm | 4 +- Source/CBIOS/cbios.asm | 4 +- Source/Doc/Applications.md | 22 + Source/Doc/UserGuide.md | 3 +- Source/Doc/Z180 ASCI Baud Rate Options.xlsx | Bin 13772 -> 17395 bytes Source/HBIOS/Config/RCZ80_easy.asm | 1 + Source/HBIOS/Config/RCZ80_kio.asm | 1 + Source/HBIOS/Config/RCZ80_skz.asm | 1 + Source/HBIOS/Config/RCZ80_std.asm | 1 + Source/HBIOS/Config/RCZ80_tiny.asm | 1 + Source/HBIOS/Config/RCZ80_zrc.asm | 1 + Source/HBIOS/Config/RCZ80_zrc_ram.asm | 1 + Source/HBIOS/cfg_dyno.asm | 4 + Source/HBIOS/cfg_master.asm | 16 + Source/HBIOS/cfg_mbc.asm | 16 + Source/HBIOS/cfg_mk4.asm | 4 + Source/HBIOS/cfg_n8.asm | 4 + Source/HBIOS/cfg_rcz180.asm | 16 + Source/HBIOS/cfg_rcz280.asm | 16 + Source/HBIOS/cfg_rcz80.asm | 18 +- Source/HBIOS/cfg_rph.asm | 4 + Source/HBIOS/cfg_sbc.asm | 9 +- Source/HBIOS/cfg_scz180.asm | 16 + Source/HBIOS/cfg_z80retro.asm | 4 + Source/HBIOS/cfg_zeta.asm | 4 + Source/HBIOS/cfg_zeta2.asm | 4 + Source/HBIOS/hbios.asm | 34 +- Source/HBIOS/hbios.inc | 2 + Source/HBIOS/imm.asm | 1469 +++++++++++++++++++ Source/HBIOS/ppa.asm | 1454 ++++++++++++++++++ Source/HBIOS/std.asm | 10 + Source/ver.inc | 2 +- Source/ver.lib | 2 +- 43 files changed, 3134 insertions(+), 19 deletions(-) create mode 100644 Source/HBIOS/imm.asm create mode 100644 Source/HBIOS/ppa.asm diff --git a/Doc/ChangeLog.txt b/Doc/ChangeLog.txt index 59762bc2..540fd2a2 100644 --- a/Doc/ChangeLog.txt +++ b/Doc/ChangeLog.txt @@ -7,6 +7,7 @@ Version 3.3 - WBW: Support per-drive floppy configuration - WBW: Support for Bill Shen's VGARC - WBW: Support for MG014 Parallel Port module + printer +- WBW: Support for Zip Drive on emm interface (much inspiration from Alan Cox) Version 3.2.1 ------------- diff --git a/Doc/RomWBW Applications.pdf b/Doc/RomWBW Applications.pdf index 7d14511de13ba22cc125233964866ea09394e98d..6287994bcd41ee77d24bc0e0a048ed0e883230cd 100644 GIT binary patch delta 63103 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 delta 59377 zcmZ@;cOcd8_wT;#y=7%(rf`>QZ$f0th!AB9B@tIvDH^W4jT9myMD_?#Ns^IdD~Yno zE*Zb)UiJC(sqfDp?)!b-&p6|C&U2pgJPYxR8Pg2cy&<%0sV@S7uhp)s(v1FUowW53 z5yQzTXL7t)eL|Q!_O5yaw?wMCFbM%)`3-X zrv~2#bq3bIo+`=;+Fyg4&d?DKc3!xu+qo-R6wV1cuqM!db#{wv`?6B zSn!$b^BW((=UxQEZ*AFppmcuqT0l*8W21fj%bmXE*Y4_dhqvV`e+2bh#cmIMW@2i@ za~(VTiY5NNpTbm)EoNrHetFm%zumw7neY6aE5+DpmDW-J^p6``ZZl`ql7^q`K6w8& zzS$eQxz6mF@Mz;(vA=-9+EXxZ=~~YBt%Y=f-F`1TdU|2e%uVC4H+Ms4tc;M4CKu`E zy&PjkL}VPE5515d>s)n``nX_UFcSO2@={2x(QxY2Y}%8LbbkJf%JA2~!h9vav4m;` zp?qBIeLBCMDdpv5$uE2&SB;m7)bX}d_?t@Z+sAsWE~Nz?KDVu!6U@EuOh} z_x@7G!MU%Wj!_IX?n^J$qa(~Dj;x(um-9*7hM`v7>Wheru=K zlVS-^@`f(g<-Yd4efUFT?(5BQyK_44e!#fi=*+;w`BSa~zWJ$&(yh-Q7~Ho)l+Kjn zH@9wEjSVsoaF#v_H}>G#>ZaaQ8Qv1_^<4}!zV9ns)aN~F*wy00dKSDzm2W3nc~hQ0 zia+t~>tfRSRyPiRWpDZvy%OjBI}H?5s#((W7K%UopKsOfS0X>u^!DPTlLJ+pg+K0n zs#yFg=yT(2=R@C!>b0uaLr>$X^@mkD8t_8n(#0bzx}GQdlVrRMS`*=>MuWm31BKp>DLL}rXVO9)8%kaB(p!~cGpjstta9TN!#OYa2RocDpF4uXsn`L*; zc<=MH!{13udc^-m=HACA^-gx9icM0d?L*wVyC`ZcS~QPTV;DxRJ7bnPjDxbpCQtL= zgEfxKJ7=y1ry6k9GE8LHpH0iV7u&{u*WDQv$!=sgS&|jo20gBujWtM3E<`4Xi3wa^ zDR0)iQ<4$eM)AH}{oQ5%)Z}4gT;Rd=tp)=&g1Djkg{IwwJ-rk0SvPptW}L3aNHb?r zM40qv$4Um;@El-{x=U$fc*DAL3$tt+g71F9&fsk;_#Bao4IQG_xk4uSDJxcz0quUl z@zG6>o+pV2Ch%1obfK$E=cM*fTS2egO&i6pNbF|FpmBw#gYe=dLFrWLP(ExJK5^nbkg|8@j+%4xTQ)-cNH=UChWZ z!7WuhvnL}|%3_a6s%WMn{=Ehpfwt$|5#8>?Y=n8~0SwYzJwC}2`yO*hv*Nk|9r<8J zN~MRVOy*Mrn?y%~brs$D9_Rvh!U_F6g;cBTjHKkqvz_cw;Hgg*4A>A-(gj^GX73=F z9O*i`|4d}pews5EyDzi%l4+EQ^s?zlnVF15hILuTBQiN8-3;+u9SL2`Xn*= z;-oY>L>I{Us_t5g0?qK8@a%8rB* zdg?DZl5DzVB3>Gc05(&={Uy_WS z2t7zN;kgM1LEXfX;Eh7Vk8HsQZ&L=sh>0O#8^uN|hrtPAW#y%DD8hn;0D;Vml@M%7 z9F>|8%#6h11d-qui^LI%&|-viGY$fWnKcuU3iv^y1Ti=TX?a4XDi_CQn)OIKQX>@RK!#yD}pK`VAbqopMSN?I0&`o$wb&`OdpX~oJa2Mj_q zp0cu_jJBX1(NaRUBnUQEj0E~8f`k$cF@lXNBVmsZZ`p$*2K11;Jb}eqh(liCFB8k- z2uK%2!uoM~3erHZqZmSx1F3-ga|SSkU!FKSFvK5I?|dM*yRZ?bLApx9e990#i4Vsk z;)F-u3?x3@xGGWoM4H0iNK*hvlOddnqh&`b{3VaSk%gx$gN z#1`rwO4gSdviW%0OUvBF2aY?SNP50*#_%F>p5zLW&?A&j^pL zAb86zhD0$FLW1cD(o!6NS^1r||9T(_E`=aTLbwza&o;Q{da1@9Su1$6!0__AMvs$@gRY!j-w|SK^&Zb_}9cp zBvFAJC?w_&IZ;Ry%z{Hm5YpmzGzbU;hg*sW6d~o7B;h<5lm3Y~0=*;YWE#c5DdctfFCkOIxK>>nE1_R#qU%jG`@Ov^yf&+#6)08OS?tXbhv55v0%wq>n zpNQ`;LLR|Jkjv*JIOMSc;<0>Uqttv!!W+_iU%muMOQ`>8ob@_JSoJwzIk7;K8G$9d z4-(=)5i$9n*oZ=50K?*9DAW%4{tb>O)SoVbLct4WKw}YgY+yVhv+e~yEr-Gqdg>$z zhWYexkvw8I+{A-m{-wL^7Dm{o7N8`uK9Ld@&|Cmgy3&^jJ;46!La)pKv+p=Ra^xqml|GyeQ z|D^%+js_f_{FEDnN54D?!saX1pBjmJ#g4$j%*%kYfKH$$IQ%qtY$8$#EuD(s|5m3Y z!LFVGE|y1dlJxY4^$2cV@(6TUW>*y*K?4%vL}C6$HHL_4aoT^4MmRjox#L5apRm5u z^%K@$x5+(1gtf(pB;my{D|ot2dT$5s3Y|ol@BV+?3|HKgXFR)`saf==MXJAHw;fats`P(RQ-V;o)4O7a@)fj^nkKc`KO+fz2k`{;3zfJfl1KBFjm-E{61ZpR2@PhHgpxF7 z4(#7vjU{^Z{}%8sKgW{%obY3j4NORsC}a9Rxb)uo=?+axBGd$7OIG5f>~eoQgWUh; z403-tgB-~jBna@*PovB2xWvniU(R8%!Hz)g;8JT75O;8Sok#`x6DQOXiG)|1k_4Jf zR`5i-r3n7(Y)K+yf72TLmKH%=j`_;gw#;cj@F~p|X2%h2{9iwoBWT1){02{0gBrm} zP~D!=ZIkemV>MT1Zz{x;Eo2H&X>EX0=| zKZ!V6ge2RaYZnSM2ml}8Pc%ENAJBquh2LZ##)UuJj1<@5TRbFrc&ohW5Znw9ZU^GH zzaftMe<3da7sPQp5SRZ8;$V0H2zZSP2#bSv7ZC;L2EyXx;U;b%Eco5v26FwiR)G)l zJUb0e^8ooAX%W9IPy68zaRdX*sDRj0CC-beqy>f{Mtk|4eD}9Z7$uJ-0$Kdu!0{^; zM#&RV|DOmeFGsQ!yupL`i7I(H68}%d5bR(Il8Y+*B|YfIDUMJA)-)3btQK)2=;0B) zpKHSZG6E43XCa9yW(mY~2H>8VScEW11^>mA0;~~$kiel7ei}!^$H(_{fFPQb8kq_H zyKwDLh@t>|krF^NL3{Xu7(n2DP6pUyKeQJPkwZlO4Ic$GQDOieaRmKNGzAnR91sQ# z#}Yqm$st(5^V1y?Sf0gTc^ps%8djDkwF;6)NG3elOF>FoNSO*+7HlJYB&zl)AXaFJ ziK8$(Dd+l+aA;YOH%jdOOEx4CLT2yQC=SBX_)?=NRyKFd0dScO4L{#23$Fz`Mb3?lFL}cMc$WftL?Ii2{y*XnkylXy>@o z5+)M6eiC1Umw%SG8)pzw@U$CZXML-Razcbs!sGiP;zGm3iAMdkyrEG)m$&~RA5j^< zM+G#Bw7kJZZU}bxYaHO=pd*45Ux^ka&V2L?n3sl4-zFLo)Q=*&cc)+oSns zRu~b0*vVqhKeIbn-yN}&X#oleflC1Zfyf=@oeuy;CoO6cu-9qQGsw0i;hF#dLnJ(U z7XV{|L}T0la$0WZb;wXC7h#AWS& z0Tc6=vC*W3P8_ZS+8~7zG@x9%0BpDOD-Po>034tdk|K6!$`K%#%HF9A7%3sl#pZV)Qdi*CG{I$tN1K$N1JO>){XS7FSNEtmm90!zy-O;aW z9MCB#nU#Po<4MmzzY=if4m~FxxD?2C;(%9Ka!{k0Du0izxU zz#v5c+G~h-Dwy^vSQ%~&A~@Nx#0BraK>+*z1_A6}K>$k%+u|H(PzCt|t>BY2O!E9h znCSWFUns531`9uMei%4ESJkm(LCa(+t|j2G?41Tc z;}S46{118-V8nhnv}h+Q;H}ciL9kPS6`2H~pJlM$(gL&`7B;O$NQ&-2{t1EsB5u?RS4)@PWQdixB(4azJ!2%3=gNEo{k6#tF+-BN*8K z+S#CSND?R1zc_)JtAE7=9BF4G4i6Rmni-VQh)D?YZ!SSwQhdEq4Pc7`H4kwZssYGG z5z8Ku@bhW_R}|b1oe@UJWojRT>f9WZge2Ej_qekIxE|J>&g+r$#vD7J&B4_=-U7dbV+z|S2ni9h-g z;80+T%S(<%0acU=v*X{`cle0ZFf{y-T&GC7@oleJxRayuZ5zh`15}lxG0nq^E=*~M z9MlpF%<>D``8!?CJMA(Aq4eEq96rcH}I zxpx{jmcM>(Z}H95A=g8WZmrI=9K%bGZ9S?FtEI^Bs@g7}343IE_~YiWsz&9F&q9R{ zk;>00p~Ej|Q+p2N(Ch5NYiTcLq9t9q`}(V-%a1l@E;870*qq#IAt+xJxL>bb^~S2E z@@4~hkL9a)?Qi|~J%h=Or>2jqoo>q(w-XoKr!}6t=x~BbCaoaZmF?TRn#*Y4%L8Kk zS=-Y*(_h(6mU@(J**B{7zmyxWlj?i>^pXJX%Hw9}=FOf9HP5VbR%`G!Pc;Gp4>dm( zyVtW=IU#p%P<)I=s3>W4vj5}I1DT{z`2)^|m;-y@imD^?Qhi3tQE8uM&PSRN>^_-& z?~jkYI66~N8cctL;&9lg)RK1$+~8dIHD74$ReN$~Fg_h^Wz)J9^4enQrE;<7{h6LS z%i|MEW}I3FkwpgMyO0aL_=Ju(*ehZ4Ba@16i z!6)X#IBSi6^oUq0tL0*cV6JxH)oRI8G~z82$0=evIR>Y__RP}?HO~duIc^>ml4TkX z;(m3rJ#LDIlZBHI|E>DNrgXe;KNtT+Z;y+LwULUCA|uz0bR?(GANizt-(W!XVBzuh znd2eiw_glKtQXW$bhTp7mf-Ch87xnHz8}HaZsLM8=lwAv8k+h(L?_g>{jl>EW244q zZFYso4QDOJ#*0yGWHIOOZQupp?`;T^$w*(Yj0*RDHzP%RKN6bQKcjxxQGQ8qwrz&- z72(U&`x7^}7rZS+A1TMHRmmpkdaOQ-&3jaPyGm+#SLz@R^7b~8T&)(tuV5L172f$X zHK4_f?85_31RHTKI(pMRynpKZclP;<%{{Ca0{NvQ+>QIiz66#(eSG?;yHp{Lq66z!XtUWmenc!CEh&uka5(N>d!^XjtD+~)W9s}Fb*$_^E}KhVC{+RNU)pxv!(0><3o{P6R8Q4}m4^)#K~W zqC=-v-z)FVeREMDSLfJlMZfU7VZq}}ecJWe_S*i79dl`Hii01zqhn6voW1e(<;gSZ z7a2cK7PI>>&Hh)~_l&FuCOeSFiqD_ZdVfeQt^nEB5Mz1?!udUrBR<}U|CajRnnFdrkfucnhAQ;ARC=B|4k*T zBYmEw=L;)2C%M77c(!;yJF5nZp4C%wWTVz%jkgcl4?Y!T9T7jWd!j+BFIdu3<>0fq z4~$kCR(yTJ(zF?DB@U9Ke4dQ{gB%OP91C@U^)1IIuA}%h8Ql3HAI(Y03AW4l*yYpX z5_i3!1~%{7vh2rCte#%SNmYEVFc{X&5nFX{zxLq}{>#e!+g|j=Q^rbZX{BS_0fylZ zTe_EAE3vH6U#ss23u&fk7>>f`IzpKjTOCG%>HciYiqzm0siGa#QH7xbPYi z)i;)}QdX`~58b+Qe|cKxXuy+#4V$Yu!)%MXA~F#*TmimT&P_Z_N=RGh<&^F#a=N&v zzNFX+tH{qjhm5+_PiT05uI*jR6?n1#&8%PIzKhTEs2rvpmi!;Jt6~)*MrHTn1;;Uu z_o$5yZybj@g81Xf)E1BAo90KBrkj z#T|n8JnmD3JWAO{0yZLqA7v)?Xyb2ejP^W;lDc6v6<2RNX5vw|l@_PT_;f9_;q9rg zwD+!?QLQPheV%t$URf(=+`FlFI_KPT<)zf4XFl0QTHdN7OKeGa{lyNBrZ1Y)5X8b8D z=0(wK9r}yYoZquF7u{vZ=a6&F!lxyhPouk9yf&fAma2nnjSnVneK1ZDc=;`(`TqFv z*I~RXUyiMRRokvM7pB~AI;%bRrT`zg{9fK@u_k&Xr?$$Qe|7U*RdaruhxT{BXW8A6 z0(?Smc%VB9)204LM>O?mv|Z)um0k$qnf(S=UD~cvM(6IEU9!DkziBM3bWMv>N`Iiz zsP10#+?}e0w*uE%IcW7Xr4hzOfw`Sjoc@QGnlz(={9N99M2sa5$?FLYil$Q!uQ2)ePf;h0+=`{q3=9yH{)YGQ zd1di1P!4x;oV?9=miC^{t0&wMwF-nNR$&6~3iYkwTl&li)rbqs$<+!3>O_l|@xc+} z#Xh|p$;095v^M@rVr`B-21XV1?41;^HIWf;85r0`6s-_~UWY zR=PC`<}cI-7^pGf)uqKOy~C$6l3MW{9Vv-I1-#6O_LBK&Xm?28N8Q9TtgR!3c3{7c zx+5YBOsgXpxFn{<4F2sk0soFapO`dC5==A{l3kvw$N z6Q5p+;XoI5){;xSXQD;A<7+RJrnxwWzw1lL;6mt+%=yQOkVCq(HM~aD1 z-HHe`y7~=mEOg!O5I#a8LIihGn4CkcjoHO7K&;@J_o)Ce1NB)>OMQ)DTUKpK10QvD z?%~wRC$8+Z?|1D5owAbY^iGpOCrql6$V=4&m9o_fnIrFXaAgb$QH;~i_9Y0?TpwnX zysj-1c==Tj2O8R95DeJn95dZ(Tc3-LI{sCf7SHIE7Oq25s&)Rbj z@7JZk)O}C5r`gg0(+;?WCA6uB?V+I)oaVGR5V3wngnp>SzdkP@BqDkD8HB$QRx3$; z!oQmErA?&ieX#ci_roC;iWf9l#|{chT_--S z1RlkWbN9|gK^HY!iuOK62vw(>zEcnP*%O-(iKqk5g4c(y$^_^+`kZ8!=OTB-O>=k6 z#X+sRZVlH<>Ykc8drDh&;qK^d>^oiiT>~BX6lW-KM(>n`o==sLKSs9dD*5s7cY#A9 z$H`B7>dOjO?@@Nj*6iy@x&Cd03G(j+Sd69w9J8`Kd3#v8{ z|E;ddqyMe0dJQ4Yu>Msh1)FGGeqH1jl(MT&iw`@=^Gj@B6F0yFo)BliH;b%P!T;uq&W}-kmFp?1eADd8xKTnL% zU>M@@DYzN(=V1f*M5?qM83yGF(2TT?_8R$l20-ixPB;HPqac1D)htj`q)OZ+Vx!+} zLp<&wHhKciM!~dy=}rNev;s7xuuLl6DHEUf4DTFs{INSHTyWh7VL&l^RHABq1>r=` zFg<@WXe=~jT}I+Z@hGgp46(s_OJKKtOA6xT_*pgoz22dqK*9s*bQ0|2f8qfHZqE>P z`Y#@KC_6_9Xoa1^sXg4Wh~Oi>EsWnq4DNCKW+ zMzE0HY{?->wm&5%HcKKl;~|4~4p@kk9&$(=?wA6l>Fr=po+Qc&h9DiolHpJ|;x4}` zjRH!crJr?(U7P#xxpCpE6gx>~NEQ^Zq#z-VpXUOugc1_|s`sl-=E z4DVE^bjTrg08cX(z*Gb|#0H+P5}zB%Ay)9*#sW#gWGoO1aUu#<@L>~zXy|@j-oXH> z2B1RV8pq!y6`~-p4F$BXYMT}MLdRVGaWi8{YC#o$?mH9iIeL{S!D)mnT*(X>!67V= z5CNaZ4Xdz#!3YL|jQ!7r2Rm@FX{QE=Ar<(4J7NJR??2B_5@2ao zh#ppTKv2RNy1!%uNRUk$<)Ec5sQiZ7D z6z~S2aqx9LFk-U`BnqK{VYLBbs8t~*V4|<85IekI6%qqQ_EHTFUm;2SoO zA{hpQA$^8NRUzOZa>RZZ;)#(yBuHT3q=F6AAQ}jx0AJUFFc21a5Eu(CR0E~9SGJHo z83q(@Nz;m}LyW{ivj)VGbP%F|P1FHTSUF;QAvhU)B-Tp-xAI`{uXd0S3tAfWAAaQE z3+509%&ZRykYVJ&Wh7!pPYuvf4nvw9*vQWs=%`Bra4Ls`yKJF@pyf}o4{81@wy!3{ z2cN@`(Zlr`5IbRvhl=)BxgCRpujxSwumpyTk@OYbtp$d|?FbHEZ~&8rktigQu|ShV zi3ufqRPd}8L<2mm(-zW$zo9^XLv2VH5Qs9vQQ8nE1ddfn`l-_fW6JNy3obvv3wA)8 zcz!BaS_h*2S5Ejj@)s9Zbs#1(jKYqja4?dLfoN-Xcx8wFOImOx%v2YW23&>fLg4U! zXSzXMh#8Q8V2Tj9_C;br_aIextUy3S7MwKtcbj5SL|HLp zSa2zc)Tvq@bV6ZBQ$ye@uqPK0&dl=v?S_L-X#-pzHGp^_lsu^~p-YwuzGDE<0zmiO)5Ev62QxO>5JMn&tQ4>U5kYXhA?_$mbC#g${dC`VOruhU~dkBnj97Ea~QZBmgL(CM6W@bf*E@c z1Cx;48V$=y0@x^<0@NuR1L5V+JF|Y00Hct|*(9S>oLXqI}?91TeP{Tx0sXgpfRn zq)8U!e;gYN@;Z{F4rUN9@D^ZmAvnzp@GbvSMBpey5eak3R4|h{$-+Cv1c?ao1ANLH zI0qIS^OGhA?3;oi`ge#sLPA&tqK!#lVnO~FgdmR~fjY>7Bs7a9BuqG_Mgg~505!{k z>y7px9*Bzo-SJsMqChPqeuEtb+|KQgf3sIP9P!jmyh`CLLtkcv*TyzOr*`d9a-i{rk*%QXXC9!@{of!A9trNR%Yr;Z zkn~6Ub0ZiuI2U^Eyv4_wZ5mm$I5Q>04LvWmR+6T;X;svhW#8+udrsf3yHa}N=&lw< zp(sPv=5bR!>H%sY;rr;pX>ac@eS^kBLxV$Ot(AQ>I(F*nfz+PzY=_4;MyGx#e+kj` z3{h+B^sU)Gir)&FY`cY?s&6lokvV787-r?*F#5a`KiBZ1@!a;!wItP}ijB*+dvXmP zG@M;OPIp2T0~d!Wpykl74sa2;U0rpjT%Rqs#eGhTUEvKl-MW17SR3c^o`AOnQqtUZ zT@Ox1H+~$4rMF};gAW(i>4p1kgC06YX!6(PzC*3oH8|q4IIOeSZ8_Ci<0_nd2L3%whDNA}-3-*HBu@zLqPfnjm}kn^hZTx(Bz zdRk8$7C1X)e(fmQXZmHzhxwdCOV37>LPwWt=yKJ985*7W9vz>)o5N(>xYYgGxC8GT zmXfo@P@dH%=!q|}bYm!uvDLA9$#a6kuBC{jPj80RvmE=3$1}c4%o?_ZZD2crvf>g| zpQlAqMfVHu7kL)y_qoj2&M3|VdtP3VoS~f2oe`UP-Ph4~pzma%T~Vj4dC^dzjPNhx&pbGDXXQ+LX@gVf>-D5FjVs~!m5dednal<&{`k*~Ggnn< zX9!h~zO;nStT%Lhk=mSRdc>x9Vrrmt>za;0d>>O-?x#=BW#R@D!hU?i^KQTT_VS6i zc=03W^_$ouo8JqH?^7B2i*=-0D1E-E|G-F5;apRq{+*3EhKee~`j6&!zPEO6yho1~ zvH7G2&z$v5KRbh8v`h0n_9MFCY~i}usLJ+2#j&xpdf)ZXl{N3Ps#c3lRSimWH>ncF zLMNSm+(_e3+0+|a&ieczYt(!6eklhFE^RaNgG*6En}ysDE9ILN!dI6{V!nS)_-u2( z$&df7ERS)ATS&oNej!$V&ZX?)r>f}Xp}VwPg`s|ZJXzAN#`xDOyQC~+p5H!X?L9CX z?eb!Dd8sR_QpZLrsf5$}Sox#4(hs*m!1t;IdAXHa&IyL;n>#$G*-J zDy=qI&#oKZyb0&y)s)=7iMv^+FR$Ju$K0D&(uR#i&5hlI#8PfuxT9A5J~{}M7J6~M zz3cdvwi;szKjf<*S}z%h2}ob_FO(kNVmmf|#-wWdy3-q}>C&r9Dh!<>=J|{1AC=zB zxWCcOb`9#2RdH$V-N%$;dMmqvNBam=NZ`yDbjp9znXB_H7_T?SZ!fQ<_N?=&k|^!n zFO1_#j|a;J9(kPZb4+a>T5j6Kn_SXBs91lU?%U-H?blwbzkQEpTl0~x!i^7|gnW+a zc9(|+BZ-Dc7fln-mPAat6L%vfL^&nZTd-q2NV$SKvJ%(LPWf8Gi&^54rKx|2U7hfS zX3PoEC{KphPhR4=SgNs_-7j8MreFTL=b*iW-o1v_k_8UgHYThH<-=k_rOUJrOeeTj z0z5hlB|6w@K z6+u-HyX|};ufm4m<_R40{lkI=cj;yAHnr!@vl6bKp)FySODuNw|0WGi)(@w(zhv!r zxmMZQqq3P>fOzoD@+C#ceLJ^+`XK-Kh&Fbur*{mWwgqF?T`mhXS}g=5;AjIn9=kms zSlg33;2r1+ojYNU|Iu>?5ks?l2<|;uRKmlD&-49uKy*D!PbKnWn}2o2`Iw*&>y12g zvI4#a))hgDS|?nCu_9Dzs#G)0sUqe#i|s!z-dUz>h(3#J66EL&?sX33Dv)uRvvNAX zU2sudb>HB9v(sxMGOhLaIiK(4Guzo!qU;^BUn`&0r|Bs=7~z>3^(;auSWI_!qu%ut zVpDGiM8qiGn(ygXP8ju2q;mU2aay#g>5Efv&z(1yRqmZAhxvPq=!3$2hgs$-5cTJ(RLL%9#`TDFIBE*Co>0zKTN2gyq7)@ zU&dQD5bB;Qoi;+Sz_-&Cuu+`4A*P#{qVm8!vE-Zq|Fe|h-AD_UK#>&IQKh_;1myL! z^?apvRjxoAPuoygMb<+?D%pH5#op_=oMg~@82J2Y7G~*uEro};7dvx_FpIU_(ft(> z(U_b3cjNTSryR*Xw0U%=Pr1j_7sP0Ygvm)pMln8r>_&T8JHZ2As#tpJq;|RGr96fE zI=oI5vUb|6>2j#gS~HS&>*3o_!rJ?6Z^RT$*jmvcvRM=nq)& z3gQN+9~anZXEOAVIT|wf-n}v~NZ>f*x~6bA)V-`{q|E|t-M~<3N%gEr){}#m?Hg-q zR8uzw(?i~8jm6l$?RGDECoQC2D@7%B@BRzw8OQl)=J7q+$6E0TsX+(1#wj?n?iDO9!zRL#paTdPJDT>V5xvpA_fe^h$dzf}$59J*0l741o z9Y24M&q*?kBz#@$5SskdJt5-4#3Ksu|D&|&D!L{5rR6F7tviamov8;RCiGJKg-@|Sv-EK%yX%%P^%92@ zgWrXCcrr$(X!kX(7mk@UYE069aSa!%;W*Kk9GB_d$ku-H z6ph>MK}{RBJ9Sm9SN5orM@er!=JkRZ!_CanLX>F=v&J~f6#lH{DdwZ)w4R^$aV#-B z5KBrq=lTR+miywsLSRiX{)5Kb6`$GDBd7CDF3S4WR(ZBCzEyi5qSFA!ZkFyBS&C-3 z=pNnXe8ny2PUL$JwSmkEp2^&FtWl?&$`#QN%87S8pV^Fy$>-j>aplyc8!L6ZbFZ_p zR#KDB3NNgE%Cj1eFS}(v9&_e&B~JRP@2W6{UaLazkf4+lSHU&u%_gsBevntGt#hrv zAw%cwd1tyOeJX{P+Kjp)F7ZMvw0`+=uWz$*4*AQ-(BwZ3Dsc5_KU%Wy*^udI=0=SZ z=1stO&m~cQN0|A{y0b{lgKC++FK(lm!xx>MMS__X7CHwuH1O-yE>cnLhZ#y)j=veN z&*oe=Yqin1XQ|IYBX!Z~X&>t4UBeRr7$e~?8Ddj>^kRI=yGv6Uxbr!u+?s7E4mjM; z^bdfK^!D!=eOrITeofu@_WihI<3QspZ=&97w1}DYObQo0@u3clC`%f@afMr&{oqz2 zzcyoFlFOS5m{z_Mc=vvz_6;9Y1uL0Lb*dxHA*vslm(28-H3yFSu^0{0wDHY&E zcFQWpV~nkDoKx=#=R%*x?cBD5y!1L5D(Gf8$$~5?q>-fpS8q&Kp?9&7)m(r1Uezwq zXL8;BOU?=OLha`7)Pv`#@2cvyRHC`QU^*<>TO`i$roF&K?7{QgZXwX)81`Q9HR)1O zcrP08E(;ZP!i7!p$L@+RAB(vJzO;%mK6XmjWu6-P6h$o_b8~u*Mhej)Dm2+nvA#f2 zdZK`R&y=KS9cABv6Xp6XC0(`E(b2ZA(S64t-UGb0awQHY+xU*s%RW5wE%)ifM_Ru8 ziPv<+Bh0Hmeqc*G@bhABiY3?(!9}^F=5s;P35_3s=87XM{ z^@!%B76q^J^b3|nrWGd`=^7SO7kM6@xpY~d_Gav-lbR|yduI4%>DxX)teOIX2Op~^ z=x9>fVaWZCLfnP>IhD9sSQzd1WO4{RzxS{@iP94~@*J+Ld3gfAi$TQjzCcb+_jSrH zDmfadOrw+zaGr9n5+##a+EUARm4%lcEtPdfDfWBUerVRMHp=E=?@BPk*p&eFmk`YP8xi2hufS!B-T^4HFvhoheN%$dvCtIxg>ll z>Q&$5dB(nD?Usstyl>RHXGC3-xgAXG2&-Of4kLF(j4o@OV`3LjQ`Jmm!MYq-W9rD@|RH|?pxVYaw_8j%cYOf!{5!z=9-HyesTrz)*&e8{V!hCr9=wcQZ{y zk!fG}h1mUE7hthMql{IfLCT9cjE8I`bwdgoag&!H^xkcGFfo49Gw4Dep`PE*!heKg z;F~SOn`=i7uxf-?Y=vJD?sRj$ldIpJ?6WvYkr00nVj8u1G3TgsQEQKr(I%x`C%g8Q zu0o;0ujkpY^l8*i$s=|6>?Z@C76LCyeGlgkwEC;*$bV>@dUav#i15VuZj%k2S%e-u;u@3do^&dw zlWR?}>6JVB=!VtTAlQ%bQ8{Po?uy~|$H7i6HzE&fx0$>Qe3GH1jlUGmkmbA1`$MgX zHcp%wyW03{aKbOTB=>7~B`xfUeey}U=#l@k(VUw?MXsAY>p7k!&wNt$tjwb|4 z@&PN_h1-akTM6>^(t#02WNUU6(`vYA zY+-^Ad2*Gmidxs{^K6}nr-)u)Q~mc{%@X=Fi60#)mQ%I(X5a~paJ=fl4NGXD%}R?= zE`~Ec&MCoDv!3?`7xTIPBL~%}J#+fq%wBeuAhla!R1<}|s11%+^M_e$-L);+Zw_x{|o;io>*zg^w$ z>+W@-j?4Y2zqJ^>P8}zn%hUO~6Q?70_RXGGm#=c{nRcR%;E}A;`Q~SRG++2tJG?wA23DIbkxal!P-NDMR^jehe zeN^Wg=F&>COUx3Ttzr9wolwb>+)?B*CDv!4{X)0D)VLJbYSEgXK;vz%E^7IgRFhMG ze*EJ6lHBH5xzCNVX^G#x8n+!bx0{cSZjKfwucg9Y_`lTjHMVXZjd_RM#&+I*t^PgL z&}nw=wvunG%lvX??giOi!+l zgnzBz+hbLpkgv z)GQ+a>D)EVjLLlRF|_!7O~v*2!X|r0v%Gcw^4pnyu!Nt z5?=L3;)|v>D2wosF%;RJTI0Q!p^nF&3alQ?O9eYgCsV)IFD;`mmr@+k;fmI*%@twL zcu}hD_BF08p+xH9{#e$rcFe4%q2{DLcT;xZ>vL^%H`_fPkE%+sltsmGmz~-zdc>J3 zkB2>x`NCSqLn`Z}`#utQyiQF{6#k51g7tN>TLI4xCf{(Jxy*+ij1DoQiXX{yQZqd( zeevRu$w6(J%EVsI6`ZB+=D?=J`+Di3f_Bw1J0Z5}j5lG7_ax46Uo4t+n>_JlzF%ge zj;VGlV&1)~Hq7QrdE~qd2ioVHc;Ilz=B4dmiQ2QtRq`9qocK76K0ZDC6^`c9`47hm zoP0*B&)t18=Nyx++vFf;olF*}kt}_$>ds3WmR>ExtF*}ng+pXnTF(h7E2&3!(B4Y$ zFFaIJ$Oy5rOst;KXF3!vyM4WR&7G5a2FoWHrn`4F)08XHmkoA}j2UD~nBb0LpL~)- zIng6C^w5iL+=cqnf&LP_W6M!l3(1$mX5OaP?}7M+jUId39~QH11XGM@M^BF9%BK;rB@Ue$k3U z9t-W3nqgc0B~?{-s=9dD-QPy)mgvye-Q*Dt9!@W@EwC$aeemiE6W$~<)Ap+9tzm6y z6NNWe4lD;MV`;&{v1_2Fa)et_yG6!|OK)t|AS%My_d&4nGqHYqrsU-hvBJeOA7}P8jolO!OH(UgF3xkm@7`kI zb+o%7EB$FaR>Y}jv^*I9`Ze{LYHO_@7Ew1&4&I?CRgscAbBu=eZN=M)z1sDqnMIjJ zr4=@tgmAqE_Qs;ur>JS-8xq_C<_>s$fAD0<6Js$h-hH(Ds1U!-^)c1_c!B0=&eE+M z(Q>93jXN?oE?$uELRDzBn72)Eim)kSl<8e>lo+HLq$Pf2q|CA0q{Fid-q&DP`{rJd z^!0k;@`SyiOuf!Ybp+1=c*G>6La${>+oyHh<%596#1gf2qT44~70TkzLf*c}dv1Y@ z*P0rHn{RcvMpK{S&la7{Jv8DkE1MGhDcCJ)CE+kX^X@Z-nkQIV56;!yUUL1FuiJJ>3|}J`CTv}@ z=RVzuIfqMr-e&2S=$E~Pm}vQ`<2oWzICuRNeU6(8=%np^?S4H1V85o`Kzq4^C$aS>TUggeA zdQ#1Cc@VX>3ciu6F-h0a& z&wnaFlh@(FtWl9IfTE_B7p<@!u(dfh))gp&il85Bt@4N+np0t^+T;bets_Lox24KEvnX*Os}OwI(Jl$-S=pNUk$k? ziH~15&vtlD-!4B+S3`34qra!Enb_csI(IkkycG*wfxWy-G zpy#3Itz(QO4i>kYA_d)pjz8H97tyBuDp+H8OZ>=u->~i_>zIeudS*_N*U~;M`mNR` zG-qnvcp_L`!&-6S4bRoy6se^1dB^W%6t^9B@Dcujkke3bl{w|SH+2A6hz}WL-#)T+ z?a{H&hi3=tMt#1tZq4g0kIcK5raejv4x1i3eQ2_>YSRv_w&D{i&bq==uY&ZAX>6VO zus)a4UVpNFZ2erZ+KBIFGy7Ym6`Hq}%G0%@{vWHuT#pngDcblg+1K^Te6hN={A1;? z(z{1|4)dFlN4kzTP6oH2wLCZQcdEDAsg72Kq>gp2&~3&o5~}X|8C_N$DH|C}8MvCu z?|%nWs{)s2O^)CTvzvW-Hug%y8^?aRIb`J%XFrAOWVh4{2Xqd#k_Zt-XW-I>Q1gRV^QBofy)Iwe$gqJNm$J2a8 ziO;z7Q2Qw?R3}}2;B~K%J^xddv1`4>%M&ert7}t8ukqaphwby;3l>iqg`U2Dki|aQ z(~5rDS-$5xb9{WvI&W-g$+}_D$#1vxZVHKAXLj5;sXPG1_X`J?s%aMJMRwh3F_Lhv zme;m>>m0(p&r}{NF!QbpotwvVB^~50Ha1^;=z@()f8)GJeopbus;wi=h(%#Fu2}!& zW9cr7PCd%QaZ|g@uLfEwB>JB#79HN3gt~D#ds+J^taUl*ie+Bds08*R#l7{CrsrL5 zC>t`$qV5!|mB8U*1Yd4&gHXnIA&mEBT)=QMrIG|#h^}oHBfXpzSw@!eHzG5?aTJW- zojy)=Fa4REVV+UqQ)ael^@p!*n645v>P@e(~%f5dsT`jo-2agO!0>fk|v!@@xsZnc3iyrMnFm?tXe zIZu?yer%X%5NY_vHFx$sVJagU*{gU0P{QkoGGqKZ#@2iA-_G|k4a<*&` z{V`i?HNrd-A+KVd^|FAA<(g7`*iNOdyzI9a2K=424LB6GRy=9R^4x1Jb3O%oS~4-5 zi$R{%@=>l`O~CEnNu#ZaTYjdevEl<;g6#Kw+PBE<5!A^oTqoi7X5Dm9(tw}dYgQ@3 zlGM`EY#0CBtRud{uTSyH@pe@yU9@vZGNk}rM+6A z&O%e`x%4}OGd5x))eK#IER%5==UuP7lz3?M*eavn4*4)V;(E`}xQ#>vTC3~>{welz z&C;tI(LU3cW0Atxm>oZMYyHv`fAW~i_w3{jcGss*pR@eF5-fhcsY7a{B&fl@DYgC_ zT~Dp+^AchC-k*=HFQr}_GRp|!eUu++XSFkdPK_-rniXrh+3`YpVf~Q2ah9*7RF|P^ zO;+z_dxq{Q?+t#E`RhK{7IYA-PQc)Z^1JQ?P_DAvLvviocD!F;_#=Y>arvI!Qcp;0SlAiCxvt+TIN=sNv zJ=b>kC%s1`I+G0PMKD|waz={s=jSE_`)y@pnyNU?*nVR9`2EW6Tx1WM2EBBU@Lzl* zQ}l@wUp8$M)x+&{%Q%l6#<$C?m-y zP1c9ne$Gx69TOiZD?n9`O=b-ieESfv3IDPCNl9#g^xw+Vx3Yk4Rs=wt4a zw(hEWcd75SKi-?ZIz0JXI`R>@(vv&tG8z9pq4eG*_l4T6<)0Uo=BBS(dJl%g$o{NV z!{^?XpS?fgZ#2}D%g6DvF}8X5mF7(Ll+xTN>U^rakT_=Kr|5jcQrmJWpUa%noKNVD zl?cML)~xFf(XaKbT~#ZeT~GYBZJd4T5^C|{-iu!|3B$hkVnQuGjhu}7UGIu~@pS3a z^;~$2-!r&>WaY~E<%3rj2~T|4VET$ z@70RQ{?z#9fu`r$KK=L@FP z`Zg-ypPn1^F_TV+ed5h*A!BxEmR=!%^~w0?X& zF{`7$$;R>J&2ulDI{QU5J;eF(7o=1y1o*yb?7-p$E{1>2sP4U3P50|vTgyq;O7VbN zi`?=8gQ){n8H?$%+*unJcI_VOxvPDnDyGhfV0~yVw9ilHVDBXFR*^=ZN^OZ}=4|F{ zS$A)npI-NwE`9Vowok%UE*IU$rIw@QRXGP4okORdnuuL z@#!}Hq-=ct_V6wlwuHeo-Hw`{DFsOrghmA!IzzYBk}%`J^P zNpFvs%+n|Nr_>Kcw!Y}vV^Aga>p=DtBF5BKW?v=x`9?R}%9A+@UVlWVQE~551us5| zJaheain(y@o>$_V%*N+!o*iL1^jLX@?#Gj`PUz$Wqew^u0J0>b>WVe!pvjmlxth_+;$?7mlE;qH1V_T9&P@2ZrNirC|CW@N+BX!V=TNbCL{b8)M(Ap98L2pJ_3)t_W8e@r&2D*1>POqS=J7bJw-c zoRyp%D+?}Q5P5_TQ<9KK{neOc@TW2f;a?hH*mr7k{jU9Y1bKAQyZiFVI65ly|RVOfou=WMwZu2 z@*WF_;N5bW{dvk8E^(bVWhytF$^A};HQ|ioi#9*%9{%ZVgf#xwq4D5-w+|UTU;Jvw zRAGp8=&Fd&UhoQkZ0MEGmumD-x`R>gc#UTR&%*LWb@PQ;4(z^?)*|lUJ#y8@@6F%W ztbXIF*%7@wBi^3IZr#e1B!V>fN;hA0+gY1VWvI0H#V2jA=Ush6xM6Mj#Vme~Ybp`5 z+I`vfmI_CHsiXw$$6HruJ=)=M^tQ%8I=hLLCZFEDu*`BkCA6*LnfmMfLlO<^QYX7* z;!j>}`r70%(st`?T)*&-$a7<+>?y%{jz+((-sP>cX?$3H)ZW(B)-{dCW%K>Y?%W>q zjyx&kL+{P*Op+I#o<63WZ_p+s>5$Axn9SO?bF;34!e+*^rpM}K@wu10Oy6kMi2vEv zJ2Vt*`sbeG<~N^ALl2yrh(G3H+2Q*iI}yp_CFu;RFCzv2 zO!yXuo=vK6>D0#?N6ezU@Cz2jK877{_t+XRv+9(az2)J#^zQD!%cV_fdoLL@Y5H66 zm}A*j4)yZ=H~~ws`Ne!<-gzcS;S;fmMyr-H{#4cAGKDp;;$tR$-8wQ zO~f#79gsouvfSuqoPNq_67D{!o^W?1!h44IdYM$SQRD+5?erpYKs` z$7+uJC~P&{Em&)_jCi_xT$E=WUh#H{3WJ?)+Q^T_y3Wxb$VZH=-JOG`+p1mV0}r@0 z>Uk_35Q*;Rf6VNpyJ_prFF&nr2ASJAT>r{@9-Dt~q_?NM>(2Jjy`AR5n=W5PA6Zl{Fv0eAYw`W?BYCb@ezvwh!6)dU zEOr*r6)qjWrI?c>5_Z{T59^Zf=n~$H+1~g?s?A5s0H*z#R))uS7N6Q>C41StMEF^M zTJ6g5CnsKn9KQGSemUzTvV~nU$eeJ^)Z^YuwlT{~(9U^L!e*d47}z9eW^Q zv-Phf_RgUc#TUIo?rsH|sTChTurc0xh95tbc=>wDN}$sz<2vJtw4zs=q?Mdfhl}J- z#%bjbIUiKE<;nb1>{*_CT={i(eaU8>vFM1}B>f)4n<_&EY{+QdNtlvAheDSC{_ePhL5{0vk z_)$(0PhpssH84QJ$>IUi`7su9q4cG{k;^s3VVlf3~S zK86!-^`8uv0Z+HzaM`m|93h{CE+T^-RgxBtJ<3lJ7R9; zebUiiSJZe-HOEcOP4$uPKQ(V0{W==HruT4aYFA;iF_Y({~;C~l>T`F)yb?K zrjzIprqFgJXny}ElZ`FIb7!Ouixh9>lA7R}vQ>}e4t@COS#j9aUu%KlE|tib;i6jf%ZTr@jut)spRMY>uS@0p zs%##UiP-PtGPd4sr=HrUWQB&()akllHox1VJ1)4P@p|`XIVBvsK`-ldg%v6Ck*+n* z(IzBlz1T1BCzcJn{BK1)l#!0BEOKjgb@OqNdhwK}{|cTx`TN-u2IB)M2R<3sbbAC> znQ7jAq$Kqb?KH2vBdw;(-?Pg1+7Z_YZbsWJDkTlaBlS0SPB1_EICkyk+vb^kE>gcV#Z8dXlHkPs;4DwaCV~`M9yY>jwms zDvB+>D4qEfJsEi}_72B|9EWY=*G@*Wqpx=+>Z%BBy?Yt|(3y`jAG0roedA=*&ib2r z^+Lym*wk1C)8izQd#t+ac}kxit(wrtWI+z8r!kLqRPVK6PqZm|et<1AD9bPS)BLjq zPbbOQb0@|trEi{VS9@qQwj-yiASB`Ahqa+(CfN&<`Y6ZWBz7A+r`V>5$G1w8ROWZ>pb5F$}s$YEPCuF zLLPPBsN0aXD;XE4Y??OoE-m%0C!fUOqq-fJtX{D$lrLCduP4-v#cc^{Vo{#`$lY{L zr%B03eN&PA<=z1nPT#rIYd2+&wJd)OU@<=Z_rNJp_uk$Xc06W|U3q7Bm;7rwv$Nu| zMh`;S?+P3n5q~Xh62my4tmf&-&EGX5wZxCHCoEqtXVr^fPq(WM=0)t6+s_L|T|wUh zt)=kKSk@09MJE3|d}p-S)BUFH>!7mK2ag^?oUp<4mK$EW2Qru()oOR~onm3S7Gi>~ z4%+kjn$w-IY|YpB_Ur4?kNr?V&a6vqjxMkN6Iu9tOVGy;1;@W7A|$aXab~xL?y@A6 zG;U;6$$xIM^(eiHIG5MmIGcr|!IhT1vi*mRU1OBG{9I3=PiCF77qJ)F+-^z;mV0w; z-O|d!pED&^zS7MOY00K#(oYmVqjv260yY&nx!j6nu+YT1%CzA>Y+7omzxwRMr4Kn= zRrwpc6x)<#F1)GgbH2*Sp#QXE!8}TosBL$ozq7$mz@@TuA3an)SCZ3vS($3$NuD@w z?OO@Gopih^Y=td2j@r$5c9X5%R#$Obzi@mHOFko^++Z-V>t0A2zxKiB*Fz4z)1FVA z&O#a-oWC)etl!mW`S^wK`fE;28zT<8ZmzcP5Rt>s`W*5DQU%BD(^S`v-9=(H!%$% z`>uX7Okg~wA1&$`A)opE$LWhgXT|C7`Az)2xijOlR>$ikX~BvMR#&AluhLw9q`l^M zzZXO&{o7mT&El~4N*dFK3rCgajcaS|n&>Cl0+WV2^3R_yDV z+Z#d(^9P=&^Z%(>l>gc0t7kpO_u~QGsh{_ekAB|&c<0aPyn1KD$j6bSk&l0q#$8w5 zxE)_GuZh;M=PhZhXA8rdORCx7F9q^+ zrwfPo`5fBfKK|3c$Itra)uye(XJ0mMy>QYYWv5|no9>(Bok)oddL6lco(H_D&JpCo zVxIO%nLIW%4b%N6mzy77;n;b96-AF!i!{4{c%)AzPu=q+rx1aFl zolK<YIW^blB!tfTU1$uDi)O)%8Nhi8u(tD zCwcDs)_vPqW{zQUYibRS_H%r>xW)OYO?+v`1S6W+r18t>oVRGO$LkwM-cJ{p6pgd0 zxh=&yvd?}Gm|>jS!CO;Z#cuwIF}uxP#MNcj)z8=V`z(BLnf>-XAVJnGPrw@m+%UcbCODwbOq>m~h^#`bz!mh-Piu$7~Y8n+AIY=2_DInB^>V$P-3HIns%L)VwP9j>-#@Xq1C z6-#QIM5p4%<0Uwa#;&&yx9%NUnDW21-*W)#k-6A+QT@GbPcBbyFB`W={8K)5k_RmR0{YCBKcw|&Chr=raA zvS;;7J-ZR|;^xL#XleQGQAsafZp*oA&8vocICR{-0sqfUB?@X!01;w4hTXizFG>Af&| zyg2M7P7eHL0ly#Xj1}WHG^xo6vx47ANsk}BEe=x#kD;G<@^9GXEK}?i4A^)px#w~DyV|e-oMHhZYGZEVGu?e+H!}p{gC}oY zcy-QAD88^e5E0FCD{;rMLG41_;9`pls#c{|LS?pPY`yZmyq!^~Pp>&%#B0g?DPK?{ z+|cWh_;rED&?`rMxmn(HK}~bIVs`(r{rnB%T1R$jzPO~df+zuBh{b`gn!&NMn43SJvcD{9D4_S$s<50t)-Ww2Oq2vKj+zai(ZWj`l<~IKtgyMeIXZ)^f}IU z^5;A_6~fCndJ*W(s5_4B^ilLeI8r^7vJ%ffupyj}2cJllae*(4{(Y^Z^pswPjd->k z_{JRwhXZHpLBe70+egL*&FBbaHE=L7q+uO; za56jiRGtv~i=G3|#bl&p?7qnuxB1wzxWd(ml*g$zn4WMZeq`dB)k9P-z8OCEvs9Q7 zD@^wxhfa^_$hOiAa$-zVhl?wj)}Ih&VOoB?@xdMYzTwdK;|q(DXY=+)IXKum9K8Cc z&;3^5O+idR^TNUEIZ4Y8wFxqzu_GTE=Q%#637sS?zLAenI30-h$NI*k3dTImi-}Nd z2%kB(IWY1#p+5YU)6T!IRG(*!1&oSJR|dEx%oHl#=RI{jg;6_DWAux~cpdufj-iym zV|#^PZ*8}dDsf@E{3x_e&iDxVvU%USKU|xXqe^%C&{na7HbhNS2 zdMv_LG++6mp6Oipm<_(@k@Ii)7au;2Tjb@b-$)XcWoXL`n#+u9irgZUtM2hFr$a?s zuKxsPpNyIN$x7zHCs}(``U`HkS2;31^$yIPHr|;t4U6~WYVO)hT z4n8f-yLe$hUQkW_poQeSJodi;QXJ_dY)H>Lkn)uN+{gM?x|{@tCeBy)=(IFLa;JB{ zFVuhfKCg9*0pA<{%I9Yjr-{cI`cF5KtyB4$B$mf-+%k1!!OO)%g=xgeRg)bF~JL~Gjb$%5t({-8u_!b=L$eT_$CCDVN-cY$Yi{D|x+!Z4a?{n-I zh3OG*&0hPR=KiIG>_hkvQM1-H<=ot09UrNx$|w`hjd(sI2vi z?jMU^aU8>NzCy<+pMMp15yFpy*qmDy|Cg- z7273+`L4fLeG}gt+HgNr;s|2w7XK^yW%hl8`hyuf8i@T{0#c9palWn; zmhB41*xhx?)5ex7H!5ddgy8#qIGp;QDkT)~4kY?Hvo1$>-Fz6c6&+mtWBqi9c_&8{ z=T6p*M+x{tr?dCANH088d(c!m$Dq=@XW&w;vtFjGPRjC!vqtu;?F_Da`soS7r#WQ1 zh5W9v9*|@JuGPsiym3IBfZWr=^`NKw_sx?>Y;P=KcpMF973Bx$YKk6-rA3D2OvTU% zVKwpbJ9C%%zPcm}ztlZwH)4N4o|z#v{7(4%Zk`Es{Nszab)ZYzH_jGrR!W}!%Me)j|Vj6|BQWil>5OfELoU! zvQ6Z0+EKan+l&Rz@Kkpemm2z~T&mmK{oFF@Q;9JP=g<@Ri_318xx6LZj-}NdI)~hM zZn~(=VXNm!CcMe1OGl&gJbUh-myBx9$}x`Z_Vabz?r&Os=+eFe(+Z1Q#^EC;VBuxo3YW8z6c>Cwby)X2V zaga~d9c>v+zP}V##`VJG4WA-a4Znf#FYc1nzwkg}^V$M}{1^IF28sjUigtvLP zBO^J9-(D^zd1m9)UX@SQH+)H4j-88^+W*jEtf2ny!sr*~`72KuH+gnH%KCZX+WTG!m!ZN|*WoP^JhPNPw+303O z+P2)$oswSw_gS?TN^ZNnkH1_#nEhdNK{DNO!)qH7{r2`M9K4SIVUUroOyAj;T1zlM z^RRC(nX&S$U1@LLwV(5+@bN{ihg|{YoTAsgA8QNzkT5XNy&%t$d%x7*Q_kkZIs2W* zzmJ^IjbJR^oEarvypccf+SjPJ7=NV&8MTcP8h?Io&EntBaPPB)@eYZjHzi}L+m-k4 z5Rgb!e_Cu4*jZSze?t?#rck2EL1rpH=k}evR zg)v-G{gEni%V2am5vBj$4rRF6Fsvp){1}b}M{xh>c+QHp z*Nf9_h~L|@+m1O~spIY-o?FS(UaT_bXog+Ce~z2$?x#1B`6YTd_z}Td}4hr#PW46icTnVCFt+X8r_|ewx16#|CD&2du&~YE0&9W z?n1o#=?a!V@7uL5G9{Tb(&;bmQEOQ*e%pUgIO#*uuL2I{YOOl9p`Si0c)Hm8>I|ws zZUY`a2-)bV+`WqniQY381utZH6<%zg2-i8r5w}GWE9OCO7ZLlln6J(vGg)I+ zC`wQ`<67?5Yg&E}6n0__9=?{t$EWmMbn9zwNSYxSxQ>s$&(;3oU)S*b=w2ZMt#F>% z^uvYc__kyTj!cxB*2P*{%N6q>25G5Vy06hqbvX+Lppy|=E(@6a|ClhIM97TaCc znWb?cG@O{uo$#~^OlviCV#${cn90h}NmiqeY3WHVZTbfGW~E&U2-my3Xpf&ibVPzl zCg@0oQTeUJ?ag(=zXHarE;npA&u*P6&Ld#DFZ)a*m%EkRMUC%XPJCw?Tix#-GyZx^ znek`DwrMr$PFvo1tAGnZV5Lm;edqP&ALGXc{ zjQh=PO|Rbv@j4gmy3xAx`s>$xOgr#K`l7>)>bOlVvZ|>zwm%|GTl9wHYqMLN-+Ae zxU5T)=8b>C>Bdg;U!rf^zFuKS_`FqiN4`#^Roi)OwH@uxwv=~9>+sc8Ut>}2Y>#*K zK`gI4m z96a+*<#EN9Vvci(HA_uAY2qi@rF=AwIu_*}6KSeH%RjbG2+zu)sT--oC0{&kYkK7j z-u)5dc1%;t`7iMd$XWh$XQO156ZRJT!yTcE0jUQvdE_qe@-V!lUtd=L8~_NX-9=M| z>DFac8WkIhuDU(a8*)T{32sctvU)G z5{|jc2&7C6N6;(Y$eu@}8wEBVUN?I~2~!b1?w5A-gn!z`nd2?CdoZrW*HXT_h&%MO zmk90`MG$5ZMPIp^@aq1)ek*zTgSWQQffL(OK3W{%!q;B$$1VM)pMO`&QJVO|;5z+h zL;Q}cstLD=8lHt6vH5bX);GmA9?Sq+tb6W^pX0xKqpo>?%_j6^l~?Z^SB0B>n(n5u zL?8R{LuZ2vgy(RF^ExMjayZ-RM*Da~c=E%f3!b&UdM>#=-=iJ>!SAxZKck-aFP{y} zODIX6BHc3ol*blY$(z~_Ty=idS68F#DE@3ep2HTE^HP96E z%s=a$6tDC>`>Z#|#};0NaXqbY43m{g{2W66x4~Y3knVujX==F^cO8STY(G%RE5mMHfKX-&P+CgumO+l#__Q!hKCfyE=+Rws@yPlNelEeF@9nx z_(%k7VjPI7AK)xi=gX-XY|?7?9KO3_rt`c^_(Fsbq+|gD>dn6zNJ$<@LPp_wLz-egVbV6P)jP zHQsLIO+mz{Smpj|oqW<#P@yyAxNT6^!fl(|^$lvSZ!?Vy?2j1leS7}<$a%BhN_x+j z+LsW{hvU1mo?H@-6TQ*k#P>%k#4liL!F(Pwvf72=#N>8MeD2}RCF*@=GT8i6Vh#;r zCj@@p!{2r|)%1r^$o*_J<=_j{puTV-+U3 zi7(D9?>Mpn<Gh<8oG&P>c>@NitwASjox0mSxep zU;U4Z?!5ml5yh9>`vOea99&1y98%iYswKVR^=vf%Og?w(ZrGLI9XpKYG!KFZr^_3&G{LnkxK7xUhU(o5@K zf2?VhzQD|lbZeegC=)aqUf?-lBAtAR_e{;jkDI&8s~fL|$No*p{p_RMH0JrrB~oa+ zB%P_>6D|x==dOPA;cFwYKQ4!A9NYdXEk4(}Uv>0p_BOlic&Q^DXLw|`3hOd>sMv`L zo_FH8c;Nir-4!2RD=lv4S-=(g%D-?J@)dv0*Yf@Fc8>}^an<-^!uHO2`Rh(@&^+~r zzU`ih=le3furn5^bcO=k0^5W`~GwoBjZB?aA# zt5xWQrgE1pnnGXiwsjrgnHp_cilggez0k^)TwC6A#X?f(xpWEViS+ml_M^u?o@&i@ zJy_wYXOxxkt2FrHvZ8!YTGI%b9j@ENA2-` zFoR}q{A)D2Cofix`5U^8ZNFSa!z% z#JsRdc?pZD;W&xDYCe4Nh4R$V-Iy+U<=1vHdhBw&xrgbwSy3Zlohf$VI(Yf7^*)+u zal*|xmieDmieFrv<%?T>wI>BfXx_*?A0T@xAllu{C!zU<)}-j21at72+@c~=|4xr( zO{QFqNz@-+{d4&@YPiSfKioURwJSp7h};-8Hh?sVAKB=5so z|L)zCP`n(ELrTp#do_+e=3}uJVxPFNK4$xM43B8s zYi>_OBg;%9N`yY_{^4_C?;}s1d3v0kfwuk0dnRu`XY9fYp*5@11va!xI>@gVk^iJC ztnYm4#0k$+7Q=nAObxxVO!(d(I;@Schn^RSnHi@z_otxOv0<#2hhZ&|_JEL0DIu6ubv11e6 zSbpW?smMC$Yy?Ti2EVkbm06qv#E2po7xTEUfY^$T=d-A z$cGTz(`l~$(O(aPP%BTRL)|wRj_K=;8ZLZiY?enjZF@W@D$Mxq!2{YNHh8Wh{w8e! z@7h)8rZcaURR~!h4ubW-eR;{A!a-Cp>u$K8bEZ za3E(wel6{ju&kew>urTBhD}6?R;33d4enQ z(>8Mzz06m)zcvkQE6HnAG(eb$&j)`}uiMch?!3QQP0Om|MZ3d>%jmu9d>MTYICqdHAL+nN>il76KQ>fuInp&^C*as`th-0D&t%~&y{b)-F1_L-zJv~Ov0u-u z8QjX9j8qiZwq5nBPTb-s@T9fiGsFGcx*r_&vD3u+Ku^ zkdIqm19#e$hpQLoRqjXLe{yl}jtRVvprEC|*Kmfsb{1r{0*|AF*)Bbvv!m_o>yHm4 zo_>Z^>^d5`Yx?c8=z}U{Ek9*#hTKC~^Df`-pnI9UO+ou@V7-p^7J2kT#TXup_6BLK z*yFOzx0)K5Lcb{IZm}9aBUe5hp$|D%jO?i-#dNxboIGiZ1G?5)1F!-tiiLgm-`Ywq*xwC*9B(w4)j75Fa3|$J5H-X^}rUtMOEg+^8v4qn~!tY9~U>; zuoT%G(sf^<;YccbOzG=R(b@I-JLG;|`_6;k-(B(k;3J2b<@cJAw=6P-%YW*&9n5)I zCc^zqP^G!>(Qv`V_}Zp~iM!+w zr%VP<@eEDBTin!}a(pvK_FljDuRMEu^D6x}G_s)P-VLx!6mzm-?t{IEW9~=UT6)iB zM}5UxoXlsFtr{p0%#gKbXu9%pgK}1S>7I5^!ssvW{LE=Ro1(r z<6WaOpVe9Poa;Sz`D{jb-y`04#*G2VlHBO3)bAq4J;Zm75oQ(!p1((Z@%kAhCNhn_ zv4Fi@lOM_V`YPYak!fDVd37&d2B-Onq2G_v!`Y+%%2v+`g+E$ZSE*QlB`p&XkHg!_ zWwgi0VAt-gHld!OQK5>up+VjR<*(qRyLm1|2w3%kSN6!OUhs|IYge$KBkbf5s>;aB z(9QVhGiIUhm3fXW{N7x|z~y=wcc{dUsk~9)a_((t&K`Vyx=<$>$|(`E%fl>{352YX92GycB%dLZs# zb;Tv-OPla{r`q)M@6Anpk9}RlDzN^6+00d+gx{^d#=ku;K^-;dRNnWl*1sayW2#Cs z$NNK74^lvJDX@V5>Poro=fRo8Lplrg->U7FM*1&Uw;qr*eSJXKME^aHl#YOLBEQ^* z@RtbV!^vXI@$~X9*PltcQoP|MEBaJ(u~Km->3=-=59)ubr#8Nn;wmkcmqR?)HntMe z*mH$xXNjk0VPT=y+#JvH!)`+U zrR{}MeJ&OgW2p-nM_2y<=Mkx8Wf)5sadBmT%-JPzQrN`!S+1AG$&QF!GDt^J*|Da{ zy(=tRIzw0V4*VVaE}CwNo4%vxSTH?!zCBjF`6i!*tN-(v&N7$HF)jNWgX;5@UQSE= zMkt*0K1Yz?ML7SLySo3R=Mh#VA5Knjm?QC!bsIv>Q<}A5Mv~tXHu51v*j0&Vz>^kT z!AYoKjo6WJnhzlkrsdTLZ}}1Ygr|H6Uii33B)me4gkJ(z$rE>ofXmxS{~}4pQi5B} ziN9U5)f)t|@0GF;)cFxCt1Mkn&}or2Vki~Tsg)=d_%|AUop?hbc#eVDs>0<|Nej;? zc%uqxby56ZP@>epy~Ml}^$A##&b0&=nG&l7SAxR-lB5S0sF8ld;(*&4Nx#t~u~aZ{ zdH8Z@S3+YYodBVL55Yrj5}%5SDk)v4z$bHpTii%YNNe=a>G#Cn;Fx##UmW4F074#| z`w0oG7bynT*F&R2qQt=6liSVwy(7Vq`LLkm8+*yOqLL5!cU^PtHWnNoUnq!>*hIeM ze3wTgI2RNg^ZP;&A&4j5`$xWV(9S<92psoGyg3h8UI+XM=Q=Bo2p=ED-_WJgiAj2ORXPQj)on zY@|YJ&KfC+6e=yMz;#3Hs3MAr9o#lNtOJtAt>q3CpyvKBz`)_U#GQI%51`^s5nuly z`f7aPH9((1$_C^+dLh}#0RU$MGIx@&Dl`E`d`=}Sij@8!`@`v#tl72JQwG@uPI7QI zAbT5ZJ~$=A;RdV*nNMGp*nv>j2x}aw5mql*J>)7#wnP!ViGbftzZnnRUjZus^)JAP z_cw#k{qOh5mqe4)0rzEVY)5=fEgY;;ARLmM3xRg=P_m_zj(CGLs2k=^^8B^jp=MHX zhr3%y*~DwI|3h>VJ6QBpcJwSDTDK#(9aPD8aYHQrSF~Z^E}twPWweonCq)~I6m57_ zB-DCpng4|z`N|Sl-K$lQ%mrhMRhd~-DXu7ot*87i^x&IZ$kxLskwu32!Oj6|geLR| z;mRN}sFE*g2MST9j5ccdD5C8@q+N}+f4&A^;tm;XwYMP!8_Zmo>;N!k`PX_-fRHE+ z(&K7?VMtJK)m_&HSd173zRCzT7}?q2_#)qrLoyh+v;oAIAmOSFJu~5iG=f!QHKs6R zoJckjnJrPN7% zBzqk(4EbDnYPm=XgU29iBq7R8nN~3H5CKFMhJ4rce_I0v^)j%7kev}W2YjABsow!g zAezHc73zVhEBqHCFiu|816&0OMPrD!ey;^$7(yZjWEza>zYrm#OR@$iIgl|cNgqUE zDEJYdQ;YX6URFUpoM}kR13}(^U?YZ%S7Gin0Yh=YIw|X7$j}*R8^)P5jVG}qiB5R9 z3z)rL6~W?wA!B0b)&JSypeg)^?5nVy$U>9C23%zh@|O_7Wfwiunywu~2F#!?GB_q{ zn9QA|12j$a5GhnTB_m{r9c+DCcKnb|(G;;n0@;L6GoXYiEP_Q7Lx#o>C#p_{EEq|D z{~;LR5$LCOlc6!h0XFr2`#TDj6t)Lk8>~jMoFp}Z>zKs0f>8|-&Qi6V43j~9FtA*; zIJpLrD&aBxns6mjsM-CC9vD~tV}~c}mgt^jd`glZM%rt+Lrz4^{a<8}fh5^bl){qH zD$JY&v|ZM4Cl;XQ{x7u12$`BY%#S9Pz`ZKsN}%f?xf_(MU>HemJyq9%q=*5sYrw`M z3r{j0xLpP6!=W2ppei(A4}_|q3^NRwDal^&WoK*KtW4tYuj?TrUve`kIgn8(snH}j zO}K7EzuEpD%Epka9k|y8bVC|sybJN8iXgIdBza)z*0c{vj39e5 z+=V#&uLwe`!H5fPAMBm55y<$NWCRqU7~~;55tLGS4H@i$>R_x$w)tuWB!j>JbdA77 z3N^cb0R%(Ef9&wEz%W19{3P*Vyu6nCe*_R2`9i|NZU9?rRalrEDP;b!gP!lB2}m;7 z)e%FJ@ej<8(&5qM4`N{3!F9vBCZlJPu9XQ|UYusR`jlp&`Id``^{Rwqye8C1dSsLe=*YOpHcNPx{qZVJha;4?GGjCeG0MwzNcG9ZU) zqzXxL6(n22hyxmRRK5W zUjwkpNCFCnP&OdxU(O`TCm6b84+T#jkO<&TL=>DHNd$1E9tuv{avqV9{=OlA09cjc z5DD6(IS4r~Kaa2|p9m!+MqUgF&mR0EszOBSl2||l6E2==hzdOz8OixX#RZ23h5E*U z8ekmwkERH&rA5KGd@WU3UQ7jC^k=yPvDp<)n`<9~2CBgQyijX;VgG6|SV1)e}5lZdt;1*jaJ$XgM*gOhZBIFJV>5sg5}AE*-zuaUr|h&F*e zne-myxp3-*%K%2;K539mR(TW6LS*eru8wFE*nT8Nz%^AUTTCRM6IBCOo2>IHW-NwWN0)JPqGGy1e&1&cNXw#pcyLg#1l*b%}{|Ch+zt3 z9vI-j6sQ$2K7%PxE67=lSQn&2Xs}`k`2vXoH3NpG`JbHjBpc!a*bOKWVBQ%&+ zkI_Qts6l3chkvA}kQLy8BZ&YR0Ul(N2#^g>;HFb81iu-mZk0&6^bffjIqy?C3}`Bf zLa(5uC~&{Gk2XSu19tU@C@;_u74)4_ZNxD;=ps@jT?8*T>>ZIlUQzy`AxcQJk_tf^ zJP-lRK*Fd`ZuKdK=+RiPvkDY(g#&HPQ=kVVx#L(vCh~%#X_c%>;sxiSHDt)Qz+5cQ z2A?=+*}vL}m%mc#1Vh-MhY&%i0;zZE!BUg^rB#+#Vol&+hV!5ZKeg1vt6Gsb)jQAi z5cKo}K|_Qt;g~UEGnl!6E~H+q9tYhcOIbUlS}KbWoDC6{@Pe~kWL!v;M=Y=f*;_~i zQm%v(Bbfv_9t?2d_Y{$k>#eGj$V(Br9$AGPuH<)#?ze^?-Xm5K38Y2C^Iv3!;9V4q z0LUcpDhi&NC6mC5C>XhuNstSZdvLf?VumDp4@ovC28q*8CLo;PVo(&qkc3PkW=XQy z<08F6!{PvYa_)%o@C*WplaxA9gs(;j9z5(i@FSuVqTxvkIhaVaF&ds-1jL{~NElcr zQU1X`5#TorTIHgmLqLb70+06Pq9Z}B1|pCV2k|$_NW^505hE2*L=uezcS3L}qK#ky zVG_|qs)WPF0AQ*?4I#e{9#A?E^d6N1trjL474A%6#*j(j8B&-fWKnoV7^V;nx+)?b zv`i5)C^-|7I6?L#r*9Gk%Bb*c5zL5a%~eJaAEGVcbV7OyG9|gAit!B&3-SP_M3eDK zY_PlxsF~CTa8SrD|6uAStmwz`{|3g-wlxp&1so z6Bh2Hu*z5ng^3b;O%a@gr@RO@HhlnKBE_(z1`)OkBDSdLc>t#f^@Y|?eL-IfHog%n z*=`vf733cRDF2W$u`|YkOYT3IBK!&Y;CA9WPG*R4Iwob%38GQpmUt6$gwVfVLFR~H zdL)YQ#vFmN29Or|Pb@@?h4_cEG8Qr!B@JA2463K3p^#ADL`6e`y+>{q2w6PHTGWrA zna{N}uul&ObyO5IoEjDyv{2BnI2@E1C}?Up;>yBW8u**26NrZY*B-Dvkcy$QGT16e z(?&4IMJ0@~GDaC%N`e0S#}5OPK|@o4Fx#4PcEVu7Q*CIG#oSqN=X9_Oj8bvf}EAA9Jp8-rr}rJ z2}_(&rz%Li8JvnnV`E@W;33qN;E>ROlJZ>~ad@zn2K0|ZLxb$KL_ovP*ba##W?`yw zSSovh$6yA9+`84qp@=Kwl<$HWK%5w4|20m7!VtHzP|#GA)u53DB@L+zOcmQy1x1yj+$=~gu5uuwNi)cY_gx>|QgSH%TXh9($5)TH@)Ga}xRH3~Llm$WlptdIxr3Ot%QYr~Tie@Ha&O`4Zg zX+jJMmJDcG4AzQhGzgSRBMk6r+Hzp3nWl9h2hg+*>^z~dG1#_5?fpnq+Pr`Seo0dY z*f2_LFlhfj^{W!MHBhQcO&MCaprol{X_5*OsSM39Qj}B1;b>AY5@htX<%s%6B9Sx> zr;1gjsaO?@1L9Iv0uFVg=@qd^HE5ceLKx5wK_d=I8U}@@aV{*_89-eLRt*C|ZpxQI zR;Hz4Y0QZOd+Mp}j#I(G;06Cr{Ww+P?m3D|a6nzuHU{~UM*Scw(4=4-NM_Umswo4g zx3(dW{?$-OXmmqSu^I++f;2QFjl%)O(4=6{ztH3gHJmDSFN;)0s^F;cA0X1CRzM?e znO!R&pwZ$#;DXdbBLUQdh6t4J0tbOM}RjrbAB+IInT zRH5lNfL~JevOxbxH6q}rdKtG0k;otd%;?bg0+^bn>Df@qDm1_xrHqDV$0+JRDT8i| z8vlVPp+P=i)`upXP#|WheFnG@G$l=036eNgr=nq2;o2(x1DP6{?58S-Bim^;Nui*c zsmcLJ0?oKnyo*!?z@Lf+Iz{TVj0ZYZqwXp}(^RRuV?e{vmcy!0*;5&$GUC$iT49i2 znv6OVBEcLx$UVgTx0(Y05lfwX01Ze;*%Bm}MTO>UDJucWqNahF0_qM6^v1*)SJJyM z{sTl6Y867gF|~~Wrlv|Dz$wAB4YW2&A&iO|tp?F5Nb1Ce#Dj4^P38h$PC>JNYZ)q| zFvKZNN*b7Lq_HuGFj^XI#|Dr#gae5B|L0s_1WBbrWdK^K?GA*&(R9(^vo2_=heALV z;7HWY3f3>yq+r5UR|K;UO{{|{3+i;K48{R8kQ&U~Lpzn$RthFJRjJc7K$ogGLZ&s? zuSo+bft8^zCf2f021`uPq6j4oATioP{7mL5Q0`DYOMZ1hlxbh6ePH0h6#)=>pKOG+F>7L+Ydn z%7Nh>1w-Og2~B_k2u%aZF)DyY-QNL6r1aVP(O@Z%X;z(Z zwZ8*jB+#}FjKL|q6(|mjh-e0A;FAexLU@f@p>jBy$rmu3r5-ill~rjwK`?T{(Lf9E zT{v|b0p&pRs47+kJIbiz9gNkfGd-vm30A)-`#XR@RA?sM08pf!*@KV@%^Zj-*!V-0 z`#?DyG`UKl88D9c2WiOj9jaI~O?-m>n8pdg!~qSW2l$UB(}N)qb?2)LhAULw59S-e zc!g%r3?!t1aQ3>sY3>ZAoG6dmH zoy@>cowghbwZ>;cNSOoNc3?0@jdK7%C9cp@mQ$nce6ecEU_-q(=<{fm z3y>1E&w}Y7n!Xy0`&NnrMLIl?I@I@iR^D z3MRP!<6Si@w5m^`Rxqfhfv~_wq2*f2asaK;whlmk>T+OYM)NL)xC?;DZ?z9m1E7Gq zA5a4e?lhHvzKfRjAHra0Cw$ewo_DHu@nAeiTvMZL9geuJMMXnV4_&~!Xd2fB5QE0y z0PR1@VZb&c%02|l1mLK>AJC|s2G|HkgBd|N;)?KEp#hD!F^P({rcWY|nSf(bhZuMn zj5{gq3C)aA&!Z!i!Db99(}8z^uT#IP0&)u#4G$13wIhM)3z~5c5?GTuEdgPOJEACC zrwWWhRSB3kp~j$~4kUy-DEbgU{J+M|Ubl@ah{DAd2?Q4bWVkR~C;?m==8{Y95(o@L zmISy-fE4LcsE7*}7HrG0f)qrG_!YJf{DOIdd^6N8?>&b_N)7Maxxe#sX6`EMkm?SJ z<*h@mm?$o=luqLj`djOnp%_QCK_MC~P&Vr7T1lJMp;+-g;0mz;O!2LvUmenQ|T zN0Q>dCLLxp5)4Kgy1k>z{O9E-ePT*d+$s(&!Son`PAQ zh~R}Se+2TX(Me;f>q3WYvGj*`t?maX;tYPyP8h`e5>Yi6u#h9nYYkg)G&YK~(Vy!) zVpZ{vb_am#^v>Vv7#>oiod>ojUrdVmG zS=F}dZ294BXXIjX!f4pqjfJN64`yIPogIr{=L6VD+7Yo6oYcHK1XJ}`6N9G3DKHx{ zKsz_QkkmrJ>#7V-i1<8>z`Q4PXcZGM^M9Lcfcb@)D|{>_!m&`ix=M)x!C< z6$EIbU9SIRhTsHMHs)2WGSQgWQ$0wehPH~BM?1yOpygYi`^oK{uwXWywWFZP2a~Vu z%aw_olwzp}*(d@TG&RP{#g0Q`2ZV1h9HA*ngy8(>NI4jUxVHdJ0pQ@x^A_trEkDd# zbGYI{h>d_bYY1z>8><~_K_XPAz*}uy?te7&Yq9}xsm}t;S*b08mwrne4uuzsT=$3E zM_6tncI|lm*O4Rx?ej^U$UkC_(Ac(voBS+>@S?_R@uWS8K$BMZCWtj(g4#pB1XP9i ze0o);Ok_|O0l{SM%fY;fo3=3+4Vt0XFmt*~=HLZkGR;nLoeU7(ZajO}JbYmu3huCC zA+*lI;CdZ_85iT{cg=S@ekZQ6k*vh-$LLHqzzdRSyjT>csox4Oi7m4y6xPY@K`@wf z-C;1hht)@BHRf5|Q0ix7FjUKd2u$r}dqRzxufm{aI+*o}GC-@ggJ$V9crB%fJprAt zQ3DM7sI5ehvLy0_(@gH&ckH5`XaukQDq}x6SmT!u%^8P)S|Qs=5K14JRa3!0`S;4M;A^C1|x7q*_D!8Hw3+@S@q zHm#OLu$Aq>I~a&FKKt05^1=Z`QFKBUdWiUF$5(hhHV?;d|3>Tj?cI_vsD})XSpxdb z&urBf2G__oa|>8p_XjTqF=?gN#T?265S%Y>OCd1l2S-a9?Z_I|LV{Ln*zgd6T;|&w zXP(1DLt;^5CdjF2F!L~`rojumf+t;Xw5&FLf6 zp)|*ejK6ez)sNP-dVSH23X+^K_x{Y1K3$mz=j;O$2K|7=>H;W};dH z3gcBLz{`y5iNKp54G`X<>h8f_tp)RPG5&M6Uy=OSW68wt`9a*0M(0*b2+eY+@bU)2 z2G*NuT~lN^oSlY@*}}lwuGix)f9wYaLQr?a?_R3GCtG|AfNgbkcvWGhln>x&;Uk!L zJUtdIy7fE;4fAnvIf0;Q$^uZRSFeM1R$msh!+n~xC{+jb4UHutDA$V@#j<)3si{>5 zhF0q%gTdRaSGwJ?S~e427nofKyEE^GyQn@tf_n?Yhyu)%!W$DAZ~tt**=Z0@FH{7| zP}dY3sm|fh8(z)Vk1X0DHEB~PV7b5hg*FB*)r5K^i2bOORI}qxsz+2lyq>%0$vRd0 z8rql$&7gcrcufcoi7Zm30?d41Dy%GG>9MRfK&p)lpBsn{^py3~#i&swKW{1!^KI=& z52`Cm{)QyNev1$I9AKu6kR9=p7tn*853ZkIjUk`NS9h2CDp3%R(fCxQ%H05k>f7<( zJG=!2qbMVwV7rzNt@k*K5KWvTf(Q~N!b>VZ=ReR|7kNr3~HnU< z?Dd6*-+$w!_7^)p{`R?-zkA{FkN&vn?9ASsqpME6xc=-}jyQx|(_YlcydzH*)&lUyj`W=&o0< z&ab|5e9bqvtlxI{+;3^ettTJ*;oVF3UOw{9=?72z_2vB0v60WmMp{o?xX}j^DlT-M zx!77e`0x0|)`uHi+tr`;{`P4159gAIwozf$Ht%EUOkZliaY<@hazc@s z>s%4adL5-eQLRIm$@gs4Aa)Y7p(813L+4_M*2Yc;<6`2Z502tW!&U*eSeBw01j9rM z1?Si&vmr-nZixMuvkiu#MLMKhHKM75@p%!NK`@fDIas9Vbrjj4E8UaxI#1pU8ygB;L+v?5 zV+$aZ4iIS{tgCv$37U{Wfs29K7f$9TC1}M&jvR`sSzGXR`XZqU-q0ijXDH@NVttbk z$S?vntqUMYw7y)Zu8$i3KKy}G(I|uv40QqvyqdRzjWuOME~cnMmSKkV_!p8>y6haB z{UA@hG(~d5&fN&2OQzt0xU8X$4$7s1j;<2J&*+e3y)cs3Iv+z}VnoPD*25kD?ImwW%Cl4v-IArY79v#ZGid@f&X2Zd-voz~u7fd<9 zmUP+Wu*dd~?8Rg&J0@Kw*%uo$7-SCN&fPyD(*fhNiXDy0Orbd!GbSUaMz=F)X+p}j zuV>7bHMWgRW5^R7Ck78Q3G>zXQ;9&5)67qw(7T;A_As>V%iYa8CDABVwF?)N~x3)vtKepIv#*UuPcB=1>*!# zt0h7({b>diOhSvkgO_3<3NU;AzyKrWLh z%!2ot2^!COWrJ_fX#yO|X5eWl9f-tDCq(v@F$W`gCzW3(6dH&8BXja2{_s_ZC`M&R*-@yw@ zrY&LC$r_$D_ag6{O68iH^2US{p7D(9{6bg?9)f~pXpw@wqxr2 z_t&l-x%}z-ljoN1c;oGt$3H%_{_?WZXO8`J^TEB_KG=2j$>(qUd++sg$KN@;@ARTe zt6ux1^Va#lKK$+TKM$mx`=+0|vTEz(jV14{ICFLSzB^Y=tzL9$^`g$^A8x0}k|ObX z(&^d7cP$N(WEh({bg?u0Fpp91Z){?$+y93smuh2NCEHjCLNmL5?5u5y`-y96$C#yN zb1YNg6x!>k7FN5CGhSiVAMky&+I5`7p%tXq(ov!j zs?Cr(NV?cdaw^qQN3{f3&r-!vv51dJ7LzpaFFE_o%C5$xM0+uVUA9apT((J5rR3L% z=CNM=ZxIkDWs@OsimoKg8Z26zQt^8w*~cNj5iy&Aax0bM76NH^V4(#rE@WTKg`-Qb zzzPiC?g><*y*QB0Z2P&hvWdx_8=!l824W7N5Gq>{grKepfhpL^gixd(LviLs5TrVE zgXClZf=QA~P}BhlVX%9*)E2mXas=3?dr6JfBq?M9pW1Z7Ub3%?F*sqwNKRCt=0@yG zVq_-*#HCH%9avQaa zxmYNaY;zRJt^@a)txHCVGcKu7t(qWrH#Q)_I(*2eIl?3D<{XlHT@JxXOloo+I0uN< zpn#Z_VgnsRCw3vQZpj23&FFd7q;e2vw>haZDRlX0jVq@L|LFVQ$OBMKC&jGA*=+{l zeA4VnmlY}6$7wF}v0-z}s%btr(5GTjvZPVsY6*t~-B6?y9SIT3_PjKCkJw+S#mqi2Ye+it+?CFz?fCUkjhpkv$2Rqbn7AoK v*zd+Vjuw-J$2W{U^#4nq8QZX-JGp23?me&Xe(|L)bJZ%{HET9+9q;}J%|W|j diff --git a/Doc/RomWBW Errata.pdf b/Doc/RomWBW Errata.pdf index 3ffe81d0670723b9fb90cfc952dc54d92b58186d..e2f32db7c60f6d4542b00d4e0b1df03adc52cbf3 100644 GIT binary patch delta 307 zcmcb0kMY($#tmtV^-q?csS3+bn!fy<4f8V*>*Zn3#5#NwR5yOS;;KBOp-D>c@u|y) zti+5zL_`!Ds+$HnubVmdQ9!Du;_|JrwtGD08@KB|nUbkKt@YCRtwq(fF&9&k4I8|I zjAItRY%{Bx-+Rt%-OIN(ZrfJ({{OUY#U>e9t($MnlWx9xTjH>${NOpqzn5lv{M+#= zD6jTdew_|yFl(%B7}s*I=Ksd(YQkIB-imH^sV@G7dvZ(T7nsSA_ ze)4zjzO}dGHmfn6P3JH&HncFbG&G(3J5w6Y*({fJhsD{z$-vCW&Cm8T zN29X+ovpWHHmfn6P3JH$HZ(OcHZ-36J5w6Y*({fJhsD{=#Ldjb(8pp($L7<(bCez#nI4C!G@5M$+r2j037Cjk^lez diff --git a/Doc/RomWBW ROM Applications.pdf b/Doc/RomWBW ROM Applications.pdf index 980dbfe8053d6da6a69a61624f9fbcf21fe1bd72..f3c3ecdf7f869651f75a19faada337bbbe2d3005 100644 GIT binary patch delta 549 zcmZp^&)IyRb3$AFNk3*op1tS8pRmuWI;#|_Y`8^XN8__L3&n#goj&|$pW~S}>zjl2 z^~g8RpNos%na=#(;y|zaZ`O9csWk_lOgZZ8^u187j_pf={947kyW+N;DcewQwb;6j zU;kU|`ZDcT>ze02OZ+de`SF{^sZF!(x3i>uYdW~+*OaSg)4!K7JYcAw|7u_qms>)KS2Xy$L{_+~-FO`hYjp4)^kO}w$k%Q!o@FYV$Pvstg=biGgN zY&+B`)2N=-Rh!88$&%f@$8OmM(S6dKXT8lj0urijIH}#zy`>rS(R-rrbdg%6Y_1C> zp4w_{s+*n~i5*Igd{xM-qqwQH-t5_<3nvy%+z}K%IsL?G9hGHqn_5e?&bYTYr^dz| z{8pKprDeKRLn=D@hDh$o>DRWOcqvuXIi)pq>6hPEckHz*GdbD4SL2q?(mCO?tk#;f zDV0pzxV-#uT;9#=;{WHDJ3sY)b>&3d|Jg^_4!bG1&u)0T^@hUJeS589*v?Aj6&2(N zxNeM6kBCqGy1eoSbJx6M3eCby?ZQlq+l85!mUwX(85>#{T9_J4-|xdD4d-otSkczV&v>LUoa^9!`58HzZf{|a z+IjBu0j@^t8{P9#J36mOVWz} z$i;n#U0Hebx~+{SjUwaCR_o8{#8YjN=TMc{6D$_rr}ke+!v;-bUW2cQ|-QlFgE>Q~PV}Ca=nwtxGO>Z`sd*%R;OmHobuW0vj6Jd zg&eUdZ(iQrP`>?5_VNGE?*@DovNGLt{l8lK!2=vmIyi6aTG~+ZeeLTKNfVJfPcGaL zm{hdYZ-d?GSN@+ru(!=QCf6*?)Go}#xLufuX^9tyfw7^fiIIuL^!+|e(s17PM?Opr zN{LRUjwWWt=1zt#Zf=$aW-iVqmX-#VM$T?-MwUkAPOf$eHiVVLD%ja^6_+Fyl~fd^ Urg0gX8d#W`a;d7i`nz!f0MoJVH2?qr diff --git a/Doc/RomWBW System Guide.pdf b/Doc/RomWBW System Guide.pdf index da5710057a5a54affaeea1ede22e9aff61c17521..96cffc1d05cb304887f689074c815d30bde4fcf7 100644 GIT binary patch delta 22890 zcmai+TgYwaRfbKX?zpiRZ7M2){82(~)Xw=G=Akx$nCzetl~^b(lEy$45lJy7R;zXr zi;AM9G2pKkr6#2ZFH%hudr%O?Rul!>##Uk>Rv{Wgdr>chK+$KcwdU!47r4VF?Z|f= z-#ETw%=P;pxOndeF5dm%b=}i%z2Um)hd=b#S3dmin_vEepZdzr-|!tbfBaW|_Jyl= zeb;Y4_R+`x=GI$(_t7W+_VG{u;ESJp?Kiw|(-;2vjoieeAz)d&_S<`*+XW`|{gf{QNuq;!8jA%|Se_rL3z=l=ff7uWvuP5=1R{oQ+C z{mJ_-?|JE^yB@ji!RzWf-}A2b{MG9}_?OTB`s2@h|7YLu(o=Un`M%-)ulkYxPhS1( zf4%0>M_%{zKmFooUik38zVDab{Hy=_?|=RLOOHSC%QwCAp6h?@p6jpUZ~XfP{(d!o zzlOhG`;mLDzw(nGxiRH-Xor+8|NLWDzGeM?&wuR7llPX3CjMMJcyaacKboe`gVIvd zRHL;+Z?w|q%TIs&%B@rD|EZPXWoU|SRr;oHWNxX$Sma2|?Z-yHS}v^3ZO`%-*d9erHym+QxN9ycxG#6#H$hm@U`N2k^5v|ic@)7U9QL5bX^1}Yyr&a~2w2iU4APOSsoH^^$L95Ne zt?8)EZSJZ{Ynw+CxVEHGwYe?bs4AA)0j1qv1lpK{gK0{s?Pp;)$wEq9lf{grGgCqasB?WLVVjYs&#G< zF_X_0fj2JHvY3L|60|7uBA+K`)7IWBK?|oR8;CI#(P>(Ysj(1aYKOs?I;~R$V!dH@ zGpqY(dmN&&x^FwDWwXR>UsS1@w(pA1#Ypbe%tRBPAg`RDMbwo0ShU&V&jh$M82E8rwp;z}Y7V}%}SpC##=tUz^ z8OI`rNi~;IZVavKW!!hB+KpNDz4onI;?%WGx_tUMOonP-;-Sq}c4Zi3uhb2u7|@1R z&)M^YGlOQ6+Nb8kwAEy!KJjP&3ebv%GO4eeQO6MmIju`h6Gwo^CPK_AJ~Cl8Z4(@Z z8p$+9j4Fp2bMB1RCw;+81kg<)pIAe}%l(4TlFDLkO4YauT3^LEK*Mk9dc!!|v{%f* zTPDh=m!JAKM8d|Sz8XZ}w(VJSJN8BQYR54tE#;(4%ecVqD7mXhG$}XcMVPD%Vq8&~ zg;qO}MQD9;8o|MqLE%LZyRsu5Xi1fYaan~MTGiKr*7-%spfcN}+BB1$u(p1anw70g zMoqUji9^E#yGR|>ATVz1PvcfEf|*baYEqYaQ5I;$xz%;fEm8r|aOSSz_t89rN|I06 zCSeQoc6}a2xR_g2383*u=VC!c(MYhcR_aBVY_U5*q22@u?(~2-*UmHtO;guL^tEW@ z#q33L9+t##(b9qp${XiGK;bkD)BeV})J}afv?Y3&_n0_Lr|g1;y_W@Hpe7u-@{brl zD7^|?#I`E^+&9CS(7)9=L#(r8&L@P{t5j#AehpEeS;zwor@OyMX~;|#**Ya5rRmTU z9oTuEPc*GrFLMbgbS|&yGy*0WH?^2TIUxsZb(03;sKSM$4<|FahBpY@5~9puEvcP4 z)&{o~f_dQo%xZ{;$o_;J2LG+JOq^k~PGzCVeKxhrL>%kf>4@m$+-rQp*bF?W1ON5>I7$$Bl$c-U~}sDBX!%0M>ee)|QPY*HNys<485jak>L ztx11V+sR>;05LWvJQ#@DvgZCUO!h3XM)I%Y5-GFMPT?o_U)WEQxEh8NIMMWjI+(T@ z(8m3O(11^jmNkE7++GNS{{ipVWYkX66j%)uA)8>#G;?IVqSi5>7lrVkb(01bK~&*_ zX0cv?1DdQsgEw}-VGvnh9O&j@+#3Huv}6q$chLnqG}&kS#*9VXFG=K)y6_4=BYBLqw?N8`#8D8+c`yE#c)G zKXv8nCwm}pH5GBoZ3M{V5n+yD|)@%B=#7_K?Dt2m%0DJ%FQ?C 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 delta 19466 zcmai+e~hk2Rmb!82YbCLbbGPMmBidNBGf?g%=64VGXrhodTpaIC>x0oG$gC`Pihv^ zKM2arYNCO}#w9kBphlNO5(B79)CNk?Re_2YS;e+uxpf7^3Z0*WP>0H(&FoPkw0eE8lh9 z{OX_igYW;`cb|XTE8qMJZ~CS4FMa0?*FX9jx4rkrH*Z?KN8xf9E%TyIgzFUwgsj-+K6wU!Je{)%l7A|Lni7VC7wl)V4pka_+`@VX*&Pxb4E(r~k(=4#Vtdp%h1p zIktljuDs;>(LV~ZJeDC&wXNOF8)bP+rAFa`<+%oh9rBRdRtI7jf`b@_6w{y(X&$Dw zZxG2ns(#<|kc2aYGlsFPeh7%H5OW%3b1a{;UsuM`HVwkKPH zgPh!GS30xFi&2wyPe-4CyREwj<5QU2�gn!8H6y+qj~fYIXiA+ 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 U(egSCSRUjP8a_TbHF=u<1Mt_eEdT%j delta 19270 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 PfJVR>MMYJ0)foQ|S)rP^ diff --git a/Doc/Z180 ASCI Baud Rate Options.pdf b/Doc/Z180 ASCI Baud Rate Options.pdf index 9e48d8219c7e4b39d4a6b667cc772225ce095a57..2c8fe24b81039952e9dbac13b9d40392bcedf46d 100644 GIT binary patch literal 157214 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 PzdBA|PLHzw(eeKW#&(S% delta 105408 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 d7V@sK@4eH . , ; : = ? * [ ] _ % | ( ) / \` + +The operation will be aborted with "`Error: Invalid Path Name`" if such +a filename character is encountered. + +Since MS-DOS does allow some of these characters, you can have +issues when copying files from MS-DOS to CP/M if the MS-DOS filenames +use these characters. Unfortunately, FAT is not yet smart enough to +substitute illegal characters with legal ones. So, you will need to +clean the filenames before trying to copy them to CP/M. + +The FAT application does try to detect the scenario where you are +copying a file to itself. However, this detection is not perfect and +can corrupt a file if it occurs. Be careful to avoid this. + `\clearpage`{=latex} # TUNE diff --git a/Source/Doc/UserGuide.md b/Source/Doc/UserGuide.md index 9424ed1f..d6acd606 100644 --- a/Source/Doc/UserGuide.md +++ b/Source/Doc/UserGuide.md @@ -3896,7 +3896,8 @@ may be discovered by RomWBW in your system. | DSKY | System | Keypad & Display | | DSRTC | RTC | Maxim DS1302 Real-Time Clock w/ NVRAM | | DUART | Char | SCC2681 or compatible Dual UART | -| FD | Disk | 8272 of compatible Floppy Disk Controller | +| EMM | Disk | Disk drive on Parallel Port emm interface (Zip Drive) | +| FD | Disk | 8272 or compatible Floppy Disk Controller | | GDC | Video | uPD7220 Video Display Controller | | HDSK | Disk | SIMH Simulator Hard Disk | | IDE | Disk | IDE/ATA Hard Disk Interface | diff --git a/Source/Doc/Z180 ASCI Baud Rate Options.xlsx b/Source/Doc/Z180 ASCI Baud Rate Options.xlsx index 9ee752098d7a6ab3abcbb2e216196d2cac1411f0..c0f50b9a1e498d2e9c25b2402690b68469ef7ebd 100644 GIT binary patch delta 10264 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 W{uB#NLC7w_lu}L#SRavph5rYJXUxq2 delta 6630 zcmZ8mWl-GDvR$0TSqK(f7I(Mc?ryUIdHLV_ z-n&(IKFmzlnGZeP)u&I*oJS%IIn`{VB1@4m?ZEa?sepAMyr;nNr%0xiiCMo;+2RWL zK1+Q?Os$QEbopWzUn`V*M<~2}{<(ES@{_4LV|6pS^FgLqpzSv4&ck_0^>;fK zu!=G43W)n^kCeth%%4<4_|di*l0xXBR94A4A>GI8)Is(k7B5PN>&BzsBkKfS;XwC; zIz(R<@v*_W!dtT9TxZphHm@l)>D(U$54ZBoSuxsFy$CJ`)k}^(85B#mnhF=>_u@B} z$f5i>$R&k^j%k?7XT@Sj_MR$tOo4H#aVy0Zowj!E?yvSnCmQ2|YI4?O8pr|Ijq@}HEV z9Dp#>>+Eqr1j@umw2S#BJZTfb&)zMHtzKQ1Kpcn2+youqX5_>+T||Ep9JXoBkUuTJ zb>rT;6wBgt^<(sC3aU1Ol?a>7TEiSI?pyoif{x88L}M#SfbNK`c=AqgXCFG<=1Z%U*ea6JhCf9sG$d;% z!i>3WJ|dc<1WUmMRGHQNwlx-n?<$2xedU@ze%{WHXumQ=sdR;l%Fi51aXXf|Y*#Yh z_!l%MAW5}gsRZzaY&8k~Hlk5U%-N#6dMY~jhTJn-KLvdk@kU_G{E zo9*MJ-L#~OrC1p_;HszlYG>X0d2*#nvMRs6LsT1zn_ghkeXXUAnSmRcbxS~wtG%MVADIM-Ttu}EK3p{TaziIoVKpi&A z@4ooRoQS&iwIYSA6&D(&$@XPZ-vR{i@{)I?Nkqu?*yuN{3@?9fpwCH;^}E{&%__(f z`X#JEGY=EoA*HU~)D<1(fhU1v*^d(`eK`IG^)78VlNpEJ*V%)IJ=N;R{+t<5mgDBq z=fP8=g0H*Lzvq^s6He3r%w0ye8tfee=H>2_n<*&yHUUDp5y0@cTPOZ@8#Z+E0JFNs ztYn)S7E1*i<9Sh6gdvLvM6N{@e!&2NjzvHq5)cUF>&)rn=HcXNZ)5Y$lk;B-H;1o_ za}I1FA)5;?;+XZ4f^8)fiQYLxT7Rxs%b>ixyw|B0t34*Z>@es1ezOmV!H8LKOgSi` z{rr*l=KA6E%Zs^CuW>%%_zrxAQFNUFTiArTgh6`>WXDej@US84+XIt-c>Vr?OM;}? zi$91_(f+l%)A2$aH>2a|Vt7e7YMXA4 z22$kvEPEQ_DG>JBbTunBbJm=DlK7w0 z3b6)pJ|1a%z`3BZF@{r4+50GKfs6N|PjSN}#Khx=4?dO!+;uhSOQ>dAr}xG&P-6Y} z;S9%N#l(i!&CU%l8+CJ-@7akMyS~&ZUpDdvUm$v#5*#a;_QM??M~Rk5)?;C;AM@MD z=CY`8meN6?dx!>;$xr~&W173W+ne>drs=ETi zpYUfS00eq|{+ssa=Sq_W*O!8Lk1u5UWU|qW7Vl9Lf_;y*fev?PAtnfMLv{mT?jg*| zzB9T>pJbjB=l8oh!Vb4Tb82dE7Vvc(;F+5W&|=lTPSBGcHvW*#}C(rzMcR!V|8fOBZ47oh)MG_r!UJ zYDU$z_~>_TO|YTTD-ZA}yY&c(bxv4ay~-T(S5}s>I9E#ACvjjZ04R9jp1h0Wi4Oq! zKJ~babx6fOfA!!@buS8XwDo!jRWFi%sa>T6}EwUuXfjp zSeb#GJvN-Oxp;k56PX-oh68m41gKqxQqbDK+^lG zO9K(BZ3@P4{gMZ5ySu%R0lKhOoax~Z8?yke8Ph3fW~9tb+mf?CVMF441#x| zAl*9kB) zXtSxJbRL*vQc2T7rUm)M`DZC<#E&OTQo#gjkQCvqMp~O5X4+u(c`4)y$uF2gg}NWM zZ@unyBf^=dBKjotZ~zYn^djIJ-Ne37A#PB0Xl<^R3Ox;GxLpxJ(60=C1g34(&>*Br z2g0DyY$zCml9fYSG_rl^J@#Pp>VUuAhFQ~>b~-JM%+p@MeBJ!lR8eWk#Y=(Z6qWVE zJhav&+-{D<$%&aEf?g0pUmZ@VZny(pQjlOgEs5_0eK5l!8Zi4ifRi>jYgh_#q6fve z*!YJ+1^lSO^px?tqhUtwJl>pxk>st?SWsei&qEnQ@+cDS(OBdS-HfHaDY@IUbOp;R;Znw*wRVg+q$pojAi`>C=5w|+cOB9Y z+Be=??@V&g1MTNxjXI1WQe**Owr%y$DC9+llwYH{P%ztu{->L94NuYm53@7rE-4R} zmg!)_Jx9uK{$vsomR}~@jbf)F(vV(>c@Mw-Iuk#*iXgGB$)5Bui&IYUY4o!{0?W2$ zXc&?<|6d0+|2jw}nNS#_ddL=W7VA{((wz~0dl(uCm~BfI6_I>Y92pNA*ACOm&qDQ% z%-YnXVu)Mr^<7X`zRrcz;qA7~Zg!i3=Gr27eB{gcuIB zqk_RAvrK<2HHhKxV!@lLjg~OkGIEXA^sv!`j6htbEO$z|{9?4?8nE2wVm457oh|8V zy(yq=Jk(=Md-`e>6K&RzQSx*AC8F+74=MuM{4CR7OARrF=a{YXLwZX?O}e{9_YQTi zgItj6inB_l>pp3@!E8oWbiJLn19kg`{uf?3NUV`=^J|8S#R54m2#K*SXK**0V`8E& znbRcuagT37ns7--YsJ1wk+OBX3_-A=w$(nAhAiT)y(%YI8!ht3=Xj$X8rEf{4HTl6 z{@8w)Vg_?m%_79LBsQccT6g1^sVA)t4fMWfUUlzvG+VyEtok+7LHLKSwq{K^@l#z- zPB}wzVx7OSeJ*l@`V^)GcPSY%dEO7GJQyq25%SApc?ML4+GI3{5#`oRft)T7OUaaK zy`i;lbZ69*)Lnr>Nb9C{%l*yh=`a84zxY<>O#{|PbmyFkcDL7QK_;#%lagNlR;Cql zK08U@o*Ev|SMK{mQd*l4!?6ak2$w_aZ=IXYa#B3Vrfg-Yd@#Wo{BzA)C$M;Nk;f8# zVL7Iox_Zt(xH25D{<~tjVSs<8;7yD@G35L)`iG)e%r3pqM_PX{M@f{FG_bDK#ngUF z$Q>Qzx9{qBi#bi3%!1Tbo2v2w9d~#PPKQXN^Zf1!Bl4Wmsbc}$evGo1vDWK0kmER# zc6N3V{^c3r|2w#|)|hK2HP*w6F0>Q@Cmk?DQkIz7Vcs1IRt_?@J972(2vu~N`odjL z?ziKE3W$7DGOY!Gf0y;6*g2N?_tA1V{V_*Y!8Y9(eYm1O^4IYm6AErijhFFe7Aq#$ zv}*V%N^~GU#+bt+rh=(Lts;zN-8$9CcEehdjNl@gP_D`My#RA;2?SR|ZHoqHG}trR z0gh7cmsu)4dps?jhnXk(e3GthcE=mA&km;HM@U_b1!kcoxa-STQV6&Z?ERi*$?7U)ETPD09aw*p;Buo@R6M zjN9o*mrJPvTpRYiWczgLfJi5wL?TTwi}PPPmyQlV19DSueg&d{KynNq5ca=yuID>H zXB*Fd#O;u=`NwP_JV0Wv6=_|3O(Q6rNondpK)cw?t7!>#lp3T|Nk$%AmwqvM9B7q| zY@dcao4Cz@U^Vj4!<$F?QT(HzcRl!KwOqO9f&Kyv zsEz6_6{bXJ||BC+xBT=!otjX4ycltY*CxPf*NQ)u-Ejb?z%c3Go3GxtBj;PwRmAf*XPf9K> z-hJVDSyrc18&AwVm=felfVwXxz41J-gzIH$P(LR-7&!vPSHoZt zKp!ggcwqnh48?p>O5Sd~%e?0(V0$1(<4TojsI&`tYDoLL&T3^j{> zo)jpiuh!X4`Xj0;1Hv(_9><;OZj16`i{<<5niJG{$ZaH6wv| zasz3Xq#`5ANBPq}PQ|wHPW4;ReWa##XEUReJzch18Xq=IC57o{%=vVeI#C0uDbk8WcG#@>SQq2#u}J)_Bs^T23$-bdaNn0mMn4k*8}NSvMID7}LXs1R zs(Nu|Mtt-fwtA|Loc2w>pR_u$!HS-Z&e;6klLYD0BD*RFJ{6zarA1X;d_EsL@>6wL zI4S!5fy)clIkk=ZBX}a=zSUbijBmuhZ$1xV*Sda*)g1D(R>1|ikg(IuVu2k#WkhvG zIcfTCMIwWB_m##LH7^z(KrOim%k{n4Dr%!EvZ<_%Iyl^q8%~h8}|CwC|hZ z)0s@83UEq|x02f0onNeM)8Ze;1sPDC&E3eM=Va4-`SBgo6BJ}o4xH{C{GzaGKYHN3)`nRz*B`ob^zDiovgA~dn0hAaUXL?2xgg|7}FzY_Tdj)rQgkD}Ov@N0t?*q<()rZjhdEZ+9 zw%Gkb$tu3wl5^K$hkc>56vh4ZgrYK8`$C6b<%&8xguu@wJ)367ySH|=ru+`ApPh@v zHI@Q@-3zNzdK2&PK3_?nR82+8IDtlmqBngaPw3BEkivE*fN7Rr0^cga$yo8!YvWkL zt{V>oX{KBvnu`psL6_T>kI4n?D>H;zjsq{2Oe2{3CGksi_sS;y5?;IvH&@FjH}~TX zO(9?Khy{~Jw`y%5WUWJt?7tw63k9)$E_cO<&{X^^|%Gx;~E zJW_AUiAKzCfYYM26C^vu>sD*`EcE9Afo`44HjQ(%7<;pTT4HZ-^U|qpTs3I~HQcJReZeZiO4i+DbV^EQOJ5TL z&%>7%wU=f+k{EtMgC$}R0u4RR%2$8M8Ti}O2>+L)?JYfQtaaXbIJnyVi>sXzrBpg4 z@xqToo-Jo}JZiErl#`a&$&#+9k)1e~r>&idU`vg>%+uy>j;u-Rr>Cvg*l}4v1GY1F zGNxJV9z8)&D^}|HOZMpzTw-2?u4#h?FlGHLP4rJ;2|z~{t8*Gg#P8`t$B@e3kOuuM zBf;lJ(~uTPBADD1)lfi|v>qb&fbN8Zf=CEP1@7@bT77ASOr4`Ron0AHjeR z6OoD{C9!!~vUAGf4BDo5D(Bkos~7epr`D@Fi6;}w%~geX8tI%9MyRZDzXcKx+Ami9 zYU7Zn^7z68Z!y&EA$H6Jdr%d{wFkb+dR?8z(fq`M;SyA=n@kI!uxl8 ztSp_aWb7>+T>t4~&S`_L6Ox1x*NX5^{($|sU=OVvj_tg;G_)GXglx=VUjrUooM`oX z&ey>Q(){xkvHq(yJ0Ir2?;GzZ?~M1F<5}jPxX4Eyb*fs$?|kz0xQEpMXAYT_>3svy zvdAT1L2yCFQ#eD%^C;FvT4HLSZ)E1HjWC6}%Z#c|XZ>NiTPv>B%+O%(X<1IS)dG2` z&cg4d;!1(+`&tv!FH2XNarN_nZud|9R2B|Q0=;VYdiT3nP7|~BH5(B7Ne=JzXn`SlZZ~rK5?Q8b{bSgJfKwWy;KT+0M`bQAoW;mPAG4Rit zP*$*%7PDb?wfkUp(SR|#9QHC$*1xL`BEG!~jp{&rOZE!s?QSs2`Y6_4>;|i=-4-ll z|iKTD)Z@a!?F> z&O2^A&_hlKF(UGjZdxRUO5vailWbblEK#F{l4E&rZN`yfeSi56k|a!$`Ombt{|9^; ziWCz-@_pxP6kLP0N4AlyI3@}dYE9vbd?c&HN!tp7A?czDL*e5(XD~sdE=hgPK)o3w*5* z60GE(lV}=Z3f5Dubpf|q_YEax((uaIrt$ES*m3=~$YI!E^X#wT)FH$g9v_Wcw!VNC z3f|hd4J=SyExG+8mryc)srMPzy%L2Y09q=YT!i5(D9Sv!^|6^ z?K~mKIJikhsBLsCh-~1X~b_TvpN^eR8R{qNg~A-5)Fo0iP#( zoW{-dTq@86Q&TqvdHUkpMNp>)bpZ}@cMzL|>M~-{uf$NqLpCTuNLvd|TrGg}eW0(5 z#~{5`huCK*ZJiD02sVsrrKbmTobNfg1qUvPiT}{+R26K71SK0{K(X8nGOT-@u(>H8 z9U9U-{|E$*-D7QjSjrB>Z1Hi@pU0C=G3StC-~3AYSHPQ)pV3ebL-}EcOEm`?s9_5V;?wAY1cxAUFEwd6Tg4vT+uv3 z`BydfiHjor`)dSEDj4HGZ?LdrDSgC7Vi-5w3)r(19{GQ(*1t9XzeA7;#wtxk{@;xG ze=rENN)NM@mPAB{!oEmrAYw4WZl#6E|C>Pmb3BO!rY=KE{;%Z!W#7cVEQ9|a^zROl V9Tq1ejtJv~4a(4>YV-U9{trfub)WzM diff --git a/Source/HBIOS/Config/RCZ80_easy.asm b/Source/HBIOS/Config/RCZ80_easy.asm index 1eb9e5ae..902e5604 100644 --- a/Source/HBIOS/Config/RCZ80_easy.asm +++ b/Source/HBIOS/Config/RCZ80_easy.asm @@ -75,5 +75,6 @@ IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +IMMENABLE .SET FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_kio.asm b/Source/HBIOS/Config/RCZ80_kio.asm index 0e32f628..dd4e5ed8 100644 --- a/Source/HBIOS/Config/RCZ80_kio.asm +++ b/Source/HBIOS/Config/RCZ80_kio.asm @@ -72,5 +72,6 @@ IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +IMMENABLE .SET FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_skz.asm b/Source/HBIOS/Config/RCZ80_skz.asm index 281389bc..65aea7b1 100644 --- a/Source/HBIOS/Config/RCZ80_skz.asm +++ b/Source/HBIOS/Config/RCZ80_skz.asm @@ -67,5 +67,6 @@ IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +IMMENABLE .SET FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_std.asm b/Source/HBIOS/Config/RCZ80_std.asm index 0481f9ad..92bb25f2 100644 --- a/Source/HBIOS/Config/RCZ80_std.asm +++ b/Source/HBIOS/Config/RCZ80_std.asm @@ -61,5 +61,6 @@ PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .SET SDMODE_PIO ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT|PIO|USR] SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +IMMENABLE .SET FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_tiny.asm b/Source/HBIOS/Config/RCZ80_tiny.asm index e3dcae7a..ef78618f 100644 --- a/Source/HBIOS/Config/RCZ80_tiny.asm +++ b/Source/HBIOS/Config/RCZ80_tiny.asm @@ -82,5 +82,6 @@ IDE0BASE .SET $90 ; IDE 0: IO BASE ADDRESS PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +IMMENABLE .SET FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_zrc.asm b/Source/HBIOS/Config/RCZ80_zrc.asm index 3a7a5924..3b634d37 100644 --- a/Source/HBIOS/Config/RCZ80_zrc.asm +++ b/Source/HBIOS/Config/RCZ80_zrc.asm @@ -59,5 +59,6 @@ IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +IMMENABLE .SET FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/Config/RCZ80_zrc_ram.asm b/Source/HBIOS/Config/RCZ80_zrc_ram.asm index 84988475..40dbdf0d 100644 --- a/Source/HBIOS/Config/RCZ80_zrc_ram.asm +++ b/Source/HBIOS/Config/RCZ80_zrc_ram.asm @@ -63,5 +63,6 @@ IDEENABLE .SET TRUE ; IDE: ENABLE IDE DISK DRIVER (IDE.ASM) PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM) SDENABLE .SET FALSE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDCNT .SET 1 ; SD: NUMBER OF SD CARD DEVICES (1-2), FOR DSD/SC/MT SC ONLY +IMMENABLE .SET FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) ; PRPENABLE .SET FALSE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) diff --git a/Source/HBIOS/cfg_dyno.asm b/Source/HBIOS/cfg_dyno.asm index b3b9ae3e..92a781e3 100644 --- a/Source/HBIOS/cfg_dyno.asm +++ b/Source/HBIOS/cfg_dyno.asm @@ -252,6 +252,10 @@ PIO1BASE .EQU $BC ; PIO 1: REGISTERS BASE ADR ; LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP diff --git a/Source/HBIOS/cfg_master.asm b/Source/HBIOS/cfg_master.asm index 84f1e087..6d7ab6c8 100644 --- a/Source/HBIOS/cfg_master.asm +++ b/Source/HBIOS/cfg_master.asm @@ -317,6 +317,22 @@ LPTTRACE .EQU 1 ; LPT: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) LPT0BASE .EQU $E8 ; LPT 0: REGISTERS BASE ADR LPT1BASE .EQU $EC ; LPT 1: REGISTERS BASE ADR ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +PPACNT .EQU 1 ; PPA: NUMBER OF PPA DEVICES (1-2) +PPATRACE .EQU 1 ; PPA: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +PPA0MODE .EQU PPAMODE_MG014 ; PPA 0: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA0BASE .EQU LPT0BASE ; PPA 0: BASE I/O ADDRESS OF PPI FOR PPA +PPA1MODE .EQU PPAMODE_MG014 ; PPA 1: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA1BASE .EQU LPT1BASE ; PPA 1: BASE I/O ADDRESS OF PPI FOR PPA +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +IMMCNT .EQU 1 ; IMM: NUMBER OF IMM DEVICES (1-2) +IMMTRACE .EQU 1 ; IMM: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +IMM0MODE .EQU IMMMODE_MG014 ; IMM 0: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM0BASE .EQU LPT0BASE ; IMM 0: BASE I/O ADDRESS OF PPI FOR IMM +IMM1MODE .EQU IMMMODE_MG014 ; IMM 1: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM1BASE .EQU LPT1BASE ; IMM 1: BASE I/O ADDRESS OF PPI FOR IMM +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO4BASE .EQU $90 ; PIO: PIO REGISTERS BASE ADR FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) diff --git a/Source/HBIOS/cfg_mbc.asm b/Source/HBIOS/cfg_mbc.asm index a2497b34..78380b60 100644 --- a/Source/HBIOS/cfg_mbc.asm +++ b/Source/HBIOS/cfg_mbc.asm @@ -241,6 +241,22 @@ LPTTRACE .EQU 1 ; LPT: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) LPT0BASE .EQU $E8 ; LPT 0: REGISTERS BASE ADR LPT1BASE .EQU $EC ; LPT 1: REGISTERS BASE ADR ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +PPACNT .EQU 1 ; PPA: NUMBER OF PPA DEVICES (1-2) +PPATRACE .EQU 1 ; PPA: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +PPA0MODE .EQU PPAMODE_MG014 ; PPA 0: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA0BASE .EQU LPT0BASE ; PPA 0: BASE I/O ADDRESS OF PPI FOR PPA +PPA1MODE .EQU PPAMODE_MG014 ; PPA 1: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA1BASE .EQU LPT1BASE ; PPA 1: BASE I/O ADDRESS OF PPI FOR PPA +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +IMMCNT .EQU 1 ; IMM: NUMBER OF IMM DEVICES (1-2) +IMMTRACE .EQU 1 ; IMM: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +IMM0MODE .EQU IMMMODE_MG014 ; IMM 0: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM0BASE .EQU LPT0BASE ; IMM 0: BASE I/O ADDRESS OF PPI FOR IMM +IMM1MODE .EQU IMMMODE_MG014 ; IMM 1: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM1BASE .EQU LPT1BASE ; IMM 1: BASE I/O ADDRESS OF PPI FOR IMM +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO4BASE .EQU $90 ; PIO: PIO REGISTERS BASE ADR FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) diff --git a/Source/HBIOS/cfg_mk4.asm b/Source/HBIOS/cfg_mk4.asm index 2ef262bb..4388cf4b 100644 --- a/Source/HBIOS/cfg_mk4.asm +++ b/Source/HBIOS/cfg_mk4.asm @@ -254,6 +254,10 @@ LPTTRACE .EQU 1 ; LPT: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) LPT0BASE .EQU $E8 ; LPT 0: REGISTERS BASE ADR LPT1BASE .EQU $EC ; LPT 1: REGISTERS BASE ADR ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO4BASE .EQU $90 ; PIO: PIO REGISTERS BASE ADR FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) diff --git a/Source/HBIOS/cfg_n8.asm b/Source/HBIOS/cfg_n8.asm index a01db448..8a441056 100644 --- a/Source/HBIOS/cfg_n8.asm +++ b/Source/HBIOS/cfg_n8.asm @@ -247,6 +247,10 @@ PIO1BASE .EQU $BC ; PIO 1: REGISTERS BASE ADR ; LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO4BASE .EQU $90 ; PIO: PIO REGISTERS BASE ADR FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) diff --git a/Source/HBIOS/cfg_rcz180.asm b/Source/HBIOS/cfg_rcz180.asm index ea0c59ec..971a0e1e 100644 --- a/Source/HBIOS/cfg_rcz180.asm +++ b/Source/HBIOS/cfg_rcz180.asm @@ -263,6 +263,22 @@ LPTTRACE .EQU 1 ; LPT: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) LPT0BASE .EQU $18 ; LPT 0: REGISTERS BASE ADR LPT1BASE .EQU $00 ; LPT 1: REGISTERS BASE ADR ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +PPACNT .EQU 1 ; PPA: NUMBER OF PPA DEVICES (1-2) +PPATRACE .EQU 1 ; PPA: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +PPA0MODE .EQU PPAMODE_MG014 ; PPA 0: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA0BASE .EQU LPT0BASE ; PPA 0: BASE I/O ADDRESS OF PPI FOR PPA +PPA1MODE .EQU PPAMODE_MG014 ; PPA 1: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA1BASE .EQU LPT1BASE ; PPA 1: BASE I/O ADDRESS OF PPI FOR PPA +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +IMMCNT .EQU 1 ; IMM: NUMBER OF IMM DEVICES (1-2) +IMMTRACE .EQU 1 ; IMM: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +IMM0MODE .EQU IMMMODE_MG014 ; IMM 0: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM0BASE .EQU LPT0BASE ; IMM 0: BASE I/O ADDRESS OF PPI FOR IMM +IMM1MODE .EQU IMMMODE_MG014 ; IMM 1: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM1BASE .EQU LPT1BASE ; IMM 1: BASE I/O ADDRESS OF PPI FOR IMM +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP diff --git a/Source/HBIOS/cfg_rcz280.asm b/Source/HBIOS/cfg_rcz280.asm index eeea9d6e..dd96ed6f 100644 --- a/Source/HBIOS/cfg_rcz280.asm +++ b/Source/HBIOS/cfg_rcz280.asm @@ -267,6 +267,22 @@ LPTTRACE .EQU 1 ; LPT: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) LPT0BASE .EQU $18 ; LPT 0: REGISTERS BASE ADR LPT1BASE .EQU $00 ; LPT 1: REGISTERS BASE ADR ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +PPACNT .EQU 1 ; PPA: NUMBER OF PPA DEVICES (1-2) +PPATRACE .EQU 1 ; PPA: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +PPA0MODE .EQU PPAMODE_MG014 ; PPA 0: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA0BASE .EQU LPT0BASE ; PPA 0: BASE I/O ADDRESS OF PPI FOR PPA +PPA1MODE .EQU PPAMODE_MG014 ; PPA 1: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA1BASE .EQU LPT1BASE ; PPA 1: BASE I/O ADDRESS OF PPI FOR PPA +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +IMMCNT .EQU 1 ; IMM: NUMBER OF IMM DEVICES (1-2) +IMMTRACE .EQU 1 ; IMM: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +IMM0MODE .EQU IMMMODE_MG014 ; IMM 0: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM0BASE .EQU LPT0BASE ; IMM 0: BASE I/O ADDRESS OF PPI FOR IMM +IMM1MODE .EQU IMMMODE_MG014 ; IMM 1: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM1BASE .EQU LPT1BASE ; IMM 1: BASE I/O ADDRESS OF PPI FOR IMM +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP diff --git a/Source/HBIOS/cfg_rcz80.asm b/Source/HBIOS/cfg_rcz80.asm index 66ce2745..bd089eb6 100644 --- a/Source/HBIOS/cfg_rcz80.asm +++ b/Source/HBIOS/cfg_rcz80.asm @@ -258,9 +258,25 @@ LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) LPTMODE .EQU LPTMODE_MG014 ; LPT: DRIVER MODE: LPTMODE_[NONE|IBM|MG014] LPTCNT .EQU 1 ; LPT: NUMBER OF CHIPS TO DETECT (1-2) LPTTRACE .EQU 1 ; LPT: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -LPT0BASE .EQU $18 ; LPT 0: REGISTERS BASE ADR +LPT0BASE .EQU $0C ; LPT 0: REGISTERS BASE ADR LPT1BASE .EQU $00 ; LPT 1: REGISTERS BASE ADR ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +PPACNT .EQU 1 ; PPA: NUMBER OF PPA DEVICES (1-2) +PPATRACE .EQU 1 ; PPA: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +PPA0MODE .EQU PPAMODE_MG014 ; PPA 0: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA0BASE .EQU LPT0BASE ; PPA 0: BASE I/O ADDRESS OF PPI FOR PPA +PPA1MODE .EQU PPAMODE_MG014 ; PPA 1: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA1BASE .EQU LPT1BASE ; PPA 1: BASE I/O ADDRESS OF PPI FOR PPA +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +IMMCNT .EQU 1 ; IMM: NUMBER OF IMM DEVICES (1-2) +IMMTRACE .EQU 1 ; IMM: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +IMM0MODE .EQU IMMMODE_MG014 ; IMM 0: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM0BASE .EQU LPT0BASE ; IMM 0: BASE I/O ADDRESS OF PPI FOR IMM +IMM1MODE .EQU IMMMODE_MG014 ; IMM 1: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM1BASE .EQU LPT1BASE ; IMM 1: BASE I/O ADDRESS OF PPI FOR IMM +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP diff --git a/Source/HBIOS/cfg_rph.asm b/Source/HBIOS/cfg_rph.asm index 702235a8..f1d46a3f 100644 --- a/Source/HBIOS/cfg_rph.asm +++ b/Source/HBIOS/cfg_rph.asm @@ -236,6 +236,10 @@ PIO1BASE .EQU $BC ; PIO 1: REGISTERS BASE ADR ; LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO4BASE .EQU $90 ; PIO: PIO REGISTERS BASE ADR FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) diff --git a/Source/HBIOS/cfg_sbc.asm b/Source/HBIOS/cfg_sbc.asm index 574a2427..5177e829 100644 --- a/Source/HBIOS/cfg_sbc.asm +++ b/Source/HBIOS/cfg_sbc.asm @@ -234,11 +234,10 @@ PIO0BASE .EQU $B8 ; PIO 0: REGISTERS BASE ADR PIO1BASE .EQU $BC ; PIO 1: REGISTERS BASE ADR ; LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) -LPTMODE .EQU LPTMODE_NONE ; LPT: DRIVER MODE: LPTMODE_[NONE|IBM|MG014] -LPTCNT .EQU 1 ; LPT: NUMBER OF CHIPS TO DETECT (1-2) -LPTTRACE .EQU 1 ; LPT: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) -LPT0BASE .EQU $E8 ; LPT 0: REGISTERS BASE ADR -LPT1BASE .EQU $EC ; LPT 1: REGISTERS BASE ADR +; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) ; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO4BASE .EQU $90 ; PIO: PIO REGISTERS BASE ADR FOR ECB 4P BOARD diff --git a/Source/HBIOS/cfg_scz180.asm b/Source/HBIOS/cfg_scz180.asm index 01c74f5f..a8a68639 100644 --- a/Source/HBIOS/cfg_scz180.asm +++ b/Source/HBIOS/cfg_scz180.asm @@ -257,6 +257,22 @@ LPTTRACE .EQU 1 ; LPT: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) LPT0BASE .EQU $18 ; LPT 0: REGISTERS BASE ADR LPT1BASE .EQU $00 ; LPT 1: REGISTERS BASE ADR ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +PPACNT .EQU 1 ; PPA: NUMBER OF PPA DEVICES (1-2) +PPATRACE .EQU 1 ; PPA: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +PPA0MODE .EQU PPAMODE_MG014 ; PPA 0: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA0BASE .EQU LPT0BASE ; PPA 0: BASE I/O ADDRESS OF PPI FOR PPA +PPA1MODE .EQU PPAMODE_MG014 ; PPA 1: DRIVER MODE: PPAMODE_[NONE|MG014] +PPA1BASE .EQU LPT1BASE ; PPA 1: BASE I/O ADDRESS OF PPI FOR PPA +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +IMMCNT .EQU 1 ; IMM: NUMBER OF IMM DEVICES (1-2) +IMMTRACE .EQU 1 ; IMM: TRACE LEVEL (0=NO,1=ERRORS,2=ALL) +IMM0MODE .EQU IMMMODE_MG014 ; IMM 0: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM0BASE .EQU LPT0BASE ; IMM 0: BASE I/O ADDRESS OF PPI FOR IMM +IMM1MODE .EQU IMMMODE_MG014 ; IMM 1: DRIVER MODE: IMMMODE_[NONE|MG014] +IMM1BASE .EQU LPT1BASE ; IMM 1: BASE I/O ADDRESS OF PPI FOR IMM +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP diff --git a/Source/HBIOS/cfg_z80retro.asm b/Source/HBIOS/cfg_z80retro.asm index d21fff6c..1a92ce7b 100644 --- a/Source/HBIOS/cfg_z80retro.asm +++ b/Source/HBIOS/cfg_z80retro.asm @@ -206,6 +206,10 @@ PIOENABLE .EQU FALSE ; PIO: ENABLE ZILOG PIO DRIVER (PIO.ASM) ; LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP diff --git a/Source/HBIOS/cfg_zeta.asm b/Source/HBIOS/cfg_zeta.asm index 1ea67b88..f2a2e508 100644 --- a/Source/HBIOS/cfg_zeta.asm +++ b/Source/HBIOS/cfg_zeta.asm @@ -177,6 +177,10 @@ PIOENABLE .EQU FALSE ; PIO: ENABLE ZILOG PIO DRIVER (PIO.ASM) ; LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP diff --git a/Source/HBIOS/cfg_zeta2.asm b/Source/HBIOS/cfg_zeta2.asm index 34c68d84..1d937a05 100644 --- a/Source/HBIOS/cfg_zeta2.asm +++ b/Source/HBIOS/cfg_zeta2.asm @@ -188,6 +188,10 @@ PIOENABLE .EQU FALSE ; PIO: ENABLE ZILOG PIO DRIVER (PIO.ASM) ; LPTENABLE .EQU FALSE ; LPT: ENABLE CENTRONICS PRINTER DRIVER (LPT.ASM) ; +PPAENABLE .EQU FALSE ; PPA: ENABLE PPA DISK DRIVER (PPA.ASM) +; +IMMENABLE .EQU FALSE ; IMM: ENABLE IMM DISK DRIVER (IMM.ASM) +; PIO_4P .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB 4P BOARD PIO_ZP .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR ECB ZILOG PERIPHERALS BOARD (PIO.ASM) PIO_SBC .EQU FALSE ; PIO: ENABLE PARALLEL PORT DRIVER FOR 8255 CHIP diff --git a/Source/HBIOS/hbios.asm b/Source/HBIOS/hbios.asm index 8d8464ee..be5110c8 100644 --- a/Source/HBIOS/hbios.asm +++ b/Source/HBIOS/hbios.asm @@ -1261,11 +1261,11 @@ Z280_INITZ: ; SET DEFAULT CPU CLOCK MULTIPLIERS (XTAL / 2) ; - ; IT HAS BEEN REPORTED THAT CMR NEEDS TO BE SET PRIOR TO CCR - ; WHEN USING AN INPUT FREQUENCY THAT IS XTAL / 2. - ; I NEVER EXPERIENCED A PROBLEM RELATED TO ORDER, BUT JUST + ; BILL MCMULLEN REPORTED THAT CMR NEEDS TO BE SET PRIOR TO CCR + ; WHEN USING A CPU FREQUENCY (PHI) THAT IS XTAL * 2. + ; HERE WE ARE SETTING CPU FREQUENCY TO XTAL / 2, BUT JUST ; FOR GOOD MEASURE, CMR IS SET PRIOR TO CCR BELOW. - ; https://www.retrobrewcomputers.org/forum/index.php?t=msg&th=316&#msg_5045 + ; https://www.retrobrewcomputers.org/forum/index.php?t=msg&th=316&goto=5045&#msg_5045 XOR A OUT0 (Z180_CMR),A OUT0 (Z180_CCR),A @@ -3239,6 +3239,12 @@ HB_INITTBL: #IF (HDSKENABLE) .DW HDSK_INIT #ENDIF +#IF (PPAENABLE) + .DW PPA_INIT +#ENDIF +#IF (IMMENABLE) + .DW IMM_INIT +#ENDIF #IF (PRPENABLE) .DW PRP_INIT #ENDIF @@ -6348,6 +6354,24 @@ SIZ_HDSK .EQU $ - ORG_HDSK .ECHO " bytes.\n" #ENDIF ; +#IF (PPAENABLE) +ORG_PPA .EQU $ + #INCLUDE "ppa.asm" +SIZ_PPA .EQU $ - ORG_PPA + .ECHO "PPA occupies " + .ECHO SIZ_PPA + .ECHO " bytes.\n" +#ENDIF +; +#IF (IMMENABLE) +ORG_IMM .EQU $ + #INCLUDE "imm.asm" +SIZ_IMM .EQU $ - ORG_IMM + .ECHO "IMM occupies " + .ECHO SIZ_IMM + .ECHO " bytes.\n" +#ENDIF +; #IF (TERMENABLE) ORG_TERM .EQU $ #INCLUDE "term.asm" @@ -7134,6 +7158,8 @@ PS_DDSD .TEXT "SD$" PS_DDPRPSD .TEXT "PRPSD$" PS_DDPPPSD .TEXT "PPPSD$" PS_DDHDSK .TEXT "HDSK$" +PS_DDPPA .TEXT "PPA$" +PS_DDIMM .TEXT "IMM$" ; ; DISK TYPE STRINGS ; diff --git a/Source/HBIOS/hbios.inc b/Source/HBIOS/hbios.inc index 5ba100d3..9d4c65d7 100644 --- a/Source/HBIOS/hbios.inc +++ b/Source/HBIOS/hbios.inc @@ -321,6 +321,8 @@ DIODEV_SD .EQU $60 DIODEV_PRPSD .EQU $70 DIODEV_PPPSD .EQU $80 DIODEV_HDSK .EQU $90 +DIODEV_PPA .EQU $A0 +DIODEV_IMM .EQU $B0 ; ; RTC DEVICE IDS ; diff --git a/Source/HBIOS/imm.asm b/Source/HBIOS/imm.asm new file mode 100644 index 00000000..7c1b63ec --- /dev/null +++ b/Source/HBIOS/imm.asm @@ -0,0 +1,1469 @@ +; +;============================================================================= +; IMM DISK DRIVER +;============================================================================= +; +; PARALLEL PORT INTERFACE FOR SCSI DISK DEVICES USING A PARALLEL PORT +; ADAPTER. PRIMARILY TARGETS PARALLEL PORT IOMEGA ZIP DRIVES. +; +; CURRENTLY CODED SPECIFICALLY FOR RCBUS MG014 PARALLEL PORT HARDWARE. +; INTENDED TO CO-EXIST WITH LPT DRIVER. +; +; CREATED BY WAYNE WARTHEN FOR ROMWBW HBIOS. +; MUCH OF THE CODE IS DERIVED FROM FUZIX (ALAN COX). +; +; 5/23/2023 WBW - INITIAL RELEASE +; +;============================================================================= +; +; MG014 STYLE INTERFACE (USED BY RCBUS MG014 MODULE): +; +; PORT 0 (INPUT/OUTPUT): +; +; D7 D6 D5 D4 D3 D2 D1 D0 +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; | PD7 | PD6 | PD5 | PD4 | PD3 | PD2 | PD1 | PD0 | +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; +; PORT 1 (INPUT): +; +; D7 D6 D5 D4 D3 D2 D1 D0 +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; | | | | /ERR | SEL | POUT | BUSY | /ACK | +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; +; PORT 2 (INPUT/OUTPUT): +; +; D7 D6 D5 D4 D3 D2 D1 D0 +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; | LED | | | | /SEL | /RES | /LF | /STB | +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; +;============================================================================= +; +; TODO: +; +; - TIMEOUT IS INFINITE!!! +; +; - ASSIGN DRIVE LETTERS EVEN WHEN NO MEDIA AT BOOT +; +; - OPTIMIZE READ/WRITE LOOPS +; +; - COMMENT MORE OF THE CODE +; +; - THERE ARE CURRENTLY NO BUFFER OVERRUN CHECKS. WE ASSUME SCSI +; DEVICES WILL SEND/REQUEST THE EXPECTED NUMBER OF BYTES. +; +; - MAKE THE MG014 STATUS LED DO SOMETHING USEFUL? +; +; NOTES: +; +; - THIS DRIVER IS FOR THE ZIP DRIVE EMM INTERFACE. IT WILL SIMPLY +; FAIL TO EVEN RECOGNIZE A ZIP DRIVE WITH THE OLDER PPA INTERFACE. +; THERE DOES NOT SEEM TO BE A WAY TO VISUALLY DETERMINE IF A ZIP +; DRIVE IS EMM OR PPA. SIGH. +; +; - THERE ARE SOME HARD CODED TIMEOUT LOOPS IN THE CODE. THEY ARE +; WORKING OK ON A 7 MHZ Z80. THEY ARE LIKELY TO NEED TWEAKING ON +; FASTER CPUS. +; +; - THIS DRIVER OPERATES PURELY IN NIBBLE MODE. I SUSPECT IT IS +; POSSIBLE TO USE FULL BYTE MODE (PS2 STYLE), BUT I HAVE NOT +; ATTEMPTED IT. +; +; - RELATIVE TO ABOVE, THIS BEAST IS SLOW. IN ADDITION TO THE +; NIBBLE MODE READS, THE MG014 ASSIGNS SIGNALS DIFFERENTLY THAN +; THE STANDARD IBM PARALLEL PORT WHICH NECESSITATES A BUNCH OF EXTRA +; BIT FIDDLING ON EVERY READ. +; +; IMM PORT OFFSETS +; +IMM_IODATA .EQU 0 ; PORT A, DATA, OUT +IMM_IOSTAT .EQU 1 ; PORT B, STATUS, IN +IMM_IOCTRL .EQU 2 ; PORT C, CTRL, OUT +IMM_IOSETUP .EQU 3 ; PPI SETUP +; +; SCSI UNIT IDS +; +IMM_SELF .EQU 7 +IMM_TGT .EQU 6 +; +; SCSI COMMAND CODES +; +SCSI_CMD_READ .EQU $08 +SCSI_CMD_INQ .EQU $12 +SCSI_CMD_TEST .EQU $00 +SCSI_CMD_START .EQU $1B +SCSI_CMD_SENSE .EQU $03 +SCSI_CMD_WRITE .EQU $0A +SCSI_CMD_RDCAP .EQU $25 + +; +; IMM DEVICE STATUS +; +IMM_STOK .EQU 0 +IMM_STINVUNIT .EQU -1 +IMM_STNOMEDIA .EQU -2 +IMM_STCMDERR .EQU -3 +IMM_STIOERR .EQU -4 +IMM_STTO .EQU -5 +IMM_STNOTSUP .EQU -6 +; +; IMM DEVICE CONFIGURATION +; +IMM_CFGSIZ .EQU 12 ; SIZE OF CFG TBL ENTRIES +; +; PER DEVICE DATA OFFSETS IN CONFIG TABLE ENTRIES +; +IMM_DEV .EQU 0 ; OFFSET OF DEVICE NUMBER (BYTE) +IMM_MODE .EQU 1 ; OPERATION MODE: IMM MODE (BYTE) +IMM_STAT .EQU 2 ; LAST STATUS (BYTE) +IMM_IOBASE .EQU 3 ; IO BASE ADDRESS (BYTE) +IMM_MEDCAP .EQU 4 ; MEDIA CAPACITY (DWORD) +IMM_LBA .EQU 8 ; OFFSET OF LBA (DWORD) +; +;============================================================================= +; INITIALIZATION ENTRY POINT +;============================================================================= +; +IMM_INIT: + LD IY,IMM_CFG ; POINT TO START OF CONFIG TABLE +; +IMM_INIT1: + LD A,(IY) ; LOAD FIRST BYTE TO CHECK FOR END + CP $FF ; CHECK FOR END OF TABLE VALUE + JR NZ,IMM_INIT2 ; IF NOT END OF TABLE, CONTINUE + XOR A ; SIGNAL SUCCESS + RET ; AND RETURN +; +IMM_INIT2: + CALL NEWLINE ; FORMATTING + PRTS("IMM:$") ; DRIVER LABEL +; + PRTS(" IO=0x$") ; LABEL FOR IO ADDRESS + LD A,(IY+IMM_IOBASE) ; GET IO BASE ADDRES + CALL PRTHEXBYTE ; DISPLAY IT +; + PRTS(" MODE=$") ; LABEL FOR MODE + LD A,(IY+IMM_MODE) ; GET MODE BITS + LD DE,IMM_STR_MODE_NONE ; MODE LABEL + CP IMMMODE_NONE ; TEST FOR MODE + JR Z,IMM_INIT3 ; IF SO, DISPLAY IT + LD DE,IMM_STR_MODE_MG014 ; MODE LABEL + CP IMMMODE_MG014 ; TEST FOR MODE + JR Z,IMM_INIT3 ; IF SO, DISPLAY IT + LD DE,IMM_STR_MODE_UNK ; MODE LABEL +IMM_INIT3: + CALL WRITESTR ; DISPLAY MODE +; + ; CHECK FOR HARDWARE PRESENCE + CALL IMM_DETECT ; PROBE FOR INTERFACE + JR Z,IMM_INIT4 ; IF FOUND, CONTINUE + CALL PC_SPACE ; FORMATTING + LD DE,IMM_STR_NOHW ; NO IMM MESSAGE + CALL WRITESTR ; DISPLAY IT + JR IMM_INIT6 ; SKIP CFG ENTRY +; +IMM_INIT4: + ; UPDATE DRIVER RELATIVE UNIT NUMBER IN CONFIG TABLE + LD A,(IMM_DEVNUM) ; GET NEXT UNIT NUM TO ASSIGN + LD (IY+IMM_DEV),A ; UPDATE IT + INC A ; BUMP TO NEXT UNIT NUM TO ASSIGN + LD (IMM_DEVNUM),A ; SAVE IT +; + ; ADD UNIT TO GLOBAL DISK UNIT TABLE + LD BC,IMM_FNTBL ; BC := FUNC TABLE ADR + PUSH IY ; CFG ENTRY POINTER + POP DE ; COPY TO DE + CALL DIO_ADDENT ; ADD ENTRY TO GLOBAL DISK DEV TABLE +; + CALL IMM_RESET ; RESET/INIT THE INTERFACE +; + ; START PRINTING DEVICE INFO + CALL IMM_PRTPREFIX ; PRINT DEVICE PREFIX +; + ; CHECK FOR BAD STATUS + LD A,(IY+IMM_STAT) ; GET STATUS + OR A ; SET FLAGS + JP Z,IMM_INIT5 ; CONTINUE + CALL PC_SPACE ; FORMATTING + CALL IMM_PRTSTATSTR ; PRINT STATUS STRING + JR IMM_INIT6 ; LOOP TILL DONE +; +IMM_INIT5: + ; PRINT STORAGE CAPACITY (BLOCK COUNT) + PRTS(" BLOCKS=0x$") ; PRINT FIELD LABEL + LD A,IMM_MEDCAP ; OFFSET TO CAPACITY FIELD + CALL LDHLIYA ; HL := IY + A, REG A TRASHED + CALL LD32 ; GET THE CAPACITY VALUE + CALL PRTHEX32 ; PRINT HEX VALUE +; + ; PRINT STORAGE SIZE IN MB + PRTS(" SIZE=$") ; PRINT FIELD LABEL + LD B,11 ; 11 BIT SHIFT TO CONVERT BLOCKS --> MB + CALL SRL32 ; RIGHT SHIFT + CALL PRTDEC32 ; PRINT DWORD IN DECIMAL + PRTS("MB$") ; PRINT SUFFIX +; +IMM_INIT6: + LD DE,IMM_CFGSIZ ; SIZE OF CFG TABLE ENTRY + ADD IY,DE ; BUMP POINTER + JP IMM_INIT1 ; AND LOOP +; +;---------------------------------------------------------------------- +; PROBE FOR IMM HARDWARE +;---------------------------------------------------------------------- +; +; ON RETURN, ZF SET INDICATES HARDWARE FOUND +; +IMM_DETECT: + ; INITIALIZE 8255 + LD A,(IY+IMM_IOBASE) ; BASE PORT + ADD A,IMM_IOSETUP ; BUMP TO SETUP PORT + LD C,A ; MOVE TO C FOR I/O + LD A,$82 ; CONFIG A OUT, B IN, C OUT + OUT (C),A ; DO IT + CALL DELAY +; + CALL IMM_DISCONNECT + CALL IMM_CONNECT + CALL IMM_DISCONNECT +; + ; EXPECTING S1=$B8, S2=$18, S3=$38 + LD A,(IMM_S1) + CP $B8 + RET NZ + LD A,(IMM_S2) + CP $18 + RET NZ + LD A,(IMM_S3) + CP $38 + RET NZ +; + XOR A + RET +; +;============================================================================= +; DRIVER FUNCTION TABLE +;============================================================================= +; +IMM_FNTBL: + .DW IMM_STATUS + .DW IMM_RESET + .DW IMM_SEEK + .DW IMM_READ + .DW IMM_WRITE + .DW IMM_VERIFY + .DW IMM_FORMAT + .DW IMM_DEVICE + .DW IMM_MEDIA + .DW IMM_DEFMED + .DW IMM_CAP + .DW IMM_GEOM +#IF (($ - IMM_FNTBL) != (DIO_FNCNT * 2)) + .ECHO "*** INVALID IMM FUNCTION TABLE ***\n" +#ENDIF +; +IMM_VERIFY: +IMM_FORMAT: +IMM_DEFMED: + SYSCHKERR(ERR_NOTIMPL) ; NOT IMPLEMENTED + RET +; +; +; +IMM_READ: + CALL HB_DSKREAD + LD A,SCSI_CMD_READ + LD (IMM_CMD_RW),A + JP IMM_IO +; +; +; +IMM_WRITE: + CALL HB_DSKREAD + LD A,SCSI_CMD_WRITE + LD (IMM_CMD_RW),A + JP IMM_IO +; +; +; +IMM_IO: + LD (IMM_DSKBUF),HL ; SAVE DISK BUFFER ADDRESS + CALL IMM_CHKERR ; CHECK FOR ERR STATUS AND RESET IF SO + JR NZ,IMM_IO3 ; BAIL OUT ON ERROR +; + ; SETUP LBA + ; 3 BYTES, LITTLE ENDIAN -> BIG ENDIAN + LD HL,IMM_CMD_RW+1 ; START OF LBA FIELD IN CDB (MSB) + LD A,(IY+IMM_LBA+2) ; THIRD BYTE OF LBA FIELD IN CFG (MSB) + LD (HL),A + INC HL + LD A,(IY+IMM_LBA+1) + LD (HL),A + INC HL + LD A,(IY+IMM_LBA+0) + LD (HL),A + INC HL +; + ; DO SCSI IO + LD DE,(IMM_DSKBUF) + LD BC,512 + LD HL,IMM_CMD_RW + CALL IMM_RUNCMD + CALL Z,IMM_CHKCMD + JR NZ,IMM_IO2 ; IF ERROR, SKIP INCREMENT + ; INCREMENT LBA + LD A,IMM_LBA ; LBA OFFSET + CALL LDHLIYA ; HL := IY + A, REG A TRASHED + CALL INC32HL ; INCREMENT THE VALUE + ; INCREMENT DMA + LD HL,IDE_DSKBUF+1 ; POINT TO MSB OF BUFFER ADR + INC (HL) ; BUMP DMA BY + INC (HL) ; ... 512 BYTES + XOR A ; SIGNAL SUCCESS +; +IMM_IO2: +IMM_IO3: + LD HL,(IMM_DSKBUF) ; CURRENT DMA TO HL + OR A ; SET FLAGS BASED ON RETURN CODE + RET Z ; RETURN IF SUCCESS + LD A,ERR_IO ; SIGNAL IO ERROR + OR A ; SET FLAGS + RET ; AND DONE +; +; +; +IMM_STATUS: + ; RETURN UNIT STATUS + LD A,(IY+IMM_STAT) ; GET STATUS OF SELECTED DEVICE + OR A ; SET FLAGS + RET ; AND RETURN +; +; +; +IMM_RESET: + JP IMM_INITDEV +; +; +; +IMM_DEVICE: + LD D,DIODEV_IMM ; D := DEVICE TYPE + LD E,(IY+IMM_DEV) ; E := PHYSICAL DEVICE NUMBER + LD C,%01000000 ; C := REMOVABLE HARD DISK + LD H,(IY+IMM_MODE) ; H := MODE + LD L,(IY+IMM_IOBASE) ; L := BASE I/O ADDRESS + XOR A ; SIGNAL SUCCESS + RET +; +; IMM_GETMED +; +IMM_MEDIA: + LD A,E ; GET FLAGS + OR A ; SET FLAGS + JR Z,IMM_MEDIA1 ; JUST REPORT CURRENT STATUS AND MEDIA +; + CALL IMM_RESET ; RESET IMM INTERFACE +; +IMM_MEDIA1: + LD A,(IY+IMM_STAT) ; GET STATUS + OR A ; SET FLAGS + LD D,0 ; NO MEDIA CHANGE DETECTED + LD E,MID_HD ; ASSUME WE ARE OK + RET Z ; RETURN IF GOOD INIT + LD E,MID_NONE ; SIGNAL NO MEDIA + LD A,ERR_NOMEDIA ; NO MEDIA ERROR + OR A ; SET FLAGS + RET ; AND RETURN +; +; +; +IMM_SEEK: + BIT 7,D ; CHECK FOR LBA FLAG + CALL Z,HB_CHS2LBA ; CLEAR MEANS CHS, CONVERT TO LBA + RES 7,D ; CLEAR FLAG REGARDLESS (DOES NO HARM IF ALREADY LBA) + LD (IY+IMM_LBA+0),L ; SAVE NEW LBA + LD (IY+IMM_LBA+1),H ; ... + LD (IY+IMM_LBA+2),E ; ... + LD (IY+IMM_LBA+3),D ; ... + XOR A ; SIGNAL SUCCESS + RET ; AND RETURN +; +; +; +IMM_CAP: + LD A,(IY+IMM_STAT) ; GET STATUS + PUSH AF ; SAVE IT + LD A,IMM_MEDCAP ; OFFSET TO CAPACITY FIELD + CALL LDHLIYA ; HL := IY + A, REG A TRASHED + CALL LD32 ; GET THE CURRENT CAPACITY INTO DE:HL + LD BC,512 ; 512 BYTES PER BLOCK + POP AF ; RECOVER STATUS + OR A ; SET FLAGS + RET +; +; +; +IMM_GEOM: + ; FOR LBA, WE SIMULATE CHS ACCESS USING 16 HEADS AND 16 SECTORS + ; RETURN HS:CC -> DE:HL, SET HIGH BIT OF D TO INDICATE LBA CAPABLE + CALL IMM_CAP ; GET TOTAL BLOCKS IN DE:HL, BLOCK SIZE TO BC + LD L,H ; DIVIDE BY 256 FOR # TRACKS + LD H,E ; ... HIGH BYTE DISCARDED, RESULT IN HL + LD D,16 | $80 ; HEADS / CYL = 16, SET LBA CAPABILITY BIT + LD E,16 ; SECTORS / TRACK = 16 + RET ; DONE, A STILL HAS IMM_CAP STATUS +; +;============================================================================= +; FUNCTION SUPPORT ROUTINES +;============================================================================= +; +IMM_WRITEDATA: + LD C,(IY+IMM_IOBASE) + OUT (C),A + CALL DELAY + RET +; +; +; +IMM_WRITECTRL: + XOR $0B + LD C,(IY+IMM_IOBASE) + INC C + INC C + OUT (C),A + CALL DELAY + RET +; +; +; +IMM_READSTATUS: + LD C,(IY+IMM_IOBASE) + INC C + IN A,(C) + LD C,0 ; INIT RESULT +; + BIT 0,A ; ACK = $01 + JR Z,IMM_READSTATUS1 + SET 6,C ; $40 +; +IMM_READSTATUS1: +; + BIT 1,A ; BUSY = $02 + JR NZ,IMM_READSTATUS2 + SET 7,C ; $80 +; +IMM_READSTATUS2: +; + BIT 2,A ; PAPER = $04 + JR Z,IMM_READSTATUS3 + SET 5,C ; $20 +; +IMM_READSTATUS3: +; + BIT 3,A ; SELECT = $08 + JR Z,IMM_READSTATUS4 + SET 4,C ; $10 +; +IMM_READSTATUS4: +; + BIT 4,A ; FAULT = $10 + JR Z,IMM_READSTATUS5 + SET 3,C ; $08 +; +IMM_READSTATUS5: + LD A,C + RET +; +; +; +IMM_CPP: + PUSH AF + LD A,$0C + CALL IMM_WRITECTRL + LD A,$AA + CALL IMM_WRITEDATA + LD A,$55 + CALL IMM_WRITEDATA + LD A,$00 + CALL IMM_WRITEDATA + LD A,$FF + CALL IMM_WRITEDATA + CALL IMM_READSTATUS + AND $B8 + LD (IMM_S1),A + LD A,$87 + CALL IMM_WRITEDATA + CALL IMM_READSTATUS + AND $B8 + LD (IMM_S2),A + LD A,$78 + CALL IMM_WRITEDATA + CALL IMM_READSTATUS + AND $38 + LD (IMM_S3),A + POP AF + CALL IMM_WRITEDATA + LD A,$0C + CALL IMM_WRITECTRL + LD A,$0D + CALL IMM_WRITECTRL + LD A,$0C + CALL IMM_WRITECTRL + LD A,$FF + CALL IMM_WRITEDATA +; + ; CONNECT: S1=$B8 S2=$18 S3=$30 + ; DISCONNECT: S1=$B8 S2=$18 S3=$38 +; +#IF (IMMTRACE >= 2) + PRTS("\r\nCPP: S1=$") + LD A,(IMM_S1) + CALL PRTHEXBYTE + PRTS(" S2=$") + LD A,(IMM_S2) + CALL PRTHEXBYTE + PRTS(" S3=$") + LD A,(IMM_S3) + CALL PRTHEXBYTE +#ENDIF +; + XOR A ; ASSUME SUCCESS FOR NOW + RET +; +IMM_S1 .DB 0 +IMM_S2 .DB 0 +IMM_S3 .DB 0 +; +; +; +IMM_CONNECT: + LD A,$E0 + CALL IMM_CPP + LD A,$30 + CALL IMM_CPP + LD A,$E0 + CALL IMM_CPP + RET +; +; +; +IMM_DISCONNECT: + LD A,$30 + CALL IMM_CPP + RET +; +; +; +IMM_RESETPULSE: + LD A,$04 + CALL IMM_WRITECTRL + LD A,$40 + CALL IMM_WRITEDATA + CALL DELAY ; 16 US, IDEALLY, 1 US + LD A,$0C + CALL IMM_WRITECTRL + LD A,$0D + CALL IMM_WRITECTRL + CALL DELAY ; 48 US, IDEALLY, 50 US + CALL DELAY + CALL DELAY + LD A,$0C + CALL IMM_WRITECTRL + LD A,$04 + CALL IMM_WRITECTRL + RET +; +; +; +IMM_SELECT: +#IF IMMTRACE >= 2) + PRTS("\r\nSELECT: $") +#ENDIF + LD A,$0C + CALL IMM_WRITECTRL +; + LD HL,500 ; TIMEOUT COUNTER +; +IMM_SELECT1: + CALL IMM_READSTATUS + AND $08 + JR Z,IMM_SELECT2 ; IF CLEAR, MOVE ON + DEC HL + LD A,H + OR L + JP Z,IMM_CMD_TIMEOUT ; TIMEOUT + JR IMM_SELECT1 +; +IMM_SELECT2: + LD A,$04 + CALL IMM_WRITECTRL + LD A,$80 | (1 << IMM_TGT) + CALL IMM_WRITEDATA + CALL DELAY + LD A,$0C + CALL IMM_WRITECTRL +; +#IF IMMTRACE >= 2) + CALL IMM_READSTATUS + CALL PC_SPACE + CALL PRTHEXBYTE +#ENDIF +; + LD A,$0D + CALL IMM_WRITECTRL +; +#IF IMMTRACE >= 2) + CALL IMM_READSTATUS + CALL PC_SPACE + CALL PRTHEXBYTE +#ENDIF +; + LD HL,500 ; TIMEOUT COUNTER +; +IMM_SELECT3: + CALL IMM_READSTATUS +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXBYTE +#ENDIF + AND $08 + JR NZ,IMM_SELECT4 ; IF CLEAR, MOVE ON + DEC HL + LD A,H + OR L + JP Z,IMM_CMD_TIMEOUT ; TIMEOUT + JR IMM_SELECT3 +; +IMM_SELECT4: + LD A,$0C + CALL IMM_WRITECTRL +; + XOR A + RET +; +; +; +IMM_SENDCMD: +; +#IF IMMTRACE >= 2) + PRTS("\r\nSENDCMD:$") +#ENDIF +; + LD HL,0 +IMM_SENDCMD1: + PUSH HL + CALL IMM_WAITDONE + POP HL + CP $A8 + JR NZ,IMM_SENDCMD2 + LD A,$04 + CALL IMM_WRITECTRL + LD A,(DE) +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXBYTE +#ENDIF +; + CALL IMM_WRITEDATA + INC DE + INC HL + LD A,$05 + CALL IMM_WRITECTRL + LD A,(DE) +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXBYTE +#ENDIF +; + CALL IMM_WRITEDATA + INC DE + INC HL + LD A,$00 + CALL IMM_WRITECTRL + JR IMM_SENDCMD1 +; +IMM_SENDCMD2: + LD A,$04 + CALL IMM_WRITECTRL +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") +#ENDIF +; + RET +; +; +; +IMM_WAITBUSY: + LD HL,500 ; NORMAL TIMEOUT COUNTER +; +IMM_WAITBUSY_HL: ; VARIABLE TIMEOUT ENTRY + LD A,$0C + CALL IMM_WRITECTRL +; +IMM_WAITBUSY2: + CALL IMM_READSTATUS + BIT 7,A + RET NZ ; IF SET, MOVE ON + DEC HL + LD A,H + OR L + ; TODO: IMPLEMENT TIMEOUT!!! + ;JP Z,IMM_CMD_TIMEOUT ; TIMEOUT + JR IMM_WAITBUSY2 +; +; +; +IMM_WAITDONE: + LD HL,500 ; NORMAL TIMEOUT COUNTER +; +IMM_WAITDONE_HL: ; VARIABLE TIMEOUT ENTRY + CALL IMM_WAITBUSY_HL + AND $B8 + PUSH AF + LD A,$04 + CALL IMM_WRITECTRL + POP AF + RET +; +; +; +IMM_NEGOTIATE: +#IF IMMTRACE >= 2) + PRTS("\r\nNEGO: $") +#ENDIF + LD A,$04 + CALL IMM_WRITECTRL + CALL DELAY ; 16 US, IDEALLY 5 US + LD A,$00 + CALL IMM_WRITEDATA + LD DE,7 ; 112 US, IDEALLY 100 US + CALL VDELAY + LD A,$06 + CALL IMM_WRITECTRL + CALL DELAY ; 16 US, IDEALLY 5 US + CALL IMM_READSTATUS + PUSH AF ; SAVE RESULT + CALL DELAY ; 16 US, IDEALLY 5 US + LD A,$07 + CALL IMM_WRITECTRL + CALL DELAY ; 16 US, IDEALLY 5 US + LD A,$06 + CALL IMM_WRITECTRL +; + POP AF +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXBYTE +#ENDIF +; + AND $20 +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PC_GT + CALL PRTHEXBYTE +#ENDIF +; + CP $20 + JP NZ,IMM_CMD_IOERR + RET +; +; +; +IMM_GETBYTE: + CALL IMM_WAITBUSY + LD A,$04 + CALL IMM_WRITECTRL + LD A,$06 + CALL IMM_WRITECTRL + CALL IMM_READSTATUS + AND $F0 + RRCA + RRCA + RRCA + RRCA + PUSH AF + LD A,$05 + CALL IMM_WRITECTRL + CALL IMM_READSTATUS + AND $F0 + POP HL + OR H + PUSH AF + LD A,$04 + CALL IMM_WRITECTRL + POP AF + RET +; +; DE=BUFFER +; HL=LENGTH (0 FOR VARIABLE) +; +IMM_GETDATA: + LD A,H + OR L + JR NZ,IMM_GETDATALEN +; +#IF IMMTRACE >= 2) + PRTS("\r\nGETDATA:$") +#ENDIF +; +IMM_GETDATA1: + PUSH HL + CALL IMM_WAITDONE + POP HL + CP $98 + JR NZ,IMM_GETDATA2 + LD A,$04 + CALL IMM_WRITECTRL + LD A,$06 + CALL IMM_WRITECTRL + CALL IMM_READSTATUS + AND $F0 + RRCA + RRCA + RRCA + RRCA + PUSH AF + LD A,$05 + CALL IMM_WRITECTRL + CALL IMM_READSTATUS + AND $F0 + POP BC + OR B + LD (DE),A + INC DE + INC HL + LD A,$04 + CALL IMM_WRITECTRL + LD A,$0C + CALL IMM_WRITECTRL + JR IMM_GETDATA1 +; +IMM_GETDATA2: +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") +#ENDIF +; + RET +; +IMM_GETDATALEN: +; +#IF IMMTRACE >= 2) + PRTS("\r\nGETDLEN:$") + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") +#ENDIF +; + LD A,$04 + CALL IMM_WRITECTRL +IMM_GETDATALEN1: + LD A,$06 + CALL IMM_WRITECTRL + CALL IMM_READSTATUS + AND $F0 + RRCA + RRCA + RRCA + RRCA + PUSH AF + LD A,$05 + CALL IMM_WRITECTRL + CALL IMM_READSTATUS + AND $F0 + POP BC + OR B + LD (DE),A + INC DE + DEC HL + LD A,$04 + CALL IMM_WRITECTRL + LD A,H + OR L + JR NZ,IMM_GETDATALEN1 + LD A,$0C + CALL IMM_WRITECTRL + RET +; +; DE=BUFFER +; HL=LENGTH (0 FOR VARIABLE) +; +IMM_PUTDATA: + LD A,H + OR L + JR NZ,IMM_PUTDATALEN +; +#IF IMMTRACE >= 2) + PRTS("\r\nPUTDATA:$") +#ENDIF +; +IMM_PUTDATA1: + PUSH HL + CALL IMM_WAITDONE + POP HL + CP $88 + JR NZ,IMM_PUTDATA2 + LD A,$04 + CALL IMM_WRITECTRL + LD A,(DE) + CALL IMM_WRITEDATA + INC DE + INC HL + LD A,$05 + CALL IMM_WRITECTRL + LD A,(DE) + CALL IMM_WRITEDATA + INC DE + INC HL + LD A,$00 + CALL IMM_WRITECTRL + JR IMM_PUTDATA1 +; +IMM_PUTDATA2: + LD A,$04 + CALL IMM_WRITECTRL +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") +#ENDIF +; + RET +; +IMM_PUTDATALEN: +; +#IF IMMTRACE >= 2) + PRTS("\r\nPUTDLEN:$") + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") +#ENDIF +; + LD A,$04 + CALL IMM_WRITECTRL +IMM_PUTDATALEN1: + LD A,(DE) + CALL IMM_WRITEDATA + INC DE + DEC HL + LD A,$05 + CALL IMM_WRITECTRL + LD A,(DE) + CALL IMM_WRITEDATA + INC DE + DEC HL + LD A,$00 + CALL IMM_WRITECTRL + LD A,H + OR L + JR NZ,IMM_PUTDATALEN1 + LD A,$04 + CALL IMM_WRITECTRL + RET +; +; +; +IMM_GETSTATUS: +; +#IF IMMTRACE >= 2) + PRTS("\r\nSTATUS:$") +#ENDIF +; + CALL IMM_GETBYTE + LD (IMM_CMDSTAT),A +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXBYTE +#ENDIF +; + CALL IMM_WAITDONE + CP $B8 + RET NZ + CALL IMM_GETBYTE + LD (IMM_CMDSTAT+1),A +; +#IF IMMTRACE >= 2) + CALL PC_SPACE + CALL PRTHEXBYTE +#ENDIF +; + RET +; +; +; +IMM_ENDREAD: + LD A,$04 + CALL IMM_WRITECTRL + LD A,$0C + CALL IMM_WRITECTRL + LD A,$0E + CALL IMM_WRITECTRL + LD A,$04 + CALL IMM_WRITECTRL + RET +; +; HL: COMMAND BUFFER +; DE: TRANSFER BUFFER +; BC: TRANSFER LENGTH (0=VARIABLE) +; +IMM_RUNCMD: + LD (IMM_CMDSTK),SP ; FOR ERROR ABORTS + LD (IMM_DSKBUF),DE ; SAVE BUF PTR + LD (IMM_XFRLEN),BC ; SAVE XFER LEN + PUSH HL + CALL IMM_CONNECT + CALL IMM_SELECT + CALL IMM_WAITBUSY + POP DE + CALL IMM_SENDCMD +; +IMM_RUNCMD_PHASE: + LD HL,50000 ; LONG TIMEOUT HERE + CALL IMM_WAITDONE_HL +; +#IF IMMTRACE >= 2) + PRTS("\r\nPHASE: $") + CALL PRTHEXBYTE +#ENDIF +; + CP $88 ; DEVICE WANTS TO RCV DATA + JR Z,IMM_RUNCMD_WRITE + CP $98 ; DEVICE WANTS TO SEND DATA + JR Z,IMM_RUNCMD_READ + CP $B8 ; DEVICE WANTS TO BE DONE + JR Z,IMM_RUNCMD_END + JR IMM_CMD_IOERR +; +IMM_RUNCMD_WRITE: + LD DE,(IMM_DSKBUF) + LD HL,(IMM_XFRLEN) ; XFER LENGTH + CALL IMM_PUTDATA ; SEND DATA NOW + JR IMM_RUNCMD_PHASE +; +IMM_RUNCMD_READ: + CALL IMM_NEGOTIATE + CALL IMM_WAITDONE + ; CHECK FOR STATUS $98??? + LD DE,(IMM_DSKBUF) + LD HL,(IMM_XFRLEN) ; XFER LENGTH + CALL IMM_GETDATA ; GET THE DATA NOW + CALL IMM_ENDREAD + JR IMM_RUNCMD_PHASE +; +IMM_RUNCMD_END: + CALL IMM_NEGOTIATE + CALL IMM_WAITDONE + ; CHECK FOR STATUS $B8??? + CALL IMM_GETSTATUS + CALL IMM_ENDREAD + CALL IMM_DISCONNECT + XOR A ; SIGNAL SUCCESS + RET +; +IMM_CMD_IOERR: + LD A,IMM_STIOERR + JR IMM_CMD_ERR +; +IMM_CMD_TIMEOUT: + LD A,IMM_STTO + JR IMM_CMD_ERR +; +IMM_CMD_ERR: + LD SP,(IMM_CMDSTK) ; UNWIND STACK + PUSH AF ; SAVE STATUS + ;CALL IMM_RESETPULSE ; CLEAN UP THE MESS??? + LD DE,62 + CALL VDELAY + CALL IMM_DISCONNECT + LD DE,62 + CALL VDELAY + POP AF ; RECOVER STATUS + JP IMM_ERR ; ERROR EXIT +; +; +; +IMM_CHKCMD: + ; SCSI COMMAND COMPLETED, CHECK SCSI CMD STATUS + LD A,(IMM_CMDSTAT) ; GET STATUS BYTE + OR A ; SET FLAGS + RET Z ; IF ZERO, ALL GOOD, DONE +; + ; DO WE HAVE A CHECK CONDITION? + CP 2 ; CHECK CONDITION RESULT? + JR Z,IMM_CHKCMD1 ; IF SO, REQUEST SENSE + JP IMM_IOERR ; ELSE, GENERAL I/O ERROR +; +IMM_CHKCMD1: + ; USE REQUEST SENSE CMD TO GET ERROR DETAILS + LD DE,HB_WRKBUF ; PUT DATA IN WORK BUF + LD BC,0 ; VARIABLE LENGTH REQUEST + LD HL,IMM_CMD_SENSE ; REQUEST SENSE CMD + CALL IMM_RUNCMD ; DO IT + JP NZ,IMM_IOERR ; BAIL IF ERROR IN CMD +; + ; REQ SENSE CMD COMPLETED +#IF IMMTRACE >= 2) + LD A,16 + LD DE,HB_WRKBUF + CALL Z,PRTHEXBUF +#ENDIF +; + ; CHECK SCSI CMD STATUS + LD A,(IMM_CMDSTAT) ; GET STATUS BYTE + OR A ; SET FLAGS + JP NZ,IMM_IOERR ; IF FAILED, GENERAL I/O ERROR +; + ; RETURN RESULT BASED ON REQ SENSE DATA + LD A,(HB_WRKBUF+12) ; GET ADDITIONAL SENSE CODE + CP $3A ; NO MEDIA? + JP Z,IMM_NOMEDIA ; IF SO, RETURN NO MEDIA ERR + JP IMM_IOERR ; ELSE GENERAL I/O ERR +; +; CHECK CURRENT DEVICE FOR ERROR STATUS AND ATTEMPT TO RECOVER +; VIA RESET IF DEVICE IS IN ERROR. +; +IMM_CHKERR: + LD A,(IY+IMM_STAT) ; GET STATUS + OR A ; SET FLAGS + CALL NZ,IMM_RESET ; IF ERROR STATUS, RESET BUS + RET +; +; (RE)INITIALIZE DEVICE +; +IMM_INITDEV: + ; INITIALIZE 8255 + LD A,(IY+IMM_IOBASE) ; BASE PORT + ADD A,IMM_IOSETUP ; BUMP TO SETUP PORT + LD C,A ; MOVE TO C FOR I/O + LD A,$82 ; CONFIG A OUT, B IN, C OUT + OUT (C),A ; DO IT + CALL DELAY +; + CALL IMM_DISCONNECT + CALL IMM_CONNECT + CALL IMM_RESETPULSE + LD DE,62 + CALL VDELAY + CALL IMM_DISCONNECT + LD DE,62 + CALL VDELAY +; + LD B,4 +IMM_INITDEV1: + PUSH BC +; + ; REQUEST SENSE COMMAND + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_SENSE + CALL IMM_RUNCMD + JR NZ,IMM_INITDEV2 ; CMD PROC ERROR +; + ; CHECK CMD STATUS + LD A,(IMM_CMDSTAT) ; GET STATUS BYTE + OR A ; SET FLAGS + JR NZ,IMM_INITDEV2 ; BAD CMD STATUS +; +#IF IMMTRACE >= 2) + LD A,16 + LD DE,HB_WRKBUF + CALL PRTHEXBUF +#ENDIF +; + ; CHECK SENSE KEY + LD A,(HB_WRKBUF + 2) + OR A +; +IMM_INITDEV2: + POP BC + JR Z,IMM_INITDEV3 ; IF NO ERROR, MOVE ON + DJNZ IMM_INITDEV1 ; TRY UNTIL COUNTER EXHAUSTED + JP IMM_IOERR ; HANDLE ERROR +; +IMM_INITDEV3: + ; READ & RECORD DEVICE CAPACITY + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_RDCAP + CALL IMM_RUNCMD + CALL Z,IMM_CHKCMD + RET NZ ; MEDIA PROBLEM +; +#IF IMMTRACE >= 2) + LD A,8 + LD DE,HB_WRKBUF + CALL PRTHEXBUF +#ENDIF +; + ; INCREMENT, BIG->LITTLE ENDIAN, SAVE + LD A,IMM_MEDCAP ; OFFSET IN CFG FOR CAPACITY + CALL LDHLIYA ; POINTER TO HL + PUSH HL ; SAVE IT + LD HL,HB_WRKBUF ; POINT TO VALUE IN CMD RESULT + CALL LD32 ; LOAD IT TO DE:HL + LD A,L ; FLIP BYTES + LD L,D ; ... BIG ENDIAN + LD D,A ; ... TO LITTLE ENDIAN + LD A,H + LD H,E + LD E,A + CALL INC32 ; INCREMENT TO FINAL VALUE + POP BC ; RECOVER SAVE LOCATION + CALL ST32 ; STORE VALUE +; + XOR A ; SIGNAL SUCCESS + LD (IY+IMM_STAT),A ; RECORD IT + RET +;;;; +;;;; *** DEBUG *** +;;;; +;;; LD DE,HB_WRKBUF +;;; LD BC,512 +;;; LD HL,IMM_CMD_READ +;;; CALL IMM_RUNCMD +;;; CALL Z,IMM_CHKCMD +;;; LD DE,HB_WRKBUF +;;; CALL Z,DUMP_BUFFER +;;;; +;;; LD DE,HB_WRKBUF +;;; LD BC,512 +;;; LD HL,IMM_CMD_READ +;;; CALL IMM_RUNCMD +;;; CALL Z,IMM_CHKCMD +;;; LD DE,HB_WRKBUF +;;; CALL Z,DUMP_BUFFER +;;;; +;;; LD DE,HB_WRKBUF +;;; LD BC,0 +;;; LD HL,IMM_CMD_INQ +;;; CALL IMM_RUNCMD +;;; CALL Z,IMM_CHKCMD +;;; LD DE,HB_WRKBUF +;;; CALL Z,DUMP_BUFFER +;;;; +;;; LD DE,HB_WRKBUF +;;; LD BC,512 +;;; LD HL,IMM_CMD_WRITE +;;; CALL IMM_RUNCMD +;;; CALL Z,IMM_CHKCMD +;;;; +;;; LD DE,HB_WRKBUF +;;; LD BC,512 +;;; LD HL,IMM_CMD_READ2 +;;; CALL IMM_RUNCMD +;;; CALL Z,IMM_CHKCMD +;;; LD DE,HB_WRKBUF +;;; CALL Z,DUMP_BUFFER +;;;; +;;; RET +;;;; +;;;IMM_CMD .DB $00, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; TEMPLATE +;;;IMM_CMD_READ .DB $08, $00, $00, $00, $01, $00 ; READ SECTOR $0000 +;;;IMM_CMD_INQ .DB $12, $00, $00, $00, $FF, $00 ; INQUIRY +;;;IMM_CMD_TEST .DB $00, $00, $00, $00, $00, $00 ; TEST UNIT READY +;;;IMM_CMD_START .DB $1B, $00, $00, $00, $01, $00 ; START UNIT +;;;IMM_CMD_WRITE .DB $0A, $00, $F0, $00, $01, $00 ; READ SECTOR $F000 +;;;IMM_CMD_READ2 .DB $08, $00, $F0, $00, $01, $00 ; READ SECTOR $F000 +; +;============================================================================= +; ERROR HANDLING AND DIAGNOSTICS +;============================================================================= +; +; ERROR HANDLERS +; +IMM_INVUNIT: + LD A,IMM_STINVUNIT + JR IMM_ERR2 ; SPECIAL CASE FOR INVALID UNIT +; +IMM_NOMEDIA: + LD A,IMM_STNOMEDIA + JR IMM_ERR +; +IMM_CMDERR: + LD A,IMM_STCMDERR + JR IMM_ERR +; +IMM_IOERR: + LD A,IMM_STIOERR + JR IMM_ERR +; +IMM_TO: + LD A,IMM_STTO + JR IMM_ERR +; +IMM_NOTSUP: + LD A,IMM_STNOTSUP + JR IMM_ERR +; +IMM_ERR: + LD (IY+IMM_STAT),A ; SAVE NEW STATUS +; +IMM_ERR2: +#IF (IMMTRACE >= 2) + CALL IMM_PRTSTAT +#ENDIF + OR A ; SET FLAGS + RET +; +; +; +IMM_PRTERR: + RET Z ; DONE IF NO ERRORS + ; FALL THRU TO IMM_PRTSTAT +; +; PRINT FULL DEVICE STATUS LINE +; +IMM_PRTSTAT: + PUSH AF + PUSH DE + PUSH HL + LD A,(IY+IMM_STAT) + CP IMM_STINVUNIT + JR Z,IMM_PRTSTAT2 ; INVALID UNIT IS SPECIAL CASE + CALL IMM_PRTPREFIX ; PRINT UNIT PREFIX + JR IMM_PRTSTAT3 +IMM_PRTSTAT2: + CALL NEWLINE + PRTS("IMM:$") ; NO UNIT NUM IN PREFIX FOR INVALID UNIT +IMM_PRTSTAT3: + CALL PC_SPACE ; FORMATTING + CALL IMM_PRTSTATSTR + POP HL + POP DE + POP AF + RET +; +; PRINT STATUS STRING +; +IMM_PRTSTATSTR: + PUSH AF + PUSH DE + LD A,(IY+IMM_STAT) + OR A + LD DE,IMM_STR_STOK + JR Z,IMM_PRTSTATSTR1 + INC A + LD DE,IMM_STR_STINVUNIT + JR Z,IMM_PRTSTATSTR1 + INC A + LD DE,IMM_STR_STNOMEDIA + JR Z,IMM_PRTSTATSTR1 + INC A + LD DE,IMM_STR_STCMDERR + JR Z,IMM_PRTSTATSTR1 + INC A + LD DE,IMM_STR_STIOERR + JR Z,IMM_PRTSTATSTR1 + INC A + LD DE,IMM_STR_STTO + JR Z,IMM_PRTSTATSTR1 + INC A + LD DE,IMM_STR_STNOTSUP + JR Z,IMM_PRTSTATSTR1 + LD DE,IMM_STR_STUNK +IMM_PRTSTATSTR1: + CALL WRITESTR + POP DE + POP AF + RET +; +; PRINT DIAGNONSTIC PREFIX +; +IMM_PRTPREFIX: + PUSH AF + CALL NEWLINE + PRTS("IMM$") + LD A,(IY+IMM_DEV) ; GET CURRENT DEVICE NUM + CP $FE ; NOT YET ASSIGNED? + JR Z,IMM_PRTPREFIX1 ; SKIP DEV NUM IF SO + CALL PRTDECB +IMM_PRTPREFIX1: + CALL PC_COLON + POP AF + RET +; +;============================================================================= +; STRING DATA +;============================================================================= +; +IMM_STR_STOK .TEXT "OK$" +IMM_STR_STINVUNIT .TEXT "INVALID UNIT$" +IMM_STR_STNOMEDIA .TEXT "NO MEDIA$" +IMM_STR_STCMDERR .TEXT "COMMAND ERROR$" +IMM_STR_STIOERR .TEXT "IO ERROR$" +IMM_STR_STTO .TEXT "TIMEOUT$" +IMM_STR_STNOTSUP .TEXT "NOT SUPPORTED$" +IMM_STR_STUNK .TEXT "UNKNOWN ERROR$" +; +IMM_STR_NOHW .TEXT "NOT PRESENT$" +; +IMM_STR_MODE_NONE .TEXT "NONE$" +IMM_STR_MODE_MG014 .TEXT "MG014$" +IMM_STR_MODE_UNK .TEXT "???$" +; +;============================================================================= +; DATA STORAGE +;============================================================================= +; +IMM_DEVNUM .DB 0 ; TEMP DEVICE NUM USED DURING INIT +IMM_CMDSTK .DW 0 ; STACK PTR FOR CMD ABORTING +IMM_DSKBUF .DW 0 ; WORKING DISK BUFFER POINTER +IMM_XFRLEN .DW 0 ; WORKING TRANSFER LENGTH +IMM_CMDSTAT .DB 0, 0 ; CMD RESULT STATUS +; +IMM_TYPE_MAP: + .DW IMM_STR_NONE + .DW IMM_STR_MG014 +; +IMM_STR_NONE .DB "$" +IMM_STR_MG014 .DB "MG014$" +; +; SCSI COMMAND TEMPLATES +; +IMM_CMD_RW .DB $00, $00, $00, $00, $01, $00 ; READ/WRITE SECTOR +IMM_CMD_SENSE .DB $03, $00, $00, $00, $FF, $00 ; REQUEST SENSE DATA +IMM_CMD_RDCAP .DB $25, $00, $00, $00, $00, $00, $00, $00, $00, $00 ; READ CAPACITY +; +; IMM DEVICE CONFIGURATION TABLE +; +IMM_CFG: +; +#IF (IMMCNT >= 1) +; +IMM0_CFG: ; DEVICE 0 + .DB 0 ; DRIVER DEVICE NUMBER (FILLED DYNAMICALLY) + .DB IMM0MODE ; DRIVER DEVICE MODE + .DB 0 ; DEVICE STATUS + .DB IMM0BASE ; IO BASE ADDRESS + .DW 0,0 ; DEVICE CAPACITY + .DW 0,0 ; CURRENT LBA +#ENDIF +; +#IF (IMMCNT >= 2) +; +IMM1_CFG: ; DEVICE 1 + .DB 0 ; DRIVER DEVICE NUMBER (FILLED DYNAMICALLY) + .DB IMM1MODE ; DRIVER DEVICE MODE + .DB 0 ; DEVICE STATUS + .DB IMM1BASE ; IO BASE ADDRESS + .DW 0,0 ; DEVICE CAPACITY + .DW 0,0 ; CURRENT LBA +#ENDIF +; +#IF ($ - IMM_CFG) != (IMMCNT * IMM_CFGSIZ) + .ECHO "*** INVALID IMM CONFIG TABLE ***\n" +#ENDIF +; + .DB $FF ; END MARKER diff --git a/Source/HBIOS/ppa.asm b/Source/HBIOS/ppa.asm new file mode 100644 index 00000000..529b81b3 --- /dev/null +++ b/Source/HBIOS/ppa.asm @@ -0,0 +1,1454 @@ +; +;============================================================================= +; PPA DISK DRIVER +;============================================================================= +; +; PARALLEL PORT INTERFACE FOR SCSI DISK DEVICES USING A PARALLEL PORT +; ADAPTER. PRIMARILY TARGETS PARALLEL PORT IOMEGA ZIP DRIVES. +; +; CURRENTLY CODED SPECIFICALLY FOR RCBUS MG014 PARALLEL PORT HARDWARE. +; INTENDED TO CO-EXIST WITH LPT DRIVER. +; +; CREATED BY WAYNE WARTHEN FOR ROMWBW HBIOS. +; MUCH OF THE CODE IS DERIVED FROM FUZIX (ALAN COX). +; +; 5/19/2023 WBW - INITIAL RELEASE +; +;============================================================================= +; +; MG014 STYLE INTERFACE (USED BY RCBUS MG014 MODULE): +; +; PORT 0 (INPUT/OUTPUT): +; +; D7 D6 D5 D4 D3 D2 D1 D0 +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; | PD7 | PD6 | PD5 | PD4 | PD3 | PD2 | PD1 | PD0 | +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; +; PORT 1 (INPUT): +; +; D7 D6 D5 D4 D3 D2 D1 D0 +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; | | | | /ERR | SEL | POUT | BUSY | /ACK | +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; +; PORT 2 (INPUT/OUTPUT): +; +; D7 D6 D5 D4 D3 D2 D1 D0 +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; | LED | | | | /SEL | /RES | /LF | /STB | +; +-------+-------+-------+-------+-------+-------+-------+-------+ +; +;============================================================================= +; +; TODO: +; +; NOTES: +; +;;;; +;;;; COMMAND BYTES +;;;; +;;;PPA_CPPA_NOP .EQU $00 +;;;PPA_CPPA_DEVRES .EQU $08 +;;;PPA_CPPA_RECAL .EQU $10 +;;;PPA_CPPA_READ .EQU $20 +;;;PPA_CPPA_WRITE .EQU $30 +;;;PPA_CPPA_DEVDIAG .EQU $90 +;;;PPA_CPPA_IDPKTDEV .EQU $A1 +;;;PPA_CPPA_IDDEV .EQU $EC +;;;PPA_CPPA_SETFEAT .EQU $EF +; +; PPA PORT OFFSETS +; +PPA_IODATA .EQU 0 ; PORT A, DATA, OUT +PPA_IOSTAT .EQU 1 ; PORT B, STATUS, IN +PPA_IOCTRL .EQU 2 ; PORT C, CTRL, OUT +PPA_IOSETUP .EQU 3 ; PPI SETUP +; +; PPA DEVICE STATUS +; +PPA_STOK .EQU 0 +PPA_STINVUNIT .EQU -1 +PPA_STNOMEDIA .EQU -2 +PPA_STCMDERR .EQU -3 +PPA_STIOERR .EQU -4 +PPA_STTO .EQU -5 +PPA_STNOTSUP .EQU -6 +; +; PPA DEVICE CONFIGURATION +; +PPA_CFGSIZ .EQU 12 ; SIZE OF CFG TBL ENTRIES +; +; PER DEVICE DATA OFFSETS IN CONFIG TABLE ENTRIES +; +PPA_DEV .EQU 0 ; OFFSET OF DEVICE NUMBER (BYTE) +PPA_MODE .EQU 1 ; OPERATION MODE: PPA MODE (BYTE) +PPA_STAT .EQU 2 ; LAST STATUS (BYTE) +PPA_IOBASE .EQU 3 ; IO BASE ADDRESS (BYTE) +PPA_MEDCAP .EQU 4 ; MEDIA CAPACITY (DWORD) +PPA_LBA .EQU 8 ; OFFSET OF LBA (DWORD) +; +;============================================================================= +; INITIALIZATION ENTRY POINT +;============================================================================= +; +PPA_INIT: + LD IY,PPA_CFG ; POINT TO START OF CONFIG TABLE +; +PPA_INIT1: + LD A,(IY) ; LOAD FIRST BYTE TO CHECK FOR END + CP $FF ; CHECK FOR END OF TABLE VALUE + JR NZ,PPA_INIT2 ; IF NOT END OF TABLE, CONTINUE + XOR A ; SIGNAL SUCCESS + RET ; AND RETURN +; +PPA_INIT2: + ; CHECK FOR HARDWARE PRESENCE + CALL PPA_DETECT ; PROBE FOR INTERFACE + JP NZ,PPA_INIT6 ; SKIP CFG ENTRY +; + ; UPDATE DRIVER RELATIVE UNIT NUMBER IN CONFIG TABLE + LD A,(PPA_DEVNUM) ; GET NEXT UNIT NUM TO ASSIGN + LD (IY+PPA_DEV),A ; UPDATE IT + INC A ; BUMP TO NEXT UNIT NUM TO ASSIGN + LD (PPA_DEVNUM),A ; SAVE IT +; + CALL PPA_PRTPREFIX ; PRINT DEVICE PREFIX +; + PRTS(" IO=0x$") ; LABEL FOR IO ADDRESS + LD A,(IY+PPA_IOBASE) ; GET IO BASE ADDRES + CALL PRTHEXBYTE ; DISPLAY IT +; + PRTS(" MODE=$") ; LABEL FOR MODE + LD A,(IY+PPA_MODE) ; GET MODE BITS + LD DE,PPA_STR_MODE_NONE ; MODE LABEL + CP PPAMODE_NONE ; TEST FOR MODE + JR Z,PPA_INIT3 ; IF SO, DISPLAY IT + LD DE,PPA_STR_MODE_MG014 ; MODE LABEL + CP PPAMODE_MG014 ; TEST FOR MODE + JR Z,PPA_INIT3 ; IF SO, DISPLAY IT + LD DE,PPA_STR_MODE_UNK ; MODE LABEL +PPA_INIT3: + CALL WRITESTR ; DISPLAY MODE +; +PPA_INIT4: + CALL PPA_RESET ; RESET THE INTERFACE +; + ; ADD UNIT TO GLOBAL DISK UNIT TABLE + LD BC,PPA_FNTBL ; BC := FUNC TABLE ADR + PUSH IY ; CFG ENTRY POINTER + POP DE ; COPY TO DE + CALL DIO_ADDENT ; ADD ENTRY TO GLOBAL DISK DEV TABLE +; + ; CHECK FOR BAD STATUS + LD A,(IY+PPA_STAT) ; GET STATUS + OR A ; SET FLAGS + JP Z,PPA_INIT5 ; CONTINUE + CALL PC_SPACE ; FORMATTING + CALL PPA_PRTSTATSTR ; PRINT STATUS STRING + JR PPA_INIT6 ; LOOP TILL DONE +; +PPA_INIT5: + ; PRINT STORAGE CAPACITY (BLOCK COUNT) + PRTS(" BLOCKS=0x$") ; PRINT FIELD LABEL + LD A,PPA_MEDCAP ; OFFSET TO CAPACITY FIELD + CALL LDHLIYA ; HL := IY + A, REG A TRASHED + CALL LD32 ; GET THE CAPACITY VALUE + CALL PRTHEX32 ; PRINT HEX VALUE +; + ; PRINT STORAGE SIZE IN MB + PRTS(" SIZE=$") ; PRINT FIELD LABEL + LD B,11 ; 11 BIT SHIFT TO CONVERT BLOCKS --> MB + CALL SRL32 ; RIGHT SHIFT + CALL PRTDEC32 ; PRINT DWORD IN DECIMAL + PRTS("MB$") ; PRINT SUFFIX +; +PPA_INIT6: + LD DE,PPA_CFGSIZ ; SIZE OF CFG TABLE ENTRY + ADD IY,DE ; BUMP POINTER + JP PPA_INIT1 ; AND LOOP +; +;---------------------------------------------------------------------- +; PROBE FOR PPA HARDWARE +;---------------------------------------------------------------------- +; +; ON RETURN, ZF SET INDICATES HARDWARE FOUND +; +PPA_DETECT: + XOR A ; SIGNAL SUCCESS + RET ; AND RETURN +; +;============================================================================= +; DRIVER FUNCTION TABLE +;============================================================================= +; +PPA_FNTBL: + .DW PPA_STATUS + .DW PPA_RESET + .DW PPA_SEEK + .DW PPA_READ + .DW PPA_WRITE + .DW PPA_VERIFY + .DW PPA_FORMAT + .DW PPA_DEVICE + .DW PPA_MEDIA + .DW PPA_DEFMED + .DW PPA_CAP + .DW PPA_GEOM +#IF (($ - PPA_FNTBL) != (DIO_FNCNT * 2)) + .ECHO "*** INVALID PPA FUNCTION TABLE ***\n" +#ENDIF +; +PPA_VERIFY: +PPA_FORMAT: +PPA_DEFMED: + SYSCHKERR(ERR_NOTIMPL) ; NOT IMPLEMENTED + RET +; +; +; +PPA_READ: + JP PPA_STNOTSUP ; NOT SUPPORTED +; +; +; +PPA_WRITE: + JP PPA_STNOTSUP ; NOT SUPPORTED +; +; +; +PPA_STATUS: + ; RETURN UNIT STATUS + LD A,(IY+PPA_STAT) ; GET STATUS OF SELECTED DEVICE + OR A ; SET FLAGS + RET ; AND RETURN +; +; +; +PPA_DEVICE: + LD D,DIODEV_PPA ; D := DEVICE TYPE + LD E,(IY+PPA_DEV) ; E := PHYSICAL DEVICE NUMBER + LD C,%01000000 ; C := REMOVABLE HARD DISK + LD H,(IY+PPA_MODE) ; H := MODE + LD L,(IY+PPA_IOBASE) ; L := BASE I/O ADDRESS + XOR A ; SIGNAL SUCCESS + RET +; +; PPA_GETMED +; +PPA_MEDIA: + LD A,E ; GET FLAGS + OR A ; SET FLAGS + JR Z,PPA_MEDIA1 ; JUST REPORT CURRENT STATUS AND MEDIA +; + ;CALL PPA_RESET ; RESET PPA INTERFACE + CALL PPA_INITUNIT ; RE-INITIALIZE UNIT +; +PPA_MEDIA1: + LD A,(IY+PPA_STAT) ; GET STATUS + OR A ; SET FLAGS + LD D,0 ; NO MEDIA CHANGE DETECTED + LD E,MID_HD ; ASSUME WE ARE OK + RET Z ; RETURN IF GOOD INIT + LD E,MID_NONE ; SIGNAL NO MEDIA + LD A,ERR_NOMEDIA ; NO MEDIA ERROR + OR A ; SET FLAGS + RET ; AND RETURN +; +; +; +PPA_SEEK: + BIT 7,D ; CHECK FOR LBA FLAG + CALL Z,HB_CHS2LBA ; CLEAR MEANS CHS, CONVERT TO LBA + RES 7,D ; CLEAR FLAG REGARDLESS (DOES NO HARM IF ALREADY LBA) + LD (IY+PPA_LBA+0),L ; SAVE NEW LBA + LD (IY+PPA_LBA+1),H ; ... + LD (IY+PPA_LBA+2),E ; ... + LD (IY+PPA_LBA+3),D ; ... + XOR A ; SIGNAL SUCCESS + RET ; AND RETURN +; +; +; +PPA_CAP: + LD A,(IY+PPA_STAT) ; GET STATUS + PUSH AF ; SAVE IT + LD A,PPA_MEDCAP ; OFFSET TO CAPACITY FIELD + CALL LDHLIYA ; HL := IY + A, REG A TRASHED + CALL LD32 ; GET THE CURRENT CAPACITY INTO DE:HL + LD BC,512 ; 512 BYTES PER BLOCK + POP AF ; RECOVER STATUS + OR A ; SET FLAGS + RET +; +; +; +PPA_GEOM: + ; FOR LBA, WE SIMULATE CHS ACCESS USING 16 HEADS AND 16 SECTORS + ; RETURN HS:CC -> DE:HL, SET HIGH BIT OF D TO INDICATE LBA CAPABLE + CALL PPA_CAP ; GET TOTAL BLOCKS IN DE:HL, BLOCK SIZE TO BC + LD L,H ; DIVIDE BY 256 FOR # TRACKS + LD H,E ; ... HIGH BYTE DISCARDED, RESULT IN HL + LD D,16 | $80 ; HEADS / CYL = 16, SET LBA CAPABILITY BIT + LD E,16 ; SECTORS / TRACK = 16 + RET ; DONE, A STILL HAS PPA_CAP STATUS +; +;============================================================================= +; FUNCTION SUPPORT ROUTINES +;============================================================================= +; +PPA_SELF .EQU 7 +PPA_TGT .EQU 6 +; +IMM_TGT .EQU 6 +; +; +; +PPA_DELAY: + PUSH AF + CALL DELAY + CALL DELAY + CALL DELAY + CALL DELAY + POP AF + RET +; +; +; +PPA_WRITEDATA: + ;PRTS(" D-$") + ;CALL PRTHEXBYTE + + LD C,(IY+PPA_IOBASE) + OUT (C),A + CALL PPA_DELAY + RET +; +; +; +PPA_WRITECTRL: + ;PRTS(" C-$") + ;CALL PRTHEXBYTE + + XOR $0B + + ;PRTS(">$") + ;CALL PRTHEXBYTE + + LD C,(IY+PPA_IOBASE) + INC C + INC C + OUT (C),A + CALL PPA_DELAY + RET +; +; +; +PPA_READSTATUS: + LD C,(IY+PPA_IOBASE) + INC C + IN A,(C) + + ;PRTS(" I-$") + ;CALL PRTHEXBYTE + + LD C,0 ; INIT RESULT +; + BIT 0,A ; ACK = $01 + JR Z,PPA_READSTATUS1 + SET 6,C ; $40 +; +PPA_READSTATUS1: +; + BIT 1,A ; BUSY = $02 + JR NZ,PPA_READSTATUS2 + SET 7,C ; $80 +; +PPA_READSTATUS2: +; + BIT 2,A ; PAPER = $04 + JR Z,PPA_READSTATUS3 + SET 5,C ; $20 +; +PPA_READSTATUS3: +; + BIT 3,A ; SELECT = $08 + JR Z,PPA_READSTATUS4 + SET 4,C ; $10 +; +PPA_READSTATUS4: +; + BIT 4,A ; FAULT = $10 + JR Z,PPA_READSTATUS5 + SET 3,C ; $08 +; +PPA_READSTATUS5: + LD A,C + + ;PRTS(">$") + ;CALL PRTHEXBYTE + + RET +; +; +; +PPA_DPULSE: + CALL PPA_WRITEDATA + LD A,$0C + CALL PPA_WRITECTRL + LD A,$0E + CALL PPA_WRITECTRL + LD A,$0C ;? + CALL PPA_WRITECTRL ;? + LD A,$04 + CALL PPA_WRITECTRL + LD A,$0C + CALL PPA_WRITECTRL + RET +; +; +; +PPA_CPULSE: + CALL PPA_WRITEDATA + LD A,$04 + CALL PPA_WRITECTRL + LD A,$06 + CALL PPA_WRITECTRL + LD A,$04 + CALL PPA_WRITECTRL + LD A,$0C + CALL PPA_WRITECTRL + RET +; +; +; +PPA_CONNECT: + CALL NEWLINE + LD A,$00 + CALL PPA_CPULSE + LD A,$3C + CALL PPA_CPULSE + LD A,$20 + CALL PPA_CPULSE + LD A,$8F + CALL PPA_CPULSE + RET +; +; +; +IMM_CPP: + ;CALL NEWLINE + PUSH AF + LD A,$0C + CALL PPA_WRITECTRL + LD A,$AA + CALL PPA_WRITEDATA + LD A,$55 + CALL PPA_WRITEDATA + LD A,$00 + CALL PPA_WRITEDATA + LD A,$FF + CALL PPA_WRITEDATA + CALL PPA_READSTATUS + AND $B8 + LD (IMM_S1),A + LD A,$87 + CALL PPA_WRITEDATA + CALL PPA_READSTATUS + AND $B8 + LD (IMM_S2),A + LD A,$78 + CALL PPA_WRITEDATA + CALL PPA_READSTATUS + AND $38 + LD (IMM_S3),A + POP AF + CALL PPA_WRITEDATA + LD A,$0C + CALL PPA_WRITECTRL + LD A,$0D + CALL PPA_WRITECTRL + LD A,$0C + CALL PPA_WRITECTRL + LD A,$FF + CALL PPA_WRITEDATA + + ; CONNECT: S1=$B8 S2=$18 S3=$30 + ; DISCONNECT: S1=$B8 S2=$18 S3=$38 + + PRTS("\r\nCPP: S1=$") + LD A,(IMM_S1) + CALL PRTHEXBYTE + PRTS(" S2=$") + LD A,(IMM_S2) + CALL PRTHEXBYTE + PRTS(" S3=$") + LD A,(IMM_S3) + CALL PRTHEXBYTE + + XOR A ; ASSUME SUCCESS FOR NOW + RET +; +IMM_S1 .DB 0 +IMM_S2 .DB 0 +IMM_S3 .DB 0 +; +; +; +IMM_CONNECT: + LD A,$E0 + CALL IMM_CPP + LD A,$30 + CALL IMM_CPP + LD A,$E0 + CALL IMM_CPP + RET +; +; +; +IMM_DISCONNECT: + LD A,$30 + CALL IMM_CPP + RET +; +; +; +IMM_RESETPULSE: + ;CALL NEWLINE + LD A,$04 + CALL PPA_WRITECTRL + LD A,$40 + CALL PPA_WRITEDATA + CALL DELAY + LD A,$0C + CALL PPA_WRITECTRL + LD A,$0D + CALL PPA_WRITECTRL + CALL DELAY + CALL DELAY + CALL DELAY + CALL DELAY + LD A,$0C + CALL PPA_WRITECTRL + LD A,$04 + CALL PPA_WRITECTRL + RET +; +; +; +PPA_DISCONNECT: + ;CALL NEWLINE + LD A,$00 + CALL PPA_DPULSE + LD A,$3C + CALL PPA_DPULSE + LD A,$20 + CALL PPA_DPULSE + LD A,$0F + CALL PPA_DPULSE + RET +; +; +; +PPA_SELECT: + LD A,1 << PPA_TGT + CALL PPA_WRITEDATA + LD A,$0E + CALL PPA_WRITECTRL + LD A,$0C + CALL PPA_WRITECTRL + LD A,1 << PPA_SELF + CALL PPA_WRITEDATA + LD A,$08 + CALL PPA_WRITECTRL +; + LD HL,0 ; TIMEOUT COUNTER +; +PPA_SELECT1: + CALL PPA_READSTATUS + OR $F0 + RET NZ + DEC HL + LD A,H + OR L + RET Z ; TIMEOUT + JR PPA_SELECT1 +; +; +; +IMM_SELECT: + PRTS("\r\nSELECT: $") + LD A,$0C + CALL PPA_WRITECTRL +; + LD HL,500 ; TIMEOUT COUNTER +; +IMM_SELECT1: + CALL PPA_READSTATUS + AND $08 + JR Z,IMM_SELECT2 ; IF CLEAR, MOVE ON + DEC HL + LD A,H + OR L + JP Z,IMM_CMD_TIMEOUT ; TIMEOUT + JR IMM_SELECT1 +; +IMM_SELECT2: + LD A,$04 + CALL PPA_WRITECTRL + LD A,$80 | (1 << IMM_TGT) + CALL PPA_WRITEDATA + CALL DELAY + LD A,$0C + CALL PPA_WRITECTRL + + CALL PPA_READSTATUS + CALL PC_SPACE + CALL PRTHEXBYTE + + LD A,$0D + CALL PPA_WRITECTRL + + CALL PPA_READSTATUS + CALL PC_SPACE + CALL PRTHEXBYTE +; + LD HL,500 ; TIMEOUT COUNTER +; +IMM_SELECT3: + CALL PPA_READSTATUS + CALL PC_SPACE + CALL PRTHEXBYTE + AND $08 + JR NZ,IMM_SELECT4 ; IF CLEAR, MOVE ON + DEC HL + LD A,H + OR L + JP Z,IMM_CMD_TIMEOUT ; TIMEOUT + JR IMM_SELECT3 +; +IMM_SELECT4: + LD A,$0C + CALL PPA_WRITECTRL +; + XOR A + RET +; +; +; +IMM_SENDCMD: + ; TODO: USE PUTDATA ROUTINE??? + ; TODO: CHECK BUSY??? + PRTS("\r\nSENDCMD:$") + LD A,$04 + CALL PPA_WRITECTRL +; + LD HL,IMM_CMD + LD B,6 +; +IMM_SENDCMD1: + LD A,(HL) + CALL PC_SPACE + CALL PRTHEXBYTE + CALL PPA_WRITEDATA + INC HL + DEC B + LD A,$05 + CALL PPA_WRITECTRL + LD A,(HL) + CALL PC_SPACE + CALL PRTHEXBYTE + CALL PPA_WRITEDATA + INC HL + LD A,$00 + CALL PPA_WRITECTRL + DJNZ IMM_SENDCMD1 + LD A,$04 + CALL PPA_WRITECTRL +; + CALL PPA_READSTATUS + CALL PC_SPACE + CALL PC_GT + CALL PRTHEXBYTE + RET +; +; +; +IMM_WAITBUSY: + LD HL,500 ; NORMAL TIMEOUT COUNTER +; +IMM_WAITBUSY_HL: ; VARIABLE TIMEOUT ENTRY + ;PRTS("\r\nWAITB: $") + LD A,$0C + CALL PPA_WRITECTRL +; +IMM_WAITBUSY2: + CALL PPA_READSTATUS + BIT 7,A + RET NZ ; IF SET, MOVE ON + DEC HL + LD A,H + OR L + JP Z,IMM_CMD_TIMEOUT ; TIMEOUT + JR IMM_WAITBUSY2 +; +; +; +IMM_WAITDONE: + LD HL,500 ; NORMAL TIMEOUT COUNTER +; +IMM_WAITDONE_HL: ; VARIABLE TIMEOUT ENTRY + CALL IMM_WAITBUSY_HL + AND $B8 + PUSH AF + LD A,$04 + CALL PPA_WRITECTRL + POP AF + RET +; +; +; +IMM_NEGOTIATE: + ; TODO: REVIEW TIMING DELAYS!!! + PRTS("\r\nNEGO: $") + LD A,$04 + CALL PPA_WRITECTRL + CALL DELAY + LD A,$00 + CALL PPA_WRITEDATA + CALL DELAY + CALL DELAY + CALL DELAY + CALL DELAY + LD A,$06 + CALL PPA_WRITECTRL + CALL DELAY + CALL PPA_READSTATUS + PUSH AF ; SAVE RESULT + CALL DELAY + LD A,$07 + CALL PPA_WRITECTRL + CALL DELAY + LD A,$06 + CALL PPA_WRITECTRL +; + POP AF + CALL PC_SPACE + CALL PRTHEXBYTE + AND $20 + CALL PC_SPACE + CALL PC_GT + CALL PRTHEXBYTE + CP $20 + JP NZ,IMM_CMD_IOERR + RET +; +; +; +PPA_WAITDONE: + LD HL,0 ; TIMEOUT COUNTER +PPA_WAITDONE1: + CALL PPA_READSTATUS + AND $F0 + BIT 7,A + RET NZ + DEC HL + LD A,H + OR L + JP Z,IMM_CMD_TIMEOUT ; TIMEOUT + JR PPA_WAITDONE1 +; +; +; +IMM_GETBYTE: + CALL IMM_WAITBUSY + LD A,$04 + CALL PPA_WRITECTRL + LD A,$06 + CALL PPA_WRITECTRL + CALL PPA_READSTATUS + AND $F0 + RRCA + RRCA + RRCA + RRCA + PUSH AF + LD A,$05 + CALL PPA_WRITECTRL + CALL PPA_READSTATUS + AND $F0 + POP HL + OR H + PUSH AF + LD A,$04 + CALL PPA_WRITECTRL + POP AF + RET +; +; DE=BUFFER +; HL=LENGTH (0 FOR VARIABLE) +; +IMM_GETDATA: + LD A,H + OR L + JR NZ,IMM_GETDATALEN + PRTS("\r\nGETDATA:$") +IMM_GETDATA1: + PUSH HL + CALL IMM_WAITDONE + POP HL + CP $98 + JR NZ,IMM_GETDATA2 + LD A,$04 + CALL PPA_WRITECTRL + LD A,$06 + CALL PPA_WRITECTRL + CALL PPA_READSTATUS + AND $F0 + RRCA + RRCA + RRCA + RRCA + PUSH AF + LD A,$05 + CALL PPA_WRITECTRL + CALL PPA_READSTATUS + AND $F0 + POP BC + OR B + LD (DE),A + INC DE + INC HL + LD A,$04 + CALL PPA_WRITECTRL + LD A,$0C + CALL PPA_WRITECTRL + JR IMM_GETDATA1 +; +IMM_GETDATA2: + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") + RET +; +IMM_GETDATALEN: + PRTS("\r\nGETDLEN:$") + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") + LD A,$04 + CALL PPA_WRITECTRL +IMM_GETDATALEN1: + LD A,$06 + CALL PPA_WRITECTRL + CALL PPA_READSTATUS + AND $F0 + RRCA + RRCA + RRCA + RRCA + PUSH AF + LD A,$05 + CALL PPA_WRITECTRL + CALL PPA_READSTATUS + AND $F0 + POP BC + OR B + LD (DE),A + INC DE + DEC HL + LD A,$04 + CALL PPA_WRITECTRL + LD A,H + OR L + JR NZ,IMM_GETDATALEN1 + LD A,$0C + CALL PPA_WRITECTRL + RET +; +; DE=BUFFER +; HL=LENGTH (0 FOR VARIABLE) +; +IMM_PUTDATA: + LD A,H + OR L + JR NZ,IMM_PUTDATALEN + PRTS("\r\nPUTDATA:$") +IMM_PUTDATA1: + PUSH HL + CALL IMM_WAITDONE + POP HL + CP $88 + JR NZ,IMM_PUTDATA2 + + LD A,$04 + CALL PPA_WRITECTRL + LD A,(DE) + CALL PPA_WRITEDATA + INC DE + INC HL + LD A,$05 + CALL PPA_WRITECTRL + LD A,(DE) + CALL PPA_WRITEDATA + INC DE + INC HL + LD A,$00 + CALL PPA_WRITECTRL + JR IMM_PUTDATA1 +; +IMM_PUTDATA2: + LD A,$04 + CALL PPA_WRITECTRL + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") + RET +; +IMM_PUTDATALEN: + PRTS("\r\nPUTDLEN:$") + CALL PC_SPACE + CALL PRTHEXWORDHL + PRTS(" BYTES$") + LD A,$04 + CALL PPA_WRITECTRL +IMM_PUTDATALEN1: + LD A,(DE) + CALL PPA_WRITEDATA + INC DE + DEC HL + LD A,$05 + CALL PPA_WRITECTRL + LD A,(DE) + CALL PPA_WRITEDATA + INC DE + DEC HL + LD A,$00 + CALL PPA_WRITECTRL + LD A,H + OR L + JR NZ,IMM_PUTDATALEN1 + LD A,$04 + CALL PPA_WRITECTRL + RET +; +; +; +IMM_GETSTATUS: + PRTS("\r\nSTATUS:$") + CALL IMM_GETBYTE + LD (IMM_STATUS),A + CALL PC_SPACE + CALL PRTHEXBYTE + CALL IMM_WAITDONE + CP $B8 + RET NZ + CALL IMM_GETBYTE + LD (IMM_STATUS+1),A + CALL PC_SPACE + CALL PRTHEXBYTE + RET +; +; +; +IMM_ENDREAD: + LD A,$04 + CALL PPA_WRITECTRL + LD A,$0C + CALL PPA_WRITECTRL + LD A,$0E + CALL PPA_WRITECTRL + LD A,$04 + CALL PPA_WRITECTRL + RET +; +; +; +IMM_RUNCMDX: + ; COPY CMD BYTES FROM (HL) + PUSH BC + PUSH DE + LD BC,6 + LD DE,IMM_CMD + LDIR + POP DE + POP BC +; +IMM_RUNCMD: + LD (IMM_CMDSTK),SP ; FOR ERROR ABORTS + LD (IMM_DSKBUF),DE ; SAVE BUF PTR + LD (IMM_XFRLEN),BC ; SAVE XFER LEN + CALL IMM_CONNECT + CALL IMM_SELECT + CALL IMM_WAITBUSY + CALL IMM_SENDCMD +; +IMM_RUNCMD_LOOP: + LD HL,50000 ; LONG TIMEOUT HERE + CALL IMM_WAITDONE_HL +; + PRTS("\r\nCMD$") + PRTS("LOOP: $") + CALL PRTHEXBYTE +; + CP $88 + JR Z,IMM_RUNCMD_WRITE + CP $98 + JR Z,IMM_RUNCMD_READ + CP $B8 + JR Z,IMM_RUNCMD_END + JR IMM_CMD_IOERR +; +IMM_RUNCMD_WRITE: + LD DE,(IMM_DSKBUF) + LD HL,(IMM_XFRLEN) ; XFER LENGTH + CALL IMM_PUTDATA ; SEND DATA NOW + JR IMM_RUNCMD_LOOP +; +IMM_RUNCMD_READ: + CALL IMM_NEGOTIATE + CALL IMM_WAITDONE + ; CHECK FOR STATUS $98??? + LD DE,(IMM_DSKBUF) + LD HL,(IMM_XFRLEN) ; XFER LENGTH + CALL IMM_GETDATA ; GET THE DATA NOW + CALL IMM_ENDREAD + JR IMM_RUNCMD_LOOP +; +IMM_RUNCMD_END: + CALL IMM_NEGOTIATE + CALL IMM_WAITDONE + ; CHECK FOR STATUS $B8??? + CALL IMM_GETSTATUS + CALL IMM_ENDREAD + CALL IMM_DISCONNECT + XOR A ; SIGNAL SUCCESS + RET +; +IMM_CMD_IOERR: + LD A,PPA_STIOERR + JR IMM_CMD_ERR +; +IMM_CMD_TIMEOUT: + LD A,PPA_STTO + JR IMM_CMD_ERR +; +IMM_CMD_ERR: + LD SP,(IMM_CMDSTK) ; UNWIND STACK + PUSH AF ; SAVE STATUS + CALL IMM_RESETPULSE ; CLEAN UP THE MESS + CALL IMM_DISCONNECT ; MAKE SURE WE ARE OFF THE BUS + POP AF ; RECOVER STATUS + JP PPA_ERR ; ERROR EXIT +; +;============================================================================= +; HARDWARE INTERFACE ROUTINES +;============================================================================= +; +; RESET ALL DEVICES ON BUS +; +PPA_RESET: + JP PPA_INITUNIT +; +; +; +PPA_INITUNIT: + ;JP PPA_INITDEV + JP IMM_INITDEV +; +; (RE)INITIALIZE DEVICE +; +PPA_INITDEV: + ; INITIALIZE 8255 + LD A,(IY+PPA_IOBASE) ; BASE PORT + ADD A,PPA_IOSETUP ; BUMP TO SETUP PORT + LD C,A ; MOVE TO C FOR I/O + LD A,$82 ; CONFIG A OUT, B IN, C OUT + OUT (C),A ; DO IT + CALL DELAY + + CALL NEWLINE + LD A,$0C + CALL PPA_WRITECTRL + CALL DELAY +; + ; INITIALIZE PPA INTERFACE + CALL PPA_READSTATUS + + CALL NEWLINE + LD A,$AA + CALL PPA_WRITEDATA + + CALL PPA_DISCONNECT + + CALL PPA_CONNECT + + CALL NEWLINE + ;LD A,$06 + LD A,$0E + CALL PPA_WRITECTRL + CALL PPA_READSTATUS + AND $F0 + ;... CHECK VALUE=$F0 + + CALL PC_SPACE + CALL PRTHEXBYTE + + CALL NEWLINE + ;LD A,$04 + LD A,$0C + CALL PPA_WRITECTRL + CALL PPA_READSTATUS + AND $F0 + ;... CHECK VALUE=$80 + + CALL PC_SPACE + CALL PRTHEXBYTE + + CALL PPA_DISCONNECT + + CALL NEWLINE + LD A,$AA + CALL PPA_WRITEDATA + LD A,$0C ; ??? + CALL NEWLINE + CALL PPA_WRITECTRL + + CALL PPA_CONNECT + + CALL NEWLINE + LD A,$40 + CALL PPA_WRITEDATA + LD A,$08 + CALL PPA_WRITECTRL + LD A,$0C + CALL PPA_WRITECTRL + + CALL PPA_DISCONNECT +; + JP PPA_NOMEDIA +; + ; RECORD STATUS OK + XOR A ; A := 0 (STATUS = OK) + LD (IY+PPA_STAT),A ; SAVE IT +; + RET ; RETURN, A=0, Z SET +; +; +; +IMM_INITDEV: + ; INITIALIZE 8255 + LD A,(IY+PPA_IOBASE) ; BASE PORT + ADD A,PPA_IOSETUP ; BUMP TO SETUP PORT + LD C,A ; MOVE TO C FOR I/O + LD A,$82 ; CONFIG A OUT, B IN, C OUT + OUT (C),A ; DO IT + CALL DELAY +; + CALL IMM_CONNECT + CALL IMM_RESETPULSE + LD DE,62 + CALL VDELAY + CALL IMM_DISCONNECT + LD DE,62 + CALL VDELAY +; + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_SENSE + CALL IMM_RUNCMDX + LD A,16 + LD DE,HB_WRKBUF + CALL Z,PRTHEXBUF +; + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_SENSE + CALL IMM_RUNCMDX + LD A,16 + LD DE,HB_WRKBUF + CALL Z,PRTHEXBUF +; + LD DE,HB_WRKBUF + LD BC,512 + LD HL,IMM_CMD_READ + CALL IMM_RUNCMDX + LD DE,HB_WRKBUF + CALL Z,DUMP_BUFFER +; + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_SENSE + CALL IMM_RUNCMDX + LD A,16 + LD DE,HB_WRKBUF + CALL Z,PRTHEXBUF +; + LD DE,HB_WRKBUF + LD BC,512 + LD HL,IMM_CMD_READ + CALL IMM_RUNCMDX + LD DE,HB_WRKBUF + CALL Z,DUMP_BUFFER +; + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_SENSE + CALL IMM_RUNCMDX + LD A,16 + LD DE,HB_WRKBUF + CALL Z,PRTHEXBUF +; + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_INQ + CALL IMM_RUNCMDX + LD DE,HB_WRKBUF + CALL Z,DUMP_BUFFER +; + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_SENSE + CALL IMM_RUNCMDX + LD A,16 + LD DE,HB_WRKBUF + CALL Z,PRTHEXBUF +; + LD DE,HB_WRKBUF + ;LD BC,512 + LD BC,0 + LD HL,IMM_CMD_WRITE + CALL IMM_RUNCMDX + LD DE,HB_WRKBUF +; + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_SENSE + CALL IMM_RUNCMDX + LD A,16 + LD DE,HB_WRKBUF + CALL Z,PRTHEXBUF +; + LD DE,HB_WRKBUF + LD BC,512 + LD HL,IMM_CMD_READ2 + CALL IMM_RUNCMDX + LD DE,HB_WRKBUF + CALL DUMP_BUFFER +; + LD DE,HB_WRKBUF + LD BC,0 + LD HL,IMM_CMD_SENSE + CALL IMM_RUNCMDX + LD A,16 + LD DE,HB_WRKBUF + CALL PRTHEXBUF +; + JP PPA_NOMEDIA +; +IMM_CMD .DB $00, $00, $00, $00, $00, $00 ; TEMPLATE +IMM_CMD_READ .DB $08, $00, $00, $00, $01, $00 ; READ SECTOR $0000 +IMM_CMD_INQ .DB $12, $00, $00, $00, $FF, $00 ; INQUIRY +IMM_CMD_TEST .DB $00, $00, $00, $00, $00, $00 ; TEST UNIT READY +IMM_CMD_START .DB $1B, $00, $00, $00, $01, $00 ; START UNIT +IMM_CMD_SENSE .DB $03, $00, $00, $00, $FF, $00 ; REQUEST SENSE DATA +IMM_CMD_WRITE .DB $0A, $00, $F0, $00, $01, $00 ; READ SECTOR $F000 +IMM_CMD_READ2 .DB $08, $00, $F0, $00, $01, $00 ; READ SECTOR $F000 + +; +; CHECK CURRENT DEVICE FOR ERROR STATUS AND ATTEMPT TO RECOVER +; VIA RESET IF DEVICE IS IN ERROR. +; +PPA_CHKERR: + LD A,(IY+PPA_STAT) ; GET STATUS + OR A ; SET FLAGS + CALL NZ,PPA_RESET ; IF ERROR STATUS, RESET BUS + RET +; +;============================================================================= +; ERROR HANDLING AND DIAGNOSTICS +;============================================================================= +; +; ERROR HANDLERS +; +PPA_INVUNIT: + LD A,PPA_STINVUNIT + JR PPA_ERR2 ; SPECIAL CASE FOR INVALID UNIT +; +PPA_NOMEDIA: + LD A,PPA_STNOMEDIA + JR PPA_ERR +; +PPA_CMDERR: + LD A,PPA_STCMDERR + JR PPA_ERR +; +PPA_IOERR: + LD A,PPA_STIOERR + JR PPA_ERR +; +PPA_TO: + LD A,PPA_STTO + JR PPA_ERR +; +PPA_NOTSUP: + LD A,PPA_STNOTSUP + JR PPA_ERR +; +PPA_ERR: + LD (IY+PPA_STAT),A ; SAVE NEW STATUS +; +PPA_ERR2: +#IF (PPATRACE >= 2) + CALL PPA_PRTSTAT +#ENDIF + OR A ; SET FLAGS + RET +; +; +; +PPA_PRTERR: + RET Z ; DONE IF NO ERRORS + ; FALL THRU TO PPA_PRTSTAT +; +; PRINT FULL DEVICE STATUS LINE +; +PPA_PRTSTAT: + PUSH AF + PUSH DE + PUSH HL + LD A,(IY+PPA_STAT) + CP PPA_STINVUNIT + JR Z,PPA_PRTSTAT2 ; INVALID UNIT IS SPECIAL CASE + CALL PPA_PRTPREFIX ; PRINT UNIT PREFIX + JR PPA_PRTSTAT3 +PPA_PRTSTAT2: + CALL NEWLINE + PRTS("PPA:$") ; NO UNIT NUM IN PREFIX FOR INVALID UNIT +PPA_PRTSTAT3: + CALL PC_SPACE ; FORMATTING + CALL PPA_PRTSTATSTR + POP HL + POP DE + POP AF + RET +; +; PRINT STATUS STRING +; +PPA_PRTSTATSTR: + PUSH AF + PUSH DE + LD A,(IY+PPA_STAT) + OR A + LD DE,PPA_STR_STOK + JR Z,PPA_PRTSTATSTR1 + INC A + LD DE,PPA_STR_STINVUNIT + JR Z,PPA_PRTSTATSTR1 + INC A + LD DE,PPA_STR_STNOMEDIA + JR Z,PPA_PRTSTATSTR1 + INC A + LD DE,PPA_STR_STCMDERR + JR Z,PPA_PRTSTATSTR1 + INC A + LD DE,PPA_STR_STIOERR + JR Z,PPA_PRTSTATSTR1 + INC A + LD DE,PPA_STR_STTO + JR Z,PPA_PRTSTATSTR1 + INC A + LD DE,PPA_STR_STNOTSUP + JR Z,PPA_PRTSTATSTR1 + LD DE,PPA_STR_STUNK +PPA_PRTSTATSTR1: + CALL WRITESTR + POP DE + POP AF + RET +; +; PRINT DIAGNONSTIC PREFIX +; +PPA_PRTPREFIX: + PUSH AF + CALL NEWLINE + PRTS("PPA$") + LD A,(IY+PPA_DEV) ; GET CURRENT DEVICE NUM + CP $FE ; NOT YET ASSIGNED? + JR Z,PPA_PRTPREFIX1 ; SKIP DEV NUM IF SO + CALL PRTDECB +PPA_PRTPREFIX1: + CALL PC_COLON + POP AF + RET +; +;============================================================================= +; STRING DATA +;============================================================================= +; +PPA_STR_STOK .TEXT "OK$" +PPA_STR_STINVUNIT .TEXT "INVALID UNIT$" +PPA_STR_STNOMEDIA .TEXT "NO MEDIA$" +PPA_STR_STCMDERR .TEXT "COMMAND ERROR$" +PPA_STR_STIOERR .TEXT "IO ERROR$" +PPA_STR_STTO .TEXT "TIMEOUT$" +PPA_STR_STNOTSUP .TEXT "NOT SUPPORTED$" +PPA_STR_STUNK .TEXT "UNKNOWN ERROR$" +; +;;;PPA_STR_NO .TEXT "NO$" +PPA_STR_NOHW .TEXT "NOT PRESENT$" +; +PPA_STR_MODE_NONE .TEXT "NONE$" +PPA_STR_MODE_MG014 .TEXT "MG014$" +PPA_STR_MODE_UNK .TEXT "???$" +; +;============================================================================= +; DATA STORAGE +;============================================================================= +; +;;;PPA_DSKBUF .DW 0 ; ACTIVE DISK BUFFER +; +PPA_DEVNUM .DB 0 ; TEMP DEVICE NUM USED DURING INIT +IMM_CMDSTK .DW 0 ; STACK PTR FOR CMD ABORTING +IMM_DSKBUF .DW 0 ; WORKING DISK BUFFER POINTER +IMM_XFRLEN .DW 0 ; WORKING TRANSFER LENGTH +IMM_STATUS .DB 0, 0 ; CMD RESULT STATUS +; +PPA_TYPE_MAP: + .DW PPA_STR_NONE + .DW PPA_STR_MG014 +; +PPA_STR_NONE .DB "$" +PPA_STR_MG014 .DB "MG014$" +; +; PPA DEVICE CONFIGURATION TABLE +; +PPA_CFG: +; +#IF (PPACNT >= 1) +; +PPA0_CFG: ; DEVICE 0 + .DB 0 ; DRIVER DEVICE NUMBER (FILLED DYNAMICALLY) + .DB PPA0MODE ; DRIVER DEVICE MODE + .DB 0 ; DEVICE STATUS + .DB PPA0BASE ; IO BASE ADDRESS + .DW 0,0 ; DEVICE CAPACITY + .DW 0,0 ; CURRENT LBA +#ENDIF +; +#IF (PPACNT >= 2) +; +PPA1_CFG: ; DEVICE 1 + .DB 0 ; DRIVER DEVICE NUMBER (FILLED DYNAMICALLY) + .DB PPA1MODE ; DRIVER DEVICE MODE + .DB 0 ; DEVICE STATUS + .DB PPA1BASE ; IO BASE ADDRESS + .DW 0,0 ; DEVICE CAPACITY + .DW 0,0 ; CURRENT LBA +#ENDIF +; +#IF ($ - PPA_CFG) != (PPACNT * PPA_CFGSIZ) + .ECHO "*** INVALID PPA CONFIG TABLE ***\n" +#ENDIF +; + .DB $FF ; END MARKER diff --git a/Source/HBIOS/std.asm b/Source/HBIOS/std.asm index fbbbe6ef..f057e926 100644 --- a/Source/HBIOS/std.asm +++ b/Source/HBIOS/std.asm @@ -248,6 +248,16 @@ LPTMODE_NONE .EQU 0 ; NONE LPTMODE_IBM .EQU 1 ; IBM STYLE INTERFACE LPTMODE_MG014 .EQU 2 ; RCBUS MG014 STYLE INTERFACE ; +; PPA DRIVER MODE SELECTIONS +; +PPAMODE_NONE .EQU 0 ; NONE +PPAMODE_MG014 .EQU 1 ; RCBUS MG014 STYLE INTERFACE +; +; IMM DRIVER MODE SELECTIONS +; +IMMMODE_NONE .EQU 0 ; NONE +IMMMODE_MG014 .EQU 1 ; RCBUS MG014 STYLE INTERFACE +; ; GDC MONITOR SELECTIONS ; GDCMON_NONE .EQU 0 diff --git a/Source/ver.inc b/Source/ver.inc index 70ceab46..1a5a4399 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,7 +2,7 @@ #DEFINE RMN 3 #DEFINE RUP 0 #DEFINE RTP 0 -#DEFINE BIOSVER "3.3.0-dev.14" +#DEFINE BIOSVER "3.3.0-dev.15" #define rmj RMJ #define rmn RMN #define rup RUP diff --git a/Source/ver.lib b/Source/ver.lib index 41a88ab5..d9e32aa6 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 3 rup equ 0 rtp equ 0 biosver macro - db "3.3.0-dev.14" + db "3.3.0-dev.15" endm