HELP ECHOLOAD                               Steven Hardy, September 1979
                                               Updated A.Sloman Aug 1986

ECHOLOAD <filename>;

This macro is used to load demonstration files with interspersed
explanatory comments and POP-11 commands.

It behaves like *LOAD except that as the file is read in by the POP-11
system it is 'echoed' onto the terminal; that is, the contents of the
file are printed out, comments and all, as the file is loaded. Thus, if
the file contains print instructions, then first the instructions will
be printed, and then whatever output they produce will be printed.

You will usually want pauses in the loading of the file so that you can
explain to your audience what is happening. The procedure PAUSE is
provided for this purpose. When invoked it waits for <RETURN> to be
typed on the terminal before continuing with the demonstration.

If you have prepared a command file called, say, FOO.P then the command:

    echoload foo.p;

(with or without the semi-colon) will load the file, printing lines from
the file as they are read by the POP-11 system.

Every occurrence of
    pause();

will cause it to wait.

-- INTERACTING DURING A PAUSE -----------------------------------------

During a PAUSE you may engage in additional 'unscheduled' interaction if
you wish. Suppose that when ECHOLOAD has paused you wish to print out
something or give a new command before continuing. You can do this as
follows:

    1. Type CTRL-C
    2. Give your unscheduled commands
    3. Type "end of file" (CTRL-D on Unix machines; CTRL-Z on VMS)

You'll find that when you type CTRL-C the system is in POPREADY mode
(see HELP *POPREADY). Whilst in this mode it prompts you with two colons
and a number instead of a single colon. Typing "end of file" makes it
leave POPREADY and finish the pause.

If you know in advance that you are going to want to interact with your
program at a certain point whilst echoloading a file, then instead of
using the procedure PAUSE at that point, put the following command in
the file:

    popready();

This will produce an effect similar to PAUSE, except that you can
immediately interact with the program - there is no need for CTRL-C.
Echoloading will not continue until you type "end of file" to
leave POPREADY.

If you simply LOAD a file containing PAUSE instructions they have no
effect; so a file prepared for ECHOLOADing can also be used with LOAD.
This is useful if you make small changes to a file and wish to check
that it still compiles without mishaps.

A global variable ECHOLOAD_INPUT holds the character repeater from which
characters in the file being echoloaded are obtained. This may be useful
in certain circumstances. For full details SHOWLIB ECHOLOAD.

See also

HELP *LOAD        - command to compile a file
HELP *AUTOLOAD    - on the automatic compilation of files
HELP *POPREADY    - invokes compiler recursively. Useful for interrupts.
LIB  *ECHOLOAD    - for the program code


--- C.all/help/echoload
--- Copyright University of Sussex 1992. All rights reserved. ----------
