The PowerBook 1400 project

Posted Sunday August 28th 2005 from 53.7537, -0.3641

Having found out that my budget won't stretch to a Mac Mini, I decided to try and see what use I could make of the first laptop I bought back in 1998 (a PowerBook 1400cs) which has been sitting around unused for the past few years. It cost £890 back then - my entire wages after spending 6 weeks of my summer holidays working in a paint factory.

It has a whopping 48MB of RAM, a 400MB hard drive, a 166MHz 603e PowerPC processor and currently has Mac OS 8.1 installed. The floppy drive and 12x CD-ROM modules still work, as does the main adapter, but the battery no longer holds any charge (and replacement ones are expensive, so mobile uses are out).

It had a few changes made to it back when I used to use it. The original 1.3GB hard drive died in 2000 (thanks Norton Disklock!) and the shop that repaired it only replaced it with a 400MB drive (and charged a fortune to do so). At some point I added an additional 32MB of RAM (on top of the base 16MB), a Swann MacSurfer PCMCIA 56K modem (£105 in 2000!) and a NewerTech BookEndz docking station (which were extortionately priced, considering they are just pieces of plastic with some cables inside).

It still boots (when the power adatper is connected) - so what can be done with this aging machine?

The default configuration has no Ethernet connection (only serial for AppleTalk) - internal expansion cards used to be available, but are rare now. It does have 2 PCMCIA slots, although they are 16bit (not the newer 32bit Cardbus), which severly limits the devices which will work in them (so no USB or Firewire expansion cards). Finding a compatible PCMCIA Ethernet card was proving difficult; Ebay was looking like the best option, but I got outbid on an item while I was at the pub - by the time I got back, the auction had ended and I couldn't find any more compatible cards listed.

I did stumble across a very useful article which gave details of how to get certain brands of PCMCIA Wi-Fi cards working with older PowerBooks. After some careful digging and checking of part numbers I managed to find a compatible Orinoco Gold card (8410-WD) on Ebay (search for "orinoco card") for around £40. There are suitable Orinoco Silver cards (848441481), but these only support 64bit WEP encryption (the Gold cards support 128bit WEP - the bronze cards don't support any encryption). If you're looking for one of those cards then ensure you get the 8410-WD†(Classic Gold PC Card), 848441556†(PC Card - Gold) or 848441481†(PC Card -†Silver) - do not buy the 8421-WD (Silver) or 8420-WD (Gold) cards if you want them to work in older PowerBooks (like the 1400). If you are running 8.6 or 9.x then you can use the Orinoco 7.2 driver. If you're running an older system (I have decided to stick with OS 8.1 due to RAM limitations) then you'll need the WaveLAN 6.00.04 driver.

If you're struggling to find British localised system updaters: pre Mac OS 9 British updaters.

So I can link the PowerBook 1400 into my existing network - what can it be used for then? Quake 3 is out (although it did make a reasonable Starcraft, Tomb Raider 2, MDK & Marathon gaming machine, back when I was 16). The limitations of RAM and processor mean even surfing the web over broadband can be quite slow (and the only modern browser choices are Opera or iCab). It could handle e-mail, but I already have an iBook that I use for all my day to day needs. If nothing else, I could download some older browsers from the evolt.org archive and use it for compatibility testing web sites I develop.

Going off on an even geekier tangent, the idea of using it as a server popped in to my head. Linux looked far too complicated, so it looked like sticking with the Mac OS would be the best bet. It's not OS X though (and it has no nope of ever running it). Apache was probably out - so not a web server then (well - nothing with PHP or Perl support at least). Could these older machines running OS 8.1 run any form of Java?

Apparently, yes. I didn't know it back when I used to use it, but Java was available. Applets seemed quite popular - but I didn't really want to write an applet - just a java application that could use sockets and serve some content - be it a chat server, simple game server or a web server of my own making. It seemed that unlike OS X, Java development had stopped for the 'Classic' Mac OS, the last release being MRJ 2.2.6 - but it can be run on OS 8 to OS 9.2.2. I'm used to developing using Java 1.4.2 - MRJ 2.2.6 was designed to run the Java 1.1.8 APIs, so it might not have all the features I'm used to (Swing in particular seems to be missing - but AWT is there).

One thing which took me a while to figure out was how to deploy a Java application under a non Mac OS X system - if you don't want to make an applet but a runnable application, you'll need the MRJ 2.2 SDK from Apple's Developer SDK area (luckily it's still available for download - it's a .dmg file, so you need OS X, but once mounted, it contains a .smi file, which DiskCopy can mount). Socket support looks to be there in Java 1.1.8 (you can get a copy of the Java 1.1.8 API docs from the Sun archive).

I'm currently awaiting the arrival of the PCMCIA Wi-Fi card - once that arrives and is installed, I can test a simple socket based server written in Java on the machine. If that works then I just have to figure out what kind of server would be most interesting to write (although creating HHPP - Holland Hypertext Pre Processor - would be cool).

Tagged .