BFBB Decompilation Project

BFBB Decompilation Project

Reverse engineering the GameCube game SpongeBob Squarepants: Battle For Bikini Bottom. Studying PowerPC assembly code, low level data structures, analyzing control flow, and manually decompiling program logic back into C++ source code, which when compiled matches the original executable perfectly at a bit level. Created a live progress tracking website in React.

C++PowerPCGameCubeReverse Engineering
Cartoon Cartoon Summer Resort Port

Cartoon Cartoon Summer Resort Port

A complete port of an old web game Cartoon Cartoon Summer Resort (and Scooby Doo Hollywood Horror) from Adobe Shockwave to TypeScript. Also created a fully-featured map editor for viewing and editing the old game engine's map format.

TypeScriptReactShockwaveReverse Engineering
Lentokonepeli

Lentokonepeli

A real-time multiplayer World War II aerial dogfighting game. Instantly host or join a game with a click of a button and battle other players in the skies. Every match can be saved and replayed thanks to a fully deterministic replay system.

RustWASMTypeScriptReactWebRTCJavaReverse Engineering
pokered.ts

pokered.ts

A work in progress rewrite of Pokemon Red in pure TypeScript. The classic gameboy game ported to the web. No hardware emulation at all, but rather porting pure game logic and re-writing it in a high level language that runs in your browser.

TypeScriptCanvasReactReverse Engineering
Leia Programming Language

Leia Programming Language

An F# parser-combinator compiler and a Rust bytecode virtual machine which implement a simple programming language I am designing (named after my cat). Includes a web playground to play with the language.

F#CompilerRustVirtual MachineWASMProgramming Language
Lisp Interpreter

Lisp Interpreter

Wrote an interpreter for a LISP-like language (mplisp) in C++ and implemented a tiny standard library.

C++LISPInterpreterProgramming Language
Chess Engine (Quokka)

Chess Engine (Quokka)

A UCI-compatible chess engine which plays at roughly 1900 Elo strength. A somewhat primitive engine, utilizing alpha-beta search trees, piece-tables, and other simple positional evaluation functions. Check out the demo site to play against it in your browser.

C++Chess
GameBoy Emulator

GameBoy Emulator

An emulator of the Nintendo GameBoy. Debugged and implemented Zilog Z80 assembly code instructions and intricate system components.

C++EmulationZ80 Assembly
Inferno Shoutbox for MyBB

Inferno Shoutbox for MyBB

Developed one of the highest viewed and downloaded chatbox plugins for MyBB forum software, with over 750,000+ original thread views and thousands of comments. One of my first real open source contributions way back in 2013. To my surprise, it is still receiving attention and life support in 2025.

PHPJavaScriptHTMLCSSAJAX
Mattbox

Mattbox

My first ever programming project in 2012. I wanted to make a chat application, but had no idea how to program. I chose PHP and this project quickly turned into a dumpster fire of PHP, SQL, JavaScript, CSS, and HTML all mixed together in single files. Oh, and it was full of security vulnerabilities.

PHPJavaScriptHTMLCSSMySQL