Monday, June 10th, 2024
British operating systems, part two
===================================
Besides RISC OS, there is another family of operating systems from
Great Britain that is even closer to me: Sinclair QDOS and its
successors.
In 1984, Sinclair released the QL computer, which was intended for
business use. It had a more powerful processor (68008 instead of Z80),
a higher screen resolution (512x256, 4 colors), and a multitasking
operating system. The QL was deliberately introduced a couple of weeks
before the Macintosh, making it the first on the market among the
Macintosh 128k /Atari ST /Amiga 1000 /Sinclair QL quartet. This, along
with the effort to keep the price as low as possible, significantly
influenced how the computer looked, not only in terms of hardware but
especially in terms of the user interface.
Mac and Atari ST prioritized mouse-controlled GUI over multitasking.
Amiga 1000, which was the last of the four to arrive, had a mouse,
windows, icons, and multitasking. The Sinclair QL had neither a mouse
nor a nice GUI, but it had full preemptive multitasking, even though
the entire QDOS operating system fits into a 48kB ROM. Compare this
with single-task Atari TOS, which needed 192kB ROM, single-task
Macintosh System Software, which had 64 kB ROM and still booted from
a disk, or multi-task Amiga OS, which started with 256 kB ROM and also
had its desktop on a disk.
Tony Tebby, the main developer of the system, had previous experience
with Unix workstations, and his goal was to create a machine with
similar capabilities but without the need to work with a Unix shell
and C programming language. He chose BASIC as the user interface,
which was a de facto standard on 8-bit computers, but here it was
significantly more capable and could be extended with new commands by
simply loading their definitions into the system.
QDOS starts with three "windows": at the bottom is the command line,
where commands are entered and executed immediately, or if they start
with a number, they are stored to be executed later using the RUN
command. Above this are two other windows: the white one contains the
listing of the currently entered program, and the red one contains the
output from the running program. Everything is handled by I/O channels
so everything can be redirected (to disk, tape, network, serial port),
the size and border of windows can be changed from BASIC, new windows
can be opened, their colors set, fonts changed, etc.
Although QDOS is a multitasking OS, due to the limited memory of the
original QL, the BASIC interpreter can only run once. Machine code
tasks, however, can run as many as the memory can hold. The computer
was shipped with an office suite from Psion, which included a word
processor, spreadsheet, business graphics editor, and database. Users
typically loaded all these programs into memory after turning on the
computer, sometimes even multiple times depending on the number
of documents they needed to work with, and then just switched between
running tasks.
Unfortunately Sinclair Research begun facing problems around the time
the QL was released. The computer was announced with a promise of
early sale long before it was ready, so deliveries began with delays,
and the shipped units were not always fully functional. The company
was also working on the C5 electric vehicle, which was a flop, and
before the QL could consolidate and establish itself, the entire
company was bought by the rival Amstrad, which immediately halted QL
production to avoid competition with its own line of budget business
computers, the PCW, much simpler (Z80, CP/M), albeit more expensive
machines than the QL.
Rights to the QDOS system and the QL computer were never transferred
to anyone, so further development was in the hands of unofficial
hardware producers and system reimplementations based on available
documentation. One of these reimplementations was called Minerva ROM,
which fixed a large number of bugs that weren't dealt with by Sinclair
Research, significantly sped up most functions, and added some new
functionality; for example, the OS can use two independent screens,
that the QL had from the beginning, but the original QDOS could only
use one of them. Minerva ROM runs both on clones that emerged after
the QL, or it can be installed in the QL itself. To this day, in its
latest version, it is the best system for the original, unmodified
computer.
The best QDOS reimplementation, if you are not limited by the original
hardware, is SMSQ/E, developed independently by Tony Tebby for more
modern hardware than the original QL (Atari ST, Q40, Q60, Q68, or at
least QL with a turbo card). While it runs the QL software without any
modifications and the interface looks fundamentally the same, it's
a significantly enhanced system. SMSQ/E offers full multitasking,
including the BASIC interpreter, dozens of new BASIC commands, command
line history, support for multiple graphics modes (depending on
the computer on which the system runs), etc. It also integrates
the Pointer Environment, a mouse-controlled graphical interface with
a desktop, windows, and other elements common on modern computers.
Pointer Environment also exists as an extension for Minerva and QDOS,
but here it is already included in the system[1].
Due to the small user community and the development being led by a few
individuals for a long time, systems like SMSQ/E, Minerva, and even
the original QDOS have many unique features. It took me quite a long
time to learn to use this system, perhaps even longer than with Plan9.
But once I understood the basic principles, I couldn't resist getting
a couple of QLs, and I'm currently waiting for the completion of a new
batch of the modern FPGA computer Q68 running SMSQ/E, in which I have
one unit pre-ordered. What a shame that British operating systems do
not rule the world!
[1]
gopher://i-logout.cz/I/phlog/posts/2024-06-10_smsqe_screenshot.png