The GNU Pascal compiler
==================

Introduction
------------

This is a port of the GNU Pascal compiler (version 1.2) for the Pascal
programming language to the Acorn range of ARM based machines, running
under RISC OS. As such, this package is covered by the FSF General Public
License (see the files docs.COPYING and docs.COPYINGLIB for details).

This port is  Copyright 1996 Nick Burrett

As with GNU programs, THERE IS NO WARRANTY OF ANY SORT

This compiler requires a minimum 2400Kb of free RAM for compilations.


Files
-----

This is a binary distribution only and consists of the following files:

  bin.gpc		Pascal compiler front end
  bin.gpc-cpp		Pascal compiler pre-processor
  bin.gpc1        	Pascal compiler
  gcc.o.libgpc		Pascal run-time library
  docs.pascal.!Readme   This documentation
  docs.pascal.gpc	Main pascal compiler documentation

The compiler sources (about 7Mb) can be obtained from
    ftp:/kampi.hut.fi/jtv/gnu-pascal
 or ftp:/src.doc.ic.ac.uk/pub/gnu/pascal

Installation
------------

Before attempting to use GNU Pascal, it should be noted that this
distribution will require the GCC front end files stored in the archive
gccmain.zip.
If you do not have a copy of this, it can be retrieved from
  ftp://micros.hensa.ac.uk/micros/arch/riscos/b/b013/gccmain.zip

GNU Pascal 2.7.2 also requires UnixLib 3.7a or later, but not UnixLib 4.0.
GNU Pascal will not work with UnixLib 3.6e or earlier.


Compiling Pascal source
-----------------------

Pascal source files are kept in the 'p' or 'pas' directory.

Simply type:
  gpc -c p.test

will compile the Pascal file, test, into an AOF file and store it in the 'o'
directory.

Automatically compiling and linking is simple:
  gpc p.test -o test

will compile and link the file p.test and store the resultant binary in the
current directory and call it test.

GNU Pascal requires that the run-time library gcc:o.libgpc will need to be
linked in all programs.

All GNU compilers require the library gcc:o.libgcc to operate. So separate
compile and link operations must include this.


Compiling and running the example programs
------------------------------------------

The following example programs are to be found in the directory !gcc.files.
For each program, there is a list of the necessary command lines for how
to compile, link and run the program.


hellow
^^^^^^
The standard Pascal program.

Source: 	p.hellow
Compile using: 	gpc p.hellow -o hellow
Run using: 	hellow



Known problems
--------------

If you find a bug then please read the file docs.bugs for what to do if
you have found a bug.

There are no known problems.


Known Restrictions
------------------

GNU Pascal (GPC) tries to be a Level 0 ISO 7185 compatible Pascal processor.
There are two levels in the Pascal standard; level 0 processors are not
required to understand conformant arrays (this is the only difference)

Contacting me
-------------

I can be contacted by e-mail at: nickb@digibank.demon.co.uk

However, if there is no response from that address I can be contacted
through Simon Callan: gcc@callan.demon.co.uk.
