# Lighthouse | Harbour Masters | Knowledge Base | Instagit

GitHub Stars: 291

Repository: https://github.com/HarbourMasters/Lighthouse

---

## Articles

### [How Lighthouse Maintains Compatibility with Different N64 ROM Versions: US v1.0, v1.1, PAL, and JP](/HarbourMasters/Lighthouse/lighthouse-rom-version-compatibility-us-pal-jp)

Discover how Lighthouse supports US v1.0, v1.1, PAL, and JP N64 ROM versions using compile-time flags and runtime asset remapping from a single codebase.

- Tags: internals
- Published: 2026-08-04

### [lighthouse.cfg.json Structure and Parsing in HarbourMasters/Lighthouse: A Complete Guide](/HarbourMasters/Lighthouse/lighthouse-cfg-json-structure-parsing)

Explore the lighthouse.cfg.json structure and parsing in HarbourMasters/Lighthouse. Learn to access settings with dot-notation via Ship::Context::GetConfig() for easy configuration management.

- Tags: deep-dive
- Published: 2026-08-04

### [How SDL2-Net Integration Enables Multiplayer in Lighthouse: A Deep Dive into the Network Architecture](/HarbourMasters/Lighthouse/lighthouse-sdl2-net-integration-multiplayer-features)

Explore how Lighthouse integrates SDL2-net for threaded TCP networking. Discover how this enables multiplayer features and can be conditionally compiled to exclude networking when not needed.

- Tags: deep-dive
- Published: 2026-08-04

### [How N64 Graphics Microcode Shaders Are Translated for Modern APIs in Lighthouse](/HarbourMasters/Lighthouse/n64-graphics-microcode-shader-translation-modern-apis-lighthouse)

Discover how Lighthouse translates N64 graphics microcode shaders for modern APIs. Learn about its intermediate representation and GLSL/HLSL shader execution for next-gen GPUs.

- Tags: internals
- Published: 2026-08-04

### [How Lighthouse Minimizes Input Lag in the Port: 4 Engine Techniques Explained](/HarbourMasters/Lighthouse/lighthouse-input-lag-minimization-techniques)

Discover how Lighthouse minimizes input lag with 4 engine techniques: early polling, raw input, angle-lerp, and configurable buffers. Optimize your port performance today.

- Tags: deep-dive
- Published: 2026-08-04

### [How Lighthouse Manages N64 Memory Mapping on Modern Systems](/HarbourMasters/Lighthouse/lighthouse-n64-memory-mapping-modern-systems-management)

Discover how Lighthouse replicates N64 memory mapping on modern systems. Explore its simulated heap and compatibility wrappers for N64 allocation calls.

- Tags: internals
- Published: 2026-08-04

### [How Lighthouse Resolves Mod Loading Priority Conflicts: Alphabetical Order Wins](/HarbourMasters/Lighthouse/lighthouse-mod-file-conflict-resolution-loading-priority)

Discover how Lighthouse resolves mod loading priority conflicts. Learn how alphabetical order ensures correct asset loading and prevents overwrites, keeping your game stable.

- Tags: internals
- Published: 2026-08-04

### [How Lighthouse Handles and Emulates the N64 Save Format: A Deep Dive into EEPROM Emulation](/HarbourMasters/Lighthouse/n64-save-format-handling-emulation-lighthouse)

Discover how Lighthouse emulates the N64 EEPROM save format. Learn about its block-based save structure mapping and hardware-accurate read/write implementations.

- Tags: deep-dive
- Published: 2026-08-04

### [How the Lighthouse GitHub Actions CI/CD Pipeline Extracts Assets Without Storing ROMs](/HarbourMasters/Lighthouse/lighthouse-github-actions-cicd-pipeline-asset-extraction-no-roms)

Discover how the Lighthouse GitHub Actions CI/CD pipeline extracts game assets from ROMs ephemerally using a custom torch utility. Learn how to create distributable .o2r archives without storing ROMs.

- Tags: internals
- Published: 2026-08-04

### [How to Create and Pack Custom .o2r/.otr Files for Lighthouse: A Complete Guide](/HarbourMasters/Lighthouse/developer-guide-create-pack-custom-o2r-otr-files-lighthouse)

Learn to create and pack custom o2r otr files for Lighthouse with this complete guide. Export, edit, and re-import game assets using Torch and Retro tools.

- Tags: how-to-guide
- Published: 2026-08-04

### [Lighthouse Engine Logging and Debugging Capabilities: Complete Guide](/HarbourMasters/Lighthouse/lighthouse-logging-debugging-capabilities)

Explore Lighthouse's logging and debugging capabilities. Inspect game state with on-screen debug text, module stubs, audio flags, and compile-time toggles. No external tools needed.

- Tags: complete-guide
- Published: 2026-08-04

### [Rendering Optimizations in Lighthouse: How HarbourMasters Optimizes Banjo-Kazooie for Modern GPUs](/HarbourMasters/Lighthouse/lighthouse-rendering-optimizations-modern-gpus)

Discover Lighthouse rendering optimizations like draw-distance scaling and frustum culling. See how HarbourMasters optimizes Banjo-Kazooie for modern GPUs by reducing overdraw and CPU overhead.

- Tags: performance
- Published: 2026-08-04

### [How the Alternate Assets System in Lighthouse Works: Tab Key Toggle Explained](/HarbourMasters/Lighthouse/lighthouse-alternate-assets-system-tab-key)

Explore Lighthouse's alternate assets system. Instantly toggle custom graphics with the Tab key. Learn how this resource redirection feature enhances your game.

- Tags: deep-dive
- Published: 2026-08-04

### [How Lighthouse Emulates the Nintendo 64 Audio System with libultralib](/HarbourMasters/Lighthouse/nintendo-64-audio-system-emulation-libultralib-lighthouse)

Discover how Lighthouse emulates the Nintendo 64 audio system using libultralib. This port preserves original Banjo-Kazooie audio behavior on modern PCs.

- Tags: deep-dive
- Published: 2026-08-04

### [How Lighthouse Handles Platform-Specific Code for Windows, Linux, and macOS Development](/HarbourMasters/Lighthouse/lighthouse-platform-specific-code-windows-linux-macos)

Discover how Lighthouse handles platform-specific code for Windows, Linux, and macOS. Learn about its CMake-based OS detection and preprocessor guards for cross-platform C/C++ development.

- Tags: internals
- Published: 2026-08-04

### [Lighthouse CMake Targets and Build Configuration Options](/HarbourMasters/Lighthouse/lighthouse-cmake-targets-build-configuration-options)

Explore Lighthouse CMake targets and build configuration options. Customize sanitizers, networking, and platform settings for your build.

- Tags: how-to-guide
- Published: 2026-08-04

### [How Romhacks Are Extracted and Loaded as Mods in Lighthouse](/HarbourMasters/Lighthouse/lighthouse-romhack-extraction-mod-loading)

Discover how Lighthouse extracts romhacks into slim overlay mods. Learn about the multi-stage pipeline, mod placement, and enabling single romhack overlays with a game restart.

- Tags: how-to-guide
- Published: 2026-08-04

### [How Lighthouse Supports Multiple Game Regions Through Language Packs: A Technical Deep Dive](/HarbourMasters/Lighthouse/lighthouse-language-pack-support-game-regions)

Discover how Lighthouse supports multiple game regions using modular language packs. Learn about runtime asset swapping and UI string replacement for a seamless global gaming experience.

- Tags: deep-dive
- Published: 2026-08-04

### [How Lighthouse’s Custom Controller Mapping System Works: A Deep Dive into the Mapper Architecture](/HarbourMasters/Lighthouse/lighthouse-custom-controller-mapping-system-functionality)

Explore Lighthouse's custom controller mapping system, powered by a state-machine driven binding system that wraps the SDL gamepad API and saves mappings in gamecontrollerdbtxt format.

- Tags: deep-dive
- Published: 2026-08-04

### [How DirectX 11, OpenGL, and Metal Backends Are Implemented in Lighthouse](/HarbourMasters/Lighthouse/directx11-opengl-metal-backend-implementation-differences)

Discover how Lighthouse implements DirectX 11 OpenGL and Metal rendering backends using Fast3D for a seamless user experience across Windows macOS and other platforms.

- Tags: internals
- Published: 2026-08-04

### [How to Extract Assets from a Banjo-Kazooie ROM Using Lighthouse: A Complete Guide](/HarbourMasters/Lighthouse/banjo-kazooie-rom-asset-extraction-process)

Easily extract Banjo-Kazooie ROM assets using Lighthouse. Follow our five-step guide for ROM selection, validation, initialization, parsing, and OTR archive generation.

- Tags: how-to-guide
- Published: 2026-08-04

### [How .o2r and .otr Asset Files Work Internally in Lighthouse: A Deep Dive](/HarbourMasters/Lighthouse/o2r-otr-asset-file-format-internal)

Uncover the internal workings of .o2r and .otr asset files in Lighthouse. Learn how these ZIP archives and texture containers are managed by the resource manager.

- Tags: deep-dive
- Published: 2026-08-04

### [Lighthouse and libultraship: Understanding the Submodule Relationship in N64 PC Ports](/HarbourMasters/Lighthouse/lighthouse-libultraship-relationship)

Understand how Lighthouse uses libultraship for N64 emulation in PC ports. Discover the core relationship between these essential N64 emulation components.

- Tags: internals
- Published: 2026-08-04

### [How the Lighthouse Decompilation Project Is Structured: A Deep Dive into the Banjo-Kazooie Source Code](/HarbourMasters/Lighthouse/lighthouse-decompilation-project-structure)

Explore the Lighthouse decompilation project structure. Discover its layered architecture, CMake builds, N64 emulation, game logic, and asset pipelines for Banjo-Kazooie.

- Tags: deep-dive
- Published: 2026-08-04

