|
Programming
history
I
have always been beguiled by computer programming.
When I was 6 I used to fruitlessly probe the ancient
BBC computers at my primary school to see what
they, and I, was capable of. I was repeatedly
frustrated by any efforts to create a functional
program for several years: I tried using batch
files to program an 8086 running DOS, I experimented
with dog BASIC and even LOGO, I invented my own
protocols and was continually trying to force
simple graphics, animation and file control out
of these systems. I finally got a hold when I
discovered QBASIC on my 486- but soon my ambition
had grown to the degree where the speed and lack
of graphical libraries frustrated me. Pascal was
the solution to all my problems- it was incredibly
fast compared to BASIC, had a simple syntax, and
offered such a degree of control that I mashed
my hard drive on several occasions. I made a copy
of the program (still not available free from
Borland- but on offer here) off of the school
servers, and taught myself purely through intuition
and examples downloaded from the internet. Within
a year I acquired some knowledge of assembler
and was putting together my own libraries for
graphical control. Prior to this I had already
completed a number of minor projects using the
versatile MCGA 320x200x256 mode- namely Trooper
I and Faculty: which I now consider a training
period where I acquired sufficient knowledge to
put together my largest project, Trooper II. This
was a platform game of massive scope, using an
object-orientated approach to define objects that
appeared in the game. This allowed objects to
be designed and defined by the player using a
level editor that I constructed early in the game's
history to allow myself to put together complex
levels; and completely original levels to be put
together in seconds. The engine considered each
object individually, manipulating all the game
variables in real time: so any combination could
be designed, and the engine could normally treat
the combination as a unified whole. Since MCGA
was used for the game, and all the artwork was
produced by myself and my sister, Trooper II is,
quite frankly, not too graphically impressive:
but, accordingly, the graphics run extremely fast
(60 fps) even on my 486, and the game is frantically
fast paced, and has a strange, almost impalpably
complex rhythm. I eventually had to force myself
to stop adding extra features and levels to the
game when it was sold as part of our schools's
young enterprise- the full (technical) construction
history of Trooper II can be found in its section
of this site. As well as this, I have perfected
units for most aspects of sound, music, XMS and
EMS memory management, my own hi-res graphics
engine written exclusively in assembler, copious
imaging tools including a compressor, a 3D modeller,
and have recently completed a working texture
mapped 3D world. I occasionally do work in Delphi,
particularly when making tools for my own use;
but have also put together a 32-bit level editor
for Trooper II, and several fractal generators,
including the Mandelbrot set.
Page
2 - The appeal of programming
|