From 9a3ef54f53b378e5d331caa0a3251bf375f807dc Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sat, 21 Jun 2025 15:47:26 -0700 Subject: [PATCH 1/3] Update cfg_MASTER.asm Change .SET to .EQU where they occur to allow TASM builds to succeed. --- Source/HBIOS/cfg_MASTER.asm | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Source/HBIOS/cfg_MASTER.asm b/Source/HBIOS/cfg_MASTER.asm index 01b87897..6e458c29 100644 --- a/Source/HBIOS/cfg_MASTER.asm +++ b/Source/HBIOS/cfg_MASTER.asm @@ -482,20 +482,20 @@ EZ80TIMER .EQU EZ80TMR_FIRM ; EZ80: TIMER TICK MODEL: EZ80TMR_[INT|FIRM] EZ80IOBASE .EQU $FF ; EZ80 I/O BASE ADDRESS FOR EXTERNAL IO ; ; BUS TIMING FOR PAGED MEMORY ACCESS (CS3) -EZ80_MEM_CYCLES .SET 3 ; MEMORY BUS CYCLES (1-15) TO APPLY, IF EZ80_WSMD_TYP = EZ80WSMD_CYCLES -EZ80_MEM_MIN_NS .SET 100 ; CALCULATE AT BOOT TIME THE REQUIRED W/S OR B/C, IF EZ80_WSMD_TYP = EZ80WSMD_CALC -EZ80_MEM_MIN_BC .SET 1 ; MINIMUM BUS CYCLES TO APPLY, IF EZ80_WSMD_TYP = EZ80WSMD_CALC +EZ80_MEM_CYCLES .EQU 3 ; MEMORY BUS CYCLES (1-15) TO APPLY, IF EZ80_WSMD_TYP = EZ80WSMD_CYCLES +EZ80_MEM_MIN_NS .EQU 100 ; CALCULATE AT BOOT TIME THE REQUIRED W/S OR B/C, IF EZ80_WSMD_TYP = EZ80WSMD_CALC +EZ80_MEM_MIN_BC .EQU 1 ; MINIMUM BUS CYCLES TO APPLY, IF EZ80_WSMD_TYP = EZ80WSMD_CALC ; ; BUS TIMING FOR EXTERNAL I/O ACCESS (CS2) -EZ80_IO_CYCLES .SET 4 ; IO BUS CYCLES (1-15) TO APPLY, IF EZ80_WSMD_TYP = EZ80WSMD_CYCLES -EZ80_IO_MIN_NS .SET 250 ; CALCULATE AT BOOT TIME THE REQUIRED B/C, IF EZ80_WSMD_TYP = EZ80WSMD_CALC -EZ80_IO_MIN_BC .SET 4 ; MINIMUM BUS CYCLES TO APPLY, IF EZ80_WSMD_TYP = EZ80WSMD_CALC +EZ80_IO_CYCLES .EQU 4 ; IO BUS CYCLES (1-15) TO APPLY, IF EZ80_WSMD_TYP = EZ80WSMD_CYCLES +EZ80_IO_MIN_NS .EQU 250 ; CALCULATE AT BOOT TIME THE REQUIRED B/C, IF EZ80_WSMD_TYP = EZ80WSMD_CALC +EZ80_IO_MIN_BC .EQU 4 ; MINIMUM BUS CYCLES TO APPLY, IF EZ80_WSMD_TYP = EZ80WSMD_CALC ; ; APPLY BUS CYCLES OR CALCULATE CYCLES BASED ON DESIRED PERIOD -EZ80_WSMD_TYP .SET EZ80WSMD_CALC ; BUS WAIT STATE CONFIG: EZ80WSMD_[CALC|CYCLES] +EZ80_WSMD_TYP .EQU EZ80WSMD_CALC ; BUS WAIT STATE CONFIG: EZ80WSMD_[CALC|CYCLES] ; ; BUS TIMING FOR ON CHIP ROM ; -EZ80_FLSH_WS .SET 1 ; WAIT STATES FOR ON CHIP FLASH (0-7) -EZ80_FLSH_MIN_NS .SET 60 ; MINIMUM WAIT STATES TO APPLY TO ON-CHIP FLASH, IF EZ80_WSMD_TYP = EZ80WSMD_CALC -EZ80_FWSMD_TYP .SET EZ80WSMD_CALC ; WAIT STATE TYPE: EZ80RMMD_[CALC|WAIT] (CYCLES NOT ALLOWED) +EZ80_FLSH_WS .EQU 1 ; WAIT STATES FOR ON CHIP FLASH (0-7) +EZ80_FLSH_MIN_NS .EQU 60 ; MINIMUM WAIT STATES TO APPLY TO ON-CHIP FLASH, IF EZ80_WSMD_TYP = EZ80WSMD_CALC +EZ80_FWSMD_TYP .EQU EZ80WSMD_CALC ; WAIT STATE TYPE: EZ80RMMD_[CALC|WAIT] (CYCLES NOT ALLOWED) From 31aa305522b45fc55076ae34e8a67e4190dfa7ea Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sun, 22 Jun 2025 14:36:43 -0700 Subject: [PATCH 2/3] Rationalize Font Files - Consolidated font files from 6 to 4 by eliminating redundant files. - Use code page 437 for all fonts (except 8x11). --- Source/Fonts/Build.cmd | 2 +- Source/Fonts/Makefile | 12 +++--------- Source/Fonts/font6x8.png | Bin 5826 -> 4783 bytes Source/Fonts/font8x16.png | Bin 9423 -> 9515 bytes Source/Fonts/font8x16u.bin | Bin 4096 -> 4096 bytes Source/Fonts/font8x8.png | Bin 5731 -> 6341 bytes Source/Fonts/font8x8u.bin | Bin 2048 -> 2048 bytes Source/Fonts/fontcga.png | Bin 9038 -> 0 bytes Source/Fonts/fontcgau.bin | Bin 4096 -> 0 bytes Source/Fonts/fonts.txt | 37 ++++++++++++++++-------------------- Source/Fonts/fontvgarc.png | Bin 3154 -> 0 bytes Source/Fonts/fontvgarcu.bin | Bin 1024 -> 0 bytes Source/HBIOS/Makefile | 5 +++-- Source/HBIOS/cvdu.asm | 16 +++++++++++++--- Source/HBIOS/vga.asm | 4 ++-- Source/HBIOS/vrc.asm | 4 ++-- 16 files changed, 40 insertions(+), 40 deletions(-) delete mode 100644 Source/Fonts/fontcga.png delete mode 100644 Source/Fonts/fontcgau.bin delete mode 100644 Source/Fonts/fontvgarc.png delete mode 100644 Source/Fonts/fontvgarcu.bin diff --git a/Source/Fonts/Build.cmd b/Source/Fonts/Build.cmd index ee112570..6f379618 100644 --- a/Source/Fonts/Build.cmd +++ b/Source/Fonts/Build.cmd @@ -8,7 +8,7 @@ set PATH=%TOOLS%\lzsa;%TOOLS%\fonttool;%PATH% echo. echo Preparing compressed font files... -for %%f in (font6x8 font8x8 font8x11 font8x16 fontcga fontvgarc) do call :genfont %%f +for %%f in (font6x8 font8x8 font8x11 font8x16) do call :genfont %%f goto :eof diff --git a/Source/Fonts/Makefile b/Source/Fonts/Makefile index 8ea48a82..c1f3d95a 100644 --- a/Source/Fonts/Makefile +++ b/Source/Fonts/Makefile @@ -1,8 +1,8 @@ OBJECTS = \ - font6x8u.asm font8x8u.asm font8x11u.asm font8x16u.asm fontcgau.asm fontvgarcu.asm \ - font6x8c.asm font8x8c.asm font8x11c.asm font8x16c.asm fontcgac.asm fontvgarcc.asm + font6x8u.asm font8x8u.asm font8x11u.asm font8x16u.asm \ + font6x8c.asm font8x8c.asm font8x11c.asm font8x16c.asm -OTHERS = font6x8c.bin font8x8c.bin font8x11c.bin font8x16c.bin fontcgac.bin fontvgarcc.bin +OTHERS = font6x8c.bin font8x8c.bin font8x11c.bin font8x16c.bin TOOLS = ../../Tools @@ -26,11 +26,5 @@ font8x11c.bin: font8x11u.bin font8x16c.bin: font8x16u.bin $(BINDIR)/lzsa -f2 -r $< $@ -fontcgac.bin: fontcgau.bin - $(BINDIR)/lzsa -f2 -r $< $@ - -fontvgarcc.bin: fontvgarcu.bin - $(BINDIR)/lzsa -f2 -r $< $@ - %.asm: %.bin $(BINDIR)/bin2asm $< > $@ diff --git a/Source/Fonts/font6x8.png b/Source/Fonts/font6x8.png index 77bf355f6c42622d9cd757a015a29c3d61135438..2c1c32086d83b43c4b378c60802f4ba532b4f98d 100644 GIT binary patch literal 4783 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 literal 9423 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 CxOuz) literal 4096 zcmZu!y^7;j6uwNMN;nfpaoIRt0{Z}h1+5^$3n8x%2&u%(qBJ77atsmLnI`Wr50EC0 z5D1uEP-UhZ1miec&31z;?-b@b-}$-Ml9OXw()qdP{~lc%a|+G%@7LFV-CSQc!l|9R zbMDX9)hby%IzXMBD}J8UJRS-+$z%15s^W zmZb^^`{w3G1&o=DCh1}YScnD@Zmd;}lV=k=+r`sN_|tTnrt@7nn#4@7_YIch&ArN- zs}I|~+iyQyiM%-*O&ixtM`wcDoOIj9dko(Q489C+?*YGl2@t$)+oIlW>bPxv#=xMI z319Rh+s}qd99Nu0P+lyrgn@e9Zgvl$T6V$thmF8z z`Brt-Z4~8Egm{G?kMnA^a&bHn+@Toz9v|6R?puJ$yOz`u1pO_12z-8Sj`|@LBQ^B% zAh^#X2U8$zo{et9CjhZH0-->Ej0k;w4cXglHtVIvn^hnqelK`lzC(n| zcV#a4Q$@_OteymSW$~tdQxv7T;PGNBeAvVC+Ym2VVsmN_y(ggh74N#4tZ&;@x7~It z@87myxbXJc_VLl(-Q9V9+de$(Hn%Vs?32l0pW-WP=s5aE+`GFv;sqT40zp3b^~>dK ze5_CNujT_Ru}}M;fLeO#`*{pYG>%u=KafI+ z-I1Rr$)4JM5!TO9jN5r68iIb!FIqF>jB5O7c9;O@#D_eZ4Fw7EEN$&L=&w+Jq&47c z_P-1`wS1^QsLV$TXa|@%g@Zg!bj7-)oO>?Cx2)BBV-OjKmmclYazF1#1z8LAXPi2q zQtiaAr~!I-FF&9<>VON~Pa}joqmV};PmfeZKi`N)GFJD?d>!=q2fPt5!4=C(DkeHE zUS&jr8{{tv!~(E9sAsZRnL&T7%m7C#4seYB0S=|qK6qQi;2?d_H|Q7W>*F-n`nW+E zGYU`l2M!AZoaFob)`WpZ@sK-2pov2`h3C-WsIO0mDeu30+jakF|2G}L;kO}q?=P0u zj8ne){iOZ|KE($lAs92g%tjuk1oZ1kct3wy|6m`Z$Z&i6`GEfF?=PU3xEQ$F&tFf> zf+ZLVPUMAR_NA-SIw*1TTtv#I-VJ<)kp;M>Rad0}GX_}I3I6$a!_Obz4?lnZGW<~E{SQ11XiqlabbJEr_=<~q z;Rg7r{4NUeUe4cny*uIWqR_i47jX6q`g_sSWAIP?e(w2-^Euqpa6c&B-=6yil?n2G zz321&xefB_-zy&v-(MxKd$x>uoecS(OwiAA2lMGDj#~l8J7n_Aw@dH-!y*a#u-1=breR3pD}a0-BT?E= hnuykOjI=`6Ei$2Xy;_jatb>D3L7W~Mh5^YV{{jq=*oOcB diff --git a/Source/Fonts/font8x8.png b/Source/Fonts/font8x8.png index 7ddd1189aaf86aca6722e5ad013a0584d69259a7..df1ab91786b3cb8b9abe4ff40aa5fc0913e9751e 100644 GIT binary patch literal 6341 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 T1!M32KLNSmaK7y9^&kHQw94da literal 5731 zcmcIo2{hYjzwRt*T5WaOqNTW<7Gtj(QY10$EGDr;rKPs$SZZpisVxbmGqgHG(FP?# zbRnp1L_;-yjJEb@rk2*4#1<1oLWH8^M(eNr=Ig!ZyEEsW6X!_Y{rNq==l8ttul9CU z+qWuj-Lz@bcEopIJ8astd1CGF1L+T&Tx%0~RpSk^H z9XzSmBD1&t+Lx!!D(*R68Ll;!BM)hO_EmQBvcu1uP}RqWw>>`0FyopwL(RpW4?O0I zR_}RaAKYyCHOhAz<`?qQy}(Xbwh`_?gt?c{hAJ@dt1qP^r*7<^4T|9B(+rj)Rwci= z@GJ92CDHA_;mVO#Lxwx5(u7*0MHZ%!?a$_nQ-W!mBu@GTsoJAQt=6_&_R*-A*s+ z@0rj~C#=ta)1Ns{08}t!C!>m6wVI(Exx+6g+g|TRx`aR$s$daXaUqK4H#IYH)(a=} zgAMVWOO&Onvm&;!$ldqKExG*Z#iYH`{YUq7?pte+k2Lr4XkPv^rcNbR=}x}!UtlSp z$4k+Ze#SG9t!C>@^*ZRA|}lXtCN?pf!)h-`ROL|1Wu+@^6AtAL}%03h~h~ zD_O#@gp0QO)~6Oc0gmkm9hE!WrmJ+n&NF1xfsh35ixViEeTF&TYN|Lls{`{Wc1(EP z0`&ROq(Etn@Da7Acd7w3Mctmli*k=*tFSbeZRDV1xVom0L#R*xHfqPotH^tkrQF+j zuI4XiNqTh7bEPwdPk_u{^Qe|%?d(Z#gUZ}QCf)-p9Q~PZ1^HlUkF`2xT*3F7Y)1b} z^ z75^Cv^rVheXlaFHJH6`28EbL=d7XwP?QNnMEyE@m!&p{Zp1;*qoS-+gQ2)QyAuT(H z2}3)&At&Z20nqc@mUBldwNob1xuwI(7n`3V8yU7pPA! zL*u^R8~1%i2tzyE>0i=#gP>6#3Gllw@W0Kh?ZiF_&0aBq{wf~X@n@zI1BEdp|4~^K z2*2$vTs%v2t1lLEB8TxjE0$ZFv{#@4_d!qLQkoye9NV0<*Y0Ph5lC!XK0yO znQ!}>uz-nHik|vKnr~vh!Ailj*=g)U`YceCjD zsjC7=?IIeViQr~LV13Z084}rGM=;gdk6mBI1+h}~C3fLX+^wl&y|%=}nsaE)B9In+ z!!UX0A)+*hgM|E~$jiQ7uD}7Tb8qTkf z%ygl_N^1E*;Nl-+6ur90oJ%&c>q@zx0koPN5M7?vG`w`aPqX)Qbd_$j5iUhbi`SiZ z2-Kn~;k}lsz*aTl0(nD5FP&lxraC}n=(yr71!dM;Xi^{-^9nR@H|LeFD}Qe zKveuOpH{#;+#V1rJWIbU$znV)ekXD*qpBU(6;p{xH~(LNmVrh}+J9t@s#fu*s&7yp zNE%s{US8D1Os6(xtP+%0oCKB{|LiK-nVNhTaUfK+vtZWD;2V7H0cO@?Far9Dp|i7B z#|KYElXW1?uy#LQq5|f`u5~0|=rP@pIuU)=h+S+hF|gz1c^^Y9AK9>*9%P#~^hfK= z_s{e#?O=rM5}Z{`y}O7HN1w%aoWJ7hxsDqY#~cZNq+)}LvTbfcN0!NyJsV?E z61_IvS1_WlbP}TCO0KcOU$FgdK9~etnDes;GIa#3w5&kIqBZCebQMBSL~(|<*ORve z>Md)htnts*%KUrS`5d0S#^1f%{UPy#X@9MQZ?b{?d!+ZsXN5`hhn!Gh@?4j|4l>k* zeC`xm)w^2_=-vyY7uEMqZINgB>3tzMAKmb6!^vzhx%0+QZ_k9EP^X1teiYar3u)l+ z-ub>9MSdlgcpIjt@0gi7=)jaOI%p~HGBif@Cms1J4h)nu5m19lmMi@{S$dOI!R{c3 zg3~TxaqvAT2|Cq>X$5EVZWTezL?b!VX@s|o6zAM6SHd=$gp$;|RoVEl&elih^3VvNp6%AcvbL6<;XQ zfYB%Na?=cd--A-r!;1y&YVOBOf!p(v-%~*&L}R2NWFatF8i$o(rb{ZHfVI{Vq$nIT z!U^|l44ooaNhx54d{p!gs%Y#&I?TU{Um%~1T@K})o3X48Y*LkaA<>$n6T;bRCWoo_ z;9}R(c34z-mb>s!qg-7}6) zem{`y%<` z?itTxiv#wofGk$F*DQ5v(Vl*fPe9(pqd|-MLJ^hZ+AEm5^f<+7l0>xt&DkWbpG1`x zdYiNxyMDQWoC2%lJLE-&Vj)GVT7ABFbR^Lygh}vqT)wiQ$7QOlno4c@bKJcrOB5UN zE77|x4TnO2ve`zJa}%T^ogwvYMS~`&?dwa*v*dlTB%3^{o z5l`I;O5C0xeeDahThU=j?^L_D0zzYYy)JxaOApj+odThilR{ok^9oiy5uQ8f% zd7o8h`)_%nwSAu3KOe#ch) z=;NkA3lu#z8)|AtOD7$vmUjt13#QUMZh|xN?dR?vXA&kduk#n(?4KgpWA5m9Tfsv^ z4WF*m@BBvzqTyCp!RB`;9`x$!Cv(wOiUU3FiTMX|6vXYF2{l=_)DoJSEy5ff?ap3V z@I-G0OXC%6-L`w<(d1ukBg+5{DlEVHlqWT_@aU?0QeiT~WR9Ijp{9ey*rZtn;xmzH zuVbp2W9ZX8U2S-8VW3*OvnWt>(&pRnusFTt@~kVMeQ)fybBwG#IB$UQF~Kdbu_&6V z3`DKb$kKT`t5(VrAg6f#1t8z_zEW8nr3T)d_t16!{ieKDLTi6s$jJFoc{YcVzA!`N zJ%!U?>;_}~0yUaia=5J=oPAxE4vFACu8W5~Tr4c!uQJ+rn_gS>37A_t0=VQ>+sCRM zZDJWvUxlmJs;adoOOqFS14p&M%0%1v_y$Dao~ zO23NG9FcQ1spkvJz7Wt6+BNj|r3ShoAC5;o3r3sPmeI~r>q~#W&><~Rs=@vB=QkpjU)jjw!PEVh|Xu>!YRs> zKGX!H%uT#h>JzOI8vz&CL{PRU`A%`Mi1T`-u%N_#Pdprh!Fjc!JDyCQo5%6?RwzBLIA(uEZ|Je?h$yAqHBL@AvxG_mWPD3x9H)Pym#n0u3BCPmnt)1ee1w4 zje`WXGMx9JzK845$WLqbgBu}}e7$xH%yY>j#csPZ@#)al5i$U&Y^exdDA8 zXXQXy&W?!1JpyQSO4Sm4l?FIGr>4>^ ziTqjT-qZTon=P47K=ikZmUx4U4jr$YY3$x%+sX8D{yT?;lLy^b`Fwyr0*>GjbmWH1yqUMpj zttWjWC{z)hTbwJI8~n^Mpp`4htx4a1Ci;&Fa`Y?BGSdWbh4z`QhP@I>fCi;?$9!>@ zsZUHqgUX4b4L2q%RX!E{LHOl-r~WpTsl43roY7{{3^+Pbv^i2++vBG5P)q1odm~rP zXK_L&ErV@q6jE`aoK7%KOTOb*TtW#l1>UtjO_w~``x|OKKjyvyU zm9N!RW{fattuEsgFJp`IjVm85PyLf}_aO#<&=%g8!I)V!FG%mSil`3M8q`VgoUc^v ztUzOzfj`aIU83R1%5$Y3ttVDlAnQnBB=@dZ6TSezrTpU{8YGfuTRu36f4Fla`H-0& zkI}M%cJAjh-pAU|u<=+*k0uH>dB0&Y@926jK_sp}oq!2weU2B){Mj0dCh1VjDG*Nt7}Os2@?8MT( diff --git a/Source/Fonts/font8x8u.bin b/Source/Fonts/font8x8u.bin index 17f16d2546f4015e38e725e900591cf3f421dcc8..0abea4efce7a0add962df1672e26eb910d67cdea 100644 GIT binary patch literal 2048 zcmYjSy=xpt6o0HYVv9u@jstITrx&GpRun~^2ogzdagrxR@sCJ^Wr&0*P%0oQ%ZpR!m!!6}-d0qe9-o{X zpO#CvKKb?F;9#n>)+#W;+VYx|-s zATTP37$~CI>(|d4jRtkMk}OO9o^rIt7^?@h65(tLfjEWOy zfTHbkI|AnT3*ag}EGiHQQX@g^l_81@o``~Os+=4KCqH}QPLJY#{KMhl3;2^(Pe|C8 zf~4>~k9k>ABpF0PH!j3bX^w*MU$u#ccLxY zkpS%5dNNoC&}3uSV}16gqrm!;u!s2dP~Eb0CwdMVbw^&a0qTnUAqFU7BVp5HJQxff z5);jE-D1|8ab1>YG)4GnI;CCC-gRioX1pnhPPRWk2H;ZI+Av2sUA;zQDetYU++$j& z@VDSNk9xhwmNux9->@?P`b(~OK9+Y^!*GJmiEaK4??9kq$pyG$xm*{b7l?NN{Nn_P zSbLlg(X-XnyC?uX9E~2hi%f@1QWpitt2S!*ps}m>2)N20*yfLh>ma8}j(CW29C=Q@ z5Mv>H?6$GW;D&d%f5c!YA|^;_UnB7 zIz9|V<=6GB9n>qwf*y=)>yqLkVUGAVB7}|VO70VYNmE8-90y^)>wozCtKZxD-SEQ~ zKkYlL$Y()~s2??;g>Td+3JXBxu-Xj?wpyUm~GZM&bSEh_rj z>hrGaTF!i?*-o>0ZTal2qMOaiFKAe|{_MVHvu*vtA2VTp9#6ZLm%toV6&EtIdaMa< z4b0-@WerO;Ft1Wy8D_&39`{`5I6s}2vRJ!X6sU+qSLI!k;eNbQiyTH7Ad^;P$ z5aVVtxNjO<^a_rS#+V!Y`QiTvjmfhd+n{VF%&ivqE^%~!b%H74<=Y|d3puq?1+WYI F`47z0jJ5y( literal 2048 zcmb_duXEc<5MB@35EL*76bJ|~5GW7`I1q49Q)FnUc@tpt zCZNF3z~F%Z&6|M!0hu=f1qW`Le&3$#X*wTHW+@a+9cuG))Zg=2+h&5*4+DY%Wf}A_?WX<9 z8=)}i>4+K5KQb6}0pemr`lhbnqykM*t{>VRSQi?hv}BzJj|TVx$Kdm_ z%o7@H_lS=Tm)c-Hky(YxHNJYZEL!G7L6ppxtk z_D4ATdhxV;gQttHXPkQF52_EF&o+Qgcu@Q0@=5KEeHKtiVmh<%`%9drqqaSosVP6O zQd6de_m9IAao=%tYxXaw?h7bd?IU^JFVOwew|C4$l|WhDLiZ5~B3~xRgk9G!-6eLV z>#rZNt2mXsVdP?7ZL0Z&@PnZ&|Bkkr_byM_&D}63|7DkUX2rJP{Hcuobn@( z#k>ENc{yj{Zf^MH^)TYmp8On6gtBo5)71mhf8QaL*wB-!37R7E(+^e423G;^BoVvQ|JHy diff --git a/Source/Fonts/fontcga.png b/Source/Fonts/fontcga.png deleted file mode 100644 index 3addedd65c370eee07199b3477031a24c2842eda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9038 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 A6951J diff --git a/Source/Fonts/fonts.txt b/Source/Fonts/fonts.txt index 2b24f378..8f4d8feb 100644 --- a/Source/Fonts/fonts.txt +++ b/Source/Fonts/fonts.txt @@ -1,12 +1,5 @@ Font files for ROMWBW. -8x8: 8x8 cell, mostly IBM CGA, first 16 differ, thin font -8x11: 8x11 cell, possibly VT-100? -8x16: 8x16 cell, IBM MDA -CGA: 8x16 cell, IBM CGA, normal (thick) CGA font, rows 8-15 are unused padding - -There are multiple fonts associated with ROMWBW supported hardware: - Board Driver Chip -------- -------- -------- ECB-SCG tms.asm 9918 @@ -17,25 +10,31 @@ There are multiple fonts associated with ROMWBW supported hardware: MBC-VDP tms.asm 9938/9958 RCBUS-VRC vrc.asm PLD RCBUS-TMS tms.asm 99x8 - XOSERA xosera.asm ? Name Glyph Cell Size Comp Board & Display Mode ------------------------------------------------------------------------------------------------ font6x8 6x8 8x8 2048 1094 ECB-SCG, MBC-VDP -font8x8 6x8 8x8 2048 1034 ECB-VGA3 (80x60) +font8x8 6x8 8x8 2048 1259 ECB-CVDU (CGA), MBC-VDC (CGA), ECB-VGA3 (80x60) font8x11 8x11 8x11 2816 1252 ECB-VGA3 (80x43) -font8x16 8x14 8x16 4096 1466 ECB-CVDU (EGA), ECB-VGA3 (80x24, 80x25, 80x30), MBC-VDC (EGA) -fontcga 8x8 8x16 4096 1280 ECB-CVDU (CGA), MBC-VDC (CGA) -fontvrc 8x8 8x8 1024 650 VGARC +font8x16 8x14 8x16 4096 1466 ECB-CVDU (EGA), MBC-VDC (EGA), ECB-VGA3 (80x24, 80x25, 80x30) ----- ----- - 16128 6776 + 11008 5071 Notes: -- The CGA font is roughly equivalent to the 8x8 font, but padded out to 8x16. Scan lines - 8-15 are unused. The CVDU driver (8563 chip) always uses fonts defined in an 8x16 cell. - When the CVDU is configured for use with a CGA monitor, an 8x8 character cell is used, - but the font definition must still be 8x16. The CGA font is used for this. +- Compression of the 6x8 font is disabled because the TMS driver must + reload the font when CP/M is warm booted. There is no memory area + where the decompression can safely be done at this point. + +- The 856x GDPs always use 16 bytes per font character. The CVDU + driver inserts dummy bytes as needed to utilize the 8x8 font when + selected. + +- The 8x11 font is not typically used and only supported by one + board. It is probably not worth the space of storing it and will + probably be eliminated in the future. + +- All fonts are in code page 437 except 8x11. For inclusion in HBIOS the .bin format files must be converted to assembler .asm format. This is achieved using the fonttool utility and is completed automatically as part of the build process. @@ -68,7 +67,3 @@ Implementation example (older version): https://cpcrulez.fr/applications_tools_cruncher_LZSA2_Z80.htm x86 lzsa compressor application: http://www.pouet.net/prod.php?which=81573 - - - - diff --git a/Source/Fonts/fontvgarc.png b/Source/Fonts/fontvgarc.png deleted file mode 100644 index 5b9ad747e9088b5759cbd10a6c12effa860c8cbd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3154 zcmbW4do-JA9>=xa(xXz{HJuj2Y&*1+HshKJp|fq#h%n+BqoHmY>e3OHL@JJnG1V^W z(!@1-5fo)eD^p3SK{KRb2hj!%W+X;jLfn>AY#6WY&deXXd(QjEbKdhj@ALdV-{0^1 zd)|!CT%ADbI_fGaDj@i!izpQpRf&qqzN9_M7b>3)oFJ*FXlTPP{>>9#GW*6oSMrI* z*W;cIDwK{v^j{9%J>756WC%@Au}XF_Yt=8fSFAO~O?LnKQ#UOK_xBv!2h1eqh&QK} zLt09g7}Mx;wvHN@8_-fS{Bd#Ii?Oc@`nAbNgIuvQay;`fuY5wbG!kAw8jL7N@#e_J zQw}v}be+BvG=0lWPiQl0?4fhvd$O9QJ`6vvD!y~{t&1#=?fS4?b}O{Pu)*H6^%6)r z6(8%pr2UI5E>dqH$1B)CXh%PL(?=dY%kT+XQvXTHnqU7(tVn0 zLXpjsqY_`gtie%?dA*KPbCmaUjOoHldO1QU8W11YKI>SUZjsNKP;RO-N@s{3S@!C3 zcLF~2B4ck60xnX|FA3G%32F?)Gx=tu4$kej?1|M_R(q`!T7aoX z6dpWN0vzNDo{($UVp$so2K7R%C*iWX{Oq@B%(I_|_Eee#qFe~ou_Q`$FfcupfSUv7 zKaoId3I<5E;wj%X{=iJa6O+4hC)w<&P$K}2udoKEe_R#ZQPOjaeHdpGJb(V>)Zg0< znpIj@+h^Z5x_RG7axDJFZ1=C){Z7!tSF59@F(#MAFKp3rX>pfR`O6$0VvGAW4pJMd z?n0RkTXuw)?b}R0xp6%nRTZLL`6aT7l~4b2PLBpP>7_It0`pf`tJV!~ zEr1;ZVGq4yvBv!k>+1QIkEJ1YQ-eRR1#QP5eRB+kcM>NzjkjiQlm0FK%-#oE;BVSE z>IJc4-zlAU@VDerNln5g#&sVI>q<`r z8+`C(=J<}(7MV@D&kFNGLdWfvT2@OSyp~4>BK)!m_H>Lp^rpeU$qVB`1?U`>2jlQ?EGFZ>7_7I*iqIt8B5a z*AIbKpsfsm5`+oYk3V>U^3GxvE-qY~o)59H?YE$9)Ou`6KZtC-*jus($fOQ*;01r9(Ri4zP6w@eUUw;Qa?-=uSU`AW{K}UZxuWD~w|6c=S$n0nn&bW)yKl1H$17e0?IEDH;E}B#B{s!rI z9aj6`vS;o5L|7?(m|(3**9C~1(xSejj#xi#APhE`&$yay-fw3OGfuESeC}2H(t~&j zpm&Y^n8WU{00m4w36`_pG6qo;5-Wjtc(+>GY)5TjIOFhaYQ3IS@ET5th40JB6;Tn^Wqse~yTB&v#@{jSce4BsQ-AyAf8{Z$ zSZQkmq|cwLT{U-uFzHw%QRs$0&RAx7u_d}>3+=7$tb_siB&PC8iYs)8gJ;;qYFl&C zd`QKNu)ppEsL#&5o=ufkstL*?XoZ&-%hxDa7SJJ7#YmcF0*hd?g1-&TYv5U!wdd_( z>*4nHmx#f~ywu8UaW>S(Sfh-1!lP%PoqbpNusgMr*K;7)UJ4fM|E$x(3}DJ!B#Wso&*k0zIF5hV z-QwZsA5iw8>_%TR>_7z3+q%I;AhR?~5nygH7m+E|yQT02W=+0d4-@UXP@zDHMRXCs zR;|9Xrm2QWF)!?&uSUR?_Fa7(@Z*|);Wv~sVk{ryz9+xRZX>4p*lT&M=xxMXilv6|#;iwR zN_x^o=uw2JhfYIm%ji!6hB=ZD21I!cmech_dpU42KRwAT4687Te2eAiBD=_W*bM1Vh3odgp>4O*q)) z?1M%5a=M>9I5(v#Wq_uSu><1BtAg}+4I#L>O&-~9qbfc6Ms{dP4!!Wl_ly^lTLQf2 dpm$HP&v$g+HUIoTv#p;6xP$A(y7Pfw{R?YAPCx(v diff --git a/Source/Fonts/fontvgarcu.bin b/Source/Fonts/fontvgarcu.bin deleted file mode 100644 index 91b53d17e34bfc35bb6022c3ffc3755a8167feed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1024 zcmX|AyJ{RU6g`;17KsfiRT!@@TTH1U1Qk;Vqhg9JwwS`j7F#SP#T2f>6hg4%58UMg z{0r#}4h#N?r1vkx5UiZ5aeUC~&VA@Uj=d!@ZQ}!*eMG-PL}7)u9|7a(+0J#mQNEdP+b(9J0x#IX-EczkhK0;q2qf z%VL4MG(L^#4%kk4+A`DeMZP!&Ly2sb0xVH}eEm!y|NMP5}@wq zik_o##2pAFREfvO#{w*G%FR*?GEsHRbImcddd+Duj{R(DQ_BVGgHyK}yPeW@wSrx* z?a+UMbGF85E6}i7KwImRZ|TxHG2x6km}I=`K*M|i@NqTlqK9^J-cxUk4N0VLXji7~ z6X#1IOrp~{Mam@Stz}%4C9-RjV*%%6y-6!otQKBao{QgdveuD#ecTM2P|wE{BbZzk z?I8r_r9w=#eqdkH2R-87uq5c@u?VtP`)>&8C-&>@x{qKikr2m$VG(gRtZKYybN;t{ zF$%9zyqA12)cHxGK~ z{$G-BI?lthOf@lp9k9QKR+&@ui98u=C*d8Sy=#03w>?27rA-3`!%Dpip%PH7Vh6qq zWPoyxmwYlmD#KH#`Ir#6URrxgyC(tkOF7O9u*$VOtU76x1K+3E9qU)W*IVXOj`Oq6 at+o8Wk`wtkrA`&!N4sVyq5a641O5SrA;=T} diff --git a/Source/HBIOS/Makefile b/Source/HBIOS/Makefile index 04bf955d..34d56286 100644 --- a/Source/HBIOS/Makefile +++ b/Source/HBIOS/Makefile @@ -23,8 +23,9 @@ endif include $(TOOLS)/Makefile.inc -FONTS := font8x11c.asm font8x11u.asm font8x16c.asm font8x16u.asm font8x8c.asm font8x8u.asm \ - font6x8c.asm font6x8u.asm fontcgac.asm fontcgau.asm fontvgarcc.asm fontvgarcu.asm +FONTS := font6x8c.asm font6x8u.asm font8x8c.asm font8x8u.asm \ + font8x11c.asm font8x11u.asm font8x16c.asm font8x16u.asm + ifeq ($(CPUFAM),2) TASM=$(BINDIR)/uz80as -t hd64180 diff --git a/Source/HBIOS/cvdu.asm b/Source/HBIOS/cvdu.asm index 99b1c664..2b5b6298 100644 --- a/Source/HBIOS/cvdu.asm +++ b/Source/HBIOS/cvdu.asm @@ -48,8 +48,8 @@ CVDU_ROWS .EQU 25 CVDU_COLS .EQU 80 ; #IF (CVDUMON == CVDUMON_CGA) - #DEFINE USEFONTCGA - #DEFINE CVDU_FONT FONTCGA + #DEFINE USEFONT8X8 + #DEFINE CVDU_FONT FONT8X8 #ENDIF ; #IF (CVDUMON == CVDUMON_EGA) @@ -486,6 +486,10 @@ CVDU_CRTINIT2: ; ADJUST FOR 16K RAM SIZE ; LOAD FONT DATA ;---------------------------------------------------------------------- ; +; THE GDP USES 16 BYTES PER FONT EVEN WHEN THE FONT HAS ONLY 8 +; BYTES. SO, FOR FONT8X8, WE NEED TO ALTERNATELY WRITE 8 BYTES OF +; REAL FONT DATA, THEN WRITE 8 BYTES OF GARBAGE. +; CVDU_LOADFONT: LD HL,$2000 ; START OF FONT BUFFER LD C,18 ; UPDATE ADDRESS REGISTER PAIR @@ -512,8 +516,14 @@ CVDU_LOADFONT: CVDU_LOADFONT1: LD A,(HL) ; LOAD NEXT BYTE OF FONT DATA CALL CVDU_WR ; WRITE IT - INC HL ; INCREMENT FONT DATA POINTER DEC DE ; DECREMENT LOOP COUNTER +#IF (CVDUMON == CVDUMON_CGA) + ; SKIP ALTERNATING 8 BYTE PAIRS (SEE COMMENT ABOVE) + BIT 3,E ; BIT 3 CHANGES WITH EVERY 8 BYTES + JR Z,CVDU_LOADFONT2 ; WHEN ZERO, DON'T INC FONT PTR +#ENDIF + INC HL ; INCREMENT FONT DATA POINTER +CVDU_LOADFONT2: LD A,D ; CHECK DE... OR E ; FOR COUNTER EXHAUSTED JR NZ,CVDU_LOADFONT1 ; LOOP TILL DONE diff --git a/Source/HBIOS/vga.asm b/Source/HBIOS/vga.asm index 97470ff5..563df03d 100644 --- a/Source/HBIOS/vga.asm +++ b/Source/HBIOS/vga.asm @@ -551,7 +551,7 @@ VGA_LOADFONT: LD HL,$7000 | VGA_89BIT ; CLEAR FONT PAGE NUM CALL VGA_SETCFG -#IF USELZSA2 & (VGASIZ != V80X60) +#IF USELZSA2 LD (VGA_STACK),SP ; SAVE STACK LD HL,(VGA_STACK) ; AND SHIFT IT LD DE,$2000 ; DOWN 4KB TO @@ -588,7 +588,7 @@ VGA_LOADFONT2: LD HL,$7070 | VGA_89BIT ; SET FONT PAGE NUM TO 7 CALL VGA_SETCFG -#IF USELZSA2 & (VGASIZ != V80X60) +#IF USELZSA2 LD HL,(VGA_STACK) ; ERASE DECOMPRESS BUFFER LD SP,HL ; BY RESTORING THE STACK RET ; DONE diff --git a/Source/HBIOS/vrc.asm b/Source/HBIOS/vrc.asm index 22338298..c87051c6 100644 --- a/Source/HBIOS/vrc.asm +++ b/Source/HBIOS/vrc.asm @@ -21,8 +21,8 @@ VRC_KBDST .EQU $F5 ; KBD CTLR STATUS/CMD PORT VRC_ROWS .EQU 48 VRC_COLS .EQU 64 ; -#DEFINE USEFONTVGARC -#DEFINE VRC_FONT FONTVGARC +#DEFINE USEFONT8X8 +#DEFINE VRC_FONT FONT8X8 ; TERMENABLE .SET TRUE ; INCLUDE TERMINAL PSEUDODEVICE DRIVER KBDENABLE .SET TRUE ; INCLUDE KBD KEYBOARD SUPPORT From ba7281d399bc564daaa069bd4362ceea7d4a06ae Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sun, 22 Jun 2025 14:58:08 -0700 Subject: [PATCH 3/3] Bump Version --- Source/ver.inc | 2 +- Source/ver.lib | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/ver.inc b/Source/ver.inc index 82728c37..ead423b3 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.5" +#DEFINE BIOSVER "3.6.0-dev.6" #define rmj RMJ #define rmn RMN #define rup RUP diff --git a/Source/ver.lib b/Source/ver.lib index cf87bab0..abc87464 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.5" + db "3.6.0-dev.6" endm