Že existují emulátory všemožného hardware, pro vás asi není překvapující. Pro začátečníky uvedu, že emulátor je počítačový program, který vám umožní běh programů určených původně pro jinou softwarovou/hardwarovou platformu. Typicky pod tím rozumíme například běh různých her z konzolí typu NES/SNES či třeba ze stařičkých osmibitových počítačů jako bylo Atari nebo ZX Spectrum. A Nintendo Gameboy není výjimkou.
Jedná se o kapesní konzoli (později označovanou jako Gameboy Classic), která ve své první verzi spatřila světlo světa již v roce 1989. Za zcela zásadní parametry lze považovat to, že měla LCD nepodsvětlený displej o rozměrech 160×144 bodů. První modernizace se objevila v roce 1995, kdy se přišel na trh model Play It Loud, což je identický hardware jen s tím, že měl barevné kryty.
Více změn přinesl model Pocket, který je trochu menší, má jiný displej (také monochromatický a i stejné rozlišení) a přinesl možnost „síťové“ hry, kdy bylo možno propojit dva Gameboye kabelem a hrát speciální hry s podporou hraní pro více hráčů. Za tři roky se na japonský trh ještě dostala verze Light, která měla i podsvětlený displej.
V této řadě to byl poslední model, protože pak už následovala nová řada označená Gameboy Color. Bylo to stejné zařízení, jen s barevným displejem. Ale zpětná kompatibilita her zůstala zachována, což byla velká přednost. Existují však i hry, které lze hrát jen na Gameboy Color.
Je jasné, že výpočetní výkon této konzole byl na dnešní poměry celkem směšný, takže na běžném moderním počítači není problém s emulací a vše běží plynule a v identické rychlosti jako na fyzickém hardware. I pro běžné mobilní telefony s operačním systémem jsou dnes k dispozici emulátory, takže pocit z kapesní konzole můžete mít i dnes.
Jaký emulátor?
Úkol je celkem jasný – nalézt nějaký emulátor, který poběží pod Linuxem (vzhledem k primárnímu zaměření tohoto serveru). Zadáním klíčových slov do vyhledávače naleznete několik projektů, které jsou k dispozici. Patrně ale asi skončíte u toho, že tyto projekty už dnes nejsou aktivní nebo třeba nedisponují balíčky pro vaši distribuci. A tak budete muset kompilovat a nastavovat.
Už jsem se chystal psát podrobnější instrukce k nalezeným projektům, ale včas jsem se zarazil. Není nutné používat (či kompilovat) programy jako je KiGB (klasický GB) a VBA-M (kromě GB umí i GB Advance – pokračovatele GB). Existuje mnohem elegantnější varianta v podobě programu GameBoy Online.
Jedná se o emulátor bežící v internetovém prohlížeči. Emuluje Gameboy ve verzi Classic a umí i Gameboy Color. Emulátor je napsán v JavaScriptu a pro zobrazení grafiky používá HTML5. Je šířen pod GNU GPL licencí a zdrojové kódy jsou k dispozici na GitHub.com. Svým způsobem lze říci, že je multiplatformní. Zároveň je to jeden z mála programů, o kterém vím, že neběží v Internet Exploreru (respektive autor uvádí, že ve verzi 8 a nižší neběží a ve verzi 9 a vyšší zase běží pomalu).
Pro správný běh emulátoru je doporučován Firefox 4 a vyšší, Google Chrome 18 a vyšší či Safari 5.1.5 a vyšší. Je tedy poměrně citlivý na prohlížeč, ale myslím si že moderní operační systémy nebudou mít s během problémy. Z tohoto pohledu můžeme říci, že linuxové distribuce vydané za poslední dva roky by měly být pro běh emulátoru dostatečné.
Jak dostat do emulátoru hry?
Na úvod je zapotřebí říci, že se můžete pohybovat na tenkém ledě. Byť už dnes Gameboy neseženete nový, na software pro něj stále platí autorská práva. Na internetu objevíte spoustu portálů, které nabízejí tzv. Gameboy ROM, což jsou softwarové verze fyzických cartridgí s hrami. Mnohé z těchto her byly vyrobeny a prodávány před mnoha lety a je u nich podobná situace jako u tzv. Abandonware, přesněji – lze je tímto pojmem také vymezit.
Výrobci těchto her (a vlastníci autorských práv) nevyvíjejí nějaké aktivity k tomu tyto portály likvidovat či nějak postihovat ty, kteří tyto ROM používají. Některé firmy to i podporují. V zásadě ale platí pravidlo, že pokud máte fyzický hardware (tj. Gameboy) a nějakou cartridge s hrou, můžete si vytvořit její kopii, kterou lze provozovat v emulátoru. Moc uživatelů však nemá potřebný hardware pro stažení obsahu cartridge a raději sáhnou po verzi, kterou stáhl z cartridge někdo jiný.
Nicméně i dnes existují nadšenci, kteří pro GB stále vyvíjejí a použití jejich produktů je legálně naprosto v pořádku. Velký seznam her a programů pro Gameboy Advance od nezávislých programátorů naleznete například na stránce GBADev.org. GB Advance je nejpokročilejší v řadě Gameboy a proto je logické, že vývojáři zůstali u něj. Nicméně i pro Gameboy Classic existuje řada volných her. Stačí se obvykle podívat na různé portály nabízející Gameboy ROMky a hledat klíčové slovo PD neboli Public Domain.
Pokud se rozhodnete stáhnout si nějakou softwarovou verzi vámi vlastněné cartridge, zkuste se poohlédnout na specializovaných portálech. Z těch mnoha, které jsou k dispozici jsem něco našel na stránce FreeROMS.com (mají zde i hodně PD obsahu), Edge Emulation nebo třeba ROM hustler.
Jak si zahrát?
Jak jsem již zmínil v předchozích odstavcích – nejjednodušší je spustit emulátor GameBoy Online. Do podporovaného prohlížeče (viz výše) zadejte adresu grantgalitz.github.io/GameBoy-Online/ a počkejte, než se před vámi objeví okno emulátoru.
Poté z nabídky zvolte File – Open As – Local file a odkažte jej na hru staženou ve vašem počítači (s příponou GBC). Emulátor začne pracovat a hra by měla plynule běžet. Pokud je hra pro původní verzi Classic, je spuštěna v černobílém režimu, hry pro GB color běží pěkně barevně. Emulátor také skvěle emuluje zvukový výstup, takže hru nejen vidíte, ale i slyšíte.
V nabídce Settings můžete emulátor i trochu přizpůsobit svým potřebám. Lze zde vypnout zvuk (Enable sound), nastavit prioritu GB nebo GBC módu (GB mode has priority over GBC mode – i když je hra barevná, bude zapnuta v ČB módu) nebo možnost změny velikosti okna emulátoru (resize canvas directly in JavaScript). Emulátor opravdu velmi dobře funguje a všechny hry, které jsem v něm zkoušel rozjet, opravdu fungují bez chyby.
Podstatnou věcí u emulátoru je i emulace příslušných tlačítek konzole. Gameboy má na svém těle tlačítka označená A a B (ve výchozím stavu jsou na klávesnici počítače emulována po stisku kláves X/J a Z/Y/Q), následují tlačítka SELECT a START (v počítači Shift a Enter), pohyb pomocí d-padu je simulován kurzorovými klávesami. Do výčtu patří ještě klávesa Esc, která zapíná/vypíná celoobrazovkový mód. Nápovědu k ovládání zobrazíte výběrem nabídky View – Instructions.
Raritky
O neustálém softwarovém vývoji jsem se již zmiňoval. On ale probíhá i vývoj hardwarový. Existuje například doplněk, který je možno připojit ke GB a používat paměťové karty. A vůbec celá sekce Gameboy hacks na hackaday.com je nesmírně zajímavá a jenom ukazuje, že GB není mrtvý. Což takhle solárně napájený GB color? Nebo záloha cartridgí s využitím Arduina? Či snad programovatelnou cartridge pro GB? Jen poznámka na okraj – stránky hackaday.com jsou plné až skoro neuvěřitelných nápadů z mnoha různých oblastí IT. Jen se tam rozhlédněte…
Pokud jste po přečtení článku došli k závěru, že emulace je šikovná, ale fyzickému hardware se nic nevyrovná, mám pro vás jednu radu. Gameboye můžete celkem jednoduše ještě pořídit (samozřejmě jetého). Na serveru Aukro.cz se stále ještě pohybuje docela dost lidí, kteří nabízejí jak původní GB Classic/Pocket či Color, ale i novější modely jako je Advance či Advance SP.
Když bych si chtěl něco takového koupit, asi bych šel do verze Color nebo Advance SP. Existuje zde totiž zpětná kompatibilita, a tak vám hry z původní GB classic poběží i na verzi Color i na Advance SP! A ceny jsou docela přijatelné. Na stejném serveru naleznete i spoustu originálních cartridgí i dost „pirátských“, na kterých se nachází více her než jedna (obvykle 10 – 20). A poslední, co potřebujete, je fůra času. Gameboy se postará o to, že ho budete mít neskutečně málo. Pak se doporučují i děti, kterým můžete ukázat, jak se bavil tatínek (či maminka), když byl tak malý jako vaše děti. A to je k nezaplacení.