|DMX PC Speaker Format|
|First Game:||Doom (DOS)|
The DMX PC Speaker Format (DP) is a special PC speaker format designed so that people who played Doom (DOS) without sound cards could still hear sound effects. By 1994, sound cards were pretty ubiquitous among PC gamers, but id Software decided to accommodate those who still lagged behind the technology curve by adding PC Speaker sound effects to the game. This format was never used for music. In the WAD files, the DP files use the generic .lmp extension, but to make them unique, they're given the .dp extension.
Subsequent games made using the Doom engine also could have utilized this format.
|1994-04-01||Raptor: Call of the Shadows (DOS)|
|1994-10-10||Doom II: Hell On Earth (DOS)|
|1996-05-31||Final Doom (DOS)|
|1996-??-??||Chex Quest (DOS)|
|1996-??-??||Chex Quest 2 (DOS)|
PC speaker sound effects have a four byte header that is used to specify the length of the sound. That many bytes then follow.
Each byte corresponds to a tone that is played for 1/140th of a second (this corresponds to 4*35, where 35 is the number of frames per second in Doom). Because of this, the format doesn't easily translate to games played at a different frame rate. The frequency values used are on a musical scale; there are 24 notes per octave, which corresponds to double that of the western musical scale (12 notes per octave). The values are therefore a superset of the western musical scale, with an extra microtone inserted between each note.
Because of this, the frequencies increase exponentially with respect to the byte values. Adding 24 to the value doubles the frequency. A value of 0 causes silence.
The format was reverse engineered by Simon Howard (fraggle) and Andrew Apted (ajapted).
- doomwiki.org/wiki/PC_speaker_sound_effects - Format details.