Portfolio

YVR Digital Twin  (2021 – 2023)

Leading the development of the Vancouver YVR Airport Digital Twin.

Instrumental as Unity development lead of YVR Digit Twin. From project setup to structure and implementing the main foundation blocks. Training YVR developers in Unity, train new hires in the codebase. Advising management and PO’s on technical development.

Developed the project to launch in 2022 on Windows desktop, iPad tablet and iPhone devices. In use today by staff of the YVR Airport from operations to maintenance and security. Implemented GIS data processing and representation, allowing source of truth data into the Digital Twin. Implemented MLAT radar functionality to allow showing movement and positions of aircraft and airside vehicles in both 2D and 3D tools of the Digital Twin. Implemented Location Services on devices to show staff and team locations.

As technical lead and Unity technical advisor. Advised YVR on contracts with external partners. Communicated and implemented features with internal YVR teams and services.

YVR Digital Twin 3D Prototype

Dynamics 365 Guide on HoloLens 2  (2019 – 2021)

Dynamics 365 Guides product team. Guides is Microsoft’s leading Mixed Reality (augmented reality) HoloLens 2 headset, Guides is developed in Unity 3D. There is also a companion Windows UWP .NET application and Azure / MS Dataverse backend. The product is used in industry around the world from automotive manufacturing, science labs, mining and beyond.

Dynamics 365 Guides

Plants vs Zombies Battle for Neighborville (2018 – 2019)

Game Developer for EA’s & PopCap AAA game title “Battle for Neighborville” 3D online multiplayer shooter. On the UI team, 3D in game UI, menus, scoreboards, intro scenes, end of level scenes, in game displays, multiplayer selections, rewards in game UI.

Dynamics 365 Guides

PeriopSim VR (2017 – 2018)

A Virtual Reality medical training app, in use today in hospitals to help train perioperative nurses.

PeriopSim VR with Instrument Handover Technology

Snaky Squares (2016)

Releasing July 29th on iOS App Store and Android Google Play Store, other platforms to follow.

Snaky Squares is a Snake in a World of Squares, Platforms and Yellow Dots.

Snaky can turn on squares and only in four directions.  Help Snaky by tapping the screen in the direction you want him to head, one tap and Snaky turns 90 degrees. Lead Snaky to the yellow dots. As Snaky gets longer Snaky also gets faster, you’ll need all your skill to not fall off the platform or hit your own tail! Win power up items by watching videos, or buy permanent powers in the shop, use the power items to control your speed and tail length.

Snaky Squares (iOS and Android)

Contract Work: iOS, Android

iOS and Android app design and development. Work for large and small clients including Roche, Medtronix, Great Fridays, Vodafone and Medex Media. Applications deployed and supported at numerous large events. Development of apps and server side data collection & serving, installation and setup on location, support. High pressure jobs to meet clients deadlines.

[rev_slider slider-con]

Local small business services including system setup, website design, hosting, email, print design and IT.

Arrow Mania (2012 – 2013)

Arrow Mania released on iOS initially followed by Android and Kindle Fire.

Finger fun in a 2D physics challenging platformer. Shooting arrows from you crossbow on wheels, hit button targets, bounce arrows off trampolines and defend yourself from bomb dropping air balloons. Just don’t hit any birds with your arrows or you’ll be in trouble.

Arrow Mania 2 (2014)

More crossbow arrow shooting challenges, and now you can use your vacuum cleaner too to suck up those pesky birds! Makes total sense.

Nova Law Corporation (2016)

Setting up a law firm from scratch isn’t easy. From finding an office to following all the Law Society rules and setting up the computer systems, office equipment, furniture and even buying staplers! No really, there are a lot of things to research in today’s digital world especially when it comes to security and privacy.

Building a successful business also means marketing, from signage and business cards to websites, SEO and online marketing campaigns to compete and be found by your customers.

Datel (1994)

I went straight from University to Datel Design and Development.

Datel’s most famous products were the GameShark (Americas) and Action Replay (Europe/Japan) “game enhancers”. We also made all sorts of addon peripherals and software for games consoles and handhelds.

Playstation Gameshark Pro (1996)

The second version became “Pro”. Slightly higher in stature it included RAM chips and new features including a built in code finding system.

PS1_gameshark_1_pro
Gameshark Pro / Action Replay Pro. Built in trainer and extra memory.

Playstation Gameshark CDX (1997)

So Sony decided to save build costs by removing the cartridge port on the back of the Playstation! Hence GameShark had to become a CD!

PC Action Replay for Windows 95/98 (1998)

I had always been into the more technical side of programming, from beginning in assembler languages on Atari ST and Amiga, to 8086 assembler on PC, to protected mode on 386 PC. It all made Windows low level programming seem well – quite high. Lots of documentation and API’s. It only made sense to make an Action Replay that would work on all Windows games.

I can’t seem to find any images on the internet, but it was a nice multi page dialog utility with tools for hunting down the cheat codes. You could make your own codes in this one too. The product still worked well into the life of Windows ME and XP but wasn’t popular enough to keep working on, not with more games consoles round the corner.

Here is a nice readme I wrote for one of the updates: http://web.archive.org/web/19990218081023/www.datel.co.uk/pc.htm

Playstation Gameshark / Action Replay (1995)

The Playstation took off and so did the Gameshark / Action Replay product. The product itself very similar to the Saturn version, a cartridge that plugged into the back of the PlayStation console.

I developed the user interface, the code engine that booted and ran in the background of games, tools for development, tools for communications with the PC Comms system. These tools would not only aid development but also find cheat codes, upgrade the flash memory and eventually be the software product given to end users who invested in a cartridge and the comms board.

PS1_gameshark_1
The first cartridge for the Playstation, included software versions 1 through 2 (upgradable via the comms board product). The comms board connector is on the back.

Sega Saturn Gameshark / Action Replay (1995)

Generally for all the Gameshark products I was involved with, I developed the engine code, the user front end interface, any other software like PC Windows applications to support the product (internal tools and tools like the comms board software – see below).

saturn-gs
The Saturn Gameshark and Action Replay was a cartridge that ran from ROM. A connector in the top could be used with the comms board product.

[rev_slider slider-sat-ar]

The above video is a customer reviewing a V2 Saturn Gameshark

300px-PC_Action_Replay_1994

Comms Board (internal dev system and product, 1994)

Datel being an unofficial product developer needed to create our own dev system and software tools. For this the comms board was made, at this time PC’s used ISA slots (PCI was just coming in). I developed command line tools as well as Dos window tools to handle development and eventually a product for end users. The software allowed people to upgrade (flash), search for cheat codes, edit memory, copy gamesaves to and from the Gameshark / Action Replay product, and also led to home users being able to dev on their own!

commsboard
Comms board, used for as an internal development kit on Saturn, Playstation and others. Also sold as a product to end users along with software tools for them to use.

PC Action Replay (1994)

This was for PC’s running Dos and Dos4GW, pre Windows 95!

An ISA card and software for your PC. I’d only just started at Datel and this was one of the first Action Replay products I worked on. I started at a time Dos4GW was prevalent in gaming (e.g Doom had arrived) and the Action Replay didn’t support Dos4GW. I developed the 386 “protected mode” system which breathed new life into the product and allowed to work on all the latest games like Doom, you soon had the ability to fire 20+ rockets in a few seconds and other fun cheats.

Playstation 2 Optical Disc (2002)

This was the beginning of the end of my involvement with Action Replay/Gameshark engines and front ends. Times had changed in the industry, all consoles were now disc based optical media, all consoles use their own proprietary optical formats and advanced protections to prevent piracy (the public were copying PS1 discs with CD burners left right and centre so something had to be done).

So, Datel needed to be able to release products, by now Datel built its own CD duplication factory. It was now my job to figure out how to make a bootable PS2 optical disc…… oh!

I’d be reading all the optical media specification books multiple times and anything else I could find, I’d write full decoders and encoders which would work not only on EFM but HF signals too. Tools to capture high resolution HF waveforms digitally, tools to decode HF into EFM, then to sector data, then back again. Tools to search for patterns and anomalies in masses of analogue and digital data. Use numerous high spec hardware including Audiodev testing equipment, high resolution A to D capture, microscopes, a replication plant!

12 months and 100+ presses of CD stampers later, it was done…..

Gamecube Optical Disc (2003)

Just when I thought I knew everything about optical media and protections, Gamecube and the 3.5″ Gamecube happened. The format of the data was mostly DVD spec, just not quite, let alone a different sized disc. The WikiPedia has a detailed look at the disc and even mentions “six additional evenly spaced small cuts” in the discs data area which are related to one of the protection mechanisms and the BCA mark; there is a lot more going on but unfortunately I can’t say more due to contractual issues!

The numerous protection mechanisms on the disc would mean another this took 12 months of hair pulling too (I have no hair now), challenging and very satisfying work!

Gamecube-disc-BCA

The above is a photo I actually uploaded to WikiPedia BCA article (see it here)

Wii Optical Disc (2007)

Luckily for me, the Wii optical disc was much the same as the Gamecube disc, some tighter protection checks, and we had a working disc within a couple of months.

PSP Gameshark / Action Replay (September 2008)

My interfaces were always nice I think, even the Sega Saturn had scrolling and opening windows even though we were limited to graphics (I was literally plotting pixels back then with no access to hardware registers). Now with more powerful hardware and a hacking scene emerging Datel had a bit more ability to find out more about the hardware and actually draw some nice graphics for the front end. I dare say the PSP interface, as an interface for selecting from lists and toggling items on and off, is a 60fps joy. Every bit of interface design from detecting direction presses to scrolling titles to the next screen for continuous fluidity is in there.

I even added features to allow people to skin the menus and backgrounds (the public weren’t told in the end but could choose from a selection in the options screen). You could update your code list from the internet direct on the PSP (probably one of the first pieces of software to update like this at the time).

ar-psp

I didn’t code the engine or in game interface for this one, that was down to another Datel programmer (if you’re reading this and want me to write your name here just say). Products were taking a lot longer to produce at this point what with the better graphic interfaces, larger more complex games to make cheat codes for, lengthened time to reverse engineer hardware and develop ways to supply the product (in this case a memory stick, the disc in the package was for your PC, the media manager software).

[rev_slider slider-psp]

The above video is a customer reviewing the PSP Action Replay, it shows some of the user interface.

XPort 360 for Xbox 360 (2009)

There weren’t many non-Microsoft approved products for the Xbox, but this was one and very popular it was too! Connect your memory card or your hard disk to your PC and copy any file to and from the device. My previous research of Xbox (1) data formats as well as formats like FAT32/NTFS/Zip and for other devices left me in good stead for developing new tools to read and write to Xbox 360’s latest EXFAT system. This product opened the world to the users who wanted to backup their old save files, free up room on their device, swap save files, … it even led to some tech savvy users upgrading their hard drives.

xport360
The XPort 360 is the base unit, it plugs into your PC USB port, then plug in your Xbox 360 memory unit (front) and/or your hard disc.

xport360-soft
The XPort 360 utility. Not much to look at but a lot going on under the hood with a full ExFAT implementation, auto backup of special disk sectors, lots of extra tools to backup and transfer files, folders, disk images and memory card images.

Max Media Manager Pro PSP

The PSP was by far the most popular multimedia handheld and multimedia player, hence it also had its own “Pro” version with extra features. An advanced video edit mode that allowed features such as trimming, resizing the frame, cropping, advanced bitrate+quality settings. It also featured the most active online saves community with people swapping their game saves (e.g. start on the last level with this save, in this save you have the secret gun, etc).

maxmediapro

Max Media Managers (Various Platforms)

Windows software applications that let you manage you media (saves, videos, photos, MP3 music, etc). Usually came with some form of cable to connect to your memory card, or as in the case of PSP just a USB to mini USB cable.

Now this is a time people are just discovering that they can watch movies on other devices, IF they can re-encode the video say from a DVD to the memory of the device (or a memory card). The Max Media Manager software was one of the first, most complete and much cheaper than the competitors (mostly official software).

maxmedia
Just three of the many versions of the software for different platforms

Fun School 4 (1991)

I worked for a company related to Europress in my school summer holiday of ’91 (yes, really, most people have a paper route). I was busy programming on the Commodore Amiga some of the games from the Fun School 4 packages “under 5’s” and “5 to 7”. Each software package had 5 or 6 fun animated learning games.

fs4