From 8aebaab3fe9be890a03bef41fb99ce8eb4b56201 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Wed, 22 Mar 2023 16:15:04 -0700 Subject: [PATCH] Fix SURVEY.COM (again) - Previous fix to SURVEY.COM port survey broke the memory survey. Everything should be OK now. - Regenerated documentation. --- Doc/ChangeLog.txt | 5 ++ Doc/RomWBW Applications.pdf | Bin 216623 -> 216614 bytes Doc/RomWBW Disk Catalog.pdf | Bin 124415 -> 124414 bytes Doc/RomWBW Errata.pdf | Bin 28509 -> 28510 bytes Doc/RomWBW ROM Applications.pdf | Bin 159615 -> 159614 bytes Doc/RomWBW System Guide.pdf | Bin 528136 -> 528136 bytes Doc/RomWBW User Guide.pdf | Bin 528341 -> 528273 bytes ReadMe.md | 16 ++--- ReadMe.txt | 2 +- Source/Apps/Survey/survey.mac | 120 +++++++++++++++++++++----------- Source/HBIOS/cfg_zeta2.asm | 2 +- Source/ver.inc | 2 +- Source/ver.lib | 2 +- 13 files changed, 98 insertions(+), 51 deletions(-) diff --git a/Doc/ChangeLog.txt b/Doc/ChangeLog.txt index 606a6621..966d44ca 100644 --- a/Doc/ChangeLog.txt +++ b/Doc/ChangeLog.txt @@ -1,3 +1,8 @@ +Version 3.2.1 +------------- +- M?P: Fixed Zeta 2 FDD and CPUSPD config settings +- WBW: Fixed SURVEY.COM (again) + Version 3.2 ----------- - WBW: Version bump for release diff --git a/Doc/RomWBW Applications.pdf b/Doc/RomWBW Applications.pdf index 73da8be112a23a7900118d7d1f0649aefa70e59a..091570d7d1e3bc88d5e02b52ff4ed148c9e58d0c 100644 GIT binary patch delta 9004 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 BO3(lR delta 8948 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 Li4$jCKD+&YL+(iz diff --git a/Doc/RomWBW Disk Catalog.pdf b/Doc/RomWBW Disk Catalog.pdf index 8436f203dfd329e32fdb6aae4bf83b7ae1486a12..3b7cb476dcff5bc42cff55b55ee16a43ecf76935 100644 GIT binary patch delta 4935 zcmai2duY{l6!(fWnQbIEK?ZtNbopZE`~H4yKHBasA*E%1q%kXXktS}SxeCl*l)7dp zX68Z?Q6nWXr6J)1)Kr|CkIV;#53mq(E@y!T39fVR9(VVgLBBs_J3HTVKHtxIer<2g zdEA_{zAENFs~#M^+&ujlJay>yxQ96{_m17YGP9uW=fOwwHWvQ2GBKmzqxLC#Yg+Z4 zRf&6k#p%=Q=BykLFIo0pZRO$q{l0GPTmIr-`6G|s-uLKEJJ&qvVN!=ZEcHf8%~h>y@1)n-5=1&OcG{?X1If zi6@dLM_j8;Y_Ho}*MI-y)hF7H9jW}|^Ybgm)_gVQi-rZ&4V62NUoI`5FmJ%SrOiK8 zp4$G&+5_YB*Ou=3cTTeD(4H&qpP`LUZWt2%njEy{jj?YHTlLDqb7$udA6;_#?9!Hp zTV9@@ujO*FEovQrn>04n%a5O&U~|O zci!;YEh8(g9$ebicD?ZN-Ge_gExtSJOjY}&8=p1|8vdXrZ&O3l&K)P0pZk05+d~@H zEH3;!N{07YZs#V=G>Cg#5LX8h^I zLQbp+b0M~El8r;^i&w>S(?0-Muc=G~BdAPDZR!_Xj1@(S{Ym(cEfc~7OUw%J zLb+@`2wpgXi{LL?W86H#yiIxd;G{*p$%h88c#z98ZxX# zU8!S?^VEseKG4*0sK(-n_E;)6D-EwE9zJXD`}X7(3XOR0E+7w zC*rC2_b4Et9T0?okz*kd!b!@O(Ax2{M$yY5zD#09os}EFJErI*r3(uJdU5Q5-dJFH zGJswL%3vfRNa|RELrw@YUTNw?ViTZxC}V6%8Gu%Vlr9yLH2>Y1E(Hi0Cn>#VG7}ip z(pW|5$BxM^B8}_8YShszts6l}lOl2vA zROYlu%kci)^lK;CkkDFk790kO7&JKf>5UC&rl%cFwjO8G{2MTgE;PtmtC5a{$wuN*0~4#$|$X9V|o{`mrL|5@AdT>?VP4 zG*)VMJBzy-ZNWI8v&V6Ye=8Mh!6>7ph;@v6SdZAH+6#6Cmi-n73~f>t!$kALYUd)F ztvI0-mj%{9&@n4Ti?!V|xzYd~B4nU(ZgrFYIICcBWQzzo6zbUrZtn{ z0!U@JlXL;>-v6BAGaqG^p?2O;$GDTQJrP$D!N7Q+xfKB(rb3h{8auS6S@wH;4A2t8 z)=#Hm>TEAQEM6qt|1v$m18Qc|g@+YeEKrZFQXZdf{474SvhCsJLWb3@{SOx@+GxmmppXf_3W`=d7R6ML`VDKT1+ckB9D>Ib|oXR~7rtNtQ z13SyW;C}$9hz15DEqK0LM{k$Ph^&<(VVItB$bayzYFe3Vg-T)g&dO zk8YGnE$b_8#Y)RU2&F!WI9vk%DKAeZw0C7?62DTLOguX|Uh;n`^*3+D2KR^DQKQOd HBy;}*Y}hfX delta 4968 zcmai2d2G~G5Ke1oNev2`R7@}y1S&OzcOM9b?rtm96s4e&U=*}X!9u}WF&M)SLJU`s zqk$r#2C7_wh>=4CBA0TQXo2tt1T-oVFd{-oX)ECTw%u!n#QkeCJMX=D-+c4UyuEcS z_x7>e#kGw~o3iqQcN>n4IKaA>w6xA|owe)Ql~Eh}ELppGT<+0(wno-`mbdTrpq_=( zF4af-yw&T>8y9YzF4>vA|I-6=hPN#kHtfBH>$;BEv~T#8>3_}`EY>d?yIkF@`m%EQ ztee*sj{EoWOV>A#`ex&2}4>Q-#%c`AA{C4 zZ9TaAx#k%I?|ZOkw*^xtEErSSurxPc^ln?$vZ4C;godLxDkioVTs@ z>%(~;Jv;QLx=->C7M0D9eZR73w7Xffw(9Wmo<-Zb1Qo1e=4Rd8b#3bpO;dln8tGL% ze*b~UsGps4fsQVbg|_m$IeN7Fb8(w zG;yvB4w`wmG(s9!ZAC$t|Fi<)$}$uo<4Tg0aBc-g3o>l!S}pPAAifkagU-tJ43dl^ zbOOT#1pzXE{eac@#-J0D_=WO<)&_!kfe#kUGVBP|sqi5JL;(ANji4n2Tn`;Agbh;? z$3Mw*!I{8$62fU>)1E*rw2>HoP)u?Wp=}zfL5FZcnJ|Ka_5^C-wI(<55-TPXh5@-U zxdm&1X_+<|NI}X(N=8adfC6KvrR1a{z=m}JibT=1+VhYfA^u7DB?uQrK}tzVM{4Vd zpLQCTtOPgWXI*-Qb=03U&=N2-)^nUs#aa5|IF^bTLO2Q8#84|{31<`w9H~#me5yV> z%Tp;XaDYmBO>EFMaNZR}h*3~h@wg4{pM+moL7Ie8f}&s{0SGP43?ZRriufrDoh@x` z9DmI;feSVy(yE0eY0^Ryq0!7b-0h%wDvXxaKD>WsNoe>Gn{apVGo&3u6C))H1xtiW zducmR2vYDvMUWu^BJ|`Yo=!9dGKX(xgou||dWC5Z;-7xu5Pu^ikzlalQiM7N*-Kv> zt_>59ZEyw_DI+u~W23AMFk7MLOKS5(K;U3fiUw*som^pJjRiK~05$aO4qIyeGu9B* z1Dm58LhYapEsRZ=Gtj~uNr_EOJ{^M(;BOgp39=zb61Lr;nONaS>MYY7bH)l!gAU6H z&wqfH$5C4eiiCsF&?~XcdNM&7P9|{IuETBY*jWfKVXB2ABnM^P}@zC)c zq&2x;=ltg($M_J)rpM&+@DwHoTTPy49z>Mv=b#5B501~BoCTH>W_oyak*Gbn31?Q~ zG{Li6U}Azz5gP|p4$lbjPrwh34%aN$NHFknk~mF}cVH&E9XA$VF62l0020qXu$2%5 z)I-=*o;u)y*;XR>Is9FL2bIuk;as;X<8bUuqmW05GgrJ#T@UTj&Z njTT2ECDun`rc}gABJ7ERA^+#n_{;gM{H{E&U%!%PO7s2$>M%U{ diff --git a/Doc/RomWBW Errata.pdf b/Doc/RomWBW Errata.pdf index 7f01ab905906f7fbc509c508ab48634d1f7cc8d7..2d95d9ba9d8a935b696da0eba32a46ff3e0a9a0f 100644 GIT binary patch delta 3575 zcmah|c|6p67cSdHO(Zgnge+yt{C@MB&6R938vCATLCK6YQMR|{nrJG^#H2JymO-*J zX|a_;H^~|yqi$KUe(X{5j`zLG+sq&D{B`E}o%5XMIp=%_xEs0Ljn@K%0DMxA3UzGi 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 c7#wJfH8oT=_q7s_H0#cL=Rgg|-(xiyN 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 diff --git a/Doc/RomWBW ROM Applications.pdf b/Doc/RomWBW ROM Applications.pdf index 32b641f7058643dd630c78f5f342e9029f000678..e1c4eb79d94369efd0b1b65c2730261aadd3cf8a 100644 GIT binary patch delta 9066 zcmai3eXN&d8QwY01&0pPNQ+?Wz_6B5KHnceC7c5@cQV5dQWqN}HfW=*1oRy9jXq>x z7^(C#0~@nso=jQmgTz%MG5f%_J_uJHqdzoKgT|_<30?1deqZl>ovq(rhll5WpZmF< z`@Zh$xt}xRQ%{di-LbwWH1=%hIj{K4l^?kLXP2Dw_-p5#+B`h+wX3(yKQ?b*|K?i< zckOuUT}w`$Im`e1=*$;B`<=^2zxv47$|cXQernN%n_igtlN*lid&{ge^Uab6bCP^xWs}I5@hZf9+#4<{#X5a_!2|p<6Z|x@^}IQ?C8+&i%ibbN07; zSFf3M86Kw@BP!hImfP> zzJ2FCAMgJ}-;wXmKfP#UanAH7_uj3K&-nb@-Ys)`dww{#xA!ZTO)*9Xm6dB8819|b z`PcYx@1FO%0agA6)(`Yme<&5Qkz+dhEXR!Tw(tu=~v=)|n+(7>4l zAEkqEniffx&p3HQN0LGmp$Pm_vUHv)ClN?W!9QV)F+=gL5i^8LcCNMK_J&<{X`np+ z?gTP6((b&95*ZydB^B~aW`r`i+HmS<6DCg;#vwF2C`{y^*1=0? zR0h#^CRTZhO4Lc6X7p`)|V^eIOc*IRtse5%I=jS;?_vxe$S=Ye-l4>tHlN?X!_^Y2>0L5Qr0^ z`2VJr#H=8Xm>u*k>KPg2%#Lclll(}6Q^4Ucu6#1TQ1Q7 z$t}^!*fNcEGOVrtPe6CQIFqvdtOcK(^w01tun9J!gDouSqLZ+j07F5_;qow~G^0OY9N`c?> zBx59{T;xj#ln;eSzsp=NL~dZ5U;dqd)=&J*m0H)LS9iEL0wTCdF9GWNL7E@ z^a#mCsRL21Brka9XeS=}RGu-EI~6u>;dKlCftLP5K8eUw5D`|!f_J)BK1*tXu%NW_ zIAjU6x1Mx>FG66i10-+T!=^xWUZ#%n0f#5&12o3( z1~Q}TR6xCw2nM2Cc%pE3>Ns7UzY4|^{1~g3N_ZL^ejVcyeT->BFrX|-_ycmAZ3{~m z%@6^YTqIhmV!?S*NYHx36#$he7-2babl86z{xTCgkvVbhaE6K#+5r??I8Dk3h)jwP z@K#OSR`_Eucb!QEYt$t@R)2Om$X6`f1c<7!Vd9TiUXSJXyf5hNpihabv54$|fU09l zM06a?V0yU-uK5yGgn9FpbZHm-8B&&vqv5e6nn>tj*v7F{y)$r|rqhD{ASJX`lrDrAlkmgVP2ym^kyzoM z%CxF40%J7H>SI_qNCz=SSz6jsQwR+bqDqVv^6X%&N${t{mp_b6vSYM?rPJtqP?ltL zfvb6)3%+(PQtm%Y^9|y% zwg_T9T)2r!c>_}^TVUMkk#qtW^CThSX$qYHa@w`@+_ZM|XVv)UIuN3A zQVwA)T%_yYD4)EjZf7OXt-wX2g=`_tXe?G)UnWG$CoIg53K{Ps@?^3~Qt`qTVwM)+ zx1@|-WY@eZA<;?8B&)Mlvd$sewQMrNHc=x2^GH45Ix4Shuq|S@Hx)}_B0U!1wM9y8 z7>CK`QATD>${4oIHa_;>f*-r{vT$Jxy_Y(yFy265@%9A3s1kj`zq9F(o<4VxQ4+5@Wzeak0ll$tG}y z8|~$@6~#MlB9v4nF&4h2nXA}V8F#^M#4EsYSM5rIatPfoM-3BPOG$a;NZ|=v3Pof< z(bQp`5W`?5YBRXlOUlBnRJM}vDq*B{s~&a)GTPvMw)$RIY-14JjIOvVcWiZ(ue+E> zFTQvwf<~0KcuABCBRXpwS>mrP+N%^?cqNhWTk9oB!WME_EbQ=%BNxUyjO0jM$Wjq` zBA#*N2LruPX;esFBsm%V+JQDjY+)=n8#UNt^F0dSD@rkpkumyJ!8HE7zIVysvSo4c x;NY^sp{4L|@sPptd2sPkHROhZNkjR41B?FOl*X!0_MSgQ^<8km(hn```yZ?MLj3>$ delta 9021 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 diff --git a/Doc/RomWBW System Guide.pdf b/Doc/RomWBW System Guide.pdf index 2313dc86fbfecd8760f39b722feb023db69d5e4c..08998e7266fb357cb4f7f2d584e0d50421da56f8 100644 GIT binary patch delta 566 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 Vdp=eg|A5M!($`<#qFu|<{|8yPw@3g0 delta 28259 zcmai737C%M`acZDa-@urltjPyb#j*}t#B<-f*OuheGhke+>(wyzvsZLTi0 zt$cFb62rbazNK)1uJ=FOP0N1$gCi$u|5?7u>`2P-oi}frWzG#Xn)2K60l%IqGO5eX zV~4MwD*A<<+-%w529=6sXTRO1N~*Ky=Z8zq-FyF+NiY4{ZfNVvrAPk$)sW25JqqpE z`tbCtN8Y)=>A$y@X_#GpSO1FNuX{7I@m;-s{%lQ$-=6=i-HQ`Gwe}S*JNUxZ>Cden z`cGp*v-(w!zrOc_TAdG#$vCmQL$$l#Zq)Kf=-ZOtH2CCil`CB5w0`#Ds~KmX?mc<>_%mmxpV)MM*}(Ncqe`oihmUme;~y&z5bLF6^^( z^~&0>z0j}il3skuLecciHYos0Qv|7)BHNX@drL8<>7($f4XH!$-I0tC4EY4yvmZaAL%b0&s;(k=Iwu~;MX==S_(-CV$$vI*moO62TSt5N?h zwK_Iz-R3_P5*`SDla#PLcTjjlsf1n8eC;Gwyat{a>b0UMw3E4(tiA*{oKbUkDc56>l44PXzSm)e)4kWhxJG99Ch}q zo-JA)zWr*&V-p5WPMymd*_&)QOg@^k$%dY;#mUk;QEmGmh@;{86e(vC-SL${A z>W?SuO=$Q_s9s9?f>s9>A6$N6WZxCXHvT^H-XA($oPS{XwaXXNf1lc{{*q&v;~Va{ zGJDYwzyGe4`)-{1en`f+Q6JSgb8SQY&9{bL{^P>QEv?41Yn{?E^w+4%H!B>wSbxW_ z`xkG0to44L@XsqB)txl8aGM>MXT7sz?|YwpTY32sZST1gp#xvu z-K<07J`*-fs&!yTx53xu9qsniRc}=B#p60%Jl^5KX}i8$SZ-0JR(AeP*Lrk0|K^sy z@3twn>O{BcgGRLIv}#PT4(+FWQ@CuUeXS?|cU#ArRfl;?`snxkRkz(Iw+3ygx^d|% zOK#MzJ>!WEqcZAz_|9|l?VcNE?5X?3_urPh|Ln}ZyLRXWLzmudvU5(S!yjJgv#grE zf53o~%a%9ZbZ@Ku7k?UhtxwZgU9&pvp0=c3nK2{Io=BgSa5AOH8URolCLzp;3i=e>P} zpX>PS+%;F{U)lZo_5Az$KGL?tk~){(+#Omt{`iUZ`}1|}72a^}rCEy?BwSc~Xoj}_ z`4e@zZ3<01+^PBO83XLm)0T8Ux2M#%WBk8AHR7(*iRX8`_r-}>H#fXCd_bcQGe(^r z*yZ(Vf0o*lJt*nQu#+no#a(yzg&y3akhdVNx-9*g(vzHwpm58C8j)$7cAwO!SxQ^%xj zOszV0Z`)dlm7gyCOTQ~`?ydaM@|jN^@9|9ez7HPm@kP}x&s|M5>-}DD|F5kI-hScl zTV4uzl@hyDXnbPMwen*xufO%@yJ^3?Gx&P)_Ad|h?=tMuS0)X)aj417^xn(29_+sP z%kVCtbDw+3GPr13MLxtC7J#Zjg zHY4N1f7JirYUY1ev=}$8$RF#A`6ru?%s4f4z(21H-BNQ@lR<6EK3VASqxu8c@1K6M z($Lc*hkmjloPWzBvq#?(DrgLSt9kw8?rTS!Y*gE?_#Xdb!uf0*-TDM{LkaF)IXkEK_^NU%H6VekmW^X-S`ah3e zy~nFuym_eN{WY2-v@O+hnRPb*3QHTGwXo36dp=*~%pLt${)%_cNnLU8%L`IleVToL zgX-g)a?|F{%bwD)V8wgqr?y}8-Te*hPqVgKd+%%4^S#-HI?frrxN_t3t>ztST&vvs zy~hrjR`IKqz2~o-`9>eB{=|0<_3Zrh%B3x*RlIjen`Y(SU-fX+o%eKo_`zz$o4j^U9QaKVx?3 za=(Np`h}bVYx`846aLySWQP{~H1%ZRslPSt*mT?6+26fWs(OL(Q`0}uvQ|A)=B@<` z9;u$cWwkb+ELwymQ|4yl&r>&zwU+J8zo7JE&y-eMwoC1mQgrQ@6%z~wF779Br z6`nci-TYnWj6L(8P40PLk<53F@7y=_G`4+qY*z15 z2a3Hrb<)da3oL8=*~sf_OBQe5?{r4Fg4bRL-7c2i(YE))n9}*$nE89ERIgC%Y(|?Z z6SBuWJ@3dIt>dGDZ`{D0}t&T0XRZJbW)U8sZ($Var8GX}VC{`6ew#(|d zzjCQ0c?I6~gY1=+;Y?+S5OlX;|KpGe4#SRk6m1YMAjsbIF;17dE z$JI=WH+C)8WSD2@4)cO%>pJsR2sa|Q-}i04C(ZZ4nM4KO_e`dYkIA&LuE<4)(=}Ju zLFownqdGv>b;l&7q8pmve%-Kio32SWb<5$ori051BCT7t;pD+W5oM}dP{zcBy6p%~ z2h0`=I=XH%WfV5Fo~E1N%pfwF9x^SVXut^?lT|leo9|9HeVs_H>CjOE8B6jJ&~w!| zMgJ)IG1)frNRwk`KvkiZb!cEBHRk%hII)e{d}7;-H&HqAr`r}Y4NMO7vY6}&uGS%m zVw?lx$a5XT5R`F3rZA4WW1Dh8#}`-Pc$OIF!kqBNFb9IFkk|+^IDa1bA;{uBUB?hi zVh{9+Loh;r-LS>!G~X4LP4}P%;wCHAsT;0ANP~c`Mo8mV#{Wjwr3I}8K&>@ zNes(z45AERu+fB!ZEL{;gZ_pC`qOrxGYVE2gS;BJ;yRa z4D{g)@riw?E+#)*2#1kYgdrG&9nNeJX;ZUePD#xF19}=$!Gyi?Xk$}1up%u81#Ixf zI;<1HG%yJH28#Yr{X_-89HGs?GJNmgEKQ@+0TvW7B_)Po3P;5-EYD>B&oCTIU=1&f zm5O2bjzAi;A%+9(4dJL5usKnrWB#9EI>O~LU?T)FrZ1^w>G3*U9T=`HP7=H(zyJ)w zLI6tV(Xd=Lvlu6>ondPcD~A1ITGX%&VVn%xlGg+Yv)TVMz(|6uz>k!Ql35lf&Com% zgy0n-P;}JfK z%|$fKjx3ySoyFL6z4$mY$Nw`u-DS@Qn!;x8H$8;Cd`+J3GxwW5?uoC&hv&o8@LM5I|^wAXx#kg!f`-5xIXQPK-4sOBWgnPRKD}Y_QbEY;-ik_nD~?ONC^lV_L583Bg+| zPPh^H%Se;)baEz1QVWV|5Mx7ftDnHMx@YI&Wu8*peM^f!@Z zAhP)xD4b#At$L{qW11!JQ_HITVSXmnX_K>$V2_72IA~VRrjqEIdwlDY4>o0jw~1 zN39pHhY-E7#nqJB5Ck`cOMoLf9HU^aOrY5&ZXxavZh(&z{gHzdX#lus%t*LTD>r)16K3EdlHP#1#O_GG zA^HeX0p6x#hgcwiA)gMzpbCPM0h3IKOpkCU5Ks$K_vC zBsoyl5V0v-C7+p9jU%TD^hdha6I4K$%^RbvA+j(o3NJht*(70(T$o{|AP($19ET!Z zqss*yp*OKHUy1TJg)0bDIAg0RQH+XvEDnX=%vuivMNFZ2$Z1A{*l5`RH8pu+WOj++ zFjr^)Bm}oZ-a9hptZp?V0R(~`%pjB1L#l_A6f8H2O~k++$^jKH0=8IVFjJ>Lnc_{7NRd^)>0R4ScskZ#4uqDGj%(B^cxUOlo+rVYC*IF7G?XS zN@N^4qVlD)iP7P>vb%w~xr`n!B~S#cg)!OpNi(ZW*tP)`m_b4snKn_41h)ylRn^>B zoK#kg^@olqo2!D6k{cOXj0=jQx)`{2f<57(hB&>b>YE&)sEq~BA_!&6jk=zwrC~h^ zBo#6~R9A#rd48(`3N}G}DDDpU1r$x>bjqd>`JrV5AH%T-x)Hd4RVd`p88CS|1cTz< z5hw}81xH;_OEs7^T<-|$#tWf?2wrRqFNK8=XJuQCx}oU408G{m zLAii$5HVE_lALnm_*`#JsUKJi`GA6BpAH2e#Jo%`2l-Hj!FlHJACuvIi-8^o5g6wM z)QOS>AR`Wf)r5Q~*E@$>;)D?OXLj&WdX;(%Fu_)?%1{&1F5-DU2-?AdFeQYpkE8=n zR)qwDL5m40AkiT#2F3}>U}H%cxX&Tp7!f&#!3cPzLPlwr^I<6R!D9*{jdG>V&2Eqg z7|Wb-vEUIvBS;!h#zR*eiyhcf!cf8&8tPQxt*4>o2q#++h=ovyw=62;u@3>uZcA^#K#67xp<=%u)Ia14VgANA%C-NacQV z21UU*2muUL&)|sxgVQBpUD>o@py+*4Fu4h8G{kmrNkyxYfmk4{?@df9Ey^RxgAGsG z125bOkH(0Q&jN%jlE%tZb$_sW089vrg30w9mt_D5=C-NE@dALbNJK7lt#MBzJPn~9 z07F@p=Nh6&gUbwNe#otWNnj56GV$fDpLbC9B$Z0(hsj8y(n(Ot=9D{9NTPWTd!P^>oEt);qA0Zh zW(frX1Uc`Eanhur8Iogah>d6;N6lL0k(K_7GbuJ;Y(DTte_Az zQRui7)Iu3NFN=`dfrZJ?>bxL49wxO7aXO)rA5UqjeSrxfMG$=s{Ff!OV z?{GOCSePv8G}svZ3Su%k(FDwq)Uwf@EykemM~&@qg5zf(nkt^f8zsq0j*?>smgbqMI9f$sy3v%(s zP)QLf!TIwrL~@A9>Vf_FbjUOb3y7$kJNZ=Cwcr_aT?Zl(MSsJG+2&2qbuAQnO%U_u3BB?VYsg)-{@nNW_b=K&KBo|N0q%!+ZM{{x$V*ZFYBf|33R zVL`B$7zqD`VDPK?5d*w*k$+R3JJ)2f2hbMlsk~pr{=`(UT9CaQz)-B>$>>mFq!B-| z?#EpCgC?C^&m5Bwovz}<*qB`|B!)yN23X)NdPM#J6b_|= z1w0i+Y75@CKn8Kw9bm!`frR3Xi{*x-yrW*lo{H**6;=!ja+@-^GA_1@b@;V$#(Jn@K9^>hfyfm5BUmh=2S zm9`OLf_>RR#e#TlNgJaU&mxOz6}$}|2Y(?z!Ezug8jtTV*$p4Pi2St2i4eG0KBxRt zcbCx4z)7$U6oxz_ya5s*uy(Fai|0=?W^+V_W@tDVd`MMgB^X{%aNz=T#Y-a-?>YmC zvIu`79U&-=_qQBlU^1Gnd1G*`fT0@5niy3h!S6sOB$yVSzObx#CM{GuDgi=0xZqi_ zu_GGQ5Y|VN<#GIpK2)Lna8F!kfd?a129V*T7{-ZyX27VH1NtMmByE)X4hJ(ggq}05 zm@6`QYCSm)2|B(eWI~M)OPYrujr|K)6yY}Dxj}%Dl%B(l2p1CHpAe=3PGyuA^5PR{ z2N6%8Uc-?%w4uo00*2RG#F%)tC(Htj3}tE%pI|}ZjUgW|UR@wjBdoFyv%uE`h~NdJ z#RFym)QY?{@i;zFUAs(vq?qODkZk0ugIhzV!{OkP(t2ow#)`SrGIKMj0HXJeNvK{) z1YsEGh9_OdlNMH0c*TGx@jMzmu+gnzJHf1zkg69DoQ6^B@v+g02lq0vN1osU2-7Jx zc7@W_upXIQwIE+K8Z1Qzp?U)pT(3875cZ#|s~8B$U}TWkVHj$rY`xH0kH@)Ut{xt6 zB{3;gJk-Q+Jn^UDDC05@D6f+(Ip(_Il~-Z^U^m1PqU@_041>qV>2;gB^&&7tP_&-< zz5w$D8hdkiCC>g~LD)qx8865Qh8E?x2qTi2!dyuUTq7%QH7*eCDEkMX8xx2qmm+r- z)lpFg65~9^j&ihtH#N5BgGd#H*#CZ zeF|L)AC$AC=xaq0Pi$<+jq%_qev=4Cz+GXvfI;aR;GLX-!sEck;@f0k3DG`_aiYNi z!Mzr4@Q0F14z}?psh02s0`@o2Lqbuta+U3v0={f5H82-<{Y{7M70oDi=rJ)EV^jbxB%-!E(^lK+DSb=Vq}n44hb~| zAjiwt7&QtaAu^Gi6TzbxL_ai6HDfa};Pza{`Jq_YipkW|0F8yG$l;YY!6tBwXXsW zilUDsCX(08-|AI3Up-pSa*`wg=|wG$nI7LmxdVcto5uor9E_+eq;R$|F2EHz(hJKZ zuyzp0Gi8vKy8}!T*AZWf0)nE?2{1dvy@|kDr1UTluT2CpNJ$V(<;xhR>K$x4!4SEW ziHl)SHx?EGPrZafRo_Mw*MxM7;3K8&2tl|=!Pwvl#at)}uz|)v?pMU~N>LoeT)3tA z3Mb(+D~uDq@g$roWTS*rgK;7lM5SH$44y1^0j1o0$X)TmZfoI5`GJ%4F;rKPpb2^i zh0#KBOvnt<^nwYXE_gllF_Fk!1Y`@J>ktIO_o?{OpwBq3iz+qJf_#y9HYAb88|S!j zIkJV1EDEfFATQ`4%PbHCV=#hHI?`I=6_}uwV}>|ut-ct>nIL>n4yGv%Yo+c~vyemv zSv(qt=hjlT5UJ#>7bjbI(*Z;Z|=A=F5=#*<%pMwkq@K};4; z5!E=MP0$%DoM|NXq)?-^M98m;53(>>;nWCZ(CBi9$>Q@HcncxE`U0fUcTI;wr+QSv zV~IUXmMJI<6pph>!v#pFw3G6acoWq|C198xfZ@}VcqbIaCKke@>soR;m?1b>%@t)^ zbZa7u7uW<>d#QdKZ!`|4i-axdI)o+9mW^xVoEpKcz`@6+C~^_ zJQQN4LE@3CB&zRJB(uG(r>jVW@_nLDh8vA=V(|nObHytYa1mnY;3k+W zO&`XAx6&{=&Mcs@O=v>I#6sPoPe8al@H<3i0+a5&5g5uM* zz#1P^j~kdXPJHeRb7kTVVNf`&s3NY2xp3XWUYoMs5&3QzJ7c(R!H~FZE_c9=qL`{s z4-glxQkk387q`VGsE4xZg##%GkP6EO3oaEABGdo{aenZz)G&Z?*%IT#gA!G<7OoMpLqR7TdmuR@>_0L= z9zPyIzdF9fPp3m}U)&v(gK(=K9Qv5~@8@NW}CmN>cjT)g(v2nvEo^TpB x)KVHWXw)#psh3>${~z*va=m&*2MtaeIC$8=ZrzLGSs*;nqLnJ8v}#=R{{WM5V9x*m diff --git a/ReadMe.md b/ReadMe.md index 98ee2805..4bc69771 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -1,9 +1,9 @@ **RomWBW ReadMe** \ -Version 3.2 \ +Version 3.2.1 \ Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \ -18 Mar 2023 +22 Mar 2023 # Overview @@ -102,22 +102,22 @@ functionality. Complete instructions for installation and operation of RomWBW are found in the [RomWBW User -Guide](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20User%20Guide.pdf). +Guide](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20User%20Guide.pdf). ## Documentation Documentation for RomWBW includes: - [RomWBW User - Guide](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20User%20Guide.pdf) + Guide](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20User%20Guide.pdf) - [RomWBW System - Guide](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20System%20Guide.pdf) + Guide](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20System%20Guide.pdf) - [RomWBW - Applications](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20Applications.pdf) + Applications](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20Applications.pdf) - [RomWBW ROM - Applications](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20ROM%20Applications.pdf) + Applications](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20ROM%20Applications.pdf) - [RomWBW - Errata](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20Errata.pdf) + Errata](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20Errata.pdf) # Acknowledgments diff --git a/ReadMe.txt b/ReadMe.txt index 4cdca439..7d83f352 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -1,6 +1,6 @@ RomWBW ReadMe Wayne Warthen (wwarthen@gmail.com) -18 Mar 2023 +22 Mar 2023 diff --git a/Source/Apps/Survey/survey.mac b/Source/Apps/Survey/survey.mac index 23b2fb9f..22da9bb2 100644 --- a/Source/Apps/Survey/survey.mac +++ b/Source/Apps/Survey/survey.mac @@ -15,6 +15,13 @@ ; ;VERSION LIST - Most recent version first. ; +;21/Mar/23 - Previous hack was worthless because it broke +; the memory survey. Rehacked to use HBIOS to +; detect if N8VEM SBC MPCL memory management is +; in use and bypass MPCL ports if so. HBIOS check +; should allow use in non-RomWBW systems again. +; Wayne Warthen +; ;10/Feb/23 - Total hack to avoid crash on ECB SBC ; RomWBW now required by this version ; Wayne Warthen @@ -240,20 +247,6 @@ TABS EQU 9 ; Tab columns ; ;ORG 100H ; -; -; - .Z80 - LD HL,IMGORG - LD DE,START - LD BC,IMGEND-IMGORG - LDIR - JP START - .8080 -; -IMGORG: -; - .PHASE 8000H -; START: LXI H,0 ; Save stack pointer DAD SP @@ -261,9 +254,38 @@ START: LXI SP,FINIS+64 CALL TYPE ; Type initial CRLF DW CRLF,CRLF - DB TAB,'*** RomWBW System Survey (Feb 2023) ***' + DB TAB,'*** RomWBW System Survey (Mar 2023) ***' DW CRLF,CRLFE +; +; Are we running an N8VEM SBC w/ MPCL on RomWBW??? +; + .Z80 + XOR A ; assume not + LD (ISMPCL),A ; save it + ; Check for RomWBW (HBIOS) + LD HL,(0FFFEH) ; HL := HBIOS ident location + LD A,'W' ; First byte of ident + CP (HL) ; Compare + JR NZ,NOTMPCL ; Not HBIOS + INC HL ; Next byte of ident + LD A,NOT 'W' ; Second byte of ident + CP (HL) ; Compare + JR NZ,NOTMPCL ; Not HBIOS +; + LD B,0F1H ; HBIOS: VER function + LD C,0 ; required reserved value + RST 08 ; DE := version, L := platform id + LD A,L ; Platform ID + CP 01H ; SBC? + JR NZ,NOTMPCL ; Not SBC + LD A,0FFH ; Flag + LD (ISMPCL),A ; Set flag +; + .8080 +; +NOTMPCL: +; ;DISK SURVEY LXI H,8 ; Init drive counter MVI C,24 ; Get login vector @@ -445,20 +467,19 @@ MSURV: ENDM DB '|' DW CRLF - db ' ' ; dmb 31-May-82 - DB 'T'+EOL + DB 'TT','T'+EOL LXI H,RAM - MVI M,LOW 1023 ; Init RAM counter + MVI M,LOW 2047 ; Init RAM counter INX H - MVI M,HIGH 1023 + MVI M,HIGH 2047 MVI B,4 ; Clear ROM, EMP CLREG: INX H MVI M,0 DCR B JNZ CLREG - LXI H,1024 ; Init memory pointer - MVI C,63 ; K to be checked + LXI H,2048 ; Init memory pointer + MVI C,62 ; K to be checked ;Start of analysis loop BEGANA: @@ -492,7 +513,7 @@ NOTEM: INXI ROM NEXT: INX H ; Index next byte - DCX D ; Decrement K counter + DCX D ; DEC DE; Decrement K counter XRA A ORA D ORA E @@ -545,8 +566,19 @@ NEXTK: ; contents of first page call type db 'BIOS at',' '+eol - hexout bios+2 - hexout bios+1 + ;hexout bios+2 + ;hexout bios+1 + .z80 + ld hl,(bios+1) + ld de,-3 + add hl,de + push hl + ld a,h + call hexprn + pop hl + ld a,l + call hexprn + .8080 call type db tab,'iobyte',' '+eol hexout bios+3 @@ -555,8 +587,19 @@ NEXTK: hexout bios+4 call type db tab,'BDOS at',' '+eol - hexout bdos+2 - hexout bdos+1 + ;hexout bdos+2 + ;hexout bdos+1 + .z80 + ld hl,(bdos+1) + ld de,-6 + add hl,de + push hl + ld a,h + call hexprn + pop hl + ld a,l + call hexprn + .8080 call type dw crlf,crlfe ; @@ -607,9 +650,6 @@ PDLY: JNZ PDLY ; .Z80 - ; record the active bank - ld a,(0ffe0h) ; get current hbios bank id - ld (BANK),a ; and save it ; Check for Z180 CPU xor a ; assume Z80 ld (IS180),a ; save it @@ -635,6 +675,17 @@ PORTLP: ENDIF ; .Z80 +; + ld a,(ISMPCL) ; MPCL? + or a ; set flags + jr z,PCONT ; if not, skip ahead + ld a,d ; get port to test + and 0F8H ; range of 8 ports + cp 078H ; starting at 78H + jr z,ISPORT ; if in range, assume real port +; +PCONT: + di ; interrupts off ld a,(IS180) ; Z180? or a @@ -679,11 +730,6 @@ pnum1b equ $-1 push af ; rdz: - ; Make sure correct bank is still selected! - push af - ld a,(BANK) - call 0FFF3H - pop af ; ei ; interrupts back on now ; @@ -818,13 +864,9 @@ RAMF: DS 1 ; RAM good flag EMPF: DS 1 ; Empty so far flag BLKSHF: DS 1 ; block shift factor MAXALL: DS 2 ; maximum block number -BANK: DS 1 ; saved HBIOS bank id IS180: DS 1 ; non-zero for Z180 CPU +ISMPCL: DS 1 ; non-zero for N8VEM SBC MPCL FINIS EQU $ ; End of program -; - .DEPHASE -; -IMGEND: ; END  \ No newline at end of file diff --git a/Source/HBIOS/cfg_zeta2.asm b/Source/HBIOS/cfg_zeta2.asm index bcb5cdd7..e3d18470 100644 --- a/Source/HBIOS/cfg_zeta2.asm +++ b/Source/HBIOS/cfg_zeta2.asm @@ -28,7 +28,7 @@ BOOT_DELAY .EQU 0 ; FIXED BOOT DELAY IN SECONDS PRIOR TO CONSOLE OUTPUT ; CPUSPDCAP .EQU SPD_FIXED ; CPU SPEED CHANGE CAPABILITY SPD_FIXED|SPD_HILO CPUSPDDEF .EQU SPD_HIGH ; CPU SPEED DEFAULT SPD_UNSUP|SPD_HIGH|SPD_LOW -CPUOSC .EQU 20000000 ; CPU OSC FREQ IN MHZ +CPUOSC .EQU 8000000 ; CPU OSC FREQ IN MHZ INTMODE .EQU 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280) DEFSERCFG .EQU SER_38400_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM) ; diff --git a/Source/ver.inc b/Source/ver.inc index eecaa97e..83f18b07 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,7 +2,7 @@ #DEFINE RMN 2 #DEFINE RUP 1 #DEFINE RTP 0 -#DEFINE BIOSVER "3.2.1-dev.0" +#DEFINE BIOSVER "3.2.1-dev.1" #define rmj RMJ #define rmn RMN #define rup RUP diff --git a/Source/ver.lib b/Source/ver.lib index b39a7dc5..af7d8020 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 2 rup equ 1 rtp equ 0 biosver macro - db "3.2.1-dev.0" + db "3.2.1-dev.1" endm