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

Salford FORTRAN now ProofBuild FORTRAN DLL's for Visual Basic
Cygwin Fortran
Delorie djgpp fortran
Indowsway FORTRAN - Realwin - FORTRAN 90/95

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 World
Microsoft Visual Basic / Visual Studio resources

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 2013 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). The slink.exe is dated May 14, 2012 and is from FTN95. This is required to be able to compile in Windows 10 64-bit. The compiler has been used since code writing for SPuDS was started in 1999.

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