by ssl-3 | 2025-12-19 22:46:39+00:00
Sound cards were cool. Kids these days with their approximately-perfect high-res DACs built into their $12 Apple headphone adapters don't know what it was like. ;)

My mom had a computer with a SoundBlaster 16. I carried that sound card across the room one day for whatever reason a kid does a thing like that, and it got zapped pretty bad with static. It still worked after that, but it learned the strangest new function: It became microphonic. You could shout into the sound card and hear it through the speakers.

But other than being microphonic, the noise wasn't unusual: Sound cards were noisy.

At one point around the turn of the century, I scored a YMF724-based card that featured an ADC stage that actually sounded good, and was quiet. I used this with a FreeBSD box along with a dedicated radio tuner to record some radio shows that I liked. That machine wasn't fast enough to encode decent MP3s in real-time, but it was quick enough to dump PCM audio through a FIFO and onto the hard drive without skipping a beat. MP3 encoding happened later -- asynchronously. It was all scheduled with cron jobs, and with NTP the start times were dead-nuts on. (Sometimes, there'd be 2 or 3 nice'd LAME processes stacked up and running at once. FreeBSD didn't care. It was also routing packets for the multi-link PPP dialup Internet connection at the house, rendering print jobs for a fickle Alps MD-1000 printer, and doing whatever else I tossed at it.)

I used 4front's OSS drivers to get there, which was amusing: IIRC, YMF724 support was an extra-cost item. And I was bothered by this because I'd already paid for it once, for Linux. I complained about that to nobody in particular on IRC, and some rando appeared, asked me what features I wanted for the FreeBSD driver, and they sent me a license file that just worked not two minutes later. "I know the hash they use," they said.

There's a few other memorable cards that I had at various points. I had a CT3670, which was an ISA SoundBlaster with an EMU 8k that had two 30-pin SIMM sockets on it for sample RAM.

There was the Zoltrix Nightingale, which was a CMI8738-based device that was $15 brand new (plus another $12 or something for the optional toslink breakout bracket). The analog bits sounded like crap and it had no bespoke synth or other wizardry, but it had bit-perfect digital IO and a pass-through mode that worked as an SCMS stripper. It was both a wonderful and very shitty sound card, notable mostly because of this contrast.

I've got an Audigy 2 ZS here. I think that may represent the pinnacle of the EMU10k1/10k2 era. (And I'm not an avid gear hoarder, so while I may elect to keep that around forever, it's also likely to be the very last sound card I'll ever own.)

And these days, of course, things are different -- but they're also the same. On my desk at home is a Biamp Tesira. It's a fairly serious rackmount DSP that's meant for conference rooms and convention centers and such, with a dozen balanced inputs and 8 balanced outputs, and this one also has Dante for networked audio. It's got a USB port on it that shows up in Linux as a 2-channel sound card. In practice, it just does the same things that I used the K6-2/EMU10k1/kX machine for: An active crossover, some EQ, and whatever weird DSP creations I feel like doodling up.

But it can do some neat stuff, like: This stereo doesn't have a loudness control, and I decided that it should have something like that. So I had the bot help write a Python script that watches the hardware volume control that I've attached and assigned, computes Fletcher-Munson/ISO 226 equal-loudness curves, and shoves the results into an EQ block in a fashion that is as real-time as the Tesira's rather slow IP control channel will allow.