Mail Archives: djgpp/1997/06/30/09:47:05
>
> Assembler messages:
> c:/djgpp/tmp/RHfaaaaa\cccaaaaa(451) Error: Error: Ignoring junk 'h'
> after expression
> c:/djgpp/tmp/RHfaaaaa\cccaaaaa(451) Error: Error: operands given don't
> match any known 386 instruction
> c:/djgpp/tmp/RHfaaaaa\cccaaaaa(451) Error: Error: invalid char '['
> begining second operand '[xoff]'
> c:/djgpp/tmp/RHfaaaaa\cccaaaaa(451) Error: Error: invalid char '['
> begining second operand '[yoff]'
> c:/djgpp/tmp/RHfaaaaa\cccaaaaa(451) Error: Error: invalid char '['
> begining second operand '[p]'
> c:/djgpp/tmp/RHfaaaaa\cccaaaaa(451) Error: Error: Ignoring junk 'h'
> after expression
> c:/djgpp/tmp/RHfaaaaa\cccaaaaa(451) Error: Error: operands given don't
> match any known 386 instruction
Just a guess (post your source next time)
but I'd say you have inline assembly in your program.
DJGPP uses AT&T syntax, which is quite different. See the FAQ for
details on how to convert.
Off the top of my head -
Post a b,w,or l after each instruction mnemonic to indicate the size
and do not use word ptr type size overrides.
registers must be preceded with a %.
Immediates must be preceded with a $
Source and destination are reversed.
Memory addressing is (I think)
displacement(base,index,scale)
Note that you use parenthesis and commas to separate
so
inc word ptr [esi]
becomes
incw (%esi)
HTH
Andrew
- Raw text -