| Link Description: |
LZASM is an x86 assembler for DOS and Windows that handles the TASM (Turbo Assembler) IDEAL mode and produces OMF OBJ files.
Features:
- TASM IDEAL mode compatible
- Supports SSE, SSE2, SSE3 (PNI), SSE4 (MNI), 3DNow!Pro instructions
- Supports Borland debug info
- all symbols case sensitive
- auto alignment of procedures (option procalign:value)
- stack frame options (option stackframe:[fast|small])
- definitions of hexadecimal constants 0xC0DE
- definitions of binary constants 10101y
- floating point constant as 32-bits immediate (mov eax,2.3)
- Supports unicode strings (change mode: option unicode, option ansi, type: tchar, definition: dc "string",0)
- Supports oword (octaword) type, do for definition
- Supports comment directive
- Supports includebin "filename" directive
- Supports .break, .continue, .elseif, .if, .else, .endif, .repeat, .until, .untilcxz, .while, .endw directives
- Supports echo directive
- floating point register reference st0,..,st7 or st(0),..,st(7)
- MMX register reference mm0,..,mm7 or mm(0),..,mm(7)
- SSE/SSE2/SSE3/SSE4 register reference xmm0,..,xmm7 or xmm(0),..,xmm(7)
- Supports predefined symbols @unicode, @line
- Supports labels @@,@f,@b
- Supports 2^32 labels for conditional directives
- .if, .repeat, .while, ... directives generate @@xxxx labels instead @Cxxxx
- lea optimization
- reductive record syntax (setting 1 bit width field is optinal)
- end directive is optional
- Supports @lzasm predefined symbol, define version of LZASM
- control of stack alignment with stackalign, stackunalign directives
|