how can we hack a .sna for infinite lives?

edited April 2011 in Games
recently, i were trying to edit .sna from Chuckie Egg on a hex editor, with the information from http://www.the-tipshop.co.uk/cgi-bin/info.pl?name=Chuckie%20Egg&publisher=A%60n%60F%20Software , but these are not working

what i'm trying to do is to edit the .sna with a hex editor (like khexedit), in the address (less 16368, and converted to hex address), but the results are not working

do someone knows how to do it? i'm struggling a lot on using the merge from the tip of the link above, since i'm using emulators (like Fuse or FBZX) i don't have yet any way to poke the ram, or manage the tape loading process

thanks,
p.
Post edited by nitrofurano on

Comments

  • edited April 2011
    In Fuse, enter the debugger. To enter POKE addr, val you type:
    set add, val
    

    Click continue when you're done.
  • edited April 2011
    There's an EDIT MEMORY option in the Spud debugger.
    I wanna tell you a story 'bout a woman I know...
  • edited April 2011
    And here's a tap file you can MERGE"", and replace the REM line with any POKE's.
    Chuckie Egg.tap
  • edited April 2011
    The commands given at The Tipshop:
    MERGE "": POKE 24501,195: GO TO 1
    POKE 42837,0: RANDOMIZE USR 42000
    work with the TZX from WoS, but not the TAP file, which gives an "Out of memory" error. The TZX would seem to be an alternative or patched version, as according to Andy Pennell's comments in Your Spectrum the original Chuckie Egg was un-mergeable.

    Note that the Fuse "set" command doesn't like the comma; "set 42837 0" will work.

    As regards editing the SNA, the header is 27 bytes, so the address to edit is 42837 - 16384 + 27 = 26480 ($6770) which contains 53 decimal ($35), which is a DEC (HL) command.
  • edited April 2011
    The TAP won't MERGE because its VARS area contains a variable with a supposed length of 54k, which causes MAKE-ROOM to fail with an "Out of memory" error. So presumably that version was saved with an invalid variable length as a hacking protection measure. Which raises the question as to why the "original release" TZX doesn't have this protection, or at least, which one is the original release. Given the information from the magazine articles, it would seem that both protected and unprotected versions were available during 1984 (as the earliest reference refers to it as being un-mergeable, but later references use MERGE to hack into it).
  • edited April 2011
    Thats a nice pdf of the document here. Bottom of the page where it says the never released document "HOW TO HACK on the ZX Spectrum" by Richard P. Swann.

    http://www.worldofspectrum.org/showwrap.cgi?page=index.html
  • edited April 2011
    what i'm trying to do is to edit the .sna with a hex editor (like khexedit), in the address (less 16368, and converted to hex address), but the results are not working

    You need to add 26 bytes long header.

    So, if you want to poke first screen byte of spectrum ram (16384) you need to edit address 27 in sna file. So it's not 16368, it's 16358 less.

    Eg. edit address = (Poke Adress- 16384) + 27
  • edited April 2011
    thanks to you all! :)
Sign In or Register to comment.