                 ALGOL-M
             CP/M VERSION 1.1
              AUGUST 1978

             
               WRITTEN BY
            LT MARK MORANVILLE(CODE 52MI)
            NAVAL POSTGRADUATE SCHOOL
            MONTEREY,CALIF 93940

   ON THIS DISK YOU SHOULD FIND VARIOUS TXT FILES, THESE FILES
CONTAIN DOCUMENTATION CONCERNING THE ALGOL-M PROGRAMMING LANGUAGE.
THEY INCLUDE THE FOLLOWING:-

   ALGINTRO.TXT: AN OVERVIEW OF THE ALGOL-M LANGUAGE .

   USRMAN.TXT: AN ALGOL-M USER'S MANUAL WITH A COMPLETE 
               DESCRIPTION OF THE VARIOUS ALGOL-M LANGUAGE
               STRUCTURES.

   COMERR.TXT: A DESCRIPTION OF THE ALGOL-M COMPILER ERROR
               MESSAGES.

   RUNERR.TXT: A DESCRIPTION OF THE ALGOL-M INTERPRETER ERROR
               AND WARNING MESSAGES.

   IN ADDITION TO THESE FILES YOU SHOULD FIND VARIOUS SAMPLE
PROGRAMS WHICH DEMONSTRATE MOST OF THE FEATURES OF THE 
LANGUAGE.

INCLUDED IN THIS SECTION IS A DESCRIPTION OF HOW TO CREATE,COMPILE,
AND EXECUTE AN ALGOL-M PROGRAM.  

ALGOL-M REQUIRES A CP/M SYSTEM WITH AT LEAST 24K OF MEMORY. TO CREATE
AND RUN A PROGRAM YOU DO THE FOLLOWING:-

1. CREATE AN "ALG" FILE USING THE CP/M EDITOR. THIS FILE MUST BEGIN
WITH A "BEGIN" OR A COMMENT(WHICH CONSISTS OF EITHER A. A STRING
ENCLOSED WITH "%" OR B. A STRING BEGINNING WITH THE WORD "COMMENT" AND
ENDING WITH A ";"). THIS FILE MUST END WITH EITHER A. THE WORD
"END" WITH NO ; OR B. AN "END" FOLLOWED BY AN "EOF".
REVIEW THE VARIOUS SAMPLE PROGRAMS FOR THE EXACT FORMAT.

2. COMPILE THE "ALG" PROGRAM BY TYPING "ALGOLM FILENAME"
FOLLOWED BY A CARRIAGE RETURN.
 "FILENAME" STANDS FOR THE NAME OF YOUR FILE.  YOU MAY OBTAIN
AN OPTIONAL LISTING OF THE FILE AT THE TERMINAL BY ADDING A "$A"
AFTER THE FILE NAME.  THE FORMAT FOR THE LISTING  IS AS FOLLOWS:

   1 1 BEGIN

THE NUMBER 1 ON THE LEFT REPRESENTS THE LINE NUMBER. THE NUMBER 1
IN THE MIDDLE REPRESENTS THE BLOCK LEVEL. AT THE END OF THE PROGRAM
THE LAST LINE MUST CONTAIN A BLOCK LEVEL OF 0 OR YOU HAVE LEFT OFF
AN END IN YOUR PROGRAM. THE WORD BEGIN REPRESENTS THE INFORMATION
ON LINE 1. THE FORMATS FOR COMPILING ARE AS FOLLOWS:-
(THE INFORMATION CONTAINED IN THE PARENTHESES IS NOT TYPED)


        ALGOLM LUNAR (NO LISTING,NO TRACE)

        ALGOLM LUNAR $A (LISTING,NO TRACE)

        ALGOLM LUNAR $E (NO LISTING,TRACE)

        ALGOLM LUNAR $AE (LISTING,TRACE)


3.  TO ACQUIRE A TRACE OF PROGRAM EXECUTION USE THE $E OPTION.  WHEN
THE PROGRAM IS EXECUTED THE SOURCE CODE LINE NUMBER WILL BE TYPED AT 
THE CONSOLE AFTER EXECUTION OF THAT LINE HAS COMPLETED.

4.  AFTER A SUCCESSFUL COMPILATION THERE WILL BE AN "AIN" FILE CREATED.
TO EXECUTE THE "AIN" FILE TYPE "RUNALG FILENAME" FOLLOWED BY A 
CARRIAGE RETURN.


