Anyone trying to disassemble the PC DOS 1.1 boot sector soon notices that at offsets 1A3h through 1BEh there is a byte sequence that just does not belong. It appears to be a fragment of code, but it has no purpose in the boot sector and is never executed. So why is the sequence of junk bytes there, and where did it come from? The immediate answer is “it came from FORMAT.COM”. The junk is copied verbatim from FORMAT.COM to the boot sector. But those junk bytes are not part of FORMAT.COM, either. So the question merely shifts to “why are the junk bytes in FORMAT.COM, and where did they come from?” It is not known if anyone answered the question in the past, but the answer has been found now, almost 40 years later—twice independently. This kind of digital archeology is deeply fascinating.
Legacy OSes Archive
MicroWeb is a web browser for DOS! It is a 16-bit real mode application, designed to run on minimal hardware. This is a thing that exists. Incredible.
So. What is DESQview/X? Many people, in the current day and age, may have never even heard of this system from the mid-1990s. Its predecessor, DESQview (without the “/X”) which was first released in 1985, was a multi-tasking, windowing system for DOS. It allowed someone, with very modest PC hardware, to run multiple text-mode DOS applications at the same time. With overlapping, resizable windows. Pretty darned cool. This multitasking wasn’t the cooperative multi-tasking that we saw in early Windows (through 3.11) and MacOS up through version 9. No sir-ee bob. DESQview had true, preemptive multi-tasking. Fast. Stable. Lightweight. It was downright impressive. But it was all text-mode. Then DESQview/X came along, in the 1990s, bringing a complete X11 (aka X Windows) graphical interface with it. Impressive, for sure. I have heard of it, but never actually used it or even tried it. This article has piqued my interest, and I’m definitely going to fire up a VM and play around with this. For more in-depth information, there’s a book called DESQview/X: A Technical Perspective from 1990 on Archive.org.
Running Windows 3.1 in VMware (or seemingly, QEMU, but it’s not yet tested), but annoyed by having to grab and ungrab the cursor manually? Wish you could just move the cursor in and out like a modern OS (one with USB tablet support or VMware Tools drivers), with no Ctrl+Alt dancing? Or want to control your cursor at all under the ESXi web UI? (It doesn’t do relative input.) With this driver, now you can. It implements the interface that VMware uses (the backdoor), replacing the existing PS/2 mouse driver. Vital for anyone who runs Windows 3.x virtual machines.
In the brutal future of Frank Herbert’s Dune, computers are outlawed and high level computations are done by specially trained and bred humans called mentats. In Herbert’s world, there’s something elegant about old solutions to new problems. Good then that Oscar winning Dune screenwriter Eric Roth banged out the screenplay using the MS-DOS program Movie Master. Roth writes everything using the 30-year-old software. “I work on an old computer program that’s not in existence anymore,” Roth said in an interview in 2014. “It’s half superstition and half fear of change.” Roth wrote the screenplay for Dune in 2018 and explained he was still using Movie Master on a Barstool Sports podcast in 2020. That means Dune was written in an MS-DOS program. There’s really no reason to stop using software that you like, assuming you can make it secure and ensure your work is properly backed up. It’s trivial to set up a DOS environment, and it’s trivial to ensure not just the files you’re working on, but the entire DOS environment itself is backed up. This applies to many old and outdated platforms – there’s countless ways to virtualise, or to go on eBay and buy some original hardware.
A number of years ago, the Computer History Museum together with Microsoft released the source code for MS-DOS 1.25 (very close to PC DOS 1.1) and MS-DOS 2.11. I never did anything with it beyond glancing at the code, in no small part because the release was rather poorly organized. The obvious gaping hole is the lack of any source code for IBMBIO.COM. I do not know exactly what arrangement IBM and Microsoft had at the time, but in the days of DOS 1.x and 2.x OEMs did not get the source code for IBMBIO.COM/IO.SYS suitable for PC compatibles. I toyed with the idea of writing my own IBMBIO.COM replacement, but eventually gave up because it’s not a totally trivial piece of code and I had no real documentation to work with (until much later). The MSDOS.ASM source code obviously uses the IBMBIO interface, but makes no attempt to document it. The provided IO.ASM source is quite useful, but SCP’s hardware was different enough from the IBM PC that it is of limited utility. So, disassembler it was, and I produced reconstructed source code for PC DOS 1.1 IBMBIO.COM. Actually assembling it turned out to be a bit of an adventure; more on that below. More early DOS shenanigans to brighten your day.
A number of years ago, an 8″ disk containing Seattle Computer Products (SCP) 86-DOS 1.0 was successfully imaged. The newest files on the disk are dated April 30, 1981, making the disk the oldest complete release of what was soon to be known as PC DOS and MS-DOS, about a month older than a pre-release of PC DOS from early June 1981. While it is possible to run the 8″ disk image with 86-DOS version 1.00 under an emulator, it of course doesn’t run on a PC or any PC emulator/virtualizer. That’s a shame because most of the utilities included with SCP’s 86-DOS run under DOS just fine. In theory, it should be possible to provide a PC compatible “BIOS” component (IBMBIO.COM or IO.SYS equivalent) and run the rest of the system more or less unmodified on a PC. In practice, it can in fact be done. Behold PC-86-DOS 1.00, running from this disk image. In case you don’t know or remember, Seattle Computer Products was the company Microsoft bought the rights to DOS from, making SCP’s versions of DOS some of the oldest in existence. Getting these old versions archived and running on modern emulators is critically important for the field of computer archeology.
In 1985 Steve Jobs resigned from Apple and founded NeXT Inc. in order to build the NeXT Computer. It was ahead of its time and had amazing features thanks to the NeXTSTEP operating system, most famously used at CERN by Sir Tim Berners-Lee to create the World Wide Web. NeXTSTEP later became OPENSTEP and when Apple acquired NeXT in 1997, they used it as the basis for Mac OS X and iOS. If you’ve done any Mac or iOS programming, you’ve seen the echoes of NeXTSTEP in the type names – NSObject, NSString, NSDictionary, and many others all come directly from NeXT (NS = NeXTSTEP). These computers cost about as much as a new car when they first came out, so they were out of reach for most people. What was it like to use a top of the line system in the early 90s? Let’s build our own and find out! Exactly as it says on the tin. A fun few hours.
Terry Davis may not be as well-known as Linus Torvalds, but his open source operating system may be a legacy that will live on forever. What is it, and how do you use it? I honestly never expected something like TempleOS and Terry Davis to make its way onto a popular YouTube channel like Linus Tech Tips (and OSNews even makes a small cameo). Linus and Anthony do a good job of providing an overview of TempleOS and its creator. Davis used to frequent OSNews, even during the harsher spells of his illness, and it wasn’t easy to deal with someone like him, even in a small community like OSNews. He didn’t just post religious ramblings, but also deeply racist ramblings. It’s sad that, like so many others, he wasn’t able to get the medical help he clearly needed.
I was working in the mobile phone industry just as smartphones were taking off. I saw the Palm Pilot rise and fall. I witnessed NEC and Sagem and a host of companies launch smartphones and then disappear. But the greatest tragedy of them all was Nokia and their Symbian Operating System. Symbian was, for its time, a brilliant OS. It ran 3D games smoothly, had terrific hardware support, a decent ecosystem for developers. And it was bloody annoying for users. Every few minutes, Symbian would interrupt you to ask “Are you sure you want this app to connect to the Internet?” His final paragraph has a point.
The Counterpoint program launcher was supplied with the Amstrad PC5086 and other Amstrad PCs from that era. It acts as a user-friendly front end, replacing the full GUIs (Windows 2.0, or GEM) supplied with previous models. The Amstrad-branded version opens with a warning that it should only be used on Amstrad computers. However it appears to run successfully in non-Amstrad environments, such as the virtual machine used to make these screenshots. I love discovering user interfaces I’ve never known about this before, and this one fits the bill just right. Wild UI experimentation was the norm during the late ’80s and early ’90s, before we all settled on what we’re all using now. Digging into the past and learning from even relatively obscure footnotes such as these is fascinating.
I’ll be setting my system up on a Windows machine, but you could just as easily set it up on a macOS or Linux machine. When I first attempted this install, I used VMware Workstation 14 Pro for Windows. After going through most of the installation process I couldn’t get OpenStep in to a color screen mode no matter how much I tried. I eventually found out that VMware Workstation doesn’t support the proper VESA display modes, and try as you might you’ll get an error on boot that says “VESA Mode Not Supported.” Fortunately, Virtual Box – which is cross-platform between Windows, macOS, and Linux and completely free – does support the proper VESA mode and works great for the installation of OpenStep. Still, there are some quirks when setting up your VirtualBox VM initially. The VM must have 1 processor with 1 core, 64MB of RAM, and a 2.0GB hard disk on an IDE controller. You will need to configure one IDE CD-ROM drive and one floppy drive. The hard drive must be at IDE 0:0 (Primary Master), and the CD-ROM drive must be at IDE 0:1 (Primary Slave). You will have to edit the properties of the VM upon creation to ensure you adhere to these standards. All other default options of the VM during the creation wizard can be left alone. NextStep is a lot of fun to explore and play around with, since you can clearly see the early days of Mac OS X in there, for obvious reasons. It’s definitely worth it to set an evening apart and follow this tutorial.
The AlphaSmart dana is technically a Palm OS PDA, in the same way that Hannibal Lecter is technically a famous chef. The dana does run Palm OS 4.0, but it has almost reversed priorities from a normal PDA. For example, I drafted college essays on a dana, but never used the calendar or address book until I began writing this article. In contrast, Palm OS founder Jeff Hawkins distilled the average PDA user’s needs down to, “All I really care about is calendars and address book and trying to coordinate with my secretary.” Palm designed their operating system to organize a social schedule, but AlphaSmart Inc. used that codebase to create a device that focused on expression rather than organization. AlphaSmart was founded by ex-Apple employees who designed simplified computers for classrooms that couldn’t afford high end computers. AlphaSmart achieved these lower costs by hyperfocusing on composition. Those lower costs became irrelevant as laptop prices dropped, but the hyperfocus on composition itself has become more relevant in an era of distraction. If we consider the dana as a device for producing drafts, even its flaws are transformed into strengths.
The Multicians web site presents the story of the Multics operating system for people interested in the system’s history, especially Multicians. The site’s goals are to: • preserve the technical ideas and advances of Multics so others don’t need to reinvent them. • record the history of Multics, its builders, and its users before we all forget. • give credit where it’s due for important innovations. • remember some good times and good people. A great initiative, and a treasure trove of information about MULTICS, the mainfraime timesharing operating system that arguably influenced every single operating system we use today.
My need was seemingly simple: I set up an old ThinkPad 760XL (166 MHz Pentium MMX) running DOS for my son to play 1990s games on, especially but not exclusively Sierra and LucasArts adventures; for that purpose, the laptop is quite suitable, it has a decent ESS sound chip and a CD-ROM. Moving data to the laptop on a CF card with a PCMCIA adapter is not difficult, but it gets old; it would be really handy to have the laptop on the network, accessing the home NAS via either SMB or NFS. The laptop is of course old enough that it has no built-in Ethernet or WiFi, although it has two PCMCIA/CardBus (at least I believe they’re also functional as CardBus) slots. But the laptop is portable, and it’s in a corner of the house where there’s no Ethernet socket nearby. So WiFi would be really great. But is it even possible to get a DOS laptop on a WiFi network in 2019? The short answer is “yes, but”. The long answer follows. That link points to part 1 – part 2 has also been published. Setting up modern wireless networking on older devices or operating systems can be a major stumbling block – there’s not only hardware and its support to consider, but also things like encryption and support for modern wireless security standards. Many of the devices in my Palm OS and PocketPC collection, for instance, have wireless support, but will often lack support for WPA2. Often, the only viable solution is to create a pretty much open guest network, which is not something I’m a big fan of. I’m glad I’m not into MS-DOS like the author is, because I certainly wouldn’t want to tussle with this problem.
Meet the ZedRipper – a 16-core, 83 MHz Z80 powerhouse as portable as it is impractical. If this introductory sentence doesn’t grab your attention because you’re dead inside, maybe this will: In the course of my historical computing hobbies, I stumbled upon something that I thought was very fascinating – relatively early in its history, CP/M supported a ‘networked’ version called CP/NET. The idea behind it was was one that will still feel pretty familiar to most people – that an office might have one or two ‘real’ machines with large disk drives and printers that it shared with ‘thin-client’ style machines that we’re basically just terminals with CPUs and RAM attached. Each user could basically act as if they had their own private CP/M machine with access to large disks and printers. This should give you enough hints as to where the creator and developer took this project. Amazing work.
Next in our series of “people who left Apple and founded a revolutionary company that was ahead of its time and created amazing products but ultimately failed,” let’s check out General Magic and their operating system called Magic Cap. The article contains a guide on how to set up a Magic Cap emulator inside a Mac OS 7.5.3 emulator. Some assembly definitely required.
Jim Hall, creator and developer of FreeDOS, on the eve of the project’s 25th birthday In 1994, I read articles in technology magazines saying that Microsoft planned to do away with MS-DOS soon. The next version of Windows would not use DOS. MS-DOS was on the way out. I’d already tried Windows 3, and I wasn’t impressed. Windows was not great. And, running Windows would mean replacing the DOS applications that I used every day. I wanted to keep using DOS. I decided that the only way to keep DOS was to write my own. On June 29, 1994, I announced my plans on the Usenet discussion group comp.os.msdos.apps, and things took off from there. FreeDOS – alongside DOSBox – are staples of the DOS community, and it’s great to have them available as free software.
More news from the CP/Mish front: As part of the work I’ve been doing with cpmish I’ve been trying to track down the copyright holders of some of the more classic pieces of CP/M software and asking them to license it in a way that allows redistribution. One of the people I contacted was R.T. Russell, the author of the classic Z80 BBC BASIC, and he very kindly sent me the source and agreed to allow it to be distributed under the terms of the zlib license. So it’s now open source! I’ve made the 37-year-old source build and added it to the cpmish respository; it works fine and is shipping with the cpmish disk images.
CP/Mish is an open source sort-of-CP/M distribution for the 8080 and Z80 architectures (although for technical reasons currently it only works on the Z80). It contains no actual Digital Research code. Instead, it’s a collection of third party modules which replicate it, all with proper open source licenses, integrated with a build system that should make it easy to work with. CP/Mish is not CP/M, but it’s enough like CP/M to run CP/M programs and do CP/M things. And, if you want the real CP/M, CP/Mish uses the standard interaces so you can just drop in a Digital Research BDOS and CCP and it’ll work. Some companies bet on CP/M, some bet on DOS. We know who won, and who lost. Still, CP/M inspired a lot of DOS, so anybody with experience with DOS should feel right at home on CP/M.