Small LS logo

Personal Computing

I first saw a microcomputer when I was working in New York in 1976, where there was a shop on Broadway that sold 8-bit systems from Imsai, Altair and SWTPc.

In 1980 I built my first microcomputer from a collection of boards and chips. It was based on a Motorola 6809 chip and ran the Flex 09 operating system. I used this system as a programming engine for assembler, PL/9, COBOL and C. It was mostly paid for by translating the code in Software Tools in Pascal into PL/9 and selling the result to the Flex 09 community. This system was replaced in 1986.

The new system was a PC which was fitted with a Motorola 68000 based co-processor board supplied by Gibbs UltraScience, which ran Microware's OS-9, a true multi-user, multi-tasking operating system. This allowed me to switch back and forth between MS-DOS and OS-9 without any reboots, etc. The OS-9 system used the PC hardware as a file, print and terminal server and was capable of transferring files between the two operating systems. I used the MS-DOS side for word processing etc, but running OS-9 was the real purpose of the system. I developed utilities on it in C and used the Sculptor 4GL to write database applications.

By 1994 this system was showing its age and was replaced in its turn by two systems; a Windows PC and a Motorola 68020 system. The latter was installed in a PC-AT case and ran OS-9 v2.4. It was in everyday use until 2013 when the motherboard died. It ran a mix of C applications and Sculptor database systems. In particular, it was used to support the British National Free Flight championships for 10 years until I decided enough was enough. In this role it compiled score sheets for all the events while running off a small generator in the back of a van. Since 2013 its work load has been running under os9exec, an OS-9 v 2.4 emulator, on my Linux house server.

My main focus has been on Linux since about 2010, pushed along by the way that Microware, creator of OS-9, shifted its emphasis from general purpose computing to specialised embedded and real-time applications. As a result of this shift in emphasis, support for the general user gradually dried up. Microware was eventually bought by the Radisys Corporation which further accelerated this process until 2013, when it sold Microware and OS-9 to a consortium of RTSI (Allan Batteiger's operation), Microsys Gmbh and Free Station Inc. My hardware supplier is also out of business, hence the enforced move to emulated operation in a Linux environment.

The current home setup consists of an 8GB dual Athlon system running the RedHat Fedora flavour of Linux. This serves as a combination of local DNS, file and print server, backup server (with rsync and a cycle of removable USB hard drives), time service, programming engine and internal Web server. The network has been extended to support an IBM Thinkpad laptop, which also runs Fedora, a network connected HP Laserjet 5 and an ADSL router/modem that provides broadband connectivity and firewall services. My last Windows PC is now dual boot and only runs Windows when I need to use legacy Windows or DOS software. The aim is to migrate this to Linux using the WINE emulator or VMware virtual environment and then to uninstall Windows.

The latest addition to the network is a RaspberryPi running Raspbian Linux. This is run headless over ssh and uses terminal, backup and print services provided by other hosts on the network.

In a parallel development I've experimented with Parallax Inc's BS-2 STAMP computer. These marvelous devices are postage-stamp sized computers, programmed in an integer BASIC and capable of driving Radio Control servos and, indeed, almost any device you can dream up. They are programmed by a Windows-based IDE that combines the functions of source editor, compiler, loader and debugger in one well thought out package. The Basic STAMP Tools for Linux package is now available, though I haven't used it yet. By adding a single RC servo, 32 kHz watch crystal and divider circuit it is easily possible to build a flight sequence controller that will carry out the sequence of actions and make the decisions needed to control a Free Flight glider during a contest flight.