$ cd ~/projects/joyboy
← Alle Projekte ansehen
JoyBoy
Ein Game-Boy-Emulator in Go geschrieben, mit interaktivem Debugger und OpenGL-Rendering.
$ open links
$ cat about.md
JoyBoy ist ein in Go geschriebener Game-Boy-Emulator, veröffentlicht als Version 0.1. Er emuliert die LR35902-CPU mit einem No-MBC-Aufbau (32 KiB) und rendert Frames in OpenGL mit GLFW und Dear ImGui. Ein interaktiver Debugger erlaubt es, die emulierte CPU zu pausieren, Schritt für Schritt auszuführen und neu zu starten; das Joypad wird auf Tastatursteuerung abgebildet. JoyBoy wurde mit handgetesteten Tetris- und Dr.-Mario-ROMs verifiziert und lädt sein ROM über einen fest verdrahteten Pfad - eine vollständige Cartridge- und Sound-Implementierung ist für zukünftige Versionen geplant.
$ cat info
$ cat features
CPU-Emulation
Emulation der LR35902-CPU (Sharp SM83-Kern) mit einem No-MBC-32-KiB-Cartridge-Aufbau.
Interaktiver Debugger
Breakpoints per Klick auf Speicherzellen setzen, die emulierte CPU neu starten, im Einzelschritt und Schnellschritt ausführen und Register und Speicher inspizieren.
Echtzeit-VRAM-Viewer
GPU-beschleunigte Tile-, Background-, Window- und Objekt-Viewer (Sprites), die den Live-VRAM-Inhalt direkt in den Debugger rendern.
OpenGL-Frame-Rendering
Rekonstruiert die Background-, Window- und Objekt-Layer und lädt den kompletten Frame bei VBlank hoch, gerendert in OpenGL über GLFW und Dear ImGui.
$ cat gallery