This way of hex editing is deprecated.
Use patches for hex editing from now on.
For this tutorial you will need:
A hex editor (I will be using HxD)
Time
What is hex?
Hex is short for hexadecimal. It is the number system for all computing, and consists of letters AND numbers. It works like this:
1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,10,11,12,13,14,15,16,17,18,19,1A,1B,etc.
As you can see there are letters between 9 and 10. So 10 in the normal number system (decimal) is A in hex. 11 is B and, 16 is 10 in hex because it's the 16th number in the list. If this is confusing just use windows calculator. Just type in a number then switch to hex to see what it is in hex.
HxD
First open your rom in HxD, and you should see something like this:
Don't worry about all the weird symbols on the right, we won't need them. All we need to worry about are the numbers in the middle, and on the left. The numbers on the left are called offsets. They are just there to tell you where you are in the rom. There is also a row of numbers by 'Offset (h)' at the top, that is where you are in that row of numbers. HxD also tells you which offset you are at, at the bottom of the window.
Hex Editing in SMW
Hex edits are pretty simple, all you have to do is go to SMWC's ROM Map, and look for something to change. Just hit ctrl+f and search for what you want. For example, lets say you wanted to disable the lives exchanger. Well you can hit ctrl+f, search for "Lives Exchanger", and you would find something like this:
That is what we want. Now to change that all we need to do is look at the numbers on the left in that entry (048D or 48D in this case, the zero isn't necessary), go to HxD, hit ctrl+g, and type in:
It should take you to this:
Thats what we change. Now if you look back here it says:
So go back to HxD and just type in just that (80 06). There is no need to backspace or anything, just type over it. Save it, and try it out, and you should have made a successful hex edit.
Thats pretty much it!
Use patches for hex editing from now on.
For this tutorial you will need:
A hex editor (I will be using HxD)
Time
What is hex?
Hex is short for hexadecimal. It is the number system for all computing, and consists of letters AND numbers. It works like this:
1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,10,11,12,13,14,15,16,17,18,19,1A,1B,etc.
As you can see there are letters between 9 and 10. So 10 in the normal number system (decimal) is A in hex. 11 is B and, 16 is 10 in hex because it's the 16th number in the list. If this is confusing just use windows calculator. Just type in a number then switch to hex to see what it is in hex.
HxD
First open your rom in HxD, and you should see something like this:
Don't worry about all the weird symbols on the right, we won't need them. All we need to worry about are the numbers in the middle, and on the left. The numbers on the left are called offsets. They are just there to tell you where you are in the rom. There is also a row of numbers by 'Offset (h)' at the top, that is where you are in that row of numbers. HxD also tells you which offset you are at, at the bottom of the window.
Hex Editing in SMW
Hex edits are pretty simple, all you have to do is go to SMWC's ROM Map, and look for something to change. Just hit ctrl+f and search for what you want. For example, lets say you wanted to disable the lives exchanger. Well you can hit ctrl+f, search for "Lives Exchanger", and you would find something like this:
Originally posted by Rom Map
048D $04:828D 2 bytes ASM Change to EA EA to enable "Lives Exchanger" function in 1 Player Game (by pressing L or R on map screen)
Change to 80 06 to disable "Lives Exchanger" function entirely
048D $04:828D 2 bytes ASM Change to EA EA to enable "Lives Exchanger" function in 1 Player Game (by pressing L or R on map screen)
Change to 80 06 to disable "Lives Exchanger" function entirely
That is what we want. Now to change that all we need to do is look at the numbers on the left in that entry (048D or 48D in this case, the zero isn't necessary), go to HxD, hit ctrl+g, and type in:
Originally posted by what you type in
048D
It should take you to this:
Originally posted by HxD
0C 42
Thats what we change. Now if you look back here it says:
Originally posted by Rom Map
Change to 80 06 to disable "Lives Exchanger" function entirely
So go back to HxD and just type in just that (80 06). There is no need to backspace or anything, just type over it. Save it, and try it out, and you should have made a successful hex edit.
Thats pretty much it!