February 11, 2003

More on BIOS hacking

Today was the day to finish the setup on a firewall/LTSP server, and to test one of the thin clients that go with it.

The server was pretty much a snap and should be ready to go. Red Hat has a new kernel out for RH8.0, 2.4.18-24 if memory serves. There aren’t any readily available FreeS/WAN RPMs that I saw, so I had to update my FreeS/WAN spec file to build with the new stuff. I took the opportunity to make it build correctly as a regular user too, which has the side effect of not screwing up the kernel source in /usr/src. On the down side, this means making a copy of /usr/src/linux-2.4. Anyway, it worked. I’ll try and remember to post my spec and maybe my patches, if relevant, here later. (Right now the machine is turned off and I don’t particularly feel like plugging it back up.)

Now we move on to the somewhat sore subject of the client. I told the person procuring these “thin clients” (read: stripped down PC) that I needed something that would net boot, and I needed to test it before they bought it — unless they specifically contained something normal like an Intel or 3Com card. Did I get one to test? No. They gave me a slightly computer that supposedly used the same motherboard, and they gave it to me late in the game. That was when I did my previous BIOS hacking excursion, which miraculously worked. So now the final product gets in, so I mail the BIOS off to my co-worker (read: boss) and tell him to flash it to all the PCs, look for “something weird as a boot option,” and we should be good.

I remember him calling and talking about how he was having trouble flashing. I told him he just needed to try about every AMI flash utility on the Amptron (the manufacturers of these PCs) website and one should work. I cannot recall him calling me back to tell me anything different other than (basically) “everything is flashed.” So he asks me to test one of the PCs, so I bring it home.

Somehow I knew something wasn’t going to be right, but I didn’t really know what. Perhaps I should have taken the hint that none of the computers were packed up; they’re all sitting on a table, lined up, built, but not boxed or anything. (We’re delivering… this Wednesday. Date was just set… Monday.) Anyway, I boot the thing up, no Etherboot. I check the BIOS and, lo, there is no via-rhine.lz boot option. Hark, I believe this computer has not been flashed at all! Indeed, it proceeds to quite happily go in to the Novell RPL boot loader, which I do believe I had removed from my BIOS.

I don’t have any real concrete evidence to prove that he didn’t flash the computers, I suppose. Maybe the flash utility thinks it worked. Still, I think my instruction of “something real weird” in the boot menu should have been a sufficient test, because there wasn’t anything in the boot menu that looked out of place until you loaded my BIOS. Given this particular person’s history, I do not give him the benefit of the doubt, and instead speculate that one of two things happened. The first possibility is that he couldn’t figure out the flash, left it for a few days, then thought for some reason he’d done it. To every computer, I guess. The second possibility is that he couldn’t get it to load, didn’t want to keep fucking with it (i.e., work) and instead decided to hand me the computers in the hope that either (a) they’d magically work, or (b) I’d fix them (a.k.a., doing his work for him).

Needless to say, I’m a bit incensed about this.

Anyway, it turns out my handy AMINF332.EXE wasn’t going to flash this board for me. The board, incidentally, should be identical to the one I originally made the BIOS for and tested with; apparently it is not identical. The flash utility was giving me the lovely “No chipset/part” error, or some such. At some point I found the magic /X flag to the AMI flash utility. This is a little interactive text UI with menus and such where you can select options a bit more easily. Here I found a catalog of “chipsets” and “parts.” I eventually figured out that I needed to manually select my VIA chipset (which was actually marked P4M266/8233C in AMINF332.EXE) and my flash “part” number. I found the 8233C bit when I found out that VIA actually makes this whole motherboard and read some docs on their site. For the flash chip I actually peeled the sticker off of the BIOS chip and roughly matched the part number to a similar part number in the flash utility’s catalog. After this, you select the file you want to flash, and it goes about doing it.

This actually ended up working, even in spite of a mistake or two I made. For example, one time I accidentally picked the wrong part and ended up trying to flash some AMD flash chip. The computer hung when it went to try and write the BIOS, and the BIOS was intact upon cold boot. I think I may have even used the latest AMI flash utility off of Amptron’s site.

Tomorrow: my revenge upon those who would deceive me!

February 6, 2003

How I spent my Wednesday

Spent most of the day configuring a firewall for a client… which I just installed yesterday evening before dinner on a rush order. Basically more blundering at work. Whatever, things all worked out, despite piss-poor planning and complete lack of responsibility.

FreeS/WAN kind of pisses me off. Because I had an IP wrong in one connection a particular firewall wouldn’t start up any of its connections. Further it left messages that some might consider misleading in the logs about “wrong key.” Yes, it was the wrong key, for the random host you were trying to communicate with, of course; it still left me scratching my head for a bit before I decided to disregard the error message. The configuration of FreeS/WAN seems a bit fragile, perhaps. Once it’s up and running, though, it’ll pretty much stay that way forever, in my experience.

Picked my Donnie Darko soundtrack back up. I think I decided it was ready, so I’m burning it to CD now. Then I’m going to take it off to WAVs with EAC. This will have all my CD Architect EQ and pauses and stuff in there. I would rather just have CD Architect write it out with this information to new WAV files for me, but it quite seriously doesn’t have this functionality as near as I can tell. Ripping it off a CD-R might be the next best thing. It think I’ll initially only distribute it in Vorbis and maybe FLAC. Maybe I’ll make MP3s later.

I do have this issue of what to do with the extra songs some nice person mailed me about. I think I mentioned this before. On one hand I’d like to include these songs, but on the other hand… I just realized I don’t have the room for them. So I think this version of the soundtrack will be released as-is, and maybe I’ll go back later and include some of these missing tracks. Doing a bit more searching on the web — and I don’t know how I didn’t find these the first time through — got me more references to people talking about the missing tracks. EOFFTV’s Donnie Darko listing seems to include the tracks, as does IMDB in its credits I’m told. Some strange page at Geocities also lists all these songs, though in a bit more readable fashion. This page also claims that the songs weren’t distributed as a soundtrack because of the money involved in licensing them, which I expected. Some entity’s “CD club” has a track listing they propose for a Donnie Darko soundtrack. Finally, here’s A Google cached page of some weird Donnie Darko listing including tracks from the score and the songs credited in the movie. So whatever.

I just moved my Donnie Darko working directory over to verin. Seems to be working just fine. Now to EAC to that drive. (My local disks are pretty damn full.) It’s fast enough for my tastes.

Oh, I forgot to mention: emacs-w3m doesn’t quite work all the time. Once I realized it doesn’t seem to be capable of keeping track of the cookies that PhpWiki is sending it to (presumably) store my user ID in, I didn’t care to keep it around. Too many things just weren’t working right with it. So I’m not using w3m from a terminal window with emacsclient as my external editor for <TEXTAREA>s and a bit of help from auto-mode-alist in my ~/.emacs. I’ll update my .emacs on this web site some time in the near future perhaps.

February 5, 2003

w3m, PhpWiki

I’d love to say I’ve done something of note to write about here… but I really haven’t.

I compiled w3m 0.3.2.2 and emacs-w3m 1.3.3 and packaged them in RPMs. I’ve got them for PPC. Let me know if you need them. There is a small problem when going to an SSL-secured site with an invalid certificate and HTTP basic authentication when using emacs-w3m; I had to comment out a line in the source. E-mail me if you’re interested in any of that.

Also installed PhpWiki from CVS. Pretty stable, can’t say I see much of anything wrong except for its determination of DATA_PATH. I had to do:

if (!defined('DATA_PATH')) define ('DATA_PATH', '');

In my index.php. Without this it was producing relative links that looked like //foo/bar, which both Mozilla and IE seemed unable to deal with. Note that my phpwiki directory is DocumentRoot. I’ll also note that I didn’t discover this myself, because Mozilla wasn’t indicating that there were broken images on the page, instead rendering just the content of the ALT attribute for the images. IE actually put the little empty frames with broken image icons around the missing images (IE 5.5).

PhpWiki was quite easy to set up. It seems sort of fast. Its markup has so far been adequate. I’m a bit concerned about its tables support, particularly since the general-use (not definition) stuff looks like it’s been deprecated somewhat? So far pleased, though. Especially when editing from emacs-w3m.

I’ve got something like 18 tickets open in our new ticketing system so far. How exciting. I’ve been closing out stuff as quick as possible, and at this point I’ve got several sitting open or “stalled” because I’m waiting on other people.

No problems with the new array so far. I’ve downloaded a few things on it with no problems. Copying files to /nfs/* on my Linux box then opening them up with my Windows box is also very convenient. I should start work on my Donnie Darko soundtrack again, I guess, and start throwing other files onto the new drive. euphorik is still concerned about its usability I think, but I feel bad letting it languish unused. Haven’t moved any computers but my two over to using the new systems.