The Nintendo Reverse Engeneering Project

Well this is my first attempt at a GBA coding tutorial and will eventually cover everything required to get your own GBA game up and running. This tutorial assumes you have a working knowledge of C programming and at least know that there is such a thing as assembler language. It does not assume you have prior game programming experience. If you do not know C or would like to learn a bit about game programming in general then head on over to my tools section under required reading. This will point you in the direction you need to go such that as long as you know how to turn your computer on you will be able to work your way up to to creating your own Gameboy Advanced game. It is my opinion that the GBA is ideal for a person just starting out in game programming. If you find any errors in these tutorial or you just find that a concept is not explained clearly enough feel free to contact me at . The more feedback I get the better this site will be.

This tutorial is arranged by days with each day covering a new topic, at the moment only day one through four are complete but others will soon follow.

If you do not have a Flash linker or MBV2 cable then get one. Without one of them you will never be able to see your code running on your own Gameboy Advaced. It is just no fun to program for emulators :) You can check out a review of these tools in my tools section or if you are feeling impulsive head

Gameboy Advance Flash Linker

on over to GameGizmo and buy them. Get them both if you can afford it they are two very different tools.

Day 1: Getting started.
Day 2: Mastering the bitmap Graphics modes.
Day 3: All about sprites.
Day 4: Tile modes and background rotation
Day 5: Interrupts, Timers, and DMA

Day 6+: Makeing the game
For sound and music:

Making the game