Personal Projects
The Microbee
I have always had an interest in electronics, which, when microcomputers became accessible in the early '80s, expanded into computers. The first microcomputer I owned was an Australian designed and built Microbee - this was a Z80 based machine with 56K of static RAM, and an external 400K 5.25 inch floppy drive.
While I had already been abusing other people's patience to get my fix of computer time, this system finally allowed me learn enough about computers to know their limitations (and that clever code could occasionally make them disappear).
Some of my minor victories from those days included:
- an interrupt driven "real" time clock, the code for which hid in a spare disk parameter block in the BIOS.
- a multi-player "snake" game written in assembler - two players would race each other around the screen attempting to eat "rabbits" without crashing into the other player or their own tail. This was inspired by a version written in BASIC; the BASIC version ran irregularly (you could feel every line of code!) and it seems a good assembler learning task.
- Disk program loaders for old tape games - initially the Microbee relied on a tape drive for all program storage. When disk drives became available, many of the older games were not re-released on disk, and since nobody wanted to go back to the dark old days, some excellent games were in danger of being forgotten. Most games contained rudimentary copy protection, or made assumptions about memory layout that were no longer valid on disk systems (tape systems had BASIC in ROM, disk systems loaded it from disk), which complicated the loaders.
For some nostalgia, go to the PC Museum's The Microbee Page.
The Amdahl
The NSW Institute of Technology had a second-hand Amdahl running SVR2 (UTS or Unix) that provided computing power to all faculties but computer science (they had their own machines, but they'd still inflict 120 first year Cobol and Eiffel students on the Amdahl). This was where I first encountered Unix (albeit at 300 baud, half duplex).
While pretending to do our Pascal assignments, a number of us discovered C (and were given a rapid lesson in how not to use pointers - core dumped - again?!). Initially the machine had SVR2's grievous implementation of shared memory, semaphores and message passing, and an explosions of neat multi-user applications sprung up, before the administration knobbled the kernel (after all, we can't have students learning things, can we).
We also discovered all about computer security. Erm. Moving right along...
The Applix 1616
After waiting in vain for Applied Technology (the makers of the Microbee) to release their 68000-based Gamma, I bought a computer based on a design that appeared in the, now unfortunately defunct, ETI magazine. This system was called the ETI 1616, or the Applix 1616.
This was a kit - you bought the double-sided PCB, a bag full of components, and an excellent construction manual, and proceeded to go blind soldering thousands of pins over the next few nights. If your soldering was good, at the end, you had a 8MHz 68000 microcomputer with 512Kbytes of RAM, a tape interface, and a hex debugger (albeit, a rather nice one). Yes, mine worked first go.
Over the next few years, lots of fun hardware and software appeared for these machines. The hex debugger turned into a multi-user multi-tasking operating system, first floppy drives, then SCSI hard drives were attached, more memory was added (up to a whopping 4.5Mbytes!), GCC, Minix and MGR were ported, we almost got ethernet and a 68030 CPU, etc.
For lovers of computing history, more information on the Applix 1616 project is available from a web page maintained by the designer, Andrew Morton: The Applix 1616 Project.
I learnt all about buggy compilers, the beauty of a nice instruction set, operating systems and how (not?) to write them, porting software to unusual platforms, and, ultimately, just how much damage a near-miss lightening strike can do (sob).
Linux
After the 1616 was terminated by an "Act of God", I acquired a 486 specifically to run this new fangled operating system, Linux. I borrowed a pile of floppies (SLS, if I remember correctly), and away it went.
While Linux was A Good Thing, the golden days were over - the operating system was largely complete and the hardware was too ugly to love. Porting was trivial or impossible (most "open source" software in those days was targeted for BSD based systems, which had a much richer network layer).
I did, however, write one kernel module - a read-only filesystem to mount the old Applix 1616 disks. But now Linux is just a neat and reliable tool, not the wonderland that CP/M, UTS and 1616 OS were.
Amateur Radio
In 1999, I studied for and obtained an Amateur license. It was something I had been meaning to do for some time, and since the hobby seems to be very much in decline (due to commercial pressure for spectrum access, and other mediums competing for young minds), I felt I should do it while I still could.
The amateur license essentially gives you access bands right across the spectrum (potentially very valuable). The catch is that this can't be used to carry third-party traffic. There is an expectation that Amateurs will give back value to the community indirectly through their experimentation, and, in times of emergency, directly by providing communications infrastructure and expertise.
To obtain an amateur license, an applicant must demonstrate a level of radio and electronic theory knowledge, as well as a knowledge of the relevant regulations.
My call-sign is VK2TAN.