Jocuri multi-nivel convertite pentru HC cu disc

33 views
Skip to first unread message

George Chirtoacă

unread,
Sep 12, 2023, 4:41:36 AM9/12/23
to RomanianHomeComputer
Salut,

Am convertit cateva jocuri multi-nivel pentru a functiona pe HC cu disc. 
Procesul de conversie e open source si consta intr-un script care
- extragele blocurile din TAP/TZX original
- asambleaza codul de incarcare nivele de pe disc HC din sursa ASM
- face patch la binarul original cu rutina de incarcare pentru HC
- compileaza loader basic din fisier sursa 
- pune toate fisierele intr-o imagine de discheta DSK.

Exista in loader-ul Basic optiuni de cheat (vieti, timp, energie, etc).
Rutina de incarcare nivele e facuta de Rares Atodiresei. Am adus o mica imbunatatire, sa poate functiona si cu discul B:, adica se prinde care e discul curent si incarca de acolo nivelele.

Jocurile pana cum sunt:
- Target: Renegade
- Robocop
- Night Breed
- Batman - The Movie

Mircea Teletin

unread,
Sep 12, 2023, 6:28:04 AM9/12/23
to romanianho...@googlegroups.com
A fost putina treaba sa se ajunga la stadiul acesta de automatizare.... foarte interesant!
Avand in vedere "trucul" cu discul B... o sa incerc cu siguranta cu gotek-ul meu embedded in HC2000 :-)

--
Ați primit acest mesaj deoarece sunteți abonat(ă) la grupul „RomanianHomeComputer” din Grupuri Google.
Pentru a vă dezabona de la acest grup și pentru a nu mai primi e-mailuri de la acesta, trimiteți un e-mail la adresa romanianhomecomp...@googlegroups.com.
Pentru a vizualiza această discuție pe web, accesați https://groups.google.com/d/msgid/romanianhomecomputer/094c4484-6869-48ba-8ce6-4b857998f35bn%40googlegroups.com.

George Chirtoaca

unread,
Sep 12, 2023, 7:23:28 AM9/12/23
to romanianho...@googlegroups.com
Da, a fost destula treaba:
- mult debugging cu Spectaculator sa ma prind unde e rutina de
incarcare nivele de pe caseta
- adaugat la HCDisk functinalitati de compilare BASIC (cod
imprumutat), citire TAP/TZX, patch binare, scriere sistem de fisiere
HC Basic in DSK, etc
- testare incarcare nivele in joc, eventual folosind cheat-uri.
La unele jocuri e mai greu de facut reverse engineering. De exemplu Batman
- are cod amestecat pentru incarcare nivele, afisare mesaje, text
mesaje, setare rutina intreruperi in functie de numarul nivelului
incarcat, copiere bitmap-uri, etc
- are cod duplicat de incarcare, trebuie patch-uit in 2 locuri,
- face mutare bucati de cod in memorie, deci patch-ul trebuie sa tina
cont de asta
- face incarcare bloc principal la adresa mica, care suprascrie Basic,
deci trebuie incarcat din Basic la alta adresa si apoi mutat inainte
de executie, etc.
Genul asta de jocuri multi-nivel erau sparte pe vremuri destul de
rudimentar, si nu merg pe toate modelele de HC. Unele erau facute doar
din snapshot-uri, unul pe nivel.

Poate parea ciudata "scobeala" asta prin cod assembler antic, dar
cumva, mi se pare o provocare.

În mar., 12 sept. 2023 la 13:28, Mircea Teletin
<mircea....@gmail.com> a scris:
> Pentru a vizualiza această discuție pe web, accesați https://groups.google.com/d/msgid/romanianhomecomputer/CACFCRKOOdajqOvMA13zEthGNcHyE%2BmCr3NHZrPQVR6xr34V_GQ%40mail.gmail.com.

Adrian-Iulian Mitrofan-Bitca

unread,
Sep 12, 2023, 8:59:00 AM9/12/23
to romanianho...@googlegroups.com
Ai avut ceva de lucru...
Mă bucur că nu sunt singurul care-și bate capul cu de astea.
În lipsa casetelor originale din partea autorilor (pe care i-am contactat), fac reverse engineering la câteva dump-uri de memorie format .z80 și le transform în format TAP/TZX.
Spor să ai!




--
Mitrofan-Bitca Adrian-Iulian

God is in each one of us. So that's why we have the power to create.
Reply all
Reply to author
Forward
0 new messages