Atomic I/O letters column #131Originally published 2012, in Atomic: Maximum Power Computing
Reprinted here June 28, 2012 Last modified 06-Feb-2013.
Replace the cardpunch and it'll be good as new
My work got 12 identical boring beige boxes in early 2011, and I don't know what the deal was with the (Samsung, if it matters) hard drives in them, maybe they were all dropped or beaten up in the delivery van or something, but EIGHT of the drives died over the course of the year, and got warrantied with drives that seem OK.
My boss is now suddenly upset about how we sent the screwed-up drives back, because apparently it's normal for bad drives to be refurbished for resale, and once they're working again people could easily access our confidential business information that we didn't delete from the drives. The boss says the problem with a lot of bad drives is the stepper motor, and refurbishers often just replace that and the drive comes good.
We could have hit the drives with a hammer or put a drill through them, which would definitely make them un-refurbishable - should we do that in future? Could someone now be reading the emails about football I sent during work hours, because we didn't wreck the drives?
Hard drives haven't had stepper motors in them for a long, long time. Stepper motors turn by a tightly defined amount with each electrical pulse that's sent to them, and are useful for all sorts of things, including positioning the heads of an eight-inch hard drive that has a few hundred data tracks per inch. But modern drives have a track density in the hundreds of thousands per inch, and use a voice-coil system...
...a coil of copper wire between two very strong magnets...
...to position the heads with the necessary fantastic degree of accuracy.
Even in the late stepper-motor period (the early 1980s) a 10Mb drive could be a $1000-plus item, so hard drives were worth fixing, if it was possible. And with much larger tolerances in those old drives, you probably wouldn't need a million-dollar cleanroom to replace a stepper or spindle motor on an ST-506 boat anchor.
Today, though, "refurbishment" for hard drives pretty much doesn't exist. A drive that tests OK might be resold, but one with any problems at all will go in the bin. And it's possible that some bored tech might snoop on your data if the drive's not as dead as you thought, but it's not very likely unless your business is interesting enough to be a target of industrial espionage.
So by all means, pulverise drives you're sending for a warranty replacement, if the place you're sending them to will actually give you a replacement for a drive to which you have attached an RMA label with a nail gun. But don't lose sleep over the other ones.
(You could also, as a reader later pointed out, just degauss the drive.)
I've got two 1Gb DDR3 memory modules that seem to be worth what I paid for them, which was nothing. My ASRock 990FX Extreme3 has 2x2Gb modules in the RAM slots 1 and 3, and I just got these two 1Gb modules free from a mate who's upgrading, but when I install them Windows goes nuts. Bluescreens, failure to even start, etc etc.
So I removed the 2Gb modules and installed just the 1Gb ones, and ran Memtest86+ from a thumb drive to test the RAM overnight, and it says everything's fine, with no errors. So I tried booting Windows with just the 1Gb modules, and it went to hell again. Tried putting them in slots 2 and 4 instead of 1 and 2; no good. Put the 2Gb modules back in, all is well again.
I guess that it doesn't matter what Memtest86+ says when the computer obviously doesn't work with those memory modules, but is there some BIOS setting or something that'd make Windows as happy as Memtest? Does Memtest often say bad RAM is good?
Generally speaking, if Memtest86+ says RAM is OK, it's OK. But it's not a guarantee. If Memtest says a module is bad then it's almost certainly correct, but real-world memory use can do things Memtest doesn't, even in an overnight soak test. There are a lot of ways in which RAM can fail to work, and it's impossible to test for all of them.
If everything were fine until you ran a 3D game, for instance, I'd suspect either an actual problem with the RAM, or a flaky power supply, because dipping PSU voltages can cause a very long list of strange problems. Given that you often can't get into Windows at all, though, either your PSU is so flaky that you shouldn't have been able to load up the CPU and graphics card with the original RAM without crashes, or the 1Gb modules have their own problems. If they'd been static-zapped then I'd expect Memtest86+ to show errors, but static-zappage is a creeping, analogue problem with a considerable range between "completely undamaged" and "utterly broken", so that could be the culprit.
Or that RAM might just not work right on your motherboard. Nowadays, mobo compatibility (and even laptop mobo compatibility) with different flavours of RAM is generally very good, if of course the RAM meets the specs for the speed you're trying to run it at. But it's still quite possible to find memory that seems to have all the right numbers, yet doesn't work on particular motherboards.
ASRock have a memory-compatibility list for the 990FX Extreme3 here. (Note that they don't promise that some of the listed modules will work in all four slots, and overclocking isn't guaranteed for all of them, either.)
If the new memory's not on that list, it's entirely possible that it worked in your friend's old computer, but won't work in yours, and that it shows no Memtest errors.
I'd first try just one module at a time. If one of them is OK and you use it along with your existing 2Gb modules then the motherboard won't be able to use dual-channel mode any more, but the performance loss from that for most tasks is trivially small, and could easily be beaten by the performance gain from another gigabyte of RAM.
If neither module works by itself, I'd then try goosing the voltage up a bit in BIOS setup, and then try turning the RAM (and if necessary CPU) speed down as well. If none of this helped, I'd give up and turn the modules into keyrings.
I was typing away a while ago, when I noticed that Z was suddenly where Y used to be, and semicolon and apostrophe were weird accented letters. To cut a long angry story short, my keymap had switched to German, and I figured out how to switch it back in Control Panel (Win7).
Today, it happened again. How? Why? Make it stop!
One of my very, very most favourite things is when you fat-finger a hotkey combination and have no idea how you just turned on this special feature of whatever you're using, and don't even know what it's called, and now get to go on safari through menus and help files to try to figure out how to turn it off again.
You probably have a key combination, by default Control plus Shift, set to change languages, and pressed it by mistake. You have to have more than one language set in "Text Services and Input Languages" for this to do anything, but who among us can say that he hasn't added a few languages, just for fun, while drunk?
Anyway, get rid of the extra language and you won't be able to switch to it any more.
Some of you may now be wondering how easy it would be to set someone's alternative language to, say, Urdu, set the tell-tale Language Bar to "Hidden", and then set the switch-language key to, say, the space bar. You could probably do that with AutoHotkey or something, but regrettably standard Windows only lets you bind "Switch Input Language" to a few key combinations, and the only single key you can bind it to is "Grave Accent", also known as the backtick/tilde key, in most keymaps.
I'm sorry to say that binding "change language" to backtick does not make the computer change language every time the user uses backtick to access the console in a game. But it does cause a single press on backtick or shift-backtick to not give you a backtick or a tilde, even if you've only got one language installed. Holding the key down will, however, give you a string of the characters when autorepeat kicks in.
See how long it takes your victim to figure that one out.
Yesterday, my computer worked. Today, it won't boot. It doesn't even get to the Windows 7 splash screen, and the standard BIOS screens before that display one character at a time, as if somebody's typing them at about 50 words per minute. I can get into BIOS setup, but it takes several seconds to display each screen in it. It'd be quite interesting if it wasn't so annoying. Menus used to look like this on dial-up BBSes!
Has my 3GHz (Core i5 760, slightly overclocked) CPU suddenly gone to 3kHz? WTF?!
I've never seen this problem in person, but I filed away the answer when I first heard it years ago, and it turned out to work in this case:
Unplug the peripherals. Keyboard, mouse, printer, everything but the power cord. Boot again and see if the computer is now back up to speed (and complains, with an error displayed at normal speed, about the lack of a keyboard). If it does, add peripherals again until you find the culprit. If it doesn't, unplug all of the internal drives, and try again.
This bizarre problem arises when something plugged into the computer starts yammering constantly on some bus that the computer pays attention to early in the boot sequence, and allows to throw interrupts at the CPU. So it shouldn't happen if there's something flooding your wired or wireless network, but it can happen if, say, a USB device or PS/2 keyboard has lost its mind.
In William's case, the demented device turned out to be an inexpensive USB TV tuner. He threw it away, instead of keeping it to install inside the case of a deserving recipient's computer.
I have clearly taught him nothing.