Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site intelca.UUCP Path: utzoo!watmath!clyde!burl!mgnetp!ihnp4!zehntel!dual!amd70!intelca!kds From: kds@intelca.UUCP (Ken Shoemaker) Newsgroups: net.micro.pc Subject: Re: 8087 software emulator Message-ID: <264@intelca.UUCP> Date: Sat, 19-May-84 03:15:05 EDT Article-I.D.: intelca.264 Posted: Sat May 19 03:15:05 1984 Date-Received: Mon, 21-May-84 03:29:55 EDT References: <2509@ecsvax.UUCP> Organization: Intel, Santa Clara, Ca. Lines: 21 >What happens inside the 8088 when an 8087 instruction is seen, if the >system doesn't have an 8087? Modern, civilized machines provide a special >"invalid instruction" interrupt. I can't find any description of what happens >in my Intel documentation (poorly organized as it is, that isn't saying much). Indeed, the 8088 (and 8086) do nothing out of the ordinary when an 8087 instruction is encountered...they just calculate the operand address and place it on the bus for the 8087 to read (so it can perform any memory operations that it requires to finish its operation). If there is no 8087 there, nothing else happens. The 186 and 286 BOTH provide interrupts such that if the floating point unit is not present in the system when a floating point instruction is encountered, the processor traps. In addition, a seperate trap occurs when an illegal opcode is encountered to simplify floating point emulation. Enhancements such as these are the reasons why certain ranges of the interrupts were labeled as "reserved." (are you listening out there, software developers?) -- Ken Shoemaker, Intel, Santa Clara, Ca. {pur-ee,hplabs,ucbvax!amd70,ogcvax!omsvax}!intelca!kds