LVGL Game Boy Advance Emulator


Possibly the cleanest GBA emulator port:

FASTSHIFT/lv_gba_emu: LVGL Game Boy Advance Emulator (


  • The emulator kernel is based on vba-next and does not depend on any third-party libraries.
  • Decoupled from the OS, only relying on lvgl’s memory allocation and file access interface.
  • Support to use GBA framebuffer directly as lv_canvas buffer, zero copy overhead.

To be completed

  • Audio output support.
  • Frame rate control support.
  • Optimize key mapping and decouple from linux event device.
  • Virtual key support.
  • Memory usage optimization.

Very nice! Is there a video maybe? :slight_smile:

Yes, you can download it here:
lv_gba_emu/images at main · FASTSHIFT/lv_gba_emu (


LVGL is only providing a canvas, right? Or is there anything else you do with LVGL?

LVGL provides the canvas, virtual keys, file access interface, and dynamic memory allocation.
Audio output needs to rely on other interfaces, such as SDL2.

1 Like