Well, I'm trying to make some more SSBB infinite codes (since constant write is the only code type I know right now :P). I'm making a King Dedede throws infinite baddies code, and I know what address I want to write, but the P.O. (or B.A.?) is 81 instead of 80, with the address following that. I'm just now starting to learn about the base/pointer address, terminator, etc. Here's what I tried:
4A000000 80000000
142493A6 00000000
Doesn't work, does it have to do with the 14 at the beginning? I also tried replacing 800000000 with 81000000 but that also didn't work. As far as I know I don't need the terminator since the game isn't crashing, right? Can someone clarify this for me?
you might want to read through this a few times:
EDIT forgot the link >_>
http://www.usbgecko.com/codetypes.htm (http://www.usbgecko.com/codetypes.htm)
helped me out a LOT of times.
about your question, the syntax for a normal PO wrtie is:
4A000000 XXXXXXXX
14YYYYYY ZZZZZZZZ
XX = is your pointer (po)
YY = additional offset, if needed
zz = value to write (in hex ofcourse)
so let's say your pointer is 81FFFFFF
and yout want to write 405 (offset 00)
would be:
4A000000 81FFFFFF
14000000 00000405
E0000000 80008000
the last line is to reset the po and ba changes you made in your code
Quote from: Crashdance22 on December 12, 2008, 04:11:23 PM
As far as I know I don't need the terminator since the game isn't crashing, right? Can someone clarify this for me?
You need to use the terminator becuase you changed the po, if someone else uses the po his code doesn't work because he thought it was at 80000000 but you changed it so his code will probably crash the game.
The default value of ba and po is 80000000, you should not need to be setting that. If you have a 81XXXXXX address, you should use 05 or 15 to do the write (instead of 04 or 14), and you should not change ba or po.
Quote from: Crashdance22 on December 12, 2008, 04:11:23 PMAs far as I know I don't need the terminator since the game isn't crashing, right? Can someone clarify this for me?
http://wiird.l0nk.org/forum/index.php?topic=563.0 (http://wiird.l0nk.org/forum/index.php?topic=563.0)
Yes you need to terminate your codes with E0000000 80008000, if you change ba or po. Whether or not you see a crash without that line has nothing to do with whether you need to add it or not;
you should always have a terminator line if you change ba or po.
actually almost all codes that would actually get messed up set the po/ba themselves but you can't be sure enough
Ok then, thanks for the tips, it works now. :)
I'll remember this for the future.