Bobulate

Home [ade] cookies

Flashing, futzing and finishing

Flashing: I spent an intensely annoying morning flashing firmwares and BIOSes. I had purchased an MSI GX620 — a “gamer” laptop, but pretty nice from a developer point of view, too — and noticed that the keyboard would “stick” every now and then, repeating the last key typed ad inifinitum. Power button and trackpad would also cease responding. Either pull the battery and AC — hard power off — or plug in a USB keyboard and mouse and go for a regular shutdown, but then the machine would hang with power and fans still going after the OS says its final goodbyes. It is both reassuring and frightening that “MSI GX620 keyboard problem” turns up plenty of resources about exactly this. And a suggested solution is to flash the firmware and then the BIOS.

Easier said than done, of course, from a dual-boot nonGNU/Solaris and GNU/Linux machine. Heck, even with the Vista that was on the machine when it shipped I’m not sure you can flash. The MSI instructions all assume a DOS environment. I tried the boot disks you can create with Windows XP (which boots to “Windows Millennium”?) but no dice, abnormal program termination. I went looking in my box-of-crap in the attic and found my 3-disk set of MS-DOS 6.2 install floppies, but those no longer seem to work. Heck, it’s a wonder I even have a floppy drive to boot from — I collected a few USB floppy drives a few years back.

This kind of situation makes me long for my usual ASUS motherboards which support flashing from the BIOS itself, and can read CDs.

In any case, I needed to be able to boot an OS I don’t actually have in order to update the machine. Fortunately Daniel documented USB boot disks here, and that finally gave me enough to craft my own simple 10-step procedure: 1. boot ancient windows XP laptop strill used by the kids for Sesame Street games 2. install HP USB disk tool 3. boot modern Linux machine 3a. find USB floppy drive 4. download FreeDOS “ODIN” image 5. try to write the image to a floppy disk 6. download a smaller image, until you get one that fits before the first bad sector on the floppy (for me, fortunately, that was the 720k image) 7. move floppy to windows machine 8. format USB stick with HP tool, using system files from ODIN 9. boot defective laptop from USB stick 10. revel in C:\>

I suppose I could have gone via VirtualBox on Solaris or qemu, but I had neither installed already, and frustration seems to rapidly erode my capacity for lucid thought. In any case, I’ve now gone the day without the keyboard locking up, so the flash updates seem to have helped.

Whiteboard photosPhotos: At Akademy I always try to have some plan on capturing the spirit of the event. In past years I’ve intended to do voice recordings and always forgotten, so this time I did something much more low key: just take pictures of some whiteboards left behind in the conference rooms. This little collage of strings found on boards does seem to capture the working week, though. What are we doing? Even though we’re die-hard computer technologists, we still end up smearing ink on light-coloured surfaces.

[[ You'd be surprised, incidentally, about how many of the photos in my phone are of whiteboards at the end of meetings. Best way to remember things. ]]

Finishing: Congratulations, Gökmen and Görkcem on Pardus 2009. It looks very nice. And I really appreciate a distro that comes with TeX.

KDE 4.3 is also looming terrifyingly close, which means that there’s a fistful of OpenSolaris patches we haven’t gotten around to pushing upstream yet. Some are really peculiar, and I appreciate it when people ask me about things like bool() casts — there was one bug report about operator ?: with a bool and a QBool, which seems very peculiar to me. Interesting how QBool doesn’t have an operator bool(), only an operator void *() — I think SS12 is being extra picky here.

Finally, one of the anonsvn mirrors was down again for a bit; this was due to r.997199 which has a badly-encoded log message. Since we have a wild mix of Subversion 1.4, 1.5 and 1.6 infrastructure — and also users with clients of differing versions as well — we do not get a “clean” history. In this case, subversion 1.6 is more picky about the encoding of log messages than older versions. Since I was running 1.6 on the EBN mirror, it refused to synchronize that particular commit and went down. I have since downgraded to 1.5.2 and the mirror has resumed operation, but it’s an illustration that our source history is “interesting” to say the least and the conversion to any other SCM will once again be rife with manual labour to get it all right.

Tags: , , ,

5 Responses to “Flashing, futzing and finishing”

  1. Armijn Hemel Says:

    I know people who do funky things with GRUB, CDs, and floppy images just for this type of situation. When I’m at the office I will try to find the article for you (it is in a big pile of treeware).

  2. ephemient Says:

    As long as can boot from CD and have a spare CD-RW lying around, booting a floppy image without a floppy is pretty easy.

    mkisofs -o boot.iso -b floppy.img /var/empty
    cdrecord boot.iso

  3. Kevin Says:

    You could have tried to use flashrom: http://www.coreboot.org/Flashrom Not sure how well it would work on a laptop, but then you wouldn’t even need to leave linux to flash it.

  4. skierpage Says:

    The obfuscation and coupling and undocumented quirks of creating bootable Microsoft media are indeed infuriating, whether it’s DOS or Windows, whether on floppy or CD-ROM or USB. Every Linux distro wants you to have bootable media (even if the steps are obscure); but Microsoft must think making it damn near impossible will reduce piracy, regardless of how much it makes hardware users suffer. Bastards.

    I recently had to boot from CD-ROM to repair my Windows partition. Fortunately my PC came with a genuine Windows XP CD_ROM, but the primitive Windows installer lacks SATA controller support (even in Service Pack 3!), so you’re reduced in 2009 to “Press F6 to load drivers from your vendor’s floppy disk”. ^%$#@! No hardware vendor provides drivers on floppy any more. After several hours of struggle I got nLite running on a Vista laptop to craft me a slipstreamed bootable XP SP3 CD-ROM with the right driver.

    Hardware manufacturers should wise up and provide a Linux image for firmware updates that boots from CD-ROM or USB, contacts the hardware vendor’s site for latest download, etc. It wouldn’t be much larger than their nonsensical 9 MB Windows-only .exe installers just to install a 23 KB driver.

  5. 150gZucker Says:

    I just had a similar problem when I tried to flash the bios of an Acer Aspire One which refused to accept its own battery and does not even have a cd-drive. I simply used UNetBootin (unetbootin.sourceforge.net) to create a bootable FreeDOS usb-drive directly from my linux machine. Well, maybe next time…

    Regards,
    Stefan