gekk.info « articles

TownsOS Tour Part 1: V1.1 L10

« Previous Page - Next Page »


 In Towns parlance, I believe that Level means Version. This is Level 10. Based on the dates of files on the disc, which are stamped for 1989, I believe this is the original TownsOS release that may have shipped with the machine; This might have been the day-one experience of the FM Towns.

Basic Layout

TownsOS V1.1 L10

This is the main "Desktop," which seems to be known as TownsMENU. It consists of a permanent, immovable file manager (windows would not appear in TownsOS for several years.) Each tab represents a disk device configured in the CMOS.

The blue buttons at the top are menus, roughly: Display, File, Disk, Settings, Power, Tools. We'll go over those later.

Icon / File View

Icons

The default view is Icon view, and the above are "Icons," which are defined in a file called TMENU.INF in the root of the disk. This is like a proto-Start menu, to show you only the things that Fujitsu thought you'd be interested in, instead of the entire flotsam and jetsam of the OS.

The icons here are TownsGEAR (sort of like HyperCard), a demo application to show off the Towns' capabilities, and a brief readme that just talks about things like how to install on a hard drive if you bought one (it was optional and generally considered unnecessary.)

Now, from the Display menu, we can choose to switch to displaying the raw files on the disk:

TownsOS file view

This is a very primitive way to display files, no doubt about it. The file type icons are displayed in a light grey behind the file info, and it's generally very unpleasant to read. This is an attempt to merge an icon view with a file details view - something no other GUI I'm aware of attempted, for obvious reasons; this looks terrible.

There are no scrollbars. Instead, the page curl in the upper right flips pages of files in a very confusing way: the curled part moves forward a page and the part representing the page behind the current one goes back a page. It's both mechanically very awkward to use, and metaphorically backwards.

The current location is displayed at the upper left of the browser window:

Current path

This is the disk label, then the path. I have never seen a disk letter used in a path under TownsOS - this convention of using a slash at the beginning of the path to indicate "the root of the disk," unix-style, seems to reign supreme.

In another awkward decision, there is no ".." object in folders to let you go up, nor is there a button - instead, you click on the part of the path you want to return to. So if I clicked the first yen here, I would return to the root of the disk. It's useful, but tedious to do this with the mouse.

Programs

In the file listing, .EXP files are native TownsOS apps, and clicking one will launch it.

CD player launching Graphical CD player app

Apps do not run in windows, but take over the entire screen. The CD player here occupies the entire display when running. TownsMENU seems to have to relaunch from scratch when you exit an app, and this makes sense given the memory constraints of 1989, leaving the shell running would have been a waste of RAM.

Other files such as BATs and EXEs are executed if you click on them, but when I try this with e.g. the files on a DOS disk like command.com or chkdsk.exe, TownsMENU either freezes or just reloads itself, so I'm not sure if it's expecting some kind of native executable format or what.

File associations

There doesn't seem to be much in the way of file associations. For instance, lots of TIF files are included on the disc, which is a common image format in TownsOS, but clicking one just says it can't be executed. There's also a README.DOC which does the same thing.

To view an image, you have to use VCARD1.EXP, and to read the readme you have to run TYPE.EXP and manually type in the path to README.DOC. This is a very primitive GUI - one of the primary values of GUIs, I would argue, is to avoid this kind of tedium.

Menus & Controls

The menus are fairly straightforward.

File menu

The "File" menu for instance contains copy, delete, rename and create directory options.

The "Disk" menu provides for formatting, copying, and relabeling disks.

The "Settings" menu lets you set the date/time, select the boot drive, and then provides a "control panel" of sorts:

Control panel Serial port configuration Disk management

The control panel does not seem to be a separate app. It launches as a dialog on top of TownsMENU, and gives options for configuring attached disk drives, printers and serial ports.

Here I've included pictures of the serial port config to illustrate that this machine apparently supported five serial ports - I cannot fathom a reason for this unless these were meant to be used as BBS hosts or something, which seems beyond the capabilities of the software I've seen so far, but certainly feasible with this hardware.

Disk management is very simple, with options to add/remove external floppy and hard drives and, curiously, to repartition the disk. You'd almost expect this to be a separate textmode utility, but since TownsOS seems to be the OS of this platform, that's where the disk utilities have to live.

Power menu

The Power menu gives you options to reset or power off the machine. Since the emulator closes when I pick the latter, I have to assume the Towns had "soft" power and could turn itself off.

Special

Tools menu

Finally we have this "Special" menu, which kind of collects things that didn't fit elsewhere. These are, in turn:

The CD player you saw above; it does exactly what it looks like.

The calculator is absolutely delightful:

The delightful calculator

I stress that I did not edit this image, it looks exactly like that. Notice that even the calculator utility totally replaces TownsMENU. And no, I do not know what the heart or music note are for, they seem to do nothing.

I do not know what the Dictionary feature is for. It's been hinted to me that managing the multiple alphabets used in Japan is a complicated issue and this is probably related to it. I can't get it to do anything meaningful.

Icon editor

The icon editor is a 1-bit image editor for creating file icons. I think these are used exclusively for "Icon" files, as in application shortcuts.

Head cleaning lets you select a disk drive, but since I'm on an emulator that's not going to do much.

When you select the Icon Management button, you are prompted to either Add or Delete an icon. There seems to be no way to edit an existing one.

In order to select Add, we have to be in the File view and have selected the file we want to create an Icon for. I selected the CD player.

Icon selection dialog Icon parameters

We have to select a display icon, then specify a title for the Icon entry and parameters to run the app with.

Obviously this fails because I'm running from a CD, so it has nowhere to save it. I tested it on a floppy and all it does is create or update a TMENU.INF, as one would expect. The only thing you can do with the Icon is either run it or delete it.

Architecture

Just some notes on how I think this OS works - I don't have the skillset to dig into the disassembled code and tell you how it functions under the hood, but here's what I get from observations:

TownsOS boots from a CD. While in 1989 the El Torito spec - which allowed ordinary PCs to boot from CDROMs - had not yet been defined, I'm told that the ISO9660 spec for CDROM actually contained a boot sector, and El Torito was just a standard for what *goes* there, so I imagine the Fujitsu spec is probably very similar to what PCs ended up using.

The OS initially appears to possibly just be a file manager, since that's the primary interface, and you could be forgiven for assuming all it does is provide a convenient way to launch DOS apps, but I believe it is a fully self-contained GUI OS.

Since the Towns was based on the 386 from day one, I'm pretty sure this runs in protected mode. Wikipedia claims that almost everything on the Towns is based on the Phar Lap DOS Extender, including TownsOS. This is RUN386.EXE, a program much like DOS4GW.EXE was on the PC: a way to run DOS apps in protected mode, in order to use the systems full memory allotment. Phar Lap, despite the name (I assumed it was Chinese,) is actually an American product made in Massachusetts.

While the Towns does support DOS, I'm not sure what role it plays when you're booting to TownsOS. On the PC, Windows prior to NT absolutely booted into DOS in order to bootstrap into Windows, and the Towns might be doing that. There's a minimal copy of DOS in a hidden ROM drive (containing only command.com, msdos.sys and mscdex.exe,) but you cannot boot to that drive. Wikipedia claims that that drive is what makes CDROM booting possible, and that seems like it could be true, but much like the editions of DOS included with Windows 95 - which hid all the startup text - I suspect it's been modified to act as little more than a bootstrap. There's no option I can find to halt boot and go to a command prompt, and TownsOS generally doesn't seem to offer an option to open a command prompt until later versions.

What I'm driving at is that I don't think TownsOS is just a GUI that's using DOS as its system API. TownsOS has its own executable format and graphical API, so it seems to me very clear that this is a complete OS in its own right, and not a "shell" for DOS.

Summary

That's the entirety of TownsOS V1.1 L10. It's similar to Windows 1.0 - an incredibly barebones piece of software meant to provide a file browser and an API for GUI apps and very little more. It would advance considerably in future releases.

The next chapter will look at the demo application included with this OS.


« Previous Page - Next Page »


If this was interesting to you, or if you did something interesting with it, email me: articles@gekk.info

If you like my work, consider tossing me a few bucks. It takes a lot of effort and payment helps me stay motivated.

List of Articles