User:PostNES

From NESdev Wiki
Revision as of 09:06, 5 June 2016 by PostNES (talk | contribs) (mapper ideas)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Mapper ideas

  • CHR hardware scrolling unit
    • Scrolls portions of pattern table with wrapping for hardware accelerated parallax effects
      • implementation: two CHR ROMs with alternately stored tiles (VRAM address %0AAAAA AAAcBBBB -> ROM %c, address in ROM %AAAAAAAABBBB) for parallel fetching of pixel rows
  • CHR color remapping unit
    • ExGraphix-like, with each byte in ExRAM storing a color index (0-3) to be remapped to in a character, for every source color index (0-3). This would allow to conserve some palette/CHR-ROM space in some cases.
      Example:
ExRAM byte = %01010000, or 1100 in quaternary system: remap 0 to 0, 1 to 0, 2 to 1, 3 to 1

Original character:
.defchr $00000000,
        $02233200,
        $02100120,
        $03000030,
        $03333310,
        $03000030,
        $03000030,
        $03222210

Remapped:
.defchr $00000000,
        $01111100,
        $01000010,
        $01000010,
        $01111100,
        $01000010,
        $01000010,
        $01111100
  • DPCM converter
    • Converts any on-cartridge audio to DPCM and returns it to CPU on sample reads so that there's audio expansion on NES!
      • DMC rate control would coarsely alter pitch if the conversion rate is constant
  • DPCM hardware mixer
    • Plays back (by returning to CPU on sample read) multiple samples at different speeds