Jump to content
NHL'94 Forums

How to: NHL 94' [SNES] ROM / RAM Hacking School - Finding RAM Values


McMarkis

Recommended Posts

Finding Ram Values


In this tutorial we will be searching for RAM values, like the ones used to identify how the CPU pulls the goalie. The Home and Away team goalies are stored in the emulators RAM, we will learn how to find those values in RAM by doing a simple search in the emulator.

Tools that you need:


  1. SNES debug emulator MESEN2
  2. NHL 94' rom in .sfc or .smc format

Setup emulator and launch the game:


  • Launch the emulator and load the rom ==>File ==>Open
  • (Optional, keyboard works fine) Setup your joystick under settings ==> Input ==> SNES ==> Port 1 Setup
  • Setup a Regular Season game and navigate to the Start Game screen

image.png

Launch the Memory Search:


Now were going to do a simple Memory Search to find the starting Home Goalie Ram value

  • Click Debug ==> Memory Search

image.png


image.png

  • #1 in the screen shot (Compare To) needs to be set to Previous Search Value
  • #2 in the screen shot (Operator) needs to be set to Equal
  • #3 in the screen shot will apply the Search filters to all the Work RAM memory, Go ahead and click the Apply Filter button.
  • Results: You can't tell right now, but the results have filtered out some of the RAM values that have changed, this is good.

Now we are going to change the Goalie to Racicot and perform another search, because we increased the goalie from the first Goalie - Roy to the second Goalie - Racicot, we want to search for RAM values that have increased (Greater than).

image.png

  • #4 in the screen shot (Compare To) needs to be set to Previous Search Value
  • #5 in the screen shot (Operator) needs to be set to Greater than
  • #6 in the screen shot will apply the Search filters to all the Work RAM memory, Go ahead and click the Apply Filter button.
  • #7 in the screen shot shows the results, we have filtered down a lot of values, this is good.

Now we are going to change the Goalie back to Roy and perform another search, because we decreased the goalie from the second Goalie - Racicot back to the first Goalie - Roy, we want to search for RAM values that have decreased (Less than).

image.png

  • #8 in the screen shot (Compare To) needs to be set to Previous Search Value
  • #9 in the screen shot (Operator) needs to be set to Less than
  • #10 in the screen shot will apply the Search filters to all the Work RAM memory, Go ahead and click the Apply Filter button.
  • #11 in the screen shot shows the results; wow, we have filtered down to 2 values. One of these is our Home teams Goalie RAM value. $126D or $17AA

One last trick here is to leave Roy as the starting goalie, making sure you haven't changed it from the last search, and start the game. We can apply another filter during game play for RAM values that haven't changed (Equal).

image.png

  • #12 in the screen shot (Compare To) needs to be set to Previous Search Value
  • #13 in the screen shot (Operator) needs to be set to Equal. 
  • #14 in the screen shot will apply the Search filters to the remaining Work RAM memory, Go ahead and click the Apply Filter button.
  • #15 in the screen shot shows the results. Only one value left $17AA, this is our Home teams Goalie RAM value.

Now you can see the value for $17AA change from 00 (Roy) to 01 (Racicot) or FF (No Goalie)

Homework:


  • Using the same steps above, see if you can find the Away teams RAM value. Just make sure you set your controller to the away team for this exercise.

image.png

Edited by McMarkis
  • Love 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...