— William Schaub, Dale Sinder and Steve Zoppi 2025/05/09
Tip
The tutorial phases are arranged in a prescribed order, wherein each phase builds upon the previous. Performing these activities out of order will leave the installation in an inconsistent, or perhaps inoperable state.
The Level One PLATO Protocol requires that a terminal emulator supports an array of new features that need to be individually tracked and available to lesson authors in the form of system defined variables 1) These variables (among other things) express the capabilities of the connected terminal.
Phase 1 accomplishes this by defining an appropriate place to store the information. One word is added to the student bank 2) and another to the station bank 3) The student bank is available to the PLATO executor while the station bank is available to both the executor and formatter.
The Student Bank describes terminal capabilities which an author can interrogate/use. This needs to be our first modification as other system component rely on interrogating these properties / capabilities in the course of normal execution.
Follow Along
Code fileplmods000
Block7d - tbtcap
We extend this bank by one 60-bit word having the following properties:
In the station bank, 4) we extend the field list by one word with the following properties:
Follow Along
Code fileplmods000
Block7e - tbtcap
Among other new system reserved words, add ztlevel whose value is:
The other system reserved words follow ztlevel:
Success
At this point, the critical system definitions have been mapped-out and we are now ready to move on to the next phase: Phase 2 - Set the 'Capabilities' Values