Going old school
This Christmas I will be mostly accessing the Internet using an Apple Macintosh PowerBook 1400cs (PPC 603e) 166MHz with 32MB of R.A.M. and a 400MB hard drive running Mac OS 8.1; my browser options are Netscape 4.8, Internet Explorer 5.0.2, iCab 2.9.9 or Opera 5. For rendering speed, JavaScript, CSS and images have been disabled; now we'll see if your pages are marked up semantically (that's right - those users with obsolete hardware and outdated browsers they warned you about - I'm one of them now). This machine actually supports 802.11b through a 16-bit PCMCIA card - not bad considering I originally bought it in 1998 (I paid £890, earned through 6 weeks of summer work).
Some good resources:
- System 7 Today
- Wirelessly Networking a PowerBook 1400
- The Penny-Pinching PowerBook 1400 Goes Wireless
- The Ultimate PowerBook 1400 Upgrade guide
- Low End Mac: PowerBook 1400
- The Mac Driver Museum
- Macintosh Garden
- Jags House
- Tom's PowerBook 1400 Madness
Tagged PowerBook1400.
The PowerBook 1400 project
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.
Another useful article to read is Grant C. Baxter's PowerBook 1400 FAQ.
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). We learn Java on our degree and I'm reasonable at it - I've written a game which you can play over a network and communicates using sockets. But it can't run OS X, which is how I'm used to developing my Java applications. 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). There is also a basic how to get started tutorial from Sun (although ignore their download links - they're out of date). 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 PowerBook1400.