Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Game Boy Advance (GBA) Port

Posted by dave m on February 10, 2008
Hi, I've just managed to get FreeRTOS 4.7.0 running on a Nintendo GBA-SP (also works on a DS). My demo just fires off two threads, one of which prints the tick count every second or so, while the other pokes data into the screen. I'll have to start adding code to handle various devices, but it doesn't look like it's that hard (so far!).

Anybody interested in the patches?

RE: Game Boy Advance (GBA) Port

Posted by Richard on February 10, 2008
That sounds fun. Excuse my ignorance, but what processor does the GBA use? Some form of ARM at a guess?


RE: Game Boy Advance (GBA) Port

Posted by saiberion on February 10, 2008
Your guess is right.

As far as I know and found out the GBA itself has an ARM7TDMI core at about 16.8 MHz.
The nintendo DS has 2 cores. One ARM946E-S at 67 MHz and an ARM7TDMI at 33 MHz.

But I don't know the exact technical specifications.

RE: Game Boy Advance (GBA) Port

Posted by dave m on February 10, 2008
Yes, it's an ARM7TDMI. There's a ton of info about it, and I'm pretty sure I once saw the actual manufacturer / part number, but I can't find it now. It looks like there was once a very active homebrew community, but it seems to have moved on to the DS, or to have gotten old / married / busy and gone away. <a href="http://nocash.emubase.de/gbatek.htm">Here's</a> the best collection of info I've found in one web page.

There's a <a href="http://sourceforge.net/projects/vba/>good emulator, VisualBoyAdvance</a>, and you can still get programmable cartridges for real hardware. I'm planning to use FreeRTOS on an old GameBoy to control a floor radiant heat system -- I need to monitor several OneWire thermometers and control a relay to switch on pumps &amp; so forth.

I couldn't figure out how to upload stuff to the Files area, so I put my patches <a href="http://www.mersenne.com/downloads/FreeRTOS-GBA.tar.gz">here</a>. Includes a compiled copy of the demo program ("demo.gba") so you can try it on the emulator without setting up a toolchain. Note that the compilation process requires a final preparation step ("gbafix") where some magic numbers are poked into the binary header. You can get a copy of gbafix <a href="http://darkfader.net/gba/files/gbafix.zip">here</a>.

[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

Version 10.1.1 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


FreeRTOS and other embedded software careers at AWS.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers


STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner