blog · git · desktop · images · music · contact & privacy · gopher


Installing OS/2 Warp 4 again

2020-11-11

Let’s write an actual “blog post”, not a technical article. Just a story of how I spent my weekend.

These days, I try to use as much free/libre software as possible (firmware blobs are an issue) and it’s the main topic of this blog. This wasn’t always the case, of course. I grew up using DOS on a little PC with an amber monochrome screen, then Windows 3.0, and OS/2 2.1. Later followed by a long period of Windows 95, 98, 2000, and eventually XP. Linux was installed in parallel, but it took me until 2007 or 2008 to finally kick the dual boot environment and remove Windows entirely.

At some point at the end of the 1990ies, there was this very brief moment, when it was not clear if Windows 95 would actually “win”. (Or maybe it was and I simply didn’t notice.) OS/2 Warp 4 was released around 1996 and it tried to compete with Windows 95. Some say, it was technically superior to Windows 95, but it didn’t gain much traction regardless.

If you want to read more about OS/2 and its history, have a look at OS/2 Museum.

I spent quite some time using OS/2 and thus have a bunch of memories, although to be fair, I was relatively young and didn’t do “real work”. We owned an original copy back then – but believe it or not, we eventually threw it in the trash, because “nobody needs this anymore”. It was true, actually, Windows had clearly won. Only much later, I developed a certain nostalgia for it, so I grieved over this loss. :) Since around 2010 (according to my e-mails), I tried to buy a copy on eBay. I lost quite a lot of deals, because OS/2 Warp 4 is now a rarity and a lot of people actually want to buy it. For a while, I gave up on it, because it was sold on eBay for around 150-200€ – used, sometimes in bad condition! Pretty crazy. I got a copy of OS/2 Warp 3 in 2016, which was already awesome, because I used that before Warp 4. I only installed it in QEMU, though:

warp3.png warp3-qemu.png

Recently, I tried again to get Warp 4 and got lucky. Here it is:

warp4.png

I blurred stuff like serial numbers, because I’m paranoid. Nobody cares probably. It’s not like these are serial numbers that you had to type in as a confirmation – you could just install it and be happy.

Now, it would have been boring to just install this in a QEMU VM. Let’s go for a real installation on my P133 and see how much of the hardware works with OS/2 Warp 4.

Of course, I didn’t want to nuke my installation of OpenBSD. So, I asked family members if they had some old IDE drives still lying around and, yes, they did. What’s so great about this old PC is its drive bay:

drive-bay-1.png drive-bay-2.png

The main hard disk can be swapped easily. :)

I took a lot of photos of the installation process:

https://dump.uninformativ.de/hashed/21663ef/setup-part-1/

Yes, it’s german. You can still enjoy all the lovely dialogues. :)

Do I have to spell it out? Yes, the original floppys from 1996 still work. As do the CDs.

Now, the photos above stop at a certain point. The installation wasn’t finished there. Problem was, it just froze. I suspect it’s because I wanted to set up networking at this early stage (and failed to set it up properly). We’ll come back to networking in a second. Well, sad thing is, even though the system booted, a lot of stuff was missing. I had to do it all over again. On this second try, I skipped networking and, voilà, the setup did complete this time:

https://dump.uninformativ.de/hashed/21663ef/setup-part-2/

That last image with the “whirl” says “Welcome to OS/2” and it’s the first thing you see after a successful installation.

Networking

Now, networking. I really need networking, especially during this pandemic, because I don’t want go out and buy new floppy disks (which are ridiculously expensive anyway) or blank CDs. Without networking, it’s damn hard to exchange files. Plus, networking is fun.

The network card is connected to the PCI bus and it uses a Realtek 8029AS chip. This was an upgrade that was added later on. I’m not exactly sure when this card hit the market, but Warp 4 does not have a driver for it. Now, of course, being so old, I lost the original floppy with the drivers on it. So, well, what now? Search for it on the internet. You quickly end up on OS/2 Site, which offers a bunch of drivers for Realtek cards, including mine.

So, I had to get these files to my old box. How? I created a floppy image on my Linux box, which, by the way, is pretty easy these days:

# dd if=/dev/zero of=floppy.img bs=1474560 count=1
# mkdosfs floppy.img
# mount -o loop floppy.img /mnt
# cp ...

The thing is, only this old box has a floppy disk drive, my modern machines don’t have one anymore. So, I booted OpenBSD on my old box again, which has networking already set up, and used it to put that image on a floppy. This requires me to swap the hard disk again, which is a bit annoying. iPXE’s floppy image could make this a lot easier, but I still haven’t tried it.

I wasted an hour or two experimenting with the Realtek drivers. Nothing worked. Turns out, I simply didn’t understand OS/2’s dialogue. This one:

net-dia.png

The first list entry now says “RTL8029 PCI Ethernet Adapter”, which is correct. Initially, this says “No network adapter” – and you have to change this to the correct driver. I added a network adapter instead. This lead to DHCP being bound to the device called “No network adapter”, which is quite a bit weird. Yes, it appears there’s a dummy device without a driver in this situation. Of course, this device can’t get a link and DHCP won’t work. I set up networking on Warp 4 before, but I simply didn’t remember this detail.

Well, after that had been sorted out, the system got an IP during boot!

dhcp-works.png

But I still couldn’t connect to anything. So, I ran tcpdump on my router. The OS/2 box sent some odd ARP requests, something like this:

Request who-has 10.0.161.1 tell 10.0.161.0

10.0.161.1 is my router, which is corrrect, but 10.0.161.0 should have been 10.0.161.4. No idea why that happened. I simply switched back to static IP configuration, which works like a charm.

net-works.png

There’s a browser and a dedicated Gopher client!

As usual with software that old, you can only use HTTP and Gopher today. Almost all FTP servers are dead and current TLS ciphers are not yet implemented in these old browsers. Quite annoying, especially when every page forces a redirect to HTTPS. For this reason, I’m going to turn off said redirect on my web site. This probably affects rankings in some search engines, but I couldn’t care less.

Here’s a couple more random photos of the working system including some network programs:

https://dump.uninformativ.de/hashed/21663ef/random-working/

Note the lovely yellow “WarpGuide”: It was some kind of “overlay”, guiding you through the settings dialogues. One of those things that you immediately turn off.

Also, did you spot the one with ifconfig? The influence of UNIX is everywhere.

Videos

To give you some more perspective on this machine. We bought it in 1996, I don’t know the month anymore. Its CPU is a Pentium 133 and it has 64 MB of RAM (originally 32 MB). This machine came with Windows 95 pre-installed. Warp 4 itself was released in 1996 as well. My point is, this truly is a machine of that era. Granted, it has loads of RAM, but running Warp 4 is not like running DOS or Windows 3.11, because these systems are much older and the machine is actually heavily overpowered. I remember installing Windows 3.11 on it back in the day and it was so damn fast, you couldn’t believe it.

By the way, the BIOS says 1997, so I guess I performed a BIOS upgrade at some point. I really don’t remember.

If you look closely at the photos from above, you can see that the graphics card (S3 Trio 64) was recognized by Warp 4 and it even came with a driver for it. Neat!

So, how does Warp 4 feel like on this machine? I took some videos:

The major issue clearly is I/O performance. Even today, hard disks are abysmally slow when compared to SSDs. This old disk right there is even slower. The result of the hard disk being the major bottleneck for everything is that you can judge the computer’s activity by listening to the disk. That’s actually pretty handy, it was the norm for many, many years, and it’s no longer possible with modern computers.

It’s not snappy. It feels rather sluggish compared to my modern machines. The whole thing takes about 1 minute and 20 seconds to boot (my unoptimized Arch Linux takes 9 seconds at the moment). You get used to it very quickly, though. Back then, it was normal and fine anyway. And as I said, as soon as I start using my HDD on my modern machine, it gets bogged down as well: Just running ls -l in my ~/photos, which lists ~750 directories (just their names, no contents), takes 1.3 seconds with cold caches. Hard disks really are the culprit.

Fixpaks and other patches

Notice the little icon for “Netscape Navigator” on the desktop? Yeah, no, it’s not installed. Warp 4 comes with this icon, but it’s just a link – because Netscape wasn’t ready when Warp 4 launched.

You can try to install Netscape manually, but it won’t run so easily. Many programs won’t run, because you first need to install some “Fixpaks”, basically system upgrades. Here is some background information on Fixpaks.

This is where I stopped. It’s not 100% trivial and might screw up my otherwise clean installation. I first want to test this in a QEMU VM and see how it goes.

There is also a plethora of other patches and updates, as listed on OS/2 World. Phew. I don’t remember having installed all that stuff in the 1990ies, probably only required for newer software. I’ll wait and see what I really need.

Closing thoughts

Alright, so that’s the basic installation. No real programs running, yet. Fixpaks not installed, yet. That’s next up. Also, I want to give that speech recognition a try. Yeah, you could “talk” to your computer using Warp 4! If I remember correctly, it was quite a bit better than that of Windows Vista, which came out about 10 years later. However, you had to “train” OS/2’s voice recognition, which took an awful long time to do – don’t know if this needed to be done on Vista. Or maybe I misremember it and it was terrible. That’s why I want to try it again.

I’ll have to see if I can find some more floppys or floppy images with old OS/2 software on it. There’s a bunch of stuff on the internet “for free” these days, but I don’t know if it’s legal, so I’ll search in my grandparents’ basement first.

And one last thing: Fooling around with that old software is a lot of fun and you quickly start thinking that nothing has changed in the last 25 years: The desktop metaphor was already the norm (of course, it’s from the 1970ies from Xerox PARC), there was good multi tasking, there was networking. Just like today. Still, it makes me appreciate today’s Linux and BSDs a lot. While many basic ideas stayed the same, software has improved dramatically. We have come a long, long way. Don’t let nostalgia fool you.

Comments?