Module shared_screen - Shared screen library

Shared screen library.

To use this library:

#INCLUDE "shared_screen.module"

Index

Declarations

shared_screen.occ:39Process fg.col

PROC fg.col (VAL COLOUR c, CHAN BYTE out!)

Set foreground colour. Generate a VT220 control sequence to set the terminal colour.

Parameters:

VAL COLOUR c Colour to set; see COLOURS
CHAN BYTE out Channel to write to

shared_screen.occ:74Process screen.interpret

PROC screen.interpret (VAL []SCREEN.NODE node, CHAN BYTE out!)

Interpret an array of screen update commands.

Parameters:

VAL []SCREEN.NODE node Commands to interpret; see SCREEN.NODE
CHAN BYTE out Channel to write to

shared_screen.occ:185Process screen.driver

PROC screen.driver (CHAN SCREEN.CONTROL in?, CHAN BYTE out!)

Shared screen process. Manage a VT220 terminal display.

Parameters:

CHAN SCREEN.CONTROL in Command input channel (see SCREEN.CONTROL)
CHAN BYTE out Channel to write to

shared_screen.inc:25Data type COLOUR

DATA TYPE COLOUR

A colour.

shared_screen.inc:26Group COLOURS

Colour constants

shared_screen.inc:27Constant default

VAL COLOUR default

Default colour

shared_screen.inc:28Constant black

VAL COLOUR black

Black

shared_screen.inc:29Constant red

VAL COLOUR red

Red

shared_screen.inc:30Constant green

VAL COLOUR green

Green

shared_screen.inc:31Constant yellow

VAL COLOUR yellow

Yellow

shared_screen.inc:32Constant blue

VAL COLOUR blue

Blue

shared_screen.inc:33Constant magenta

VAL COLOUR magenta

Magenta

shared_screen.inc:34Constant cyan

VAL COLOUR cyan

Cyan

shared_screen.inc:35Constant white

VAL COLOUR white

White

shared_screen.inc:36Constant bold.black

VAL COLOUR bold.black

Bold black (grey)

shared_screen.inc:37Constant bold.red

VAL COLOUR bold.red

Bold red

shared_screen.inc:38Constant bold.green

VAL COLOUR bold.green

Bold green

shared_screen.inc:39Constant bold.yellow

VAL COLOUR bold.yellow

Bold yellow

shared_screen.inc:40Constant bold.blue

VAL COLOUR bold.blue

Bold blue

shared_screen.inc:41Constant bold.magenta

VAL COLOUR bold.magenta

Bold magenta

shared_screen.inc:42Constant bold.cyan

VAL COLOUR bold.cyan

Bold cyan

shared_screen.inc:43Constant bold.white

VAL COLOUR bold.white

Bold white

shared_screen.inc:48Record COORDINATES

DATA TYPE COORDINATES

A pair of coordinates.

shared_screen.inc:50Variable X

BYTE

X coordinate

shared_screen.inc:51Variable Y

BYTE

Y coordinate

shared_screen.inc:56Record COORDINATES.COLOUR

DATA TYPE COORDINATES.COLOUR

A pair of coordinates and a colour.

shared_screen.inc:58Variable X

BYTE

X coordinate

shared_screen.inc:59Variable Y

BYTE

Y coordinate

shared_screen.inc:60Variable col

COLOUR

Colour

shared_screen.inc:64Group SCREEN.COMMAND

Command tags for SCREEN.NODE.

shared_screen.inc:91Record SCREEN.NODE

DATA TYPE SCREEN.NODE

A batch instruction to the shared screen. This is really a union type; the argument tags have different meanings depending on the command.

shared_screen.inc:95Variable tag

BYTE

The command to execute. See SCREEN.COMMAND.

shared_screen.inc:97Variable a

BYTE

First argument

shared_screen.inc:99Variable b

BYTE

Second argument

shared_screen.inc:106Protocol SCREEN.CONTROL

PROTOCOL SCREEN.CONTROL

Control protocol for screen.driver.

shared_screen.inc:109Tag coordinates

coordinates; COORDINATES

Set coordinates

shared_screen.inc:110Tag colour

colour; COLOUR

Set colour

shared_screen.inc:111Tag string

string; BYTE::[]BYTE

Draw a string

shared_screen.inc:112Tag integer

integer; INT

Draw an integer

shared_screen.inc:113Tag byte

byte; BYTE

Draw a byte

shared_screen.inc:114Tag character

character; BYTE

Draw a character

shared_screen.inc:115Tag left

left; BYTE

Move left

shared_screen.inc:116Tag right

right; BYTE

Move right

shared_screen.inc:117Tag up

up; BYTE

Move up

shared_screen.inc:118Tag down

down; BYTE

Move down

shared_screen.inc:119Tag draw.left

draw.left; BYTE; BYTE

Move left drawing character

shared_screen.inc:120Tag draw.right

draw.right; BYTE; BYTE

Move right drawing character

shared_screen.inc:121Tag draw.up

draw.up; BYTE; BYTE

Move up drawing character

shared_screen.inc:122Tag draw.down

draw.down; BYTE; BYTE

Move down drawing character

shared_screen.inc:123Tag erase.eol

erase.eol

Erase to end of line

shared_screen.inc:124Tag erase.bol

erase.bol

Erase to beginning of line

shared_screen.inc:125Tag erase.line

erase.line

Erase whole line

shared_screen.inc:126Tag erase.eos

erase.eos

Erase to end of screen

shared_screen.inc:127Tag erase.bos

erase.bos

Erase to beginning of screen

shared_screen.inc:128Tag flush

flush

Force a screen update

shared_screen.inc:142Tag c.erase.eol

c.erase.eol; COORDINATES

Move then erase to end of line

shared_screen.inc:143Tag c.erase.bol

c.erase.bol; COORDINATES

Move then erase to beginning of line

shared_screen.inc:144Tag c.erase.line

c.erase.line; COORDINATES

Move then erase whole line

shared_screen.inc:145Tag c.erase.eos

c.erase.eos; COORDINATES

Move then erase to end of screen

shared_screen.inc:146Tag c.erase.bos

c.erase.bos; COORDINATES

Move then erase to beginning of screen

shared_screen.inc:147Tag erase.screen

erase.screen

Clear the screen

shared_screen.inc:148Tag cursor.visible

cursor.visible

Make the cursor visible

shared_screen.inc:149Tag cursor.invisible

cursor.invisible

Make the cursor invisible

shared_screen.inc:152Tag interpret

interpret; BYTE::[]SCREEN.NODE

Interpret a list of commands. See SCREEN.NODE.

shared_screen.inc:153Tag poison

poison

Exit