xAsm History


The history of xAsm
Version Dated Release notes
1.0 1 Oct. 96 First release
1.01 1 Dec. 96
  • Fixed bug in INCBIN (sometimes reported the section full)
  • Added DEF() function
1.02 12 Feb. 97
1.03 23 Mar. 97
  • The HRAM section was 128 bytes long instead of 127. potentially thrashing the interrupt enable register if you filled the HRAM.
  • The BANK() function, when used on a symbol defined in the current sourcefile, returned the wrong bank ID. (reported by Harry P. Mulder)
  • The BANK() function didn't check whether the argument was a properly defined symbol. (reported by Harry P. Mulder)
  • Completely new lexical analyser module. This fixed several linenumber bugs and other macro/if/rept related bugs. Also fixed a bug which made it possible to have equated symbols with the same name as a reserved keyword (if you get a "parse error" with this release on some of your sources, this is probably what is going on)
  • FAIL and WARN commands.
  • __LINE__, __FILE__, __TIME__, __DATE__ predefined symbols added.
1.04 03 July 1997 First ASMotor release
  • __TIME__ and __DATE__ give todays date instead of when the assembler was compiled.
  • Sometimes the first line of a file wouldn't assemble correctly. Reported by Jeff Frohwein.
  • Unrolling multiline string symbols left the linecounter in a sorry state. Jeff Frohwein again.
  • DB and DW can now (officially ;-) be used in BSS/HRAM/VRAM sections without any arguments to reserve a byte or a word respectively. Reported/suggested/inspired by Mr. Frohwein.
  • The character # can now be used as part of a symbol name. Jeff....
  • The RS counter "_RS" is now defined from the very start of the assembly process instead of after the first RSSET or RSRESET.
  • Bug fixed: You couldn't use \0-\9 and \@ in {} constructs
  • PURGE pseudo-op added. Purges a symbol from the symboltable and memory. Use with extreme caution! Inspired by Harry P. Mulder
  • MACRO parameter passing method changed drastically. Read (and re-read) the manual for details. Suggested by Harry P. Mulder.
1.05 20 July 1997 RGBDS fixes:
  • RGBAsm supports the LDD and LDI syntax plus [HLD] and [HLI]. LDH is synonymous with LDIO.
General fixes:
  • There was a bug in the macro parameter passing. Any whitespace after the last parameter would be appended to the last parameter. Reported by Jeff Frohwein.
  • A section stack has been implemented. Look up POPS and PUSHS. Jeff Frohweins doing again.
  • OPT command added for defining and changing some options while assembling.
  • You can now define which characters are used for the Gameboy graphics integer (`) using the commandline or the new OPT command. Cool idea by (surprise surprise) Jeff Frohwein.
  • Also, an option stack has been added. Look up POPO and PUSHO in the manual.
  • Fixed yet another line number bug reported by Jeff Frohwein (when will this guy leave me alone? ;)
1.06 22 July 1997 General fixes:
  • The lamest typo bug of all time has been fixed. RGBAsm would output a word defined with DW as 4 bytes instead of 2. Jeff Frohwein reported this.
  • The first line of an included file didn't assemble correctly.
  • -b option added for setting the characters used for binary constants.
1.08 21 September 1997 General fixes:
  • A crash occured if you tried to use a macro symbol in an expression. (Jeff Frohwein)
  • You couldn't use STRCMP, STRLEN and STRIN in relocatable expressions. (Harry P. Mulder)
  • Relocatable symbols are no longer allowed as arguments to the DEF function.
  • Bug fixed in the assembler where it would sometimes write out too many bytes for HRAM section definitions.
1.10 Real Soon Now
  • Added assembler for genuine z80 for the TI-83x. (TI8xASM)
  • Added ability to define symbols at the command line.


Last updated 14 January 2003 by Aaron St.John