Jak na DOSBox – rady, tipy, doporučení

Co se týče her pro DOS, neuznávám kompromisy. Proto se bez ustání šťourám v DOSBoxu ve snaze nalézt ideální a univerzální konfiguraci, která mi dovolí hraní starých her pro DOS v co možná nejvyšší kvalitě. A zdá se, že jsem se konečně vytoužené dokonalosti přiblížil.

Jak na DOSBox – rady, tipy, doporučení

Volba správné verze DOSBoxu

Vývoj oficiální verze jde tak pomalu, že téměř ustrnul. Naštěstí jsou tu neoficiální forky, které na požadavky hráčů reagují poněkud pružněji. Za sebe mohu doporučit DOSBox ECE - Enhanced Community Edition. Má totiž řadu zajímavých vylepšení, mimo jiné:

  • podporu 3dfx Voodoo přes OpenGL
  • nové scalery - 4x, 5x, 6x
  • pixel-perfect / near-perfect výstup (o něm bude ještě zmínka níže)
  • vylepšenou OPL3 emulaci (dtto)
  • emulaci Roland MT-32 (Munt)

Nastavení emulovaného počítače - dosbox.conf

Vycházím z toho, že počítač, na kterém je emulováno, má adekvátní výkon. Níže uvedená nastavení mám dlouhodobě ozkoušená na Intel Core i5 3570 / 3.4GHz (Ivy Bridge). Dnešní optikou jde téměř o těžítko ;)

Řekněme, že ideálem, kterému se chceme přiblížit, je 486DX4/100MHz, 16MB RAM a Sound Blaster kompatibilní karta s OPL3 syntézou. Zcela záměrně žádný velký hi-tech, ale poctivý a vysoce kompatibilní standard.

[cpu] - nastavení procesoru

Položku core nastavme na normal - pomalejší než dynamic, ale stabilnější. Dále nás zajímá položka cycles. Hodnoty auto a max fungují prachbídně, zvlášť max většinou přestřelí možnosti počítače a emuluje stroj za hranicemi jeho možností. Bezpečná volba, která by měla být přibližně na úrovni 486ky na 100MHz, je fixed 40000.

[cpu]
core = normal
cycles = fixed 40000

Přibližně otestovat výkon emulovaného CPU můžete pomocí benchmarku Speed Test 1.14 (mirror1, mirror2).

[sdl] a [render] - nastavení grafiky

V ideálním případě chceme obvyklé rozlišení DOSových her, tedy 320x200, celočíselně znásobit na 1600x1200 (5x320 = 1600, 6x200 = 1200) a zobrazit ho 1:1 přes celou obrazovku. Dosáhneme tak ostrého obrazu se správným poměrem stran a vyhneme se nepřesnostem, které vznikají interpolací. To pochopitelně předpokládá, že máme vhodný monitor s rozlišením 1600x1200 nebo 1920x1200.

Doporučené čtení:
No, MS-DOS games weren't widescreen
K DOSBoxu jedině 1920×1200 monitor

V méně ideálním případě necháme nový pixel-perfect scaler, aby se pokusil co nejblíže přiblížit nativnímu rozlišení monitoru. Provádí to tak, že obraz celočíselně znásobí do vyššího rozlišení a poté ho zmenší pomocí bilineární inerpolace. Což je patrně nejlepší z možných řešení.

Neprve v sekci [render] vypneme staré scalery, tedy nastavíme scaler=none, a aktivujeme korekci poměru stran, tedy aspect=true. V sekci [sdl] dále nastavíme rozlišení na nativní, tedy fullresolution=desktop, a výstup přepneme na nový scaler přes output=surfacenp.

[sdl]
fullresolution=desktop
output=surfacenp

[render]
scaler=none
aspect=true

[mixer] a [sblaster] - nastavení zvuku

Zvuk a hudba - podceňovaná, ale dle mého názoru veledůležitá složka kvalitního retro zážitku. V sekci [mixer] nastavíme rate na 49716. Ne snad, že bychom tím ovlivnili kvalitu digitálních samplů, na kterou by se žádný klasický Sound Blaster beztak nezmohl, ale jde o důležité nastavení kvůli FM syntéze, viz dále.

V sekci [sblaster] doporučuji v sbtype nastavit sbpro1, tedy emulaci zvukové karty Sound Blaster Pro, přesněji prvního modelu. Osvědčilo se mi to jako zdaleka nejkompatibilnější volba. V oplmode nastavíme opl3 a v oplemu zvolíme nuked. Nuked je pravděpodobně nejpřesnější OPL3 emulátor a jeho současná verze je v zásadě k nerozeznání od originálu. Nezapomeňme v oplrate zadat 49716, což je vzorkovací frekvence OPL3.

[mixer]
rate=49716

[sblaster]
sbtype=sbpro1
oplmode=opl3
oplemu=nuked
oplrate=49716

Fajnšmekři si dále mohou vylepšit zážitek zprovozněním emulace zvukového zařízení Roland MT-32. Dosbox ECE má vestavěný emulátor Munt, jediná další věc, kterou potřebujete, jsou ROM soubory MT32_CONTROL.ROM / CM32L_CONTROL.ROM a MT32_PCM.ROM / CM32L_PCM.ROM (dají se vygooglit). Ty nahrajte do jednoho adresáře (ROM_DIR) a nastavte:

[midi]
mididevice=mt32
mt32.romdir= ROM_DIR

Doporučení

Není od věci v sekci [autoexec] automaticky připojit adresář, který budeme chápat jako disk C:\ emulovaného počítače. Doporučuji do něj hned nahrát Volcov Commander, nebo podobný souborový manažer. Praktické je i namountování optické mechaniky, máte-li v PC nějakou.

Např.:

[autoexec]
mount C "E:\Emulace\DOS\"
mount D "M:\" -t cdrom
c:\vc.com

A dál už je to jako na staré dobré 486ce :)

Osobně mám ještě v sekci [sdl] nastaveno windowresolution=1280x960. Po přepnutí do okna se totiž hry, které běží v rozlišení 640x480, zobrazí znásobené do 1280x960. Což preferuji před interpolací do nativního fullscreenu, v mém případě 1920x1200. Samozřejmě máte-li monitor s jemnějším rozlišením, volte další celočíselné násobky.


Dobrým testem, zda vše funguje jak má, je DOOM timedemo se zapnutým zvukem (např. DOOM.EXE -timedemo demo3). Pokud vše běží plynule a zvuk žádným způsobem nepřeskakuje a nevypadává, pak má počítač, na kterém je emulováno, dostatek síly k emulaci. Pokud zvuk zlobí, nezbývá než experimentovat s nižšími cykly, popř. zkusit core=auto / core=dynamic. Ale upřímně řečeno - v takovou chvíli je spíše vhodné uvažovat o pořízení výkonnějšího PC ;)

Na závěr nezbývá než konstatovat, že jde stále jen a pouze o emulaci, a že narazíte na desítky her, které s výchozím nastavením nepoběží dobře. Naštěstí většinou zabere pouhá úprava cyklů. Nicméně i tak si myslím, že dobře nastavený DOSBox může předčit jen jedna jediná věc, a to vyladěná 486ka připojená ke kvalitnímu CRT monitoru. Už ve chvíli, kdy máte adekvátní staré PC, ale pouze LCD monitor, úroveň zážitku klesá.

Nyní mě omluvte, jdu se dále kochat barevnými a pekelně ostrými pixely v adventuře Simon the Sorcerer :)

  • Kategorie: PC

Komentáře k:
"Jak na DOSBox – rady, tipy, doporučení"

Přidej komentář (přihlášení / registrace)

(Komentáře s více jak 2 odkazy musí počkat na schválení.)