5 ms·
Surely invoking an error message saying "CPU fan is failing or has failed, or that the power supply voltages have drifted out of tolerance" would be more simple
by invalidusernam3 5y ago
Surely invoking an error message saying "CPU fan is failing or has failed, or that the power supply voltages have drifted out of tolerance" would be more simple and more clear to the user. Anyone have any insights into the point of playing a song?
- Cthulhu_ 5y agoThat assumes the user has a working display and that the BIOS can output anything to it. I mean usually this was the case, an audio signal (between 2 and 10 beeps if there was an issue, a single beep for no issues / POST success), and a visual output indicating the problem. But a (working) display is not a given for any system, see e.g. servers.
- can16358p 5y agoDepending on how the BIOS communicates to the speakers (or especially if what they mean by speaker is the beeper on the motherboard) doing it this "weird" musical way bypassing the OS might be much simpler.
- kingcharles 5y agoIt might not be able to even boot an OS if the CPU is getting cooked, so this might be the only way you know something is cuckoo.
- Cthulhu_ 5y agoDoesn't need to boot an OS to show any data, but it may need the CPU for that already, I don't know if a BIOS or whatever it's called these days has any processing capacity of its own nowadays.
- can16358p 5y agoEven if it does, I think CPU won't really run hard enough to generate any practical heat while in BIOS settings.
- jahewson 5y agoOlder motherboards only had a buzzer which could play a tone at a given frequency. Mostly they just beeped but you could use them to play a crude song, if you were so inclined. In high school I wrote a VBA macro for Word which would do this - good times! I’d guess someone was having fun and left in the wrong code. Usually the manual would explain the buzzer meanings, e.g 4 beeps is overheat, 3 is bad memory, etc. Nowadays there’s a proper speaker and an audible message.
- ale42 5y agoAs this is done at very low level, it is hard to make a routine that can write to the screen at any possible graphics mode, and without the OS knowing (i.e. the message could disappear as soon as it appears because it would have been overwritten). Given that there are no specific LEDs to indicate those kind of faults, they probably came out with this creative way of using the PC speaker (something rarely used by the OS/applications, reducing a lot the risk of interference). For clarification, this is the internal PC speaker controlled by one of the motherboard chipset timers. It can only play square waves. To play an audio message, custom additional hardware would be needed on the motherboard...