Skip to main content
NESdev Wiki
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

CPU

The NES CPU core is based on the 6502 processor and runs at approximately 1.79 MHz (1.66 MHz in a PAL NES). It is made by Ricoh and lacks the MOS6502’s decimal mode. In the NTSC NES, the RP2A03 chip contains the CPU and APU; in the PAL NES, the CPU and APU are contained within the RP2A07 chip.

Sections

Frequencies

The CPU generates its clock signal by dividing the master clock signal.

RateNTSC NES/FamicomPAL NESDendy
Color subcarrier frequency fsc (exact)3579545.45 Hz (315/88 MHz)4433618.75 Hz4433618.75 Hz
Color subcarrier frequency fsc (approx.)3.579545 MHz4.433619 MHz4.433619 MHz
Master clock frequency 6fsc21.477272 MHz26.601712 MHz26.601712 MHz
Clock divisor d121615
CPU clock frequency 6fsc/d1.789773 MHz (~559 ns per cycle)1.662607 MHz (~601 ns per cycle)1.773448 MHz (~564 ns per cycle)

* The vast majority of PAL famiclones use a chipset or NOAC with this timing. A small number have UMC UA6540+6541, which also uses PAL NES timing.[1]

Notes

  • There are no differences in the execution of illegal 6502 opcodes between the 2A03 and the 2A07.
  • Every cycle on 6502 is either a read or a write cycle.
  • A printer friendly version covering all section is available here.
  • Emulator authors may wish to emulate the NTSC NES/Famicom CPU at 21441960 Hz ((341×262−0.5)×4×60) to ensure a synchronised/stable 60 frames per second.[2]

See also

References

  1. ↑ nesdev forum: Eugene.S provides a list of famiclones
  2. ↑ nesdev forum: Mesen - NES Emulator

Edit this page on GitHub