It is currently Mon Dec 11, 2017 8:32 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 18 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: mario in some usual day
PostPosted: Tue Dec 09, 2014 3:01 pm 
Offline

Joined: Sat Sep 17, 2005 12:26 pm
Posts: 278
this is a really cool hack that i wont run on the power pak or real hardware, i asked mottzilla and he couldn't figure it out, anybody know what it could be?

http://www.romhacking.net/hacks/53/


Top
 Profile  
 
PostPosted: Tue Dec 09, 2014 3:05 pm 
Offline

Joined: Sat Sep 17, 2005 12:26 pm
Posts: 278
oh and i contacted the hacker and he could only remember this:

"I believe I changed the number of PRG and CHR rom banks in the iNes header to extend the game"


Top
 Profile  
 
PostPosted: Tue Dec 09, 2014 6:04 pm 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 5886
Location: Canada
Looks like it has a battery backed save option? Most emulators will initialize the save RAM consistently, but hardware might not. Does the hack detect and recover from corrupt save data?


Top
 Profile  
 
PostPosted: Wed Dec 10, 2014 1:51 am 
Offline
User avatar

Joined: Wed Dec 06, 2006 8:18 pm
Posts: 2806
That was one of the things I checked. Corrupting the save data with various bytes will crash the game when you try to load it. But it doesn't stop the game's menu coming up which has the option to erase/initialize save data. He said the game just black screens from the start.

I don't think the ROM expansion is an issue either. The hack behaves fine in Nestopia and other emulators so I'm not sure what might be the cause. It would be nice to find out. I also checked if any program bank registers were uninitialized but it appears they are initialized before non-fixed banks are accessed.

I didn't look into anything else yet.


Top
 Profile  
 
PostPosted: Wed Dec 10, 2014 1:32 pm 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 5886
Location: Canada
I'm noticing weird stuff w.r.t. the PPU address during startup. There is a fill loop at $FDE1 writing to $2007, and it is fine for the first few lines but (at least in FCEUX) the PPU address starts going haywire eventually and it's basically making writes to essentially random locations? That's a bit odd. Strangely, I am not picking up any writes to $2000 or $2001 to interfere with it, not really sure how this is occurring.

Edit: Nevermind, this is probably a bug in FCEUX's debugger. Doesn't occur with Old PPU mode selected, and can't duplicate behaviour in Nintendulator.


On the PowerPak I do at least see some coloured lines on the screen for one frame, indicating it manages to write the palette before it hangs on a black screen. (I see identical coloured lines in Nintendulator 5 frames after reset. On frame 6 the title screen should appear, but on the PowerPak it is just black.) I suppose this is also the first frame the MMC3 IRQ is first needed for the scroll split at the bottom of the screen, but I don't think it quite gets that far, since the curtains are never visible.


Last edited by rainwarrior on Sat Dec 27, 2014 11:52 pm, edited 1 time in total.

Top
 Profile  
 
PostPosted: Sat Dec 27, 2014 11:13 pm 
Offline
User avatar

Joined: Wed Oct 06, 2004 8:00 am
Posts: 130
Location: Northern New York
Oh no...not this one too...I could've sworn I patched this one as well.

It's the exact same issue too...I'm actually suprised nobody has actually brought it to my attention...I guess fixing one kinda paved the road for a workaround on the others anyways.

I'll see if I can whip up a patch for this one too, as my TSROM gone TKROM dev board doesn't like it unless I blank the WRAM to 00 myself (the AAA battery hack is still kicking apparently too...I figured the Cypress SRAM I was using would've drained it out by now...).

I already see the "Erase Save" code only does 0x7FFF-0x7D00. Just need to "study" it for a while and see what exactly of that is used...


Top
 Profile  
 
PostPosted: Mon Dec 29, 2014 2:11 pm 
Offline
User avatar

Joined: Wed Oct 06, 2004 8:00 am
Posts: 130
Location: Northern New York
Wow, this game was jam packed in the constant banks...

Get The Patches here.

This patch oughta do it. All that's required is to erase the save before the first play. I'd love to fix that too, but I don't believe I'll have enough space to patch that as well.

Also, the unoccupied palettes used at a later point in the game are not fixed and will show black when used (I currently have no plans to fix this).


Top
 Profile  
 
PostPosted: Mon Dec 29, 2014 2:50 pm 
Offline
User avatar

Joined: Wed Dec 06, 2006 8:18 pm
Posts: 2806
Just to be clear, what was the problem? It was an issue with save data?


Top
 Profile  
 
PostPosted: Tue Dec 30, 2014 11:39 am 
Offline
User avatar

Joined: Wed Oct 06, 2004 8:00 am
Posts: 130
Location: Northern New York
Yep. Mario In Some Usual Day, like Mario Adventure, isn't clearing any of it's WRAM. I didn't really find any significant space to put a proper clearing routine back in, but I did have enough bytes to have the reset code write 0x00 to the problem byte (CPU 0x7955 - WRAM 0x1955). If it's anything but 0x00 the game will essentialy freeze (music still appears to play though).


Top
 Profile  
 
PostPosted: Sun Jan 18, 2015 2:39 pm 
Offline

Joined: Sat Sep 17, 2005 12:26 pm
Posts: 278
nice, i didnt know you did this, ill try out this patch on real hardware soon. thanks!

AWal wrote:
Wow, this game was jam packed in the constant banks...

Get The Patches here.

This patch oughta do it. All that's required is to erase the save before the first play. I'd love to fix that too, but I don't believe I'll have enough space to patch that as well.

Also, the unoccupied palettes used at a later point in the game are not fixed and will show black when used (I currently have no plans to fix this).


Top
 Profile  
 
PostPosted: Sat Jan 24, 2015 12:29 am 
Offline

Joined: Sat Jun 03, 2006 9:17 pm
Posts: 303
How do you clear the save on real hardware?


Top
 Profile  
 
PostPosted: Sat Jan 24, 2015 6:57 pm 
Offline
User avatar

Joined: Sun Jan 27, 2013 7:30 pm
Posts: 61
Tormenter wrote:
How do you clear the save on real hardware?


One way to do it is to open the cartridge up and use a small cable to make a short between Vdd and Vss for a few seconds on the SRAM chip that hold the save data. You will need to know the pinout of that chip though.


Top
 Profile  
 
PostPosted: Sat Jan 24, 2015 7:06 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6503
Location: Seattle
Two problems ...
one, that shorts out the battery (no good for the battery) through a diode (no good for the diode).
two, there's no guarantee that the power-up pattern in RAM is all 0s.

But I don't have a better idea.


Top
 Profile  
 
PostPosted: Sat Jan 24, 2015 7:36 pm 
Offline
User avatar

Joined: Sun Jan 27, 2013 7:30 pm
Posts: 61
lidnariq wrote:
Two problems ...
one, that shorts out the battery (no good for the battery) through a diode (no good for the diode).
two, there's no guarantee that the power-up pattern in RAM is all 0s.

But I don't have a better idea.


I don't think I've seen a cart without some kind of current limiting resistor. Batteries could go bad and and become internally shorted and potentially ruin the console if there was no fail-safe.


Top
 Profile  
 
PostPosted: Sat Jan 24, 2015 7:39 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6503
Location: Seattle
Internally shorted batteries would be protected from the power supply rails by the diode.

That said, you're right, I forgot there's the current-limiting resistor there.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 18 posts ]  Go to page 1, 2  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: bazza and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group