ASMSchool - Lesson 6

Tools Of The Trade

Well here we are again, treading into deeper waters in search of knowledge. Today kiddies, we're gonna learn about all the Yum-Dum-Doodle-Fun toys that us programmers get to play with on a daily basis. Like most things in life, a lot of these tools were not just "there" when hobbyist GB programming started. Most of these tools have evolved out of necessity over the past 4 or 5 years through the hard work and tireless efforts of many homebrew coders. If you ever have the need to write a program to perform a task that makes your GB programming a little bit easier, release it, share it with the community, that's what we're all here for.

Graphics Programs

Adobe Photoshop
This list of course starts out with PhotoShop. It's a good all around program for just about everything.

Cosmigo Pro Motion
ProMotion is a pretty handy game gfx utility. Though I haven't used it much myself, there is a free demo on their site you should really check out.

Paint Shop Pro
This is yet another very popular program for graphics editing, some prefer it over Photoshop.

GameBrains TileBuddy
The first GameBoy-specific tool on my list, TileBuddy is the bastard child of the guys at GameBrains, a GameBoy Color/Advance programming team in Kuala Lumpur, Malaysia. This is a GREAT Utility, it's free to register and download. GET THIS NOW.

GameBoy Tile Designer/ Map Builder (GBTD/GBMB)
Back in the days when homebrew was new, Harry Mulder brought us a wonderful pair of programs to create tiles, and to make maps with those tiles. Since then, Harry has left the scene, but his great tools and site live on on Jeff's Devr's site.

Code generation tools

RGBDS - Rednex Gameboy Development System
RGBDS is one of the original Assemblers that GB coders have used. It includes a very powerful macro language, a fully controllable, very fast assembler with enough directives to make you choke, and some decent documentation. =) Originally created by Carsten Sorenson, RGBDS is now maintained by Otaku, and is currently pretty bugless. ;-) Usage is FREE and source code is available.

WLA DX - Yet Another GB-Z80/Z80/6502/65C02/6510/65816/HUC6280/SPC-700 Multi Platform Cross Assembler Package
WLA is an assembler, similar to RGBDS, with plenty of features including a great macro language, and very fast assembly speed. WLA is written and maintained by Ville Helin and is free for non-commercial use, IIRC. As for deciding which assembler to use, try out both RGBDS and WLA to see which one you personally like better. I have used both and I like both.

GBDK - Gameboy Development Kit
GBDK is a C compiler and libraries for developing Gameboy programs in C. While it doesn't offer quite the RAW POWER of coding in asm, it does have a pretty quick development curve. Not recommended for use. :P

Misc Tools

CGBIDE is a great little IDE for managing code. It includes colored syntax highlighting and project management tools. Pretty much a nice fancy text editor. Development has stopped due to the author losing the original source code in a hard drive crash. =(

Jeff's HiColor Convertor
This tool, the product of quite a few people, takes a 24-bit TARGA (.TGA) format image of 160x144 pixels, and converts it for display on the GBC in a special fashion that allows many colors. ASM source code on HOW to display HiColor images is included with the program, as well as a demo ROM.

Pan's Tools
Pan of Anthrox wrote three nice tools for Windows a while back that are awesome.

Text Transmogrifier is a program that takes plain typed text and will convert it to colorized HTML code that you can cut and paste into your web pages, JUST LIKE THIS SENTENCE. It can make nice gradients, and even ransom note style texts.

Rollercoaster is a sine wave data generator. Great for producing sine waves to wiggle your GB screen or to make your little bad guys wiggle your good guy to death. LOL

RGB Color Editor is a tool that displays colors from the GBC's 15-bit palette and allows you to save palettes you create as data you can include in your source code.

Each of these three tools is really awesome, but unfortunately, they are hard to find since Pan took his page down. You can use Yahoo to try and find copies of them online.

Must Haves

NO$GMB GameBoy Emulator/Debugger
No$gmb is the BEST Gameboy development tool I know of. It has 99% perfect emulation and has an integrated debugger/disassembler/assembler and you can use it to view memory contents on the fly. Great for learning how a certain game or demo accomplishes visual effects or such.

GBXchanger Flash cart and Hardware
This is another must have, a programmable cartridge that you can load your own programs on and test them on a REAL Gameboy. I have one of these and it is my best friend, right next to NO$GMB. =)

Jeff's Includes
This little ZIP file contains include files that are very handy for ASM coders, since they define just about everything. I suggest downloading these and printing them out and keeping them handy on a clip board.

GB Crib Sheet
The GB Crib Sheet is a PDF document, 4 pages long, that contains all those little details that you'll need to remember, but will always forget. If you do nothing else, GET THIS. It was designed to be printed on a high-quality laser printer, so if you have a small ink-jet or bubble-jet printer, DON'T BOTHER. Just take the PDF to your local computer-equipped print shop and have them print it on a color laser printer.

That's about it for the tools you should learn about. There are probably quite a few that I'm forgetting, but that's ok, cause I said so hehehe.