2A03 “Sound Chip” Progress

As has been well-documented all across the Internet, the NES 2A03 is not a sound chip. Though it contains all the Nintendo sound hardware, it is very much a processor that needs properly-formatted program data to run.

For making a real-time synthesizer module that can fit into an analog synth, I want to make the 2A03 behave and interface just like a sound chip. My goal is a register update rate of 200 kHz. According to my calculations, the fastest theoretically possible is around 270 kHz.

To say it a little more clearly, my requirement is that the chip must be able to update the sound hardware 200,000 times per second. The second goal is to have this be as close to real-time as possible. Third, there is no program EEPROM or esoteric dual-port RAM. Lastly, the control system cannot burden the processor that connects to it. Pokey chips, SID chips, et al are able to take simple data and address commands as input. This should behave similarly.

This past week, I finally tested my first draft control system. The test was to write directly to the PCM register as quickly as possible. I used a sawtooth wave to exercise the full range of PCM values, and a square wave to test speed. The result: success at 126 kHz! The theoretical performance should’ve been 128 kHz, which is less than 2% off. The next goal is to get the control system handling 200 kHz. In the meantime, scope shots:

Check that delicious linearity

Delicious Linearity

The Usual

The Usual

2 Responses to “2A03 “Sound Chip” Progress”

  1. TRUE CHIP TILL DEATH » Skrasoft 2A03 “Sound Chip” Progress Says:

    [...] more  “Sound Chip” Progress. [...]

  2. bugeats Says:

    Just wanna say that I’m eagerly following your progress. Keep up the good work.

Leave a Reply