SAMPLE: Floating-Point Samples for Windows

Last reviewed: February 15, 1996
Article ID: Q97265
The information in this article applies to:
  • Microsoft Windows Software Development Kit (SDK) for Windows version 3.1

SUMMARY

WinFloat: Floating-Point Samples for Windows(TM)

WinFloat consists of five programs and libraries that provide sample code and tools to explore the floating-point mechanisms of Microsoft(R) Windows:

  • FLOATAPP.EXE: Windows-based application used as a shell for testing application and dynamic-link library (DLL) floating-point issues. This application tests floating-point speed, generates exceptions, installs signal handler, masks and unmasks exceptions, and communicates with WIN87EM.DLL. Some capabilities depend on the math package chosen and/or the presence of a math coprocessor.
  • FLOATDLL.DLL: Floating-point Windows DLL. FLOATDLL is a subset of FLOATAPP, to which it dynamically links. FLOATDLL can generate and handle floating-point exceptions, and can be configured to install and maintain its own signal handler or use the default (or application) handler.
  • FLOATDOS.EXE: Floating-point MS-DOS(R) application. FLOATDOS is a subset of FLOATAPP that runs outside of Windows (or in a "DOS box"), thus allowing you to compare an MS-DOS application with a Windows-based application for exception handling and (most importantly) calculation speed.
  • HIDE87.COM: MS-DOS terminate-and-stay-resident (TSR) program that hides the 80x87 from Windows-based applications. HIDE87 must be installed before you start Windows so you can trick Windows into thinking there's no math coprocessor.
  • SHOW87.EXE: MS-DOS control program that disables the HIDE87 TSR. SHOW87 provides a way to turn off HIDE87 without rebooting the machine. As with HIDE87, SHOW87 must be executed before you start Windows so it can detect the math coprocessor.

See the sample code and the "Floating Point in Windows" technical article for descriptions of these programs, their coding techniques, and the Windows floating point architecture. For information on building these programs and discussions of C version 6.0 versus C/C++ version 7.0 and emulator versus alternate math packages, see the make file. Note that these sample have major limitations if compiled with C 6.0.

WINFLOAT was built and tested under Microsoft Windows version 3.1 using Microsoft Macro Assembler version 6.0 and Microsoft C/C++ version 7.0.

Download WINFLOAT.EXE, a self-extracting file, from the Microsoft Software Library (MSL) on the following services:

  • Microsoft Download Service (MSDL)

          Dial (206) 936-6735 to connect to MSDL
          Download WINFLOAT.EXE (size: 168399 bytes) 
    
  • Internet (anonymous FTP)

          ftp ftp.microsoft.com
          Change to the \SOFTLIB\MSLFILES directory
          Get WINFLOAT.EXE (size: 168399 bytes) 
    


Additional reference words: 3.10 softlib WINFLOAT.EXE
KBCategory: kbprg kbfile
KBSubcategory: KrFltPt


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: February 15, 1996
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.