myIO · Commodore 64 · 2026

myIO C64 Cartridge

Egy bedugható cartridge, amitől egy negyvenéves Commodore 64 okosotthon-kezelőpult lesz. Bekapcsoláskor a myIO menüjébe indul, WiFi-n beszél a myIO vezérlővel, egérrel és billentyűzettel kezelhető, és böngészőből, sőt egy AI-asszisztensből is elérhető. Ha nincs kéznél C64, a cart emulál egyet. Két cartridge-dzsel a Wizard of Wor hálózaton játszható.

  • WiFi
  • microSD
  • USB egér + billentyű
  • webes felület
  • AI + MCP
  • OTA-frissítés
  • C64 nélkül is
  • SID a böngészőben
  • WOW ONLINE
A cartridge főmenüje: a hullámzó myIO logó alatt tíz menüpont és a smarthome.ninja cím
valódi C64 A főmenü a cartridge ROM-jából. A logó hullámzását a ROM képletével animáltuk a valódi képkockán.
Főmenü

Tíz pont, egy gombnyomásra

A ROM csak indító. Minden képernyő program az ESP32-n, így frissítéskor nem kell a ROM-hoz nyúlni.

myIO Smart Home kék témával: hangulatfény, hőszenzor 25,3 fok, nappali és konyha lámpa, hálószoba-fűtés 100 százalékon, fürdő fűtés
valódi C64 Smart Home élő adattal a myIO szerverről, kék témában.
myIO Smart Home

Csempés kezelőpult 40 × 25 karakteren

Ugyanazok az eszközök, mint a myIO appban, fülekre bontva: pult, logika, kimenet, redőny, termo, szenzor.

  • Kattintás kapcsol, jobb gomb megnyitja a csempe beállítását (név, ikon, pulton legyen-e).
  • Dimmer és fűtés csúszkával, szenzorok mértékegységgel.
  • F1/F3 vagy a jobb alsó nyilak lapoznak, F5 típust vált, F8 témát vált, F7 vissza a menübe.
  • A fejléc mutatja, élő szerverről vagy demó-adatból megy.
Animáció: az egérkurzor lámpa-csempékre kattint, amelyek be- és kikapcsolnak, majd a második oldalra lapoz és vissza
szimulátor Kapcsolás egérrel és lapozás. A valódi program fut, 6502-emulátorban, demó-adattal.
Csempe-beállító ablak: név, ikonválasztó, állapot BE/ki, pulton igen/nem
szimulátor Csempe beállítása jobb kattintásra.
myIO 3D

A ház röntgenképe

Drótvázas 3D ház a myIO alaprajzból, az eszközök ikonjai a helyükön. A bekapcsolt lámpák szobájának padlója kivilágosodik, a fűtött helyiség padlója pirosas. Egérrel forgatható, eltolható és nagyítható.

A képet az ESP32 számolja ki, a C64 csak megjeleníti, ezért marad folyamatos a mozgás.

Animáció: a demó-ház 3D röntgenképe 360 fokban forog, két szobában ég a lámpa, a fürdőben padlófűtés megy
szimulátor A nappaliban és a hálóban ég a lámpa, a fürdőben megy a padlófűtés. Ugyanaz a renderkód, ami a cartridge-en fut.
myIO Stúdió → C64

A saját házad, a Stúdióból

A 3D-nézet nem egy beégetett ház. A myIO Stúdióban megrajzolt tervrajz egy kattintással átvihető a C64-re: falak, ajtók, ablakok, szobák és a lerakott eszközök, a myIO kimenetekhez kötve.

ESP player

Doom egy 1 MHz-es gépen

Az ESP32-S3 futtatja a programot, a kész képkockát DMA-val írja a C64 memóriájába. A C64 joystickkal vagy billentyűzettel irányít. Választható image-ek:

  • Doom (Freedoom), C64-palettára konvertált képpel
  • EGA-játékok: Catacomb Abyss, BioMenace
  • Game Boy emulátor
  • Alap: 3D-nézet és Smart Home

Image-váltáskor az ESP újraindul, ez kb. 15 másodperc. A gombkiosztás a webes felületen állítható.

myIO ESP Player menü: programok, más image-ek Doom, EGA-játékok, Game Boy
valódi C64 A player menüje.
Doom beállítás-menüje C64-színekkel, alul lőszer, életerő és páncél kijelző
szimulátor Doom-képkocka C64-palettán.
WOW ONLINE

Wizard of Wor hálózaton, két valódi C64 között

Az egyik cartridge a szerver: a játék a beépített C64-emulátorában fut. A résztvevők C64-ei a pályát a saját videochipjükkel rajzolják, a saját SID-jükkel szólnak, 50 kép/s-sel; a WiFi-n csak a joystick és a játékállapot változása megy. Böngészőből bárki benéz, vagy beáll a sorba, telefonról is.

  • Szobák a helyi hálózaton: ÚJ SZOBA az egyik gépen, a másik magától megtalálja; becenév a carton.
  • A sor dönti el, ki játszik: menetek között 3 másodperces ajánlat („NYOMJ TÜZET!”), a tűz foglalja a helyet; a menet végén a játékosok a sor végére állnak.
  • Négy játékos: sárga, kék, zöld, lila és négy szörny; mindenki mindenki ellen, csapat 2v2 vagy kooperatív.
  • 3D-nézet: az első találat „kilövi a radart”, és a sérült játékos a labirintust belső nézetből látja, a saját kijelzőjén; a következő találat élet, vissza a felülnézetbe.
  • Nem videó: a szerver C64-állapot-különbséget küld, kb. 60 bájtot képkockánként; a kép a vevő gépen áll össze.

A Wizard of Wor a jogtulajdonosáé; a játékfájl nem része a cartridge-nek, a hálózati változatot zárt körben próbáljuk.

A WOW ONLINE sor-képernyője a C64-en: SÁRGA, KÉK, ZÖLD, LILA helyek, két becenév a sorban NYOMJ TÜZET felirattal, N = NÉZŐ, J = JÁTSZOM, V = NÉZET
valódi C64 A sor a menetek között: két cartridge, két becenév.
A 3D-nézet a C64-en: sötétkék folyosó belső nézetből, szemben egy szörny, alul az életek
emulátor 3D-nézet az első találat után, a sérült játékos kijelzőjén.
A Wizard of Wor pályája a C64-en: kék labirintus, radar, a sárga játékos és a szörnyek, DUNGEON 2
emulátor A pálya a játékos saját C64-én rajzolva, a saját VIC-jével és SID-jével, 50 kép/s.
cart-szerver :6464 · WOW ONLINE
A böngészős WOW ONLINE lap: a futó pálya, jobbra a játékosok, a sor és a nézők, felül a játékmód és a nézet választója, alul a C64-gombok, Hang, Teljes képernyő és Meghívó link
emulátor Ugyanaz a menet a böngészőben: játékosok, sor, nézők, SID-hang, meghívó link.
Játékos C64joystick
Cart-szervera játék az emulátorban
Játékos cartnatív kép + SID a C64-re
Böngészőnéző vagy játékos 🔊
C64 nélkül is

Nincs kéznél C64? A cart emulál egyet.

A cartridge-ben egy teljes Commodore 64 is fut, saját emulátorként. USB-C-tápról, C64 nélkül magától elindul, és minden ugyanúgy megy rajta, mint a valódi gépen: a menü, a Smart Home, a 3D-ház, az AI Ninja, a BASIC @-parancsai és a játékok. A képet a böngésző rajzolja a /mon oldalon, telefonon is.

  • Magától indul, ha nincs bekapcsolt C64 a porton. Ha bekapcsolod a C64-et, az emulátor átadja a helyét, és a valódi gépen jön a menü.
  • Bevitel: USB-billentyűzet a cartridge-re dugva, a böngésző billentyűzete és egere, telefonon érintőpad és billentyűzet. A joystick a billentyűzetről megy.
  • WiFi nélkül is: a telefon a cartridge saját hálózatára csatlakozik, és ott a /mon oldalon fut a gép.
  • Képhű: soronkénti kép (raszter-splitek, sprite-multiplexer, nyitott keret) és sprite-ütközés, a VICE emulátor képeivel pixelre egyezően. 50 kép/s, valós időben.
  • A freezer, a gépi kódú monitor, az AI fül és az MCP-szerver az emulátoron is működik.
  • A gyári C64 ROM-okat (KERNAL, BASIC, karakterkészlet) a webes felületen kell feltölteni, a cartridge nem tartalmazza őket. Nélkülük a beépített MEGA65 Open ROMs indul: sima BASIC megy, a cartridge menüje nem.
c64cart.local/mon · emulátor
A /mon oldal emulátor módban: balra a cartridge menüje az emulált C64-en, felül az EMULÁTOR állapotsor 50 kép/s-sel, alatta a Reset, Joy, Ütközés és Hang gombok
emulátor A cartridge menüje az emulált C64-en, C64 nélkül, a böngészőben.
SID a böngészőben

Elromlott a SID? A hang a gépedről vagy a telefonodról szól.

A cartridge figyeli a C64 buszát, és elkapja a programok minden SID-írását. A /mon oldal ebből a böngészőben szintetizálja a hangot: a 🔊 gombbal a laptop, a telefon vagy egy fülhallgató szólaltatja meg a C64 zenéjét.

A hang a processzor írásaiból készül, nem a SID chip kimenetéből, ezért akkor is szól, ha a gépben a SID már nem ad hangot. Így próbáltuk ki: a tévé néma maradt, a böngésző játszotta a zenét.

  • Valódi C64-en és a beépített emulátoron is; az élő kép mellett vagy nélküle.
  • Kb. 0,35 másodperces késéssel. A szintézis a 6581-es SID közelítése: három hang, burkológörbe, szűrő; a digitalizált hangminták halkabban szólnak.
  • Nincs mit beállítani: a 🔊 gomb kapcsolja be és ki.
A /mon oldal telefonon: felül a C64 képe az emulátorból, alatta a gombsor és a bekapcsolt Hang gomb
emulátor A /mon telefonon, bekapcsolt hanggal. Ugyanígy szól a valódi C64-ről is.
C64a program írja a SID-et
STM32elkapja az írásokat
ESP32időbélyeges napló
BöngészőSID-szintetizátor 🔊
Webes felület

A cartridge a böngészőből

A cartridge saját weboldalt szolgál ki a helyi hálózaton, a c64cart.local címen. Ha nem talál ismert WiFi-t, saját hozzáférési pontot nyit, így a beállítás első alkalommal is elvégezhető. Jelszóval védhető.

Állapot

WiFi, memória, microSD, a myIO vezérlő kapcsolata és az AI-végpont egy pillantásra.

Gépelés

Szöveg vagy BASIC-program begépelése a C64-re, funkcióbillentyűk és RUN/STOP a böngészőből.

Fájlok

Kétpaneles fájlkezelő a belső flash és a microSD között. Feltöltés, letöltés, BASIC-lista, hexa nézet, és egy kattintással futtatás a C64-en.

Programtár

C64-programok keresése és letöltése a netes katalógusból (például a Magyar C64 H.Q.). Letöltéskor a cartridge jelzi, ha egy program saját gyorstöltőt használ.

Beállítások, Csempék

WiFi, myIO szerver, AI-végpont, gépelési ütem, microSD; a Smart Home csempéinek neve, ikonja és pulton-helye.

Cartridge, Frissítés, Napló

ROM-feltöltés ellenőrzőösszeggel, firmware-frissítés WiFi-n, eseménynapló.

Gombok

A játékok gombkiosztása image-enként (Doom, Game Boy, Game Gear): C64-billentyű, USB-billentyű és joystick is köthető.

Monitor

Élő kép, gépi kódú monitor és AI-asszisztens. Lent részletesen.

Monitor + AI · /mon

A futó C64 belülről, és egy AI, amelyik látja

A /mon oldal a cartridge freezerére épül: a futó programot néhány ezredmásodpercre megállítja, kiolvassa, és továbbengedi. A C64-en futó program ebből nem vesz észre semmit.

c64cart.local/mon · AI
A /mon oldal: balra a C64 élő képe, jobbra az AI fül egy beszélgetéssel, benne eszközhívások (screen_text, type, wait_for_text) és a válasz
valódi C64 Balra az élő kép, jobbra egy AI-beszélgetés: a modell elolvassa a képernyőt, begépel, megvárja a READY-t, és elmagyarázza, mit talált.

Élő kép és monitor

  • Élő kép a C64 képernyőjéről, állítható képfrissítéssel, széles és teljes képernyős módban.
  • Elkap: a képre kattintva az egér és a billentyűzet a C64-et irányítja, Esc engedi el.
  • Fagyaszt / Folytat: a program megáll, a CPU-regiszterek és a memória nyugodtan vizsgálható.
  • CPU, Konzol, Disasm, Hex fülek: regiszterek és VIC/CIA/SID-dekód, VICE-szintaxisú monitor-parancsok, visszafejtés a PC követésével, memória olvasása és írása.

AI fül

  • Magyarul lehet kérdezni: „Mi van most a képernyőn?”, „Listázd a BASIC-programot és magyarázd el”, „Írj egy keret-színváltó rutint $C000-ra, és indítsd el”.
  • A válaszhoz az AI ugyanazokat az eszközöket használja, mint a monitor: olvas, gépel, töréspontot tesz, gépi kódot fordít és ír a memóriába. Minden lépése kinyitható a beszélgetésben.
  • A beszélgetések megmaradnak, a modell választható.
  • A háttérben a Macen futó Claude Code-relé dolgozik, API-kulcs nélkül (lent).
Böngésző/mon · AI fül
Mac-reléc64ai_server.py
Claude Code+ c64 MCP-szerver
Cartridgefreezer
C646510
AI-relé · c64ai_server.py

AI API-kulcs nélkül

A cartridge nem tárol API-kulcsot. Az AI-t egy kis Python-szerver szolgálja ki a Macen, amely a Claude Code parancssori programját hívja (claude -p), így a meglévő Claude-előfizetéssel fut. A cartridge Beállításaiban elég megadni a címét: http://<mac-ip>:8642.

Két dolgot szolgál ki:

  • AI Ninja a C64-en: OpenAI-kompatibilis chat-végpont. A válasz magyar ékezetekkel jön, kérésre programként is: BASIC-ben vagy gépi kódban (DATA-sorokból betöltve, SYS-szel indítva), amit a C64 azonnal begépel és elindít.
  • A /mon oldal AI füle: több párhuzamos Claude-munkamenet, élő szövegfolyammal. A munkamenetek a Macen tárolódnak, később folytathatók, a modell (Opus, Sonnet, Haiku, Fable) beszélgetésenként választható.

Biztonságos keretek

  • A /mon munkamenetei külön munkakönyvtárban futnak, és csak a c64 MCP-eszközöket, valamint a webes keresést érik el.
  • A kezelőfelület (ui.js) is a reléről töltődik, ezért az AI fül a cartridge újraflashelése nélkül fejleszthető.
  • Claude helyett más háttér is választható: helyi Ollama-modell vagy bármely OpenAI-kompatibilis szerver (LM Studio, OpenRouter). Utóbbiakhoz kell kulcs.
python3 MyIO_C64/tools/c64ai_server.py          # Claude Code
python3 MyIO_C64/tools/c64ai_server.py \
  --backend ollama --model llama3.1:8b         # helyi modell
MCP-szerver

Egy valódi C64, AI-eszközként

A c64mcp.py egy Model Context Protocol-szerver: a cartridge monitorát eszközökként adja oda bármely MCP-képes AI-kliensnek, például a Claude Code-nak. Nem emulátor: minden hívás a bedugott gépen fut, az írás is valódi.

CsoportEszközökMire jó
Látásc64_screen_text, c64_screenshot, c64_status, c64_eventsA képernyő szövegként vagy PNG-ként, a gép állapota, a freezer eseménynaplója.
Memóriac64_read_memory, c64_write_memory, c64_fill, c64_find, c64_basic_listOlvasás és írás CPU-, RAM- vagy I/O-nézetben, keresés, a BASIC-program visszafejtése.
Vezérlésc64_freeze, c64_resume, c64_set_registers, c64_exit_viewerMegállítás és folytatás, regiszterek átírása, kilépés a player-nézetből.
Hibakeresésc64_break, c64_wait_break, c64_disassemble, c64_assemble, c64_monitor, c64_io_stateTöréspontok, 6510-visszafejtés és -fordítás, VICE-szintaxisú monitor, VIC/CIA/SID-dekód.
Bevitelc64_type, c64_key, c64_wait_for_text, c64_load_prgGépelés, funkcióbillentyűk, várakozás egy szövegre, PRG betöltése a Macről.

Egy képernyő szövegként kb. 3 ms-os megállítással olvasható, egy bitmap-kép 11–24 ms-sal. A szerver vékony réteg a cartridge REST-felülete fölött, ezért később a cartridge-re is átköltöztethető.

Az ismertető „valódi C64” képei is így készültek: a c64_screenshot a VIC-II regisztereiből és a videomemóriából rajzolja meg a képet.

{
  "mcpServers": {
    "c64": {
      "command": "python3",
      "args": ["MyIO_C64/tools/c64mcp.py"],
      "env": { "C64_URL": "http://c64cart.local" }
    }
  }
}
A cartridge NYÁK-jának 3D-renderje perspektívában: elöl a 44 pólusú aranyozott élcsatlakozó, rajta az ESP32-S3 modul, az STM32, a microSD-foglalat és a tüskesorok
A cartridge NYÁK-ja (KiCad 3D-render). Elöl a 44 pólusú élcsatlakozó, ami a C64 bővítőportjába kerül.
Hardver

A C64 soha nem lát JSON-t

Három réteg, mindegyik azt csinálja, amihez ért. Az ESP32 tartja a ház teljes állapotát és a neveket, a C64 kész, fix hosszú kereteket kap. A myIO vezérlő mindig egyetlen kliens terhelését látja, bármit nyomkodnak a C64-en.

myIO vezérlőHTTP, UDP
ESP32-S3tükör, grafika
STM32F405busz-slave
C646510, 1 MHz
STM32F405168 MHz, a C64 buszán EPROM-ként válaszol: 8 KB ROM-ablak, regiszterek, 256 bájtos postaláda, freezer
ESP32-S316 MB flash, 8 MB PSRAM, WiFi; programok, képrenderelés, myIO-kliens, webszerver
CH9350LUSB HID hoszt: szabványos USB egér és billentyűzet
microSDprogramok, lemezképek, játék-image-ek
74LVC2455 V-os adatbusz-puffer a C64 felé