GitHub - rcl9/Playing-Computer-Music-via-AM-Radio-on-IMSAI-8080-PDP8-Sorcerer-TRS80-etc-in-the-1970s: This repository focuses on the generation of rudimentary computer music played through an AM radio in the mid to late 1970s via RF noise emitted by the CPU. Implementations for 8080 and PDP8 are provided. · GitHub
/" data-turbo-transient="true" />
Skip to content
Search or jump to...
Search code, repositories, users, issues, pull requests...
-->
Search
Clear
Search syntax tips
Provide feedback
--><br>We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
-->
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up
Appearance settings
Resetting focus
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
rcl9
Playing-Computer-Music-via-AM-Radio-on-IMSAI-8080-PDP8-Sorcerer-TRS80-etc-in-the-1970s
Public
Notifications<br>You must be signed in to change notification settings
Fork
Star
main
BranchesTags
Go to file
CodeOpen more actions menu
Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit
History<br>4 Commits<br>4 Commits
Images
Images
PDP8 Music
PDP8 Music
Steve Dompier Music
Steve Dompier Music
.gitattributes
.gitattributes
Readme.md
Readme.md
View all files
Repository files navigation
Playing Computer Music via an AM Radio on Computers Like the Altair, IMSAI, PDP8, Sorcerer, TRS80, etc in the 1970s
This repository was written as a historical book-end to my 10 year fixation with computer music synthesis design, with this short and simple summary focusing on the generation of rudimentary computer music played through an AM radio in the mid to late 1970s via RF noise emitted by the CPU. Unless you were a business user who could afford a very expensive S-100 system running CP/M on 1 or 2 floppy drives then there wasn't very much that a "home accessible computer" could do other than (drum roll please!) play computer music.
The very first thing I ever did with my newly purchased Exidy Sorcerer was play "Daisy Bell" (as heard in 2001: A Space Odyssey) though the AM radio (see image below) via the noise emitted by the CPU and using the code provided below for the Steve Dompier 8080 implementation. Six months later it was music through my first home-brew electronics project of a 6-bit D-to-A converter. That was followed by my 9-voice 76489-based (ALF Music like) system + custom designed software. And with my foray into music related hardware development culminating in the late 1980s with my Fairlight CMI synth clone of a TMS32020 multi-processor synthesizer.
For some historical context about the quickly evolving landscape of computer music in the late 1970s and early 1980s, the Synclavier I was introduced in 1978, the Fairlight CMI in 1979, Kurzweil Music Systems established in 1982 and the Yamaha DX7 introduced in 1983 (among many others). I got involved right at this same time, as did many other like-minded computer enthusiasts that also wanted to do their own computer music generation. It was a fascinating time to be alive and be involved with home computing + computer generated music!
Playing Music on 8080/Z80 Computers, as of 1975
Steve Dompier first demonstrated playing computer music through an AM radio on his Altair 8080 at the third meeting of the Homebrew Computer Club (Menlo Park) in 1975. He played The Beatles "The Fool on the Hill" and "Daisy Bell" to the audience. He published his code in the People's Computer Company newsletter (Vol. 3, No. 6, May 1975) and reprinted in Dr. Dobb's Journal (Feb 1976, page 6) as well as Dr. Dobb's Journal "Volume One" compendium (page 28-29). I have extracted the two pages here for quick reference.
Fifty years ago Altair 8800 played Daisy
Altair 8800 - Video #29 - Music on an Altair 8800
I have transcribed the 8080 assembly code from the original article into this plain-text listing:
Loop:<br>LXI H, XXXX ; XXXX = address of the music data<br>Loop2:<br>MOV A, M ; Get the next music data value<br>CPI 377Q ; End of data?<br>JZ Loop ; Yes, start over again
MVI D, YY ; YY = tempo number. Start out by using 040Q.<br>Loop3:<br>DCR B ; B is not intialized anywhere on the first loop<br>JNZ Skip<br>MOV B, M ; Get the music data value again<br>Skip:<br>DCR C ; C is not intialized anywhere<br>JNZ Loop3<br>DCR D ; Decrement our temp value<br>JNZ Loop3<br>INR L ; Move to the next music note<br>JMP Loop2 ; Continue playing the next notre
I have also hand entered the data for the Daisy tune, in octal notation, for your quick reference:
034Q, 034Q, 034Q, 042Q, 042Q, 042Q, 053Q, 053Q, 053Q, 071Q, 071Q,...