_ ( ( /| | \ ( | | \ | | | (\ \) | | | \ | | ) \ | |/ )_)
## ## ## ## ## ## ###
## ## #### ## #### ## ##
______ | ____| | |__ | __| | |____ |______|
_ _ ( ) ( ) `\`\/'/' > < /'/\`\ (_) (_)
IMPORTANT: enter the case-INsensitive alphabetic (no numbers) code AND WRITE SOME SHORT summary of changes (below) if you are saving changes. (not required for previewing changes). Wiki-spamming is not tolerated, will be removed, so it does NOT even show up in history. Spammers go away now. Visit Preferences to set your user name Summary of change: == Compiling/Linking/Packaging Gameboy Advance Images == In order to build binaries that you can actually use on a GBA (or emulator) you need to compile/link/package things properly. You need at least the following: * A cross-compiler toolchain setup as defined in CrossCompilation. * A crt0.o designed for the GBA (from devrs.com, see below). * A properly setup linker script to put everything together. crt0 and the linker script have already been put together; you just need to grab them and build them: * http://www.devrs.com/gba/files/crtls.zip Assemble CRT0.S using something like ''arm-elf-as CRT0.S -o crt0.o''. Grab crt0.o and lnkscript, and bring them to your project directory. Compiling, Linking, and then extracting a suitable GBA image then becomes something similar to: : \ <code> arm-elf-gcc -c test.c -c -Wall -Wall -marm -mapcs-32 -mcpu=arm7tdmi arm-elf-ld -T lnkscript ./crt0.o test.o -o test.elf arm-elf-objcopy -O binary test.elf test.gba </code> You can then run ''test.gba'' with any emulator (e.g. [http://vba.ngemu.com/ VisualBoyAdvance] , BoycottAdvance). Optional: Add document to category: Wiki formatting: * is Bullet list ** Bullet list subentry ... '''Bold''', ---- is horizontal ruler, <code> preformatted text... </code> See wiki editing HELP for tables and other formatting tips and tricks.