######### TTY

Library: Input/Output
Introduced: 2.2.0
Appearance: #########

Behavior

This component implements a very simple dumb terminal. It receives a sequence of ASCII codes and displays each printable character. When the current row becomes full, the cursor moves to the following line, possibly scrolling all current rows up if the cursor was already in the bottom row. The only supported control sequences are: backspace (ASCII 8), which deletes the last character in the final row, unless the final row is already empty; newline (ASCII 10), which moves the cursor to the beginning of the following line, scrolling if necessary; and form-feed (ASCII 12, typed as control-L), which clears the screen.

Pins

West edge, upper pin
Input : Data - this is the ASCII value of the next character to be entered into the terminal. Bit width 7.
West edge, lower pin marked by triangle
Input: Clock - when triggered while the write-enable pin isn't 0, the current ASCII value on the Data input is processed by the terminal. Bit width 1.
South edge, leftmost pin
Input: Write Enable - when 1 (or floating (U) or error (E)), a clock edge will result in processing a new character from the data input. The clock and data inputs are ignored when Write Enable is 0. Bit width 1.
South edge, second pin from left
Input: Clear - when 1, the terminal is cleared of all data, and all other inputs are ignored. Bit width 1.

Attributes

Rows
The number of rows displayed in the terminal.
Columns
The maximum number of characters displayed in each row of terminal.
Trigger
Provided the Write Enable signal is 1, determines whether the data input is processed on a rising edge of the clock signal (when the clock input changes from 0 to 1) or on a falling edge (when the clock input changes from 1 to 0).
Color
The color with which to draw the text appearing in the terminal.
Background
The color with which to draw the terminal's background.

Poke Tool Behavior

None.

Text Tool Behavior

None.

Back to Library Reference