It is currently Mon Oct 16, 2017 3:14 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 7 posts ] 
Author Message
PostPosted: Thu Jun 22, 2017 7:24 pm 
Offline

Joined: Mon Nov 10, 2008 3:09 pm
Posts: 429
There seems to be a bit of confusion in the community as to what the practical uses are for the third nametable supported by MMC5 (in EXRAM mode 0). The example mirroring setups using 3 nametables on the wiki (both on the "Mirroring" page and the MMC5 page) are frankly of dubious practicality. There was also a thread on romhacking.net a while back asking whether it was possible on hardware and/or emulators to use four-screen mirroring with MMC5, the thread creator evidently being under the impression that this would be far more useful.

Don't think of "3-screen mirroring", think of "vertical mirroring and one-screen mirroring at the same time, with all the advantages of both". MMC5's third nametable allows you to have unlimited 4-way scrolling with a status bar, no visible attribute clashes on any edge of the screen, and no need for complex raster IRQ voodoo ala Crystalis.

Here's how you do it: You put your playfield on the two built-in nametables, configured with vertical mirroring (MMC5 $5105 = $44) In your IRQ handler, switch to one-screen mirroring with the EXRAM nametable ($5105 = $AA), where your status bar resides. It's as simple as one-screen mirroring, but without the need for fine-grained playfield updates and without the unavoidable attribute clashes. Because your playfield is vertically mirrored the horizontal scroll seam can be well offscreen, and the vertical scroll seam can be hidden behind the status bar.

Moreover, since you're only using a small part of the EXRAM nametable for your status bar, you can even use the rest of EXRAM as work RAM, just as long as you don't need it while the status bar is being rendered. For example, assuming your status bar is at the bottom of the screen, you can put your music engine variables in EXRAM. Just flip the EXRAM mode to 2 at the start of your NMI music update routine and flip it back to 0 at the end.


Top
 Profile  
 
PostPosted: Thu Jun 22, 2017 11:37 pm 
Offline
User avatar

Joined: Fri Nov 12, 2004 2:49 pm
Posts: 7223
Location: Chexbres, VD, Switzerland
You're just stating the obvious in my opinion. Yes, the wiki mirroring/scrolling pages are awful, I did a poor attempt at reforming them to be a little less awful but Rainwarrior repeatedly refused my proposed reforms so I abandoned the matter.


Top
 Profile  
 
PostPosted: Fri Jun 23, 2017 12:25 am 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 5703
Location: Canada
I liked and approved of some of what you proposed, and disagreed with some of it, but I guess my disagreement with part of it may have dulled your interest in the rest? :(

The discussion is here, though, and more eyes and voices on it would probably be fruitful:
http://wiki.nesdev.com/w/index.php/Talk:Mirroring#Moving_the_bulk_of_scrolling_update_problems_to_scrolling_page


Top
 Profile  
 
PostPosted: Fri Jun 23, 2017 1:54 am 
Offline
User avatar

Joined: Fri Nov 12, 2004 2:49 pm
Posts: 7223
Location: Chexbres, VD, Switzerland
rainwarrior wrote:
The discussion is here, though, and more eyes and voices on it would probably be fruitful:
http://wiki.nesdev.com/w/index.php/Talk:Mirroring#Moving_the_bulk_of_scrolling_update_problems_to_scrolling_page

I agree, the fact we were apparently the only two interested in the matter was not really motivating either of us to work hard on this.

Quote:
but I guess my disagreement with part of it may have dulled your interest in the rest? :(

Partly yes, and the other part is that I was busy with more important things lately, and also the lack of general interest by other community members, so I stopped to care about the matter.


Top
 Profile  
 
PostPosted: Fri Jun 23, 2017 6:17 am 
Offline
User avatar

Joined: Fri Nov 19, 2004 7:35 pm
Posts: 3940
Castlevania 3 uses three screen mirroring for one level, when there's the rising water.
Yes, it could have been just as easily done on standard horizontal mirroring as well.

_________________
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!


Top
 Profile  
 
PostPosted: Fri Jun 23, 2017 8:02 am 
Offline
User avatar

Joined: Fri Nov 12, 2004 2:49 pm
Posts: 7223
Location: Chexbres, VD, Switzerland
Dwedit wrote:
Yes, it could have been just as easily done on standard horizontal mirroring as well.

At the price of very visible glitches on the screen's sides... At least they put the MMC5 extra functionality to some use when porting the game for the NES release, and I think they did a great job.


Top
 Profile  
 
PostPosted: Fri Jun 23, 2017 9:01 am 
Offline
Formerly WheelInventor

Joined: Thu Apr 14, 2016 2:55 am
Posts: 890
Location: Gothenburg, Sweden
The rising water effect amazed me when the game was new. I couldn't even begin to comprehend how they did that.

_________________
http://www.frankengraphics.com - personal NES blog


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: Google [Bot] and 7 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