ty64 Commodore 64 emulátor

magyar english

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:

Vezérlőelemek

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ó.
Turbó mód, hatására dupla sebességgel fut az emuláció.
(Dupla terhelést jelent a gépnek.)
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
.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.
URL megnyitása. Nem kell letöltened a megnyitni kívánt fájlokat a netről. Elég, ha megadod az elérési útjá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, mindkét helyről automatikusan megnyitja az emulétor a talált C64-es tartalmat.
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ő.
D64 állomány (lemez) behelyezése a lemezmeghajtóba. Amennyiben van benne lemez, kattintásra annak tartalomjegyzékét mutatja. A lista állományai kattintással betölthetők.
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 panel nyitógombja melletti joystick ikonokra kattintva húzhatók ki illetve dughatók be a joystickok az adott control portba.
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 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.
A nappali és az éjszakai színtéma között váltó gomb.
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ő.
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.
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.)
Teljes képernyős módba váltás. Az F11 gombbal is elérhető.
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 a státusz soron.
Ez a doksi. :)
A vágólapon lévő szöveget beilleszti a C64-be. BASIC kódok gyors bevitelére alkalmas.
Kiolvassa a képernyő szöveges tartalmát, és kimásolja a vágólapra. A C64-en megjelenő "szövegek" valódi szöveggé alakításához való.
A sebességmérő ki/bekapcsolása.
Betölt és lejátszik egy véletlen SID fájlt a HVSC teljes kínálatából.
Megnyit egy véletlenszerű C64-es játékot egy új tabon.
Erre kattintva tudod támogatni ezt a projektet.

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:

Kapcsolat és támogatás

Az észrevételeidet elküldheted az címre.
A dedikált játékoldalak listáját itt találod!
A projektet ide kattintva támogathatod!


Jó szórakozást kívánok az emulátor használatához!
Tóth Krisztián