WinTVC - Videoton TV Computer emulátor

(c) 2004-2009 Grósz Attila (gyros KUKAC freemail PONT hu)

Mi a WinTVC?

Emulátor, olyan program, ami egy adott hardver (jelen esetben számítógép) működését imitálja egy másik típusú hardveren. Ebben a konkrét esetben egy 8-bites magyar mikroszámítógépet emulálunk PC hardveren futó Windows operációs rendszeren, ami pillanatnyilag 32 vagy 64-bites.

A TVC volt az utolsó magyar mikroszámítógép, melyet az Enterprise-t kifejlesztő angol gép licensze alapján a jobb időket is megélt Videoton gyártott. A gép processzora az igen népszerű Zilog 80. Ezen és a CRTC chip-en kívül a gép semmilyen cél-IC-t nem tartalmazott, a főbb vezérlési feladatokat TTL-ekkel oldották meg.

További információkért, programokért és az emulátor új verzióiért érdemes meglátogatni a http://tvc.homeserver.hu vagy a http://gaia.atilia.eu weboldalakat.

WinTVC Screenshot

A WinTVC emulátor képességei

  • teljes, ciklusra pontos Z80 emuláció
  • közel teljes, ciklus alapú CRTC 6845 video IC emuláció
  • első és második sorozatú, 32kb, 64kb és 64kb+ típusok támogatása
  • hang és kurzor megszakítás emulációja
  • az 1 csatornás hang áramkör emulációja
  • a teljes billentyűzet, a beépített joystick és a RESET gomb emulációja
  • a lemezes CAS formátum közvetlen és FILE I/O ROM-on keresztüli beolvasása/mentése
  • WAV és TTP kazetta formátumok írása/olvasása
  • teljes lemezegység és WD1793 diszk kontroller emuláció, DSK image írás/olvasás
  • egyszerű PAL TV emuláció
  • egyszerű printer támogatás

Az emulátor képes kezelni az UPM (speciális CP/M) rendszert az eredeti interface kártya ROM és a megfelelő kártyacsatlakozó ROM mentésének illesztése után. Ugyanez igaz az MS-DOS 3 kompatibilis VT-DOS-ra is.

A WinTVC emulátor hiányosságai

  • clock stretching nincs implementálva
  • WD1793 diszk kontroller emulációja nem ciklusra pontos
  • utasítás alapú, de ciklusra pontos emuláció

A program használata

Futtatás

A futtatáshoz Windows operációs rendszer (legalább Windows 95) kell. Installálás nem szükséges, indításhoz klikk az EXE-re. A menük remélhetőleg magukért beszélnek.

Parancssori opciók

Általános alak: WinTVC.EXE [/c filenév] [/d filenév] [/a] [/c] [/f] [/h] [/i filenév] [/m] [/w] [/x]

  • /a : kiad egy LOAD"filenév" parancsot, amit lemezen lévő fájlok automatikus betöltésére használhatunk. Ha nem adunk meg filenevet akkor a load"*" hajtódik végre ami betölti az első fájlt amit megtalál
  • /c : cartridge betöltése indításkor
  • /d : diszk csatolása indításkor (A:)
  • /f : fekete fehér kép
  • /h : hang tiltása indításkor (probléma esetén javasolt)
  • /i : I/O kártya csatolása indításkor
  • /m : típus állítása (/m32 /m64 /m64+ /m64c)
  • /w : emulátor futtatása a maximális sebességgel
  • /x : DirectX tiltása (probléma esetén javasolt)

Monitor

A programban egy egyszerű beépített monitor és disassembler is található. Ennek előhívása az ESC[-APE] gomb lenyomásával történik. Második leütésére a program visszatér az emulált gép képernyőjéhez.

További monitorkezelő gombok:

  • F1 : Disassembly lista az IP aktuális értékétől kezdve. A kép tetején a fontosabb regiszterek tartalma látható.
  • F2 : Az emulált gép memóriatartalom térképe
  • ENTER : Egy assembly utasítás léptetése.
  • PAGE UP : Oldal lapozása visszafelé
  • PAGE DOWN : Oldal lapozása előrefelé
  • FEL-NYÍL : Egy sor lapozása visszafelé
  • LE-NYÍL : Egy sor lapozása előrefelé

Billentyűzet

Kétféle billentyűkiosztás választható, az egyik a pozícionális, amelyik a TVC billentyűinek pozícióit képezi le a PC billentyűzetére, a másik a szimbolikus, amelyik a magyar PC-s billentyűzet-kiosztást követi, és az azoknak megfelelő TVC-s billenyűleütéseket szimulálja. Előbbi akkor hasznos, ha játékoknál fontos a helyes elrendezés, utóbbi pedig akkor, ha programozunk, vagy fontos a kívánt szimbólumok gyors megtalálása.

Fontos kivételek a szimbolikus kiosztásnál:

  • az í és Í betűk rendre az AltGr+i illetve az AltGr+j -vel érhetők el
  • a 102 gombos keyboard-okon a '<' jel az AltGr+m -re mappelődik
  • az ESC billentyű az END gombon kapott helyet
  • az ALT billentyű a HOME gombon kapott helyet
  • a PC-s Backspace ekvivalens a TVC-s SHIFT + DEL-lel

A TVC-s joystick(ok) emulációja a PC billentyűzeten keresztül történik.

Beépített botkormány: kurzor nyilak, tűz: NumPad0
Második botkormány: numerikus billentyűzet, tűz: NumPad+

Lemez

A legrugalmasabb és leggyorsabb periféria. A többrészes programok legkényelmesebb betöltését teszi lehetővé. A helyes emulációhoz szükség van a HBF EPROM I/O interface kártya mentésére, illetve természetesen egy diszk állományra. Ezeket csatolni kell az emulátorhoz, mielőtt nekilátnánk a munkának. A DISK I/O kártya (HBF) illesztése a /i parancssori opcióval, vagy a menün keresztül történhet. Ha az emulátor könyvtárába másoljuk az I/O kártya EPROM mentését HBF.ROM néven, úgy az automatikusan csatolódik induláskor.

A jelenleg támogatott két lemez image formátum a 360 ill. 720 kb-os DSK (1 ill. 2 oldalas, dupla írássűrűségű, 80 sávval és sávonként 9, egyenként 512 byte-os szektorral) ami VT-DOS esetén gyakorlatilag azonos az MSX és MS-DOS által is használt image formátummal, így az ezekhez készült image kezelő programok (WinImage, DiskMgr, Virtual Floppy stb.) minden további nélkül használhatóak az emulátorhoz is.

Az EXT 2 parancs begépelésével belépünk a BASIC CLI-be, ahol a jórészt MS-DOS alól is ismert parancsokat adhatjuk ki (pl. FORMAT, DIR stb). BASIC-be visszalépni innen az ESC-kel lehet (ami az End billentyűre van állítva PC-n).

Magnó

A kazettás megnetofon a TVC-hez kapcsolható legelterjedtebb és ezért legfontosabb periféria. A hozzá tartozó PC-s formátumok egyike a WAV (tömörítetlen PCM).

Először a menün keresztül létrehozzuk a kívánt WAV állományt. A SAVE parancs kiadása után elkezdődik a mentés. Ez eltarthat egy darabig. A folyamat felgyorsítható ha az emulátort az ALT+W billentyűkkel teljes sebességre kapcsoljuk. Ha újra megjelenik az 'Ok' üzenet, a mentés befejeződött. Zárjuk le a WAV file-t a menün keresztül (ez nagyon fontos!).

Ezzel a módszerrel tetszőleges betöltővel rendelkező állományokat is elmenthetünk és azokat aztán egyszerűen transzferálhatjuk az igazi TVC-re.

A másik kazettás formátum a TTP, ami az 1.0 emulátor verziótól kezdve létezik. Írása és olvasása is támogatott. A WAV-val ellentétben byte szinten tárolja a szinkronjelek nélküli, kazettára mentett adatokat. ROM csapdákon keresztül az operációs rendszer hívásaiba ágyazza be magát, ezért csak a standard ROM-okkal működik. A TTP-ket vagy a WAV-okhoz hasonlóan csatoljuk az emulátorhoz explicite, vagy a TTP automount opció bekapcsolásával az aktuális könyvtárban található TTP-ket értelmezzük szalagfolyamként. Ilyenkor a visszacsévélés funkció is a filemutatót az első TTP-re állítja vissza.

Az emulátor támogatja a magnó motorjának 05h-s porton keresztüli és direkt menün keresztüli vezérlését is (PLAY/RECORD gomb).

Médiafelvétel

Az emulátor kép és hangkimenete médiaformátumba irányítható. A hangállományok tömörítetlen 16-bites WAV (PCM) formátumban menthetők el a File menü megfelelő pontjában.

Videofelvételek készítése AVI formátumba lehetséges. A gépre telepített video codec-ek közül azok jöhetnek szóba, amik vagy a 8-bites (GDI, DirectDraw) képernyőmódot támogatják (Tömörítetlen, RLE, stb.).

A 32-bites képmód (Direct3D) kódolására javasolt külső codec-ek (32 vagy 64-bit) verziója meg kell egyezzen az emulátor EXE verziójával:

Köszönetnyilvánítások

  • Kiss Károly: tesztelés, honlap, nyaggatás ;-)
  • Gugi Zoltán: ötletek, tesztelés, nyaggatás ;-)
  • Major Tamás: DevStudio támogatás, tesztelés, nyaggatás ;-)
  • László József: tárhely
  • Majzik István: tippek, tesztelés
  • Varga Viktor: honlap
  • TVC lista és FB csoport tagjai

Verziók

  • v1.4.1
    • képernyőkép másolása a vágóasztalra
    • kontext-menü
    • CRTC finomítások
    • apróbb finomítások néhány CPU időzítésen
    • hangidőzítések finomítása
    • I/O kártya csatolással kapcsolatos crash fix
  • v1.4.0
    • interaktív monitor (Alt+M)
    • ékezetes karakterek támogatása a vágóasztalon
    • SID hangchip támogatás külső DLL segítségével
    • CRTC emuláció javítása
  • v1.3.0
    • mind a 4 csatolókártyahely támogatása
    • TI SN76489 hang IC emuláció Multisound és Gamecard kártyán keresztül
    • magnóhang javítása
    • snapshot javítás (ID, 32 és 64 bit közti kompatibilitás)
    • $FD prefix disassembly javítása
  • v1.2.0
    • OpenGL videomód + PAL TV shader
    • hardveresen gyorsított billentyűkezelés (DirectInput)
    • CRTC emuláció javítása
    • TV szinkronjelek finomítása
    • video RAM lapozási hiba javítása
    • pontosabb szinkronizáció és sebességmérés
    • teljes képernyős mód javítása
    • FF kapcsoló javítása GDI módban
    • AVI video mentés javítása
    • GIF képmentés javítása
    • parancssori opciók hibájának javítása
    • egyéb hibajavítások
  • v1.1.1
    • saját ROM konfigurációk támogatása
    • RCA kábel emuláció
    • FILEIO.ROM támogatás
    • nem CAS formátumú file-ok támogatása FILEIO-n keresztül
    • video bank regiszter reset fix
    • DPI awareness fix Windows 10-hez
    • ablakmaximalizálás javítása
    • nemstandard HBLANK hossz támogatása
    • hang interrupt javítása
    • device context memória leak javítása
  • v1.1.0
    • pixel alapú CRTC 6845 emuláció hiányzó funkcióinak pótlása
    • FILE I/O MOPS ROM támogatás CAS file-ok közvetlen beolvasásához
    • WaveMapper helyett DirectSound hang driver
    • emulátorablak mentése BMP formátumban
    • AVI és WAV mentés javítása
    • soralapú emuláció kivezetése
    • dinamikusan linkelt DDRAW.DLL
  • v1.0.7
    • Direct3D driver
    • D3D surface mentése PNG formátumban
    • teljes képernyős mód (Alt+ENTER)
    • CRT emuláció (részleges)
    • CRT paraméterek realtime beállítása
    • szövegbeszúrás vágólapról (Alt+V)
    • ékezetes betűk javítása nyomtatásnál
    • változtatható alapértelmezett TTP könyvtár
    • újabb TTP fixek
    • C: és D: meghajtók állapotmentése javítva
  • v1.0.6
    • további javítások a hangminőségben
    • magnóhangok
    • több státuszablak üzenet
  • v1.0.5
    • pixel alapú rasztermód kiterjesztése a teljes képernyőre
    • video mentése AVI állományba
    • hangfelvétel rögzítése WAV (16 bit PCM) állományba
    • opcionális jobb hangminőség
    • hibajavítások
  • v1.0.4
    • időzítési hiba javítása néhány XP alapú rendszeren
    • TTP formátum kezelésével kapcsolatos hiba javítása
  • v1.0.3
    • négy lemezmeghajtó támogatása
    • választható pixelre pontos raszter üzemmód
    • CRTC interlace
  • v1.0.2
    • VT DOS támogatás
    • im 2 hiba javítása
  • v1.0.1
    • WD1793 kompatibilitás javítása
    • állítható színtelítettség
    • javított printer emuláció
    • egyéb hibajavítások
  • v1.0
    • TTP; natív byte alapú kazettás formátum
    • 1-bites tape file-ok támogatása
    • PC joystick támogatása
    • BASIC 2.1 opció
    • 32 kB RAM emulációja
    • autostart, drag'n'drop
    • fix ablakméretek
    • háttérben is aktív lehet
    • PLAY gomb és motor távvezérlés
    • Visual C++ 2008-cal fordítva
    • XP/Vista theme támogatás
    • hibajavítások
  • v0.9
    • alsó és felső keret megjelenítése
    • képernyőablak megnövelése
    • magnófejállítási lehetőség
    • screenshot készítés
    • hibajavítások
  • v0.8
    • Cirill betűs TVC emulációja
    • gyors boot opció
    • billentyűzet-leütés szimuláció parancssorból
    • snapshot támogatás
    • hibajavítások
  • v0.7
    • teljes lemezegység és WD1793 emuláció
    • új parancssori opciók
    • memóriatartalom mentése CAS-ba
    • szimbolikus billentyűzet-kiosztás
    • állapotsor, magnó-számláló, drive ledek
    • ROM korrupciós hiba javítása
    • egyéb hibajavítások
  • v0.6
    • parancssori opciók
    • javított CRTC emuláció
    • javított paletta
    • kezdetleges I/O kártya emuláció
    • hibajavítások
  • v0.5
    • az első nyilvános verzió

Letöltés

A WinTVC aktuális verziója:

WinTVC1.4.1 LETÖLTÉSE

Régebbi verziók:

Segédprogramok

360 Kb-os üres image fájl: Letöltés

720 Kb-os üres image fájl: Letöltés

DiskMGR program letöltés: Szerverről vagy Program írójától

HBF.ROM (ennélkül nem megy a floppy emuláció, csak be kell másolni az emu mellé)

vtdos12.rom <- VT-DOS futtatásához a "Cartridge betöltése" menüben kell betölteni, előtte a Lemez->Disk behelyezése menüben be kell rakni a DOS bootlemezt (vtdos12.dsk) is. A gép típusát 64K+ Basic 2.2-re kell állítani.


Teszt image fájl pár eddig nem futó játékkal: Letöltés

(Aki nem ért a floppy kezeléshez annak: Lemez menü-> Diszk behelyezése, majd keresse meg a teszt.img fájlt, utána írja be: LOAD"MENU" majd nyomjon enter-t)

A hibákat kérjük jelentsétek a levlistára, hogy mihamarabb javításra kerülhessenek. Próbáljátok meg reprodukálható lépéseket adni, hogy az Attila is elő tudja állítani a hibát.

WinTVC Secondary Screenshot
(Grósz Attila, Kiss Károly)
http://gaia.atilia.eu