It is currently Sun Nov 19, 2017 9:17 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 20 posts ]  Go to page Previous  1, 2
Author Message
PostPosted: Sat Sep 02, 2017 12:37 pm 
Offline

Joined: Sun Feb 07, 2016 6:16 pm
Posts: 299
Maybe I'm just confused but, mapper 22 is supposed to be VRC2a and according to the wiki, "VRC2 supports only vertical or horizontal mirroring. Bit 1 is ignored.". This is what I have implemented, but the mapper 22 test complains about 1-screen mirroring not being available? And your FCEUX screenshot says mapper 22 = VRC4?


Top
 Profile  
 
PostPosted: Sat Sep 02, 2017 12:41 pm 
Offline

Joined: Thu May 19, 2005 11:30 am
Posts: 311
Attached is my modification of Nintendulator's Mapper DLL source file that passes all of AWJ's submapper identification tests. The only complaint the ROM still has is that the pseudo-scanline IRQ is "late". Edit: Error fixed, thanks to AWJ.
Sour wrote:
This is what I have implemented, but the mapper 22 test complains about 1-screen mirroring not being available?
I noticed when I tested with my test ROMs that Mesen seems to emulate the IRQ even with VRC2 submappers. So if you emulate the IRQ, the test ROM may think it's dealing with a VRC4 and hence complain about the missing one-screen mirroring.


Attachments:
vrc2and4.cpp [7.14 KiB]
Downloaded 17 times


Last edited by NewRisingSun on Sun Sep 03, 2017 1:33 am, edited 2 times in total.
Top
 Profile  
 
PostPosted: Sat Sep 02, 2017 12:56 pm 
Offline

Joined: Sun Feb 07, 2016 6:16 pm
Posts: 299
NewRisingSun wrote:
I noticed when I tested with my test ROMs that Mesen seems to emulate the IRQ even with VRC2 submappers. So if you emulate the IRQ, the test ROM may think it's dealing with a VRC4 and hence complain about the missing one-screen mirroring.
And you would be absolutely correct! Thanks, between disabling IRQs for VRC2 & disabling 1-screen mirroring for VRC2c, all the tests pass now.


Top
 Profile  
 
PostPosted: Sat Sep 02, 2017 7:04 pm 
Offline

Joined: Mon Nov 10, 2008 3:09 pm
Posts: 431
NewRisingSun wrote:
Attached is my modification of Nintendulator's Mapper DLL source file that passes all of AWJ's submapper identification tests. The only complaint the ROM still has is that the pseudo-scanline IRQ is "late".


It looks like you were working from an outdated version of Quietust's sources. Recently (meaning a couple months ago when I was last working on this) I pointed out an off-by-one error to quietust which he fixed, but the error is back in your version.

Code:
((IRQenabled & 2) && ((IRQenabled & 4) || ((IRQcycles -= 3) < 0)))


< 0 should be <= 0.

Sour wrote:
And your FCEUX screenshot says mapper 22 = VRC4?


The screenshots at the top of the thread were taken before I had finished writing the IRQ tests. Under FCEUX, the complete test program displays "???" (unknown/inconsistent) for mapper 22 since it (correctly) doesn't implement IRQs but it does implement one-screen mirroring and alternate PRG bank layout for that mapper.


Top
 Profile  
 
PostPosted: Sun Sep 03, 2017 1:34 am 
Offline

Joined: Thu May 19, 2005 11:30 am
Posts: 311
AWJ wrote:
It looks like you were working from an outdated version of Quietust's sources.
Ah. Thanks for pointing this out. Now vrc2and4.cpp passes all tests.

I have updated my local copy of all mapper sources and replaced the vrc2and4.cpp in the post above.


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

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 5 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