Gardens Point Modula - IBM PC & compatibles version of March 1995 ---------------------------------------------------------------- This is the PC version of the Gardens Point Modula-2 compiler (gpm), one of a family of compiler and related tools produced by the Programming Languages and Systems Group of the School of Computing Science, Queensland University of Technology. As a partly-compiled, partly-interpreted implementation of gpm, it provides a free sample of gpm technology, and a powerful Modula development and implementation tool. It is totally compatible with the various gpm versions on Unix workstations (DOS limitations excepted). Native code versions for Linux and DJGPP are also available in this directory. They produce code that runs about ten times as fast as the gpm-pc version, but require an i386/i486 computer and either the Linux operating system or the DJGPP DOS extender to be installed. The PC version comprises - executable files of the compiler (gpm) and load-builder (build) and the make utility (gpmake) - the definition & symbol file directory m2sym - the reference and object file directory m2lib - a sample batch file to set environment variables (dogpm) A comprehensive printed documentation set is available. Please see the accompanying readme file for details of how to obtain the document set. ---------------------------------------------------------------------------- To create a typical environment, unpack the GPMPCZIP.ZIP file onto a floppy disk. You should get four (4) .com files (including install.com), two (2) README files and the current distribution gpmpc395.zip. Run install. This will automatically install GPM onto your hard disk and modify your autoexec.bat to include the necessary environment variables. ---------------------------------------------------------------------------- **************************************************************************** PLEASE READ THE README FILES NOW !! **************************************************************************** ---------------------------------------------------------------------------- HELLO.MOD is the minimal demo program - just GPMAKE HELLO and run HELLO.EXE. Similarly, ANSIDEMO.MOD and GR_DEMO are simple demos of the ANSISYS and graphics libraries - just GPMAKE ANSIDEMO ANSIDEMO GPMAKE GR_DEMO GR_DEMO For more complex programs, typical Modula 'compile definitions, compile implementations, link' practice should be followed; for example GPM -I A.DEF ; compile definition module GPM -I B.DEF ; another definition - depends on A GPM -Ig *.MOD ; implementation modules A.MOD & B.MOD, ; and program module C.MOD BUILD C ; program module is C C ; run executable where the options used are the recommended I (interactive editing to correct compilation errors) and g (line number information for post- mortem stack trace). Note that GPMAKE will automate this, choosing the correct compilation order and only recompiling modules which have changed or which depend on changed modules; the above example becomes just GPMAKE -Ig C The BIN subdirectory holds the executables of the compiler (GPM & GPMD), the builder (BUILD & BUILD2), the intelligent make utility (GPMAKE, GRAPHBUI, DECIDER & GPSCRIPT), the symbol file decoder (DECODE), cross- reference (GPXRF), executable compressor (LZEXE) and enumerated type I/O constructor (MKENUMIO). The editor invoked by the -I (Interactive) option is set by DOGPM.BAT to vi; modify to the editor of your choice and change the line number option if necessary. The public domain utility LZEXE.EXE has been used to compress the gpm executables; without it, gpm would not fit on minimal floppy disk systems; the decompression time is insignificant on fast processors. It can be used to compress executable files produced by gpm. It will also give you practice in French ... Known bugs & limitations: ------------------------- The PC version is currently slightly behind the Unix versions; omissions include string concatenation. New in this Release: -------------------- Some minor bug fixes The complete ISO Draft Standard I/O libraries The installation program A public domain linker is now included to replace the MS Linker no longer supplied free with DOS. --------------------------------------------------------------------------- Please report bugs to (1) John Hynd School of Computing Science Queensland University of Technology GPO Box 2434 Brisbane Queensland 4001 hynd@fitmail.fit.qut.edu.au (2) Philip Sinfield Programming Languages and Systems Group School of Computing Science GPO Box 2434 Brisbane Queensland 4001 sinfield@fit.qut.edu.au