Page 1 of 1

NES Project Questions

Posted: Fri Mar 22, 2019 10:11 am
by FlyMario
I have been working on an NES project where I can Develop games and run games. It will have a 512k Ram chip for "Program" and a 128k Ram chip for "Character/Sprites". I also desire to be able to read and write memory addresses while it is running. Yes, I know that I could use an emulator for this but ... well this is fun for me.

So I started looking into MMC1 and it is kind of confusing. I see that there are settings for mirroring the screen. But this makes no sense. There are not enough pins on the MMC to translate the video to a point of mirroring anything. The terminology makes me think it is flipping the image vertical or horizontal. Am I missing something? I am trying to work out a CPLD to move banks around.

Do you have any information that you can share to clear this up?

Thanks,
FlyMario
20190321_190844.jpg
20190322_071931.jpg

Re: NES Project Questions

Posted: Fri Mar 22, 2019 10:29 am
by lidnariq

Re: NES Project Questions

Posted: Fri Mar 22, 2019 10:42 am
by FlyMario
Oh, I think I get it. Basically, it is just making the same memory region appear at two or so different regions. As if duplicated. Well, that seems reasonable.

Thanks!

Re: NES Project Questions

Posted: Fri Mar 22, 2019 11:09 am
by tokumaru
Yeah. The PPU has a memory window of 4KB for name tables, arranged as a 2x2 grid, but the console only has 2KB of actual memory dedicated to name tables, so that has to be mirrored somehow to fill the rest of the space. In order to give developers the power to decide how to arrange their name tables, Nintendo put a few signals on the cartridge connector that affect how name tables are read by the PPU. It's even possible to have extra RAM on the cartridge to fill the entire 4KB window.

Re: NES Project Questions

Posted: Sun Mar 24, 2019 8:59 am
by Bananmos
While there's no shortage of of NES mainboards, it is always a little disheartening to see a console modded to no longer take cartridges... :wink:

I did make a board around around a year ago which allows easier access to the cartridge connector. This is the forum thread: NES hardware debugging board

There seemed to be no interest in the finished pcb, so I've got plenty of spare ones lying around if anyone wants one. Though I suspect you might not need one either now that you've done all the soldering once... :roll: