Skip to content

UnsafePointer/nana

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nana (ナナ) CircleCI codecov

“The more my dreams are fulfilled, the quicklier they become realities losing their shine.”

Nana (manga), by Ai Yazawa

Nana (ナナ) is a Game Boy emulator written in Go. It's far from feature complete and there are still bugs in what it's implemented but what I got here helped me a lot to understand how computers work at one of their lowest levels, I hope this too helps someone else.

nana.gif

ROM Compatibility list

  • Tetris
  • The Legend of Zelda: Link's Awakening

Dependencies

Linux dependencies are listed here.

Installation

$ go get github.com/Ruenzuo/nana

Cross-compiling

See libsdl.org/extras/win32/cross/README.txt for information on how to build SDL for 64 bit mingw cross-compiler

$ make build-windows

Pre-compiled binaries

See Releases

Usage

$ nana path/to/rom.gb

Environment variables

  • NANA_DEBUG: enables buffered debug output to nana.log
  • NANA_LCD_STATE_DEBUG: includes the LCD state in debug output
  • NANA_MEMORY_ACCESS_DEBUG: includes the LCD state in debug output
  • NANA_ENABLE_TEST_PANICS: panic on undefined behaviour
  • NANA_ENABLE_REWIND: hold F10 to rewind the emulation
  • NANA_MAX_CYCLES: enables automatic shut down to specific cycle threshold

Building your own emulator

About

A Game Boy emulator written in Go

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages