ID Number: Q34664
5.10 5.10a | 5.10 5.10a
MS-DOS | OS/2
buglist5.10 buglist5.10a fixlist6.00
Summary:
The program below generates a phase error on the call to the @Mkthread
macro that only includes the line "mov cx, seg fproc". The similar
MASM statements do not generate a phase error.
The problem has nothing to do with the macro. The difference between
the MASM statements is moving into CX versus AX.
Microsoft has confirmed this to be a problem in MASM versions 5.1 and
5.1a for MS-DOS and OS/2. This problem was corrected in MASM version
6.0.
More Information:
To work around this problem, change the macro line to the following:
MOV CX, WORD PTR (SEG PROG)
The following sample code demonstrates the problem:
.model large
@mkthread macro prog
mov cx,seg prog
endm
.code
mov ax, seg fproc
@mkthread fproc
fproc proc
mov ax,seg fproc
fproc endp
end