It all started around 1986 (when I was 13) when my dad bought me a Sanyo MBC-16 PC. It had an Intel 8088 processor running at 8MHz (compared to the 2000MHz Intel Core Duo I am using now), 640kb of RAM (I now have 2,000,000kb) and ran MS-DOS 3.22.
One nice “feature” of that PC was that it came with two floppies only (it didn’t have a hard disk). The first floppy contained the operating system and the second one was GW-BASIC.
GW-BASIC (do you know what GW means?) was without doubt the reason I became a Computer Scientist (so, thanks Bill!). Remember, I bought that PC when I was 13 and the only way for me to play was to write my own games. So this is what I did. I wrote numerous Space Invaders clones and I wrote my own version of Tron with a very slow collision detection algorithm…
I had one friend at Royal College Curepipe who was also a computer maniac. I think his name was Harry and he died when we were still in college… Anyway, one day he gave me one floppy containing one executable: turbo.com
I went home and ran it. It was Turbo Pascal 1.0 and I couldn’t program anything as I didn’t know the Pascal language. I did what all good geek would do: I looked inside the executable and I found a data segment containing all the Pascal keywords (program, var, type, writeln, etc.).
I guess I tried all kinds of combinations for days until I became a fairly good Pascal programmer. I then wrote my own Mastermind game. I also fondly remember typing a maze-generating and -solving program I got from SVM magazine. Those were the great pre-Internet and pre-Google days where you really had to be motivated to learn something new…
This PC had two graphical modes: one was 320×200 with 4 colors out of 16 and the other one was 640×200 monochrome. This was the CGA standard.
As the color palette was so limited (4 out of 16 colors compared to the 16,777,216 we have today), games tended to look the same :-)
I fondly remember King’s Quest I by Sierra and Karateka by Jordan Mechner:
My next computer was a Commodore Amiga 500 but I’ll write about it in a future post…