| JWasm compared with |
Advantages |
Disadvantages |
| MASM |
JWasm is free, no artificial license restrictions, can be used to create binaries for any OS. |
None. |
|
JWasm is open source, forget the annoying MASM bugs ... |
|
|
More output formats supported (Bin, ELF). |
|
|
optionally very small object modules can be created |
|
|
better support for Open Watcom, for example the register-based calling convention |
|
|
JWasm is faster than Masm. |
|
| TASM |
JWasm is available. TASM isn't legally available. And LZASM, which is sort of a TASM clone, understands IDEAL mode only. |
TASM additionally understands IDEAL mode. This was a big advantage compared to MASM v5.1, but
compared to MASM v6 syntax there are no benefits anymore. |
|
JWasm has full support for STRUCTs and UNIONs. TASM has severe limitations and bugs in this area. |
|
|
JWasm supports virtually all MASM v6 features (PROTO, INVOKE, hll directives, ... ), most of which TASM won't understand. |
|
|
JWasm supports instructions up to SSE4, TASM is behind. |
|
| POASM |
JWasm is open source |
None. |
|
JWasm additionally supports output in OMF, ELF and binary format |
|
|
JWasm supports 16-bit and segmented memory models. POASM understands FLAT only. |
|
|
JWasm is compatible with MASM's implementation of macros. POASM isn't. |
|
|
POASM lacks the ability to create a listing file. |
|
| WASM |
JWasm's macro capabilities are ways better than Wasm's.
|
Wasm's cmdline is more compatible with Open Watcom tools |
|
JWasm fully supports Masm v6 syntax. In Wasm, most of the additions done in Masm v6 are missing.
|
|
|
Besides OMF, JWasm supports COFF, ELF and binary output formats.
|
|
|
JWasm supports 64-bit.
|
|