techniques for animated background tiles?

Are you new to 6502, NES, or even programming in general? Post any of your questions here. Remember - the only dumb question is the question that remains unasked.

Moderator: Moderators

User avatar
qbradq
Posts: 952
Joined: Wed Oct 15, 2008 11:50 am

Post by qbradq »

Do most emulators support CHR-RAM banking in MMC3? I did a test ROM but can't remember the results and I've lost the code in a HDD crash.
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Post by tokumaru »

I did a quick Mega Man 4 hack (I messed up the code that initializes the CHR banks) and indeed graphics got screwed up in all emulators I tested (FCEUX, Nestopia and Nintendulator), so it's safe to say that at least these support this feature.
User avatar
Bregalad
Posts: 8036
Joined: Fri Nov 12, 2004 2:49 pm
Location: Caen, France

Post by Bregalad »

I guess the emus will switch the banks if you write something to the banking registers, but they will default to the regular "0,1,2,3,4,5" bank switching if you do nothing, while the real MMC1 will default to "0,0,0,0,0". So if yo actually want to use the CHR-RAM like a plain 8KB RAM, you should first do some bank switching at startup so that it is set up correctly.

It was Banshaku if I remember well who had this problem, his program worked fine in all emus, but failed on a real cart because of that.
Useless, lumbering half-wits don't scare us.
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Post by tokumaru »

Yup, you have to initialize the mapping with sequential numbers if you want to use the memory contiguously.
Post Reply