[net.micro.pc] MS Mouse, V-20 w/8087, Edge

john@hp-pcd.UUCP (05/08/86)

>>
>>One potential problem when running a V20 in 8080 mode is that the 8087
>>is still watching the instruction stream to see if any floating point
>>instructions are being executed. I haven't checked the opcodes but I think
>>you could probably find some 8080 opcodes that will send an 8087 out to 
>>lunch. 
>>
>>John Eaton
>>!hplabs!hp-pcd!john
>
>I don't think this is quite how it works... after reading my Intel manual and
>talking to a few hardware gurus, it appears that the coprocessor
>opcodes are flagged and passed to the 8087 by the 8088, rather than the
>8087 "watching for" them. The 8088 will support up to three
>coprocessors, allowing use of things other than the 8087.
>
>	-bill davidsen
>
I checked the manuals and found out how they manage to make this work. The
8088 does not pass anything to the 8087. They both are connected in parallel
on the buss and the 8087 watches the opcodes that are fetched by the CPU.
When the CPU fetches a Floating Point ESC opcode the 8087 will decode it and 
perform the operation. My initial concern was that the 8087 would not know
that the CPU had switched to its 8080 emulation mode and might try to execute 
some 8080 opcodes as floating point operations. It turns out that there is a
status bit output on the A19 line that prevents this for occuring. Normally
the CPU drives this bit low and the coprocessor drives it hi to show whether
the cycle is a cpu cycle or not. The V-20 drives it low for 8088 mode and 
high for 8080 mode and this disables the 8087 during emulation cycles.


John Eaton
!hplabs!hp-pcd!john

@hpislx.UUCP (05/08/86)

This message is empty.