From 22217bd4840dee4e4811e91733100f44f838e2e3 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Tue, 9 Dec 2025 17:20:14 -0800 Subject: [PATCH] Enhance DLPSER Driver for Multiple Devices --- Doc/RomWBW Applications.pdf | Bin 413850 -> 413851 bytes Doc/RomWBW Disk Catalog.pdf | Bin 257563 -> 257563 bytes Doc/RomWBW Hardware.pdf | Bin 388284 -> 388275 bytes Doc/RomWBW Introduction.pdf | Bin 96448 -> 96448 bytes Doc/RomWBW System Guide.pdf | Bin 633847 -> 633849 bytes Doc/RomWBW User Guide.pdf | Bin 572566 -> 572567 bytes ReadMe.md | 2 +- ReadMe.txt | 2 +- Source/Doc/Hardware.md | 10 +- Source/HBIOS/Config/SZ180_std.asm | 5 +- Source/HBIOS/Config/SZ80_std.asm | 7 +- Source/HBIOS/Config/SZ80_t35.asm | 5 +- Source/HBIOS/cfg_DUO.asm | 3 +- Source/HBIOS/cfg_DYNO.asm | 3 +- Source/HBIOS/cfg_EPITX.asm | 3 +- Source/HBIOS/cfg_EZZ80.asm | 3 +- Source/HBIOS/cfg_GMZ180.asm | 3 +- Source/HBIOS/cfg_HEATH.asm | 3 +- Source/HBIOS/cfg_MASTER.asm | 8 +- Source/HBIOS/cfg_MBC.asm | 3 +- Source/HBIOS/cfg_MK4.asm | 3 +- Source/HBIOS/cfg_MON.asm | 3 +- Source/HBIOS/cfg_MSX.asm | 3 +- Source/HBIOS/cfg_N8.asm | 3 +- Source/HBIOS/cfg_N8PC.asm | 3 +- Source/HBIOS/cfg_NABU.asm | 3 +- Source/HBIOS/cfg_RCEZ80.asm | 3 +- Source/HBIOS/cfg_RCZ180.asm | 3 +- Source/HBIOS/cfg_RCZ280.asm | 3 +- Source/HBIOS/cfg_RCZ80.asm | 3 +- Source/HBIOS/cfg_RPH.asm | 3 +- Source/HBIOS/cfg_SBC.asm | 3 +- Source/HBIOS/cfg_SCZ180.asm | 3 +- Source/HBIOS/cfg_SZ180.asm | 8 +- Source/HBIOS/cfg_SZ80.asm | 8 +- Source/HBIOS/cfg_Z80RETRO.asm | 2 + Source/HBIOS/cfg_ZETA.asm | 2 + Source/HBIOS/cfg_ZETA2.asm | 2 + Source/HBIOS/dlpser.asm | 275 ++++++++++++++++++++++++++++++ Source/HBIOS/hbios.asm | 90 ++++++++-- Source/HBIOS/hbios.inc | 2 +- Source/HBIOS/invntdev.asm | 2 +- Source/HBIOS/pldser.asm | 176 ------------------- Source/ver.inc | 2 +- Source/ver.lib | 2 +- 45 files changed, 420 insertions(+), 250 deletions(-) create mode 100644 Source/HBIOS/dlpser.asm delete mode 100644 Source/HBIOS/pldser.asm diff --git a/Doc/RomWBW Applications.pdf b/Doc/RomWBW Applications.pdf index 5e56d5167ead9e7277bc2d86960e46c21281b06f..a225010b0f07cb66d468ba9f8b086d0d9ac64291 100644 GIT binary patch delta 19292 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 delta 19452 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 diff --git a/Doc/RomWBW Hardware.pdf b/Doc/RomWBW Hardware.pdf index a4502eaadcd22a617191a9d03481d1ea4ec9d1dd..00d4940ff3d6306d9ddcc12016f81f69214610c6 100644 GIT binary patch delta 30544 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 XOIHT_`Rm|IaXddA6O-|iY<2z*DmHP> diff --git a/Doc/RomWBW Introduction.pdf b/Doc/RomWBW Introduction.pdf index d57135e7616ea633222910e5e3e2ec08ec5dfa46..43e429cb855fe7adf28c621cb5ee2ff5ba806438 100644 GIT binary patch delta 580 zcmX@`k@dhw)(LI(r~Td-@U(re<=THh;&x%)r4>S{46@TfDif*O9|oPfYmD`3;*-dz|xb`1$zNn>o%;8T3@9tT34W@T*7t6Q-Rt`LEB- zQ&-|lmB0UNxs(^vB#ZO20~!sFaQN92aoJ9p)3N7<*S13^PM+JNeCgA?-2SV}mRG%7 zy3~`&N#mSn%<@2?GnNufO6{#b%0#xs7JDXZ=Q+u_ERMYCcQfHfndhONiD&DBy~R?3 z{Z*8Hs(Ny+n;KjDSkH7xHq+)$E9>`rZa==-)@1&s=X?wQw}0T2O?@C?xO~ei-?f`K zy?ifRQm#H9+p_Y>msTY+$sLz|@0k$3a^1YkW>1a=>rWAVc|Se5x-uq_OUre`Bp>bj zhJUYIm+(sNdXv3JcJI5Fw^RO{xVvcA(^pp#w%?!8b!$p>!p55ym(IO>V&R=n$uE2J zC$BQ!`Ff*8jM0sk8x`-E^8ECjGsQ46dhK?PGu4H4965J2CYxRT)%`ei&dO_hGB#^g z?7x5huzCEO7mJ#$n6_InG5$$rw=^_2G&3=qZkxs^1LG`DNMjUAFfnv9a&mUDbaQcY zauib*>42L&>$?q0fAb~5*7aALL8v~Pd;wU2*$ z(tOFNVot=SFPG!F4oVBy@Rr=T`Hxd#hERp4hvnhdr4{lLrXC(w_f)PsR<>I9j%~c8 z-v74w-(D{Z?yR`gGUwUDckX8%7)|;tl<=>*xa{1*A_j3GuaFt*Km4xudBU{wPsZzm z^VF3%Q|14k(KnsKqEa}od?8bEhv1xwCn8lEI|V8?PR(hZIC*ZR`;w=&x8+v*>VLiC z?LC>LC1B3v9lncIW)vH+xbkU#{Hu|(``M&pVRu?>I^8yJn!D-XhrhF0B$a3XUpGzX z#IkuFE}ya|3B_pd{&g%i%VRrB+SB@#`#rZGpKWV0f75fmh4Y<%wDcJj^vnpp^<`Pu zO_rr<880X9eXe)N=^?jkj#0tV@0F_SgYMcauRU=zSo~Dimyg$O)Y;}5uufHq@LV?a z{fxR-**r@PUBBtxYmDpvl54c@NnYUHs?w|tzw>=ub5GfBxbf!2t#g@A0`h)t{Bmr& z=T-ANUn69v@sw5Naq#mx?-N!}^|==IT36_E;2eFXX!BD`e7F94w4=xP>a6hGGFJKT z$18vEM_qccpxKIPyA>1TpJaA(Lt|4zL(A#5X^b*3&hmsbMxg{(V^?EKQztVg7Z)=p zXG13-*WBF9(Ad?))z#9~+{I48hOm-Y1v@*g;*!Lol8U0#G%ia+3lmc=RaIAiH!c9Q C8wZ2{ diff --git a/Doc/RomWBW System Guide.pdf b/Doc/RomWBW System Guide.pdf index d5b2a60e48b8e1fddd4ac195128c2b5ee1246280..a56c19ffc8cb1c93674aac054898ffef93efb670 100644 GIT binary patch delta 25239 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 GZ~s4XGyhQl delta 28893 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

J~_%-@lPOT%>Y0nDLJ1seNovHS_piG=b)OH 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 Spl`YLxaG9dcK__TTmBEoh!6At diff --git a/Doc/RomWBW User Guide.pdf b/Doc/RomWBW User Guide.pdf index 250ae4aa97ce58df019170693628bbecf75c2cf2..8da07e31204299b21de9aba3fbc5a4d7d01a8049 100644 GIT binary patch delta 25550 zcmai+4XkC=RmTemj3bo_Z6KzxPd+k*LO9=NpJ{{XJZ2zc3$4XMA=W?(Qb4K{DTXx1 z5zP>46*T3EZ2+m2wAuzRgzAXt7`4Sh5wNC~mIO862OVfYDUOw*Tt2VxS{^7^;@A}GB-^`Bq%U9m?(ji~D`L&-p{GRMJ z&tG-JGynA053Jq&sz*NX&J%vnzwwfX&Ux(*A934#XT5sw`j3BW-}-m|@#+1)``}}@ z9RIenyMvy2?x_RcI`ho6J?o!6@W@|nfAVwJzVO0}XCL_91Fu~2=yTg&_cu=*cJ;CQ z_P!y1^Bo60c=a#+>m4V4{rV$!?0@;@U;ES-zH{Kc{a0^1{mw_*3y*p7$QxgO)3<;A zOV4io+kr&W@4n!u-{1KBi^n|r{r(I8yZ+IWuKmop-#=%^ z(bqlv+ZX@FCm;XgY=l)`~1(|`qi(0`1YO0?mqj}Q!f6!JttrP$eUg~`D;gY z&;8`xXWe%GyLaF5{KuYr{_a=5{jmN2{--BAvHKVPVEe;=a^$D;o&R&{gNIz--FMn& zKk}u0fB3!s{?C8-@_`?ma?!p2{O&Wa{Ilb)c=O)dcl`OMKk^?RyY-i!{y=l^Cw}6J zFTUm8XLmjQ_+>AA_+S3$h=;y$`Gbd^u>GbN554DCKJ~V5yyL%4+w(+v-{*eyYnPt) z!edYU-GMiJ;@i*MyRrX*!;ijU_rZI2AAAtM@%JJ8{t&;1@_QJ+hd;3U;4P1xcXF4v zd7Cw-W@%fNZ98f0w6}lo{byWs%_VDZJY##26?I-@^C25MFW7R|JDasEe%7v9+dBLs z%i1baSe{a;up(<}gOzo@kuKb_t?%r=icW^tMcXEY<$x5HHF+uI>muc4t2DAUOEXx% z+)v%)g$}G+UwhpZw(lluWieUS6s5yT*<24Vo4T%)a5JuOxxgkhxsGeI+zy6w^>Jlk zoNlXB_BLTt2@5&slsT+x43_f3IGBp$uxdP#eiWw!Uv)95t!yVLb++R!tL;cQCF5#W zHUfkHU0v8tx~6p^sZ=6)Srv0ZS{_r^sjy}lB5WHesy17T^IyGGb!odRo1#+*E}OE} z1y*@7A*}MQlpSYP-L>O<{roo9S($W&b(I_Yn>?$Oa8p&8N_tyXxx!MG8a?7Z)m#8M zcVKqyQbGynIJC{UllexvvMqHZUE5_guI(D=4*Xx7U0ziDnG!*xlq&rJ)19DYx?JQ4 z_H`<7dDT?yk_-KyO!HvB>@Kg%RQgruM}&tqE)1^vUivR@v@$-eQfFNQ)LQSnZ2x8$YIY zuFTl~lKrh~E=0?8K%QJ7<*BM|F{xRY*(HrMwWtICi=wLa&gL-2&bZ7>Rp+P=8<+50 zlrv>si%@f#O|R-PfSpKd-n4~kGi+?5iY9OCR@tAUXF8D&VC`Iv`jP!P1`C5Qu?N6% zH9AF><*O1L2*3*UhJdl<>3o<(kq`J^WT{on6|h#$v%n)%52?tTS`}AOCmaFu~-uo|~@vcNto%eqz<30PApGIrbackobzH7km?5jg_Z<+5n5QkF9H|JaA! z_o6IKN#Wa?CM?Q!6Cx?uVybMx{Xber z9X&f>g-SKBsuE!Z)?`M6m_dY)ab01!C`a@E3Is_cJwvQJn~<2n*hEw|vG`e-iV~k$ zt#`mwO1LUBFEC8W61g$MTB2?YIe06KESr?;qJb5vZo)lV)rW&A3*d@-H#k&fiV!wJ>fR#%znVob+D6gBV zif%rR{V&+hy){1-SW?vjtkVlrm0fCtTfjPXD=WOuiOdB5s|vd%f&?t-rK)Ofnkdc+ zK~i71;^0hJOB`A`x~$B)zB5%o$RazzCKEwT&plwKze-|hA6J+oT@r)N#w}e5CPc+5 zkvgkYJ#e4YDayD{rN|L5Pd#v*re-VnPkgODM}|<>&V}09ith6TR+Yi3&XjYNb=`K| zG2yG8J6EDMWm@GMxBMddDtv_Ol{68q~VuC(52p3AZfTmLQz=YYpRnTyn)lGbsnbRev8#kLwq>?0;l`jVG@YHr!k_;@kmMh%Bb- zlnbbl8IdIo{1dpnvgm>T5lrf3A-`hkp{YD0C-y`xrP~3@I1GB|~DcgtZ-TSM(RzBMVvEO+3@4b3YBIMMI&iC55J3ZDH5s zID`Lq9F{i$xm4uDo>e|lMzkhe;KJH*;vT9Sf+vV8uB?HGTHq{^m)A2+^gP$ShnMY zk6?rw%ex{nX7f4>f32Yqv4Xk3T?rK>(k8W0C>30m>9`yzQZJB0s>kD8ghCu}salVL zrKLnW?3D-{xE6Z@%T=g>k$#>o@TVYBsbu1;XvmtO23gJ&8Q8}DYcQfDzGPlDo^?Ls7|H%F!iy;%@vzzDu(-aL8+T{zF`fk9|B<~pf2T05;gmFzwkZ=Z7jpQX-S2TO1 z@l_uJYgCO87Ld;}7B*z7bust@%0doKwSCkI)FllfwrK9-e1S_NN;2JiXYO~WR-OqP z&A3H9LJM1woY(pi^@wgNNAMqDt;P}L+N2dHQ0olfCiPRv|D)A}gScl&^$d$iy`DQh zvqqRqh-K9YU74cAttLr&xH18Te~Sw4Xha!E#>j|JI1(5o1@(2ng$+86G=~`0$VQF%g7Rop>NOdkolq`8=>NW}?%KkPdb#4bT!6bpK{vX+U{sdk2KeC?;@+Jc(2y5y8MQPAii0h*)EKu`Gq$F>la)kX;mx~gjEC&8V*s{tD^c@rBYMjeBf&t+S zi%}nf@?&&Qaj+}$Mo(ee`>Hz)enBQlVaQf%3?i!M3F5sXPb|Ao%cK7n1=2}*B7_ic zd6Nk(kxF2PA0`XLo@%QfHO?gSQO_hgR(~xDshap?F`SeUapgnxeX+aoYFC8xBCOoa zg#WD*;^WIeR^6FutuU1;gcUg=JtoTjT2E%aWdO7A|KNfpO)38p!{`FBp9Z6mPKA(; z0UO7~(O9t`YRt-3qMB)~1X&C zJu==jTC}w&$(kDVXThZ*Nf-`nU}PA@l?kmHN>RTv`NShNqeqxvH<#R*hKvNIlb|Z- z51j+%@}cI;H6)fc(E(<%$U$o^Ha22vgv`3-3(5F-n-O^}Q*ieAK4Gk3><7VO-v8$CNP&pe0Aess@pNE9ISTo?mMAUys;n{&&=nYj#hB4HO)xnw7(9%EO|T9o}{AJtNl z_pu5Ti?KK+q7HBe`!lLw7L$x!5$M_isdFi-qf^|*;ojMzSFh~cDWV;hl&f;V+XWey zRJ8_dah(>n1X!&l1Fi^}aiKwH9x^OI>LHqw#NDR8EaP~>U_wa5ZpVbTplJr?t3#*< z{*SAsiA=LC475TmFnh@nFio1qj_pW@307dUq!{Xrw7Tq$)=>?TA=0TWr`Fb~v%!2^ zJe{w$Do$DSRQcpeMD<&pS1Ny*CcA)HJ36?QlVmZZW_2+gB{*Qg|0Vl7Yd?TUr6D6Q zUS8OQuDDpB6HY53!P?g0{8?V1g)m^=8A*oOxKO%-%GS7yvcL#)^@z*5Z`Fl{FoCil z^Qys)gs?+X!r+>Nin%gxnQ=G~L4*B|?2mp^TQwetvYHM`jYVj~Mhs=qlno6xo*k`T z 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" +DLPSER_STR_DLP .DB "DLP-USB$" +; +; UART PORT TABLE +; +DLPSER_CFG: +; +DLPSER0_CFG: + .DB 0 ; DEVICE NUMBER (SET DURING INIT) ; +0 + .DB 0 ; DLPSER TYPE (SET DURING INIT) ; +1 + .DB $FF ; HBIOS CHARACTER UNIT ASSIGNED ; +2 + .DB DLPSER0STAT ; STATUS PORT ; +3 + .DB DLPSER0DATA ; DATA PORT ; +4 +; + DEVECHO "DLPSER: IO=" + DEVECHO DLPSER0DATA + DEVECHO "\n" +; +; +DLPSER_CFGSIZ .EQU $ - DLPSER_CFG ; SIZE OF ONE CFG TABLE ENTRY +; +#IF (DLPSERCNT >= 1) +DLPSER1_CFG: + .DB 0 ; DEVICE NUMBER (SET DURING INIT) ; +0 + .DB 0 ; DLPSER TYPE (SET DURING INIT) ; +1 + .DB $FF ; HBIOS CHARACTER UNIT ASSIGNED ; +2 + .DB DLPSER1STAT ; STATUS PORT ; +3 + .DB DLPSER1DATA ; DATA PORT ; +4 +; + DEVECHO "DLPSER: IO=" + DEVECHO DLPSER1DATA + DEVECHO "\n" +#ENDIF +; +; WORKING VARIABLES +; +DLPSER_DEV .DB 0 ; DEVICE NUM USED DURING INIT diff --git a/Source/HBIOS/hbios.asm b/Source/HBIOS/hbios.asm index f5d008a4..3d81382d 100644 --- a/Source/HBIOS/hbios.asm +++ b/Source/HBIOS/hbios.asm @@ -3034,14 +3034,76 @@ HB_CONRDY: LD (CB_CONDEV),A ; SET CONSOLE DEVICE #ENDIF ; -#IF ((PLATFORM == PLT_SZ80) & (MEMMGR == MM_SZ80) & SCONENABLE) - IN A,($EF) ; GET IO BYTE - AND %00100000 ; ISOLATE CONSOLE BIT - JR Z,HB_CONRDY_Z ; IF ZERO, BYPASS CONSOLE SWITCH +#IF ((PLATFORM == PLT_SZ80) & (MEMMGR == MM_SZ80)) +; +; ATTEMPT TO MATCH 100 CONSOLE ROUTING: +; IF (K8 EXISTS AND =0) +; Z80 CPU V3 BOARD DLP USB +; ELSE ROUTE BASED ON IOBYTE (PORT 0XEF) BITS 5&4: +; 11: PROPELLER (SCON) +; 10: SCC PORT A +; 01: SERIAL I/O BOARD DLP USB +; 00: VGA +; + LD C,($E8) ; POINT TO K8 PORT + IN B,(C) ; GET VALUE TO B USING IN (C) + IN A,($E8) ; GET VALUE TO A USING IN (XX) + CP B ; A==B IF PORT EXISTS + JR NZ,HB_CONRDY1 ; SKIP IF NOT VALID PORT (PRE-V3 CPU BOARD) + BIT 0,A ; CHECK BIT 0 + JR NZ,HB_CONRDY1 ; IF NZ, NOT SET, SKIP +; + ; USE Z80 CPU V3 BOARD DLP USB + #IF (DLPSERENABLE) + #IF (DLPSERCNT >= 1) + LD A,(DLPSER0_CFG + 2) ; GET THE DLP SERIAL UNIT NUMBER + CP $FF ; VALID? + JR Z,HB_CONRDY1 ; IF NOT, BYPASS CONSOLE SWITCH + LD (CB_CONDEV),A ; SET CONSOLE DEVICE + JR HB_CONRDY_Z ; AND DONE + #ENDIF + #ENDIF +HB_CONRDY1: + LD C,($EF) ; POINT TO IOBYTE PORT + IN B,(C) ; GET VALUE TO B USING IN (C) + IN A,($EF) ; GET VALUE TO A USING IN (XX) + CP B ; A==B IF PORT EXISTS + JR NZ,HB_CONRDY_Z ; BAIL OUT IF PORT NOT FOUND +; + AND %00110000 ; ISOLOATE CONSOLE BITS 5&4 + CP %00110000 ; PROPELLER REQUESTED? + JR Z,HB_CONRDY2 ; IF SO, HANDLE IT + CP %00100000 ; SCC PORT A REQUESTED? + JR Z,HB_CONRDY3 ; IF SO, HANDLE IT + CP %00010000 ; SERIAL I/O BOARD DLP USB? + JR Z,HB_CONRDY4 ; IF SO, HANDLE IT + JR HB_CONRDY_Z ; OTHERWISE BAIL OUT +; +HB_CONRDY2: ; PROPELLER + #IF (SCONENABLE) LD A,(SCON_UNIT) ; GET THE CONSOLE UNIT NUMBER CP $FF ; VALID? JR Z,HB_CONRDY_Z ; IF NOT, BYPASS CONSOLE SWITCH LD (CB_CONDEV),A ; SET CONSOLE DEVICE + #ENDIF + JR HB_CONRDY_Z +; +HB_CONRDY3: ; SCC PORT A + #IF (SCCENABLE) + ; FOR NOW, WE ASSUME THE DEFAULT CONSOLE UNIT IS THIS + #ENDIF + JR HB_CONRDY_Z +; +HB_CONRDY4: ; SERIAL I/O BOARD DLP USB + #IF (DLPSERENABLE) + #IF (DLPSERCNT >= 2) + LD A,(DLPSER1_CFG + 2) ; GET THE DLP SERIAL UNIT NUMBER + CP $FF ; VALID? + JR Z,HB_CONRDY_Z ; IF NOT, BYPASS CONSOLE SWITCH + LD (CB_CONDEV),A ; SET CONSOLE DEVICE + #ENDIF + #ENDIF + JR HB_CONRDY_Z #ENDIF ; #IF ((PLATFORM == PLT_SZ80) & (MEMMGR == MM_Z2) & SCONENABLE) @@ -4127,8 +4189,8 @@ HB_PCINITTBL: #IF (SSERENABLE) .DW SSER_PREINIT #ENDIF -#IF (PLDSERENABLE) - .DW PLDSER_PREINIT +#IF (DLPSERENABLE) + .DW DLPSER_PREINIT #ENDIF #IF (UFENABLE) .DW UF_PREINIT @@ -4249,8 +4311,8 @@ HB_INITTBL: #IF (SSERENABLE) .DW SSER_INIT #ENDIF -#IF (PLDSERENABLE) - .DW PLDSER_INIT +#IF (DLPSERENABLE) + .DW DLPSER_INIT #ENDIF #IF (UFENABLE) .DW UF_INIT @@ -8980,12 +9042,12 @@ SIZ_TSER .EQU $ - ORG_TSER MEMECHO " bytes.\n" #ENDIF ; -#IF (PLDSERENABLE) -ORG_PLDSER .EQU $ - #INCLUDE "pldser.asm" -SIZ_PLDSER .EQU $ - ORG_PLDSER - MEMECHO "PLDSER occupies " - MEMECHO SIZ_PLDSER +#IF (DLPSERENABLE) +ORG_DLPSER .EQU $ + #INCLUDE "dlpser.asm" +SIZ_DLPSER .EQU $ - ORG_DLPSER + MEMECHO "DLPSER occupies " + MEMECHO SIZ_DLPSER MEMECHO " bytes.\n" #ENDIF ; diff --git a/Source/HBIOS/hbios.inc b/Source/HBIOS/hbios.inc index d34e06b3..eb4749d0 100644 --- a/Source/HBIOS/hbios.inc +++ b/Source/HBIOS/hbios.inc @@ -397,7 +397,7 @@ CIODEV_ESPSER .EQU $0D CIODEV_SCON .EQU $0E CIODEV_SSER .EQU $0F CIODEV_EZ80UART .EQU $10 -CIODEV_PLDSER .EQU $11 +CIODEV_DLPSER .EQU $11 CIODEV_TSER .EQU $12 CIODEV_SCC .EQU $13 ; diff --git a/Source/HBIOS/invntdev.asm b/Source/HBIOS/invntdev.asm index 781d4893..1b86aab5 100644 --- a/Source/HBIOS/invntdev.asm +++ b/Source/HBIOS/invntdev.asm @@ -637,7 +637,7 @@ PS_SDESPSER .TEXT "ESPSER$" PS_SDSCON .TEXT "SCON$" PS_SDSSER .TEXT "SSER$" PS_SDEZ80 .TEXT "EZ80$" -PS_SDPLDSER .TEXT "PLDSER$" +PS_SDDLPSER .TEXT "DLPSER$" PS_SDTSER .TEXT "TSER$" PS_SDSCC .TEXT "SCC$" ; diff --git a/Source/HBIOS/pldser.asm b/Source/HBIOS/pldser.asm deleted file mode 100644 index 9f83df30..00000000 --- a/Source/HBIOS/pldser.asm +++ /dev/null @@ -1,176 +0,0 @@ -; -;================================================================================================== -; PLD-USB SERIAL DRIVER -;================================================================================================== -; -; THIS SERIAL DRIVER SUPPORTS THE DLP-USB DEVICE ON THE S100 SERIAL-IO -; BOARD. THE STATUS PORT IS ACTUALLY BITS 6-7 OF PORT C OF THE 8255. -; -; STATUS BITS: IDLE -; 7: 0=CHAR PENDING 1 -; 6: 0=XMIT HOLDING REGISTER EMPTY 0 -; 5-0: UNDEFINED -; -; TODO: -; -PLDSER_PPI_BASE .EQU $A8 -; -PLDSER_PPIA .EQU PLDSER_PPI_BASE + 0 -PLDSER_PPIB .EQU PLDSER_PPI_BASE + 1 -PLDSER_PPIC .EQU PLDSER_PPI_BASE + 2 -PLDSER_PPICTL .EQU PLDSER_PPI_BASE + 3 -; -PLDSER_STAT .EQU PLDSER_PPIC -PLDSER_DATA .EQU PLDSER_PPI_BASE + 4 -; -; ACCORDING TO THE S100 SERIAL-IO BOARD CONVENTIONS, THE PPI IS -; CONFIGURED FOR MODE 0 WITH A=INPUT, B=OUTPUT, C0-3=OUTPUT, -; C4-7=INPUT -; -PLDSER_PPICFG .EQU %10011000 -; - DEVECHO "PLDSER: IO=" - DEVECHO PLDSER_DATA - DEVECHO "\n" -; -; -; -PLDSER_PREINIT: -; -; TEST FOR PRESENCE -; - XOR A ; CLEAR ACCUM - LD (PLDSER_PRESENT),A ; PRESET TO NOT PRESENT - CALL PLDSER_DETECT ; CHECK FOR HARDWARE, Z=PRESENT - RET NZ ; ABORT IF NOT PRESENT - OR $FF ; PRESENT FLAG - LD (PLDSER_PRESENT),A ; STORE IT -; - CALL PLDSER_INITDEV -; -; ADD OURSELVES TO CIO DISPATCH TABLE -; - LD D,0 ; PHYSICAL UNIT IS ZERO - LD E,CIODEV_PLDSER ; DEVICE TYPE - LD BC,PLDSER_FNTBL ; BC := FUNCTION TABLE ADDRESS - CALL CIO_ADDENT ; ADD ENTRY, A := UNIT ASSIGNED -; - XOR A - RET -; -; -; -PLDSER_INIT: - LD A,(PLDSER_PRESENT) ; PRESENT FLAG - OR A ; SET FLAGS - RET Z ; ABORT IF NOT PRESENT - CALL NEWLINE - PRTS("PLDSER:$") - PRTS(" IO=0x$") ; FORMATTING - LD A,PLDSER_DATA - CALL PRTHEXBYTE -; - XOR A ; SIGNAL SUCCESS - RET -; -; DRIVER FUNCTION TABLE -; -PLDSER_FNTBL: - .DW PLDSER_IN - .DW PLDSER_OUT - .DW PLDSER_IST - .DW PLDSER_OST - .DW PLDSER_INITDEV - .DW PLDSER_QUERY - .DW PLDSER_DEVICE -#IF (($ - PLDSER_FNTBL) != (CIO_FNCNT * 2)) - .ECHO "*** INVALID PLDSER FUNCTION TABLE ***\n" -#ENDIF -; -; -; -PLDSER_IN: - CALL PLDSER_IST ; CHECK FOR CHAR PENDING - JR Z,PLDSER_IN ; WAIT FOR IT IF NECESSARY - IN A,(PLDSER_DATA) ; READ THE CHAR - LD E,A - RET -; -; -; -PLDSER_IST: - IN A,(PLDSER_STAT) ; READ LINE STATUS REGISTER - CPL - AND %10000000 ; ISOLATE DATA READY - JP Z,CIO_IDLE ; RETURN VIA IDLE PROCESSING - OR $FF ; SET A=$FF TO SIGNAL READY - RET ; RETURN -; -; -; -PLDSER_OUT: - CALL PLDSER_OST ; CHECK FOR OUTPUT READY - JR Z,PLDSER_OUT ; WAIT IF NECESSARY - LD A,E ; RECOVER THE CHAR TO WRITE - OUT (PLDSER_DATA),A ; WRITE THE CHAR - RET -; -; -; -PLDSER_OST: - IN A,(PLDSER_STAT) ; READ LINE STATUS REGISTER - CPL - AND %01000000 ; ISOLATE OUTPUT RDY - JP Z,CIO_IDLE ; RETURN VIA IDLE PROCESSING - OR $FF ; SET A=$FF TO SIGNAL READY - RET ; RETURN -; -; -; -PLDSER_INITDEV: - ; INIT THE PPI. THE PLD ADAPTER ITSELF HAS NO - ; CONFIGURATION CAPABILITIES. - LD A,PLDSER_PPICFG ; CONFIG 8255 PORTS: B=OUTPUT - OUT (PLDSER_PPICTL),A ; WRITE CONTROL WORD - RET -; -; -; -PLDSER_QUERY: - LD DE,PLDSERCFG - XOR A - RET -; -; -; -PLDSER_DEVICE: - LD D,CIODEV_PLDSER ; D := DEVICE TYPE - LD E,0 ; E := DEVICE NUM, ALWAYS 0 - LD C,$00 ; C := DEVICE TYPE, 0x00 IS RS-232 - LD H,0 ; H := 0, DRIVER HAS NO MODES - LD L,PLDSER_DATA ; L := BASE I/O ADDRESS - XOR A ; SIGNAL SUCCESS - RET -; -; TEST FOR HARDWARE PRESENCE. THE PLD ADAPTER STATUS IS EXPOSED THROUGH -; AN 8255 PPI. DETECTING THE PLD ITSELF IS BASICALLY IMPOSSIBLE GIVEN -; THERE ARE ONLY TWO STATUS BITS WITH VALUES THAT SHOULD NOT BE ASSUMED. -; SO, HERE WE JSUT CHECK FOR THE EXISTENCE OF THE PPI ITSELF WHICH IS -; USED TO INFER THE EXCISTENCE OF THE PLD ADAPTER. -; -PLDSER_DETECT: -; - ; WE SETUP THE PPI TO WRITE, THEN WRITE A TEST VALUE - ; TO PORT B, THEN READ IT BACK. IF THE PPI IS THERE - ; THEN THE BUS HOLD CIRCUITRY WILL READ BACK THE TEST VALUE. - LD A,PLDSER_PPICFG ; CONFIG 8255 PORTS: B=OUTPUT - OUT (PLDSER_PPICTL),A ; WRITE CONTROL WORD - LD A,$A5 ; TEST VALUE - OUT (PLDSER_PPIB),A ; WRITE IT - IN A,(PLDSER_PPIB) ; READ IT - CP $A5 - RET -; -; -; -PLDSER_PRESENT .DB 0 ; FLAG FOR HARDWARE PRESENT \ No newline at end of file diff --git a/Source/ver.inc b/Source/ver.inc index b6c80fbd..6768e9d3 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,7 +2,7 @@ #DEFINE RMN 6 #DEFINE RUP 0 #DEFINE RTP 0 -#DEFINE BIOSVER "3.6.0-dev.42" +#DEFINE BIOSVER "3.6.0-dev.43" #define rmj RMJ #define rmn RMN #define rup RUP diff --git a/Source/ver.lib b/Source/ver.lib index 8918d3ce..7a815ab0 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 6 rup equ 0 rtp equ 0 biosver macro - db "3.6.0-dev.42" + db "3.6.0-dev.43" endm