Subscribe to RSS Subscribe to Comments
devkitPro
SourceForge.net Logo

How do I use devkitPro toolchains with UltraEdit?

Click on Advanced->Tool Configuration and edit the dialog box as shown here. Type ‘make -r’ as the command line, ‘%rp’ as the working directory and ‘make’ as the menu item name. Tick the boxes as shown and click insert, you should see the item appear in the bottom list. The ‘clean’ item has ‘make clean’ as the command line and ‘clean’ as the item name. Similarly ‘all’ is ‘make all’ and ‘all’.

UltraEdit (7K)

You can also set up your own keyboard shortcuts from the Advanced->Configuration->Key Mapping dialogue. The default keys are [CTRL]+[SHIFT]+1 for the first tool, [CTRL]+[SHIFT]+2 for the second, and so on.

UltraEdit Keys (10K)

 

When UltraEdit is set up in this way you must have a project file in order to build, this is the simplest way to ensure that make is given the proper directory to run from and so find the makefile.The makefiles provided with the devkitPro example projects are designed to make life as easy as possible for the programmer. In most cases all you need to do is copy the contents of one of the template projects to the folder where you have created the .prj file. The makefile expects to find .c or .cpp files in the source folder and sets the include path to the include folder.

SourceForge Community Choice Awards.

SourceForge are looking for nominations for this year’s Community Choice Awards. If you use the devkitPro toolchains and you have a SourceForge login perhaps you’d like to nominate us :)

Nominate devkitPro

There don’t seem to be too many details on what the prizes might be but why not give us a chance to find out :)

UPDATE: Most nominations appear to be going to the “Best Tool or Utility for Developers” category. Since it appears that projects are chosen by the number of nominations in a category we have the best chance if you nominate us in that category.

I also found out what the prize is - from the awards FAQ :-

If my project wins, what do I get?
You get the bragging rights, and the glory that comes with knowing that your project was deemed by the community to be the best of the best within each category. You also get the option to keep your “winner” icon posted up on your project page forever, and we will send you a handy-dandy certificate, suitable for framing, to put on your wall.”

How do I use devkitPro toolchains with Visual Studio 6?

Start a new project and select Makefile.

Visual Studio 6 new project

In both the following dialogs type

make -r 2>&1 | sed -e 's/(.[a-zA-Z]+):([0-9]+):/1(2):/'

in the command line box. There doesn’t appear to be a way to get clean to work with Visual Studio so the rebuild all switch is used here. The sed part of this command is used to parse the output from gcc and translate the error messages so Visual Studio understands them.

Visual Studio 6 makefile project

If you have a makefile project already set up you can also set the make command line through the Project Settings dialog.

Visual Studio 6 settings

The makefiles provided with the devkitPro example projects are designed to make life as easy as possible for the programmer. In most cases all you need to do is copy the contents of one of the template projects to the folder where the dsp/dsw files are. The makefile expects to find .c or .cpp files in the source folder and sets the include path to the include folder. In some cases you may need to add the path to make in the Executable file paths in Visual Studio’s options. To do this click on Tools->Options and select the Directories tab. Use the drop down to select Executable files and add the path to the msys bin folder which will be c:\devkitPro\msys\bin if you left the default path in the installer.

Visual Studio 6 directories

devkitPro Windows Installer

This is a windows web installer designed to obtain the latest versions of all the devkitPro toolchains and support files. It helps the novice user set up a working installation with minimal effort.

Windows Installer

Xboo Communicator

Xboo Communicator is a GUI application for sending multiboot images to a Gameboy Advance using the Xboo cable as designed by Martin Korth. The software also includes a file server and debug console to aid programmers in developing small applications and games within the 256k onboard RAM.

Xboo Communicator running Panda Forth
Xboo Communicator running Panda Forth

Xboo Communicator 1.24 (windows)

Xboo Communicator 1.24 (linux)

How do I use devkitPro toolchains with Visual C++ Express?

Start a new project and select makefile, on the general tab. Enter the name of the project and the folder where it will be located, leaving the ‘Create directory for solution’ box unchecked. Click OK.

MSVC++ Express new project

In the following dialog type

make -r 2>&1 | sed -e 's/\(.[a-zA-Z]\+\):\([0-9]\+\):/\1(\2):/'

in the ‘Build command line:’ box. Under ‘Clean commands:’ type “make clean”. The sed part of this command is used to parse the output from gcc and translate the error messages so Visual C++ Express understands them and allows clicking on the errors to take you to the relevant file.

MSVC++ Express config settings

The makefiles provided with the devkitPro example projects are designed to make life as easy as possible for the programmer. In most cases all you need to do is copy the contents of one of the template projects to the folder where the solution files are. The makefile expects to find .c or .cpp files in the source folder and sets the include path to the include folder. In some cases you may need to add the path to make in the Executable file paths in the Visual C++ Express options.

How do I use devkitPro toolchains with Programmer’s Notepad 2?

Programmer’s Notepad is installed and configured by the devkitPro installer and most of the example code provided contains a .pnproj file. Double clicking this file should load the relevant project complete with file tree view. Some tools are configured already - make and clean, these may be accessed by pressing ALT 1 for make and ALT 2 for clean or alternatively from the tools menu. The project files are designed so that .h files saved in the include folder and .c/.cpp files saved in the source folder are automatically added to the tree view. To get files which have just been added to show up you need to toggle the relevant folder in the tree view.

In order to set these functions up manually first click Tools->options then move to the Tools pane in the options dialog. In this section you want to modify the global tools.

PN2 Options

Click the add button and set up make as shown here. The command is the actual command line used to run the tool, in this case simply make. The Folder box denotes the working directory for the tool, in this case we’ve set it to $(ProjectPath) which is the directory where the PN2 project file is stored. All the devkitPro example code is arranged so the makefile is there. Set the tool to save all files before running so you don’t have to save your modifications manually. To set the keyboard shortcut for the tool simply click in the Shortcut box and press your desired key combination.

PN2 Tool Properties

Click the Console I/O tab and tick the Capture Output box, the default error parser is fine for gcc tools.

PN2 Tool Properties

Setting up clean is identical, just set the name of the tool as ‘clean’ and the command as ‘make clean’.

Why should I upgrade from devkit advance?

Devkit Advance has not been updated in a number of years, devkitARM is based on much newer versions of the FSF sources. There have been many improvements along the way, these are just a few of the reasons you should use devkitARM instead

  • More compact toolchain, around 30MB instead of 100.
  • Updated more frequently.
  • Easy installer for windows, including web update.
  • Produces smaller code.
  • Compiles faster.
  • Built in support for Nintendo DS and Gamepark GP32.

There are some minor differences you should be aware of when compiling code written using the older toolchain. devkitARM uses the standard main function in preference to AgbMain since the reasons for that were based on a misunderstanding of elf targeted compilers. Providing a crt0 and linkscript with each project is no longer necessary, nor is editing the crt0 source. The toolchain provides a crt0 and linkscript for each target it supports and these are switchable using the -specs parameter when linking.

Unfortunately most of the tutorials you’ll find on the web are based on the old toolchain and are not usually suitable for use with devkitARM. Example code which uses libgba is provided which will help the would be programmer in their quest.

devkitARM is the natural successor to Devkit Advance and is now being used by more homebrew programmers than the earlier toolchains. While Devkit Advance was a great starting point for Gameboy Advance programming in its day it was difficult to use for other ARM platforms such as the GP32 and the new DS due to some gba specific patches. This is no reflection on Jason Wilkins who did sterling work on providing a toolchain for homebrew GBA programming where none existed. Devkit Advance was the best choice in its day but is now quite outdated.

devkitPro Updater 1.4.4

The latest devkitPro installer has been rebuilt with the latest NSIS compiler and uses the newest inetc plugin. There is now a progress dialog when the installer is upgrading itself and when downloading the latest release info. This should make it clearer what’s happening at each stage.

devkitPro Updater 1.4.4

Wintermute’s Birthday approaches

My birthday is on Sunday so if you feel like buying me a beer then please feel free to make use of the donation button :)

Wordpress theme based on Fluidity redesign by Kaushal Sheth