Eclipse on windows using ARM9 toolchain


The following images contain some info about the settings for eclipse for the nds on windows XP. All settings can be found in the project settings.

Eclipse, (using nds plugin)


Using Eclipse as an IDE. (For now on MACOS.)

Download Eclips, version C/C++

you can configure Eclipse to make nds files.

(but this link does not give all information)

Issue: Eclipse does not see the header files ???

Solution: carefully configuring the project properties

(a little bit different for MACOS and XP)

Here for MACOS:

Create a makefile project, using MACOSX GCC

Then project properties — right click on project in Project Explorer —: (follow the pictures)

uncheck Generate makefile automatically

add DEVKITPRO and DEVKITARM manually finding the location in /opt/devkitpro/…

make sure MACOSX GCC is selected

in path and symbols we have a range of tabs to take care of…

these includes are shown in the Project Explorer in the Includes folder, which is not the folder with your header files, this is an extra folder

The source file is made and you have to copy your source files in this folder, which has a green dot on it.

output location for the .nds file

the makefile must be added by hand, and the content copied in it. (I used the makefile from a Programmers NotePad project

make sure this is shown in the Project Explorer, sometimes there is a Default ARM& folder, which is blocking path’s…so shift around until you have this configuration. The include folder has the header files. This folder is also added using Eclipse new folder, than the header files added.

To refresh do clean… under tab project of Eclipse. There will be automatic rebuilding.

My console said:

**** Build of configuration Default for project testingWhileItRains ****

arm-eabi-gcc -MMD -MP -MF /Users/contrechoc/Documents/workspace/testingWhileItRains/build/main.d -g -Wall -O2 -march=armv5te -mtune=arm946e-s -fomit-frame-pointer -ffast-math -mthumb -mthumb-interwork -I/Users/contrechoc/Documents/workspace/testingWhileItRains/include -I/Users/contrechoc/Documents/workspace/testingWhileItRains/build -I/opt/devkitpro/libnds/include -I/opt/devkitpro/libnds/include -I/Users/contrechoc/Documents/workspace/testingWhileItRains/build -DARM9 -c /Users/contrechoc/Documents/workspace/testingWhileItRains/source/main.c -o main.o
/Users/contrechoc/Documents/workspace/testingWhileItRains/source/main.c: In function ‘main’:
/Users/contrechoc/Documents/workspace/testingWhileItRains/source/main.c:88: warning: ‘touchReadXY’ is deprecated (declared at /opt/devkitpro/libnds/include/nds/arm9/input.h:94)
/Users/contrechoc/Documents/workspace/testingWhileItRains/source/main.c:21: warning: unused variable ‘test’
linking testingWhileItRains.elf
built … testingWhileItRains.arm9

Nintendo DS rom tool 1.41 РMay  1 2009
by Rafael Vuijk, Dave Murphy, Alexei Karpenko
built … testingWhileItRains.nds

(after a few houres of trying to get running with Eclipse….)


Eclipse with C/C++ is called CDT for Windows.

apparently you can also use a prepared nds configuration: (Eclipse->Help->Install New Software-> add website)

This is for Windows (?) I’ll try this on the XP…

The problem with WIndows is the C compiler MINGW or CYGWIN. These have to cooperate with ECLIPSE and that is somehow not easy(?).

help installing the nds plugin for Eclipse:

well, tried everything for the moment with Eclipse on XP…..:-(((

Programmer’s Notepad works without a flaw, and without any complaining: we’ll stick to Programmers NotePad!

Weird compiler problem


In my game the player can move blocks in four directions. While developing I used a printf() above the code that is causing problems. When I remove this printf I can no longer move boxes up, but I can move them in other directions.

I’ve also removed the printf() and called a different function. Same result, even if the function does nothing.

On the NDS it worked the same as in de emulator.

I compiled it using Eclipse and it turned out it does work when compiled in Programmers Notepad. So it’s appears to be a compile problem from Eclipse.

See images below:

nds homebrew IDE’s


There are two aspect to be careful about when programming for the nds:

c – feautures (or c++ feautures) like pointers, malloc and free

nds – features (including images, maxmod sounds etc)

To get acquainted with C and to be able to test your c structure we use DevCpp, which comes with it’s own template Makefile.

To do programming for the nds we use mainly Programmers NotePad, which ships with the DevKitPro. You can use the template nds makefile coming with the examples or the one used in the examples for this blog.

On MACOS we use Eclipse, setting this up must be documented in another blog.

But there are other IDE’s:

On I used once was C++ Visual Express:
page of devkitpro explaining how to set up:

experience with these IDE’s will be added later on.