Register | Login | |||||
Main
| Memberlist
| Active users
| ACS
| Commons
| Calendar
| Online users Ranks | FAQ | Color Chart | Photo album | IRC Chat |
| |
1 user currently in Rom Hacking: |
Acmlm's Board - I2 Archive - Rom Hacking - FCEUXD information | | | |
Pages: 1 2 3 | Add to favorites | "RSS" Feed | Next newer thread | Next older thread |
User | Post | ||
bbitmaster Koopa Level: 18 Posts: 5/103 EXP: 25264 For next: 4633 Since: 03-28-04 From: Knoxville, tTN Since last post: 12 days Last activity: 7 days |
| ||
As a many of you may know, for the past 9 or so months I've been working on a special version of fceud while adding many more features. I've never really said much about it publically outside of #rom-hacking, so I decided to finally post something about it. I've added a ton of features so far. To name a few things: it has a built in trace logger, something special which I call the code/data logger and it can let you directly edit the rom while it is running via a built in hex editor. Actually, that is such a quick overview of the features it doesn't nearly do it justice. After all, DahrkDaiz himself said that it was an invaluable tool in making most complex ASM hacks possible in MA. This thing will make hacking and reverse engineering nes roms much easier than it currently is Right now, I'd say the whole thing is about 60-70% complete, I have no idea when it will be finished. I'm going to be going to college full time in a couple weeks, so that may slow down progress even more. Anyway, feel free to ask any questions in this thread. I'll probably be posting screenshots later on as well so stay tuned. (edited by bbitmaster on 08-16-04 06:37 PM) |
|||
DahrkDaiz Red Super Koopa Acmlm's Mosts 2005 Best ROM Hacker Level: 45 Posts: 285/885 EXP: 643520 For next: 16644 Since: 03-15-04 From: K-Town Since last post: 4 hours Last activity: 4 hours |
| ||
bbit makes this seem so non-chalant but really, this utility will revolutionize the ASM hacking community for NES hackers. I was able to do more in a month to SMB3 (which you saw in the Coin Quest demo earlier) with this thing than 6 months spent on Mario Adventure. Once this thing is complete, you won't need any other utility for ASM hacking NES games. Not only that, I'm sure this would immensely help any budding ASM hacker as it's robust tools will aid in learning ASM, as well as hacking it since it provides so many conveniences. I won't go into detail on how this will be accomplish, this IS bbit's thread and utility, but take it from me, I've used this baby and still do, it's amazing with this guy has done to a previously simple utility. |
|||
KATW King Yoshi "If you stare at something long enough, it can be funny." Level: 86 Posts: 1653/3959 EXP: 6087979 For next: 54128 Since: 03-15-04 Since last post: 7 hours Last activity: 5 hours |
| ||
Wow... active hex editor... incredible. This may open the doors to hacking more NES roms that have been almost untouched. (Kirby Adventure anybody?) And if DharkDaiz says its good... Ugh, this board needs a drooling smiley SO BADLY!!! (edited by Kirby ATW on 08-16-04 07:41 PM) |
|||
windwaker Ball and Chain Trooper WHY ALL THE MAYONNAISE HATE Level: 61 Posts: 71/1797 EXP: 1860597 For next: 15999 Since: 03-15-04 Since last post: 4 days Last activity: 6 days |
| ||
Kirby adventure isn't untouched . Kefka and I found data for it, and it's been released. | |||
Googie Surarok Level: 39 Posts: 130/624 EXP: 380784 For next: 23987 Since: 03-15-04 From: Corona Queens New York Since last post: 3 hours Last activity: 3 hours |
| ||
I'll take your'e words for it Bbit master & Dahrk Daiz, I know this'll help me get on the ball with ASM hacking. I can't wait for the finished product. Thank you for the info. | |||
MathOnNapkins Math n' Hacks Level: 67 Posts: 381/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Damn. Now if only something like this existed for Snes hacking. At least I don't think anything of this magnitude exists. | |||
bbitmaster Koopa Level: 18 Posts: 6/103 EXP: 25264 For next: 4633 Since: 03-28-04 From: Knoxville, tTN Since last post: 12 days Last activity: 7 days |
| ||
As promised, here (edited by bbitmaster on 08-17-04 12:18 AM) |
|||
Kyoufu Kawa I'm not bad. I'm just drawn that way. Level: 70 Posts: 443/2481 EXP: 3008456 For next: 7355 Since: 03-19-04 From: Catgirl Central Since last post: 14 hours Last activity: 13 hours |
| ||
Originally posted by bbitmasterIs it a ROM with just the code? |
|||
MathOnNapkins Math n' Hacks Level: 67 Posts: 382/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
I would presume that it would be an ordered set of the code that was executed while the player was playing. On the other hand, something of that sort couldn't possibly be complete unless you did everything that was possible in the game in one sitting. | |||
windwaker Ball and Chain Trooper WHY ALL THE MAYONNAISE HATE Level: 61 Posts: 72/1797 EXP: 1860597 For next: 15999 Since: 03-15-04 Since last post: 4 days Last activity: 6 days |
| ||
Originally posted by Kawa-oneechanOriginally posted by bbitmasterIs it a ROM with just the code? This is what I thought, as well. |
|||
DahrkDaiz Red Super Koopa Acmlm's Mosts 2005 Best ROM Hacker Level: 45 Posts: 292/885 EXP: 643520 For next: 16644 Since: 03-15-04 From: K-Town Since last post: 4 hours Last activity: 4 hours |
| ||
Originally posted by MathOnNapkins That's the cool stuff about this, it doesn't have to be in 1 sitting. I think from what bbit has told me, you could have several people play it and combine the logs. You could easily make a demo for a hack by just playing certain parts of a game. You could also find data for this by doing everything in a game, like playing all levels except for 1 of them, then seeing what data wasn't logged to find it. It's very cool stuff. (edited by DahrkDaiz on 08-17-04 09:44 PM) |
|||
MathOnNapkins Math n' Hacks Level: 67 Posts: 383/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Even then you might not find certain hidden routines and data. I know of at least a couple routines in Zelda 3 that are never used but would be cool if they were used. The one i have in mind is the routine that checks the second player port for input. The data i have in mind are the unused enemies in Super Metroid. | |||
jman2050 Red Koopa Level: 19 Posts: 16/123 EXP: 33172 For next: 2605 Since: 03-21-04 Since last post: 10 days Last activity: 103 days |
| ||
*Looks at third screenshot* ! That's my away message at the bottom of the IRC window ! Seriously though, from what I've heard this tool can revolutionize the way NES roms are hacked. When people learn to use this to the fullest, I predict a breakout of new advancements in hacking. Now, get the source code to SNES9X and make the same tools for the SNES. Hacking Super Metroid using my current methods is very frustrating XD |
|||
bbitmaster Koopa Level: 18 Posts: 7/103 EXP: 25264 For next: 4633 Since: 03-28-04 From: Knoxville, tTN Since last post: 12 days Last activity: 7 days |
| ||
The Code/Data logger is a special feature I came up with. Actually, FCEUXD started one day when I had a brainstorm about how something like it could work. These other features are just extras I've put in along the way due to other brainstorms The basic Idea is this: if you know what bytes in the game are code or data along with a few other things (which will be logged also), you could make a nice disassembly of it. Disch actually used this same method to come up with that FF1 source code that was released a while back, he put together something like my code/data logger in his own emulator, and had a friend play through the game and send him the log. The result was that source code. He got the idea from me when I was talking about fceuxd. And yes I realize that you have to play through every part of the game, and something could be easily missed, but as Dahrkdaiz mentioned, these logs can be combined. Just have 5 or 6 people play through the game a few times and log everything they can, then combine them all and you've got yourself a pretty good log. When you think of the possibilities this would bring, of having the game in a fully editable source file, asm hacking would get a LOT easier. Of course, I have yet to start working on a disassembler which makes use of these logs, but hopefully that won't take too long once I get started. MathOnNapkins; Sure, its possible that there is unused stuff in the rom That will never be logged. But in such cases I could put an option in my disassembler to add comments saying something like "This section was never logged as being accessed." How hard would it be to go through such sections and manually figure out what they are? You'd have to do this anyway, but only now you'd know for sure it wasn't ever used. In fact, you'd have every unused portion in the rom sitting right there marked as unused! Who knows what all goodies you might find while looking through that. Besides that, the Code/Data logger allows for a few other slightly useful things, one which you saw in the screenshots in my earlier post where it can tell the trace logger to only log newly executed stuff (similar to a feature in evil peer's snes9x tracer).It'll also allow code and data to appear in different colors in the built in hex editor. Also, if anyone ever wants to make one, a rom corruptor that only corrupts data would certainly be possible. The save stripped ines rom is probably more of a novelty than anything else. Basically, it takes the original rom, plus the code/data log, and creates a new rom that only includes code and data that was executed. What's the point of this? Well take a look and see for yourself: Apply this patch to a Megaman 3 rom. http://bitmaster.panicus.org/misc/topman3.ips To create this, I took a few minutes and played through the topman stage in megaman 3 then saved a stripped nes rom. So, all that is playable in this rom is the topman stage. It's interesting to try some things that I never logged and see how the game reacts. For example: Try selecting the password option on the main menu, or try going to another stage, or try hitting the instant death spikes which are now harmless. All because the information behind that stuff is missing - It was never logged. A word of warning though, I never jumped off the first ladder in topman's stage, so if you do so the game will crash. Be Sure to Climb off of that ladder. You may find other odd glitches if you do things I never logged. If you look at this rom in a hex editor, you'll see it is almost entirely made up of 00's, only about 16% of the prg-rom is even present! Amazingly, the game runs fine in this state, because only what was logged as being accessed while I played is there. This may possibly be useful for hacking if someone wanted a rom that had everything stripped out of it except for what they were looking for, but it probably has more of a novelty use if someone wanted to release a small demo of their hack. I actually considered getting with Dahrkdaiz to create a fake smb3 beta rom for April Fools jman: I really have thought about attempting this for snes, I have my hands full right now, but it isn't out of the question for later, so just keep hoping. More to come later. (edited by bbitmaster on 08-18-04 10:03 AM) (edited by bbitmaster on 08-18-04 10:03 AM) |
|||
MathOnNapkins Math n' Hacks Level: 67 Posts: 384/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
I have been working on something like this for snes hacking, though I have been delayed over the summer since I've been away from my school computer. bbitmaster: I don't know if differentiating between code and data is sufficient. You should also add the category of a jump pointer, though I don't know if such stuff exists for NES asm. For instance, JMP ($000E) is an indirect jump to the address stored at $000E. If such an opcode were executed, it should record the value in $000E (in the snes case, the current program bank as well), and add it to a list of jump pointers. The hex annotator, as I have come to call it, will not run in real time. It will more of a markup tool for figuring out what is what in a rom file. But good luck on your future releases. |
|||
bbitmaster Koopa Level: 18 Posts: 8/103 EXP: 25264 For next: 4633 Since: 03-28-04 From: Knoxville, tTN Since last post: 12 days Last activity: 7 days |
| ||
heh, see that address label logger in the screenshot? I haven't started working on it yet, but it should do just that. I think I have it all figured out in my mind, I just need to code it though. | |||
MathOnNapkins Math n' Hacks Level: 67 Posts: 385/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Yeah. That's usually my biggest problem. I switched to Delphi and thought it would fix a lot of problems, but I've been having to learn quite a bit about the Delphi class structure to compensate. | |||
bbitmaster Koopa Level: 18 Posts: 9/103 EXP: 25264 For next: 4633 Since: 03-28-04 From: Knoxville, tTN Since last post: 12 days Last activity: 7 days |
| ||
Another feature is the built in hex editor, which among other things allows editing and freezing the ram. This shows the ram while playing Milon's Secret Castle http://bitmaster.panicus.org/images/FCEUXD4.png Of course Ram freezing will be cool also. When you right click on a ram location it turns blue, and as you can see it just adds it to the cheat console. http://bitmaster.panicus.org/images/FCEUXD5.png The hex editor's ability to edit the rom while it is running is such an awesome ability that I think I'll save showing it off for later. Right now, lets take a look at another method of editing the rom while it is running which parasyte put in. http://bitmaster.panicus.org/images/FCEUXD6.png Parasyte himself, the extremely talented coder behind fceud, put in this long awaited inline assembler, which was never quite finished in fceud. So if you don't like coding in machine language like me or dahrkdaiz then this thing is definitely for you. It will patch and save the rom for you as well. A Special thanks goes to parasyte for doing this. More later... |
|||
Gavin Fuzzy Rhinoceruses don't play games. They fucking charge your ass. Level: 43 Posts: 114/799 EXP: 551711 For next: 13335 Since: 03-15-04 From: IL, USA Since last post: 13 hours Last activity: 13 hours |
| ||
*Gavin just about sheds tears of happiness* i can't even imagine how long i've been waiting for an emu/debugger to have a non-fucking-shitty RAM viewer. Not to mention the 100+ other features you've been hard implimenting bbit. Really, just an amazing job |
|||
BMF98567 BLACK HAS BUILT A SILLY DICE-MAZE! GO! Current list of BURNING FURY >8( recipients: - Yiffy Kitten (x2) - Xkeeper Level: 53 Posts: 307/1261 EXP: 1094149 For next: 62970 Since: 03-15-04 From: Blobaria Special Move: Rising Meatloaf Backhand Combo Since last post: 21 hours Last activity: 1 hour |
| ||
Originally posted by MathOnNapkinsWhoa, whoa, whoa...where is this, exactly? Have you examined it at all? Most 1-player games that look for second controller input have (or did have) debugging features of some kind... |
Pages: 1 2 3 | Add to favorites | "RSS" Feed | Next newer thread | Next older thread |
Acmlm's Board - I2 Archive - Rom Hacking - FCEUXD information | | | |