NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.

DOSBox a Virtual PC - staré hry na moderních OS

DOSovské hry na nových počítačích? S příchodem Windows Vista a 64 bitových procesorů se ve mne probudily obavy, že mé DOSové programy a hry v Pascalu již nikdo nespustí a přestanou být užitečné. Po důkladnějším zkoumání situace jsem ale nabyl přesvědčení, že odsouzeny k záhubě ještě rozhodně nejsou. Možností k jejich spuštění je hned několik.

Dualboot

První možností je tzv. dualboot - více operačních systémů na jednom PC. Problém je v přepínání systémů (Hrajete hru a potřebujete přepnout do Windowsu? Bez šance, je nutný restart). Čili velmi komplikované a nepraktické, ale funkční, protože i dvoujádrové 64bitové procesory jsou schopné pracovat v 32bitovém režimu a to za provozu jen jednoho jádra.

 

DOSbox

DOSboxDruhá a asi nejpoužívanější možnost je využít známý emulátor x86 procesorů s DOSem - DOSbox. Je pohotový, snadno použitelný a extrémně lehce ovladatelný. Ke spuštění programu stačí myší přetahnout jeho exe soubor na ikonu DOSboxu. Měl bych také zmínit jeho slušnou kompatibilitu co se týče zvukové karty (emulace jak soundblaster, tak midi).

Až do nedávna jsem si myslel, že je DOSbox na náročnější hry a programy pomalý, ale poté mi byla prozrazena kouzelná klávesová zkratka ctrl + F12 (zrychlení/zvýšení cyklů procesoru) a ctrl + F11 (zpomalení/snížení cyklů procesoru) - dík AV. Díky této vychytávce lze regulovat rychlost her a programů tak, aby se nesekaly a běžely plynule, případně ty méně náročné zpomalit na hratelné tempo.

Věřím, že s DOSBoxem rozběhnete snadno většinu DOSových programů, včetně těch mých.

Program DOSbox naleznete na adrese: http://dosbox.com, kde ho můžete zdarma stáhnout.

 

Virtual PC

Když hra/program nepoběží v DOSboxu, máme zde větší kalibr - Virtual PC. Virtuální stroj je definován jako "izolovaný duplikát". Je to software, který se chová jako hardware. Můžete si otevřít a měnit nastavení kteréhokoli hardwaru, jakoby tam skutečně byl, přičemž tento "falešný" hardware je napojený na skutečný harware počítače. Instrukce se spustí na existujícím hardwarovém CPU "v izolaci". Aby vše fungovalo, může Virtual PC při spuštění programu překompilovat některé jeho části. Na rozdíl od toho emulátor (např. DOSbox) vytvoří v podstatě naprosto nový stroj včetně CPU, graf. karty, RAM atd., proto je v jejich rychlosti tak značný rozdíl (Virtual PC je až 20x rychlejší, než DOSbox). Ačkoli je to těžce uvěřitelné, rychlejší je virtualizovat kompletně celý počítač, než použít jen emulátor. Jedinou nevýhodou je, že potřebujeme vlastnit licenci na operační systém, který si do Virtual PC nainstalujeme. Virtual PC je freeware a standardní součástí operačního systému Windows 7, konkrétně v Proffesional Edici pod názvem Windows Virtual PC. Jak jsem se již zmínil, také se nemusíme obávat o budoucí kompatibilitu tohoto programu.

Jak na to?

Při spuštění programu Virtual PC se zobrazí konzole. Vytvoříme nový stroj, přičemž není nutné cokoli nastavovat a máme na výběr z několika přednastavených profilů. Poté je nutné sehnat si instalaci operačního systému, který chcete do Virtual PC nainstalovat. Já jsem si zvolil Windows 95 (použil jsem profil Windows 98). Rád bych shrnul výhody a nevýhody tohoto operačního systému:


Výhody: Malá velikost, rychlá instalace, extrémně vysoká rychlost běhu počítače a nenáročnost, velká DOS kompatibilita

Nevýhody: Jelikož se jedná o starý systém bez dll knihoven na instalace, nepřišel jsem na jinou možnost importu souborů, než přes ISO (cd obrazy). Virtual PC u novějších systémů podporuje pouhé přetažení na plochu počítače nebo namountování adresáře jako fyzického disku, nicméně jsou k tomu potřeba takzvané Additions, které pod Windows 95 nainstalovat nelze. Windows XP se na DOS určitě nevyplatí, ale předpokládám, že Windows 98 SE by potřebné knihovny obsahovat mohly.

Před instalací systému Windows 95 si musíme nejprve uvědomit, že CD není bootovací! Kvůli licenci sem nechci dávat ISO Win95 ke stažení, nicméně má asi 50mb a bude na internetu nebo na torrentech, takže by neměl být nejmenší problém ho sehnat. ISO do virtuálního počítače vložíte pomocí nabídky CD -> Capture ISO image. Nyní je ještě třeba vložit bootovací disketu. Jelikož s jejím sehnáním je docela problém (většina počítačů již nedisponuje FDD mechanikou), její hotový obraz si můžete stáhnout v archivu na konci článku. Je to soubor IMG, který stejnou cestou vložíte do FDD mechaniky virtuálního počítače (FLOOPY - Capture Floopy disk image). Nyní je počítač připraven a po restartování by se měl nabootovat DOS.

Nyní je třeba vytvořit primární oddíl disku pomocí příkazu FDISK (z adresáře A:/). Poté počítač restartovat a nový disk C naformátovat (příkaz FORMAT C: , opět z disku A:/). Když je disk připravený, přejdeme na instalační CD, které má standardně přiřazeno písmeno R. čili příkaz "R:/" a potom "setup". Při instalaci nedoporučuji zaškrtávat a potvrzovat instalaci sí?ové karty, měl jsem s ní jen problémy. Hotovo! Jsme ve Windows. Při své instalaci jsem vytvořil několik následujících screenshotů:

Formátování disku Počátek instalace Průběh instalace
Bootování Oldschool rulezzz

Teď nastává hlavní a již zmíněný problém - jak hry/programy do počítače dostat? Já jsem to vyřešil vytvořením ISO souboru a to s použitím programů Power ISO nebo Magic ISO. Nejsou sice zadarmo, ale také nejsou časově omezeny a oba umožňují v DEMO verzi vytvořit obraz CD disku o velikosti až 350 Mb, což nám bohatě stačí. Všechen potřebný software jsem si tedy zkopíroval do složky, udělal z ní ISO (jednoduše pravým tlačítkem myši) a ISO vložil do Virtual PC. Vše se pak objevilo v jednotce CD a stačilo jen soubory zkopírovat na disk.

Power ISO Kopírování z ISO na disk

Tento postup je relativně jednoduchý a i rychlý, má však jednu podstatnou nevýhodu. Protože se na disk CD nedá zapisovat, jsou logicky všechny soubory na něm určeny "jen pro čtení". Když je zkopírujeme na disk, Windows 95 jejich atributy zachová a nelze do nich zapisovat. To má fatální následky pro běh většiny programů a to nejen při ukládání pozice ve hře - většina her se ani nespustí. Hlavně pascalovské grafické BGI soubory musí být zapisovatelné, jinak se grafika nenahodí. Řešením je samozřejmě označit všechny soubory ve všech složkách a v jejich vlastnostech "jen pro čtení" zrušit. Bohužel je to trochu pracné. Díky absenci dll knihoven jsou nám vestavěné nástroje pro přenos souborů programu Virtual PC k ničemu. Velmi elegantním řešením je využít program WinImage, který umí číst a zapisovat obrazy virtuálních disků VHD, které představují fyzické disky virtuálního počítače a jsou uloženy v dokumentech. Problém je, že program není zadarmo (30ti denní trial). Jediné mne známé řešení je tedy přes ISO a pak překlikat atributy, je to sice zdlouhavější, ale funguje to spolehlivě.

 

Test rychlosti emulátoru DOSBox a Microsoft Virtual PC

Na Virtual PC jsem testoval celkem 4 hry. 2 mé a 2 cizí. Zde jsou výsledky jejich běhu ve srovnání s DOSboxem.

Parametry testovacího stroje:

  • Notebook, 64bitový procesor Intel Dualcore 1,7 Ghz
  • 2 GB RAM
  • OS Windows Vista Home Premium
  • DOSbox 0.72 a Virtual PC 2007
  • Virtualizovaný OS: Win95 EN
Dangerous Dave
povaha hry: jednoduchá skákačka
určeno pro: 386
DOSbox: rychlý, bez problému
Virtual PC: až příliš rychlé, nehratelné
Blake Stone: Planet strike
povaha hry: postaveno na vylepšeném Wolf 3D enginu
určeno pro: 486
DOSbox: rychlý, bez problému (cykly procesoru na max)
Virtual PC: rychlý, bez problému
Želvička karetka
povaha hry: má první hra, obsahující neuváženě pomalou BGI grafiku využívající bmp formát
určeno pro: pentium
DOSbox: rychlý, bez problému (cykly procesoru na max)
Virtual PC: pomalé
Nightwalker
povaha hry: skákačka v pascalu. Poměrně náročné vykreslování spritů
určeno pro: pentium
DOSbox: nefunguje myš, hra se dostane jen do menu, které se seká
Virtual PC: rychlý, bez problému

Závěrem vidíme, že DOSbox si vede lépe a měl by postačit. Virtual PC je takové těžkopádné, ale přijde mi více kompatibilní, takže by mohlo vykrýt ty případy, kde DOSbox nefunguje (moc jich není). Až bude čas, zkusím zaexperimentovat s Virtual PC a Windows 98 SE a snad vymyslím lepší cestu s přenosem souborů. Pokud máte nějaké dotazy, námitky, pochvaly či kritiku, využijte formulář níže.


 

Stáhnout

Stažením následujícího souboru souhlasíš s licenčními podmínkami

Staženo 2317x (1.41 MB)

 

Všechny články v sekci
Archiv
Článek pro vás napsal David Hartinger
Avatar
Uživatelské hodnocení:
1 hlasů
David je zakladatelem ITnetwork a programování se profesionálně věnuje 15 let. Má rád Nirvanu, nemovitosti a svobodu podnikání.
Unicorn university David se informační technologie naučil na Unicorn University - prestižní soukromé vysoké škole IT a ekonomie.
Aktivity