Nintendo™ Game Boy Advance emulator and debugger.
This repository has been archived on 2024-06-01. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
Michel Heily 615515fcea gpu: bugfix: Fix objects with priority 3 not being rendered
This was apparent in Dragon Ball Z - Legacy of Goku II, where the save
point sprites were not rendered at all.


Former-commit-id: 156356ebe2f2a4879602019a1fe2c18fe2b8a395
2019-12-28 21:14:21 +02:00
.vscode Add tasks.json 2019-11-12 18:22:00 +02:00
img Fix many bugs, refactor many things.. 2019-11-09 01:06:24 +02:00
src gpu: bugfix: Fix objects with priority 3 not being rendered 2019-12-28 21:14:21 +02:00
.gitignore Initial commit 2019-06-24 16:36:20 +03:00
.travis.yml Fix typo in .travis.yml 2019-06-27 13:16:00 +03:00
Cargo.lock sdl2: Use callbacks with ring buffer instead of audio queue. 2019-12-28 17:03:59 +02:00
Cargo.toml sdl2: Use callbacks with ring buffer instead of audio queue. 2019-12-28 17:03:59 +02:00
LICENSE Create LICENSE 2019-06-24 16:36:20 +03:00
README.md Fix many bugs, refactor many things.. 2019-11-09 01:06:24 +02:00

RustBoyAdvance-NG

Build Status

RustBoyAdvance-NG Nintendo GameBoy Advance emulator and debugger, written in the rust programming language.

Currently passing armwrestler tests, and displays some of TONC's Demos.

TONC bigmap.gba demo

Using the REPL

You need to have rust installed, and somehow legally obtain a gba bios binary.

$ cargo run -- debug

Debugger REPL Demo

Why is this project needed ?

It's actually not. There are quite a lot of GBA emulators, and even some written in rust. Actually, I couldn't find any game capable emulators written in rust.

I'm only doing this as a side project intended for learning rust.

This is my third take on this project. My first go at this was about 3 years ago, but I didn't like rust much at the time so it got abandoned. I tried to resurrect it a year ago but didn't have the time to get invested in a side-project, let alone learning rust.

I've grown to like rust a lot since then, so here we go again. You know what they say, third time's a charm.

Links

  • ARM7TDMI Technical Reference Manual Technical Reference Manuals are fun.
  • GBATEK A single webpage written by no$gba developer Martin Korth. This page has pretty much everything. Seriously, it's the best.
  • TONC A comprehensive GBA dev guide that I used a-lot in order to understand the GBA system. Comes with neat demo roms that really helped me during development and debugging.
  • NanoboyAdvance A GameBoy Advance emulator written in C++17 by a nice person called fleroviux. I've used this emulator to search for a tough bug in mine.
  • Eggvance A GameBoy Advance emulator written in C++, with really useful CPU test roms.