VRC7: Difference between revisions
From NESdev Wiki
Jump to navigationJump to search
m (Added way of making a universal VRC7 Cartridges that work with both games) Tag: Reverted |
(Undo revision 22101 by PizzerLover123 (talk) this really doesn't belong here) Tag: Undo |
||
Line 55: | Line 55: | ||
* VRC7b uses A3 to select registers ($x008), used in ''Tiny Toon Adventures'' ('''Submapper 1'''). | * VRC7b uses A3 to select registers ($x008), used in ''Tiny Toon Adventures'' ('''Submapper 1'''). | ||
* VRC7a uses A4 to select registers ($x010), used in ''Lagrange Point'' ('''Submapper 2'''). | * VRC7a uses A4 to select registers ($x010), used in ''Lagrange Point'' ('''Submapper 2'''). | ||
Although A5 is wired for sound registers on both ($x028, $x030), in the former board the ceramic resonator necessary for the sound hardware to work is missing. | Although A5 is wired for sound registers on both ($x028, $x030), in the former board the ceramic resonator necessary for the sound hardware to work is missing. |
Latest revision as of 11:36, 6 October 2024
VRC7
Company | Konami |
Games | 2 in NesCartDB |
Complexity | ASIC |
Boards | 352402, 353429 |
Pinout | VRC7 pinout |
PRG ROM capacity | 512K |
PRG ROM window | 8Kx3 + 8K fixed |
PRG RAM capacity | 8K |
PRG RAM window | 8K fixed |
CHR capacity | 256K |
CHR window | 1Kx8 |
Nametable mirroring | H, V, or 1, switchable |
Bus conflicts | No |
IRQ | Yes |
Audio | VRC7a only |
iNES mappers | 085 |
The Konami VRC7 is an ASIC mapper. It is assigned to iNES Mapper 085.
Example games:
- Lagrange Point
- Tiny Toon Adventures 2
See VRC7 pinout for chip pinout.
Banks
CPU
- $6000-$7FFF: 8 KB PRG-RAM bank, fixed
- $8000-$9FFF: 8 KB switchable PRG-ROM bank
- $A000-$BFFF: 8 KB switchable PRG-ROM bank
- $C000-$DFFF: 8 KB switchable PRG-ROM bank
- $E000-$FFFF: 8 KB PRG-ROM bank, fixed to the last bank
PPU
- $0000-$03FF: 1 KB switchable CHR-ROM bank
- $0400-$07FF: 1 KB switchable CHR-ROM bank
- $0800-$0BFF: 1 KB switchable CHR-ROM bank
- $0C00-$0FFF: 1 KB switchable CHR-ROM bank
- $1000-$13FF: 1 KB switchable CHR-ROM bank
- $1400-$17FF: 1 KB switchable CHR-ROM bank
- $1800-$1BFF: 1 KB switchable CHR-ROM bank
- $1C00-$1FFF: 1 KB switchable CHR-ROM bank
If CHR-RAM is used instead of CHR-ROM, the banking feature is still functional.
Registers
There are two board variations:
- VRC7b uses A3 to select registers ($x008), used in Tiny Toon Adventures (Submapper 1).
- VRC7a uses A4 to select registers ($x010), used in Lagrange Point (Submapper 2).
Although A5 is wired for sound registers on both ($x028, $x030), in the former board the ceramic resonator necessary for the sound hardware to work is missing.
PRG Select 0 ($8000)
7 bit 0 --------- ..PP PPPP || |||| ++-++++- Select 8 KB PRG ROM at $8000
PRG Select 1 ($8010, $8008)
7 bit 0 --------- ..PP PPPP || |||| ++-++++- Select 8 KB PRG ROM at $A000
PRG Select 2 ($9000)
7 bit 0 --------- ..PP PPPP || |||| ++-++++- Select 8 KB PRG ROM at $C000
CHR Select 0…7 ($A000…$DFFF)
Write to CPU address | 1KB CHR bank affected |
---|---|
$A000 | $0000-$03FF |
$A008 or $A010 | $0400-$07FF |
$B000 | $0800-$0BFF |
$B008 or $B010 | $0C00-$0FFF |
$C000 | $1000-$13FF |
$C008 or $C010 | $1400-$17FF |
$D000 | $1800-$1BFF |
$D008 or $D010 | $1C00-$1FFF |
Mirroring Control ($E000)
7 bit 0 --------- RS.. ..MM || || || ++- Mirroring (0: vertical; 1: horizontal; || 2: one-screen, lower bank; 3: one-screen, upper bank) |+-------- Silence expansion sound if set +--------- WRAM enable (1: enable WRAM, 0: protect)
IRQ Control ($E008 - $F010)
$E008, $E010: IRQ Latch $F000: IRQ Control $F008, $F010: IRQ Acknowledge
Many VRC mappers use the same IRQ system. For details on IRQ operation, see VRC IRQs.
Sound ($9010, $9030)
For details on sound information, see VRC7 audio.
See also
- Konami VRC-VII Chip Info by Kevin Horton.
- NES Mapper List by Disch
- Submapper test ROMs
- siliconpr0n VRC7 decapsulation photographs