JsTVC EMULÁTORRÓL

Javascript VIDEOTON TV Computer emulátor.

Ez egy javascript tanuló / TVC rajongó project.

TVC volt az első gépem. Magnó nélkül vettük bizományiban, ha jól emlékszem 3500 Ft körüli összegért (ami akkoriban is jó árnak számított).
Sokáig nem is volt hozzá tárolom, így minden bekapcsolás után be kellett valami programot gépelnem.
Rengeteg órát töltöttem a géppel (kenyérpirítás a tápegységen :), de sajnos nem ismertem senkit hasonló masinával,
így a könyvesboltokban összevadászott könyvekből igyekeztem tudást szerezni. (amiből nem túl sok jutott el keletre)
A TVC klubról/újságról elég későn hallottam, szuper lett volna ha pár évvel korábban futok bele.
A TVC ROM volt az egyik első könyvem, de fogalmam sem volt mi mit jelentett.
Pár évig eltartott, mire rájöttem, hogy van élet a BASIC-en túl, így gépi kóddal nem is túl sokat foglalatoskodtam.
Kicsit később kaptam egy C64-est, s unokaöcsémre szállt a gép, aki még jó pár évig nyúzta

 

Működő demo: http://teki.github.io/jstvc/


Működik (működget)

  • Z80
    • a FUSE és ZXDOC/ALL tesztek lefutnak hiba nélkül
    • utasítás hosszabbítás nincs
  • CRTC
    • Motorla 6845 emuláció
    • megjelenítés szimuláció
    • kurzor megszakítás
  • US billentyűzet

Tennivalók, ötletek

  • CRTC/CPU időzítés nem 100%-osan pontos
  • pontosabb hang
  • magyar billentyűzet
  • fájlkezelés
  • snapshot

Verzió történet

v0.3.0

  • c-ből portolt wd1793 helyett írtam sajátot, már tud olvasni a lemezről
  • nem kapcsoltam ki a loggolást egyenlőre a lemezkezelésben, így csak egy kis progit tettem fel teszteléshez
  • megjegyzi az oldal a választott géptipust

v0.2.1

  • kiegészítők memóriájának kilapozása nem működött, javítva, így elindul a lemezkezelés
  • basic 1.2 és 2.2 DOS-al a menüben
  • a floppy nem működik még

v0.2

  • debugger g.tvc.[step,b,bd,dumpMem,dasm]
  • z80 LD r,(IY+d) fix
  • cpu tesztek javítva, használat: node tests/test.js (meg fogja mondani milyen tesztek vannak)
  • minden beépített teszt lefut hiba nélkül!
  • wd1793 emuláció (nem működik)
  • assembler kezdetek (http://teki.github.io/jstvc/asm.html), még csak épp működik, nincs integrálva az emulátorral.
    Egy mintát azért bele tettem, azt lefordítva egy működő cas fájl lesz az eredmény, ami a save linkkel letölthető
    (sajna a letöltésnek nem lesz szép fájlneve, át kell nevezni zip-re)

v0.1.1

  • géptipusválasztás
  • 64k+ emulálása
  • 2.2 BASIC romok

v0.1.0

  • kezdetleges hang implementáció
    • nincs korrekt időzítés (azért felismerhetőek a dallamok)
    • Web Audio és Mozilla Audio implementációkat támogat, így Safar,Chrome és Firefox-on kívül nem nagyon fog működni

v0.0.5

  • új CRTC implementáció, még nem 100%-os, de közelít
  • stop gomb, emuláció szüneteltetéséhez
  • Firefox jól teljesített a sor alapú megjelenítéssel, de amint váltottam nagyobb pontosságra feladta.

v0.0.4

  • Safari fix (működik, de lassú)
  • status sor, értesítések helyett

v0.0.3

  • verzió szám a weblapon
  • verzió frissítés automatizálás
  • billentyűzet események elkapása

v0.0.2

  • frissítés fix (60fps-el fut nekem Chrome-ban, limitálni kell 50-re)
  • értesítés eseményekről (bug: a háttérben jelennek meg)
  • cas toltes egyszerusitese

v0.0.1

  • Z80
  • US billentyűzet
  • megszakítás
  • video memória canvas-ra rajzolása
  • Chrome-ban gyorsabban fut mint Firefox-ban (más alatt nem próbáltam)

 

 

Babik Béla