Problém Didaktiku byl znakový generátor 40 znaků na řádek, takže se pro CP/M nedal použít, tam se předpokládalo 80. Viděl jsem fonty jen 3px široké, kupodivu to bylo čitelné. Chtěl jsem tam CP/M kvůli disketové jednotce, bohužel jsem to už nerozchodil. Ale na jiném stroji v práci jsem CP/M měl a dokonce jsem to uměl na systémové úrovni, no ono těch funkcí bylo jen pár. Pamatuju si ještě, že číslo služby se dávalo do jednoho registru, parametry do dalších a vyvolávalo se to skokem na adresu 2. MS DOS to podstatně rozšířil a do toho jsem už nepronikl. Ale co se dalo udělat na 64 kB paměti, mě pořád fascinuje.
Didaktik, stejně jako Spectrum mělo ještě méně - 32 znaků na řádek - znak je v matici 8x8 bodů. Několik her jelo v režimu 42 znaků na řádek, což bylo ještě docela čitelné (6x8). Pro CP/M by to bylo ale málo. Co jsem zažil, tak všechny zdejší implementace používaly tzv mikroprint - což zmiňujete - znaky jsou v matici 4x8 bodů (3pix). Kromě CP/M to používaly i některé editory. Dalo se to používat, a co vím, tak se to používalo.
Na rozdíl od MS DOSu v CP/M 2 neexistoval žádný standard pro zobrazení - bylo jen API pro poslání znaku na terminál, CRT nebo tiskárnu. V podstatě tam není ani možnost jak získat informaci o velikosti terminálu (což je pak v pozdější verzi CP/M 3, která se tu, co vím, téměř nepoužívala). Dost osobních počítačů z 80 let podporovalo 64 znaků na řádek. Kvalitnější terminály, které měly 80 znaků na řádek (vt100, vt200, ...) byly profi zařízení s pekelnou cenou. Je docela možné, že v druhé polovině 80 let už jejich cena brutálně klesla, a daly se získat lacino z druhé ruky.
Teď, když jsem se trochu vrátil v čase, tak mi došlo, jak tehdy brutální význam, měla optimalizace na délku kódu nebo redukce mrtvého kódu. Ty aplikace jsou z dnešního pohledu jednodušší, ale rozhodně nejsou primitivní - dokumentace k ws nebo TurboPascalu mají 200-300 stran textu.
40 znaků na řádek je pitomost.
Předně ZX Spectrum nemělo generátor znaků. Mělo pouze grafický režim 256x192px kde se znaky kreslily do čtverců 8x8px. Na to existuje podprogram v Sinclair ROM.
Jakékoli jiné textové rozlišení se musí udělat vlastním programem a existují programy pro psaní znak třeba 5px, nebo 6px širokých, nebo taky psaní proporcionálním písmem. Nebo to, čemu se říká mikroprint do 8x4px.
Mikroprint do 8x4px je vlastně z nestandardních variant nejjednodušší, protože používá půlky bytů a nemusí provádět bitové posuny / rotace z předlohy a podle X ové souřadnice.
Zjednodušeně, pro CP/M v podstatě přicházelo v úvahu jen těch 64 znaků na řádek (256 / 4) a standardních 24 řádků (192 / 8).
... a k rozchození CP/M disketovka nestačí, je třeba i úprava paměti - pro CP/M musí být RAM v oblasti 0x0000 až 0x7fff - tj. možnost odstránkovat ROM i video paměť.
Přesněji si pamatuji režimu
42 znaků - 5+1 sloupců => 42,7
51 znaků - 4 +1 sloupců => 51,2
64 znaků - 3 + 1 sloupců => 64,0
Teoreticky šlo snadno udělat 36 znaků na řádek, protože písmena měla 2 pixely mezeru, a když se jí člověk vzdal, měl 6+1 => 36,6
Režimy 42 a 51 se ještě dobře četly. 64 zn už byla šílenost.
5 + 1 mezera nema "problem" ani se znaky jako "m". Tento font pouzivala na ZX treba slavna hra The Hobbit (1982).
bez zoomu: https://winterdrake.com/wp-content/uploads/2011/03/hobbit1.png
4 + 1 mezera na znak uz vypada jako pismo bez kompromisu.
zoom 2x: https://codeberg.org/DW0RKiN/M4_FORTH/raw/branch/master/Game/khammurapi.png
kapitalky 4+1:
zoom 2x: https://codeberg.org/DW0RKiN/3D-Dungeon/raw/branch/master/screen.png
3 + 1 mezera... na to si musi clovek uz zvyknout. A pak se to da. Vyhoda, ze atributy nedeli znak, je jasna...
Tech 40 znaku je jen kvuli tomu, ze ZX Spectrum byl asi ignorovan (i kolizni umisteni ROM) a zvolil se rezim pro 320 pixelu.
[popíchnutí] Já si myslím, že pevná šířka vyšla z módy a že nejlepší se samozřejmě jedině a pouze písmo proporcionální... tedy alespoň pro textové hry, když už jsme naťukli The Hobbit.
https://spectrumcomputing.co.uk/list?inc_xrt=0&quick=s&text=belegost
https://spectrumcomputing.co.uk/entry/2305/ZX-Spectrum/Heroes_92
Maximální hereze je používat 4px (3+1) široké znaky v Desktopu místo proporcionálního písma.
https://cygnus.speccy.cz/obrazky/deskjet/screenshot_desktop1.png
z článku https://cygnus.speccy.cz/popis_printer-deskjet1.php
3+1 mezera mnohem víc záleží na kvalitě monitoru, ale dneska, když máme i u některých dobových počítačů dobastlené VGA výstupy (Faudraj, GBS-8220, ZX-VGA-JOY...), nebo prostě RGB na SCART. Nebo když máme video výstup na HDMI (MB03+, eLeMeNt ZX, ZXS Next...), tak je to použitelnější. (ok, Next lépe funguje s VGA než HDMI, ale jde o to, že se nemusíme omezovat na modulovaný TV signál, nebo kompozitní video)
Já myslím, že na dobrém monitoru je čitelnost pořád přijatelná, tzn. má to smysl pokud na ZX Spectrum chceme zobrazit tak moc písmenek, viz D-Text
http://wiki.oldcomp.cz/index.php?title=Verze_textov%C3%A9ho_editoru_D-Text
Další možnost taky je posílat text přes RS232 na terminál s vyšším rozlišením :) I to by se dalo pro CP/M běžící na ZXS použít. A v takovém případě by i hardwarová úprava pro dosažení RAM v celém prostoru 0x0000 až 0xffff byla mnohem snazší.