shards

Version, currently master branch1 version
  • master branchlatestFeb 15, 2025

github.com/Globoplox/gba-stuff

Pet project for exploring game boy advance development.

5 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  shards:
    github: Globoplox/gba-stuff
    branch: master

master is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
>= 1.7.2
License
MIT
Author
Globoplox
Targets
  • bmp_to_assets from src/compile_time/bmp_to_assets.cr
  • assets_builder from src/compile_time/assets.cr
  • txt_to_palette from src/compile_time/txt_to_palette.cr

Dependencies

Development Dependencies

  • bmp*github: globoplox/bmpdev

README

Game Boy Advance playground

This repostiory is my sandbox for playing with GBA.
I'm doing it as much from scratch as I can because it is more intersting this way.
I'm also doing it in crystal for the same reason.

I am using this very cool guide TONC
and the GBA hardware specs from there: GBATEK. The startup file are mostly taken from there.

Dependencies

They should be available on every sane linux distro packages manager:

You migh also want a GBA emulator, I use mgba.
As I write this, the rom work as expected in mgba but not in mgba-qt, which is weird.

Run shards to install crystal development dependencies.

Usage

Just make it.

Immediate TODO:

  • [ ] Basic string display system
  • [ ] Better assets handling
  • [ ] Maybe: find a way to reduce clutter without section-gcing __crystal_main.

Credit