Lazy Assembler (LZASM)

Lazy Assembler (freeware) Version 0.56 (6 AUG 2007) by Stepan Polovnikov

LZASM is an x86 assembler for DOS and Windows that handles the TASM (Turbo Assembler) IDEAL mode and produces OMF OBJ files.
Support MMX, SSE, SSE2, SSE3 (PNI), SSE4 (MNI), 3DNow!Pro instructions.

New features:

- support rdtscp instructions [0.54]
- support SSE4 instructions [0.53]
- output compile time [0.47]
- proc myproc uses all flags [0.45]

Bugs fixed:

- fixed 3DNow! instructions [0.56]
- fixed clts,lldt,lgdt,lidt instructions [0.55]
- error outsb opcode [0.54]
- fixed cmpccps,cmpccpd,cmpccsd,cmpccss instructions of SSE2 [0.52]
- define public variable (crash) [0.51]
- LZASMX date format for DOS extender [0.50]
- segment attribute keywords is no case sensitive [0.49]
- LZASMX opened file limit [0.49]
- command line key /p [0.48]
- listing of global/public (crush) [0.48]
- macro req, rest, vararg keywords is no case sensitive [0.48]
- compatibility pass bug [0.47]
- typedef error output bug [0.47]
- X-bug ;) [0.44,0.46]
- alphabetic segment ordering (/a) [0.45]
- macro/local bug [0.43]
- text macro bug [0.42]


- TASM IDEAL mode compatible
- support SSE, SSE2, SSE3 (PNI), SSE4 (MNI), 3DNow!Pro instructions
- support 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)
- support unicode strings (change mode: option unicode, option ansi, type: tchar, definition: dc "string",0)
- support oword (octaword) type, do for definition
- support comment directive
- support includebin "filename" directive
- support .break, .continue, .elseif, .if, .else, .endif, .repeat, .until, .untilcxz, .while, .endw directives
- support 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)
- support predefined symbols @unicode, @line
- support labels @@,@f,@b
- support 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
- support @lzasm predefined symbol, define version of LZASM
- control of stack alignment with stackalign, stackunalign directives

Download LZASM for Windows (82,4 Kb)
Download LZASM for DOS (140,7 Kb)
Download HRC LZASM syntax for FAR Colorer plugin (29,8 Kb)
Download Paradigm Assembler User's Guide (TASM 5.0 clone) (945 Kb)

bin2obj Version 1.30 (3 APR 2007) by Stepan Polovnikov

Convert any binary file to OMF

Download bin2obj (2,6 Kb)

OBJ OMF Dump Version 2.14 (12 JUN 2007) by Stepan Polovnikov

Output a dump of OMF files

Download objdump (9,5 Kb)

ALINK linker Version 1.6 Home page

Download ALINK (48,5 Kb)
Download Win32 import library (145 Kb)


Free Assemblers, Linkers and Object Module Librarians
Free Programming Resources - Free Assemblers
Win32 Assembler FAQ
Assembly Language Network
The ASM Community
WinAsm Studio, The Assembly IDE - Free Downloads, Source Code
Last modified: 7 DEC 2007