[comp.sys.ibm.pc] Strange 8086 CPU clones.

tom@vrdxhq.UUCP (Tom Welsh) (07/02/87)

My COmpaq deskpro has a Siemens SAB8086 CPU in it (that's what
was in it when I bought it.

Well, guess what -- I managed to get it to execute some bad opcodes,
including the supposedly taboo POP CS.  (Same program generated
a bad opcode interrupt on other CPUS).

Any clues anybody?

ftp@hpcvlo.UUCP (07/06/87)

Some versions of the 80x8x family of CPUs use the POP CS instruction as a
means of extending the CPU's instruction set.  I believe that the NEC Vx0
series of CPU's do this.  Other's actually implement the POP CS instruction.

tom@vrdxhq.UUCP (Tom Welsh) (07/08/87)

Re My earlier message about the Siemens 8086 part.  I looked 
up in the 8086/186 intel manual and there is no documented
vector for bad opcode.

hooper@leadsv.UUCP (07/08/87)

  Excuse my intensity, but I have valiantly searched every Intel, Harris, etc.
manual and data book I could find in search of this answer:

WHAT DOES THE *@^&%%#% 8086 DO WITH A BAD OPCODE?

  I know that the 80186 and above have a dedicated trap vector for this. I also
know that the 8080 family generally does something undocumented (a `feature'?).
					Thanks in advance,
							   Desperate

johnl@ima.ISC.COM (John R. Levine) (07/16/87)

In article <1609@leadsv.UUCP> hooper@leadsv.UUCP (Ken Hooper) writes:
>WHAT DOES THE *@^&%%#% 8086 DO WITH A BAD OPCODE?

Well, it, uh, excecutes it.  You get whatever you get when you run those
bits through the instruction decode logic.  By and large, they're no-ops,
but the 8086 does seem to have some strange instructions like POP CS which
may have been built in deliberately or may just have happened.

This is in the fine tradition of the PDP-8 in which every possible bit
combination did something or other.
-- 
John R. Levine, Javelin Software Corp., Cambridge MA +1 617 494 1400
{ ihnp4 | decvax | cbosgd | harvard | yale }!ima!johnl, Levine@YALE.something
U.S. out of New Mexico!