WinTVC - Videoton TV Computer emulátor © 2004-2013 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 a PC hardveren, ami pillanatnyilag 32-bites. A TVC volt az utolsó magyar mikroszámítógép, melyet egy 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 weboldalt. A WinTVC emulátor képességei ============================== - teljes, ciklusra pontos Z80 emuláció - első és második sorozatú 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 beolvasása/mentése - WAV kazetta formátum írása/olvasása - teljes lemezegység és WD1793 diszk kontroller emuláció, DSK image írás/olvasás - 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 megfelelo kártyacsatlakozó ROM mentésének illesztése után. Sajnos ugyanez az (MS-DOS 3 kompatibilis) VT-DOS-ról csak részben mondható el. Pillanatnyilag csak az interface kártya működik helyesen, a VT-DOS operációs rendszer kártyája egy egyelore megmagyarázatlan interrupt hiba következtében nem használható. A WinTVC emulátor hiányosságai =============================== - CRTC emuláció nem teljes - clock stretching nincs implementálva - WD1793 diszk kontroller emulációja nem ciklusra pontos 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] Jelenleg a következő opciók vannak támogatva: /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 es 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 - 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átum egyelőre 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 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 elso 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). Köszönetnyilvánítások ===================== * Kiss Károly: tesztelés, honlap, nyaggatás ;-) * Gugi Zoltán: ötletek, tesztelés, nyaggatás ;-) * László József: tárhely * Majzik István: tippek, tesztelés * Varga Viktor: honlap * TVC lista tagjai Verziók ======= v1.0.3 ------- - négy lemezmeghajtó támogatása - választható pixelre pontos raszter üzemmód - CRTC interlace (csak DirectX és Double Scan bekapcsolása nélkül) v1.0.2 ------- - VT DOS támogatás - 2-es megszakítási mód (im 2) implementációs hiba javítása v1.0.1 ------- - WD1793 diszk kontroller kompatibilitás javítása (UPM lemezkezelő programok működnek) - állítható színtelítettség - javított párhuzamos printer emuláció - egyéb hibajavítások v1.0 ----- - TTP; natív byte alapú kazettás formátum írása/olvasása - 1-bites tape file-ok támogatása, konverter (WAV kiterjesztéssel) - PC joystick támogatása - BASIC 2.1 opció - 32 kB RAM emulációja - autostart - drag'n'drop (Ctrl-t nyomva nincs autostart) - 1-2-3x-os fix ablakméretek - az emulátor opcionálisan háttérben is aktív lehet - PLAY gomb és motor távvezérlés a magnóhoz - Visual C++ 2008-cal és profilerrel fordítva - XP/Vista theme támogatás - hibajavítások (video, magnókezelés, irq) v0.9 ----- - alsó és felső keret megjelenítése - képernyőablak megnövelésének támogatása - magnófejállítási lehetőség - screenshot készítés - hibajavítások v0.8 ----- - Cirill betus TVC emulációja (Cirill betuk: CAPS LOCK) - gyors boot opció - billentyűzet-leütés szimuláció parancssorból - emulátor snapshot támogatás - hibajavítások (Nautilus, Poseidon, Space Invaders) v0.7 ----- - teljes lemezegység és WD1793 diszk kontroller emuláció - új parancssori opciók (/C, /D, /I) - memóriatartalom mentése közvetlenül CAS állományba - választható szimbolikus billentyűzet-kiosztás - állapotsor, magnó-számláló és 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ó