![]() ![]() What we'd like to do is step through the code for a bit but that involves escaping the loop. not what we're looking for, but basically adjacent. I think this one's actually a wait loop for the SPC to be ready, but it's essentially the same thing. you can kinda tell when you're in this type of thing by being in a pretty tight "loop" in the debugger and running the rom just leads you to the same address repeatedly (hundreds of times) It's very likely that the first thing you run into is going to be a data loader, loading SPC or sample data into the APU, and not at all the track information that you're looking for. ![]() you want to breakpoint when these are Written, so check that W box.Īnd then run your game. ![]() Go to Tools -> Breakpoint Editor, and let's set some breakpoints on the APU channels. Pretty cool, but how do we use it? It'll do basically nothing without breakpoints, so let's make one. if I were you, I'd start on a game that has a sound test mode, it makes this whole process much faster. Here's where basically all your research is done. Last edited by Cubear on Sun - 23:56 edited 3 times in total change the filenames in it, whatever you like.Ĭontinuing in a second post with using bsnes debugger to try to identify points of interest, and common things you'll see happening in just about any rom. Nothing you couldn't do yourself but feel free to use it. ![]() that's actually about it! I wrote a simple batch file that I put into my wip folder to patch a fresh rom for me every time that I change my code for faster testing. Makes everything much more readable when it comes time to actually write your patch.Īnd. SNES9x was so obtuse and difficult to use that I initially gave up entirely on my notions that this was even possible for me to do. The debugger is worlds better than the SNES9x debugger, when I first started I had no idea how to read ASM code, how to use a debugger, or anything like that. Okay after that is said, let's look at the "tools of the trade" that I have chosen to use. Install Qt 4.8 (get Brew and run brew install qt)Īs there is no configure step, make sure necessary Qt4/X11 packages are installed.Hi all, I'm a bit of a new hacker, started about two months ago, so I might actually be TOTALLY off base with some of my suggestions here and we'd all be well off to listen to the more experienced hackers when they come around to tell me that I'm wrong.Install a C++ toolchain ( Xcode is probably the easiest route).Install Qt 4.8.6 ( ) and make sure its bin directory is in your pathīuilding with the original MinGW used to be the preferred way to do it, but made building "out of the box" annoying for various reasons (including requiring outdated DirectX headers/libs and problems with some native Windows code) and is no longer supported.Similar addressing improvements for cheats.Automatic saving/loading breakpoints between sessions.More keyboard shortcuts for menus, etc.On-the-fly ROM saving and reloading from the memory editor for quick hacking and testing.Multiple emulation improvements backported from bsnes/higan (mostly via bsnes-classic).SPC output visualizer (keyboards & peak meters).SA-1 bus and BW-RAM viewing and (partial) usage logging.Cartridge ROM and RAM views in memory editor for mapper-agnostic analysis.Real-time code and data highlighting in memory editor, with fast searching for known code/data locations and unexplored regions.Improved handling of address mirroring for breakpoints (extends to the entire address space, not just RAM).Redesigned memory editor and breakpoint editor.Improved debugger UI with register editing."Step over" and "step out" buttons in debugger.Introduce some new features and improvements, mostly aimed at debugging. Bsnes-plus (or bsnes+) is a fork of bsnes (based on bsnes-classic) intended to ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |