Skip to product information
Game Boy (DMG) Emulator For Q-SYS

Play a Game Boy inside your Q-SYS Core!

This plugin implements a Nintendo Game Boy (DMG) emulator entirely in Lua inside a Q-SYS plugin. The Game Boy's 160×144 display is rendered directly as SVG graphics inside the plugin UI, allowing games to be played from the plugin block or from a UCI. No external hardware, no streaming, no dependencies.

This plugin is free, unencrypted, and provided as-is for educational and research purposes. Examine the source, learn from it, modify it, it's yours to explore.

  • Full DMG Emulation – SM83 CPU, PPU graphics, memory bus, timers, and interrupt handling implemented in pure Lua.
  • Cartridge Support – MBC1, MBC2, MBC3, and MBC5 mappers for broad game compatibility.
  • SVG Display Pipeline – 160×144 Game Boy screen rendered as optimized SVG directly in the plugin UI.
  • Save System – Battery-backed SRAM and 3 save state slots, all persisted inside the Q-SYS design file.
  • Playable Controls – D-pad, A/B, Start/Select buttons on the plugin block or wired to a UCI touchscreen.
  • Performance Optimized – Binary-tree opcode dispatch, parallel timer architecture, frame skip, and RLE scanline compression. Runs within Q-SYS Lua execution limits.

Included Demo ROM

Ships with the Lost In Translation demoscene ROM from the AYCE demo group so it runs immediately after installation. A build script is included for developers who want to inject their own backup game ROMs.

Perfect For

  • Exploring the limits of the Q-SYS Lua runtime
  • Learning emulator architecture in pure Lua
  • Studying advanced Q-SYS plugin techniques
  • Trade show demos and lab experiments
  • Engineers who enjoy seeing systems used in unexpected ways

 

  • Compatibility: Q-SYS Designer 9.x+
  • License: Free / Open Source

You may also like