Enterprise Forever

:HUN => Konvertálás => CPC-ről => Topic started by: Zozosoft on 2010.August.19. 18:36:54

Title: Nebulus
Post by: Zozosoft on 2010.August.19. 18:36:54
Ha a Sorcery késznek lesz nyilvánítva, akkor lehetne kérni következõnek a Nebulus-t?
Title: Re: Nebulus
Post by: IstvanV on 2010.August.19. 18:45:42
Ha a Sorcery késznek lesz nyilvánítva, akkor lehetne kérni következõnek a Nebulus-t?

Ezt ?
  [attachurl=#]
Title: Re: Nebulus
Post by: Zozosoft on 2010.August.19. 18:57:02
Ezt ?
Igen, sokkal szebb mint a Spectrumos (http://www.ep128.hu/Games/Nebulus.htm) verzió!
Title: Re: Nebulus
Post by: IstvanV on 2010.August.22. 17:02:56
Igen, sokkal szebb mint a Spectrumos (http://www.ep128.hu/Games/Nebulus.htm) verzió!

Többé-kevésbé már működő átirat:
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
Csalás és pontszámtábla mentés már van. Játék közben az Esc billentyű használható a játék szüneteltetésére, utána Enterrel lehet folytatni. A 3 és 4 billentyűk csak a lenyomásuk idejére szüneteltetik a játékot. Ezek a billentyűk egyébként már a CPC verzióban is megvannak. Az irányításra a beépített, EXT1, és EXT2 joystick is használható.

Problémák:
  - konvertálatlan színű pixelek előfordulhatnak - ez a játék nem tárolja a pixel adatokat egy nagy, összefüggő memóriaterületen, mint a Cybernoid 1-2 vagy a Sorcery, hanem szétszórva sok helyen (a kódban is), mint az ATF; érdemes tehát összehasonlítani a CPC verzióval, hogy vannak-e eltérések
  - a paletta konvertálását nehezítette, hogy a játék minden pályán átdefiniál 4 színt, így csak 4 szabad paletta (nem BIAS) szín maradt a többire, és nem is sikerült jó konverziót találni :( Egyelőre az eredetileg fix színek közül az egyik ("bright cyan") azonos lett az átdefiniáltak közül azzal, amelyik az első pályán szintén ilyen színű; a későbbi pályákon azonban ez a szín már hibás lesz
  - a hangok nem tökéletesek a négyszögjel&zaj mód használata miatt. Ezek egyelőre úgy konvertálódnak, hogy csak a zaj szól. Érdemes egyébként a játékot kipróbálni úgy is, hogy csak a hangeffektusok (FX) vannak engedélyezve, a zene nem
Title: Re: Nebulus
Post by: Lacika on 2010.August.22. 17:45:48
Többé-kevésbé már működő átirat:

Már ez is nagyon szép!
Ilyen a "többé-kevésbé már működő" verzió?  :ds_icon_cheesygrin:
Title: Re: Nebulus
Post by: Lacika on 2010.August.22. 18:04:26
Érdekes, hogy a CPC változatban sincs az a "közjáték" a két torony között, mint a C64-es változatban.
Javaslom, hogy a betöltőképernyőn a piros keretből inkább sötétkék legyen? A piros elég vadító...
Title: Re: Nebulus
Post by: IstvanV on 2010.August.22. 18:13:31
Javaslom, hogy a betöltőképernyőn a piros keretből inkább sötétkék legyen? A piros elég vadító...

Ilyen volt eredetileg is :oops: De ha a keretet sötétkékre cserélem, akkor talán érdemes lenne a hátteret is átszínezni ?
Title: Re: Nebulus
Post by: Lacika on 2010.August.22. 18:25:48
Ilyen volt eredetileg is :oops:
Igen, ezt megnéztem, CPC-n is piros.

De ha a keretet sötétkékre cserélem, akkor talán érdemes lenne a hátteret is átszínezni ?

Igen, én is így gondoltam.

A harmadik szintig jutottam (ott rögtön az elején elakadok, sohasem tudtam továbbjutni a Spectrum verzióban sem...). Addig nem láttam kirívó, oda nem illő színt. A második szinten a piros színkompozíció cseréje viszont megfontolandó...(Persze belátom, eredetileg is ilyen, végső soron maradjon).
Title: Re: Nebulus
Post by: Lacika on 2010.August.22. 18:27:39
Tényleg, Zozo! A harmadik szinten rögtön a legelején, hogyan lehet továbbjutni?
Title: Re: Nebulus
Post by: nyuzga on 2010.August.22. 18:54:14
Tényleg, Zozo! A harmadik szinten rögtön a legelején, hogyan lehet továbbjutni?

Ahol 2 szintet megy a lift, ott lökesd le magad az alatta levőre és jobbra,
Title: Re: Nebulus
Post by: IstvanV on 2010.August.22. 19:06:16
Igen, én is így gondoltam.

Átszínezve:
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]

"PLOT PAINT" Lua nyelven: :)

Code: Lua
  1. function getPixel(x, y)
  2.   if x < 0 or x >= 160 or y < 0 or y >= 200 then
  3.     return -1
  4.   end
  5.   local addr = 0xC000 + (AND(y, 7) * 0x0800) + (AND(y, 0xF8) * 10) + SHR(x, 1)
  6.   if AND(x, 1) == 0 then
  7.     return AND(SHR(readMemory(addr), 1), 0x55)
  8.   end
  9.   return AND(readMemory(addr), 0x55)
  10. end
  11.  
  12. function setPixel(x, y, c)
  13.   if x < 0 or x >= 160 or y < 0 or y >= 200 then
  14.     return
  15.   end
  16.   local addr = 0xC000 + (AND(y, 7) * 0x0800) + (AND(y, 0xF8) * 10) + SHR(x, 1)
  17.   if AND(x, 1) == 0 then
  18.     writeMemory(addr, AND(readMemory(addr), 0x55) + AND(c + c, 0xAA))
  19.   else
  20.     writeMemory(addr, AND(readMemory(addr), 0xAA) + AND(c, 0x55))
  21.   end
  22. end
  23.  
  24. function floodFill(x, y, c0, c1)
  25.   c0 = AND(c0, 0x55)
  26.   if x < 0 or x >= 160 or y < 0 or y >= 200 or getPixel(x, y) ~= c0 then
  27.     return
  28.   end
  29.   local function floodFill_(x, y, c0, c1)
  30.     setPixel(x, y, c1)
  31.     if x < 159 and getPixel(x + 1, y) == c0 then
  32.       floodFill_(x + 1, y, c0, c1)
  33.     end
  34.     if y >= 1 and getPixel(x, y - 1) == c0 then
  35.       floodFill_(x, y - 1, c0, c1)
  36.     end
  37.     if x >= 1 and getPixel(x - 1, y) == c0 then
  38.       floodFill_(x - 1, y, c0, c1)
  39.     end
  40.     if y < 199 and getPixel(x, y + 1) == c0 then
  41.       floodFill_(x, y + 1, c0, c1)
  42.     end
  43.   end
  44.   floodFill_(x, y, c0, c1)
  45. end
  46.  
  47. floodFill(0, 0, 0x50, 0x11)
  48. floodFill(159, 199, 0x50, 0x11)
  49. floodFill(0, 100, 0x50, 0x11)
  50. floodFill(56, 12, 0x50, 0x11)
  51. floodFill(56, 28, 0x50, 0x11)
  52. floodFill(55, 66, 0x50, 0x11)
  53. floodFill(84, 76, 0x50, 0x11)
  54. floodFill(147, 81, 0x50, 0x11)
  55. floodFill(4, 196, 0x50, 0x11)
  56. floodFill(6, 155, 0x50, 0x11)
Title: Re: Nebulus
Post by: nyuzga on 2010.August.22. 19:14:26
Tényleg, Zozo! A harmadik szinten rögtön a legelején, hogyan lehet továbbjutni?

Vagy így. Lásd, demo.
Title: Re: Nebulus
Post by: Zozosoft on 2010.August.22. 19:19:03
Kéne már egy mobilos EP emu :-) most várhatok holnapig, hogy kipróbálhassam :-(
Title: Re: Nebulus
Post by: Lacika on 2010.August.22. 19:43:15
Vagy így. Lásd, demo.

Muhaha... Hány csalással?  :ds_icon_cheesygrin:
Sikerült továbbjutnom, de a negyedik szinten ismét elakadtam... (csalás nélkül)  :oops:
Title: Re: Nebulus
Post by: szipucsu on 2010.August.22. 22:29:19
Ez nagyon jó! Kevés olyan színes EP játék van, amikor játék közben még 128-as zene is szól.
A Nyuzga által teljesített szint után kicsit érdekes a sárga víz, de biztos az eredeti is ilyen.
Title: Re: Nebulus
Post by: Lacika on 2010.August.22. 22:33:52
A Nyuzga által teljesített szint után kicsit érdekes a sárga víz, de biztos az eredeti is ilyen.

No, azért a tűzpiros és a lila sem gyenge...  :ds_icon_cheesygrin:
Title: Re: Nebulus
Post by: szipucsu on 2010.August.22. 22:37:26
No, azért a tûzpiros és a lila sem gyenge...  :ds_icon_cheesygrin:
Arra nem figyeltem.
CPC-n úgy látszik, különféle színû vizek léteznek, mint a Total Eclipse-ben is láthattuk a kulacsban. :D
Paradicsomlé, narancsos Fanta, nemtudomilyen Fanta... a végén még megszomjazom. :D

Ötvözni kéne a Total Eclipse és a Nebulus játékot és úgy változna a kulacsban a víz színe, mint a tengerben. Ráadásul ha esetleg kifogyna a kulacsból, lehetne meríteni a tengerbõl. Igaz, az kicsit sós. SOS!
Title: Re: Nebulus
Post by: Zozosoft on 2010.August.24. 22:06:41
De ha a keretet sötétkékre cserélem, akkor talán érdemes lenne a hátteret is átszínezni ?
A Status sor papír színét is lehetne keret színre állítani?

Tetszik az átírat, most újra bele kell jönnöm a játékba :-)
Title: Re: Nebulus
Post by: IstvanV on 2010.August.26. 01:39:39
Új Nebulus verzió; nagyjából már kész van, de nem biztos, hogy hibátlan:
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]
  [attachurl=#]

Változások az előző teszt verzióhoz képest:
  - paletta probléma javítva (most csak 3 színt változtat a palettán, a negyediket a pixel byte-ok módosításával oldottam meg)
  - kisebb pixel konvertálási hibák javítása (lehet, hogy még maradt ilyen hiba :oops:)
  - turbós gépeken lassítás (csak akkor, ha a DAVE frekvenciája nagyobb a 4 MHz-es gépeknek megfelelőnél)
  - a státuszsor háttérszíne már betöltés közben is sötétkék
  - a betöltőképen a kék színek között valamivel nagyobb lett a kontraszt
A sérthetetlenség csalás továbbra sem hibátlan, néha érdekes hatása lehet (pl. a lifteknél).
Title: Re: Nebulus
Post by: szipucsu on 2010.August.26. 12:05:41
Új Nebulus verzió; nagyjából már kész van, de nem biztos, hogy hibátlan:

Szerintem már az elsõ verzió is csúcs volt a színtelen-zenétlen Spectrum verzióhoz képest.  :smt041
Title: Re: Nebulus
Post by: Lacika on 2010.August.26. 15:50:16
Tényleg nagyon szépen néz ki a program!
És a zene is nagyon feldobja a játékot!
Title: Re: Nebulus
Post by: IstvanV on 2010.August.26. 16:11:28
A második szinten a piros színkompozíció cseréje viszont megfontolandó...(Persze belátom, eredetileg is ilyen, végső soron maradjon).

A pályák színei a 8511h címtől kezdődően találhatók a memóriában, ha valaki esetleg kísérletezni szeretne a módosításukkal :) 8 különböző paletta van, mindegyik 4 byte, a legsötétebb színtől a legvilágosabbig. Ezek CPC színek, de a betöltőben 2 byte módosításával elérhető, hogy EP színeket lehessen megadni (az EXOS - nem a játék - 0. lap szegmensén a 068Eh címre kell FFh-t, 069Dh-ra pedig 00h-t írni). Figyelni kell arra, hogy a színek módosításánál a 2. lapon valóban a játék legyen (128K-s gépen általában az FAh szegmens), mert a betöltő kódjának a futása közben (amikor a 0. lapon az EXOS 0. lap van) más is lehet ott. A negyedik színt csak CPC formátumban lehet megadni, és csak olyan szín lehet, ami a 11 "fix" paletta szín között előfordul (a gyakorlatban a Spectrum "fényes" színeinek megfelelőeket van értelme használni, a kék és lila kivételével, amelyeket a fix paletta nem tartalmazza).
Title: Re: Nebulus
Post by: PiotrSoft on 2010.August.26. 17:34:00
Nekem tetszik!

Title: Re: Nebulus
Post by: IstvanV on 2010.August.26. 18:54:16
A pontszámkijelzésnél ritkán előfordulhat hibás szín. Nem tudom, érdemes-e csak ezért lecserélni, de itt a javítás (csak a módosított file-ok):
  [attachurl=#]
  [attachurl=#]

Az Esc/Enter billentyűket a játék szüneteltetésére és folytatására nem én építettem be (vagy az ep128.hu-n a 3 és 4 billentyűknél a megjegyzés, hogy a CPC verzióban is megvannak, ezekre is vonatkozik) ?
Title: Re: Nebulus
Post by: Lacika on 2010.August.26. 20:39:11
Ok, kicseréltem. A Disk Image-ekbe is bekerült soron kívül.  :ds_icon_cheesygrin:

A leírást, ha kijavítom, még egy kérdés:
A a turbó gépen mit csinál pontosan? Én hiába indítottam úgy, hogy 6 MHz-n ment a gép, gyorsult.
Title: Re: Nebulus
Post by: IstvanV on 2010.August.26. 20:59:00
A leírást, ha kijavítom, még egy kérdés:
A a turbó gépen mit csinál pontosan? Én hiába indítottam úgy, hogy 6 MHz-n ment a gép, gyorsult.

Ha csak a Z80-at állítottad 6 MHz-re (ez igazi gépen nem lehetséges), akkor nem működik a sebesség szabályozása, a DAVE-t is arányosan gyorsítani kell, pl. 6 MHz-es Z80-hoz 500000 helyett 750000 Hz-es audio frekvenciát beállítva. Akkor sem működik, ha csak játék közben lett turbós a konfiguráció: az órajel felismerése a program indításakor történik a betöltőképnél a Space lenyomása után.
Azért nincs mindig engedélyezve, mert 4 MHz-es gépen lassulást eredményezhetne, és a betöltő a DAVE frekvenciája alapján ismeri fel a turbós gépeket. De egyébként sem lesz pontosan olyan, mint 4 MHz-en, mert eredetileg a játék sebessége nem fix, hanem a kép bonyolultságától (sprite-ok száma, stb.) függ. Turbó módban 60 ms minimális időtartamra korlátozott a képváltás, ha a játék ennél lassabb, akkor 20 ms egész számú többszöröseivel lassul.
Title: Re: Nebulus
Post by: Lacika on 2010.August.26. 21:10:31
Ha csak a Z80-at állítottad 6 MHz-re (ez igazi gépen nem lehetséges),

Az emulátor következő verziójában legyen egy turbó gomb (ami állítja a szükséges frekvenciákat)? Elég, ha kétállású 4/6 Mhz-s.
Légyszi, légyszi, légyszi...  :oops:
Title: Re: Nebulus
Post by: IstvanV on 2010.August.26. 21:26:52
Az emulátor következő verziójában legyen egy turbó gomb (ami állítja a szükséges frekvenciákat)? Elég, ha kétállású 4/6 Mhz-s.
Légyszi, légyszi, légyszi...  :oops:

Ilyen tulajdonképpen már most is van: a menüben menteni lehet két sebesség (órajelek és emuláció %) konfigurációt, amelyek aztán a PageUp és PageDown billentyűkkel betölthetőek.
Title: Re: Nebulus
Post by: Lacika on 2010.August.26. 22:11:37
Ilyen tulajdonképpen már most is van: a menüben menteni lehet két sebesség (órajelek és emuláció %) konfigurációt, amelyek aztán a PageUp és PageDown billentyűkkel betölthetőek.

Ah, köszönöm, így már működik.
Title: Re: Nebulus
Post by: Lacika on 2010.August.26. 22:23:02
Ilyen tulajdonképpen már most is van: a menüben menteni lehet két sebesség (órajelek és emuláció %) konfigurációt, amelyek aztán a PageUp és PageDown billentyűkkel betölthetőek.

Ettől függetlenül az "átlag halandó kedvéért" lehetne berakni az eszköztárba egy "turbó gombot", azok kedvéért, akik nem követik nyomon a fórumot.
Title: Re: Nebulus
Post by: Lacika on 2010.August.26. 22:28:32
6 Mhz-n indítva a játékot a keret fekete marad a címképernyőnél.
Title: Re: Nebulus
Post by: IstvanV on 2010.August.26. 23:13:58
Ettől függetlenül az "átlag halandó kedvéért" lehetne berakni az eszköztárba egy "turbó gombot", azok kedvéért, akik nem követik nyomon a fórumot.

A README file említi ezeket a billentyűket és a "save quick configuration" funkciót; igaz, lehet, hogy nem elég feltűnően és részletesen, vagy talán egyébként sem olvassa senki.

6 Mhz-n indítva a játékot a keret fekete marad a címképernyőnél.

A fekete keretszínt a tömörített program betöltő írja visszatéréskor a 81h portra; néha előfordulhat, hogy az EXOS megszakításnak nincs ideje visszaállítani a 27-es változóban beállított kék színt. Javítás:
  [attachurl=#]
  [attachurl=#]
Title: Re: Nebulus
Post by: SlashNet on 2021.March.13. 18:48:11
Something glitches/bugs with CPC port:
1. If we enter the last door of the tower when spinning red bubble on the screen - sprite keep visible while tower descends.
2. Congratulation screen and name input not visible. Game worked because after level end we need to press space (fire) three times: we choosing 3 letters in high scores unvisible screen.
Title: Re: Nebulus
Post by: SlashNet on 2021.July.18. 17:07:30
Something glitches/bugs with CPC port:

2. Congratulation screen and name input not visible. Game worked because after level end we need to press space (fire) three times: we choosing 3 letters in high scores unvisible screen.

As I see this bug came from CPC version: https://www.cpc-power.com/index.php?page=detail&num=1499 (bugs section)
I can't make hex-patching of EP version by myself because data of final version was packed.
Title: Re: Nebulus
Post by: geco on 2021.July.18. 20:33:01
And as i see i solved the problem in the TVC version without i knew about the problem :D :D
I will try to find out how István packed the file, and try to patch it and repack
Title: Re: Nebulus
Post by: geco on 2021.July.18. 22:56:57
no, i think this problem is in TVC version also.
Title: Re: Nebulus
Post by: geco on 2021.July.19. 21:31:30
It was harder than i expected, I spent too much time until i recognized that DTF decompress program creates a loader what was not included in the packed PRG data, and it decompress packed data into one PRG file, but originally it was 3 :D :D
My patching method is also included into the ZIP file, it contains original Program, and patched too.
Please check it
Title: Re: Nebulus
Post by: SlashNet on 2021.July.19. 23:09:37
Tried this version with unlimited time and lives - works well! :smt023
Title: Re: Nebulus
Post by: geco on 2021.July.20. 07:35:23
great, thx :-)