Mike Riedel (NES Driver)

From Video Game Music Preservation Foundation Wiki
Revision as of 01:16, 23 October 2015 by Doommaster1994 (talk | contribs) (Created page with "{{Infobox Driver | Name = Mike Riedel | Released = | Programmers = Mike Riedel | Language = 6502 Assembly | Formats = }} '''''Mike Riedel''''' is...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Mike Riedel
Programmers Mike Riedel
Language 6502 Assembly

Mike Riedel is an unofficial name of the NES sound driver used at Riedel Software Productions. It was programmed by Mike Riedel, founder and lead programmer of RSP.

Release History

RSP only developed four games, but they provided their sound engine to The Software Toolworks for The Chessmaster, as well as Designer/Radiance Software for their game Rollerblade Racer. The driver was also used in Radiance Software's NES version of The Great Waldo Search.

Output

The driver outputs to the RP2A03. While it doesn't use the DPCM channel for music, it does use it for very high quality speech.

In Big Bird's Hide and Speak, the driver sounds noticeably different from the other games that use the driver. According to its programmer Mike Riedel, they had to remove all but a few of the instruments due to the large amount of digitized speech that was put into the game, as digitized sound took up a significant amount of space in NES games. The games Sesame Street Countdown, Great Waldo Search, and Rollerblade Racer share the same exact sound effects.

Development

Mike Riedel programmed the sound driver in 6502 assembly language, as well as a program to convert the composers' MIDI files into text for the sound driver to utilize.

Games


Released

Title

Sample

1990-01-?? The Chessmaster (NES)
1990-03-?? Win Lose or Draw (NES)
1990-05-?? MTV: Remote Control (NES)
1990-10-?? Big Bird's Hide and Speak (NES)
1992-02-?? Sesame Street: Countdown (NES)
1992-12-?? The Great Waldo Search (NES)
1993-02-?? Rollerblade Racer (NES)

Technical

Frequency Registers

The driver only contains A-0 to G#1. It then uses an algorithm to divide each frequency by 2 to attain to higher frequencies.

B-7 = 0E
A#7 = 0F
A-7 = 0F
G#7 = 10
G-7 = 11
F#7 = 12
F-7 = 14
E-7 = 15
D#7 = 16
D-7 = 17
C#7 = 19
C-7 = 1A
B-6 = 1C
A#6 = 1E
A-6 = 1F
G#6 = 21
G-6 = 23
F#6 = 25
F-6 = 28
E-6 = 2A
D#6 = 2C
D-6 = 2F
C#6 = 32
C-6 = 35
B-5 = 38
A#5 = 3C
A-5 = 3F
G#5 = 43
G-5 = 46
F#5 = 4B
F-5 = 50
E-5 = 54
D#5 = 59
D-5 = 5F
C#5 = 64
C-5 = 6A
B-4 = 71
A#4 = 78
A-4 = 7F
G#4 = 86
G-4 = 8C
F#4 = 97
F-4 = A0
E-4 = A9
D#4 = B3
D-4 = BE
C#4 = C9
C-4 = D5
B-3 = E2
A#3 = F0
A-3 = FE
G#3 = 10D
G-3 = 119
F#3 = 12E
F-3 = 140
E-3 = 153
D#3 = 167
D-3 = 17D
C#3 = 193
C-3 = 1AB
B-2 = 1C5
A#2 = 1E0
A-2 = 1FC
G#2 = 21A
G-2 = 233
F#2 = 25C
F-2 = 280
E-2 = 2A6
D#2 = 2CF
D-2 = 2FA
C#2 = 327
C-2 = 357
B-1 = 38A
A#1 = 3C0
A-1 = 3F9
G#1 = 435
G-1 = 467
F#1 = 4B9
F-1 = 501
E-1 = 54D
D#1 = 59E
D-1 = 5F4
C#1 = 64E
C-1 = 6AE
B-0 = 714
A#0 = 780
A-0 = 7F2