plato:dev.notebook:l1pp:start

Supporting "Smarter" Terminals

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

Abstract

On CERL 1) NovaNET, support was added in the late 1980's for a “Smarter” PLATO 2) terminal that exceeded the capabilities of its predecessors 3).

With the advent of robust personal computers, the need to have special-purpose hardware was no longer necessary. Though prior generations of personal computer-based terminal emulators had been attempted, the limitations of the terminal platforms, displays and CPU characteristics limited what could be done in until displays could equal or surpass the capabilities of the PLATO terminal's 512×512 pixel density.

The ability to support other forms of rich graphics, native fonts, and more, led to the development of a significantly enhanced terminal software called PlatoAccess.

PlatoAccess was constructed to build upon the existing Level Zero ASCII Protocol and implemented the Level One ASCII Protocol .


As we continue to recover older lessons of historical import, we have come across lessons which use these features of PlatoAccess. Because CYBIS does not inherently (in Release 1), support these more advanced display capabilities. The Retro1 project has chosen to enhance CYBIS in Release 2, to implement these capabilities.

Accomplishing this is an on-going project. Enhancements build upon other accomplishments so this work must be conducted in phases. Each phase is documented here in the order in which they must be done. This work is conserved in the form of a TUTORIAL for the aspiring hobbyist.

Prioritization of Work

Work is prioritized as described above; by the natural programming need, with each feature providing a stepping stone to the next feature. Prioritization will then shift to doing the most likely to be encountered feature that is also very difficult to do without.

  • The most recent PlatoAccess PlatoAccess Terminal Emulator
  • CDC.IO Version 3.1.0.2 or greater
  • Retro1.org release of CYBIS Release 2
    • unmodified versions of the following:
      File Name File Type #Parts Account
      nmem tutor 6 s0nver
      nplato tutor 18 system
      ns0terms tutor 5 s0nver
      ns0notes tutor 9 s0nver
      plato tutor 18 system
      s0terms tutor 5 system
      s0notes tutor 9 system
  • Understanding of

As noted above, this procedure assumes that you are using a CYBIS Release 2 system with no additional modifications applied to the following files:

  • nplato/plato (The “development, next version” of lesson plato)
  • nmem/mem (The “development, next version of mem)
  • maintp (The production PLATO Maintenance Procedures shipped with CYBIS Release 2).
  • ns0notes/s0notes (Part of the PLATO/CYBIS system library shipped with CYBIS Release 2).
  • ns0terms/s0terms (Part of the PLATO/CYBIS system library shipped with CYBIS Release 2).

Failing to have a proper backup may lead to undesirable outcomes:

  1. You may accidentally overwrite work in progress on lessons nplato and nmem.
  2. The replacement code file plmods will completely overwrite any modifications which may have been locally applied.

When completed, this procedure adds many new files and edits or replaces the contents of these key existing files:

  • ns0notes ⇐ (New Copy)
  • s0notes ⇐ System Library
  • os0notes ⇐ (Old Copy)
  • ns0terms ⇐ (New Copy)
  • s0terms ⇐ System Library
  • os0terms ⇐ (Old Copy)
  • maintsub ⇐ Utility Jobs
  • maintp ⇐ Build Procedures
  • nmem ⇐ (New Copy)
  • mem ⇐ System Memory Viewer
  • omem ⇐ (Old Copy)
  • nplato ⇐ (New Copy)
  • plato ⇐ System Lesson PLATO
  • oplato ⇐ (Old Copy)
  • nuser ⇐ (New Copy)
  • user ⇐ System Lesson USER
  • ouser ⇐ (Old Copy)

These procedures will also create a set of modifications which, when applied correctly, will implement features of the Level One PLATO Protocol.


It is highly recommended that you backup the entire system using the cdc.io backup subcommand.

The system lesson operator is used to promote the following files to “production” using the system standard procedure:

  • nplatoplatooplato
  • ns0notess0notesos0notes
  • ns0termss0termsos0terms
  • nmemmemomem
  • nuseruserouser

You must successfully complete all steps in each phase before proceeding to the next.

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.


1)
The Computer-based Education Research Laboratory at the University of Illinois at Urbana/Champaign
2)
Programmed Learning and Teaching Operation
  • plato/dev.notebook/l1pp/start.txt
  • Last modified: 2026/02/15 13:13
  • by 127.0.0.1