Live data from Hacker News

What’s up with the Beep driver in Windows 7? (2010)

blogs.msdn.microsoft.com

81–90 of 106 posts

Re: What’s up with the Beep driver in Windows 7? (2010)

#81
post #70

Earlier quoted context omitted.

There were some DOS games that had that baked in. Here's one example from 1987 (!), that used CGA graphics. They couldn't really spare the processing power during the game itself, so they kept it for the intro and the main menu. https://www.youtube.com/watch?v=9yL-u7lsMxk

Wow that must have been magic to anyone not aware such capabilitily existed

The first time I launched a game that played less beeppy sounds than usual on my PC without a soundcard, actually almost understandable words, I nearly had an heart attack because I knew very well this was impossible. I needed a few minutes to recover.

Re: What’s up with the Beep driver in Windows 7? (2010)

#82
post #63

>It turns out that they couldn’t. And the answer to why they couldn’t came from a totally unexpected place. The American’s with Disabilities Act. I wonder how much this act has cost society. Just in this particular instance, let's say keeping this chip on PC motherboards adds 5¢ to the cost of each motherboard. Multiply by a billion PCs sold in the last 10 years (The actual number is higher, but maybe some don't have…

Nowadays that's not an actual chip anymore, but part of another (probably the superio that handles tons of legacy pc stuff in one chip). However it nevertheless needs dedicated hardware, in the form on a trace or a wire going to a more proper sound subsystem (or even a dedicated buzzer)

Re: What’s up with the Beep driver in Windows 7? (2010)

#83

That is a pretty awesome tour de force. Somewhere deep inside your computer is an (emulated) PC/AT trying to get out :-). An interesting lesson about the use of 'beep' for the assistive technologies. I see those sorts of things in architectures which have grown up over time and I wonder whether or not you could know at the time "Hey we're using this weird thing, please deprecated at your earliest convenience" or if i…

> Also an interesting take on how much Microsoft has had to unwind in a compatible way over the years. It's very much self-inflicted technical debt. From a Spolsky on Software article from 2004: > Raymond Chen is a developer on the Windows team at Microsoft. He's been there since 1992, and his weblog The Old New Thing is chock-full of detailed technical stories about why certain things are the way they are in Windows…

The Simcity case reminds me of Bryan Cantrill's talk on lx-branded zones: apparently, there was a bug in rpm which didn't touch Linux, because Linux wasn't doing things fast enough to trigger the condition. So there was some code added to check if the running program was rpm, and to pause it briefly if it was. Apparently the comment the people who wrote it left amounted to, "we wrote this, and even we feel dirty about it."

You can find the actual talk at https://youtube.com/watch?v=TrfD3pC0VSs

Re: What’s up with the Beep driver in Windows 7? (2010)

#84
post #80

Earlier quoted context omitted.

> Also an interesting take on how much Microsoft has had to unwind in a compatible way over the years. It's very much self-inflicted technical debt. From a Spolsky on Software article from 2004: > Raymond Chen is a developer on the Windows team at Microsoft. He's been there since 1992, and his weblog The Old New Thing is chock-full of detailed technical stories about why certain things are the way they are in Windows…

Well, an update is needed: the Windows testing team was huge. Now, if they remark at all a program has a problem, it will just be silently uninstalled during the next major Windows upgrade.

...That's actually worse. If a program has a problem, tell the user. Besides, the idea that things won't change has been firmly ingrained in Windows programmers' heads for years.

Heck, at this rate, we'll need WINE for Windows, so Windows can run apps for earlier versions of itself.

Re: What’s up with the Beep driver in Windows 7? (2010)

#86
post #66

Earlier quoted context omitted.

hey. your story intrigued me, so i found it and hosted it somewhere more free. Its quite rare these days. It doesn't work in Dosbox on OSX unfortunately so I couldn't see it. This is: echo Magic Mushroom Echo -------------- echo This Program was made by the R&D Team at echo the Cleveland Corp. of Australia at Hendra echo To turn 'Magic Mushroom off press any key echo Bye,Bye,Bye virus total scan (its clean): https://…

It may not work in dosbox, but mushroom.ovl is just raw 8-bit[1] linear audio sampled at 8kHz so you can load it up in your raw-audio-capable app of choice. On linux try "aplay mushroom.ovl", for example. [1] Actually only 6 bits per byte are used; presumably this was done to improve decoding speed or something.

Cool! Read as: signed 8-bit PCM at 8000 Hz with Audacity. I had to normalize it to remove a DC bias and reduce the volume.

curl http://pastebin.com/raw/uunJFtcK | base64 -D > mushroom.mp3

Re: What’s up with the Beep driver in Windows 7? (2010)

#87

This 8254 mention made me curious. Does anyone know which other parts of the original PC hardware are still present in modern machines for compatibility? (Real mode in CPUs, A20, ...)

Almost nothing, there are some components that are emulated in software/firmware.

I recall being asked to look into a perplexing problem with some legacy technology a few years ago. An 80s era radio controller system was effectively some DOS software running on a DOS embedded board. The boards were dying from old age. Replacing them with modern industrial PC boards wasn't working as expected - the software wouldn't run. The techs had tried various methods of slowing down the hardware to match the software's expectations to no avail. After much probing about (all original source code was long ago lost - if it was ever available) I found the code was crashing inside something that looked like an RS232 driver. Specifically the software was using what was apparently an undocumented scratchpad register in the 8253/8254. The modern PC's hardware emulation didn't cover that (the data was always reading back as 0xff - enough of a problem to turn the delay_n_millisecs() type routine I think I was looking at into a delay_forever() routine). The lesson, as always, avoid undocumented quirks unless you have absolutely no alternative.

Re: What’s up with the Beep driver in Windows 7? (2010)

#88

That is a pretty awesome tour de force. Somewhere deep inside your computer is an (emulated) PC/AT trying to get out :-). An interesting lesson about the use of 'beep' for the assistive technologies. I see those sorts of things in architectures which have grown up over time and I wonder whether or not you could know at the time "Hey we're using this weird thing, please deprecated at your earliest convenience" or if i…

"So," say I, "what is the madness, The state of awful system sadness, That would cause Linux such distress?" After all, the days of yore, from which this reference came before, those days are long since gone. Yes, the PDP is long since gone, and though it legacy carries on, the once-great HACTRN is no more. So once again this begs the question, which I ask through my HN session, what did feep upon your console's bell…

there should be a rule for this: all great & powerful modern emotional things can be reframed to point back to some work of Edgar Allen Poe. whether hacker related or not. the only dependency is the human condition

and/or to Shakespeare, etc.

Re: What’s up with the Beep driver in Windows 7? (2010)

#89

That is a pretty awesome tour de force. Somewhere deep inside your computer is an (emulated) PC/AT trying to get out :-). An interesting lesson about the use of 'beep' for the assistive technologies. I see those sorts of things in architectures which have grown up over time and I wonder whether or not you could know at the time "Hey we're using this weird thing, please deprecated at your earliest convenience" or if i…

The way I remember FlightSim (from first official PC clone presentation, compaq in 1982! https://www.youtube.com/watch?v=7THrlGIL9k0 ) was that it jumped directly to raw hardcoded pointers in the bios instead of calling interrupts. Another "test" was WordStar? using DOS/BIOS CP/M compatibility layer (afaik the only software ever to do that?). There were also programs expecting MS basic in the rom.

Re: What’s up with the Beep driver in Windows 7? (2010)

#90
post #66

Earlier quoted context omitted.

hey. your story intrigued me, so i found it and hosted it somewhere more free. Its quite rare these days. It doesn't work in Dosbox on OSX unfortunately so I couldn't see it. This is: echo Magic Mushroom Echo -------------- echo This Program was made by the R&D Team at echo the Cleveland Corp. of Australia at Hendra echo To turn 'Magic Mushroom off press any key echo Bye,Bye,Bye virus total scan (its clean): https://…

It may not work in dosbox, but mushroom.ovl is just raw 8-bit[1] linear audio sampled at 8kHz so you can load it up in your raw-audio-capable app of choice. On linux try "aplay mushroom.ovl", for example. [1] Actually only 6 bits per byte are used; presumably this was done to improve decoding speed or something.

Most of these applications employ this one weird trick to get digitized sound out of the speaker: https://en.wikipedia.org/wiki/PC_speaker#Pulse-width_modulat...

The result is 6 bits of resolution, along with a high pitched squeak during playback, depending on the output circuitry and speaker characteristics (it's less noticeable when a low-pass filter is added).

Post reply on HN