Hi:
I'm running MAME0148 on Vector Linux. Everything is built and working fine but I'm trying to understand some parts of the debugger and cheat system. I've been working with Mortal Kombat [mk] mainly and I have been successful in hacking a couple simple things like health and credits.
I have a general debugger question and a couple cheat-system questions. Sorry for noobishness.
[Debugger Question] I've attached a screenshot in regards to my debugger question. If you can't see the photo, the areas I'm referencing are:
----------- Debugger Window Frame #1: Registers area Debugger Window Frame #2: Instruction calls area Debugger Window Frame #3: Top-right frame right of Instruction calls area Debugger Window Frame #4: Debugger command input/output.. -----------
My understanding is that section #1 is the register list. Section #2 is the instruction call. Not entirely sure on what #3 is supposed to be? #4 is just the input/output window for the debugger.
In regards to areas #1-#3, is there a place to get a really good break-down / documentation for these? I'd like to get a thorough explanation of how the registers work (#1) and what their acronyms stand for. Area #2 seems straight forward, much like a debugger call stack but with instruction codes. I have no clue what I'm looking at when I see area #3. Looks like hex codes related to the instruction calls in area #2.
Any info would be greatly appreciated.
[Cheats Question] I would have posted these on Pugsy's forum but new accounts cannot be created right now:
http://www.mamecheat.co.uk/forums/ucp.php?mode=register (Creating a new account is currently not possible.)
Here's an example MK cheat portion that relates to my question (new cheat system - chars <> are changed to []):
Code:
[cheat desc="CPU always finishes with a Fatality"] [script state="run"] [action]maincpu.mw@00B5D08=0300[/action] [!-- FFDAE840 --] [/script] [/cheat]
Question 1: how does "FFDAE840" relate to "00B5D08"? I can set a breakpoint at "FFDAE840" and the debugger stops and the cheat works. However, I don't understand how instruction "FFDAE840" relates to "00B5D08". Is "00B5D08" a rom address (since this is a ROM cheat)?
Question 2: is there a way to force an instruction call using the cheat system? For example: I want to mimic an input press (such as a low-punch button), so I want to find the originating (very first) instruction call outside of mame and have the cheat system force that call when a condition occurs during a fight.
Thanks!
[ATTACHED IMAGE]
|