Enterprise Forever

:HUN => Konvertálás => CPC-ről => Topic started by: Lacika on 2010.September.27. 11:42:38

Title: Pinball Power
Post by: Lacika on 2010.September.27. 11:42:38
Úgy látszik, mást egyelőre nem érdemes átírni.

Ha ez célzás akart lenni, akkor javaslom a Pinball Power (http://www.cpcgamereviews.com/p/index3.html) szemrevételezését...  :oops:
8 bites rendszereken teljesen egyedi kivitelezésű flipper.  :oops:
Nem mellesleg pedig Ep-n még nincs Spectrum változat sem.
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.26. 12:29:38
Ha ez célzás akart lenni, akkor javaslom a Pinball Power (http://www.cpcgamereviews.com/p/index3.html) szemrevételezését...

A színek konvertálásával problémák lennének :oops:
Eredeti:
  [attachthumb=#]
BIAS=20h (sok szín jól láthatóan eltér):
  [attachthumb=#]
BIAS=00h (a fényes (0000FF) és a sötét (000080) kék szín azonos (0000AA) lesz):
  [attachthumb=#]
Title: Re: Pinball Power
Post by: Zozosoft on 2010.October.26. 12:33:52
sok szín jól láthatóan eltér
Egy flippernél ez szerintem nem probléma.
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.26. 12:43:00
Pontosítás: a BIAS=0 verzió valójában nem lenne jó, mert a két kék szín közül csak a sötétet szabad takarni (a program a "3D" megjelenítést úgy oldja meg, hogy egyes paletta színek takarhatók, mások viszont nem), tehát ezek nem konvertálhatók egy színre. :(
Title: Re: Pinball Power
Post by: Lacika on 2010.October.26. 12:57:41
Pontosítás: a BIAS=0 verzió valójában nem lenne jó,

Ezek szerint marad a másik alternatíva...
Az, hogy más színű, nem von le semmit az élvezhetőségből.
Title: Re: Pinball Power
Post by: geco on 2010.October.26. 14:31:18
Teljesen jól néz ki az eltérő színű, talán még jobban is, mint az eredeti :)
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.28. 17:15:59
Ha ez célzás akart lenni, akkor javaslom a Pinball Power (http://www.cpcgamereviews.com/p/index3.html) szemrevételezését...

Valamennyire működő teszt verzió (valószínűleg még vannak hibák :oops:):
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
Összehasonlításképpen az eredeti CPC-s változat:
  [attachurl=#]
Title: Re: Pinball Power
Post by: Lacika on 2010.October.28. 21:20:33
Már most is nagyon jó! Szép nagy képernyő, nagyon látványos program!
Mi nincs még benne kész?
Látom, a két SHIFT-et is lehet használni  :)
Title: Re: Pinball Power
Post by: Lacika on 2010.October.28. 21:23:26
Highscore mentést meg lehet oldani?
Az első kép felesleges, úgyis csak szöveg és nem lehet olyan gyorsan elolvasni.  :)
Title: Re: Pinball Power
Post by: Lacika on 2010.October.28. 22:11:40
Highscore mentést meg lehet oldani?

Most látom, hogy már elmenti, csak még nem működik a highscore kijelző. Jó a lassabb scroll is, el lehet olvasni...
Az Ep-s színösszeállításban egyébként határozottabban jobban látszódik a golyó!
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.28. 23:00:37
Mi nincs még benne kész?

  - high score mentés/töltés javítása. Ilyen funkció ugyan elvileg már most is van, de nem működik megfelelően, két probléma miatt:
    - a program a játék indításakor jeleníti meg a legmagasabb pontszámot, és csak akkor, ha az előző játékban elért pontszám nagyobb volt, mint az eddigi legmagasabb pontszám
    - ugyanebből az okból a legmagasabb pontszám csak új játék indításakor frissítődik, tehát ha valaki elér egy nagy pontszámot, és aztán azonnal kilép, akkor az elveszik
  - néha "szemetelés" fordulhat elő a képernyőn - ezt elsősorban a játék Del billentyűvel történő feladásakor vettem észre, nem tudom biztosan, hogy máskor is van-e ilyen probléma; egyébként ez a hiba a CPC-s verzióban is megtalálható
  - talán még lehetnek nem konvertált színű pixelek (pl. ritkábban látható animációknál), és esetleg a hang is lehetne jobb

Quote
Látom, a két SHIFT-et is lehet használni  :)

Egészen pontosan ezek a billentyűk használhatók:

Bal: Z, bal Shift, Int/Ext1/Ext2 bal
Jobb: \, /, jobb Shift, Int/Ext1/Ext2 jobb
Indítás: Space, Ext1/Ext2 tűz

CPC-n mindegyikből csak az első használható (Z, \, Space).
Title: Re: Pinball Power
Post by: Zozosoft on 2010.October.28. 23:01:17
Jól néz ki!

valószínûleg még vannak hibák :oops:
Lehet egy ilyen hiba, hogy jóval nagyobb a késleltetése az ütõknek, mint az eredetiben?
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.28. 23:11:29
Lehet egy ilyen hiba, hogy jóval nagyobb a késleltetése az ütõknek, mint az eredetiben?

Ha nem azért van, mert különböző emulátoron, vagy nem ugyanazokkal a beállításokkal futtatod (pl. EP-n "resample to monitor refresh rate" módban, ami növeli a késleltetést), akkor lehet :oops: A billentyűzetkezelésen annyit módosítottam, hogy egy 50 Hz-es képkocka időtartama alatt ne lehessen egynél többször (CPU idő megtakarítása céljából); megnézem, hogy ez okozhatott-e valamilyen problémát.

UI.: egyszerűen tesztelhető az "optimalizált" billentyűzetkezelés nélküli mód: a játék futása közben a 9008h címen található CPL utasítást XOR A-ra kell cserélni. Ha ez észrevehető gyorsulást eredményez az irányításban, akkor hibás az átirat.
Title: Re: Pinball Power
Post by: Zozosoft on 2010.October.28. 23:28:12
Ha ez észrevehetõ gyorsulást eredményez az irányításban
Észrevehetõ! Enélkül nekem 1 labdát se sikerült visszaütni  :oops: de így módosítva ugyanolyan jól megy mint a CPC-sben.
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.28. 23:35:41
Highscore mentést meg lehet oldani?

Igen, csak a már leírt hibákat kell javítani.

Quote
Az első kép felesleges, úgyis csak szöveg és nem lehet olyan gyorsan elolvasni.  :)

Sok helyet szerencsére nem foglal (tömörítve kb. 1400 byte) :) Azt könnyen meg lehetne oldani, hogy amíg pl. a Pause billentyű le van nyomva, addig ne tűnjön el, de nem tudom, érdemes-e.

Jó a lassabb scroll is, el lehet olvasni...

Az eredeti (olvashatatlan) byte-onkénti scrollozást átírtam fél byte-ra RLD utasítások használatával. Így már olvashatóbb, igaz, a szöveg ugyanaz, mint a felső, lassabb scroll.
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.28. 23:50:01
Észrevehetõ! Enélkül nekem 1 labdát se sikerült visszaütni  :oops: de így módosítva ugyanolyan jól megy mint a CPC-sben.

Akkor is lassabb, ha marad a CPL 9008h-n, de a 39CBh címen a CALL 9000h helyére 3 OR A kerül (így nem működik a DEL billentyű; figyelni kell arra, hogy a 0. lapon nem mindig a játék van) ? Talán a legjobb lenne az általános (lassú) billentyűzet emuláló rutin helyett olyat használni, ami kifejezetten ehhez a játékhoz készült, és csak azt a néhány billentyűt figyeli, amit a játék használ.
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.29. 23:08:08
A betöltőképen a "Masteronic" az hiba (ha igen, akkor javítható) ? :)

A pontszám mentést/töltést, a Del billentyűnél előforduló "szemetelést", és a lassú billentyűzetkezelést sikerült javítani, így hamarosan elkészül a teljes verzió.
Title: Re: Pinball Power
Post by: Lacika on 2010.October.30. 00:06:36
A betöltőképen a "Masteronic" az hiba (ha igen, akkor javítható) ? :)

Igen, ha az van írva, akkor hiba.
"(Mastertronic, 1989)"
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.30. 00:17:32
Igen, ha az van írva, akkor hiba.
"(Mastertronic, 1989)"

Játék közben a képernyő alján nem hibás, így onnan a színek konvertálásával másolva javítható :)
Title: Re: Pinball Power
Post by: Zozosoft on 2010.October.30. 11:43:49
Talán a legjobb lenne az általános (lassú) billentyûzet emuláló rutin helyett olyat használni, ami kifejezetten ehhez a játékhoz készült, és csak azt a néhány billentyût figyeli, amit a játék használ.
Ez jó ötletnek tünik! Ez lesz a következõ verzióban?
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.30. 11:46:38
Ez jó ötletnek tünik! Ez lesz a következõ verzióban?

Igen, ez a rész már el is készült :) A használható billentyűk ugyanazok maradnak, mint az első verzióban.
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.31. 16:28:45
Javított/továbbfejlesztett verzió:
  [attachurl=#]
  [attachurl=#]
Változtatások:
  - legmagasabb pontszám mentés javítva (a program működik a PINBALL.HI file nélkül is)
  - gyorsabb billentyűzetkezelés
  - a DEL billentyű képernyőre szemetelése javítva
  - "Masteronic" logo javítva
  - jobb hangok (de az is lehet, hogy nem :oops:)
  - ha esetleg valakit érdekel a copyright szöveg a betöltés elején, az késleltetheti az eltűnését a PAUSE billentyű lenyomva tartásával
  - betöltés közben a státuszsor a keretszínnel azonos sötétkék hátterű

Forráskód és egyéb file-ok, amelyek biztosan nem érdekelnek senkit, de azért a teljesség kedvéért itt vannak ezek is:
  [attachurl=#]    (a betöltő forráskódja)
  [attachurl=#]    (a CPC program változtatásainak a forráskódja)
  [attachurl=#]    (konvertáló script)
  [attachurl=#]    (eredeti CPC verzió)
  [attachurl=#]    (tömörített program betöltő; a "dtf -cl -lz2" kimenetéhez képest a csak a keretcsíkozás módosítása az eltérés)
Title: Re: Pinball Power
Post by: Lacika on 2010.October.31. 18:37:41

  - ha esetleg valakit érdekel a copyright szöveg a betöltés elején, az késleltetheti az eltűnését a PAUSE billentyű lenyomva tartásával
 

Nyomogatom én, de hiába...  :oops:
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.31. 18:53:03
Nyomogatom én, de hiába...

Nem elég csak egyszer megnyomni, folyamatosan lenyomva kell tartani (nem túl felhasználóbarát megoldás :oops:, de valószínűleg egyébként sem sokan olvassák el egynél többször). A program minden 1/50 másodpercben ellenőrzi a PAUSE állapotát, és amikor 50-edszer fordul elő, hogy nincs lenyomva, akkor folytatódik a betöltés (azaz PAUSE nélkül 1 másodperc a várakozás).

UI.: ep128emu-n alapértelmezés szerint a Home a PAUSE billentyű; ugyan használható a Pause/Break is, de az nem biztos, hogy működik.
Title: Re: Pinball Power
Post by: Lacika on 2010.October.31. 19:17:45
Nem elég csak egyszer megnyomni, folyamatosan lenyomva kell tartani

Ja, igen. én is így gondoltam.  :oops:
Próbáld ki légyszíves, hogy neked működik-e tényleg, mert nekem nem.
Title: Re: Pinball Power
Post by: IstvanV on 2010.October.31. 19:22:56
Próbáld ki légyszíves, hogy neked működik-e tényleg, mert nekem nem.

Nekem működik, igaz, egyelőre csak emulátoron teszteltem (lehet, hogy igazi gépen nem megbízható pl. a billentyű rossz érintkezése stb. miatt ?). Ha emulátoron van probléma, az lehet a billentyűzet konfiguráció miatt is.
Title: Re: Pinball Power
Post by: Lacika on 2010.October.31. 19:50:04
Nekem működik, igaz, egyelőre csak emulátoron teszteltem

Én is emun próbáltam, mindegy, a lényeg, hogy működik.
Title: Re: Pinball Power
Post by: szipucsu on 2010.November.01. 14:59:12
Ezt a játékot jól fel lehetne dobni digi hangokkal, meg a scrollozó feliratok alá/helyett is jól hangzana valami DTM zene.
Enterballhoz hasonló dobhangokat tudnék elképzelni.

Amúgy szerintem jó lett!
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.02. 12:05:13
Nekem mûködik, igaz, egyelõre csak emulátoron teszteltem (lehet, hogy igazi gépen nem megbízható pl. a billentyû rossz érintkezése stb. miatt ?). Ha emulátoron van probléma, az lehet a billentyûzet konfiguráció miatt is.
Este kipróbálom igazi gépen!
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.02. 15:25:32
Este kipróbálom igazi gépen!

Én most megnéztem azon is, és úgy látszik, működik.

UI.: csak nekem van olyan probléma, hogy valódi gépen véletlenszerűen lefagy a program játék közben ? :oops: Emulátoron ilyen egyszer sem fordult elő :shock:
Title: Re: Pinball Power
Post by: szipucsu on 2010.November.02. 17:19:55
UI.: csak nekem van olyan probléma, hogy valódi gépen véletlenszerûen lefagy a program játék közben ? :oops: Emulátoron ilyen egyszer sem fordult elõ :shock:

Nekem sajnos maga az igazi EP-m is lefagy egy idõ után, akármi fut rajta. Lehet, hogy a régi EP-k már csak ilyenek, szóval sztem lehet a gép hibája. (Táp, azt hiszem.)
Ha simán bekapcsolva hagyod az EP-t vagy más játékkal játszol, akkor is lefagy?
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.02. 17:40:52
Nekem sajnos maga az igazi EP-m is lefagy egy idõ után, akármi fut rajta. Lehet, hogy a régi EP-k már csak ilyenek, szóval sztem lehet a gép hibája. (Táp, azt hiszem.)
Ha simán bekapcsolva hagyod az EP-t vagy más játékkal játszol, akkor is lefagy?

Eddig ilyen lefagyás nem igazán fordult elő, a Pinball Power-ben viszont szinte másodpercek alatt előjön (az elején a scrollnál úgy látom, nem fagy le, csak játék közben). Ez vagy azt jelenti, hogy a játék hibás valami olyan módon, ami csak igazi gépen okoz problémát (pl. kis eltérések az időzítésben, stb.), vagy hibás a RAM a gépben. Az utóbbi esetben könnyen lehetséges, hogy a hiba csak M1 (utasítás) olvasásnál és várakozás nélkül fordul elő, és így is csak bizonyos címeken vagy akár egyetlen byte-on. Ezért lehet az, hogy csak ez a program fagy le, és csak egy bizonyos ponton. Mindenesetre érdemes megnézni más gépeken is, ha azokon jól fut, akkor valószínűleg csak az én gépem RAM hibás :(
Title: Re: Pinball Power
Post by: Vicman on 2010.November.02. 22:24:10
Nice Conversion !
I've just added it to my "Gamebase Enterprise" Project....

btw.
Varga Istvan is the correct name of the converter ?  (and Varga is your first name, Istvan is the family-name ? )
[attachthumb=#]
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.02. 22:59:03
Mindenesetre érdemes megnézni más gépeken is, ha azokon jól fut
Nekem jól megy, turbóban is!
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.02. 23:03:09
btw.
Varga Istvan is the correct name of the converter ?  (and Varga is your first name, Istvan is the family-name ? )

It is the correct name in Hungarian order (i.e. first name last), and without using the á character in István (which is the equivalent of Steven in English or Stefan in German).
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.02. 23:12:40
Nekem jól megy, turbóban is!

Megnéztem néhány másik új átiratot is, azokkal nem volt probléma. A Pinball Power-t teszteltem úgy is, hogy iview.ext van a memóriában (így a 0. lap szegmensen levő betöltő kivételével minden más szegmensre kerül), tömörítetlenül (ami megváltoztatja a betöltő méretét és ugyanazok a kódrészletek más címre kerülnek), és engedélyezett memória várakozással; mindenhogyan lefagy, ugyanazon a módon (csak játék közben, véletlenszerűen néhány másodperc után) :ds_icon_frown: Ha csak az én gépemen van ilyen, akkor még tovább tesztelem, talán sikerül rájönni, mi okozza a hibát :???:
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.02. 23:25:10
Izgalmas! Megnéztem egy másik gépet, azon fagy, a golyó kilövését követõ másodpercben. Ami izgi, hogy 6Mhz-en már eljut a pálya tetejéig a golyó, 7.12-n pedig már 10-15 másodpercet is lehet játszani.
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.02. 23:46:44
Izgalmas! Megnéztem egy másik gépet, azon fagy, a golyó kilövését követõ másodpercben. Ami izgi, hogy 6Mhz-en már eljut a pálya tetejéig a golyó, 7.12-n pedig már 10-15 másodpercet is lehet játszani.

Akkor a játék lehet a hibás :oops: De mi okozhatja a hibát, ami csak igazi gépen jön elő, és azok közül sem mindegyiken ? :???: Ha erre sikerül rájönni, akkor talán még javítani is lehet :)
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.02. 23:50:27
Akkor a játék lehet a hibás :oops: De mi okozhatja a hibát, ami csak igazi gépen jön elõ, és azok közül sem mindegyiken ? :???: Ha erre sikerül rájönni, akkor talán még javítani is lehet :)
Esetleg Z80/Nick frekvencia arányban némi szórás, és rossz helyen jön egy megszakítás?
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.02. 23:56:00
Esetleg Z80/Nick frekvencia arányban némi szórás, és rossz helyen jön egy megszakítás?

Ez lehetséges, bár nekem a memória várakozás engedélyezésével (ami megváltoztatja az időzítést) is ugyanúgy lefagy. De ha valóban ez az oka, akkor emulátoron is elő lehet hozni, csak a NICK frekvenciával kell kísérletezni (pl. 890000 Hz, 890100 Hz, stb.).
Title: Re: Pinball Power
Post by: Lacika on 2010.November.03. 08:03:01
Abban van rendszer, hogy angol (lassabb RAM-okkal) vagy német gépeken fagy?
Title: Re: Pinball Power
Post by: Vicman on 2010.November.03. 21:36:26
It is the correct name in Hungarian order (i.e. first name last), and without using the á character in István (which is the equivalent of Steven in English or Stefan in German).


Understood. So your name ,outside of Hungary, is Istvan Varga.....in German Stefan Schuster.....first and familyname are often here in Germany  :ds_icon_cheesygrin:

btw. Can you please send me a picture of you, so i can use it in the gamebase for the "Converters" ?  (i allready have pics from geco & zozosoft)

The same request goes to all other Converters  :oops:

[attachthumb=#][attachthumb=#]
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.05. 00:09:37
Izgalmas! Megnéztem egy másik gépet, azon fagy, a golyó kilövését követõ másodpercben. Ami izgi, hogy 6Mhz-en már eljut a pálya tetejéig a golyó, 7.12-n pedig már 10-15 másodpercet is lehet játszani.

Egyelőre ennyit sikerült megállapítani:
  - a lefagyás után nem működik a megszakítás
  - nem rontja el a memóriát: EP-n a fagyést követő melegindításnál lemezre mentve az egész memóriát, majd emulátoron a lényeges részét betöltve egyelőre nem találtam semmi gyanúsat, és működik is probléma nélkül
  - úgy látszik, nem a megszakítási vagy a loaderCall rutin futása közben történik; játék közben egyébként csak ezek tiltják le átmenetileg a megszakításokat :???:

UI.: kerestem még konvertálatlan I/O port műveleteket és IM változtatást (az IM 0 pl. okozhatott volna ilyen hibát) a programban, de nem találtam.
Title: Re: Pinball Power
Post by: Lacika on 2010.November.05. 07:47:41
Nem lehet, hogy hardware hiba?
Lehet, hogy semmi köze az esethez, de elmesélem:
A gépemet anno Bozai Gábor alakította át ezek (http://ep128.hu/Ep_Hardware/Ep_320k_RAM.htm) alapján. Turbósítás okán kicserélte a procit is Z80B-re. Csakhogy az új procival néhány program indulást követően másodpercek múltán le is fagyott! (Sajnos nem emlékszem mely programok, de valamelyik Dizzy köztük volt). Miután kicserélte egy másik Z80B-re, már minden jó volt.
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.05. 11:11:14
Nem lehet, hogy hardware hiba?

Nem lehetetlen, de a két gép közül, amelyeken Zozosoft tesztelte a programot, az egyiken pontosan ugyanilyen hiba jött elő. Mint már leírtam, az adatok memóriában való mozgatásának és/vagy a várakozás engedélyezésének nincs semmilyen hatása a problémára, mindenhogyan ugyanúgy lefagy. A többi játék, amit eddig próbáltam, hibátlanul működik. A gép német (volt mielőtt az EPROM-ot eltávolítottam :oops:) EP128, bővítés és turbósítás nélkül, nem a korai pixelhibás, lassú RAM-os, stb. sorozatból van. Érdemes lenne még néhány másik gépet is megnézni, hogy milyen arányban fordul elő a hiba.
Title: Re: Pinball Power
Post by: Lacika on 2010.November.05. 11:20:13
Érdemes lenne még néhány másik gépet is megnézni, hogy milyen arányban fordul elő a hiba.

Én vasárnap "megszabadultam a családtól" egy napra, akkor ki tudtam volna próbálni. Sajnos ilyen alkalom a közel jövőben nem várható...  :(
Title: Re: Pinball Power
Post by: geco on 2010.November.05. 11:50:05
Nem lehetetlen, de a két gép közül, amelyeken Zozosoft tesztelte a programot, az egyiken pontosan ugyanilyen hiba jött elő. Mint már leírtam, az adatok memóriában való mozgatásának és/vagy a várakozás engedélyezésének nincs semmilyen hatása a problémára, mindenhogyan ugyanúgy lefagy. A többi játék, amit eddig próbáltam, hibátlanul működik. A gép német (volt mielőtt az EPROM-ot eltávolítottam :oops:) EP128, bővítés és turbósítás nélkül, nem a korai pixelhibás, lassú RAM-os, stb. sorozatból van. Érdemes lenne még néhány másik gépet is megnézni, hogy milyen arányban fordul elő a hiba.

Lehet előrámolom a gépet a szekrényből egy tesztelés erejéig, le lesz tesztelve a program is, meg az is, hogy műxik-e még a drágaszág :)
Title: Re: Pinball Power
Post by: szipucsu on 2010.November.05. 12:03:17
Kirpóbáltam igazi géppel. Sajnos lefagyott többször is, valószínû nem a táp miatt. :(
Elõször még egész sokáig lehetett játszani vele. Minél többször töltöttem be, annál hamarabb lefagyott, most már közvetlen a golyó kilövése után. (Esetleg melegedés okozza a hibát, vagy ez csak véletlen?)
Szerintem nem a táp miatt van, mert azon a fagyáson a RESET sem segített, most meg resetre újraindul a gép.
Viszont egy érdekesség: most magára hagytam a gépet a játékkal lefagyva pár percre. Aztán nyomtam egy RESET-et és úgy csinált, mintha újra be akarná tölteni a játékot. Megjelent a PRESS SPACE és a CHEATS... felirat, SPACE-re töltött valamit, de csak egy kék képernyõ van a screen helyén és semmi.
EXOS 2.1 és EXDOS 1.0 van a gépemben, ha ez számít valamit, és floppyról töltöttem, a gép angol nyelvû. Más extra (óra kártya, turbó, stb.) nincs a gépben.

UI: Valami melegedés lehet a dolog mögött, mert harmadszor is közvetlen a golyó kilövése után volt fagyi, az elsõ néhány próbálkozásnál még lehetett játszani valamennyit.
UI2: Nem harmadszor, hanem hatodszor is. Viszont kipróbáltam, hogy nem közvetlen a BASIC indulása után töltöm be, hanem kicsit pötyögtem BASIC-ben. Így betöltve megint lehetett kicsit játszani.
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.05. 12:21:54
A fagyós gépen nekem is közvetlenül a golyó kilövése után fagyott meg. Viszont turbóban tovább jutott.
A melegedés szerintem a különbözõ órajel frekvenciák beállásában játszhat közre. (Pl van olyan gépem, amin hidegen hullámzik a kép, a két félkép független színusztáncot jár :-) )
Title: Re: Pinball Power
Post by: szipucsu on 2010.November.05. 13:32:23
Viszont turbóban tovább jutott.
Nem mintha értenék hozzá, de akkor valami olyasmi okozhatja a fagyást, amit a turbó nem gyorsít fel... vagy az mindent gyorsít?
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.05. 14:15:09
Nem mintha értenék hozzá, de akkor valami olyasmi okozhatja a fagyást, amit a turbó nem gyorsít fel... vagy az mindent gyorsít?
Nick-et nem gyorsítja.
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.05. 17:02:48
Lehet, hogy megtaláltam a probléma okát, de ha valóban ez az, akkor az összes CPC átiratom hibás igazi gépen :( Úgy sikerült megtalálni, hogy a lefagyás helyének a megkeresése céljából a megszakítási rutint módosítottam, hogy legyen egy nagy frekvenciájú (kb. 6 kHz-es) megszakítás, amely tárolja a megszakítás előtti PC és SP értékét; így ugyan lassult a program futása, de ez nem változtatott a hibán. Így tűnt fel, hogy a lefagyás előtti utolsó megszakítás mindig 4336h címen történik, amely a loaderCall rutin elején található LD A, I utasítás utáni byte címe. Ennek az utasításnak az a célja, hogy a betöltő kódjába történő hívások vissza tudják állítani a megszakítások engedélyezését (amelyet az LD A, I elvileg a P/V biten tárol) a visszatéréskor. Gyanús lett az LD A, I utasítás, és rövid keresés után meg is találtam ezt (http://z80.info/z80bugs.htm) az információt:

"Hey another thing you may wish to consider mentioning are the bugs in the NMOS version of the CPU.
One of them is with regard to the buggy IFF2->parity flag performance in the LD A,I and LD A,R instructions.
An error can occur when an INTACK runs near these instructions:
the parity flag will be showing 0 when it should have been 1.
A Zilog app. note is around somewhere talking about this.
It's a rather nasty bug for embeddedaapps... There are I think a few others.
"

Tehát ez egy Z80 hardver bug: az LD A, I / LD A, R hibásan tárolja a megszakítás engedélyezését a P/V biten, ha véletlenül pont ilyen utasításnál történik megszakítás. Ez nem minden Z80 változatnál fordul elő (csak az NMOS hibás), így lehetséges, hogy az egyik (kicserélt CPU-s ?) gép jól működött. Ezért Z80 CPU-n gyakorlatilag lehetetlen megbízhatóan megállapítani, hogy éppen engedélyezettek-e a megszakítások. :evil: Mivel a problémás rutint mindegyik CPC átiratban használtam, elvileg mindet javítani kellene :(, bár úgy látszik, soknál a gyakorlatban nincs hiba (vagy azért, mert csak letiltott megszakításnál történik loaderCall hívás, vagy mert szerencsés módon olyan az időzítés, hogy az LD A, I utasításnál nem lehet megszakítás, vagy pedig a játék időben újra engedélyezi a megszakításokat, és így nem fagy le).
Title: Re: Pinball Power
Post by: Lacika on 2010.November.05. 17:56:36
Ezek szerint nem minden gépben van ilyen NMOS szériájú proci gyárilag sem? Hisz Zozo is talált olyan gépet, melyen működik.
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.05. 19:10:25
Ezek szerint nem minden gépben van ilyen NMOS szériájú proci gyárilag sem? Hisz Zozo is talált olyan gépet, melyen működik.

Nem tudom, mint említettem, lehet, hogy abban az egy gépben, amely jól működött, már cserélt Z80 van, és nem az, amit gyárilag beépítettek :?:
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.05. 19:40:23
Nem tudom, mint említettem, lehet, hogy abban az egy gépben, amely jól mûködött, már cserélt Z80 van, és nem az, amit gyárilag beépítettek :?:

Igen, az én gépemben egy 2006-os gyártású 10Mhz-es Zilog Z80 van.
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.05. 20:04:38
Ezért Z80 CPU-n gyakorlatilag lehetetlen megbízhatóan megállapítani, hogy éppen engedélyezettek-e a megszakítások. :evil:

Illetve pontosabban többé-kevésbé megoldható, de méretnövekedés és lassulás árán, így nem tudom, megéri-e. Az egyik megoldás az, hogy ha PO (tiltott megszakítás) az eredmény, akkor újabb LD A, I utasítást kell végrehajtani, abban a reményben, hogy nem lesz két megszakítás közvetlenül egymás után pontosan ilyen időzítéssel:
Code: ZiLOG Z80 Assembler
  1.         LD    A, I
  2.         JP    PE, L1
  3.         LD    A, I
  4. L1:
A másik az, ha a megszakítási rutin ellenőrzi a visszatérési címet, és ha az LD A, I utáni byte-ra mutat, akkor módosítja a mentett F regisztert.

A legjobb, de több munkával járó megoldás természetesen az, ha külön hívható loaderCallDI és loaderCallEI rutint készítek, és módosítom a *conv.s file-okat is, hogy mindenhol a megfelelő verziót hívják.
Title: Re: Pinball Power
Post by: szipucsu on 2010.November.06. 22:53:49
Tehát ez egy Z80 hardver bug
Az emulátorban hogyhogy nem fordul elõ a fagyás? Eleve a nem bugos Z80-at emulálja?
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.06. 22:58:56
Az emulátorban hogyhogy nem fordul elõ a fagyás? Eleve a nem bugos Z80-at emulálja?

Igen, mivel eddig nem tudtam erről a Z80 hibáról :oops: De ha nem így lenne, akkor természetesen az átiratokba sem került volna olyan kód, ami nem működik megfelelően a bug miatt. :)
Title: Re: Pinball Power
Post by: Lacika on 2010.November.07. 08:50:04
Ha eaetleg az emu-ba bekerül ez a "javítás", úgy kellene megoldani, hogy a processzor típusa választható legyen. :)
Az én gépemben is Z80B van.
Title: Re: Pinball Power
Post by: szipucsu on 2010.November.07. 12:32:13
Ha eaetleg az emu-ba bekerül ez a "javítás", úgy kellene megoldani, hogy a processzor típusa választható legyen. :)
Az én gépemben is Z80B van.
Szerintem ha visszafele "javítjuk" az emulátort, akkor elõbb-utóbb abakusz-emulátor lenne belõle.

UI: Persze fejlesztésekhez, új programok teszteléséhez ez nem hülyeség. De átlag felhasználó (pl. én) soha nem használná ezt a lehetõséget. Valami eldugott menü eldugott opciójába be lehet tenni, hogy béna Z80 és király Z80 között lehessen választani. Vagy fejlesztõknek külön emulátor csomag kéne? :D
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.20. 19:48:35
Megnéztem néhány másik programot is (ATF, Castle Master, Cybernoid 2, Dark Side, Dizzy 7, Hydrofool, Rick Dangerous 2, Super Hero), ezek egyelőre úgy látszik, nem fagynak, bár lehet, hogy többet kellene tesztelni, és nem csak néhány percet. :oops: A Pinball Power-ből mindenesetre készítek javított verziót, de idővel lehet, hogy lecserélem a többit is (azok kivételével, amelyekben biztosan nem fordulhat elő a hiba).
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.20. 21:08:22
A javítás a korábban emlitett többszörös LD A,I módszert jelenti?
Erre egyébként lehetne teszt programot írni, ami megnézi milyen Z80 van a gépben?
Title: Re: Pinball Power
Post by: Lacika on 2010.November.20. 21:37:47
Megnéztem néhány másik programot is (ATF, Castle Master, Cybernoid 2, Dark Side, Dizzy 7, Hydrofool, Rick Dangerous 2, Super Hero), ezek egyelőre úgy látszik, nem fagynak, bár lehet, hogy többet kellene tesztelni, és nem csak néhány percet. :oops: A Pinball Power-ből mindenesetre készítek javított verziót, de idővel lehet, hogy lecserélem a többit is (azok kivételével, amelyekben biztosan nem fordulhat elő a hiba).

ha elkészülne az emu új verziója, amelyben lehet processzort választani, megnőne a tesztelők köre...  :ds_icon_cheesygrin:
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.20. 23:15:02
A javítás a korábban emlitett többszörös LD A,I módszert jelenti?

Az is használható lenne, de még jobb - igaz, több munkát igénylő - megoldás a külön hívható loaderCallEI és loaderCallDI rutin.

Quote
Erre egyébként lehetne teszt programot írni, ami megnézi milyen Z80 van a gépben?

Ha a Pinball Power jelenlegi verziója néhány másodperc után még fut, akkor valószínűleg nem a hibás verzió :) De egy egyszerű tesztprogram azon az elven működhetne, hogy ciklusban sok LD A, I utasítást hajt végre engedélyezett megszakítás mellett, és ha előfordul az, hogy a P/V bit nincs beállítva, akkor bugos a Z80.
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.22. 16:17:15
Javítás (csak a módosított file-ok, a többi itt (http://enterpriseforever.com/cpcr337l/pinball_power-t580.0.html;msg21196#msg21196) található):
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.22. 16:53:33
Teszt igazi gépen: :)
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
Így elég nehéz volt játszani, mert felvétel közben a látható kép 0.5-1 másodpercet késett :oops: Viszont találtam egy hibát, ami már korábban is volt a programban: néha egyszerre több labda veszik el :( Ez talán akkor fordulhat elő, ha a bónuszpontok számolása és/vagy az új labda megjelenítése közben le van nyomva valamelyik a játék irányítására használt billentyű.
Title: Re: Pinball Power
Post by: Lacika on 2010.November.22. 18:09:17
Javítás (csak a módosított file-ok, a többi itt (http://enterpriseforever.com/cpcr337l/pinball_power-t580.0.html;msg21196#msg21196) található):

A régi változatot is meghagyjam CPU teszt gyanánt?
Title: Re: Pinball Power
Post by: szipucsu on 2010.November.22. 20:26:40
Jó ez a videó, nem nagyon látszik rajta, hogy igazi géprõl vetted fel (nem látszik a tévé, stb.)

A régi változatot is meghagyjam CPU teszt gyanánt?

Szerintem onnan a játékok közül érdemesebb törölni és pl. itt a letöltések közé feltehetjük valami CPU teszt vagy hasonló mappába.
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.22. 22:35:36
Jó ez a videó, nem nagyon látszik rajta, hogy igazi géprõl vetted fel (nem látszik a tévé, stb.)
Gondolom a TV tunerbe dugta a gépet :-)
Title: Re: Pinball Power
Post by: IstvanV on 2010.November.22. 23:15:46
Gondolom a TV tunerbe dugta a gépet :-)

Valóban, TV kártyával készült, (nem túl jó minőségű :oops:) S-Video kimenetet használva.

Egyszerű Z80 teszt program:
  [attachurl=#]
  [attachurl=#]
Ha nincs LD A,I/LDA, R bug, akkor csak kilép az Enterprise logóhoz. Hibás Z80 esetén a kilépés előtt néhány másodperc keretcsíkozás is van.
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.23. 07:13:33
Ha nincs LD A,I/LDA, R bug, akkor csak kilép az Enterprise logóhoz. Hibás Z80 esetén a kilépés elõtt néhány másodperc keretcsíkozás is van.
Mûködik!  :smt038
Title: Re: Pinball Power
Post by: Lacika on 2010.November.24. 16:48:22
Egyszerű Z80 teszt program:
  (Attachment Link)
  (Attachment Link)
Ha nincs LD A,I/LDA, R bug, akkor csak kilép az Enterprise logóhoz. Hibás Z80 esetén a kilépés előtt néhány másodperc keretcsíkozás is van.

Célszerű lenne szerintem kicsit "felhasználóbaráttá" tenni a programot üzenetekkel.
Title: Re: Pinball Power
Post by: Zozosoft on 2010.November.24. 16:54:50
Célszerû lenne szerintem kicsit "felhasználóbaráttá" tenni a programot üzenetekkel.
Majd az EXOS 2.4 kiír ilyeneket, hogy 4 Mhz NMOS Z80 CPU :-)
Title: Re: Pinball Power
Post by: szipucsu on 2010.November.24. 17:41:53
Célszerû lenne szerintem kicsit "felhasználóbaráttá" tenni a programot üzenetekkel.

*** CPU error type 1.
:D
Title: Re: Pinball Power
Post by: IstvanV on 2011.March.11. 13:51:19
Z80 bug miatt előforduló hibát talált valaki még a régebbi CPC átirataimban (nem csak igazi gépen lehet tesztelni, ezzel (http://ep4ever.org/ep128emu/ep128emu_208-t531.0.html;msg21692#msg21692) a módosított emulátorral is előfordul a lefagyás) ? Elvileg mindegyik tartalmazza a hibás kódot :oops:, de ez nem minden játéknál eredményez észrevehető problémát.
Title: Re: Pinball Power
Post by: Zozosoft on 2011.March.11. 13:59:07
Mostanában én csak új procis gépen játszottam (az van állandóra az asztalon)  :oops:  :oops:  :oops:
Title: Re: Pinball Power
Post by: Lacika on 2011.March.11. 20:26:42
Cybernoid 2 örökélettel végigvíve. Elég sokat futott, az szerintem TEST OK...
Tulajdnképpen mely programokat kell megnézni?  :oops:
Title: Re: Pinball Power
Post by: IstvanV on 2011.March.11. 21:07:42
Tulajdnképpen mely programokat kell megnézni?

Elvileg mindet, mert mindegyik tartalmazza a hibás kódot :oops: De talán egyszerűbb lenne mindet javítani, ha nem is az egészet egyszerre.