thanks for posting your results!
> - TASM evendata pads with 0, JWASM even pads with 0fch
> I do not know how to change this, I just used "db 0".
this is indeed hard-coded in the source and will be used only if a 16-bit CODE
segment has to be padded by 1 byte. The reason why not just 0x00 bytes are
used is because "runnable" code must be generated, as it can be seen in the
Using 0xFC, however, is a bad idea because it is the CLD instruction, which
isn't a noop.
> - sbb ch,ch xchg dx,si xchg cl,bh xchg si,di sbb al,al
> xchg dh,bl xchg cx,si xchg cx,bx xchg dl,al xchg dl,ah
> xchg dx,si xchg ah,al (but not ALL "xchg" instructions)
> all swap the arguments when compiled with JWASM as
> compared to compiled with TASM - I used "db ..." here.
Since someone has made big efforts to implement these "optimizations" in the
Wasm source, I didn't touch them, although I have no idea whether they are
> - cmp ax, valuebelow128 uses "cmp ax,word" in TASM but
> I cannot make JWASM do that - it uses "cmp ax,byte"
> - adc ax,0 has the same problem as cmp ax,4 ...
Masm allows "cmp ax,word ptr 0" to force it to use the non-sign-extended
version, but this doesn't work yet in JWasm.
> - macro options can be of type "rest" and "vararg" only in TASM
Masm syntax allows VARARG as a parameter qualifier:
m1 macro p1, p2:VARARG
> - JWASM seems to have pretty bad support for "record" bitfields,
> I had to remove most references to them to avoid broken code
Please provide more details. JWasm copies Masm, and Masm's implementation of
bitfields isn't very "intuitive".
> - JWASM uses only 8 instead of 16 bytes for "foo db 8 dup (?,?)"
That's a severe bug. It occurs if a question mark is the last of multiple
items in a DUP argument.
> Instead of ".model use16 tiny"
> I had to use the JWASM -mt command line option.
valid Masm syntax is ".model tiny".
> - you cannot say ERRIF in JWASM
there are various .ERRxx directives in Masm.
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
Freedos-user mailing list