Welcome, Guest. Please login or register.


Author Topic: Tegyük rendbe az EP programokat! (Read 292711 times)

Offline Pgyuri

  • EP fan
  • *
  • Posts: 156
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 88.0 Firefox 88.0
    • View Profile
Re: Tegyük rendbe az EP programokat!
« Reply #915 on: 2022.July.12. 20:38:58 »
Megvan, most már csak azt kellene megoldani, hogy ne csak Multiface-val lehessen bevinni a POKE értékeket, de mivel sajnos egyedi betöltője van Spectrumon, így ez elég bonyolult :(  Még töprengek egy kört.

Offline geco

  • EP addict
  • *
  • Posts: 6713
  • Country: hu
    • Támogató Támogató
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 103.0.0.0 Chrome 103.0.0.0
    • View Profile
Re: Tegyük rendbe az EP programokat!
« Reply #916 on: 2022.July.12. 21:02:53 »
Ez gyors volt :-)
Gratula a hiba javitashoz :-)
A betoltobe nem lehet betenni a pecselo kodot a betoltes utanra ?

Offline geco

  • EP addict
  • *
  • Posts: 6713
  • Country: hu
    • Támogató Támogató
  • OS:
  • Windows 10+ Windows 10+
  • Browser:
  • Firefox 102.0 Firefox 102.0
    • View Profile
Re: Tegyük rendbe az EP programokat!
« Reply #917 on: 2022.July.13. 10:19:31 »
Úgy látom a tapir1.0.zip-val ki lehetne törölni a 302 bájtos betöltőt, és a helyére betenni a módosított betöltőt, ami tartalmazza a főprogram betöltése után a pöcsölő kódot.

Offline Pgyuri

  • EP fan
  • *
  • Posts: 156
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 88.0 Firefox 88.0
    • View Profile
Re: Tegyük rendbe az EP programokat!
« Reply #918 on: 2022.July.13. 16:17:51 »
Üdv,

Megérte még egy kis időt rászánni a dologra tesztelés céljából, mert végülis 12 byte lett a megoldás. Sajnos ZX Spectrum és Juggernaut kazetta tulajdonosok számára nem tudtam megoldást kidolgozni, mivel a gyári betöltő rutin a teljes memóriát tölti tele, ami így nem ad lehetőséget egyszerű POKE-olásra.

Mivel a térkép generálás hibája nem alapvető, játékot akadályozó tényező, így valószínűleg senki nem fog javított változatot készíteni, mert ha hibás zsákutcás térképes kap, egyszerűen kilép a menetből és újrakezdi a játékot, ami várhatóan már nem fog ismételten hibát véteni (bár néha előfordul).

Nem maradt más értelme a kutakodásnak, mint a működés megértése, az öröm és ha már megvan, akkor a javítás, ami inkább programozóknak szól, mint játékosoknak.

Tehát kell egy Multiface (vagy emulátor) és be kell tölteni a játékot. A menüben állva az alábbi címektől kell felülírni a  memóriát a következő értékekkel:

$64AC  $7C, $CD, $E0, $89
$89E0  $FE, $03, $D0, $E1, $E1, $C3, $E4, $63

Ezzel a hiba elhárítva, mehet a játék!

Még egy pici magyarázat a térkép generáláshoz:

A nemlétező zsákutca hiba bárhol előfordulhat, akár a térkép közepén is, bár ennek kicsi az esélye az (ál)véletlenszámok miatt.

Az üres térképre első lépésben "felszórt" elemek olyanok, amelyek kötelezőek a játékhoz, azaz például a kiindulási pont, a benzinkút, az árufelvevő helyek, a szerelőüzem, stb.

Az összekötő utak kitöltése "tehetetlen" a nem megrajzolt zsákutcákkal, neki azokat oda kell tennie. A javítás annyit csinál mindössze, hogy ha egy ilyen elemet kell letennie a térképre, azonnal újrakezdi a térkép generálását, így elhárítja a hiba lehetőségét. Előfordulhat, hogy kétszer is neki kell futnia a térkép megtervezésének, de végül mindig sikerül egy jót készítenie.

Érdekesség, hogy a mini térképhez minden útvonal elem meg van rajzolva, ezért is nem vette észre a programozó, hogy hiba is előállhat. Ebből következik, hogy ezt a részt írta-rajzolta meg először, majd aztán kezdett bíbelődni a térkép tervezővel. Tény és való, hogy szabad memória szinte nincs - jó, azért akad még majdnem 100 byte - de nem ez befolyásolta a meg nem rajzolt zsákutcákat.

További furcsasága a játéknak, hogy ha a füvön átgázolva a térképről kimegyünk, akkor az a pályaelem ismétlődik meg újra és újra. Itt felmerült a gondolat, hogy a nemlétező zsákutca helyére utat teszek, ami a semmibe vezet, de ez nem lett volna méltó megoldás. Jobb a hibátlan térkép.

Ezzel véget ért ez a feladat. Nincs értelme javítani a játékot, mert így is tökéletesen élvezhető.

Pgyuri

Offline geco

  • EP addict
  • *
  • Posts: 6713
  • Country: hu
    • Támogató Támogató
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 103.0.0.0 Chrome 103.0.0.0
    • View Profile
Re: Tegyük rendbe az EP programokat!
« Reply #919 on: 2022.July.13. 20:14:45 »
Lehet mas verziot toltottem le a WOS-rol, elmeletileg az eredetit, elmeletikeg a fokod betoltese utan a patcheles megejtheto lenne, mert marad eleg ures hely erre a celra, igaz az eredeti kazetta tulajokon ez nem segit, de szerintem a tzx javitasa kivitelezheto lenne.
Gratula a javitashoz :-) , es koszonjuk szepen a reszletes leirast.

Online Zozosoft

  • EP addict
  • *
  • Posts: 14299
  • Country: hu
  • OS:
  • Windows 10+ Windows 10+
  • Browser:
  • Firefox 102.0 Firefox 102.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Tegyük rendbe az EP programokat!
« Reply #920 on: 2022.July.13. 21:05:08 »
Bepókolt verzió:

Offline geco

  • EP addict
  • *
  • Posts: 6713
  • Country: hu
    • Támogató Támogató
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 103.0.0.0 Chrome 103.0.0.0
    • View Profile
Re: Tegyük rendbe az EP programokat!
« Reply #921 on: 2022.July.13. 21:10:54 »
:smt041