News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Having trouble with Punch-Out!! Gold Cart Hacking  (Read 2078 times)

Animation Guru

  • Jr. Member
  • **
  • Posts: 60
    • View Profile
Having trouble with Punch-Out!! Gold Cart Hacking
« on: August 23, 2016, 03:24:33 pm »
I am by no means a romhacker, but I do occasionally dabble in text-editing in games.  I've occasionally been able to fix a typo or two in my own games.

But check this one out.  I can't fix this one in the Punch-Out!! Gold Cartridge.  If I try, it corrupts the rom file, and the game won't load.



"TRAINNER"  There's only one "N" in this word.

And yes, no matter what I do, the game won't load after I fix it.  I've tried all sorts of fixes, and none of them work.  Even if I just change one letter to a different letter, it makes the game crash.

Oddly enough, if I change it back to the way it was, the game loads again.  I've never seen anything like this.

Now, why would I want to fix a typo in the Punch-Out!! gold cartridge when there's a perfectly good Mike Tyson version readily available?  Well, I like having a version of the game I can beat.

Disch

  • Hero Member
  • *****
  • Posts: 2814
  • NES Junkie
    • View Profile
Re: Having trouble with Punch-Out!! Gold Cart Hacking
« Reply #1 on: August 23, 2016, 03:56:46 pm »
Sounds like a checksum.  The game might be running over itself ROM and making sure all the data is what it expects, and if it fails the check it intentionally crashes.  This was an anti-piracy measure implemented in games back in the day.

I'd be willing to look into it if you want to tell me where the text is that you changed.  (What offset)

Animation Guru

  • Jr. Member
  • **
  • Posts: 60
    • View Profile
Re: Having trouble with Punch-Out!! Gold Cart Hacking
« Reply #2 on: August 24, 2016, 09:36:11 pm »
Oh, sorry.  I guess I didn't have reply notices turned on.  Didn't mean to leave you hanging.

I believe what you're looking for is 0x015190.

Disch

  • Hero Member
  • *****
  • Posts: 2814
  • NES Junkie
    • View Profile
Re: Having trouble with Punch-Out!! Gold Cart Hacking
« Reply #3 on: August 24, 2016, 10:11:21 pm »
Doesn't appear to be a checksum.

First test... I successfully changed it to "TRAINOER" by changing 0x151A2 from 18 to 19.

2nd test, I successfully fixed the spelling error with below changes:





The 'FE xx' value appears to be how it indents.  So I changed it from 'FE 06' to 'FE 07' to push it 1 tile to the right, to center the text.
Then replaced the last few letters of "TRAINNER" with "TRAINER_"


Not sure what you did to get this game to crash, but it doesn't appear to be related to the text.  Unless you REALLY screwed something up.




EDIT:

It just hit me.... what emulator are you running this game in?

If you're using NEStopia, it's possible NEStopia is relying on the CRC to figure out which hardware to emulate.. so any change might make it fall back to using the iNES header.

But the header should be fine...  mapper 9 doesn't really leave a lot of wiggle-room... Punch Out (all versions) is the only game that used it.



EDIT 2:

Or did you... cut the file size?  Like actually delete a byte and shift everything after it over by one?  Because yeah that will bork it bigtime.

dougeff

  • Sr. Member
  • ****
  • Posts: 358
    • View Profile
Re: Having trouble with Punch-Out!! Gold Cart Hacking
« Reply #4 on: August 24, 2016, 10:15:21 pm »
My guess is that he DELETED a byte, thus shifting the following bytes left one, misaligning everything by one.

Also, you can probably beat my hack of the game, in which Mike Tyson is significantly easier.
nesdoug.com -- blog/tutorial on programming for the NES

Disch

  • Hero Member
  • *****
  • Posts: 2814
  • NES Junkie
    • View Profile
Re: Having trouble with Punch-Out!! Gold Cart Hacking
« Reply #5 on: August 24, 2016, 10:16:32 pm »
Hah, I just thought of that in my edit

Animation Guru

  • Jr. Member
  • **
  • Posts: 60
    • View Profile
Re: Having trouble with Punch-Out!! Gold Cart Hacking
« Reply #6 on: August 24, 2016, 10:25:44 pm »
I'm using FCEUX, same version as yourself.

No, I didn't delete the byte.  I tried to replace one of the letters with a blank space and shift everything down, but my attempt at a fix wasn't the same as yours, so maybe I was doing something else wrong.

In any event, it's fixed!  Thank you.

I'll also give that easy patch a try.

KingMike

  • Forum Moderator
  • Hero Member
  • *****
  • Posts: 7067
  • *sigh* A changed avatar. Big deal.
    • View Profile
Re: Having trouble with Punch-Out!! Gold Cart Hacking
« Reply #7 on: August 25, 2016, 01:54:04 am »
Maybe if he didn't change that indent value, it might crash if it isn't printing the total number of characters (assuming "indent" is a repeated number of spaces) it was expecting?
"My watch says 30 chickens" Google, 2018