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 2978fde0dc Add tasks.json
Former-commit-id: 602d0564b1fe77ff58c4ee00e22d0a7b2c2fab19
2019-11-12 18:22:00 +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 mGBA test suite now boots! 2019-11-12 18:22:00 +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 Update Cargo.lock 2019-11-09 19:44:55 +02:00
Cargo.toml Make the debugger work again, but currently breakpoints are not supported. 2019-11-12 18:22:00 +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.