Projects
I have worked on...probably too many computer-science related projects over the years.More information is available on my CV!
Ongoing Projects:
Project to emulate the NVIDIA NV1 and NV3 (RIVA 128) GPUs from 1995-1997.
Required extensive research on reverse engineering and GPU design. Debugged drivers with 32-bit WinDbg on a Windows 2000 client which crashed constantly (without symbols!). Had to understand hash tables and gray code to implement object system for GPU executions. Not really over, just on an extended hiatus because of how painful it is to actually implement anything. After 9 months of development, the first rendering was achieved on March 21, 2025 at 3 AM; development slowed down shortly after due to a heisenbug involving traversing the instance memory hashtable that took 6 months to fix.
Currently working on Nvidia NV1 emulation.
The spiritual successor to Trackmania Domino. Very early in development.
An SGI IRIS 3130 emulator. Very early in development.
Historical Projects:
A multiplayer video game that, for some reason, was based on the Quake 2 engine. It was intended to be a team-based shooter where one side would be able to spawn zombies and modify the environment to their advantage while the other side would have traditional FPS weapons.
A university project for CT5051 Experimental Games. The idea was that we had to invert a concept that was given to us by the lecturer; we received Dominoes and ended up producing a time-trial based racing game in the vein of the somewhat well-known series Trackmania. Still waiting for the grade... (3 June 2026).
Asset quality was variable and planning was poor.
An experimental Wolfenstein 3D raycast type game. Was abandoned very quickly as the graphical technique used was too limiting of the overall game design.
When I was in the Windows beta community (which is a silly thing to say), I designed and built a custom tool to bruteforce the Microsoft Symbol Server (Symsrv) to attempt to identify internal / beta Windows components. This was extremely successful with many internal versions being identified; even daily builds of Windows 11, as they were being compiled, were being put up on this server as they were being compiled.
I did extensive research on two related Microsoft products from the mid-1980s; MT-DOS, an early attempt at extending MS-DOS to multitasking, also known as MS-DOS 4.0 (not to be confused with the MS-DOS 4.0 from 1988), and the earliest versions of Windows such as 1.01 (1985), 1.2 (1986), and 2.0 (1987). These share code and certain developers. The first 5 years was largely spent not really doing anything, but real development and an attempt at reverse engineering Windows 1.0 started in 2022. While these eventually produced a recompilable Kernel, the resulting kernel did not boot consistently or at all due to an extremely specific environment being required (for instance, the load address of the kernel in memory is critical to memory manager initialisation). The project was later cancelled, for reasons that cannot yet be discussed; perhaps anti-cancelled would be a better way of describing it.
The MT-DOS part of the project was much more successful. Extensive docmuentation was produced on how it worked and many many materials, including design documents, builds and releases of the product were discovered and archived, and even part of the source code to one of the builds. It was also proven that OS/2 was a direct derivative (although largely rewritten) of MT-DOS. In fact, it would be fair to say that I have the dubious distinction of being the only expert on Earth of a practically cancelled 1985 Microsoft operating system.
During the proces of the MTDOS 4 reverse-engineering project, I had become aware of the open-source release of the somewhat obscure 1995 3D modelling tool "Microsoft 3D Movie Maker" upon request from the well-known in certain circles Alice Averlong (foone), I ended up contacting a representative of Microsoft (Scott Hanselman) to try and obtain the source code of Multitasking MS-DOS 4.0. To make a long story short, we (by which I really mean him) really found the MS-DOS 4.0 (regular) source code from 1988 and were able to (after a lot of legal review) get the code released. My role in this involved poking him a lot and helped to draft the blog post around the release, and advised on proper preservarion practices. I also had well-mannered internet arguments with his detractors, some of which ended up on the technology press.. However, we did recover a beta build of Multitasking DOS 4 and part of the source code to that build.
2D SDL-based game engine using C# and SDL bindings with an absurdly overcomplicated design.
2D SDL-based game engine using C# and SDL bindings. Successor of Lightning 1 when that failed due to design issues and bloat. Was completed; version 1.0 was released in August 2022 and 1.1 in November. Had over 20,000 words of documentation, Visual Studio integration and a very extensive feature set including rendering,
collision, audio, particle effects, collision, animation (via JSON and frames), and more. Ultimately abandoned after version 2.0 didn't turn out particularly well.
A very poorly named hurricane simulator.
A track maker for hurricanes written in WPF and C#.
A very simple tool that calculated the accumulated cyclone energy of hurricanes. While built for the Hypothetical Hurricanes Wiki, actual meterology people did find it useful since it automated a common and quite thankless task. Still receives occasional updates to this day. WPF and C#.
An attempt to make a multiplayer mining game. It didn't get very far.