How to Hack Savestates
First off, you will need a hacking program. Hex Workshop is a nice hex editor I'd recommend. Once it is installed, begin the program and open a River City Ransom save state.
There will be a column of 8 digit numbers all the way to the left. You can not alter that column, it is just there to determine where you are in the code. Then there are 8 columns of 4 digit numbers (or, to be more exact, 16 columns of 2 digit numbers with spaces after every second set of 2 digit numbers). These are the values you will alter. Ignore the everything to the right of that.
If you're opening this program for the first time there may be a small pop up window towards the upper right of the screen. Close that and don't ever worry about it again. On the status bar (the bar at the bottom of the hex editor) you will see a thing which says offset: then an 8 digit number. That is the place in the code where your cursor is located. The hacking list is divided into two sections, places in the code and things to put into places in the code.
If you want to edit the first character's Defense, that little offset: place should read 1449, so go down 144 rows and across 9 columns so that it does.
There are two different ways to hack a save state in River City Ransom. The first is just putting in a number. You use this one for altering a character's statistics (Kick, Punch etc.) and money. For example, if you want the first character's punch stat to be 7, you would go to the offset in the code which controls his power, and change it to 7. Not tough but there is a catch. Save states are saved in hexidecimal (base 16), which is not the normal way of counting (Money in RCR is not stored in hexidecimal).
Normally the first number to the left of the decimal is the 1s column (note that 1 is 10^0), the one to the left of that is the 10s column (note that 10 is 10^1), the one to the left of that is the 100s column (note that 100 is 10^2), and the one to the left of that is the 1000s column (note that 1000 is 10^3). However, in hexidecimal the first column to the left of he decimal is the 1s column (note that 1 is 16^0), the one to the left of that is the 16s column (note that 16 is 16^1), the one to the left of that is the 256s column (note that 256 is 16^2), and the one to the left of that is the 4096 column (note that 4096 is 16^3). So in order to make 0 through 15 all fit into the 1s column they use letters in addition to numbers.
A 0 in decimal (regular numbers) is a 0 in hexidecimal, a 1 is a 1, a 2 is a 2... a 9 is a 9, but a 10 in decimal is an A in hexidecimal, an 11 is a B, a 12 is a C, a 13 is a D, a 14 is an E, and a 15 is a F. Keep that in mind when entering numbers.
Just as a quick reference, 99 in decimal is 63 in hexidecimal (9*10^1+9*10^0=6*16^1+3*16^0). If this is too complicated, Hex Workshop comes with a calculator to convert Hex Values (Your computer might have come installed with one too).
The second is just plugging in the value for whatever it represents. This is used for belongings. If you want Alex to have the Texas Boots in the first space in the belongings, go to the offset for his belongings (6A1) and enter the value for the Texas Boots (25).