| |
| |
Preface | |
| |
| |
Acknowledgments | |
| |
| |
| |
Introducting the Microsoft Visual Development Environment | |
| |
| |
| |
Visual Development Environment Windows | |
| |
| |
| |
Building an Existing Visual Fortran Project (Celsius) | |
| |
| |
| |
Editing CELSIUS.FOR | |
| |
| |
| |
Building Programs and Libraries | |
| |
| |
| |
Overview of Building Projects | |
| |
| |
| |
Types of Projects | |
| |
| |
| |
Defining Your Project | |
| |
| |
| |
Errors during the Build Process | |
| |
| |
| |
Compiler Limits | |
| |
| |
| |
Running Fortran Applications | |
| |
| |
| |
Porting Projects between x86 and Alpha Platforms | |
| |
| |
| |
Visual Fortran Samples | |
| |
| |
| |
Using the Compiler and Linker from the Command Line | |
| |
| |
| |
The Format of the DF Command | |
| |
| |
| |
Examples of the DF Comand Format | |
| |
| |
| |
Input and Output Files | |
| |
| |
| |
Environment Variables Used with the DF Command | |
| |
| |
| |
Specifying Project Types with DF Command Options | |
| |
| |
| |
Redirecting Command-Line Output to Files | |
| |
| |
| |
Using the DF Command to Compile and Link | |
| |
| |
| |
DF Indirect Command File Use | |
| |
| |
| |
Compiler and Linker Messages | |
| |
| |
| |
Compiler and Linker Options | |
| |
| |
| |
Compiler Options | |
| |
| |
| |
Linker Options and Related Information | |
| |
| |
| |
Microsoft Fortran PowerStation Command-Line Compatibility | |
| |
| |
| |
Debugging Fortran Programs | |
| |
| |
| |
Preparing Your Program for Debugging | |
| |
| |
| |
Debugging the Squares Example Program | |
| |
| |
| |
Viewing Fortran Data Types in the Debugger | |
| |
| |
| |
Using the Array Viewer in the Debugger | |
| |
| |
| |
Locating Run-Time Errors in the Debugger | |
| |
| |
| |
Performance: Making Programs Run Faster | |
| |
| |
| |
Software Environment and Efficient Compilation | |
| |
| |
| |
Analyze Program Performance | |
| |
| |
| |
Data Alignment Considerations | |
| |
| |
| |
Use Arrays Efficiently | |
| |
| |
| |
Improve Overall I/O Performance | |
| |
| |
| |
Additional Source Code Guidelines for Run-Time Efficiency | |
| |
| |
| |
Optimization Levels: the /optimize Option | |
| |
| |
| |
Other Options Related to Optimization | |
| |
| |
| |
Using QuickWin | |
| |
| |
| |
Capabilities of QuickWin | |
| |
| |
| |
Comparing QuickWin with Windows-Based Applications | |
| |
| |
| |
Using Win32 with QuickWin | |
| |
| |
| |
Types of QuickWin Programs | |
| |
| |
| |
The QuickWin User Interface | |
| |
| |
| |
USE Statement Needed for QuickWin Applications | |
| |
| |
| |
Creating QuickWin Windows | |
| |
| |
| |
Using Graphics and Character-Font Routines | |
| |
| |
| |
Defining Graphics Characteristics | |
| |
| |
| |
Displaying Graphics Output | |
| |
| |
| |
Working with Screen Images | |
| |
| |
| |
Enhancing QuickWin Applications | |
| |
| |
| |
Customizing QuickWin Applications | |
| |
| |
| |
QuickWin Programming Precautions | |
| |
| |
| |
Simulating Nonblocking I/O | |
| |
| |
| |
Creating Fortran DLLS | |
| |
| |
| |
Coding Requirements for Sharing Procedures in DLLS | |
| |
| |
| |
Coding Requirements for Sharing Data in DLLS | |
| |
| |
| |
Building and Using Dynamic-Link Libraries | |
| |
| |
| |
Creating Windows Applications | |
| |
| |
| |
Coding Requirements for Fortran Windows Applications | |
| |
| |
| |
The Visual Fortran Windows Module | |
| |
| |
| |
Sample Fortran Windows Applications | |
| |
| |
| |
Getting Help with Windows Programming | |
| |
| |
| |
Portability and Design Considerations | |
| |
| |
| |
Portability | |
| |
| |
| |
Choosing Your Development Environment | |
| |
| |
| |
Selecting a Program Type | |
| |
| |
| |
Structuring Your Program | |
| |
| |
| |
Special Design Considerations | |
| |
| |
| |
Using the Special Features of Microsoft Windows | |
| |
| |
| |
Using Dialogs | |
| |
| |
| |
Using the Resource Editor to Design a Dialog | |
| |
| |
| |
Writing a Dialog Application | |
| |
| |
| |
Dialog Functions | |
| |
| |
| |
Dialog Controls | |
| |
| |
| |
Using Dialog Controls | |
| |
| |
| |
Drawing Graphics Elements | |
| |
| |
| |
Working with Graphics Modes | |
| |
| |
| |
Adding Color | |
| |
| |
| |
Understanding Coordinate Systems | |
| |
| |
| |
Advanced Graphics Using OpenGL | |
| |
| |
| |
Using Fonts from the Graphics Library | |
| |
| |
| |
Available Typefaces | |
| |
| |
| |
Using Fonts | |
| |
| |
| |
SHOWFONT.F90 Example | |
| |
| |
| |
Using National Language Support Routines | |
| |
| |
| |
Single and Multibyte Character Sets | |
| |
| |
| |
National Language Support Library Routines | |
| |
| |
| |
Portability Library | |
| |
| |
| |
Using the Portability Library | |
| |
| |
| |
Routines for Information Retrieval | |
| |
| |
| |
Process Control Routines | |
| |
| |
| |
Numeric Routines | |
| |
| |
| |
Input and Output with Portability Routines | |
| |
| |
| |
Date and Time Routines | |
| |
| |
| |
Error Handling Routines | |
| |
| |
| |
Miscellaneous String and Sorting Routines | |
| |
| |
| |
Other Compatibility Routines | |
| |
| |
| |
Files, Devices, and I/O Hardware | |
| |
| |
| |
Devices and Files | |
| |
| |
| |
I/O Hardware | |
| |
| |
| |
Using COM and Automation Objects | |
| |
| |
| |
The Role of the Module Wizard | |
| |
| |
| |
Using the Module Wizard to Generate Code | |
| |
| |
| |
Calling the Routines Generated by the Module Wizard | |
| |
| |
| |
Additional Information about COM and Automation Objects | |
| |
| |
| |
Programming with Mixed Languages | |
| |
| |
| |
Overview of Mixed-Language Issues | |
| |
| |
| |
Exchanging and Accessing Data in Mixed-Language Programming | |
| |
| |
| |
Handling Data Types in Mixed-Language Programming | |
| |
| |
| |
Visual Fortran/Visual C++ Mixed-Language Programs | |
| |
| |
| |
Fortran/Visual Basic Mixed-Language Programs | |
| |
| |
| |
Fortran/MASM Mixed-Language Programs | |
| |
| |
| |
Creating Multithread Applications | |
| |
| |
| |
Basic Concepts of Multithreading | |
| |
| |
| |
Writing a Multithread Program | |
| |
| |
| |
Compiling and Linking Multithread Programs | |
| |
| |
| |
Other Sources of Information | |
| |
| |
| |
Data Representation | |
| |
| |
| |
Integer Data Representations | |
| |
| |
| |
Logical Data Representations | |
| |
| |
| |
Native IEEE Floating-Point Representations | |
| |
| |
| |
Character Representation | |
| |
| |
| |
Hollerith Representation | |
| |
| |
| |
Handling Run-Time Errors | |
| |
| |
| |
Default Run-Time Error Processing | |
| |
| |
| |
Methods of Handling Errors | |
| |
| |
| |
Locating Run-Time Errors | |
| |
| |
| |
Using Traceback Information | |
| |
| |
| |
Run-Time Environment Variables | |
| |
| |
| |
The Floating-Point Environment | |
| |
| |
| |
Representing Numbers | |
| |
| |
| |
Loss of Precision Errors: Rounding, Special Values, Underflow, and Overflow | |
| |
| |
| |
Setting and Retrieving Floating-Point Status and Control Words (x86 Only) | |
| |
| |
| |
Handling Arithmetic Exceptions | |
| |
| |
| |
Intel Pentium Floating-Point Flaw (x86 Only) | |
| |
| |
| |
Converting Unformatted Numeric Data | |
| |
| |
| |
Supported Native and Nonnative Numeric Formats | |
| |
| |
| |
Limitations of Numeric Conversion | |
| |
| |
| |
Methods of Specifying the Data Format | |
| |
| |
| |
Additional Notes on Nonnative Data | |
| |
| |
| |
Using the IMSL Mathematical and Statistical Libraries | |
| |
| |
| |
Using the Libraries from Visual Fortran | |
| |
| |
| |
Library Naming Conventions | |
| |
| |
| |
Using IMSL Libraries in a Mixed-Language Environment | |
| |
| |
| |
Using Visual Fortran Tools | |
| |
| |
| |
Overview of Visual Fortran Tools | |
| |
| |
| |
Using Tools from the Command Line | |
| |
| |
| |
Setting Up the Command Console | |
| |
| |
| |
Fortran Compiler and Linker | |
| |
| |
| |
MS-DOS Editor | |
| |
| |
| |
Building Projects with NMAKE | |
| |
| |
| |
Resource Compiler Options | |
| |
| |
| |
Managing Libraries with LIB | |
| |
| |
| |
Editing Files with EDITBIN | |
| |
| |
| |
Examining Files with DUMPBIN | |
| |
| |
| |
Editing Format Descriptors with the Format Editor | |
| |
| |
| |
Profiling Code from the Command Line | |
| |
| |
| |
Fortran Tools: FSPLIT and FPR | |
| |
| |
| |
Hexadecimal-Binary-Octal-Decimal Conversions | |
| |
| |
| |
Compatibility Information | |
| |
| |
| |
Compatibility with Microsoft Fortran PowerStation | |
| |
| |
| |
Compatibility with Digital Fortran on Other Platforms | |