EP128Emu leírás

From Enterprise Wiki
Revision as of 15:03, 2 April 2010 by Mrprise (talk | contribs)

Jump to: navigation, search

Click for English

Bevezetés

Jelenleg az EP128Emu a legpontosabb és a legtöbb opcióval rendelkező Enterprise emulátor PC-re, ezért kezdők számára elsőre ijesztő lehet. Ezen leírás nekik készül. Reményeink szerint a leírás elolvasása után bárki könnyedén elboldogul majd ezzel a remek emulátorral! Alternatíva az EP32, amely szintén egy nagyon jó emulátor, kevesebb opcióval, de kezdők számára ideális lehet a könnyű használhatósága miatt. Az EP128Emu legfrisebb verziója a 2.0.7. Ez az emulátor a korábbi C-ben készült EP128Emu v1.x.x C++-ban újraírt változata, sokkal több beállítási lehetőséggel, jobb beépített debugerrel és pontosabb emulációval. Az EP128Emu Varga István műve.

Telepítés

Windows alatt

Az emulátor telepítésekor a Source code és a Download old ROMs jelölőnégyzetek elől a jelölést törölhetjük mezei felhasználás esetén. A forráskódra (source code) csak akkor van szükségünk, ha fejleszteni szeretnénk az emulátort, a régi ROM-okra pedig akkor, ha régebbi verzióhoz tartozó config file-okat tervezünk használni. Tehát aki most telepíti először az emulátort, az nyugodtan töröljön minden jelölést, csak a Download ROM images előtt hagyja meg. Ha rendelkezünk ROM file-okkal, akkor a Download ROM images elől is törölhetjük a jelölést, de az esetleges frissítések miatt célszerű lehet ilyenkor is letölteni a ROM csomagot. A ROM-okat az emulátor a \Program Files\ep128emu2\roms könyvtárban tárolja. Ha saját ROM-ot szeretnénk használni, ide tegyük! Az alábbi ROM-okat tölti le az emulátor telepítés során az Internetről:

  • asmon15.rom
  • basic20.rom
  • basic21.rom
  • brd.rom (német bővítés: BRD, UK, VLOAD, VSAVE, VDUMP)
  • cyrus.rom (Cyrus Chess II)
  • epd19hft.rom (EPDOS 1.9 beta / magyar)
  • epd19uk.rom (EPDOS 1.9 beta / angol)
  • epdos_z.rom (EPDOS 1.7Z)
  • epfileio.rom
  • ep-plus.rom (Enterprise Plus BASIC bővítés, "a" Studio)
  • esp.rom (spanyol bővítés: ESP, UK, VLOAD, VSAVE, VDUMP)
  • exdos10.rom
  • exdos13isdos10esp.rom (EXDOS 1.3 spanyol + IS-DOS 1.0)
  • exdos13isdos10hun.rom (EXDOS 1.3 magyar + IS-DOS 1.0)
  • exdos13.rom
  • exos20.rom
  • exos21.rom
  • exos22.rom
  • exos231esp.rom (EXOS 2.31 spanyol)
  • exos231hun.rom (EXOS 2.31 magyar)
  • exos231uk.rom (EXOS 2.31 angol)
  • exos23.rom
  • fenas12.rom
  • forth.rom (IS-FORTH 1.0)
  • genmon.rom (HiSoft GEN assembler + MON monitor 1.1)
  • heass10hfont.rom (HEASS 1.0 magyar karakterkészlethez)
  • heass10uk.rom (HEASS 1.0 angol)
  • heassekn.rom (HEASS 1.0 magyar, ékezetek nélkül)
  • hun.rom (magyar bővítés: HUN, UK, VLOAD, VSAVE, VDUMP)
  • ide.rom
  • iview.rom (IVIEW 0.4, CVIEW 0.42c, IPLAY 1.04, SNDPLAY 0.99, UNCOMPRESS 1.02, DTM; lásd még: Iview leírás)
  • lisp.rom (IS-LISP 0.6)
  • pascal11.rom (HiSoft Pascal 1.1)
  • pasians.rom (PASZIANSZ, KASZINO (HSoft))
  • tpt.rom (Enterprise Turbo Pack Tape 1.1, HSoft)
  • zt18ekn.rom (ZozoTools 1.8 magyar, ékezetek nélkül)
  • zt18hfnt.rom (ZozoTools 1.8 magyar karakterkészlethez)
  • zt18hun.rom (ZozoTools 1.8 magyar)
  • zt18uk.rom (ZozoTools 1.8 angol)
  • zx41.rom

Egy részük ismerős lehet annak, aki használt már Enterprise-t, de sok újabb is található köztük, melyek a XXI. század hajnalán is tevékeny fejlesztőgárdának köszönhetők. Az EPFileIO.rom-mal igazi Enterprise mellett nem találkozhatunk, ez az emulátorba történő betöltést teszi kényelmessebbé - hogy hogyan, arról később lesz szó.

Fontos, hogy a Use Hungarian keyboard map-ot bejelöljük, ha magyar billentyűzetet használunk, különben a billentyűzetet nem tudjuk rendesen használni. A Reinstall ep128emu configuration files ? kérdésnél az első telepítéskor mindig az OK gombra kell kattintani.

OpenGL és software mód

Telepítés után a Start menüben külön parancsikon található az emulátor OpenGL módban és software módban történő indításához. Erre azért van szükség, mert OpenGL módban problémák lehetnek egyes videókártya driverekkel. Ebben az esetben software módban kell az emulátort elindítani. Software módban lassabb ugyan a kép frissítése és néhány, a "Display/Configure..." ablakban engedélyezhető effektus nem használható, viszont a software mód valamennyi videókártya driverrel együttműködik.

Enterprise programok betöltése az emulátorba

Az emulátorba több módon is tudunk betölteni programokat. Nekem a magnós betöltés a legkedvesebb, ugyanis töltés közben ugyanúgy csipog az emulátor mint egy igazi Enterprise! :-) Köszönjük Istvánnak!

A legegyszerűbb módszer a betöltésre az EPFileIO.rom használata, mert nem kell hozzá virtuális kazettát szerkesztenünk vagy floppy image file-t előállítanunk, hanem pár kattintás után merevlemezünkről tölthetjük be a programokat.

EPFileIO.rom

Ez egy direkt az emulátorhoz készült bővítmény, amellyel a PC-nk egy kiválasztott könyvtárában lévő file-okat tudjuk közvetlenül elérni az emulátorból. Használatához az epfileio.rom-nak a 10-es (vagy magasabb számú) szegmensen kell lennie (Machine|Configure|Memory ablak), és engedélyezve kell, hogy legyen a Machine|Configure|General ablakban az Enable virtual file I/O. A könyvtárat az Options menü Set working directory pontjával tudjuk beállítani. Ha ebben a könyvtárban megtalálható pl. a bruce.com, akkor az emulátorban, BASIC-ből a load "file:bruce.com" paranccsal tudjuk betölteni a Bruce Lee játékot. Több file-ból álló játékokat is be lehet tölteni így (kivéve ha nem a default eszközről akarják őket beolvasni). Az EPFileIO.rom tehát a file: eszközt tartalmazza, melynek segítségével a PC merevlemezéről tud fájlokat olvasni az emulátor. Menteni is lehet a merevlemezre, ha megadjuk mentéskor a file: eszközt (ha a file: a default eszköz, akkor persze nem kell megadni). Pl. BASIC-ben:

100 print "Hello World!"
save "file:hello.bas"

Alapértelmezésként az emulátor a file: eszközről (a PC merevlemezéről) olvassa be a fájlokat. Ha azt akarjuk, hogy ne a file: eszköz legyen az alapértelmezett az emulátorban, akkor BASIC-ből a :def_dev_disk paranccsal tehetjük alapértelmezetté a hajlékonylemezt. Ha újra a file: eszközt szeretnénk alapértelmezetté tenni, adjuk ki a :def_dev_file parancsot!


Tippek:

  • Ha az emulátor egy programnak csak az első fájlját olvassa be, akkor adjuk ki a :def_dev_file vagy :def_dev_disk parancsot, attól függően, hogy a PC merevlemezéről vagy hajlékonylemezről akarunk-e tölteni!
  • Ha az emulátor nem akar a PC merevlemezéről olvasni, ellenőrizzük, bent van-e az EPFileIO.rom valamelyik (10-es vagy magasabb) szegmensen, és hogy az Enable virtual file I/O engedélyezve van-e!
  • Ha az epfileio.rom nagyobb számú szegmensen van, mint az EXDOS, akkor mindig a DISK: az alapértelmezett.

Magnó

Először is némi háttérinformáció. Az Enterprise, amikor magnóról tölt, akkor tulajdonképpen a csipogást értelmezi, ami a kazettára van rögzítve. Tehát ha az emulált EP-hez emulált magnót szeretnénk használni, akkor szükségünk lesz erre a csipogásra valamilyen formában. Erre a célra szolgál a Tape editor nevű segédprogram. Tehát bármilyen programot is szeretnénk magnóról betölteni az emulált EP-be, először a Tape editor programot kell használnunk. Ennek használatáról külön részben írok majd. A lényeg, hogy a Tape editor-ral elő tudunk állítani a PC-nken található bármilyen file-ból egy hangfile-t, amit az emulátor Machine|Tape|Select image file menüjében tudunk kiválasztani. Ez felel meg a kazetta magnóba történő behelyezésének egy igazi Enterprise esetében. Mivel emulátort használunk, itt csak virtuális kazettáról beszélhetünk. A Tape editor-ral egy ilyen virtuális kazettát tudunk szerkeszteni. Fontos megjegyezni, hogy a Tape editor ugyan .tap kiterjesztéssel menti el a virtuális kazettákat, de ennek a .tap file-nak a felépítése teljesen más, mint annak a .tap-nak, amit az EPTE vagy a TAPir használ! Viszont a Tape Editor be tudja tölteni az EPTE/TAPir .tap file-jait és ezeket lementve azonnal tudjuk őket használni az emulátorban. Tehát ha már van egy ilyen virtuális kazettánk, válasszuk ki a Machine|Tape|Select Image menüt és keressük meg azt. Ezután a virtuális magnónkba helyezett virtuális kazettánkat a Shift-F9-cel tudjuk elindítani. Ekkor a jobb felső sarokban lévő óra előtt egy P betű fog megjelenni, ami azt jelenti, hogy a lejátszás elindult. Hogy miért nem indult el az óra? Azért, mert a virtuális magnó az igazihoz hasonlóan távvezérléssel működik, tehát csak akkor megy, ha az EP arra utasítja. Ezt egyszerűen ki is próbálhatjuk, ha megnyomjuk BASIC-ben az F4-et, de még jobb ha az F1-et nyomjuk meg, így elkezdődik a betöltés. Ekkor hallhatjuk a sípolást. Ha a file-ok sorrendje megfelelő, akkor néhány percen belül be is fejeződik a betöltés és elindul a játék.

Tape Editor

Ezzel a segédprogrammal tudunk a PC-nken lévő file-okból olyan hangfile-t előállítani amelyet az EP128Emu a magnóról történő betöltéshez vár. Erre a file-ra ezután csak virtuális kazettaként fogok utalni. Ha beszereztük kedvenc játékunkat (a példában én az Alien-8-at fogom használni) és egy külön könyvtárba helyeztük a file-jait, indítsuk el a Tape Editor-t. Bal oldalt egy nagy fekete részt láthatunk, jobb oldalt pedig néhány gombot.

Kattintsunk az Import-ra és keressük meg a PC-n az Alien-8-at tartalmazó könyvtárat és válasszuk ki az első file-t. Felmerülhet a kérdés, hogy milyen szempont alapján az első file-t? Mivel a magnóról történő betöltés szekvenciális, azaz egymás után, szépen sorban kell következniük a file-oknak, úgy ahogy azt a program óhajtja, így a hamarosan elkészülő virtuális kazettánkban is ezt a sorrendet kell követnünk. A megfelelő sorrendet a legtöbb programnál könnyen kitalálhatjuk ha végignézünk a file-ok listáján (.com, .scr, .prg, .rom). Elvetemültebb esetekben azonban valószínűleg próbálkoznunk kell párször mire megtaláljuk a helyes sorrendet. Szerencsére a Tape Editor-ban egyszerűen tudjuk a file-ok sorrendjét módosítani a fel és le mutató nyilakkal, ezért az importálás sorrendje igazából lényegtelen, de időt spórolunk meg ha már eleve jó sorrendben importáljuk be őket. Ha a sorrendet módosítottuk a virtuális kazettát újra el kell menteni. Az Alien-8 esetében a sorrend tehát: alien_8.com, alien.scr és alien.prg. A kész virtuális kazettát a Save gombra kattintva menthetjük le a PC-re, miután kiválasztottuk a célkönyvtárat. Célszerű az emulátor tape könyvtárába rakni ezeket, az egyszerűbb betöltés érdekében.

Floppy lemez és floppy image

Az Options/Disk/Configure menüben megadhatjuk az image fájl (.img) helyét. A PC A: floppy meghajtójában található lemez használatához image file-névnek \\.\A: -t kell beírni, a tracks, heads, sectors pedig legyen -1 (ami az alapértelmezett beállítás, és általában nem érdemes megváltoztatni).

Debugger

A debuggerbe a Debug menü lenyitásával a Start debuggerre kattintva lehet belépni. A megnyíló ablakban felül két fül közül lehet választani: Page 1 és Page 2.

Page 1

CPU registers, Memory paging, Stack

Search, Memory dump

A memóriacímeken található értékeket itt csak megtekinteni tudjuk, módosításukra a Page 2 fül alatt van lehetőség.

I/O registers

Disassembler

Page 2

Itt három ablakot láthatunk.

  • A bal felső ablakba különböző parancsokat gépelhetünk. A parancsok listáját a ? írja ki, és egy parancs nevét megadva a ? után (pl. ? l) további információkat lehet olvasni az adott parancsról. Ha valamelyik memóriacím tartalmát módosítani szeretnénk, akkor a > karekter után írjuk ide a memóriacímet, majd szóköz után az értéket. Ha pl. 94b8-ra 0-t akarunk elhelyezni, ennek módja: >94b8 0

Az értékeket itt 2-es, 8-as, 10-es, és 16-os számrendszerben is meg lehet adni, például a %10101010, 252o, 170L, AA, és AAH is 170-et jelent.

  • A jobb felső ablakban töréspontokat (breakpoint/watchpoint) lehet megadni (bizonyos memória vagy I/O címek elérésekor megjelenik a debugger ablak). Ha pl. db7a cím írására szeretnénk töréspontot beállítani, db7aw-t kell írnunk ide.
  • Az alsó ablakban Lua scriptet lehet írni, amelyről a README file-ban és a Lua nyelv dokumentációjában lehet részletesebb információt találni.


A debuggerből az ESC megnyomásával vagy a lenti Continue gombbal térhetünk vissza az emulátorba.

ROM fájlok használata

A ROM fájlokat a Machine/Configure/Memory lapon tudjuk egyes szegmensekhez csatlakoztatni ill. leválasztani. Az EXOS-t mindig a 0-ás szegmenstől kezdődően, a BASIC-et általában a 4-es, az epfileio.rom-ot a 10-es, az EXDOS-t pedig 20-as szegmensen tudjuk használni. Egyéb bővítő ROM-okat (pl. ZozoTools) a 10h, 20h, vagy 30h szegmensre célszerű tenni, ahol éppen van szabad hely.

De a legegyszerűbb az emulátor telepítője által készített konfigurációs file-okat betölteni (File/Configuration/Load from ASCII file, vagy Alt+Q), azok biztosan működnek.