Expand description
§agb
agb
is a library for making games on the Game Boy Advance using the Rust
programming language. It attempts to be a high level abstraction over the
internal workings of the Game Boy Advance whilst still being high
performance and memory efficient.
To get started with agb, you should clone the template repo and work from there.
Re-exports§
pub use agb_hashmap as hash_map;
Modules§
- Implements everything relating to things that are displayed on screen.
- Provides access to the GBA’s direct memory access (DMA) which is used for advanced effects
- Fixed point number implementation for representing non integers efficiently.
- Button inputs to the system.
- Interacting with the GBA interrupts
- Implements logging to the mgba emulator.
- Simple random number generator
- Module for reading and writing to save media.
- Implements sound output.
- System BIOS calls / syscalls.
- Unstable support for running tests using
agb
- Interactions with the internal timers
Macros§
- Includes sprites found in the referenced aseprite files.
- This macro is used to convert a png, bmp or aseprite file into a format usable by the Game Boy Advance.
Structs§
- This is the allocator for the External Working Ram.
- The Gba struct is used to control access to the Game Boy Advance’s hardware in a way which makes it the borrow checker’s responsibility to ensure no clashes of global resources.
- This is the allocator for the Internal Working Ram. This implements the allocator trait, so is meant to be used in specifying where certain structures should be allocated.
Functions§
- Default game
Attribute Macros§
- This macro declares the entry point to your game written using
agb
.