The language is a fairly standard implementation of BASIC, providing an integrated editing and runtime environment. Statements are analyzed for correct syntax as they are entered and then stored in tokenized form. Each BASIC statement has to be on a uniquely numbered line,
e.g. 10 PRINT "HELLO WORLD" Line numbers are mandatory, and statements are automatically placed in ascending numeric sequence. TSB lines can contain one statement; chaining multiple statements with the colon as in MS BASIC is not supported. Multiple variable assignments are allowed,
e.g., 20 LET A=B=C=42. As in most versions of BASIC, use of the word "LET" was optional. In the earliest version (2000A), the language supported the following features. Later versions added many more features. • Unconditional program flow-control via
GOTO statements, and
subroutines via the
GOSUB and
RETURN statements • Conditional flow-control via IF/THEN statement • Calculated flow-control via the GOTO/OF and GOSUB/OF statements • Variable-based block loop
FOR and NEXT statements • In-code data storage via DATA, READ, and RESTORE statements • Input from and output to the user or a disc
file via INPUT, READ #, PRINT, PRINT #, and IF END # statements • Numeric variables of the form "A" or "A
n" (where A is a single letter and
n is a single, optional digit). •
String variables of the form "A$" (where A is a single letter), storing from 1 to 255 characters as-dimensioned. (See below.) (Or: variable-names "A0$" or "A1$," but never more than these two digits.) • One- or two-dimensional
matrix (array) variables of the form "A[x]" or "A[x,y]" • Matrix operations via statements (MAT READ, MAT INPUT, MAT PRINT, MAT=) and operations (+, -, *, ZER, CON, IDN, INV, TRN) • Boolean operators (AND, OR, NOT) and relational operators (<, <=, =, #, <>, >=, and >) • Built-in mathematical functions including trigonometric (SIN, COS, TAN, ATN), logarithms (LOG, EXP), square root (SQR), random number generator (RND), others (ABS, INT, SGN, MIN, MAX), and user-defined functions •
Punched tape operations using Teletype Model 33 electromechanical teleprinter remote terminals == String handling ==