Nová grafická karta pro slot ISA přidává podporu HDMI monitorů do 40 let starých počítačů

18. 9. 2023

Sdílet

ISA karta Graphics Gremlin with HDMI Autor: Yeo Kheng Meng
ISA karta Graphics Gremlin with HDMI
Nadšenci vyrobili novou grafiku pro nejstarší historická PC. Nejspíš jedinou kartu do slotu ISA nesoucí port HDMI.

Před časem jsme tu měli zajímavý hardwarový pokus dostat do moderního počítače historické sloty ISA, aby v nich mohly běžet dobové zvukové karty používané DOSovými hrami. Teď se objevilo něco podobného, ale prakticky protikladného: Nová videokarta, která má za cíl připojit k historickým PC disponujícím jen sloty ISA nové monitory přes výstup HDMI. A funguje to, takže teď budete moci mít aktuální televizi nebo LCD u prvního IBM PC.

Ačkoliv svět počítačů PC je proslulý dlouhodobou kompatibilitou, neplatí to kompletně, protože třeba typ rozšiřujících slotů se několikrát změnil, kvůli čemuž nelze dnešní karty nainstalovat do počítačů starších než cca 20 let. Platí to ale i o připojení monitorů. Dnešní grafiky opouštějí analogový výstup D-Sub, ale ani VGA dokonce není kompatibilní s úplně nejstaršími pécéčky s grafikami jako EGA, CGA. Pro potřeby blbnutí s takto starými počítači tak potřebujete i starý CRT monitor, což může být dost problém.

Už před časem kvůli problému „retro“ PC s novými monitory zkonstruoval Eric Schlaepfer novou grafickou kartu s vlastním návrhem nazvanou Graphics Gremlin, která podporuje režimy CGA (první barevná grafika pro IBM PC) a MDA (monochromatický adaptér, který podporoval vyšší rozlišení, zejména pro text). Ale jako rozhraní pro monitor má běžný port D-Sub a její výstup je na frekvencích, s kterými jsou kompatibilní moderní LCD.

Další nadšenec do retropočítačů Yeo Kheng Meng teď kartu Graphics Gremlin, která byla vydána jako open-source, dál upravil a přidal na ni převodník z analogového VGA signálu na digitální HDMI, které má tato ISA karta vyvedené v portu na záslepce.

HDMI Graphics Gremlin

Tato grafika je postavena ve formátu karty pro 8bitový ISA slot, což je krátká verze původem ještě z prvního originálního modelu IBM PC 5150 a poté používaná také v PC XT. Známější je asi delší verze slotů ISA z více recentních počítačů, která je již 16bitová. Ale karta by asi měla být kompatibilní i s 16bitovými sloty. Díky použití jen 8bitového rozhraní, které je pochopitelně více omezené a méně výkonné, ale umožňuje použití i v nejstarších „retro“ PC.

ISA karta Graphics Gremlin v původní verzi (vlevo) a v modifikaci s HDMI

ISA karta Graphics Gremlin v původní verzi (vlevo) a v modifikaci s HDMI

Autor: Yeo Kheng Meng

Na PCB karty je pak osazený čip FPGA Lattice iCE40HX4K, v kterém je implementovaná funkce grafické karty, respektive emulace grafik IBM CGA a IBM MDA. Tato implementace je psaná ve Verilog HDL a pak nahraná do použitého FGPA při bootu z paměti SPI Flash na kartě. Bitstream pro FPGA je zvlášť pro každý z emulovaných režimů a to, jaký se při bootu do FPGA nahraje, se dá zvolit přepínači vyvedenými na záslepku. Grafické paměti má karta 512 kB, což je o dost víc, než s čím musely vystačit původní adaptéry CGA, osazené pouhými 16 kB.

Aby se vyřešil problém s nekompatibilitou původních grafik s dnešními monitory (který nespočívá jen v použití jiných konektorů), provádí FPGA nakonec úpravu původního signálu. V režimu CGA je použitý scan doubling, takže výstupem je rozlišení 640 × 400 bodů při 60 Hz. Režim MDA zase produkuje zvýšenou snímkovou frekvenci 70 Hz místo původních 50 Hz, což dnes monitory odmítnou.

ISA karta Graphics Gremlin v původní verzi (vlevo) a v modifikaci s HDMI

ISA karta Graphics Gremlin v původní verzi (vlevo) a v modifikaci s HDMI

Autor: Yeo Kheng Meng

Hlavní modifikace původní karty je pak přidání čipu TI TFP410, který umožňuje výstup na HDMI. Jde o převodník z analogového signálu na signál DVI. Ten je však kompatibilní s HDMI, takže jej lze takto použít. Toto řešení znamená, že obraz na LCD není čistě digitální. Pokud by někdo chtěl mít CGA a MDA výstup bez analogového šumu, musela by být použitá čistě digitální emulace a digitální signál být vyveden přímo z FPGA. Toto by mohlo být komplikovanější, než se zdá, protože řada dem a softwaru počítajících s přesným chováním původního hardwaru má z různých důvodů s emulací problémy.

Jde asi o jedinou ISA grafiku na světě, která umí HDMI displej přímo připojit, ačkoliv je třeba podotknout, že k původnímu Graphics Gremlinu je také možné připojit běžně prodávané aktivní převodníky z D-Sub na HDMI. Takže tato funkcionalita už předtím existovala, jen ne přímo na kartě samotné.

Yeo Kheng Meng tuto vylepšenou verzi Graphics Gremlinu (nebo Gremlina?) používá s počítačem IBM PC 5155, což je „kufříkový“ (nebo alespoň kufrový) portable a malým CRT displejem. Tato rozšiřující karta umožňuje připojit k němu externí monitor s velkou úhlopříčkou a lze argumentovat, že u „portablu“ je lepší, když nejsou třeba krabičky a dongly navíc. Byť Apple s tím dnes patrně nesouhlasí.

bitcoin_skoleni

Oba projekty jsou podrobně zdokumentované, takže pokud máte o kutilské detaily těchto grafických adaptérů zájem, může si přečíst o návrhu i o manuální výrobě a testování:

Zdroje: GitHub, YKM's Corner on the Web