ChipsProcessors6502 family › Ricoh 2A03

Ricoh 2A03

1983

Ricoh's NES CPU, a 6502 core with integrated audio synthesis and DMA, minus the 6502's binary-coded-decimal mode.

Machines

Emulators

EmulatorTypeLicenseSite
FCEUXdownloadableGPL-2.0
JSNESonlineGPL-3.0Website ↗
JnesdownloadableFreeware
MesendownloadableGPL-3.0
Mesen2downloadableGPL-3.0
NESboxonlineMIT
NESticledownloadableFreeware
NestopiadownloadableGPL-2.0
Nestopia UEdownloadableGPL-2.0
NintacodownloadableFreeware
NintendulatordownloadableGPL-2.0
VirtuaNESdownloadableFreeware
aresdownloadableISC
higandownloadableGPL-3.0
nemulatordownloadableFreeware
puNESdownloadableGPL-2.0

Reference & documentation

External technical references for programming Ricoh 2A03 and for writing emulators.

ResourceTypeNotes
2A03 technical reference ↗DatasheetPins, sound microarchitecture, register-level details
6502 Instruction Set (masswerk) ↗Instruction setFull opcodes, cycles, addressing modes, NMOS & CMOS
CPU Unofficial Opcodes (NESdev) ↗Instruction setUndocumented opcode matrix, NMOS behaviour
CPU ALL - NESdev Wiki ↗Interrupt listNMI, IRQ, reset behavior and signals
2A03 - NESdev Wiki ↗Memory mapFull 22-register map: APU, joypad, OAM DMA
APU registers - NESdev Wiki ↗Memory mapBit layouts for $4000-$4017 sound registers
CPU memory map - NESdev Wiki ↗Memory mapAddress ranges, RAM mirroring, register decoding
CPU ALL - NESdev Wiki ↗Pinout40-pin diagram, signals, clock rates
NES APU Sound Hardware Reference ↗ProgrammingBlargg's channel-by-channel APU implementation reference
6502 Illegal Opcodes Demystified - masswerk ↗ReferenceHow illegal opcodes work at hardware level
nes-test-roms (christopherpow) ↗Test suiteCanonical collection of NES emulator test ROMs
nestest - The ultimate NES CPU test ROM ↗Test suiteKevin Horton's exhaustive CPU instruction/flag test