• Stars
    star
    213
  • Rank 180,069 (Top 4 %)
  • Language
    Nim
  • License
    Other
  • Created over 5 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Toolkit for writing Game Boy Advance games in Nim

Natu GBA Logo

Natu is a package for making Game Boy Advance games in Nim.

Originally a wrapper for libtonc, we are now growing in our own direction: ditching some old conventions to be more Nim-friendly, and adding more libraries.

Features

  • Full GBA memory map + flag definitions
  • BIOS routines
  • Interrupt manager
  • A powerful text system (TTE)
  • Surfaces (draw to tiles like a canvas)
  • Efficient copy routines
  • Sin/Cos/Div LUTs + other math functions
  • Fixed-point numbers, 2D vector types
  • Random number generator
  • Hardware sprites, affine matrix helpers
  • Color/palette utilities
  • Button states (hit, down, released)
  • mGBA logging functions
  • Maxmod bindings for music/sfx
  • Posprintf wrapper for string formatting

Usage

For docs and setup instructions go to natu.exelo.tl

The examples can be found at git.sr.ht/~exelotl/natu-examples

Happy coding! And if you need any help you can reach me (exelotl) on the gbadev discord, #natu irc channel on EFnet, or ask a question on the natu mailing list.

Thanks

tonc + libtonc by cearn
maxmod sound system by mukunda johnson
libugba's interrupt handler by AntonioND ACSL's malloc/free by pgimeno mGBA by endrift
posprintf by dan posluns
natu logo by hot_pengu, based on pixel art by iamrifki


NatuÂ