NEC D931x
From SoundClubLibrary
The NEC D931x (commonly D931C; also uPD931C, 931G, D931) sound IC was used in several Casio keyboards, notably the MT-100, the MT-68, and the MT-65.
Contents |
[edit] Sound generation method
The chip generates sounds based on digital representations of waveforms as a series of 16 one-nybble increments, such that one cycle of a triangle wave might be described 1111111199999999, where 1 means one step up and 9 means one step down. This fairly unusual method may have been employed to avoid running afoul of an existing patent.
The chip has 8-note polyphony. Each channel is internally 14 bits, but all active channels are summed to produce a 17-bit output.
Its output is digital -- 17 bits at a sample rate of approximately 600kHz.
[edit] Control
As employed in the MT-100 and similar, the chip is controlled by a NEC D930G processor, which sends it waveforms (in increment form as described above) stored in ROM. Most, if not all, of the D931-based keyboards Casio made had the same set of 20 factory presets/patches, and were not user-programmable.
Also of note is the fact that the chip is played by instructing it which note to play, rather than which specific frequency -- it either calculates the frequencies of the scale internally or gets them from a lookup table.
[edit] Simulation
Work is underway on an effort by the maintainers of this wiki to design a softsynth capable of simulating something akin to the MT-68, with added user-programmable functionality (i.e. punch in a list of increments and get a sound) and reproducing the patches extant on the keyboards which used this chip.
[edit] Documentation
Robin Whittle, who published a newsletter about modifying Casio keyboards in the 1980s, has documented this chip fairly extensively. Most of this article is based on his work. His documentation is available on his website -- should it become unavailable, check at archive.org or contact us about having it mirrored.

