Emulační nálož

Je neděle, tak si dejme nějaké oddychovější téma. Třeba: jak to vlastně vypadá s JavaScriptovými emulátory?

Asi nejpodrobnější informace má nepodepsaný blog s titulem Emulator 101. Narazil jsem na něj naprostou náhodou, a ačkoli informace, které přináší, jsem už většinou znal, tak ho mohu zájemcům doporučit – je hezky přehledný a popisný.

Ze světa Apple jsou nejzajímavější kousky, které napsal Will Scullin. Emuluje Apple 1, Apple ][ i Apple//jse.

Stejný procesor, jiný výrobce: KIM-1

A ještě jednou 6502: Acorn Electron.

A co ve světě Z80? Tak určitě musím začít ZX Spectrem. Nejlepší JS emulátor téhle legendy je QAOP. ZX80 i ZX81 mají svou JavaScriptovou podobu z Ruska: ZX8x. Zajímavé na téhle emulaci je řešení displeje. Není to canvas, je to pole DIVů, které mají na pozadí GIF se znakovou sadou a pozicováním se vybírá ten pravý.

Pokrevním bratrancem ZX81 byl stroj s názvem Jupiter Ace. Trošku exot, protože po spuštění na vás vyběhl nikoli obvyklý BASIC, ale FORTH. Jak to vypadalo? Koukněte se sami na Jupiler.

Od stejného autora si můžete vyzkoušet i Roland, což je emulátor strojů od Amstradu (CPC464,664, 6128).

Druhá skupina domácích počítačů používala procesor 6502 nebo odvozený. Třeba Commodore 64. Pro Atari 800 jsem, kupodivu, emulátor v JavaScriptu nenašel. Ale nevadí, nebuďte zklamaní – vždycky můžete zkusit emulátor sovětského domácího počítače Radio-86RK (který neměl nic spoečného ani s radiem, ani s procesorem x86).

Svět „jako že opravdových počítačů, ale dneska tak akorát na retrohraní“ zastupuje emulátor obecného stroje s OS CP/M. Pokud vás doba „cépéemky“ (jak tomu říkali tehdy inženýři „od fochu“), nebo též „sípíemky“ (jak tomu říkali nadšenci) minula, nebo naopak okouzlila, tak si můžete dosytosti vyhrát.

Když postoupíme dál, k šestnáctibitům, tak mi z paměti vyskočí čtyři stroje. První PC, pak Amiga, Atari ST a Macintosh. Máme to v JavaScriptu? Máme.

Macintosh prosím zde, i s OS 7.

Jestli chcete staré PC, vyberte si: s CP/M-86, s Windows 1.01, nebo třeba XTčko s 10MB harddiskem? Anebo novější, na kterém běží Linux nebo FreeBSD?

Zmínil jsem Atari ST, to by bylo třeba zde: EstyJS (neplést s Este). No a Amigu emuluje SAE.

Některé z těchto strojů se objeví i v ASM80.com. A z českých, které chystám? Je tam připravená trojice SAPI1, ONDRA a IQ151 a mám sto chutí nechat vás hlasovat, protože sám nevím, do kterého se pustit dřív.

Příspěvek byl publikován v rubrice Emulace. Můžete si uložit jeho odkaz mezi své oblíbené záložky.
  • Petr Antoš

    zdravím, pěkné 🙂 – koukám že 6502 vás ještě čeká … tady je to známé: http://www.6502.org/tools/emu/ ale narazil jsem i tady na neco (JIT ?? ehm, uhh) https://github.com/6502/js6502 – osobne take hledam pro jiste zneuziti co nejrychlejsi implementaci 6502 engine v JS, tak uvidime co se najde; s JS nemam zkusenost natolik abych si od boku napsal takovou vec sam, ale mozna na to dojde tez 🙂

    no tak ten js6502 vypada ze bude hodne svizny, okok

  • 6502 mám hotový, dokonce jako jeden z prvních, jen jsem se ještě nedostal k tomu, abych ho „zabudoval“ do nějakého emulátoru. Ale všechno bude. 🙂 Ještě chci předtím přidat do assembleru optimalizace pro zero page.