Banner
Views: 236,098,116
Time: 2013-05-20 10:17:51 PM
16 users online: Carld923, Daizo Dee Von, gerg357, ggamer77, JCE3000GT, o mariocool1999, Mogsiah, NES Boy, Pixels, Pokeymeister80, Ramidalv, Rextep, SilverDeoxys563, SomeGuy712x, supernova38, Yasuo - Guests: 34 - Bots: 11Users: 22,854 (1,291 active)
Latest: KennySouthPark
Tip: Before asking for help on the forums, make sure you've tried to figure out the problem on your own first.
Reverse Patches?
Forum Index - SMW Hacking - General SMW Hacking Help - Reverse Patches?
Pages: « 1 »
is there anyway to reverse a patch? Like unpatch the patch from the rom.
Last edited on 2010-02-25 04:14:55 PM by dubefest.
Originally posted by Nicol Bolas
What kind of patch was it? An IPS patch can be pretty tricky to undo. But xkas patches are relatively easy.

Xkas-based patches come in two forms: those that only modify the SMW source code/data, and those that modify the source/data as well as adding more information. If an xkas patch requires that you provide some free space, then you're talking about the latter kind.

It's easy to remove the effects of either kind. Simply change the bytes back into what it used to be. All.log is a great resource to find out what exactly was overwritten, as well as what it used to be.

Somewhere in the .asm file will be at least one line of the form:

org [ some number ]:

The "some number" is the byte address into the ROM of where the following source code should go. So load up the ROM in a hex editor, find that memory address, and insert the original values. Again, use all.log to find out what used to go there.

Things get more complicated when you're dealing with xkas patches that take freespace. Even with these, there will be at least one line like the above, where it directly changes a section of the SMW code. If you revert that part back to what it used to be, then it doesn't matter what was written elsewhere; that code will never be called.

Unfortunately, if they used the "RATS" tag in their code, as they should, then that chunk of memory will never be used. However, since you have the memory address of where you put it, since you had to write that address in to properly patch your ROM, you can easily enough simply write zeros into that space.


Try this.
Originally posted by Rabees
Originally posted by Nicol Bolas
What kind of patch was it? An IPS patch can be pretty tricky to undo. But xkas patches are relatively easy.

Xkas-based patches come in two forms: those that only modify the SMW source code/data, and those that modify the source/data as well as adding more information. If an xkas patch requires that you provide some free space, then you're talking about the latter kind.

It's easy to remove the effects of either kind. Simply change the bytes back into what it used to be. All.log is a great resource to find out what exactly was overwritten, as well as what it used to be.

Somewhere in the .asm file will be at least one line of the form:

org [ some number ]:

The "some number" is the byte address into the ROM of where the following source code should go. So load up the ROM in a hex editor, find that memory address, and insert the original values. Again, use all.log to find out what used to go there.

Things get more complicated when you're dealing with xkas patches that take freespace. Even with these, there will be at least one line like the above, where it directly changes a section of the SMW code. If you revert that part back to what it used to be, then it doesn't matter what was written elsewhere; that code will never be called.

Unfortunately, if they used the "RATS" tag in their code, as they should, then that chunk of memory will never be used. However, since you have the memory address of where you put it, since you had to write that address in to properly patch your ROM, you can easily enough simply write zeros into that space.


Try this.

try wut?
Originally posted by omegazeroINFI
try wut?

Try doing whats in the quote.


...Also, even though this is kind of backseat modding, its usually better to only quote the information you're responding to.
Last edited on 2010-02-25 06:57:40 PM by Thomas.
It was an Xkas patch, and i don't know how to hex edit or do ASM...
Originally posted by dubefest
i don't know how to hex edit or do ASM...

You don't need to, just replace the spot the patch wrote over with the original code. Copy n' paste.
Where do i find the ASM file? I need a Hex editor? WTF? I am totally confused
Last edited on 2010-02-25 08:25:37 PM by dubefest.
Originally posted by Nicol Bolas
So load up the ROM in a hex editor

Oops, didn't see that. Its pretty simple though.

1. Download this hex editor.

2. In the patch's asm file, find org [some number]. This is the address that the patch overwrote.

3. Open the rom in the hex editor.

4. Open a clean rom in the hex editor.

5. Find the address, and replace the values that the patch wrote with the values from the original Super Mario World.
OH CRAP!!!! It was an IPS file...Help? is there a way to un do the ips patch?
Originally posted by dubefest
OH CRAP!!!! It was an IPS file...Help? is there a way to un do the ips patch?

There is a way, but I don't know how and Nicol Bolas doesn't explain how to in his quote oddly.
There is a very simple way to do this: Revert to a backup made before patching. Really, you should always make one before applying any patch to your ROM.

If you haven't, well... let's just say I think this page might interest you.
Originally posted by yoshicookiezeus
There is a very simple way to do this: Revert to a backup made before patching. Really, you should always make one before applying any patch to your ROM.

If you haven't, well... let's just say I think this page might interest you.


Well I did make a backup but the patch worked on the rom so I edited everything...so I guess i'll port. Is there anyway to save the ExGFX in the game?
Don't you already have them all in the ExGraphics folder?
Originally posted by yoshicookiezeus
Don't you already have them all in the ExGraphics folder?

Nevermind, I already transferred everything.
Pages: « 1 »
Forum Index - SMW Hacking - General SMW Hacking Help - Reverse Patches?

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2013 - SMW Central
Legal Information - Link To Us


Total queries: 29

Menu