Last update: 16th February 2010


I am a UK based, published senior computer games programmer with 19 years experience of contract work re original projects and software conversions for PC and across various computer games consoles.

My skills include :-

Platforms include :-

Employment History

2004-To Date

GTR2 (10Tcle) 2006

GT Legends (10Tcle) 2005


Emergency Mayhem (Acclaim) 2004


Assignments: physics system including street furniture reactions, broadphase collision detection, fluff collision tests, PS2 optimized, AI reactions to collisions. Control system. Vehicle handling including torque and braking system, special moves, handbrake slides.

XGRA (Acclaim) 2003


Assignments: Race start system, race end system,  alpha sorting, general bug fixing

Dakar 2 Xbox(Acclaim) 2003


Assignments: Took Lead Programmer Role, brought project to gold on time, assisted in extra track development and multi-player.

Dakar 2 Playstation 2 & Gamecube (Acclaim) 2002


Assignments: Physics system, vehicle handling.

Extreme G 3 Gamecube (Acclaim) 2001


Assignments: Conversion from PS2 version to Gamecube including: Basic render data format for debugging, Optimized index based single pass format used in-game. Open cd tray logic. 3 and 4 player development.


Labrat (Bits Studios) 2001

(click here to play)

2D Maze against-the-clock with online real-time ranking, email challenges and skins


PC - Win9X, Win2K and NT4


Create a 2D GDI engine capable of rendering on all platforms at 50fps, plus support audio via DirectSound

Objectives Achieved:

Renderer runs at a locked rate of 50 fps yet needing only 5-20% processing power of a standard PC, transparent effects, accurate controls, small footprint, basic skin functions allowing the same game to look and sound completely different, DirectSound support, 10000 unique mazes.

Virtual Athlete (Bits Studios) 2000

3D Tamogotchi style interactive multiplayer internet game involving collecting, training and racing athletes in a racing tournament


PC - (DirectX 3 & 5 & 7)


Create a 3D engine system capable of working on DirectX3 through to DirectX7 ultilising the advanced options of each. Program interactive games, 2D schedule builder and the front end for Virtual Athlete. Script final racing competition inside stadium environment.  

Objectives Achieved:

Fast 3D engine working in Dx3,5 & 7. Dx3 & 5 texture managment. Environment mapping. 2D interactive games. Scripted finale to racing.


Jimmy White's 2 Cueball (Virgin) 1998/2000

3D Snooker/Pool and many subgames including DropZone

Playstation (Conversion from PC Version)


"After a few shots the controls become intuitive, which is a major feat for a game that requires such accuracy! The best snooker sim we`ve played to date ...a cracking simulation." Rated 88% - Playstation Pro


Conversion of the PC C++ floating point code to work on PSX integer-based system. Shrink a 32mb PC game to fit onto 3.5mb PSX using overlays and code reduction. Code PSX WAD loading system, PSX FMV and memory card management. Code CD streaming for motion capture data.

Objectives Achieved:

A PSX game that 'looks' like a PC product. 512x256 hi-res. 20-30 fps in NTSC. CD data streaming. Thread-based Memory Card management enabled continuation of gameplay during saving/loading.

Jimmy White's 2 Cueball (Virgin) 1997/1999

3D Snooker/Pool and many subgames including DropZone




"Stunning attention to every detail in every respect.....The best snooker and pool sim and loads more besides" Rated 88% - PC Zone


Creation of a 3D software renderer to link into D3D data format. Write a WAD based loading system and a Joystick control system. Code balls down pockets and shadows for hands and balls.

Objectives Achieved:

D3D emulation with a software renderer, which worked 2/3 times faster than D3D, and included a full per pixel Z buffer.


S.C.A.R.S. (Ubisoft) 1996/ 1997

Original 30fps fully gouraud and textured 3D world racing/fighting game with 3D cars and multiplayer option.




"The game has tight control, good AI and balance, and enough extras to make you want to keep playing" Rated 83% - Gaming Age


Lead coding across 3 platforms, PC, PSX and N64, with two other programmers. Write a 3D graphic engine (in asm for PSX). Code AI for computer cars.Write specific PSX code e.g. memory card management and FMV.

Objectives Achieved:

Mesh-based 3D landscaped world, CPU AI and Joypad Control.

Street Racer (Ubisoft) 1995/1996

Conversion/upgrade of SNES STREET RACER to a 60fps 3D racing/fighting game with sprite-based character cars and up to 8 players on screen.




"All in all Street Racer is a very playable multi-racer that will last" Rated 84% - Play

"Multi-Player racing never felt so good" Rated 8/10 - Playstation Pro


Lead coding across 3 platforms, PC, PSX and Saturn, with two other programmers. Write a 3D graphic engine (in asm for PSX). Code PC CD audio streaming. Write specific PSX code e.g. memory card management and FMV.

Objectives Achieved:

8 player split screen, running at 60 fps.


3D Coding - Programming - 80386 - Assembly


Core PC VGA 3D routines including Polygons, Vectors and Matrices plus experimental coding of Texture Mapping.


Sierra Soccer - World Challenge Edition

(Sierra/Dynamix USA)

Original 3D overhead arcade football simulation (gameplay and team management) based on 1994 World Cup.



"A cracking good soccer game" Rated 87% - CU Amiga

"Full marks for a fine playable effort" Rated 89% - Amiga Action

".. e la migliore simulazione del genere uscita quest'anno,.." (.. the best simulation of this genre to come out this year..) Rated 93% - The Games Machine (Italy)


Design and program the game (my own spec). Product management and all of the coding (including the FMV). Music and some graphics were provided by Dynamix.

Objectives Achieved:

Use of a triple buffer - thus varying frame rates. Computer player AI and Goalie AI.

Audio sampled Referee. Player name, strip design, skin tone and hair colour choices. Adaptable for international, national, or local team play.


Programming - 68000-Assembly

Programming Amiga 'C'


Experimental Amiga 3D. Preparation of 3D demo.

Compression routine for graphics utility.


Crazy Pilot (Argonaut) 1992

Original 3D flying game/adventure

Gameboy 128K cartridge

Assignments: Programming & Design (Cut down Z 80 - Assembly)

Objectives Achieved: Advanced 3D mesh enabling landscape visuals.

Trailblazers (Argonaut) 1991

Original 3D car racing game with purchase options and weapons.

Gameboy128K cartridge

Assignments: Programming, Design & Artwork (Cut down Z 80 - Assembly)

Objectives Achieved: Solid 3D drawing, 3D cars, 3D horizon.

Days of Thunder (Mindscape/Argonaut) 1990


Original 3D oval-track NASCAR car racing game.

Gameboy 128K cartridge

Reviews: "... there's some of the best Gameboy visuals I've ever seen" Rated 73% - Total

"..all in all a playable driving game" Rated 80% - C&VG

Assignments: Create 3D engine. All coding and game logic, 4 player link up and some graphics.

Objectives Achieved: 3D vector line drawing on Gameboy. 20 cars onscreen simultaneously with software sprites.

Loopz (Mindscape/Argonaut) 1990


Conversion of a puzzle game.

Gameboy 32K cartridge

Reviews: "An addictive game." Rated 77% - C&VG

Assignments: All programming plus 2/3 of the artwork

Objectives Achieved: Basic Gameboy technology put into place for future products.


Hammerfist (Activision/Vivid Image)

Conversion of an arcade progressive fighting game with puzzle elements (2D).


Spectrum 48K


"All the magical ingredients of a great game cooked to perfection." Rated 92% - Sinclair User

"Action and strategy combine in Hammerfist to produce an amazingly playable game." Rated 95% - Crash


Write Spectrum-specific code and combat AI. (Game developed on Amiga, C64 and Spectrum simultaneously.)

Objectives Achieved:

2D masks for sprites generated in real time. Close combat AI for enemy sprites.


Starglider II (Rainbird/Argonaut)

Conversion of a 3D strategy flight sim. with puzzle elements.


Spectrum 48K with 128K enhancements


"Game of the week." Rated 5/5 stars - New Computer Express


Write conversion in machine code, working from finished Amiga version via playing the game (without any source code). Draw all graphics and loading screen.

Objectives Achieved:

Fastest ever vector line code, 3D matrices, loading screen. Storyline based game AI.


Virus (Firebird)

Conversion of a 3D arcade shoot 'em up.


Spectrum 48K


Write the conversion in machine code, from the ground up, via loan of an Archimedes machine with the game Zarch running on it - no source code. All graphics.

Objectives Achieved:

Fast vector line drawing using self-modifying code, gravity effects, sprite-based 3D objects.


"Amazing conversion of an amazing game. Incredible!"  Rated 95% - Sinclair User

"A brilliantly programmed conversion of a 16 bit smash hit. A fast and fascinating 3D blast a mundo. Buy it!" Rated 9/10 - Your Sinclair

"What's this? Not a naughty little program that crashes your computer, no. It's the game no one thought would ever appear on the Spectrum, and it took the might of Firebird to do it. Phil South takes a look and gets the sniffles.
     Last year, everyone at PCW was heavily impressed by a game on the Archimedes computer, a game called Zarch. This convincing tour de force was masterminded by the creator of Elite, a guy called David Braben, and at that time no plans existed to port the game down to even the high end 16 bit machines like the Atari ST and Commodore Amiga. But now Firebird has produced 8-bit versions... including one for the 128-48K Spectrum!!!
     Any attempt to bring such a game to the Spectrum could only result in a desperately shoehorned, graphically-inferior pile of old doo-dahs, couldn't it? Well, actually it's not a billionth as bad as anybody here anticipated, with all the original gameplay surprisingly intact.
     You are in control of a terrific little spaceship, a bit like the one in the old asteroids game only this time instead of being in cheap black and white and 2D, this little devil is in wondrous colouramic 3D. You are charged with a task of ridding the planet of the aliens which are spraying the planet with a deadly virus. There are many different types of aliens, and you have to zap them all in order to clear a level. Your score is a percentage of how much of the planet is left uninfected.
     As you let away from your start-up position, you notice immediately that beneath you is a brilliant 3D wire frame representation of the planet, scrolling neatly under you. As you move, the square scrolls, revealing hillier sections with trees whipping by, and your scanner in the top left of the screen shows that some aliens are pursuing you. You've got to blast the little beggars, you see, but that's only if you've got enough fingers left after controlling the ship to press the fire button on the keyboard. Yes, the controls are a trifle tricky, but if you've got a joystick interface (all are supported) then it makes it a little easier. Shooting with a keyboard button and flying the ship with the joystick can be a little bit like rubbing your head and patting your belly simultaneously, though.
     This is a very entertaining game, and even if you can't really get into the gameplay of shooting down the aliens, just flying around the landscape learning to fly your hoverplane against the planet's gravity is a fun game in itself. And finally, an interesting fact.
It's been said by Telecomsoft that it never intended to program the game on the Spectrum but the programmer of the Spectrum version, Steve Dunn, just sent it in. Steve was so impressed by the demos of Zarch on the Archimedes at PCW that he set to programming in machine code. Blimey! Next Firebird'll say that it was written in binary on the back of an airmail envelope with a stub of pencil and a slide rule! Hah! Only kidding, choplets. And, if that's Steve's first effort of machine coding on the Speccy, all I can say is his Basic programs must have been brilliant! Take it from a dude who knows... Virus on the Spectrum IS the state of the art." (Your Sinclair)