C Compiler (foo_cc):
https://github.com/LincolnSand/foo_cc
Jul 2023 - current
- Implementing a custom C compiler targeting x86_64 Sys V gas assembly using C++17
- Developed recursive descent and Pratt parsing for large portions of the ANSI C grammar
- Added support for most of the C static type system
- Created a backend that emits x86_64 Sys V ABI compliant gas assembly language
IA-32 Operating System (RocketOS):
https://github.com/OperatingSystemRocket/RocketOS
Feb 2021 - April 2023
- Developed a basic operating system kernel targeting 32-bit x86 (i686) and legacy BIOS using ANSI C11
- Wrote hardware drivers for IDT/ISR, PCI/PCIe, basic serial and VGA text I/O, and basic AHCI
- Implemented basic scheduling, system calls, and virtual memory/paging
- Ported the Intel ACPICA codebase to run in RocketOS and set up a GCC/binutils OS-specific toolchain
- Set up a full CI/CD pipeline with reproducible builds using Docker and GitHub Actions
OpenGL Game Engine (Forest Game Engine):
https://github.com/Game-Engine-Development/Forest-Game-Engine
Sep 2019 - Dec 2020
- Developed a basic OpenGL 3D renderer supporting Physically Based Rendering (PBR) with C++17 using OpenGL 3.3
- Experimented with noise algorithms like OpenSimplexNoise to generate heightmaps
- Integrated and used the Dear ImGui, Assimp, and GLM libraries