Skip to content

exelotl/natu

devel
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
May 22, 2022 03:19
January 19, 2021 02:53
February 7, 2022 20:53
November 17, 2023 03:58

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 

About

Toolkit for writing Game Boy Advance games in Nim

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •