Intermediate Event Editing Video Tutorials
06-13-2013, 11:36 AM
Okay so I'm a little confused. Sorry for the "noob" questions but when I'm looking to change a code in Winhex, and I get to the place to change it, what am I looking to make different? For example:
C3/34A9: A9 20 LDA #$20 (status is normal)
Obviously C334A9 brings me to the place I need to be. Doing a Hex search for A920 brings me to the right place. But what and where do I enter LDA #20?
C3/34A9: A9 20 LDA #$20 (status is normal)
Obviously C334A9 brings me to the place I need to be. Doing a Hex search for A920 brings me to the right place. But what and where do I enter LDA #20?
Experience is the benchmark to maturity.
Final Fantasy VI - Ted Woolsey Uncensored Edition:
http://www.romhacking.net/hacks/1386
Final Fantasy IV - Namingway Edition:
http://www.romhacking.net/hacks/2337
06-13-2013, 11:40 AM
If you're editing the raw hex of the ROM, you wouldn't use LDA #$20 anywhere. It's an assembly mnemonic, and you'd really only use it for documentation purposes or if you start writing actual assembly files, in which case your assembler would convert it to hex and insert it into the ROM.
In this case, A9 20 is the hex translation of LDA #$20.
In this case, A9 20 is the hex translation of LDA #$20.
06-13-2013, 12:12 PM
So when looking to change something, is the A9 20 what I'm changing?
Experience is the benchmark to maturity.
Final Fantasy VI - Ted Woolsey Uncensored Edition:
http://www.romhacking.net/hacks/1386
Final Fantasy IV - Namingway Edition:
http://www.romhacking.net/hacks/2337
06-13-2013, 12:21 PM
To maybe clarify a bit, A9 is hex for "LDA", the #$20 is the value that is being used by LDA, hence A9 20. 20 by itself is actually the command "JSR" which jumps code; but by issuing A9 first, it knows to look for another byte (sometimes two depending on the accumulator size) to use as a part of the command.
Also, if you are editing events, they don't use the processor code the same way your example in C3 does. All of the commands in the event area are actually subroutines defined in assembler code elsewhere to simplify the amount of hex used to make the events, its like it is its own programming language, with only a very small set of things it can do... all related to events. For instance, A9 in the event code actually calls a function that loads the title screen.
Happy Hacking.
Also, if you are editing events, they don't use the processor code the same way your example in C3 does. All of the commands in the event area are actually subroutines defined in assembler code elsewhere to simplify the amount of hex used to make the events, its like it is its own programming language, with only a very small set of things it can do... all related to events. For instance, A9 in the event code actually calls a function that loads the title screen.
Happy Hacking.
Let's Hack FF6 Stream: https://www.twitch.tv/b_run_
FFVI - Children of Vector: http://www.ff6hacking.com/forums/showthr...p?tid=2386
Monster AI Upgrade Patch: http://www.ff6hacking.com/forums/showthr...p?tid=2673
MMMMMagic 2.0: http://www.ff6hacking.com/forums/showthr...p?tid=3330
« Next Oldest | Next Newest »
Users browsing this thread: 1 Guest(s)