MSX XAsm - Z80 Cross-Assembler for PC
XAsm is a cross-assembler that generates Z80 machine code on a PC.
I developed it to help speed up the development of Ablaze.
Download
- XAsm_W32.zip - The Win32 version of XAsm.
- XAsm_DOS.zip - The DOS commandline version of XAsm.
- XAsm_C32.zip - The Win32 commandline version of XAsm.
- MS_Dll.zip - Microsoft runtime DLLs needed for XAsm Win32 (XAsm_W32.zip). Contains: MFC42.DLL, MSCVRT.DLL and MSVCIRT.DLL.
Original Release
For historical awesomeness, check out the archived version of the original XAsm page.
Version Information
2.00.026
- Fixed bug in >= and <= operators.
- Added != operator.
2.00.025 (09 Nov. 1997)
- Fixed bugs on allowed register check and added extra error information output in ProcessRNIXY, ProcessArithmics and _I_LD.
- Added synonym instruction 'ADD x' for 'ADD A,x'.
2.00.024 (02 Nov. 1997)
- Fixed bug in allowed register check in ProcessRNIXY.
- Added '@' and '?' to valid label character set.
2.00.023 (19-10-1997)
- Fixed bug with recognition of FLAGS register as an argument in ProcessRNIXY.
2.00.022 (04-10-1997)
- Fixed bug in label recognition when first character was a '_'.
- Changed instruction "EX AF,AF'" to "EX AF,[AF|AF']".
- Tightened up error registering to avoid crashes in extreme situations.
2.00.021 (01-10-1997)
- Added new binary number format {[0|1|.]}[0|1]B
- Improved stability with errors.
2.00.020 (28-9-1997)
- Added custom size linebuffer support.
- Fixed bug in 'JP cc,nn'.
2.00.019 (26-9-1997)
- Fixed error in character classification routines.
2.00.018
- Changed linebuffer size to 256.
- Added custom filebuffer size.
- New release version.
2.00.017
- Fixed EQU registration/backpatching.
- Added multiline support.
- Macro support partly implemented.
2.00.016
- Added >, <, >=, <= operators.
- Fixed label registering bug in if-else-endif constructions.
- Improved expression evaluator code.
2.00.015
- Added binary file option.
- Fixed bug in FileManager filename retrieval.
- Fixed bug in argument retrieval when line is too long or the string was not closed with a quote character.
- Added system identifiers. (XASM, XASM_VER, XASM_LOW, XASM_BUILD)
- Added = operator for expressions.
2.00.014
- Optimized more functions for more speed.
- Fixed display error.
- Added END instruction.
2.00.013
- Added custom filebuffer.
2.00.012
- Error and warning messages are compatible to the MS Developer Studio output window format so XAsm32 can be run as a tool now.
- Busy implementing the macro handling.
- Optimized some things to improve speed. YEEEHAAA!
2.00.011
- Added DEFB, DEFW, DEFD and DEFS to the instruction set (which are the same things as DB, DW, DD and DS). (DD still isnt implemented.)
- Made version/signon info for XAsm static functions from the class instead of using general functions.
- Added DumpStatus function for extra information at crashes etc.
- Improved signed/unsigned values checking and warning messages.
- Fixed bug on allowed arguments check in ProcessRNIXY().
- Added BINCLUDE instruction to binary include files.
2.00.010
- Solved a bug in DB. Backpatching wasnt handled correctly any more since the string handling was implemented.
- Completed overflow checking on backpatches.
2.00.009
- Completed memory allocation failure checking. (malloc's)