| General information | |
|---|---|
| Launched | 1983; 42 years ago (1983) |
| Discontinued | 2003 |
| Common manufacturer | |
| Performance | |
| Max.CPUclock rate | 1.79 MHz |
| Architecture and classification | |
| Technology node | 6μm |
| Instruction set | MOS 6502 |
| Physical specifications | |
| Cores |
|
| Socket |
|

TheRicoh 2A03 orRP2A03 (NTSC version) /Ricoh 2A07 orRP2A07 (PAL version) is an8-bitmicroprocessor manufactured byRicoh for theNintendo Entertainment Systemvideo game console. It was also used as asound chip and secondary CPU byNintendo'sarcade gamesPunch-Out!! andDonkey Kong 3.
The Ricoh 2A03[1] contains an unlicensed derivative of theMOS Technology 6502 core, modified to disable the 6502'sbinary-coded decimal mode (possibly to avoid a MOS Technology patent[2]). It also integrates aprogrammable sound generator (also known as APU, featuring twenty twomemory-mapped I/O registers),[3] rudimentaryDMA, and game controller polling.[4]
The Ricoh 2A03's sound hardware has 5 channels, separated into two APUs (Audio Processing Units). The first APU contains two general purposesquare wave channels with 4 duty cycles, similar to the sound generators seen on earlier platforms. The second APU contains three channels; a pseudo-triangle wave generator, anLFSR-basednoise generator, and a 1-bitDelta modulation-encoded PCM (DPCM) channel.
The triangle wave was generated by automatically stepping a 4-bit volume control from 0 to 15 and then back down. The rate of these steps could be controlled to produce different frequencies for the resulting tone. Because of the discrete stepping, an overtone was created four octaves higher at1⁄8 the volume of the primary tone, giving the resulting tone a "buzzing" quality. Because the volume was being used to create the triangle, this channel did not have a separate volume control.[5]
A majority of the NES library uses only the four programmed channels due to the amount of memory needed to encode DPCM signals. Later games use the 5th DPCM channel due to cartridge memory expansions becoming cheaper. For example,Super Mario Bros. 3 uses the DPCM channel for simple drum sounds. An interesting quirk of the DPCM channel is that the bit order is reversed compared to what is normally expected for 1-bit PCM. Many developers were unaware of this detail, causing samples to be distorted during playback.[6]
The output of each channel is mixed non-linearly in their respective APU before being combined. This means that the volume of the channels changes when the volume of other channels changes. This can make the balancing of the channels in complex passages difficult. This was a particular problem with the triangle wave, as its volume could not be separated adjusted to make up for this effect.
On Famicom systems, expansion sound chips may add their own sound to the output via a pin on the game cartridge. Expansion audio capabilities were removed from international NES systems, but can be restored by modifying the expansion port located on the bottom of the system.[7]
PAL versions of the NES (sold in Europe, Asia, andAustralia) use theRicoh 2A07 orRP2A07 processor, which is a 2A03 with modifications to better suit the 50 Hzvertical refresh rate used in the PAL television standard. However, most developers lacked the resources to properly adjust their games' music from NTSC to PAL, leading to many PAL games sounding slower, slightly lower-pitched, and in some cases, out-of-tune compared to their original NTSC releases.[citation needed]