ASMotor General Information |
The ASMotor package (xAsm, xLink, RGBFix, examples and documentation) is freeware and distributed as is. The author retains his copyright and right to modify the specifications and operation of the software without notice.
In other words this means I encourage you to...
This also means you can't...
Officially, this distribtion is under the BSD license. See the included readme.txt for complete text of the license.
The ASMotor system was conceived of and written by Carsten Sorensen. Later, Otaku took over the distribution. The TI-8x parts of the package were written and are maintained by Aaron St.John. For questions about this distribution, please visit the project's hompage.
ASMotor is a package currently consisting of four programs (xAsm, xLink, HREF="lib.htm">xLib and RGBFix) originally designed for development on the Gameboy hand-held video-game console by Nintendo but recently it has moved towards being a target independent shell for making development of new assemblers for different processors easier.
xAsm is a decently fast assembler (up to 800000 lines/minute (hrm well actually that's for 16384 lines of NOP's ;) on a P-120). It converts an assembler source into the RGB object-fileformat.
xLink is used to link multiple (one or more) object files and libraries together into one target file eg. a Gameboy ROM or Psion2 relocatable module.
xLib is a smart librarian to create and smart maintain libraries of object files.
RGBFix is used to apply some final cosmetic details to a Gameboy ROM-image.
This document does not try to teach you how to program in assembler, how to program a specific processor or the Gameboy. It just briefly explains the features of xAsm and xLink. Sometimes I will assume that you have actually worked with assemblers before and that you are familiar with the target processor.
Why another assembler? There seems to be millions out there! This project started out as a Gameboy assembler because none of the available assemblers had the features I wanted. Now the reason is I want to make the most powerful assembler. Ever ;) And I want to be able to re-use it easily whenever I encounter a new system with another processor. Don't like it? Something you'd like to see added? Mail me and I'll see what I can do.
The assembler and linker are written entirely in ANSI C using Bison for the parser. I try to maintain two pre-compiled ports of ASMotor, one for the MS-DOS environment and one for Linux. Bison is a GNU tool (compiler-compiler) tailored to aid in the development of compilers which you will need if you want to compile it afresh.
Anywhere on your HD will do. For maximum enjoyment I recommend adding the directory to your path. Alternatively you can run it from a floppy.
The documentation only comes in one flavour. HTML. This has several advantages for me
Version | Dated | Release notes |
1.0 | 03 July 1997 | First release |
1.01 | 20 July 1997 |
RGBDS fixes:
|
1.02 | 22 July 1997 |
General fixes:
|
1.10 | 21 Sep 1997 |
General fixes:
|
1.2 | Real soon now! |
General fixes:
|
Last updated 14 January 2003 by Aaron St.John