OSDev.org

The Place to Start for Operating System Developers
It is currently Tue Apr 23, 2024 8:07 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 19 posts ]  Go to page Previous  1, 2
Author Message
 Post subject: Re: Implement a PCI standard Sound Blaster
PostPosted: Fri Dec 23, 2016 1:28 pm 
Offline
Member
Member
User avatar

Joined: Fri Oct 27, 2006 9:42 am
Posts: 1925
Location: Athens, GA, USA
~: If you are looking for DIY hardware info, this really isn't the group for it, even though there is a certain overlap among those working in retrocomputing, Raspberry Pi and similar areas. You might want to look at sites such as DIY Kit, Hackaday, or RetroPi for hardware discussions.

I suppose you could try to talk the mods into creating a HW sub-forum, too, but I doubt they will.

You could even set up your own forum for the topic if you wanted to go that route. I don't recommend it unless you think you can devote the time to running it, though, given the history of things like the Compiler-Dev group (which still needs more contributors, BTW) - previous iterations of the idea had a lot of problems with the admin flaking out shortly after setting it up, and while the current admins are doing a good job of it, it hasn't really picked up steam yet as it often takes quite a while for a forum to catch on.

_________________
Rev. First Speaker Schol-R-LEA;2 LCF ELF JAM POEE KoR KCO PPWMTF
Ordo OS Project
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.


Top
 Profile  
 
 Post subject: Re: Implement a PCI standard Sound Blaster
PostPosted: Sun Dec 25, 2016 3:21 am 
Offline
Member
Member
User avatar

Joined: Sun Sep 19, 2010 10:05 pm
Posts: 1074
Schol-R-LEA wrote:
Here's an aside which a fan of ancient systems ought to find interesting: the original Macintosh drove both the graphics and the audio in software, using the 8Mhz 68000 CPU for almost everything. It would use the interrupt timer to issue the hrefresh signals at some fraction of a second, and on the vrefresh, it gave them 180 cycles while the cathode gun repositioned in which to perform the audio. They managed to squeeze four voices of playback into that 180 cycles, and still give 95% of the CPU time to the application.


Actually, most systems worked this way until DMA became a thing in the late 80's. I know that this approach was used in everything from the Atari 2600 to the IBM PC. And even with the sound blaster ISA DMA hardware, you still didn't have enough system RAM to play more than a few seconds of audio.

So, getting an interrupt from the sound card wasn't much different from getting an interrupt from the video card.

The thing that blows my mind is that the Atari 2600 could display more colors on the screen than the IBM PC could 10 years later. Of course, there were a few "limitations". :)

But back to the original discussion...

Yes, it would be nice if the PC had shipped with better audio capabilities, but that wasn't really ever a priority, when you could purchase systems with better audio support for a fraction of the price. The advantage that the PC has always had is its hardware expandability, which necessitates software drivers, primarily for backward compatibility.

Think of drivers as the adapter that lets you play your Atari 2600 on your brand new 4K TV, or watch blu-ray movies on your 1975 black and white TV. Pretty much the same concept.

_________________
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott


Top
 Profile  
 
 Post subject: Re: Implement a PCI standard Sound Blaster
PostPosted: Sun Dec 25, 2016 5:34 am 
Offline
Member
Member
User avatar

Joined: Thu Jul 12, 2012 7:29 am
Posts: 723
Location: Tallinn, Estonia
Quote:
If I build an OS, why would I want to implement a driver?


It's what you do when you build an OS, yep. You implement or port drivers.

_________________
Learn to read.


Top
 Profile  
 
 Post subject: Re: Implement a PCI standard Sound Blaster
PostPosted: Mon Jan 02, 2017 10:18 pm 
Offline
Member
Member
User avatar

Joined: Fri Oct 27, 2006 9:42 am
Posts: 1925
Location: Athens, GA, USA
You might also want to consider the capabilities, and limitations, of the AdLib/Sound Blaster cards, and more importantly, just how those cards are emulated by current-day cards.

Here are several videos by 8-Bit Guy on the subject of sound synthesis, how it worked in older systems, and how it differs from current sound adapters.


The main thing you will notice is that these systems were mainly synthesizers, not samplers. PCM sampling, which is used by (or superseded in) pretty much every sound card made after 1994, works in a radically different fashion from a synthesizer; a synth generates a waveform, while a sampler plays back a recorded waveform.

Note that this means that a card which is purely based on the Yamaha chip that the older sound cards used could not play back voice or other sampled material. Most games of the time (1987-1993), if they had voice at all (almost none did) were distributed on hybrid Data/Audio CD-ROM, and used the existing capabilities of the CD-ROM drive to run the sampled sounds, but by 1994 cards with samplers started to force that approach out.

Most sound cards between 1994 and 2004 had both a synth and a sampler, but as recorded music playback on computers became more and more important in general, games stopped using the synthesizers and eventually even dropped PCM in its original form in favor of general-purpose compressed digital recording formats such as MP3 and HVEC. Synthesis did linger for other uses for some time, as the new cards started using more complex wavetable synthesizers around then, but the ubiquity of MP3 made it something of an afterthought by 2004 or so. AFAICT, most sound subsystems after that just emulated the synthesis using samples.

I am not an expert at all of this, so there is a good chance I have misunderstood several key aspects of this. Any corrections would be greatly appreciated. Still, the point I am making - that the 'standard' Sound Blaster was nothing of the sort, nor did it have the capabilities you seem to think it did - stands, I think.

_________________
Rev. First Speaker Schol-R-LEA;2 LCF ELF JAM POEE KoR KCO PPWMTF
Ordo OS Project
Lisp programmers tend to seem very odd to outsiders, just like anyone else who has had a religious experience they can't quite explain to others.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 19 posts ]  Go to page Previous  1, 2

All times are UTC - 6 hours


Who is online

Users browsing this forum: Bing [Bot], DotBot [Bot], Google [Bot] and 112 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group