Hlavní navigace

DOSBox: herní klasiky znovu ožívají

Daniel Novotný

Každý si čas od času zahraje nějakou tu počítačovou hru. Ty pravé klasiky vznikaly před více než deseti lety a dodnes dokáží pobavit stejně dobře jako v dobách největší slávy. DOSBox je program emulující počítač se systémem DOS a dají se na něm hrát takřka všechny hry z doby onoho zlatého věku.

Návrat do minulosti

Devadesátá léta. V té době jsem chodil na gymnázium a také dostal první PC. Hodně jsem hrál hry. Kraloval tehdy operační systém DOS a na něm takové klasiky jako Civilization, Wizardry VII, Dungeon Master, Monkey Island… no jéje.

Nyní, na začátku třetího tisíciletí, máte možnost oživit veškeré vzpomínky a pocity z tehdejších digitálních bojů: existuje emulátor, který se chová jako DOSový počítač – zhruba taková 486ka. Je jím DOSBox.

Představujeme DOSBox

Program je možné sehnat na webu dosbox.source­forge.net – jsou zde jednak binární balíčky pro velké množství OS (Windows, MacOS X, různé distribuce linuxu, dále FreeBSD a třeba i Risc OS nebo BeOS). Také máte k dispozici zdrojový kód, pokud si chcete DOSBox přeložit sami – nebo třeba i modifikovat. DOSBox je šířený pod licencí GNU GPL 2 a je napsán v C++ za použití knihovny SDL.

Výsledkem kompilace je pouze jediná binárka dosbox, kterou můžete nakopírovat do systémového adresáře (třeba /usr/bin). Já si třeba vždycky přejmenovávám starší verze soubor§ na dosbox_065 a podobně. To pro případ, kdy by náhodou nějaká hra padala s novější verzí a ne se starší.

Jdeme do DOSu!

Pokud spustíte samotný DOSbox bez parametrů – uvidíte obrazovku DOSového okna s příkazovým řádkem – textový režim DOSu s  command.com.

DOSBox 1

Disk Z: je disk, který DOSBox namountuje automaticky a obsahuje jeho utilitky. Našim cílem bude spustit nějaký DOSový program. Předpokládejme, že je u nás na disku v adresáři /cesta/hry/hra  – potom v DOSBoxu namountujeme na disk C tento adresář:

$ mount c /cesta/hry/hra

Nyní se můžeme na nově mountnutý disk dostat příkazem c: a spustit hru zadáním názvu „exáče“ jako v DOSu. Programy .com a .bat fungují samozřejmě také. Zjistíme že spousta DOSových interních příkazů (dir, cd, copy, mem, help, type…) bude víceméně fungovat i tady na řádce. Trochu mi chybí copy con soubor.txt pro rychlé vytvoření textového souboru.

Jaký hardware DOSBox emuluje, je určeno v souboru dosbox.conf  – standardně je to XMS i EMS, myš, Sound Blaster, Gravis Ultrasound i PC speaker. COM a LPT porty jako takové (pro obecná externí zařízení) jsem nezkoušel.

Pokud emulovaný program podporuje myš, můžete kliknout do okna DOSBoxu, on vám kurzor myši „pohltí“ a myš začne pracovat uvnitř hry. Z tohoto „zajetí“ myš „osvobodíte“ stisknutím kombinace kláves Ctrl+F10. Další důležité zkratky jsou Ctrl+F12 a Ctrl+F11 pro zvyšování a snižování rychlosti emulace ( Cpu Cycles v okně DOSBoxu).

Od verze 0.70 má DOSBox i nový přístup k počítání cyklů: je možno použít cycles:max, což znamená, že hra běží v plné rychlosti, jaké je váš reálný OS schopen. Tento režim se aktivuje automaticky u her v chráněném (Protected) režimu, ovšem můžete ho zapnout i ručně:

Na příkazovém řádku můžete totiž zadávat přímo i položky z dosbox.conf: Například pokud máte položku cycles=5000 v dosbox.conf, můžete na příkazové řádce napsat třeba cycles 6000 nebo cycles max. Další často používaný příkaz/přepínač je core normal, core full nebo core simple jsou různé způsoby emulace CPU. S některými hrami bývá v některých režimech potíž, ale naštěstí pouze velmi zřídka.

Dalším (u mě často používaným) příkazem je joysticktype none  – mám k PC připojený joystick, ale DOSBox od verze 0.70 mi s ním v některých hrách pracuje špatně a v takovou hru je pak problém ukončit, protože se nemůžete kurzorem trefit na tlačítko Exit. Takové hry pak pouštím právě v režimu bez joysticku nebo ve starší verzi DOSBoxu.

Pokud se vám nechce absolvovat celou „mountovací” proceduru, mám tu pro vás další fintu. Pokud totiž na příkazovém řádku, jímž spouštíte DOSBox (ještě v Linuxu) zadáte přímo jméno spustitelného DOSového programu i s cestou, DOSBox jeho adresář sám namountuje jako disk C: a rovnou jej spustí. Pokud zadáte jen cestu, připojí se adresář a spuštěný DOSBox pak bude čekat další instrukce.

Rozcházíme novou hru

Běžná praxe, když chci rozchodit „novou starou“ hru je následující:

  • rozbalím hru: řekněme do /cesta/hry/hra
  • pustím dosbox /cesta/hry/hra a tím mám hru na C:
  • ve hře pustím setup, nastavím zvuk a grafiku
  • pak pustím hru samotnou
  • pokud něco nefunguje, snažím se ladit pomocí příkazů jako core normal, joysticktype none, irq a dma pro zvuk a podobně

Jakmile je vše rozchozeno, vytvářím novou položku v menu ve svém správci oken ve tvaru dosbox /cesta/hry/hra/hra.exe -exit . Ten exit je tam proto, aby DOSBox po skončení hry sám potichu zmizel.

V případě větších potíží má řádek tvar třeba

dosbox -c "joysticktype none" -c "irq 5" /cesta/hry/hry/hra.exe -exit

Další užitečné tipy

Pokud to s DOSBoxem myslíte vážně, pravděpodobně se vám budou hodit ještě další zajímavé triky a vychytávky.

Pokud hra, která je v /cesta/hry/neco, potřebuje být v adresáři C:\NECO, aby se spustila, vytvořím o úroveň výše soubor neco.bat, který obsahuje:

cd neco
neco.exe

Hru pak pouštím příkazem

$ dosbox /cesta/hry/neco.bat

Pokud se hra hraje myší, ale myš se „nechytá“, spouštím ještě uvnitř DOSBoxu ovladač ctmouse.exe, který najdete na cutemouse.sou­rceforge.net.

Když hra vyžaduje CD-ROM na D:, pouštím ještě

$ mount d /kde/jsou/data/z/cd -t cdrom -usecd 0 -label POTREBNY_LABEL

Položka POTREBNY_LABEL je nepovinná, ale některé hry ji chtějí. Někdy stačí místo /kde/jsou/data/z/cd dát libovolný adresář, typicky  /tmp.

Pokud klávesové zkratky ve hře kolidují s klávesovými zkratkami v Linuxu (tedy správci oken), klikněte do DOSBoxu myší: když je myš „vevnitř“, zkratky zachytává DOSBox.

Jestliže spouštíte DOSBox v Linuxu, ale hry máte na FAT32 disku, vypněte u něj v /etc/fstab  volbu utf8. V opačném případě vám začnou na disku vznikat zmatky s velkými/malými písmeny u dočasných souborů vytvořených hrou.

Pro větší pohodlí si pro každou hru napište vlastní skriptík .bat s celou konfigurací a ten pak spouštějte. Je to rychlejší, pohodlné a na nic nezapomenete.

Výsledkem se můžete kochat a zavzpomínat si na staré dobré herní časy…

DOSBox 2

Kde získat hry?

Možná vás bude zajímat, kde vlastně ty staré dobré hry seženete. Některé jsou uvolněné jako freeware, ale o většinu z nich se už výrobce nestará. Takové hry se nazývají abandonware a naleznete je třeba na www.abandonia.com nebo na www.the-underdogs.info.

Takové hry sice nejsou doopravdy uvolněné, ale obvykle jsou tak staré, že se k nim původní společnosti už nehlásí, takže je možné je volně stahovat z internetu, ačkoliv jsou právně stále chráněné autorským zákonem. Taková Abandonia si ale celou věc velmi hlídá a pokud se ozve vlastník práv s tím, že si nepřeje hru zveřejňovat na internetu, okamžitě je z databáze odstraněna.

Takže vám přeji, abyste ve všech hrách dosáhli vysokého skóre a dostali se do posledního levelu!

Anketa

Líbí se vám staré hry?

Našli jste v článku chybu?

15. 11. 2015 12:40

lacinko (neregistrovaný)

Spellcross je best of old games.

15. 10. 2007 10:32

Miro (neregistrovaný)
Tu je zoznam skutocne uvolnenych hier:

http://www.liberatedgames.org

Odporucam prezriet aj forum, su tam dalsie odkazy...



Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

Lupa.cz: Kdo pochopí vtip, může jít do ČT vyvíjet weby

Kdo pochopí vtip, může jít do ČT vyvíjet weby

DigiZone.cz: Velká cena v Abú Dhabí: 131 ti­síc diváků

Velká cena v Abú Dhabí: 131 ti­síc diváků

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

120na80.cz: Co všechno ovlivňuje ženskou plodnost?

Co všechno ovlivňuje ženskou plodnost?

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Podnikatel.cz: Udávání a účtenková loterie, hloupá komedie

Udávání a účtenková loterie, hloupá komedie

Podnikatel.cz: Snížení DPH na 15 % se netýká všech

Snížení DPH na 15 % se netýká všech

DigiZone.cz: Flix TV: dva set-top boxy za korunu

Flix TV: dva set-top boxy za korunu

Podnikatel.cz: Chtějte údaje k dani z nemovitostí do mailu

Chtějte údaje k dani z nemovitostí do mailu

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Podnikatel.cz: Chaos u EET pokračuje. Jsou tu další návrhy

Chaos u EET pokračuje. Jsou tu další návrhy

Podnikatel.cz: Udávání kvůli EET začalo

Udávání kvůli EET začalo

Měšec.cz: Stavební spoření: alternativa i pro seniory

Stavební spoření: alternativa i pro seniory

Měšec.cz: mBank cenzuruje, zrušila mFórum

mBank cenzuruje, zrušila mFórum

Root.cz: Certifikáty zadarmo jsou horší než za peníze?

Certifikáty zadarmo jsou horší než za peníze?

Vitalia.cz: Jmenuje se Janina a žije bez cukru

Jmenuje se Janina a žije bez cukru

Lupa.cz: Proč firmy málo chrání data? Chovají se logicky

Proč firmy málo chrání data? Chovají se logicky

Lupa.cz: Insolvenční řízení kvůli cookies? Vítejte v ČR

Insolvenční řízení kvůli cookies? Vítejte v ČR