More personal stuff!
So who is this bloke who came up with tornado???
Well, my name is Niall Douglas, I am eighteen years old and am currently studying at Trinity College Dublin. My hobbies are computers (what else!), and err ... dunno what else - keeping fit? ;)
I have only bothered to put my computer history here really - it's all I intend a worldwide audience to know about. Forgive me if I'm not detailed enough.
My Computer history
I got my first computer (an Acorn Electron) when I was six as a Christmas present. I programmed on that until 1990 when I bought the A3000 which is my computer today.
Things were very different back in the eighties. A computer had 32k of RAM, of which 8k was free for programs at worst. Here's some of the things I did on my Electron:
The move to the A3000
So, realising after this refusal by (B)AU that the Electron's life-span was limited, I decided to buy a new computer. I saved and saved, and finally bought the A3000 I have today. Back then it was a 1Mb RO2 Arm2 DD floppy-only machine with a green-screen from the 70's that I had borrowed (which BTW was lethal on the eyes), but now it's a much bigger machine with 4Mb, 1Gb HD, 36Mhz screen display (allowing 1024x384x16x2x4) but still the Arm2, which is a right pain because it's so slow. Also, the machine occasionally crashes due to the 4Mb expansion which has the usual A3000 problem.
I have done a lot on the A3000, although almost all reading this page won't know of much of it as I haven't released much of it before now. I am what I would describe as a slow methodical programmer, who would only output around two applications and maybe fifteen decent programs a year. Nothing like Justin Fletcher (hi!), who hasn't been out of AU recently (so why do you have to get all the glory - just 'cos you're in college!). Or even Julian Robbins, who has managed to beat the total number of programs I've got into AU. And I won't mention Chris Davis who totally blew me over once when he wrote a demo of visual code linking in assembler in just one night!!! Man, I wish I could write in that volume!
But I can write in volume sometimes! Just prior to a competition final I had got into in 1991 (I was thirteen), I wrote a key logging module in assembler that trapped key presses and mouse movements during recording and then played them back later at the right speed. The idea was to have the computer run and use the program I had written itself. It also typed out what it was doing :)
Also, I stuck a graphics demo on the front and a scrolling credits list at the end, with music stolen from a game running right through. All this, music, demo, keypress module - all done in three days flat, plus the display posters for the stand. Incidentally, the program was a 95k Basic window template designer, which even more incidentally was the second wimp program I ever did with the PRM's to aid me. As you can see at 95k, I sorta took to it well!
So, what else have I done on my A3000 then:
- A few small games, including:
- An epic game in which you control a rotatable sphere, which you must pilot through ten different levels (1991). Wrote it for (B)AU, but they didn't want it. Just 'cos it was all in Basic! :(
- A two-player turtlerace port of a game I had seen written in Logo (1991)
- A multitasking version of an atoms game which was published in (B)AU (1991)
- A multitasking bat the ball game (1991)
- A multitasking game where you piloted a dot through a cave (1991)
- A much improved copy of Solitaire whose original was in (B)AU (1991)
- A very addictive two-player game where you try to land a ball on a ball (don't ask!) (1992) A bloke called Peter Aherne gave me the idea (give up the Camel's Peter!), and err - thanks!
- A MasterMind game which has a 'perfect' opponent (1992)
- A matches game just like the one on this month's AU cover disc (an ex-girlfriend, Vickie, taught me the game - Hi Vickie!) (1992)
- Desktop Reversi & Minesweeper, both of which use simple multithreading (which yes, appears in tornado - I used those programs to perfect the technique) (1993 and 1992)
- A few experiments in AI which resulted in a very good animals and fruit guessing games (1993). These were derived from a (B)AU article and example programs.
- A few utilities, including:
- A Soundtracker player controller (1992)
- A general clock and alarm module, ported from the Electron (1992)
- A little applet to centre any window when you click Menu on their title bar (1992)
- A better !Help application, which displays little sprites and other cute things ;) (1992)
- A virus watcher, which unfortunately won't work with anything after RO2 (1994)
- A front-end app for PocketFS for RO2 as the ones supplied won't work on RO2. It also has backup and archival facilities (1994)
- Something very like Justin Fletcher's wimp patches which provided similar facilities on RO2 like plinthed filer windows and menus and outline fonts everywhere. Bloody slow on my machine though (1994)
- Major applications:
- !FormDATA, a window template designer (1992), which got into the competition final mentioned above. I met a girl called Vickie here, and was going out with her for three months.
- A pretty rotten all-assembler demo, which I think I've lost (~1992) (Thank God!)
- !Flow5, a cellular water emulator (1993, commendated & 2nd placed in competition)
- !LegoCAD, a 3D Lego model editor (1993-1994) [unfinished]. This is still the biggest program I have ever written, standing at 99k of Basic and 12k of FP assembler.
- Then of course there are a few other little miscellaneous things:
- A pretty crappy now Basic demo (1991) which I wrote because I was so impressed with the A3000's speed! Could be easily ported to a Master 128 - I wasn't really writing in Basic V by that stage!
- My own effort at the evolution game raging in (B)AU at that time - pity I never bothered putting it into assembler (1992).
- Flow1 to Flow4, the pre-competition Flow4 versions (1992)
- My own effort at making Life go faster! (1992).
- A very effective mouse-controlled starscape which precursed the 3D starscape below. Nice and fast! (1992)
- A little experiment into trig I was doing at the time (1992)
- A Biorhythms viewer, a port from the Electron's introductory tape (1992)
- A 3D starscape which was a by-product of LegoCAD through which you can move in 3D real-time (1993). I wrote this in two hours just before leaving for Germany for four months! On the day I came back, I found a few bugs and fixed them! There's commitment for you! :)
- A 50fps scrolling credit list which uses outline fonts. This was a major bitch to do on an Arm2, and you'd have to see the assembler to believe it! It's inside Flow5 if that's any use, and no, I'm not going to extract it! (1993)
- A very nice if slow on my machine fireworks program (1995). It uses a few techniques tornado uses in the way it handles the fireworks calculations.
- A project for the Young Scientist's International Competition 1995 - it was a comparison between C and Basic (guess which one won!), and I got 2nd place in my category for it. I also did a few other things too :)
(Note that a lot of these will be uploaded somewhere at some stage when I get round to it. If you want them earlier, then email me).
If it seems to you that I've scraped the bottom of the barrel a bit - well, to be frank that's almost everything I've written that's of any interest to anyone but me. I do do a lot of patching, especially as I still have RO2 and many programs need altering to make them go eg; Webster. Also, as you can see above, my most productive year by far was 1992. It even beats some years on the Elk which spawned perhaps 12 good programs per year.
Since then, I started LegoCAD in the summer of 1993 and then stopped it to go to Germany for half a year in 1993, and while there I produced quite a few Psion apps, including:
- A port of the Elk painting package
- An intelligent equation solver, so when you gave it cubic decimetres it converted them to cubic inches by translating one form to another. Got lost though when the Psion's batteries ran out one day though :(
- An icon designer for icons of programs on the system screen
So came the Young Scientist's 1995. I entered the project detailed above and had a good time. Then, as 1995 became fully here, I bought a modem due to money vanishing off to 'other' places.
Niall gets connected!
I have no doubt that most people on Acorn fidonet at that time will remember me appearing on the scene. The summer of 1995 was marked by the start of tornado. Tornado at that stage was quite different from its current incarnation, as you can see from reading some of the older documents. I made quite a storm in a teacup then, as for some reason my 'quest' captured the Acorn-owning people's imagination and loads of people started offering help and information and opinions and ideas. Few of them are around now :(.
By the end of that summer, the kernel's memory management routines were done. Not very much for three months of work I know, but I had severe difficulty focusing on my work most days, and simply left it and slept in. However, what became crucial to today's tornado was the exposure I got to alternative operating systems during that summer. I paid a visit to the UK, where I went to the Digibank meet, but also got a good look at Win95 which my cousin had 'borrowed'. I also got some work in a IP writing web pages, during which I saw a lot of Macs and Unix and X, all of which contributed to a vision. The people I talked to during the tornado furore also gave me useful tips, especially after the AU appearance.
And then a lapse appeared. With the weight of social and acedemic pressures coming to bear upon my free time, less and less was left over for tornado. However, this was reversed slightly on the run up to the Leaving Cert at the start of summer 1996 but alas, little more was done by the time my Leaving Cert was done.
And to work!
I had CVed around prior to the Leaving and had offers made to me by a few companies - of whom I chose Colton. I went to work for Colton in July 1996, where I upgraded (the famous) PipeDream from version 4.13 to 4.5 and learnt an awful lot about Acorns, Acorn and Acorn people. I also received the great pleasure of working with Stuart Swales, one of the Arthur/RO2 programmers, the Protechnic team and meeting many old Acorn "hacks".
University life begins
I got enough points for Computer Science in Trinity College Dublin and went there in October 1996. I still am there but possibly might transfer somewhere else next year.
During the Winter break of 1996/1997 I wrote the RISC-OS tornado II support module which provides preemptive multitasking facilites for RISC-OS along with 1ms accurate interrupt facilities.
To be considerably elaborated upon as soon as I get round to it ...
Oh - and here's a wee piccy!
© 1996, 1997 Niall Douglas (Last updated: 1st January 1997)