/esprit

A Game Boy "Mystery Dungeon" engine written in SM83 assembly

Primary LanguageAssemblyOtherNOASSERTION

Esprit

Screenshots

esprit-screenshot0 esprit-screenshot1

esprit-screenshot2 esprit-screenshot3

Dependencies

I use bleeding-edge RGBDS versions to help the maintainers test new features. You will likely need to compile the master branch of RGBDS manually to be able to build this project.

Windows is not supported. Use a POSIX environment like WSL or MSYS2.

Building

Navigate to the project root and execute make. This will build the ROM and any tools needed by it, and place them in the bin/ directory.

A few options are available for debugging. Adding CONFIG= to your make invocation will allow you to enable some of these. (For example, make "CONFIG= FIRST_DUNGEON=xLakeDungeon" will cause the game to begin in the lake instead of the forest)

The build-time options can be found in src/include/config.inc

Naming Conventions

  • All labels are PascalCase

    • Prefix x: ROMX
    • Prefix v: VRAM
    • Prefix s: SRAM
    • Prefix w: WRAM
    • Prefix h: HRAM
  • Constants are in ALL_CAPS

  • Macros are in snake_case

  • All instructions and directives are in lowercase (ld, call, db, section, etc...)