| |||
Views: 88,434,231 |
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search | 04-19-24 04:08 AM |
|
Guest: Register | Login |
0 users currently in ROM Hacking | 1 guest |
Main - ROM Hacking - Super mario hack U.N owen is her problem | New thread | New reply |
XTTX |
| ||
Flurry Level: 36 Posts: 160/251 EXP: 304125 Next: 3985 Since: 04-14-08 From: DTOWN Last post: 2384 days Last view: 59 days |
Had a question for you romhackers out there and would like to to see what the experts think.
This game only runs in Virtuanes for some reason and not even fceultra or nestopia? Does anyone with any experience know what the reason is? Ive tried multiple things for both and cant get it to work on either. Figured id ask here for some help or insight as im not an experienced rom hacker, just wonder what the issue is here. |
Superjustinbros |
| ||
Koopa Level: 24 Posts: 48/105 EXP: 74918 Next: 3207 Since: 01-09-11 From: United States Last post: 3191 days Last view: 2439 days |
I have the same issue.
This particular hack you mention features vertically-scrolling levels, which will prevent a SMB1 ROM from loading in certain emulators. Another SMB1 hack, Mario Evolution True 2, has the same feature, and doesn't work in NEStopia as every other level is a vertical level. |
Synthetekh |
| ||
Ninji Level: 35 Posts: 105/239 EXP: 261154 Next: 18782 Since: 08-15-10 From: New Mexico, USA Last post: 87 days Last view: 8 hours |
I don't know about this hack specifically, but some emulators allow games to use various things in their programming that would not work on real hardware.
One example I've seen like this is with the Genesis: Gens will not allow Addresses with odd values (like the actual console), but Kega will. So it's possible that it could just be how the author programmed some things in the game and not a flaw of the emulator. Anyone who knows some assembly and the hardware limitations of the NES should be able trace the code, starting around the time it's going to lock up and check if the game is doing anything that's not normally supported (not me heh, I'm still learning about Genesis and 32X hardware right now, and that's all I've touched on so far). |
XTTX |
| ||
Flurry Level: 36 Posts: 165/251 EXP: 304125 Next: 3985 Since: 04-14-08 From: DTOWN Last post: 2384 days Last view: 59 days |
Anyone up for the task of helping out? I dont know much about this but it seems like someone with some experience could maybe get in there and get this done rather quickly. I hope. LoL. |
Synthetekh |
| ||
Ninji Level: 35 Posts: 106/239 EXP: 261154 Next: 18782 Since: 08-15-10 From: New Mexico, USA Last post: 87 days Last view: 8 hours |
Is this the game?
http://www.youtube.com/watch?v=2lnLUoi4WkI&list=PL43A17A9A27A7F353&index=17 I may actually be able to locate the area where it crashes, even though I don't know much about the NES, I do know how to trace even if I don't understand much of the opcodes. Maybe I can at least get an idea of what's happening. Could you PM me the game or a link to it (I would figure that's ok to do here, since it's private, right?)? If someone with NES experience would care to do it instead, that would be great, but I'll do what I can for now. |
XTTX |
| ||
Flurry Level: 36 Posts: 166/251 EXP: 304125 Next: 3985 Since: 04-14-08 From: DTOWN Last post: 2384 days Last view: 59 days |
yep thats it. You have pm coming your way my friend. Its funny 3 of the best romhacks i have wont play on nestopia and this is one of them. Check your inbox and let me know if you got everything ok. |
Synthetekh |
| ||
Ninji Level: 35 Posts: 107/239 EXP: 261154 Next: 18782 Since: 08-15-10 From: New Mexico, USA Last post: 87 days Last view: 8 hours |
Well, so far I see that in FCEUX it's getting stuck in an infinite loop from Address $C06B - $C0C1. It hits an RTI opcode (Return from Interrupt), and then goes back to $C06B over and over, forever.
The game runs fine in Nes Ten, which also has a debugger, and after $C0C1, it goes to various addresses, some of which include: $9BE3, $AD1E, $DD01, $DFA1, or $E418, $E431. The game's code starts running at $8000. The first serious thing I see go wrong is at $8017 (LDA - Load Accumulator.. seems to be a Register labeled 'A' I think...), FCEUX loads 0xFF into the accumulator instead of 0x00 like Nes Ten does. This is because FCEUX is not setting the area of RAM for the CPU to 0x00 all the way through, like Nes Ten is doing. Instead it's filling it with 0x00000000FFFFFFFF. I tried writing 0x00 all across the CPU's area of the RAM manually before allowing it to run any instructions, but the game still locks up (ends up in the infinite loop still). Unfortunately this looks like there could be a lot of things causing the game to lock up, and might be a lot of work to fix. I could be wrong, but I'm done for now, I'll look into it more.. probably tomorrow. I don't know if the same exact thing is happening in Nestopia as FCEUX (since it doesn't seem to have a debugger), but I'd imagine it to be a similar issue. |
XTTX |
| ||
Flurry Level: 36 Posts: 168/251 EXP: 304125 Next: 3985 Since: 04-14-08 From: DTOWN Last post: 2384 days Last view: 59 days |
no problem man. Thanks for even taking the time to look into this. It is much appreciated no matter what you do or find out.
Its such a great hack, one of the few mario 1 hacks i have ever seen with the vertical scrolling in it. I always thought maybe that was one of the issues. Thanks for anything you do with this. |
Synthetekh |
| ||
Ninji Level: 35 Posts: 108/239 EXP: 261154 Next: 18782 Since: 08-15-10 From: New Mexico, USA Last post: 87 days Last view: 8 hours |
You're welcome
Yeah it's probably the way the Vertical Scrolling system was programmed, though it seems like various areas of the game have also been modified some. I hope I can fix this without it becoming anything huge. If it just needs certain things in memory to be initialized to certain values, that shouldn't be a huge issue, as I could probably add some code at the start of the game to jump to a new routine that'll fix that. I just hope their not using custom opcodes... seems that some emulators are supporting that. |
XTTX |
| ||
Flurry Level: 36 Posts: 169/251 EXP: 304125 Next: 3985 Since: 04-14-08 From: DTOWN Last post: 2384 days Last view: 59 days |
Thanks for all that you are doing man. Hopefully we will hear some good news soon about this and i hope its not too hard. This is such a great hack and was a hard one to find as well lol. |
Synthetekh |
| ||
Ninji Level: 35 Posts: 109/239 EXP: 261154 Next: 18782 Since: 08-15-10 From: New Mexico, USA Last post: 87 days Last view: 8 hours |
Ok, I think I see what's going on, but I don't necessarily know how to fix it. There are 6 Status Flags: N, V, D, I, Z, C. and 'I' seems to be the important one here. 'I' is the Interrupt Flag. Whenever 'I' is unset (the bit = 0), the PC (Program Counter = Current location that code is being executed/run from) jumps to $C06B in FCEux. In Nes Ten, this does not happen, the program just continues from where it's at regardless. I don't know what defines the location that the program goes back to when an Interrupt happens, but it apparently seems to be $C06B in this case... I guess. Although I would think it would interrupt when the Flag is set, not unset... I'm not sure what's going on here exactly, but I need to research more about how the actual hardware handles Interrupt Requests.
But I can say this, in FCEux, every time the PC is changed, like by a JMP (Jump ~ to specified location), JSR (Jump to Sub Routine), or RTS (Return from Sub Routine) for example, it goes to $C06B if the 'I' Flag is unset, and it's causing serious problems because it keeps making the PC go to $C06B at the wrong times. |
XTTX |
| ||
Flurry Level: 36 Posts: 171/251 EXP: 304125 Next: 3985 Since: 04-14-08 From: DTOWN Last post: 2384 days Last view: 59 days |
Any luck or progress with this Synthetekh? |
Synthetekh |
| ||
Ninji Level: 35 Posts: 120/239 EXP: 261154 Next: 18782 Since: 08-15-10 From: New Mexico, USA Last post: 87 days Last view: 8 hours |
Ehh whoops sorry lol, got distracted with my Wily Wars Editor. I'm not sure if I'm going to keep messing with this. It looks like it could get very involved. I'm not sure why status flags where being managed different between Emulators. If the custom code in that game is made to work with Emulators that work a certain way (whether correct or flawed compared to real hardware), it could mean reprogramming all or much of the custom code for this game .
I'm feeling a bit overwhelmed with things right now... I have a lot of projects to work on from multiple programming projects to various energy experiments, and other various things (such as figuring out how to make a good solar water distiller and actually building it, and also learning about aquaponics systems, for example). And to top it all off I'm having physical limitations (serious flexibility problems, which makes simple tasks much more difficult), and trying to find solutions to that. I'm sorry, I'd like to help more, and not just focus on my own interests as most people would usually do, but I just feel... tired, and like everything takes so much time. I hope to help with this some other time, but I don't think I can do any more for a while at least. |
XTTX |
| ||
Flurry Level: 36 Posts: 186/251 EXP: 304125 Next: 3985 Since: 04-14-08 From: DTOWN Last post: 2384 days Last view: 59 days |
I'd like to bump this up a bit and see if anyone can help figure this out still.
It seems this game has ALOT of issues running on pretty much every emulator. Looks like a pretty fun hack. |
Main - ROM Hacking - Super mario hack U.N owen is her problem | New thread | New reply |
© 2005-2023 Acmlm, blackhole89, Xkeeper et al. |
MySQL - queries: 102, rows: 135/136, time: 0.016 seconds. |