As the author of many of your references, I wholeheartedly enjoyed this video. You did a great job, and didn't misrepresent anything. You might be interested to know that the production Area 5150 from August of last year has an end-part that pushes the output of the PC speaker on an 8088 to its limits; you may want to check it out.
Thank you! I'm always a little bit nervous with this stuff as while I do program commercially it's the usual backend web development stuff, and I'm very much a dabbling hobbyist when it comes to vintage x86 tricks. I need to take a look at that demo!
This is EXACTLY what I was hoping for. I just recently learned that this amazing sound that came out of my PC speaker as a kid was “RealSound” and wanted to learn what the hell that was and how it worked. Really really appreciate you doing a documentary on this incredibly niche retro technology.
I had a 486 without a soundcard, and I remember being blown away by how awesome the sound was in Pinball Fantasies. Miles ahead of anything else. It stopped mattering when we bought our Pro Sonic 16, but I still remember that PC speaker magic Digital Illusions made.
11:38 Another fine example of patents crippling something from every being used where people were using it before the patent, lots of those in gaming history. I'm thinking of coining that situation as the Happy Birthday Effect, named so after the birthday song with a copyright that nobody ever licensed for TV and movies.😉
And then the humble PC speaker was deleted in favour of a sounder which could just about beep, if you got one at all. I remember PC speaker driver on Win 3.1, setting up the volume with a test piece of the Trumpton fire brigade call
Bejeweled 3 is a more recent example of a game that uses tracker based music iirc, albeit in a more sophisticated manner than the likes of screamtracker 3 from the 90s.
I remember the first time I heard something like actual audio out of a PC, it was with "Another World" and it was so quiet it was a whisper and I'd lean forward and put my ear next to the PC case to hear it.
Great video. I certainly learnt something. Loved the tinny sound of the internal speaker, however I have fond memories of my original sound blaster and playing with Dr Sbaitso or Gran Prix hooked up to a system with two 15” speakers (amongst others). I was nearly killed asking my elder brother to help install the damn thing as he was writing his masters thesis. 😬 Worth the risk!
Sound cards became popular on the Apple 2 in 1981 with the Mockingboard which had an AY-3-8910 chip. Ultima V supported two Mockingboards for 12 voices but only used 8. Even digitalized speech existed on the Apple 2 with the 1981 _Castle Wolfenstein_ and 1982 game _Sea Dragon_ before Access’s _World Class Leader Board_ emulated 6-bit PCM via PWM called “RealSound.” On PCs the AdLib sound card was playing catch up. It was possible to play fake 3 voices by using 100% of the CPU. I had a program that would play Greensleeves in MS-DOS.
Very nice video. I also remember in the Windows 3.x era, there was a sound driver for the pc speaker that made it appear as a sound card and even played .WAV files. It was pretty impressive for a pc with no sound card. - ALLEY CAAAAATTTT!!!!!
It's very cool. Obviously came quite late when there was CPU power to spare, but still impressive that they implemented a MOD player for PC speaker and then mixed in the game sound effects too. (Well, if you've already written the MOD player most of the code to do that is already there... but it still comes off even more impressive than just playing the music)
about a year ago i made a modern program for windows that can play 16-bit wav files on the pc speaker using the click approach where at every sample time youd invert play a click if value of the sample was higher than some threshold it technically works, sometimes pretty well, but anything complex comes out as a garbled mess ill defo try the oneshot mode with some pwm; thanks for the inspiration
Actually.... The earliest Soundcards were sold on the S100 bus for computers like the Altair. These were more like Synthesizers than the PSG/FM sound that would associated with Computer music. A short while later the Apple II got its first "real" sound card (1978) that could generate 3-channel PSG-like music. That was the ALF MC16. It was for a time the best selling personal computer add-on ever, forcing the company ALF-Products to heavily invest into Floppy-copy hardware to keep up with the demand for people wanting to buy music files. This "forcefully" moved the company into the diskette-duplicator niche where they found great success and were finally bought up. Before even the first real sound chip was created, there were sound cards. No games would be using these, though since there was no way of knowing the actual user base for this and integrating music into games not only for the built-in hardware but also for maybe several different sound-systems was just not possible. The first sound-card that found some traction in games was the Sweet Systems Micro (SSM) Mockingboard from 1983. It could not only produce 6 channels of music but also could be upgraded with up to two speech-synthesizer chips. SSM was the first company to offer a free development kit to integrate music into programs. These libraries had another great feature: using the programmable interrupt controllers on the mockingboard. The Apple II did not have any form of system-independent interrupt provider. This made precise time determination very difficult and programmers had to count CPU-cycles to get any idea how much time had passed. With a programmable interrupt controller it is not important how fast the CPU is or how long a calculation lasts. The program can accurately play a note when needed. This also means that a game using that code will run always at the correct speed, even when an accelerator is installed. This concept was not born over night but developed over a time of 2 years from 1981 to 1983 where finally a free library with player-code and support could easily be used in a game or program. This approach was later (1987) successfully used with the introduction of the AdLib Music Synthesizer Card and later the Creative Soundblaster on the IBM PC. In a nutshell: not the sound card itself brought music to the games but the availability of "software" (code & examples) to easily use these features.
One of the first games I got after getting my 386/16 was Golden Axe for DOS and the game’s music and sound effects played through the PC speaker. It was a very low sample rate, but the fact that a speaker that was only intended to beep could emulate multi channel sound was pretty amazing. It wasn’t long before I got an Adlib compatible soundcard. I don’t remember if Golden Axe supported Adlib sound, but I remember being blown away the first time I played Wolfenstein3d not having to hear it through my PC speaker.
Excellent video, thanks for posting. I remember various DOS apps that did fun stuff with the PC speaker, and eventually as Soundblasters became common there were emulators for them that ran as TSRs and converted any game/app using Soundblaster to PC speaker. Fun times.
Space Hulk. Megalomania. SPX turbo pascal library (I could rip the .voc files from the Syndicate: American Revolt demo, and play a jet strike through my PC speaker). Hell, considering stuff like M.U.L.E has voice files on the NES, way before 16bit, etc, I'm not sure you've really covered the beeper properly. "Welcome Yellow Flapper!". As true now, as it was then.
It's an affectation from when we were all young and had never heard of it outside an option in the "1. Hercules 2. CGA 3. Tandy/PCjr 4. EGA" menu games started with. We'd never seen any of the IBM advertising which would tell us the correct name, but we'd definitely experienced elderly relatives who had collections of "Dallas" on VHS...
Just thought I'd report back after being sent on an involuntary Betty Boo/Stray Cats youtube binge, with an additional one off vid diversion to The Damned song "New Rose" which took my fancy, all as a result of watching this vid. Time well spent on all accounts.
New Rose is a great track! I think I have it on a live compilation somewhere... Maybe one day I should take you all through some of my record collection, although I fear I'd go down in your estimation.
I just got an old Dell Optiplex case for "emulator build" and it had an pc-speaker. PC-speaker which has four pins in... It's a 30x20mm stereo-amplified mono pc-speaker. WTF? :D
Good old Optiplex era Dell. If there was something they could make non-standard, they would. I once opened up a power supply to replace a defective fan, only to find they'd swapped the order of the wires in the connector...
One thing I'm not able to understand... why was it only in 1987 that games started using the PIT for PWM? I mean, the PIT (8253) had been available since the first IBM PC in 1981...
Dunzhin did it earlier, and there were a few Apple II games using a similar technique but yeah, '87 to the patenting of RealSound seems to be the explosion in the technique. My guess would be not so much the output, but getting the sounds in there in the first place. Which would have become much easier after machines like the Amiga gave widespread access to digitised sound. But that's just a guess. Plus maybe a little of memory requirements for the longer samples.
As the author of many of your references, I wholeheartedly enjoyed this video. You did a great job, and didn't misrepresent anything.
You might be interested to know that the production Area 5150 from August of last year has an end-part that pushes the output of the PC speaker on an 8088 to its limits; you may want to check it out.
Thank you! I'm always a little bit nervous with this stuff as while I do program commercially it's the usual backend web development stuff, and I'm very much a dabbling hobbyist when it comes to vintage x86 tricks. I need to take a look at that demo!
This is EXACTLY what I was hoping for. I just recently learned that this amazing sound that came out of my PC speaker as a kid was “RealSound” and wanted to learn what the hell that was and how it worked. Really really appreciate you doing a documentary on this incredibly niche retro technology.
I had a 486 without a soundcard, and I remember being blown away by how awesome the sound was in Pinball Fantasies. Miles ahead of anything else.
It stopped mattering when we bought our Pro Sonic 16, but I still remember that PC speaker magic Digital Illusions made.
11:38 Another fine example of patents crippling something from every being used where people were using it before the patent, lots of those in gaming history. I'm thinking of coining that situation as the Happy Birthday Effect, named so after the birthday song with a copyright that nobody ever licensed for TV and movies.😉
And then the humble PC speaker was deleted in favour of a sounder which could just about beep, if you got one at all.
I remember PC speaker driver on Win 3.1, setting up the volume with a test piece of the Trumpton fire brigade call
Bejeweled 3 is a more recent example of a game that uses tracker based music iirc, albeit in a more sophisticated manner than the likes of screamtracker 3 from the 90s.
Excellent channel. Your videos are much more entertaining than the new videos from the 8-bit guy. You should have at least one tenth of his audience.
I remember the first time I heard something like actual audio out of a PC, it was with "Another World" and it was so quiet it was a whisper and I'd lean forward and put my ear next to the PC case to hear it.
6:37 The same second I just voiced in my head... "BaaaarBARIANNNN"
Great video. I certainly learnt something. Loved the tinny sound of the internal speaker, however I have fond memories of my original sound blaster and playing with Dr Sbaitso or Gran Prix hooked up to a system with two 15” speakers (amongst others). I was nearly killed asking my elder brother to help install the damn thing as he was writing his masters thesis. 😬 Worth the risk!
Thoroughly enjoyed this video. A really nice level of technical depth.
You should listen to the opening of Pinball Fantasies
Now I finally understand why that was possible and why almost no one used this!
Rad, didn't know there was this much to pre-soundcard audio!
I didn't either! It was yet another of those things where I started researching and rapidly got to a point of, "really? That happened? In 1987?"
Sound cards became popular on the Apple 2 in 1981 with the Mockingboard which had an AY-3-8910 chip. Ultima V supported two Mockingboards for 12 voices but only used 8.
Even digitalized speech existed on the Apple 2 with the 1981 _Castle Wolfenstein_ and 1982 game _Sea Dragon_ before Access’s _World Class Leader Board_ emulated 6-bit PCM via PWM called “RealSound.”
On PCs the AdLib sound card was playing catch up.
It was possible to play fake 3 voices by using 100% of the CPU. I had a program that would play Greensleeves in MS-DOS.
Very nice video. I also remember in the Windows 3.x era, there was a sound driver for the pc speaker that made it appear as a sound card and even played .WAV files. It was pretty impressive for a pc with no sound card. - ALLEY CAAAAATTTT!!!!!
Thanks! I might have to see if I can find that and have a play around.
Pinball Fantasies has some really impressive PC speaker sound
It's very cool. Obviously came quite late when there was CPU power to spare, but still impressive that they implemented a MOD player for PC speaker and then mixed in the game sound effects too. (Well, if you've already written the MOD player most of the code to do that is already there... but it still comes off even more impressive than just playing the music)
Can't relate. I was a Commodore user. We laughed at the idea of a "sound card".
Links and Mean Streets! That takes me back...
Agent X on the 48K Spectrum is another good example of the single beeper pushed to its limits.
about a year ago i made a modern program for windows that can play 16-bit wav files on the pc speaker using the click approach where at every sample time youd invert play a click if value of the sample was higher than some threshold
it technically works, sometimes pretty well, but anything complex comes out as a garbled mess
ill defo try the oneshot mode with some pwm; thanks for the inspiration
Actually.... The earliest Soundcards were sold on the S100 bus for computers like the Altair. These were more like Synthesizers than the PSG/FM sound that would associated with Computer music. A short while later the Apple II got its first "real" sound card (1978) that could generate 3-channel PSG-like music. That was the ALF MC16. It was for a time the best selling personal computer add-on ever, forcing the company ALF-Products to heavily invest into Floppy-copy hardware to keep up with the demand for people wanting to buy music files. This "forcefully" moved the company into the diskette-duplicator niche where they found great success and were finally bought up.
Before even the first real sound chip was created, there were sound cards. No games would be using these, though since there was no way of knowing the actual user base for this and integrating music into games not only for the built-in hardware but also for maybe several different sound-systems was just not possible.
The first sound-card that found some traction in games was the Sweet Systems Micro (SSM) Mockingboard from 1983. It could not only produce 6 channels of music but also could be upgraded with up to two speech-synthesizer chips. SSM was the first company to offer a free development kit to integrate music into programs. These libraries had another great feature: using the programmable interrupt controllers on the mockingboard. The Apple II did not have any form of system-independent interrupt provider. This made precise time determination very difficult and programmers had to count CPU-cycles to get any idea how much time had passed. With a programmable interrupt controller it is not important how fast the CPU is or how long a calculation lasts. The program can accurately play a note when needed. This also means that a game using that code will run always at the correct speed, even when an accelerator is installed. This concept was not born over night but developed over a time of 2 years from 1981 to 1983 where finally a free library with player-code and support could easily be used in a game or program.
This approach was later (1987) successfully used with the introduction of the AdLib Music Synthesizer Card and later the Creative Soundblaster on the IBM PC.
In a nutshell: not the sound card itself brought music to the games but the availability of "software" (code & examples) to easily use these features.
One of the first games I got after getting my 386/16 was Golden Axe for DOS and the game’s music and sound effects played through the PC speaker. It was a very low sample rate, but the fact that a speaker that was only intended to beep could emulate multi channel sound was pretty amazing. It wasn’t long before I got an Adlib compatible soundcard. I don’t remember if Golden Axe supported Adlib sound, but I remember being blown away the first time I played Wolfenstein3d not having to hear it through my PC speaker.
This video and your channel are so underrated!
That was fascinating!
Excellent video, thanks for posting. I remember various DOS apps that did fun stuff with the PC speaker, and eventually as Soundblasters became common there were emulators for them that ran as TSRs and converted any game/app using Soundblaster to PC speaker. Fun times.
Thank you! Very good video
Space Hulk.
Megalomania.
SPX turbo pascal library (I could rip the .voc files from the Syndicate: American Revolt demo, and play a jet strike through my PC speaker).
Hell, considering stuff like M.U.L.E has voice files on the NES, way before 16bit, etc, I'm not sure you've really covered the beeper properly. "Welcome Yellow Flapper!". As true now, as it was then.
Definitely going to start calling it the IBM PC J.R. now too
It's an affectation from when we were all young and had never heard of it outside an option in the "1. Hercules 2. CGA 3. Tandy/PCjr 4. EGA" menu games started with.
We'd never seen any of the IBM advertising which would tell us the correct name, but we'd definitely experienced elderly relatives who had collections of "Dallas" on VHS...
Using a batch file with Debug to play a song on the PC-speaker in DOS/DOSBox.
@echo off
REM Play a traditional german folk song
REM "All my ducklings" on the PC-speaker.
REM Usage: *Duckling.bat*
echo acs:100>tmp.deb
echo mov bx,158>>tmp.deb
echo xor si,si>>tmp.deb
REM Loop
echo mov di,[bx+si]>>tmp.deb
REM SOUND
echo call 0122>>tmp.deb
echo mov bp,[bx+si+2]>>tmp.deb
REM Delay
echo call 014A>>tmp.deb
REM NoSound
echo call 0143>>tmp.deb
echo mov bp,19>>tmp.deb
REM Delay
echo call 014A>>tmp.deb
echo add si,4>>tmp.deb
echo cmp si,6C>>tmp.deb
echo jc 0105>>tmp.deb
echo ret>>tmp.deb
REM Sound
echo mov al,B6>>tmp.deb
echo out 43,al>>tmp.deb
echo mov dx,12>>tmp.deb
echo mov ax,34DC>>tmp.deb
echo cmp di,13>>tmp.deb
echo jnc 0134>>tmp.deb
echo mov di,13>>tmp.deb
REM FreqOk
echo div di>>tmp.deb
echo out 42,al>>tmp.deb
echo mov al,ah>>tmp.deb
echo out 42,al>>tmp.deb
echo in al,61>>tmp.deb
echo or al,3>>tmp.deb
echo out 61,al>>tmp.deb
echo ret>>tmp.deb
REM NoSound
echo in al,61>>tmp.deb
echo and al,FC>>tmp.deb
echo out 61,al>>tmp.deb
echo ret>>tmp.deb
REM Delay
echo mov ax,3E8>>tmp.deb
echo mul bp>>tmp.deb
echo mov cx,dx>>tmp.deb
echo mov dx,ax>>tmp.deb
echo mov ah,86>>tmp.deb
echo int 15>>tmp.deb
echo ret>>tmp.deb
echo dw 416,FA>>tmp.deb
echo dw 496,FA>>tmp.deb
echo dw 530,FA>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 61F,1F4>>tmp.deb
echo dw 61F,1F4>>tmp.deb
echo dw 6E0,FA>>tmp.deb
echo dw 6E0,FA>>tmp.deb
echo dw 6E0,FA>>tmp.deb
echo dw 6E0,FA>>tmp.deb
echo dw 61F,1F4>>tmp.deb
echo dw 6E0,FA>>tmp.deb
echo dw 6E0,FA>>tmp.deb
echo dw 6E0,FA>>tmp.deb
echo dw 6E0,FA>>tmp.deb
echo dw 61F,1F4>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 530,1F4>>tmp.deb
echo dw 530,1F4>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 574,FA>>tmp.deb
echo dw 416,1F4>>tmp.deb
echo.>>tmp.deb
echo n Duckling.com>>tmp.deb
echo rcx>>tmp.deb
echo C4>>tmp.deb
echo wcs:100>>tmp.deb
echo q>>tmp.deb
debugnul
del tmp.deb
Duckling.com
del Duckling.com
Just thought I'd report back after being sent on an involuntary Betty Boo/Stray Cats youtube binge, with an additional one off vid diversion to The Damned song "New Rose" which took my fancy, all as a result of watching this vid. Time well spent on all accounts.
New Rose is a great track! I think I have it on a live compilation somewhere...
Maybe one day I should take you all through some of my record collection, although I fear I'd go down in your estimation.
I just got an old Dell Optiplex case for "emulator build" and it had an pc-speaker.
PC-speaker which has four pins in...
It's a 30x20mm stereo-amplified mono pc-speaker. WTF? :D
And yes, there is pcb on the back and it has four pads, gotta check what chip it has.
Good old Optiplex era Dell. If there was something they could make non-standard, they would. I once opened up a power supply to replace a defective fan, only to find they'd swapped the order of the wires in the connector...
@@TimberwolfK Yeah, even the motherboard is "upside down", gotta do some metal work to fit a "normal" b350 mobo. :D
Kudos for inserting that s3m mod by Future Crew! Long Live the PC speaker and that nasty carrier frequency 🤣
Very interesting documentary! You could do the same with FM history in PCs!
One thing I'm not able to understand... why was it only in 1987 that games started using the PIT for PWM? I mean, the PIT (8253) had been available since the first IBM PC in 1981...
Dunzhin did it earlier, and there were a few Apple II games using a similar technique but yeah, '87 to the patenting of RealSound seems to be the explosion in the technique.
My guess would be not so much the output, but getting the sounds in there in the first place. Which would have become much easier after machines like the Amiga gave widespread access to digitised sound. But that's just a guess. Plus maybe a little of memory requirements for the longer samples.
At 8:46, what song is that and what game is it from?
5:10 - what are you using to get this EDIT emulator? Was it dosbox? I miss this. alt enter up enter would exit
It's DOSBox, but using QBasic from an MS-DOS 5.0 installation.
Wizball!
Doom had a soundtrack playable with a matrix-printer.
Even the music runs on everything.
There was a drivet to windows 3.1 where yoi could do the same thing.
It was rather cpu insensive.
I've had win 95 laptop that literally only had the beeper speaker and no sound card whatsoever hahaha