Emuláció Enterprise-on

Sinclair-es emulátorok használata...
Avatar
Pgyuri
Alapító tag
Hozzászólások: 577
Csatlakozott: 2012.01.06. 13:34

Emuláció Enterprise-on

Hozzászólás Szerző: Pgyuri » 2012.01.26. 14:15

Üdv,

Ezzel a témával kapcsolatban Zozo publikált egy nagyon jó és érdekes cikket a sinclair.hu-n, így azt itt nem idézném, csak gondolatokat azzal kapcsolatban:

Alaphelyzetben csodálatos gépnek tartom az Enterprise-t, mivel bámulatos lehetőségeket villantott fel hardver oldalon. Ehhez is lenne ezernyi kérdésem, de ezt nem itt illik megvitatni (egyszer csak megírom az EP fórumon), így maradjunk az emulátornál:

1; Zozo írja:

"... ha valami spectrumos eseményt észlelnek (I/O művelet az $FE porton, ill. írás az attributum területre, akkor NMI-t generálnak...."

és később hivatkozik arra, hogy a folyamatosan zenélő programok lelassulnak az OUT ($FE) műveleteknél.

A lassulás oka a több végrehajtási utasítás, ezt értem, de nem lehetett volna egy buzzer-t rátenni magára a hardverre, és ezt a speciális utasítást közvetlenül ráküldeni?

2; Zozo írja:

"...hardver adottság, hogy az EP nem ismeri FLASH-t ..."

Az inverzbe billentés helyett nem lett volna jobb egy olyan színt használni, ami nincs a Spectrum palettájában ?

3; Zozo írja:

"... olyan programok, amik össze-vissza variálnak a veremmel ..."

Nem lehetett volna olyan megoldást választani, hogy az NMI generálása előtt "átlapozzon" az EP egy olyan memórialapra, amelyen garantáltan nem dolgozhat a Spectrum program, így megmentve a verem tartalmát ? Utána majd csak visszavergődik valahogy az NMI rutin :)


Ezek biztos béna kérdések, szóban hasznosabb feltenni, mert akkor nem marad nyoma, ahogy az ember hülyét csinál magából :) Ha a válasz olyan egyszerű, hogy "De lehetett volna, csak az már nem ez az emulátor, hanem egy drágább, nagyobb, bonyolultabb eszköz", akkor bocsánat :)

Az teljesen világos, hogy két eltérő felépítésű gép között 100 %-os emuláció megvalósítása lehetetlen minden programhoz, így már az is lenyűgöző számomra, amit így sikerült kihozni. Kár, hogy a gép tervezői anno nem vették figyelembe azt az elhanyagolható tényt, hogy néhány "látszólag apró" hardver megoldással mekkora piacot is nyerhettek volna.

Pgyuri

Avatar
Zozosoft
Hozzászólások: 804
Csatlakozott: 2012.01.06. 14:03
Kapcsolat:

Re: Emuláció Enterprise-on

Hozzászólás Szerző: Zozosoft » 2012.01.26. 14:49

Pgyuri írta:nem lehetett volna egy buzzer-t rátenni magára a hardverre, és ezt a speciális utasítást közvetlenül ráküldeni?
Ehhez le kellett volna mondani a keretszín emulációról, ami ugyancsak az FE portra van kiírva.
Az inverzbe billentés helyett nem lett volna jobb egy olyan színt használni, ami nincs a Spectrum palettájában ?
Nem igazán, mivel a Spectrum színek beállítása után már csak egy "fényes fekete" marad (ide valami barnás valami jut), ezzel elég nehéz lenne kiáltani a 128 lehetséges flash színkombinációt. Az inverz a gyakorlatban jól bevált, mint pl a BASIC kurzor, vagy játékokban az aktuális menüpont kiemelése.
Nem lehetett volna olyan megoldást választani, hogy az NMI generálása előtt "átlapozzon" az EP egy olyan memórialapra, amelyen garantáltan nem dolgozhat a Spectrum program, így megmentve a verem tartalmát ? Utána majd csak visszavergődik valahogy az NMI rutin :)
A probléma az, hogy a verem az a Z80 saját, emulátortól független dolga. És ráadásul a RAM-ban bárhol lehet. Ezt úgy lehetne lekezelni, ha az emulátoron lenne RAM is (már a drágább, nagyobb, bonyolultabbnál tartunk), és ezt használná az emuláció alatt Spectrum RAM-nak, és aztán NMI generáláskor önmagában lapozná el (mert ugye a gép lapozásához kívülről nem tud hozzászólni, ezért lehet csak így megoldani). De ezután az NMI rutint lassítaná, hogy elő kell varázsolnia a Spectrumos memóriabeállítást mielött nekiláthatna a feladatának.
És végső soron az egész megbukik azon, hogy kell videómemória is, az meg bent van az alaplapon...

Avatar
Pgyuri
Alapító tag
Hozzászólások: 577
Csatlakozott: 2012.01.06. 13:34

Re: Emuláció Enterprise-on

Hozzászólás Szerző: Pgyuri » 2012.01.26. 15:27

Üdv,

Nyammm, érthető minden válasz :)

Vagy hang vagy háttér .... előbbi azért hasznosabb lenne, mert a háttér színe kevés játékban kap lényeges feladatot, míg a hang mindennek az alapja.

Villogás-mentesség tiszta sor.

A verem nem tud 16383-ra állni, mielőtt NMI ? Az EP-ben úgyis RAM az egész 64 K, az a címtartomány meg amúgy se nagyon használt a Spectrum programokban. Persze kívülről felülírni egy Z80 regiszter értékét valószínűleg nem lehet. Ha meg már csak 1 byte rákerül hasznos memóriarészre, akkkor meg is bolondulhatnak programok.

Látom, célfeladatként meg fogom kapni a BC Quest for Tire visszafejtését és átírását Enterprise-re .... de előbb be kellene fejeznem az Airwolf-ot .... mennyi izgalmas feladat!

Pgyuri

Avatar
Zozosoft
Hozzászólások: 804
Csatlakozott: 2012.01.06. 14:03
Kapcsolat:

Re: Emuláció Enterprise-on

Hozzászólás Szerző: Zozosoft » 2012.01.26. 15:44

Pgyuri írta: Vagy hang vagy háttér .... előbbi azért hasznosabb lenne, mert a háttér színe kevés játékban kap lényeges feladatot, míg a hang mindennek az alapja.
Na igen... szerintem bele se gondoltak ebbe amikor belekezdtek, csak azzal foglalkoztak, hogy minden Spectrum képesség meg legyen valahogy.
Egyébként jut eszembe még buzzer se kellett volna, az EP bővítőcsatlakozóján van hangbemenet lehetősége. Egy AY bővítésén már gondolkodtam :-)

Az EP-ben úgyis RAM az egész 64 K, az a címtartomány meg amúgy se nagyon használt a Spectrum programokban.
Konkrét esetben az emulátor módosított Spectrum ROM-ja van a 0. lapon.
Persze kívülről felülírni egy Z80 regiszter értékét valószínűleg nem lehet.
Sőt egész biztosan nem lehet :)
Látom, célfeladatként meg fogom kapni a BC Quest for Tire visszafejtését és átírását Enterprise-re ....
Ha már így elvállaltad... :D

Avatar
Pgyuri
Alapító tag
Hozzászólások: 577
Csatlakozott: 2012.01.06. 13:34

Re: Emuláció Enterprise-on

Hozzászólás Szerző: Pgyuri » 2012.01.26. 16:12

Üdv,

Sima ügy .... el is kezdem, remélhetőleg estére már megy :D Komolyra fordítva, ismersz, szeretem a kihívásokat ... persze ha felajánlasz érte egy emulátort, sokat lendít az ügyön :D

A "baj" csak annyi ezzel a játékkal, hogy nem biztat semmi olyannal, hogy lenne benne rejtett titok, felfedezetlen csel vagy egyéb ravaszság. Ahhoz már túl sokat játszottam vele, hogy ne akadtam volna bele véletlenül. Van egy hatalmas BUG benne egy helyen, de ettől még tökéletesen játszható. El kell töprengenem rajta, hogy megéri-e a kutakodás. Ha a forrást megcsináltam, abból EP-t varázsolni már nem lesz nagy dolog, de előre tisztázva a grafikához, színekhez nem nyúlok, mert ott rögtön meghal az EP processzora.

Az emulátorra visszatérve, köszönöm a részletezést :) Több buta ötletem, felvetésem nincs egyelőre. A többit megvitatjuk az EP fórumon!

Pgyuri

Avatar
edy.wss
Alapító tag
Hozzászólások: 11
Csatlakozott: 2012.01.24. 18:06

Re: Emuláció Enterprise-on

Hozzászólás Szerző: edy.wss » 2012.01.27. 13:13

Pgyuri írta:A "baj" csak annyi ezzel a játékkal, hogy nem biztat semmi olyannal, hogy lenne benne rejtett titok, felfedezetlen csel vagy egyéb ravaszság. Ahhoz már túl sokat játszottam vele, hogy ne akadtam volna bele véletlenül. Van egy hatalmas BUG benne egy helyen, de ettől még tökéletesen játszható.
Na tessék. Egy bug. Akkor azt tessék megjavítani. Mi ez kérem, ha nem kihívás?
Edy

QSOP+Space

Avatar
Pgyuri
Alapító tag
Hozzászólások: 577
Csatlakozott: 2012.01.06. 13:34

Re: Emuláció Enterprise-on

Hozzászólás Szerző: Pgyuri » 2012.01.27. 21:12

Üdv,

Nem programjavító kisiparos vagyok Edy bátyó :)

A kihívás azért máshol kezdődik...ne add a pacit Zozo alá, ha rajta múlna egész évben programozhatnék EP-re :D ... ha már csak a WoW-ra gondolok, abból is átirat készült, nem egy igazi gépkihasználó csoda, de legalább nem fogunk unatkozni öregkorunkban.

Pgyuri

Avatar
Zozosoft
Hozzászólások: 804
Csatlakozott: 2012.01.06. 14:03
Kapcsolat:

Re: Emuláció Enterprise-on

Hozzászólás Szerző: Zozosoft » 2012.01.27. 22:12

Pgyuri írta:ne add a pacit Zozo alá, ha rajta múlna egész évben programozhatnék EP-re :D
Így van, de Edy is beszállhat! :D

Amúgy ha már átiratok, és emuláció: én (és még valószínűleg sok más EP-s is) úgy találkoztunk Spectrum emulátorral, és ezáltal Spectrummal, hogy voltak olyan "átiratok" amelyek lényegében egy megbütykölt szoftveres emulátorból álltak, a LOAD rutinba volt beletéve a program betöltése, a SINCLAIR bejelentkező felírat volt lecserélve arra, hogy ird be LOAD ""
Ami nem kis kihívás volt úgy, hogy az ember ahhoz volt szokva, ami betű a gombra van írva, azt írja a gép. Beletelt egy kis időbe a jéPéPé-ig eljutni :D
Aztán jött a felfedezés izgalma, hogy mi van, ha más parancsot írunk be? Jéé azt is végrehajtja! Aztán újságokból kisebb programok bepötyögése (sok szenvedés árán, mert a kulcsszavas billentyűzet továbbra is ismeretlen vidék), nagy öröm, hogy csinál valamit :-) aztán szájról-szájra terjedt a hír, hogy képzeld az XY program Spectrumot csinál a gépből! (Némelyik elég masszívan, mert úgy volt beállítva, hogy a RESET gomb megnyomásakor Spectrum reset legyen.)
Persze a kísérletező kedvnek hamar véget vetett, hogy SAVE az nem volt...

Avatar
Pgyuri
Alapító tag
Hozzászólások: 577
Csatlakozott: 2012.01.06. 13:34

Re: Emuláció Enterprise-on

Hozzászólás Szerző: Pgyuri » 2012.01.27. 22:42

Üdv,

Igen, erről olvastam az EP fórumon, muris lehetett. Ugyanez történt a C64-es barátomnál is, aki a Spectrum szimulátor (inkább, mint emulátor) betöltése után rohangált hozzá, hogy melyik parancs hol van és hogy kell kiírni valamit, stb.

Ha már előjött a LOAD utáni "" akkor magyarázza már meg valaki a világon, hogy ki volt az az eszetlen tervező, aki az a két idézőjelet kötelezően előírta a parancs után?!? A játéleírások fele azt ecsetelte, miként is gépelje be a szerencsétlen kezdő a fránya betöltés parancsát...és a symbol shift se gyepálódott volna feleslegesen.

Itt jönne egy rakás ésszerűsítés:

LOAD és simán betölthetné az érkező programot.
LOAD CODE és betöltődik a kód

és még sorolhatnánk egy külön témában, mint BASIC tervezői butaságok (pl. az USR nnnnn helyett is mehetett volna a RUN CODE nnnnn). A ROM-ban még bőven volt szabad hely...oda is igazán rakhattak volna valami kedves segédprogramot a Spectrum tulajdonosoknak.

Pgyuri

Avatar
Zozosoft
Hozzászólások: 804
Csatlakozott: 2012.01.06. 14:03
Kapcsolat:

Re: Emuláció Enterprise-on

Hozzászólás Szerző: Zozosoft » 2012.01.28. 12:47

Pgyuri írta: Kár, hogy a gép tervezői anno nem vették figyelembe azt az elhanyagolható tényt, hogy néhány "látszólag apró" hardver megoldással mekkora piacot is nyerhettek volna.
Kérdés, hogy jogilag mi lett volna, ha meglépnek egy olyat, hogy pl beállítható Spectrumos attribútumbájt kiosztás...
Manapság ebből tuti szabadalmi per lenne :D

Válasz küldése

Vissza: “Emulátorok”

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 1 vendég