Mail Archives: djgpp/1996/10/26/09:16:58
On Thu, 24 Oct 1996, Peter Monks wrote:
> I can't get Allegro to compile either (I get exactly the same errors as=
=20
> above), and I've spent about half an hour looking at the source trying to=
find=20
> where the mismatched opcodes are (to no avail).
>=20
> I compiled with:
>=20
> gcc -save-temps -I. -Isrc -Wall -o obj/bank.o -c src/bank.S
>=20
> and then looked at the temporary file to see what lines 252 and 269 conta=
ined.=20
> They were:
>=20
> outb %al, %dx (line 252) and
> outl %eax, %dx (line 269)
>=20
> Can any AT&T assembler gurus tell me whats wrong with these two lines? O=
r do=20
> I actually have the wrong lines in the file? There are other 'outb's and=
=20
> 'outl's in bank.S that don't cause any errors, so I'm not 100% sure I've =
got=20
> the right lines.
>=20
> Thanks in advance,
> Peter
>=20
>=20
> ----------------------------------------------------------------------
> Peter Monks pmo AT fmsc DOT com DOT au
> Peter_Monks AT australia DOT notes DOT pw DOT com
> http://www.geocities.com/Yosemite/4455/
>=20
Hi, Peter!
I'm not an AT&T assembly guru, but I'll help you =3D)
Few days ago I fixed Allegro lib (after reading the answers to my=20
question from listserv, thanks to guys who posted 'em - Weston T. Pan and=
=20
Ove K=E5ven).
In this particular case you have to change lines 227 and 244 from=20
'incl %ah' to 'incb %ah'. Simply AS from DJGPP 2.01 is more strict with=20
argument sizing, and ah is a byte reg, not double word. In general, if=20
you will meet similar errors, try to use -E option to get preprocessed=20
source, and then analyze it.
- Raw text -