General Information
Polyhedron FORTRAN information
The Free Country - Free Fortran compiler list
Fortran 77 Language Reference Contents
FORTRAN 77 - Intrinsic Functions
FORTRAN 77 Language Reference

Salford FORTRAN Build FORTRAN DLL's for Visual Basic
Cygwin Fortran
Delorie djgpp fortran
Indowsway FORTRAN - Realwin - FORTRAN 90/95
G77 compiler info.

FORTRAN DLL/Visual Basic
Google - comp.lang.fortran
HOWTO Microsoft - FORTRAN - Visual Basic
Polyhedron - FORTRAN - Visual Basic. - Building and Using DLLs
Display Animated GIF
Conversion of a Static Fortran Library to a Digital Visual Fortran DLL
Programming Languages and Scientific Data Management King's College

Visual Basic
Visual Basic Tutorial
Visual Basic World
Visual Basic Compendium

SPuDS - Structure Prediction Diagnostic Software
Compiling SPuDS is a multipart process. There are two development versions of SPuDS, a GUI version that is available for user download and a command line version for testing and development.

The GUI is compiled with Microsoft Visual Studio 2010 and is written in Visual Basic. The GUI program calls FORTRAN 77 subroutines compiled in a DLL. The DLL is compiled with a Salford FTN77/Win32 v4.03 compiler (at Silverfrost and include the VBDLL.EXE file in the salford directory). This compiler has been used since code writing for SPuDS was started in 1999.

The compiler does not work in 64 bit versions of Windows 7. Installation of Windows Virtual PC with Windows XP mode is needed in Windows 7 to compile the DLL.

Two folders are used in the virtual machine. I use C:\Lufaso\salford\ and C:\Lufaso\CodeDLL\. The C:\Lufaso\salford\ folder (~18 MB) contains ftn77.exe and associated files (along with some code examples). The C:\Lufaso\CodeDLL\ folder (~8 MB) contains the core SPuDS code. There are several batch files that are used to simplify the compiling of the code. These batch files should to be executed from the command line (start-run-cmd). The dll.bat compiles the spuds.dll for use with the GUI. The exe.bat compiles the spuds.exe for text version testing in a cmd window.

The batch files contain information related to paths of where the compiler resides, which need to be adjusted to match the paths of the compiler and SPuDS code and files. In the exe.bat, each *.f file needs to be added separately (ftn77 *.f -check -c) to this batch file and also to the slink command (*.obj).

In the dll.bat, each *.f file is on a single line (ftn77 bond_v.f spuds2.f output.f 23.f 22.f 21.f 20.f 17.f 16.f 14.f 13.f 10.f 5.f 3.f t_angle.f pyro.f spinel.f garnet.f zircon.f). The vbdll program is next called (vbdll spuds.tpl spuds.obj spudse.exp). The spuds.tpl file contains information about the number of arguments to each subroutine. The spuds.obj and spudse.exp files are created by ftn77 and don't need to be edited. The slink command (slink $spuds.inf) calls the series of commands in the spuds.inf, which has the first three lines (DLL, insert spudse.exp, archive) and then needs to load the object file for each subroutine and then creates the spuds.dll with the (file) command.

Additional files needed for the same folder as the SPuDs code include the bvparm11.cif, ionradii.dat, and input.txt.

The descriptions above are instructional and the SPuDS FORTRAN codes and Visual Basic GUI Code are not available for download.

Valid XHTML 1.0 Transitional