john@sol1.UUCP (john) (09/17/84)
> [gollum :-)] > > > From: john@sol1.UUCP > > > When compiling the 2.10.2 version of the news system, we have encountered > > the following when trying to compile virtterm.c: > > > > 00 0E9A 0000 1309 movb a0,a5@ > > > > Invalid Operand > > Welcome to the club. 68000 C compilers don't seem to realize that the instr. > "movb an,anything" is illegal in the 68000; the assembler catches it and dies. > The only solutions are: (1) get rid of all register variables in virtterm.c, > (2) massage the C compiler output (-S flag), or (3) find a decent 68000 C > compiler. Good luck. > > (P.S. If you find a decent compiler, please point us to it!) > > --bsa Thank you to all who responded to this question. sol1!john
niel%ucsc.csnet@CSNET-RELAY.ARPA (09/17/84)
If you look in the Motorola 68000 manual on page 134 you will see that for byte size operation address register direct is not allowed. This means that you can not pull the lowest byte out of that address register. I assume this is compiled from C source code in which case there is a problem in your compiler. If this assembly code came from the source for your program and not your compiler then it was not designed or debugged for the 68000. Good luck Niel Warren