An updated new PPU.
What would you change about the NES?
Moderator: Moderators
Re: What would you change about the NES?
Turns out that any change to how the PPU fetches sprites will cause a compatibility problem with at least one mapper, and possibly several.
You can't take advantage of the extra unused 34th background fetch time, nor the first dummy nametable fetch during sprite fetches, because MMC3 requires that the first fetch be at dot 264. Otherwise its IRQ timing within a scanline will be 4 to 12 pixels too early.
You can't take advantage of the other 7 dummy nametable fetches and stuff more sprite pattern fetches, because MC-ACC and several unlicensed mappers rely on PPU A12 toggling 8 times per scanline.
You can't take advantage of the dummy nametable fetch at the end of each scanline, because MMC5 relies on seeing the same nametable address fetched three times in a row to clock its IRQ.
So the only question can be: what games are you okay with losing compatibility with?
You can't take advantage of the extra unused 34th background fetch time, nor the first dummy nametable fetch during sprite fetches, because MMC3 requires that the first fetch be at dot 264. Otherwise its IRQ timing within a scanline will be 4 to 12 pixels too early.
You can't take advantage of the other 7 dummy nametable fetches and stuff more sprite pattern fetches, because MC-ACC and several unlicensed mappers rely on PPU A12 toggling 8 times per scanline.
You can't take advantage of the dummy nametable fetch at the end of each scanline, because MMC5 relies on seeing the same nametable address fetched three times in a row to clock its IRQ.
So the only question can be: what games are you okay with losing compatibility with?
Re: What would you change about the NES?
Was the NES designed with mappers in mind or was it an after thought?
...
-
- Posts: 3052
- Joined: Wed May 19, 2010 6:12 pm
-
- Posts: 1260
- Joined: Tue Feb 07, 2017 2:03 am
Re: What would you change about the NES?
bah that was a feature of it being "cheap". Why put extra chips/ shared access/ RAM on board the machine. Just put more pins on the edge connector and then put ROMs on the cart. Makes the machine much cheaper.
-
- Posts: 3052
- Joined: Wed May 19, 2010 6:12 pm
Re: What would you change about the NES?
I wish the SNES did that.
Re: What would you change about the NES?
Here's a few things I would change, mostly I would just correct some of the errata and finish what was left unfinished...
- Fix PPU errata like Sprite overflow flag being unreliable, OAM DRAM should be auto-refreshed, 6-bit RGB color space (like on SMS) but we can keep the 2bpp as is
- Make PPU Slave Mode usable, so that an external PPU could be used... from what I understand the backdrop pixels would be replaced with the picture from the external PPU
- Finish the CPU cycle counter that was found on the die, with CPU cycle or scanline mode, making mapper IRQs irrelevant
- Remove hardware APU envelopes and sweep completely and introduce an 8-step 1-bit "wavetable", basically a configurable version of where the pulse sequences are looked up from anyway. This could give 4 duty cycles + some POKEY-like distortion waves eg. "10110100" and the ability to use the pulse channels as a DAC with "11111111"
- 8-bit DMC frequency divider instead of a lookup table