Képzeljünk el egy esős délutánt. Kint tombol az ősz, bent pedig nosztalgikus hangulatban merengünk a múlt szebb napjain. Egyszercsak bevillan egy régi játék, egy feledésbe merült DOS alkalmazás, ami annak idején órákra, napokra elrabolt minket a valóságból. Előkapjuk a DosBox-ot, ezt a csodálatos emulátort, ami lehetővé teszi, hogy modern operációs rendszereken is fusson a több évtizedes szoftver. A program elindul, a régi pixeles grafika elhozza a várt örömöt… egészen addig, amíg billentyűzetet nem kell használni. Ekkor jön a hideg zuhany: az Y és Z felcserélődik, az ékezetes karakterek helyén fura jelek bukkannak fel, a „/” és a „-” is máshol van, mint kellene. Az egykori élmény hirtelen egy frusztráló harccá válik a billentyűzetünkkel. Ismerős a helyzet, ugye? Sokszor az ember a kétségbeesés szélére kerül, és legszívesebben földhöz vágná a gépet. Nos, lélegezzen fel! Ez a cikk végre pontot tesz az őrületre. Eláruljuk a DosBox billentyűzet kiosztás beállításának végleges megoldását, ami garantáltan működik, és visszahozza a rég elveszett harmóniát.
Miért okoz problémát a DosBox billentyűzet kiosztás?
Ahhoz, hogy megértsük a megoldást, először meg kell értenünk a probléma gyökerét. A DOS, mint operációs rendszer, alapvetően amerikai (QWERTY) billentyűzet kiosztásra épült. Még ha léteztek is nemzetközi DOS verziók, a legtöbb szoftver és játék az amerikai kiosztást feltételezte. A mai modern operációs rendszerek, mint a Windows vagy a Linux, viszont a világ minden táján elterjedtek, és támogatják a helyi billentyűzet kiosztásokat. Magyarországon például a QWERTZ kiosztás terjedt el, ahol az Y és Z betűk felcserélődtek a QWERTY-hez képest, és persze ott vannak az ékezetes karakterek is, amelyek az angol kiosztásban teljesen hiányoznak, vagy más helyen találhatók.
Amikor elindítjuk a DosBoxot, az egy komplett DOS alapú számítógépet emulál. Ez magában foglalja a hardvert is, amivel a DOS kommunikál. A DosBox igyekszik hűen szimulálni egy régi PC billentyűzetét. A probléma abból adódik, hogy a DosBox alapértelmezésben az amerikai billentyűzet kiosztást emulálja a *benne futó* DOS számára. Ezzel szemben a *fizikai* billentyűzetünk (amit a kezünkben tartunk) a magyar QWERTZ kiosztást használja. A kettő közötti eltérés vezet a bosszantó félreértésekhez: Ön lenyomja a „Z” billentyűt, de a DosBox azt hiszi, hogy „Y”-t nyomott, mert az amerikai kiosztásban ott van az „Y”. Hasonlóan, amikor egy ékezetes karaktert próbál bevinni, a DosBox nem tudja értelmezni, mert az emulált amerikai kiosztásban egyszerűen nincs hozzárendelve semmi az adott billentyűkombinációhoz. Ez a „nyelvi” akadály a fizikai és az emulált billentyűzet között okozza a fejtörést.
Téveszmék és ideiglenes megoldások, amik nem működnek
A billentyűzet kiosztás problémájával szembesülve sokan ösztönösen próbálnak meg különféle „gyors megoldásokat” alkalmazni, amelyek sajnos ritkán vezetnek tartós sikerre, vagy csak részlegesen orvosolják a bajt. Nézzük meg a leggyakoribb téveszméket és miért nem működnek:
- Az operációs rendszer billentyűzet kiosztásának megváltoztatása: Sokan megpróbálják a Windows vagy Linux billentyűzet beállításait angolra (QWERTY-re) állítani. Bár ez egyes programoknál segíthet, a DosBox esetében nem oldja meg a problémát gyökeresen. A DosBox továbbra is azt feltételezi, hogy egy amerikai billentyűzetről kapja a jeleket, és továbbra is az Y és Z betűk felcserélődve fognak megjelenni, ha a fizikai billentyűzetünk QWERTZ maradt. A DosBox-nak meg kell mondani, hogy az általa emulált DOS környezet melyik kiosztást használja.
KEYB XX
parancsok használata a DosBoxban: A DOS-nak valóban van egy beépített parancsa a billentyűzet kiosztás megváltoztatására, aKEYB
. Például aKEYB HU
elvileg beállítaná a magyar kiosztást. Bár ez működhet *ideiglenesen* egy DosBox munkameneten belül, amint újraindítjuk a DosBoxot, vagy egy másik játékkal foglalkozunk, a beállítás elveszhet, és minden alkalommal újra be kell írni a parancsot. Ráadásul nem minden DOS program érti ezt a beállítást, vagy nem megfelelően reagál rá. Ez sem egy végleges megoldás.- Vakon szerkesztett
dosbox.conf
fájl: Egyes felhasználók hallanak adosbox.conf
fájlról, mint a beállítások kulcsáról, és találomra módosítgatják benne a bejegyzéseket, remélve, hogy eltalálják a megfelelő paramétert. Ez gyakran vezet még nagyobb káoszhoz, vagy ahhoz, hogy a DosBox egyáltalán nem indul el, vagy más problémák merülnek fel. A kulcs a tudatos, célzott szerkesztés.
Ezek a próbálkozások általában csak növelik a frusztrációt, és elhitetik az emberrel, hogy a DosBox billentyűzet probléma megoldhatatlan. Pedig nagyon is van rá hatékony, egyszeri és megismételhető megoldás, ami a DosBox konfigurációs fájljában rejlik.
A végleges megoldás: a dosbox.conf fájl titkai
A DosBox egy rendkívül rugalmas emulátor, amelynek szinte minden aspektusa finomhangolható. Ennek a finomhangolásnak a központi eleme a dosbox.conf
nevű konfigurációs fájl. Ez egy egyszerű szöveges fájl, amelyben a DosBox elindításakor minden beállítást megtalál. A billentyűzet kiosztás beállításához két kulcsfontosságú szekcióra és paraméterre lesz szükségünk:
1. A [dos]
szekció és a keyboardlayout
paraméter
Ez a szekció felelős a DosBox emulált DOS környezetének beállításaiért. Itt adhatjuk meg a DosBoxnak, hogy milyen típusú billentyűzetet *emuláljon* a DOS számára, figyelembe véve a *fizikai* billentyűzetünk kiosztását. A varázslatos paraméter a keyboardlayout
.
Ennek a paraméternek az értéke egy kétbetűs kód, amely a kívánt nemzeti billentyűzet kiosztást jelöli. Magyarországon a hu
kódra van szükségünk. Ha más országban él, vagy más kiosztást szeretne, íme néhány gyakori példa:
us
: Amerikai QWERTYde
: Német QWERTZfr
: Francia AZERTYuk
: Angol QWERTY (néhány apró eltéréssel az US-től)es
: Spanyolit
: Olasz
Mit is csinál pontosan ez a beállítás? A keyboardlayout=hu
utasítja a DosBoxot, hogy vegye figyelembe, hogy a bejövő billentyűleütések egy magyar (QWERTZ) kiosztású fizikai billentyűzetről érkeznek. A DosBox ezután *átalakítja* ezeket a jeleket úgy, hogy az emulált DOS környezet (ami továbbra is „amerikainak” gondolja magát) helyesen értelmezze őket. Ez a kulcsa az Y és Z felcserélődésének megszüntetésének, és az ékezetes karakterek megfelelő bevitelének.
Hol találja meg a dosbox.conf
fájlt?
Ez operációs rendszertől és a DosBox telepítésétől függően változhat:
- Windows: Gyakran a
C:Program Files (x86)DOSBox-0.74
(vagy hasonló verziószámú mappában) található, vagy a felhasználói profil mappájában (pl.C:UsersFelhasználónévAppDataLocalDOSBox
). Néhány esetben a parancsikon „Cél” mezőjében is megadható a konfigurációs fájl elérési útja. A legegyszerűbb módszer, ha a Start menüben rákeres a „DosBox Options” vagy „DosBox Configuration” menüpontra, és rákattint. Ez közvetlenül megnyitja a megfelelődosbox.conf
fájlt egy szövegszerkesztőben. - Linux/macOS: Általában a felhasználó home könyvtárában, egy rejtett mappában található, pl.
~/.dosbox/dosbox-0.74.conf
vagy/usr/local/etc/dosbox.conf
.
Nyissa meg a fájlt egy egyszerű szövegszerkesztővel (Jegyzettömb, Notepad++, VS Code, Gedit stb.). Keresse meg benne a [dos]
szekciót, és adja hozzá vagy módosítsa a keyboardlayout
paramétert a következőképpen:
[dos]
keyboardlayout=hu
Mentse el a fájlt, és indítsa újra a DosBoxot. Ez önmagában a legtöbb felhasználó számára megoldja a fő problémát!
2. A [sdl]
szekció és a mapperfile
paraméter (haladó beállítás)
Bár a keyboardlayout
paraméter a legtöbb esetben elegendő, előfordulhatnak egyedi problémák. Például, ha egy nagyon speciális billentyű hiányzik, vagy egy adott játék egyedi billentyűzet kiosztást vár el, akkor szükség lehet a DosBox keymapper funkciójára. A [sdl]
szekció az SDL (Simple DirectMedia Layer) könyvtárhoz kapcsolódó beállításokat tartalmazza, amit a DosBox a grafika és a beviteli eszközök kezelésére használ.
A mapperfile
paraméterrel megadhatjuk egy egyedi billentyűzet leképezési fájl elérési útját. Ezt a fájlt a DosBox saját billentyűzet leképező (keymapper) eszközével hozhatjuk létre és szerkeszthetjük.
Hogyan használjuk a DosBox keymappert?
- Indítsa el a DosBoxot.
- Nyomja meg a
CTRL + F1
billentyűkombinációt. Ekkor megnyílik a DosBox Keymapper felülete. Ez egy grafikus felület, ahol láthatja az emulált billentyűzetet. - Billentyű leképezése:
- Kattintson az emulált billentyűzet azon billentyűjére, amelyet módosítani szeretne (pl. a
Z
billentyűre, ha az Y/Z problémát akarná manuálisan orvosolni). - A jobb oldalon megjelenik az aktuális hozzárendelés. Kattintson a „Delete” gombra, hogy törölje az eredeti hozzárendelést.
- Kattintson az „Add” gombra, majd nyomja le a fizikai billentyűzetén azt a billentyűt, amit az emulált billentyűre szeretne leképezni. Például, ha az emulált „Z” billentyűt szeretné, hogy a fizikai „Z” billentyűvel működjön, válassza ki az emulált „Z”-t, majd nyomja le a fizikai „Z”-t.
- Figyeljen arra, hogy a
keyboardlayout=hu
beállítás már elvégezte a főbb leképezéseket, ezért a keymapperre inkább csak egyedi problémák esetén van szükség.
- Kattintson az emulált billentyűzet azon billentyűjére, amelyet módosítani szeretne (pl. a
- Mentés: Miután elvégezte a kívánt változtatásokat, kattintson a „Save” gombra, és nevezze el a fájlt (pl.
mapper-hu.map
). Ügyeljen arra, hogy oda mentse, ahol adosbox.conf
fájlja is található, vagy egy könnyen elérhető helyre. - Hivatkozás a
dosbox.conf
-ban: Nyissa meg adosbox.conf
fájlt, és a[sdl]
szekcióban adja hozzá vagy módosítsa amapperfile
paramétert a mentett fájl nevére:
[sdl]
mapperfile=mapper-hu.map
Ez a módszer akkor hasznos, ha rendkívül speciális beállításokra van szüksége, vagy ha egy bizonyos billentyű továbbra sem úgy viselkedik, ahogy elvárná. Fontos megjegyezni, hogy a mapperfile
használata egy haladó opció, és a legtöbb esetben a keyboardlayout=hu
elegendő a magyar billentyűzet teljes funkcionalitásának eléréséhez.
Összefoglalva: A teljes konfiguráció
A fent leírtak alapján a dosbox.conf
fájljában a következő bejegyzéseknek kell szerepelniük a végleges billentyűzet kiosztás megoldáshoz:
[dos]
keyboardlayout=hu
[sdl]
mapperfile=
Fontos: A mapperfile=
sort hagyhatja üresen, vagy törölheti, ha nem hozott létre egyedi mapper fájlt, vagy ha a keyboardlayout=hu
már minden problémáját megoldotta. Ha létrehozott egy mapper-hu.map
fájlt, akkor az úgy nézzen ki, ahogy fentebb írtuk: mapperfile=mapper-hu.map
.
Ne feledje, mindig mentse el a dosbox.conf
fájlt a módosítások után, és indítsa újra a DosBoxot a változtatások érvénybe lépéséhez!
Hibaelhárítás és tippek
Bár a fenti módszer a legmegbízhatóbb, előfordulhat, hogy mégis problémákba ütközik. Íme néhány gyakori probléma és azok megoldása:
- „A
dosbox.conf
beállításaim nem érvényesülnek!”Gyakori hiba, hogy több
dosbox.conf
fájl létezik a rendszeren. A DosBox alapértelmezésben a globális konfigurációs fájlt használja, de ha egy játékkönyvtárba is lemásolta adosbox.conf
fájlt, és onnan indítja el a játékot (pl. a DosBox parancssorában a-conf
kapcsolóval), akkor az adott játék saját konfigurációja fog érvényesülni. Ellenőrizze, hogy a megfelelődosbox.conf
fájlt szerkeszti! - „Még mindig nem működik tökéletesen!”
- Próbáljon más
keyboardlayout
kódot: Ritka esetben előfordulhat, hogy egy régebbi DOS program vagy játék kifejezetten amerikai (us
) kiosztást vár el. Ha ahu
beállítással még mindig gondok vannak, próbálja meg átmenetilegkeyboardlayout=us
-ra állítani, és tesztelje, hogy akkor jól működik-e a játék. Ha igen, akkor a probléma nem a DosBox beállításában, hanem a játék programozásában van. - Manuális
KEYB HU
parancs: Bár akeyboardlayout=hu
a legtöbb esetben feleslegessé teszi, nagyon ritkán szükség lehet arra, hogy a DosBox indítása után beírja aKEYB HU
parancsot a DosBox parancssorába. Ezt akár automatizálhatja is adosbox.conf
fájlban az[autoexec]
szekcióban:[autoexec] KEYB HU @ECHO OFF ...
De ismételjük: ez a
keyboardlayout
beállítás mellett csak extrém ritka esetekben szükséges. - A mapper fájl visszaállítása: Ha a
CTRL+F1
-gyel túl sok mindent elállított, és elrontotta a leképezéseket, törölje a létrehozott.map
fájlt, és vegye ki amapperfile
bejegyzést adosbox.conf
fájlból. Ezzel visszaáll a billentyűzet kezelése akeyboardlayout
paraméter által definiált alapértékekre.
- Próbáljon más
- Játék-specifikus konfigurációk: Ha csak egy bizonyos játékkal van billentyűzet gondja, érdemes lehet egy másolt
dosbox.conf
fájlt elhelyezni az adott játék mappájában, és azt módosítani. Így az általános DosBox beállításai érintetlenek maradnak.
Felejtse el a frusztrációt, merüljön el a nosztalgiában!
A billentyűzet kiosztás problémája az egyik leggyakoribb és legbosszantóbb akadály a DosBox használata során. Azonban, mint láthatta, a megoldás egyszerű, ha tudjuk, hova nyúljunk. A dosbox.conf
fájl [dos]
szekciójában található keyboardlayout=hu
paraméter beállítása az esetek döntő többségében azonnali, tartós és teljes megoldást nyújt a magyar billentyűzet használatához a DosBoxban.
Nincs többé felcserélt Y és Z, nincs többé hiányzó ékezet, és nincs többé mérgelődés. Felszabadult a gépelés, visszatért a játékélmény! Most már semmi sem állhat az útjába, hogy újra átélje a régi DOS játékok feledhetetlen pillanatait, vagy hasznos régi programokkal dolgozzon. Kérjük, ossza meg velünk tapasztalatait a kommentekben! Melyik régi DOS alkalmazást vagy játékot vette elő újra, miután végre megoldódott a billentyűzet gond? Sok sikert és jó szórakozást!