Phase 2 - Set the 'Capabilities' Values

William Schaub, Dale Sinder and Steve Zoppi 2025/05/09

Tutorial Phases

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.

Overview

While Portal was being developed, it was important to query the terminal for the supported features at that time. Today with the feature set finished, we simply set all appropriate bits based on the knowledge that we are dealing with a full function Portal-like terminal. A far simpler query can be used for that.

The actual values will be set by lesson PLATO before the terminal user logs in. This is done by unit jptset called from unit prewel. The terminal is queried for the environment in which it works.

Non-Portal terminals will not respond with a valid reply.

By the time the user has been logged on, values have been set in station bank for plato x/y sizes, terminal x/y sizes and terminal level.

In each of these references, please inspect code file l1pmods for the details. 1)

ztlevel = 0 for pterm 1 for PlatoAccess (Level 1 PLATO Protocol).

Also set value of terminal environment code in lesson PLATO:

id (1=dos,2=mac,3=unix,4=win,5=os2,6=nt,7=win95,8=java/misc,9=java/win,10=java/mac)
ztlevel is the new reserved word for this information.
ztosid is the new reserved word for terminal environment code
Follow Along

Code file plmods000

Block 7e - tbtcap

In GETVAR , we modify the existing code using the block cited above, which results in the following enhanced code:

ztlevel ps sa1 terscrn mx2 -1 lx1 -1 bx1 -x2*x1 eq ztlevel ztosid ps rj ztlevel zr x1,ztosx sa1 tbtcap mx2 -cp.oswi lx1 -cp.osid bx1 -x2*x1 sx1 x1+1 eq ztosid ztosx sx1 0 eq ztosid ztxpps ps */ end getvar

In addition to the above, more system defined variables have been created (see the end of the previous phase for details). These additional variables provide the following information:

System Defined Variables for Display:

Terminal type and communications protocol are checked to return these values.

These reserved words reflect the current screen size as specified by the last -fine- command.

Success

We have just completed the design and preliminary code implementation for these enhancements. We are now ready to apply them in Phase 3 - Add CONDEN, PLATO, FORMAT Support for L1P Terminals.

1)
These may be found in BLOCK 2-c tbtcap. System reserved words are added using the sym macro contained in deck lexdef.