Floating-point unit. Part of a processor. A 486sx has one, but it's disabled. A math coprocessor for one of these chips actually disables the old chip! The coprocessor is actually a 486dx!

Hard as this may seem to believe in this day of Pentium bugs and modern processors, the Intel line of processors used in most common PCs didn't have FPUs until the age of the 486DX computer. The 8086, 80286, and 80386 processors all had a corresponding FPU chip, 8087, 80287, and 80387 which could be optionally plugged into many motherboards. The software had to know how to take advantage of this feature, like Intel's later MMX instructions, but this was eventually handled transparently by the compiler.

As a result, the mass market had really slow and horrible floating point capabilities. Most games developed in this time were developed with integer math being used for all frequently used variables, such as coordinates. Many clever hacks were developed to work around this limitation. This is now obsolete in this day and age of integrated FPUs, but some older game developers are still using libraries based on integer systems from legacy code. This is, of course, dying out at a rapid pace, as it becomes harder to justify re-using the older and limited code.

Back in the days when FPUs were optional, they were viewed by young computer geeks in much the same way 3D cards were viewed a few years ago, and the way that 3D cards with onboard geometry and lighting calculators are today. In a few years, in will be nearly impossible to buy a video card without such features, much as one has to purchase vintage chips these days to find a PC CPU without an integrated FPU. Not that you would ever want to...

Log in or register to write something here or to contact authors.