Szélesvásznú, gyors Psion S3a, avagy
Psion S3a emulációja PC-n (How to use the Psion s3a emulator?)
|
|
Válaszok
1. Mi az az emulátor?Ha egy X számítógépre olyan programot írunk, amivel egy Y számítógép minden vagy legtöbb funkciója utánozható, és ráadásul a munkafelület is hasonlít az Y gépre, akkor az X gépen emuláljuk az Y gépet.
Általában nagyobb teljesítményű gépeken szoktak kisebbeket emulálni. IBM kompatíbilis PC-re sokféle emulátor program létezik, így van például Commodore-64 emulátor, Sinclair Spectrum emulátor, de a Psion gépeket, így az S3a-t is lehet emulálni.
A Psion-ra is készültek emulátorok, ilyen például a HP48 tudományos kalkulátor emulációja.
Az emulátor tehát alapvetően az OPL-ben programozó szoftverfejlesztőknek készült, de jól használható különféle programok kipróbálására is. A PC háttér-tároló kapacitása sokszorosa a Psion-énak, klaviatúrája kényelmesebb és nem kell vesződni a lassú soros vonali áttöltéssel sem. Az emulátor használatával tehát mód nyílik arra, hogy a Psion-ra csak azt tegyük rá, ami már megtetszett, és szükségesnek tartjuk. Ideális az emulátor akkor is, ha a Psion-on lassú (pl. komplex, sok számítást igénylő grafikus) alkalmazásokat akarunk futtatni. Ezek sebessége az emulátorban a PC processzorától függően 10-40-szeresen meghaladhatja a Psion-on mérhető sebességet, (előbbi 486-ra, utóbbi Pentumra jellemző).
Mivel a PC-n az emulátor védett módban gyakorlatilag a teljes Psion többfeladatos operációs rendszert előállítja, annak minden bonyolult belső kapcsolatával, időzítéseivel együtt, jelentősen túllép az egyszerű DOS programokon. Ezért az emulátor NEM futtaható sem Win 3.1x, Win 95, OS/2, vagy Windows NT szokványos programokhoz készült DOS ablakában, innen elindítva szinte biztosan rendszer-összeomlást fog okozni. Kizárólag "meztelen" DOS-ból indítsuk.
4. Mik az emulátor csomag fájljai?
Az emulátorhoz egy .ZIP fájl formájában juthatunk: S3AEMUL.ZIP.
A csomag tartalma:
README.TXT -
|
rövid leírás, lényege a jelen ismertetésbe is átkerült |
LICENCE.TXT -
|
felhasználási feltételek |
S3AEMUL.EXE -
|
az emulátor főprogram |
EPOC.DLL -
|
kiegészítő program, ez emulálja a Psion gépek EPOC16 nevű operációs rendszerét |
EPOC.RMI -
|
további program, operációs rendszer alkalmazások |
HHSERVER.PAR -
|
konfigurációs fájl |
RTM.EXE -
|
futtató modul |
DPMI16BI.OVL -
|
16 bites, védett módú kiegészítés |
Ki kell csomagolni a ZIP-et, és az összes fájt be kell másolni egy tetszőleges alkönyvtárba (nálam ez a C:\@PSION\EMU). A programok közül csak a S3AEMUL.EXE nevezhető át, a többinek a nevét ne változtassuk meg.
6. Hogyan futtassuk az emulátort?
Nem elég csak belépni az adott alkönyvtárba és DOS-ból indítani az S3AEMUL.EXE programot. Az emulátor zavarba jön :-), ha nem találja az M: logikai meghajtót (ez felel meg a Psion-on a belső memóriában lévő lemezegységnek). Ilyen logikai meghajtót PC-ken egy DOS paranccsal lehet létrehozni, ez a SUBST, azaz helyettesítés. A SUBST parancs részletei a
DOS dokumentációból, vagy a
>HELP SUBST
paranccsal ismerhetők meg.
Szokásos használatára példa:
>SUBST M: C:\@PSION\EMU,
ezután a C: lemez \@PSION\EMU alkönyvtárát M: logikai lemezegységként
is látjuk.
Cseréje úgy történik, hogy először vissza kell vonni (törölni) a hozzárendelést
a
>SUBST M: /D
paranccsal, majd újat kiadni.
További lényeges dolog, hogy az M:-re helyettesítés csak úgy hozható létre, ha a CONFIG.SYS-ben a LASTDRIVE – a legmagasabb sorszámú logikai meghajtó – legalább M-re van állítva (figyelem, ha belenyúltunk a CONFIG.SYS-be, újra kell indítani a PC-t, hogy a változásnak hatása legyen!). Ezen túl amíg az S3AEMUL fut, kényelmes lehet az A: (és ha van B:) lemezegység(ek) helyettesítése is, mert egy idő után megunjuk, ha az emulátor folyton a floppy meghajtó(ka)t szólongatja.
Legegyszerűbb az összes helyettesítési tennivalót, az emulátor indítását, kilépés után a helyettesítések visszavonását, majd esetleg egy más program indítását is – mondjuk, egy EMU.BAT nevű – DOS parancsfájlba írni, amit az elérési útvonalra kell tenni.
Tehát legyen a CONFIG.SYS-ben egy LASTDRIVE=M sor, használjunk egy alábbihoz
hasonló parancsfájlt:
c:
cd \@psion\emu subst m: c:\@psion\emu subst a: c:\@psion\a subst b: c:\@psion\b s3aemul.exe subst m: /d subst a: /d subst b: /d win |
Nem valószínűek ilyen problémák, de ha mégis előállnak,
A Psion-nál, ugye, ilyen feladat nem merül fel, hiszen az első bekapcsolástól kezdve az mindig fut (még akkor is, ha elemet cserélünk, vagy a képernyőt kikapcsoljuk és a gép csökkentett energia-felvételű "alvó" állapotba kerül).
Az emulátornál viszont van értelme ennek a lépésnek, mert a PC-t nem csak Psion-ként akarjuk használni.. Meg kell nyomni egyidejűleg a Ctrl-Alt-Esc vagy Ctrl-Alt-Z gombokat. További lehetőség, hogy egy olyan programot (IMG vagy OPO) indítunk el, amely a HwExit (call($168e)) rendszerhívást tartalmazza, de ez utóbbit csak a sznobok csinálják :-)
Az elfeketedő képernyőn "Fatal application error 00" (végzetes alkalmazási hiba 00) üzenetet fogunk látni. Nem kell megijedni, ilyen a normális kilépés, valójában ekkor nincs semmi hiba. Alul visszakapjuk a DOS ">" parancsbevitel jelét is.
9. Miben nem teljes az S3a emuláció?
Vannak olyan funkciók, amelyeket nem vagy csak egyszerűsítve tartalmaz az emulátor. Ezek nélkül is ragyogóan használható ám, valamint a fogyatékosságok jó része meg is kerülhető valamilyen fortéllyal! Tehát a lista és esetenként zárójelben az aktuális fortélyok:
A PC klaviatúrán nincs egy csomó gomb, amit a Psion használ. Ezért valahogyan el kellett érni, hogy a szükséges gombok és funkciók működtethetők legyenek.
Az ún. AT klaviatúra felső F1-F12 gombsora a következő Psion gomboknak felel meg:
11. Hogyan lehet az emulátor klaviatúráját átállítani?
A klaviatúra gombjainak térképeit az EPOC.DLL fáj tartalmazza, ebbe kell alkalmas módon belenyúlni (előtte készítsünk biztonsági másolatot!). Három térképet tartalmaz, egyet alapesetre, egyet a megnyomott Shift gomb esetére, egyet pedig a megnyomott Psion/Ctrl gomb esetére. Az 1994-04-12 dátumú, 94736 bájt hosszú fájl esetén az egyes táblák hexadecimális kezdőcímei a következők: normál - $32D8, Shift - $33D8, Psion/Ctrl - $35D8. Az átírás elvégezhető például a NU csomag DISKEDIT programjával. Ha valaki netán készít szabványos, magyar PC klaviatúrához új EPOC.DLL-t, jelezze. Nekem még annyira nem hiányzott, hogy csináljak, de ha lenne készen...
12. Vannak-e speciális emulátor tippek és trükkök?
Hogyne. Esetenként túlléphetünk a Psion szolgáltatásain is.
13. Lehet-e soros vonalon gépközi kapcsolatot az emulátorból is létesíteni?
Igen, az emulátor System képernyőjéről is felépíthető a Psion-nal a kapcsolat, ugyanúgy kell bekapcsolni, mint magán a Psion-on. Ekkor a PC-ről nézve a Psion lesz a távoli, azaz REM:: gép. Alapesetben a kapcsolat a COM1 soros portot használja, de ha "-p2"-t írunk a "Remote link" dialógus "Extra parameters" sorába, akkor a COM2-t is használatjuk (pl. ha a COM1-et egér vagy más eszköz már fogja).
14. Milyen futás közbeni hibák léphetnek fel az emulátor használatakor?
Az alább ismertetettek ritkán fordulnak elő, és csak akkor, ha sérült vagy hibás programot futtatunk. Igen ám, de ha valaki az emulátorban fejleszt, még a legnagyobb gondosság mellett is írhat hibás programot. A hibák nagy részét ugyan kiszűri a fordító és a futtató rendszer, de néha ennél súlyosabb hibák is előállhatnak, tehát célszerű pár mondat erejéig foglalkozni a lehetséges következményekkel, és a további teendőkkel.
Az S3AEMUL alacsony szintű memóriakezelése különféle hibajelzéseket generálhat, amit "run-time error", azaz futás közbeni hiba néven ismerünk. Ilyen többek között akkor fordulhat elő, ha a futó program megpróbál a számára elkülönített kód- és/vagy adatszegmensen kívül írni vagy olvasni. Ez a Psion gépen az ún. "panic" állapothoz vezet, itt az S3AEMUL többnyire megfogja őket (utóbbi nem igaz az összes S3a panic-ra, hanem csak egy meghatározott hányadukra). Ilyenkor az egész emulátor – nem csak a hibát előidéző program – azonnal leáll, az összes le nem zárt fájl, adat és program elszáll (persze amit előzetesen fájlokba mentettünk, az nem). Az emulátor olyan gyorsan áll le, hogy a képernyő is grafikus módban marad, a PC viszont nem fagy le, tovább fut! Ilyenkor a normál karakteres módot DOS paranccsal állíthatjuk vissza: MODE co80. Ezt vakon kell beírni, mivel a képernyőn közben nem jelenik meg semmi, amíg a parancsot ki nem adtuk. Előfordulhat, hogy a PC memóriájába is valami "beragad" (ez a DOS MEM parancsával megvizsgálható), ezért jobb ilyenkor teljesen újraindítani a PC-t.
(c) CsA. Eredeti változat MS Word 6.0 formátumban - 1997. május, bővített HTML formátumban - 1998. január