The ThinkPad 850 was no ordinary ThinkPad. It was IBM’s high-end portable multimedia workstation, built around a 100MHz PowerPC 603e processor, with a list price of $12,399 (February 1996). The ThinkPad 850 was originally slated (see IBM announcement letter 195-176) to run four major operating systems: IBM’s own OS/2 and AIX, SunSoft’s Solaris, and Microsoft’s Windows NT.
The ThinkPad 850 and its smaller sibling 820 were initially announced in mid-1995 as models 6042 and 6040, respectively. In early 1996, they were relaunched under different model numbers, 7249 and 7247, perhaps to better fit into the RS/6000 numbering scheme. By that time, PowerPC editions of OS/2 and Solaris had been discontinued, and the entire Power Series brand was more or less dead. Not long after, Windows NT for PowerPC was gone, too. With only AIX left, IBM gave up on the idea of PowerPC ThinkPads, slightly refreshed the 850 with a faster CPU and better display, and rebranded it as RS/6000 Notebook 860.
OS/2 Warp, PowerPC Edition was released in December 1995. It explicitly listed the IBM Power Series 830 and 850 as the only supported hardware. Indeed the OS/2 PPC installation CD-ROM does not boot in a ThinkPad 850. Yet a brief glance at the OS/2 PPC files shows that there is support for the Western Digital WD90C24 graphics chips found only on the ThinkPads, and there’s even rudimentary PCMCIA support.
The reason why the installation CD does not boot is trivial—the boot loader is very inflexible and was hardcoded to only support IDE drives; the ThinkPad 850, being a highly exotic system, is an all-SCSI(!) laptop. Yet the installation CD-ROM contains all necessary drivers and configuration files to boot on a SCSI system; in fact IBM’s initial PowerPC development systems, the Power Series 440 (Type 6015, aka Sandalfoot) were SCSI based.
Tweaking the Installation CD
The credit for for figuring out how to make the installation CD-ROM boot goes to Tero Kaarlela. His method involves editing the CD-ROM image, attaching an external SCSI enclosure with a SCSI disk to the ThinkPad, installing OS/2, moving the hard disk into a different system, editing the hard disk contents, and then booting OS/2. Editing the CD-ROM image and burning a modified copy is easy enough. Finding the additional hardware is not.
Fortunately there is a far easier way to do this. The trick is simply modifying the installation CD-ROM in two locations instead of one. That way, the installed OS/2 system will be immediately able to boot from SCSI.
There are several occurrences of
PN_BOOT_CONFIG="boot.cfg" in the CD image (PN stands for Personality Neutral, meaning that it refers to the IBM Microkernel itself, not the OS/2 “personality”). At least the first and last of these need to be changed to
PN_BOOT_CONFIG="boot.sci". The first occurrence controls the CD-ROM booting; the last affects the installed OS.
Installing the system is very straightforward, as there are not too many options. No multi-booting is supported, as a boot manager for the Power Series systems was never available.
The installation is extremely slow—the ThinkPad CD-ROM is only a double speed model, and has poor seek times. And the OS/2 PPC installer performs an outrageous number of seeks.
The initial installation creates (not always) a functioning system, but additional components such as the Bonus Pak and extended documentation need to be installed later through the Feature Installer. This is mentioned in the README file.
There is no audio on the ThinkPad 850 under OS/2, unlike on the 830/850 desktops. The fault lies in the inflexible device management. The IBM Microkernel does not perform full hardware discovery and built-in devices are generally described in hardcoded “stanza” files.
Since the audio hardware in the Power Series ThinkPads is extremely similar to the desktops (Crystal Semiconductor CS4232), it should be possible to get it working. Indeed, it only takes editing one text file.
In the file \MK\PPC_INFO.STZ on the boot drive, the line
built_in = ppc_planar_audio_sandalfoot needs to be copied from the 00FE section to the 6042 (for ThinkPad 850) or 6040 (for ThinkPad 820) section in the same file.
With this trivial modification, digital audio works, at least for output. MIDI playback works as well, using the software synth which unfortunately never made it into the Intel versions of OS/2
How it Works
How well does OS/2 work on the ThinkPad 850? Not very well. The system is generally somewhat unstable, unlike Windows NT or Solaris. That’s no doubt part of the reason why OS/2 PPC never went anywhere.
DOS sessions do not work on the ThinkPad. It is unclear where the problem might lie.
The OS dumps an impressive amount of debugging information onto a serial console. That probably contributes to slow boot-up times and generally somewhat sluggish operation.
There’s no networking support in OS/2, since the feature was never finished. Of the four commercial operating systems (AIX, OS/2, NT, Solaris) available for the ThinkPad 850, OS/2 is the least polished and usable.
OS/2 for the PowerPC was a very ambitious project, probably too ambitious. Analyzing the reasons for its failure would be very interesting, but the persons responsible may not have much of an incentive to speak about it…
well… at least was possible to take some nice screenshots about the installer.
There are 2 possible reasons why DOS doesn’t work in your configuration. Hervé (QEMU 43p emulation co-author) said that Power Personal workstations have a sightly different microcode from other RS/6000 machines which are capable to run something else than AIX, like the 43p family and Thinkpads which are essentially RS/6000 laptops. One possibility is that Power Personal firmware in PP machines have microcode helper bits for the DOS MVDM. Since them don’t exists on ThinkPad firmware, MVDM emulation core will fail.
Other less probably possibility is that boot.sci doesn’t have the correct drivers enabled, boot file misconfiguration, a driver file is corrupted, etc.
The ThinkPad is a Power Series machine. The firmware is indeed different between RS/6000s and the Power Series systems, but I highly doubt that makes any difference once an OS is booted. I have not seen any references to the firmware providing any run-time services, and I can’t quite imagine what PowerPC firmware could do to help with emulating x86/DOS.
Corrupted files are out of the question (original CD was used to create the modified ISO image), but buggy/incomplete boot.sci or other configuration files is a very good possibility.
Is this the version of OS/2 that ran on top of the Workplace OS microkernel, or was that something else?
It is the version of OS/2 that ran on top of the IBM Microkernel. It is also more or less what “Workplace OS” ended up as.
Two billion dollars… It would have made more sense to finish what Microsoft had started with NT OS/2, and just flesh out the cruiser personality on NT.
Although I’m not all that sure that MS would allow anyone then, or now to write personalities for NT, as that interface is all ‘undocumented’…
IBM had something 2,000 programmers working on OS/2 for PPC split between microkernel and OS/2 personality. Add the various marketing efforts and the expenditure of almost a billion dollars a year is plausible. If IBM had placed that much staff into the project and suffered the same level of inconsistent planning and bureaucratic infighting that plagued WPOS, IBM could have partnered with anybody and had a similar unsuccessful result.
I wonder what happened in the mid-90s to project management. Multiple companies had planned on incredibly complex operating systems that would have most every feature conceivable. Each one projected a release in about a year after starting. It took several years before the pieces were put together and the discovery was made that the new OS was a poor fit for market conditions.
@Jason Stevens: Yea, I have said something similar before. It is hardly the worst thing about the MS OS/2 2.0 fiasco though.
I guess the funny thing about the 1990’s and operating systems was the advent of Mach, and microkernels. Everyone wanted this magical OS that could run EVERYTHING, all you had to do is report your kernel to use Mach, and you could join the fun. Even processors like the PowerPC were built to switch endian on the fly to preserve big/little stuff. The problem is that micro kernels are slow, somehow everyone thought that issue would be solved in hardware. Nobody wanted to be the ‘guest’ personality on someone else’s OS/hardware combination, and truth be told getting things working proved to be so much work, the OSs wound up being standalone. Not to mention nobody had any real scheme how to share disks in even a dual boot brave new world.
Ironically the ‘solution’ had been staring people in the face the whole time with VM/370 and of course Intel’s 80386 microprocessor’s v86 mode. Personalities wasn’t the way to go, rather virtualization.
So here we are, in the future more so because of companies that specialized in PC emulation on the Macintosh and other RISC processors were sitting on what would become the answer. It wasn’t until the late 1990’s with the rise of VMWare, Bochs, and the like that brought us to a better solution today.
The other funny thing is that there’s one pretty successful OS out there built on top of Mach… OS X (nee NeXTSTEP). And QNX should disabuse anyone of the notion that microkernels have to be bloated or slow. I think in the early 1990s, microkernels were as much of a silver bullet as RISC. In the case of Workplace OS, the two combined to create a spectacular explosion.
It’s interesting that virtualization/emulation is something that’s always been around in the PC world, but very much a fringe thing. It didn’t become a buzzword until after the technology was pretty mature, and mega-corporations like Microsoft pretty much missed the boat.
When you look at all the hard work that went into Windows/386, OS/2 1.x and OS/2 2.x you’d think that ‘virtualization’ thing would have been MS’s bread & butter.
It was my understanding that all the MS-DOS and Windows 3.0 emulation support was all MS’s doing. I wish I could find that screen shot, but I do recall the few pictures I’ve seen of MS OS/2 2.0 is that the MS-DOS preferences looked a lot like the Windows 95 ones. Not to mention the whole DPMI thing as well.
Looks like PPC Thinkpads uses a standard Crystal CS4232/CS4231 ISA AudioCodec. If the drivers are included with OS/2 PPC, with a little tunning, you should get the sound working. You can get the DMA/IRQ configuration for this codec from the WINNT4 driver disk INF file.
You maybe would like to check this for more info.
Virtualization would not solve the problems personalities were meant to solve. Virtual machines make it difficult to communicate between programs; part of the whole mid-90s concept was building structures out of various applications from different companies and even different operating systems. There seemed to be a belief amongst second-tier OS vendors that the “killer app” no longer existed. Instead, most of the desktop market headed to systems with the most good enough applications leaving vendors without a rounded portfolio in the cold. With personalities, one would have the best Unix apps, the best OS/2 apps, and the best NeXTSTEP apps and thereby outdo Windows with its selection of merely good enough applications.
A secondary related problem pushing personalities was government plans to standardize everything on a single GUI environment. Don’t have the environment; no more government contracts. Able to run the environment in a virtual machine; the performance drop caused by virtual machines would give a competitive advantage to those running natively. Of course, governments went for faster, cheaper and shipping instead of an idealized properly designed and secured single ultimate system that was going to be available in six months, except that every six months the six month timeframe got extended another six months.
Part of the problem for VMs and microkernels was that the RISC CPUs never managed to outperform Intel’s offerings by as much as promised. The PowerPC was supposed to be twice as fast; it actually only had about a 20% advantage. With the 16-bit Windows and DOS VM available, 16-bit Intel software ran slower in cross-architecture emulation than it did on the several year old computers that users would have migrated from. The microkernel and the poor state of PowerPC tools meant that OS/2 PPC would have been slower running ported OS/2 programs than running regular OS/2 on Intel’s best chip. Tough sell: slower yet costs lots more.
See the “Recovering Audio” section I added to the article a few days ago 🙂 I used Solaris as a source of information, simply because that’s what I happened to have at hand. The short story is that all the (released) IBM Power Series machines used the CS4231/CS4232 chip, but used two different configurations. The ThinkPads used the same config as the old Sandalfoot board; the 830/850 desktops used a different configuration. I wonder why.
All it took to get audio going in OS/2 was adding one line to a text configuration file…
In retrospect, it seems incredible that anyone would take seriously the notion that combining unproven, highly complex software with unproven hardware was a good idea. I guess it’s one of those “it made sense at the time” things.
Virtualization certainly isn’t the same thing as “personalities”. It’s in some ways much less convenient, in other ways much more powerful. But I’d argue that it has proven to work considerably better than personalities. In my opinion, the reason for that is that virtualization uses hardware as the boundary between the host and guest software. And hardware is far more stable than software (see IBM’s trouble in supporting the latest Windows 3.x and Win32s under Win-OS/2 as a case in point).
>Corrupted files are out of the question (original CD was used to create the modified ISO image)
The source for the ISO being the original CD doesn’t rule out data corruption; if the disk was physically damaged, wouldn’t that show up as data corruption in the resulting ISO?
It would cause read errors. The data on CDs is protected by several layers of error correction and detection, and the chance that data would be silently corrupted is vanishingly small.
Ahh that takes me back. Had access to a Thinkpad 850 back in the day, with the camera module. We played around with NT and AIX on it. I tried getting AIX Ultimedia running on it, as it should have supported the camera. But there was insufficient disk space to install the required packages. And since it was a SCSI unit, I could not simply swap in a larger ThinkPad HDD.
Also tried to boot the OS/2 PPC edition CD, but indeed it would not boot and never tried to figure it out as it was not listed as supported. I did have access to various Sandlefoot and PC830/850 systems, but without networking support or any real application, running OS/2 on them was rather useless. In the end we ended up using a few of the 850’s as low-end AIX servers for software development.
Yes, finding replacement SCSI drives for the Power Series ThinkPads was not so easy. Too bad really.
And yes, OS/2 for PowerPC never got to the “Connect” version and without networking, it was just very limited.