ty64 Commodore 64 emulátor
A ty64 egy vadonatúj Commodore 64 emulátor webböngészőkre, teljesen a nulláról, natív javaScript nyelven írva. Az elsődleges célom a projekttel kapcsolatban a tanulás, a C64 minél alaposabb kiismerése. Ezen kívül célom az online platform előnyeit kihasználó, minimális gépigényű, könnyen kezelhető, szerethető, felhasználóbarát emulátor létrehozása.
A ty64 emulátor jelenleg aktív fejlesztés alatt áll, de a nagy érdeklődésre való tekintettel szabadon használható a fejlesztés ideje alatt is, így bárki nyomon követheti a projekt alakulását. A jelenlegi verzió messze van még a tökéletestől, de már most is megfelel a használati esetek 99%-ának.
Fontos információk
Elengedhetetlen egy modern webböngésző használata az emulátor futtatásához. A legjobb teljesítményt sorrendben a Brave, az Opera, a Chrome és a Firefox böngészők nyújtják, de használható bármilyen más, hasonló motorral működő modern böngésző is.
Pár tipp az alkalmazás gördülékeny használatához:
- Ez egy asztali számítógépekre készített szoftver. Az ajánlott minimális böngészőablak méret 1440 pixel széles és 720 pixel magas.
- Javaslom a böngészőbe felvett kiegészítők letiltását az emulátor oldalára, mert azok jelentős mértékben le tudják rontani a teljesítményt.
- Javaslom, hogy a böngésző biztonsági beállításainál engedélyezd a hangok automatikus lejátszását. Anélkül csak az első felhasználói interakció után fog hangot adni az emulátor.
- Figyelj rá, hogy ne használj olyan billentyűkombinációkat, amiket a böngészők saját funkcióikra lefoglaltak. Ezeket a kombinációkat nem lehet felülírni. Például ne használd egyszerre a CTRL billentyűt tűzgombként és a W betűt felfelé irányként, mert ezen billentyűk együttes lenyomása a böngészőfül bezárását kezdeményezi.
- A program főként a processzort veszi igénybe, másodsorban a videokártyát. Akkor optimális a futási sebesség, ha a beépített teljesítménymérő 50% alatti értéket mutat.
- Mivel még aktív fejlesztés alatt áll a program, ezért a régebben kimentett állások (.ty64 file) egy következő verzió kiélesítése után már nem biztos, hogy működni fognak.
- Az emulátor megjegyzi a bezáráskori állapotát, vagyis a weboldal újbóli megnyitásakor pontosan ugyanonnan folytatódik az emuláció, ahol abbamaradt. Ha bármi elromlott volna, vagy ha szeretnéd a gyári beállításokat visszaállítani, akkor nyisd meg a reset linket: https://ty64.krissz.hu/reset/
Vezérlőelemek
| File megnyitása és betöltése a gépbe. Az alábbi fájltípusokra van lehetőség: .prg - C64 bináris .t64 - C64 kazetta .d64 - C64 lemez .crt - C64 cartridge .sid - SID zenefájl .ty64 - a ty64 emulátor saját mentési formátuma Ha az ikonra kattintás közben nyomva tartod a SHIFT billentyűt, akkor a betöltött program nem fog automatikusan elindulni, csak betöltődik a gépbe. Ez például a BASIC kód kilistázásához, vagy POKE csítek beírásához alkalmas. Drag and drop módszerrel is működik a fájlok betöltése. | |||||||||||||||
| URL megnyitása. Nem kell letöltened a megnyitni kívánt fájlokat a netről. Elég, ha megadod a webcímét, és az emulátor magától meg fogja nyitni. Továbbá megadható csdb release URL is, illetve HVSC SID elérési útvonal is, ezekről a helyekről automatikusan megnyitja az emulétor a talált C64-es tartalmat. | |||||||||||||||
| Számítógép megosztása, közös számítógéphasználat. Válaszd ki, hogy megosztani szeretnéd a gépedet, vagy csatlakozni szeretnél egy megosztáshoz. Az összepárosítás nagyon egyszerű, annyiból áll, hogy a hoszt elküldi a számára generált nyolc karakterből álló kódot a meghívott partnerének, aki bemásolja azt a felugró mezőbe. És már él is a kapcsolat! (A hálózati funkcióról bővebben lentebb.) | |||||||||||||||
| Az emulált gép állapotának lementése .ty64 fájlba. SID zenelejátszó módban a .sid fájlt menti le. | |||||||||||||||
| Az emulált gép állapotának gyors mentése. Nem töltődik le fájl, a mentést a böngésző őrzi meg, így akár játék közben is gyorsan rá lehet nyomni. A funkció az F12 gombbal is elérhető. | |||||||||||||||
| A gyorsmentés gyors visszatöltése. Gombnyomásra azonnal visszaáll a gyorsmentett változat. A funkció az F9 gombbal is elérhető. | |||||||||||||||
| Az 1541-es floppy meghajtó állapotát mutatja. Itt lehet berakni floppy lemezt (d64 állományt) a lemezmeghajtóba, illetve kivenni belőle azt. Amennyiben van bent lemez, annak tartalomjegyzékét is listázza. A lista PRG állományai kattintással betölthetők. | |||||||||||||||
| A bővítőport állapotát mutatja. Itt lehet berakni cartridge chipeket (crt állományt) a portba, illetve kivenni belőle azt. Amennyiben van bent cartridge, annak alap információit is megmutatja. A cartridge mindenképp átveszi a vezérlést a gép indításakor, vagyis a gép normál használatához előbb el ki kell venni a cartridget. | |||||||||||||||
| A grafikus billentyűzet megnyitása. Ha nem találsz egy C64-es gombot a billentyűzeteden, itt rákattintva be tudod nyomni azt. | |||||||||||||||
| A joystick kiosztás panel megnyitása. Beállíthatók, hogy mely billentyűket kezelje úgy az emulátor, mintha azok a joystickok irányai lennének. Illetve ha gamepaddal szeretnél játszani, akkor annak egy gombját megnyomva, hozzáadódik a választható controllerek listájához. A gamepad használata annyival szerencsésebb, hogy nem fed le a billentyűzeten gombokat. A panelen megjelenő joystick rajzokra kattintva lehet kihúzni vagy bedugni őket a gépbe. A gombbal, vagy a SCROLL LOCK-kal pedig gyorsan meg lehet cserélni a két joystickot, mintha kihúznád mindkettőt és átdugnád a másik portba. | |||||||||||||||
| A számítógép ki- és bekapcsolása, hard reset. | |||||||||||||||
| Az emuláció megállítása vagy folytatása. A PAUSE billentyűvel is elérhető a funkció. | |||||||||||||||
| Az emuláció képkockánkénti (framenkénti) léptetése. | |||||||||||||||
| Turbó mód, hatására dupla sebességgel fut az emuláció. A NUMPAD DELETE gombot nyomva tartva gyorsabban elérhető ez a funkció, mint az ikonra kattintva, így játék közbeni gyorsításhoz is optimális. | |||||||||||||||
| Idővonal megtekintése, és az idő visszapörgetése. Az emuláció utolsó két percének tetszőleges időpontjába vissza lehet térni. Mintha egy filmszalagot tekernél, előre-hátra, majd a számodra tetszőleges ponton folytatható az emuláció. Nehéz játékok esetén ez még a gyorsmentésnél is jóval használhatóbb funkció. A NUMPAD INSERT gombját nyomva tartva, a panel nyitása nélkül, játék közben, instant vissza lehet tekerni a múltba, ez így a legtökéletesebb örökélet csalás. | |||||||||||||||
| Képmentés készítése az előtérről, 320x200-as felbontásban. A SHIFT billentyűvel nyomva az egész képernyőről készül felvétel, 384x272-es felbontásban. Játék közben gyorsan a PAGE DOWN gombbal is elérhető. | |||||||||||||||
| A kép méretét, a színpalettát, és a vizuális filtereket lehet állítani ebben a felugró ablakban. Egy filter bekapcsolása a paletta átállítását is magával vonzhatja. | |||||||||||||||
| SID panel megnyitása. A ty64 emulátor 3 SID chipet támogat. Az ezekben zajló változások tekinthetők meg vizuálisan, valamint állíthatók a SID-ek memóriacímei és típusai. A SID-ek hangzásának és a környezeti hangoknak (billentyűzet, joystick) külön hangerőszabályzója van. SID file megnyitásakor ez a panel magától kinyílik. | |||||||||||||||
Apróbb menüpontok gyűjtője. Ebbe a felugróba kerültek azok a funkciók, amik nem olyan lényegesek, hogy fix helyet foglaljanak az alsó sávban.
|
Hálózati játék / közös géphasználat
A közös géphasználat funkció révén a gépét megosztó felhasználó gépéhez tud csatlakozni a meghívott partner. A koncepció az, mintha fizikailag egy helyen, egy gép előtt ülne a két ember, és közösen használnák azt. Azaz közös a billentyűzet, a joystickok, vagyis ha bármelyik fél leüt egy billentyűt, vagy mozgatja a joystickot, vagy átírja a joystick vezérléséhez hozzárendelt billentyűt, tehát ha bármin állít, az szinkronban a másik oldalon is látszódik és megtörténik. A funkció nyilván arra is alkalmas, ha csak meg akarsz mutatni valamit a havernak, nem szükséges a partnernek beavatkoznia, maradhat szemlélő is.
Programokat betölteni, lemezeket felcsatolni, mentéseket készíteni csak a gép gazdája, a meghívó fél tud. Ha valamiért megszakad a kapcsolat, akkor a vendég fél visszakerül a saját emulációjába, a hosztnál viszont megáll a közös emuláció, azért, hogy a későbbi újracsatlakozáskor pontosan ugyanonnan tudja folytatni közös tevékenységét a két fél, ahol abbahagyták. Vagy ha hosszabb ideig nincs net, akkor a hoszt le tudja menteni a gép állását, így egy későbbi időpontban tudják folytatni, vagyis a közösen létrehozott munka/játék nem vész el.
A hálózati játék tesztek során azt tapasztaltam, hogy két kulcs tényezője van a folyamatos játékélménynek:
- A legfontosabb a gépek teljesítménye. Ha a teljesítménymérő 50% feletti értéket mutat akármelyik félnél offline állapotban, a gép bekapcsoláskor, akkor a hálózati játék esetén előfordulhatnak késleltetések, megakadások, adatcsomag feltorlódások, mert ekkor a gép nem tudja olyan sebességgel kiküldeni/fogadni az adatcsomagokat, ahogyan az elvárható lenne.
- A második legfontosabb a két gép közötti fizikai távolság. Két nagyon erős gép esetén is mutatkozhat késleltetés akkor, ha az adatcsomagokat a Föld túloldalára kell elküldeni.
Kapcsolat
Az észrevételeidet elküldheted az címre.
A dedikált játékoldalak listáját itt találod!
Jó szórakozást kívánok az emulátor használatához!
Tóth Krisztián