From Ninerpedia
Jump to: navigation, search

All references to TI-99/4A also apply to TI-99/4 unless stated otherwise.


Accessory devices: Additional equipment which attaches to the computer and extends its functions and capabilities. Included are pre-programmed Command Modules and units which send, receive, or store computer data. such as printers and disks. These are often called peripherals.

Array: A collection of numeric or string variables, arranged in a list or matrix for processing by the computer. Each element in an array is referenced by a subscript describing its position in the list.

ASCII: The American Standard Code for Information Interchange, the code structure used internally in most personal computers to represent letters, numbers, and special characters.

AVPC: Advanced Video Display Processor, produced by Digit Systems (Tom Spilane) - This PBOX card use an 9938.


BASIC: An easy-to-use popular programming language used in most personal computers. The word Basic is an acronym for "Beginner's All-purpose Symbolic Instruction Code.". See articles TI BASIC and Extended BASIC

Baud: Commonly used to refer to bits per second.

Binary: A number system based on two digits. 0 and 1. The internal language and operations of the computer are based on the binary system.

Branch: A departure from the sequential performance of program statements. An unconditional branch causes the computer to jump to a specified program line every time the branching statement is encountered. A conditional branch transfers program control based on the result of some arithmetic or logical operation.

Breakpoint: A point in the program specified by the BREAK command where program execution can be suspended. During a breakpoint, you can perform operations in Command Mode to help you locate program errors. Program execution can be resumed with a CONTINUE command, unless editing took place while the program was stopped.

Buffer: An area of computer memory for temporary storage of an input or output record.

Bug;: A hardware defect or programming error which causes the intended operation to be performed incorrectly.

Byte: A string of binary digits (bits) treated as a unit, often representing one data character The computer's memory capacity is often expressed as the number of bytes available. For example, a computer with 16K bytes of memory has about 16,000 bytes available for storing programs and data.


Command: An instruction which the computer performs immediately. Commands are not a part of a program and thus are entered with no preceding line number.

Command Mode: When no program is running, the computer is in the Command (or Immediate) Mode and performs each task as it is entered.

Command Modules:Pre-programmed ROM modules which are easily inserted in the TI Home Computer to extend its capabilities.

Communications Register Unit: serial interface embedded in TMS processors

Concatenation: Linking two or more strings to make a longer string. The "&" is the concatenation operator.

Constant: A specific numeric or string value. A numeric constant is any real number, such as 1.2 or -9054. A string constant is any combination of up to 112 characters enclosed in quotes, such as "HELLO THERE" or "275 FIRST ST."

Context switch: Operation of TMS processors. The execution context is defined as the Workspace,the current execution location, and the status flags. By a context switch, the workspace pointer, the program counter, and the status register are loaded with new values corresponding to the new context. A context switch simplifies modular programming in assembly language. There are three machine lanuage operations that perform context switches: BLWP (branch and load workspace pointer), XOP (extended operation), and RTWP (return with workspace pointer). Apart from those, two more kinds of context switches appear: the initial context switch to the values stored at >0000, and interrupts that are services by an ISR.

CRU: short for Communications Register Unit

Cursor: A symbol which indicates where the next character will appear on the screen when you press a key.


Data: Basic elements of information which are processed or produced by the computer.

Default: A standard characteristic or value which the computer assumes if certain specifications are omitted within a statement or a program.

Device: See Accessory Devices.

Device Service Routine: (DSR) Program that is provided for accessing a peripheral device; would be called a driver in common terminology. The DSR defines device names and functions to operate the device on a higher level, abstracting from the hardware details. There are utility functions in the BASIC ROM and for assembly language programs to facilitate accessing the DSR of a device given by name (DSRLNK). The DSR is usually stored in a ROM circuit that is included on the PCB of the expansion card. Each card may be selected by a CRU operation which leads to the DSR being mapped into the CPU address space. The common region for DSRs is >4000 to >5fff. On the Geneve, DSRs are also included as parts of the MDOS operating system, replacing the fixed DSRs on the ROMs.

Disk: A mass storage device capable of random and sequential access.

Display: (noun) the home computer screen; (verb) to cause characters to appear on the screen.


Edit Mode:The mode used to change existing program lines. Edit Mode is entered by using the Edit Command or by entering the line number followed by FCTN 1 ↓ or FCTN 2 ↑. The line specified is displayed on the screen and changes can be made to any character using special keys

Editor/Assembler: (E/A or Ed/As) The standard development environment for assembly language programs on the TI-99/4A. Consists of a cartridge and two diskettes; the cartridge provides a menu to select the editor, the assembler, and to load programs, and the diskettes contain the actual editor and assembler programs that are loaded by the cartridge.

Endianness: Determines the order of bytes within words. Big-endian architectures have the higher-order byte at address x and the lower-order byte at x+1. Little-endian system have the lower-order byte at x and the higher-order byte at x+1. May also determine the bit order in a byte or word, where a big-endian bit order means that bit 0 has highest value, while bit 7 or bit 15 has lowest value. The TI systems are big-endian with respect to both multi-byte words and bit order.

End-of-file: The condition indicating that all data has been read from a file .

Execute;: To run a program; to perform the task specified by a statement or command.

Exponent: A number indicating the power to which a number or expression is to be raised; usually written at the right and above the number. For example, 28 = 2×2×2×2×2×2×2×2. In TI Basic the exponent is entered following the ^ symbol or following the letter "E" in scientific notation . For example, 28=2^8; 1.3 × 1025 =1.3E25.

Expression: A combination of constants, variables, and operators which can be evaluated to a single result. Included are numeric, string, and relational expressions.

Extended Basic: (ExBas or XB) Popular BASIC environment which is downward compatible (with some few exceptions) to TI BASIC and provided on a cartridge. Extended Basic allows for using advanced programming structures, provides sprites, introduces more commands and subprograms, and can make use of a memory expansion. Time-critical parts of the interpreter are provided in machine language in the CPU address space which noticeably increases performance to the built-in TI BASIC.


FDC: - Floppy Disk Controller

File: A collection of related data records stored on a device; also used interchangeably with device for input/output equipment which cannot use multiple files, such as a line printer.

Firehose cable: Nickname for the Flex Cable Interface

Fixed-length records: Records in a file which are all the same length. If a file has fixed-length records of 95 characters, each record will be allocated 95 bytes even if the data occupies only 76 positions. The computer will add padding characters on the right to ensure that the record has the specified length.

Flex Cable Interface: Card, cable, and plug that connect the TI-99/4A console with the Peripheral Expansion Box. The Flex Cable Interface's card was usually plugged into slot 1 of the P-Box.

Function: A feature which allows you to specify as "single" operations a variety of procedures, each of which actually contains a number of steps; for example, a procedure to produce the square root via a simple reference name.


GPL - Graphics Programming Language: Programming language at assembly language level, executed by a virtual machine called GPL interpreter or Monitor. GPL is designed as a language for an 8-bit architecture and stored within GROMs. Due to the fact that GPL must be interpreted, the performance is poor compared to native machine language, yet still much faster than BASIC. The reasons for defining this language may be that Texas Instruments faced the problem that TI BASIC and other applications in Command Modules (cartridges) became too large to fit into the available areas of the CPU address space, so they made use of special memory devices called GROMs which had a higher capacity than available ROM chips, yet within a smaller package. Other theories say that GPL was one means of controlling software development from third parties. The language has no specific graphic features despite its name, but possibly it was named after the location where it is stored (GROMs).

GRAMULATOR Graphics Ram Module produced by Cadd Electronics allows the user to load/modify and run cartridges. Unlike the GramKracker produced by Millers Graphics with modifications, this unit could also run MBX modules. 96K of memory with battery backup

Graphics: Visual constructions on the screen, such as graphs, patterns, and drawings, both stationary and animated. TI Basic has built-in subprograms which provide easy-to-use color graphic capabilities.

Graphics line: A 32-character line used by the TI Basic graphics subprograms.

GROM - Graphics Read-Only Memory: Read-only memory (ROM) circuit, packaged in a 16-pin DIP package. A GROM has a storage capacity of 6 KiB. It does not have separate address and data lines; instead, an address must first be set by putting two bytes on the data lines with the address mode pin selected. Then, data can be sequentially read from the same lines in data mode. GRAM circuits are mentioned in the Editor/Assembler manual in the context of accessing, but no real devices have been seen in the wild. GROMs have special control lines that are intended to be driven by the TMS9918 video processor (or compatibles) so it seems as if GROMs were originally designed to hold static video content.


Hardware: The various devices which comprise a computer system, including memory, the keyboard, the screen, disk drives, line printers, etc.

Hertz (Hz): A unit of frequency. One Hertz =one cycle per second.

Hexadecimal: A base-16 number system using 16 symbols, 0-9 and A-F. It is used as a convenient "shorthand" way to express binary code. For example, 1010 in binary = A in hexadecimal, 11111111 = FF. Hexadecimal is used in constructing patterns for graphics characters in the CALL CHAR subprogram.


Immediate Mode:See Command Mode.

Increment: A positive or negative value which consistently modifies a variable .

Input: (noun) data to be placed in computer memory; (verb) the process of transferring data into memory.

Input line: The amount of data which can be entered at one time. In TI Basic, this is 112 characters.

Integer: A whole number, either positive, negative, or zero.

Interrupt Service Routine: (ISR) Portion of code which is called in response to an interrupt. The main ISRs are found in the console ROM and are called when VDP interrupts occur. Peripheral expansion cards like the serial interface may define own ISRs. An ISR has similarities with DSRs as it is usually invoked via a context switch, but usually not by a command but by the definition within the CPU.

Internal data-format: Data in the form used directly by the computer. Internal numeric data is 8 bytes long plus 1 byte which specifies the length. The length for internal string data is one byte per character in the string plus one length-byte.

I/O: Input/Output, usually refers to a device function. I/O is used for communication between the computer and other devices (e.g., keyboard, disk)

Iteration: The technique of repeating a group of program statements: one repetition of such a group. See Loop.


Line: See graphics line, input line, print line, or program line.

Loop: A group of consecutive program lines which are repeatedly performed, usually a specified number of times.


Mantissa: The base number portion of a number expressed in scientific notation . In 3.264E+4, the mantissa is 3.264.

Mass storage device: An accessory device , such as a cassette recorder or disk drive, which stores programs and/or data for later use by the computer. This information is usually recorded in a format readable by the computer, not people.

MBX Milton Bradley Expansion Unit (yes the toy maker) allowed the 99/4a to use voice directed games, a special joystick, and a special touchpad keyboard. Also a secondary supply of synthesised speech. Special modules were made for this but most would work without it.

Memory: See RAM, and ROM and GRAM and GROM, and mass storage device.

Module: See Command Module.


Noise: Various sounds which can be used to produce interesting sound effects. A noise, rather than a tone, is generated by the CALL SOUND subprogram when a negative frequency value is specified (-1 through -8).

Null string: A string which contains no characters and has zero length. ( "" )

Number Mode:The mode assumed by the computer when it is automatically generating program line numbers for entering or changing statements.


Operator: A symbol used in calculations (numeric operators) or in relationship comparisons (relational operators). See also article Mathematical operators to replace logical operators.

The numeric operators are:          + - * / ^
The relational operators are:       > < = >= <= <>

Output: (noun) information supplied by the computer; (verb) the process of transferring information from the computer's memory onto a device, such as a screen, line printer, or mass storage device.

Overflow: The condition which occurs when a rounded value greater than 9.9999990999999E127 or less than —9.9999999999999E127 is entered or computed. When this happens, the value is replaced by the computer's limit, a warning is displayed. and the program continues.


Parameter: Any of a set of values that determine or affect the output of a statement* or function.

P-Box: (or PE Box or PEB) short for Peripheral Expansion System Box or Peripheral Expansion Box

PIO: Parrallel/Printer Port.

Print line: a 28-position line used by the PRINT and DISPLAY statements.

Program: A set of statements which tell the computer how to perform a complete task.

Program line: A line containing a single statement . The maximum length .of a program line is 112 characters .

Prompt; A symbol (>) which marks the beginning of each command or program line you enter; a symbol or phrase that requests input from the user.

Pseudo-random number: A number produced by a definite set of calculations (algorithm) but which is sufficiently random to be considered as such for some particular purpose. A true random number is obtained entirely by chance.


Radix-100: a number system based on 100. See article Radix-100

RAM: Random Access Memory; the main memory where program statements and data are temporarily stored during program execution . New programs and data can be read in, accessed, and changed in RAM. Data stored in RAM is erased whenever the power is turned off or Basic is exited.

Record: (noun) a collection of related data elements, such as an individual's payroll information or a student's test scores. A group of similar records, such as a company's payroll records. is called a file.

Reserved word:In programming languages, a special word with a pre-defined meaning. A reserved word must be spelled correctly, appear in the proper order in a statement or command, and cannot be used as a variable name.

ROM: Read-Only Memory; certain instructions for the computer are permanently stored in ROM and can be accessed but cannot be changed. Turning the power off does not erase ROM.

Run Mode: When the computer is executing a program, it is in Run Mode. Run Mode is terminated when program execution ends normally or abnormally. You can cause the computer to leave Run Mode by pressing SHIFT C during program execution (see Breakpoint).


Scientific notation: A method of expressing very large or very small numbers by using a base number (mantissa ) times 10 raised to some power (exponent ). To represent scientific notation in TI Basic, enter the sign, then the mantissa, the letter E, and the power of 10 (preceded by a minus sign if negative). For example, 3.264E4; -2.47E-17;

6 is 6E0;   24 is 2.4E1;   0.52 is 5.2E-1

Scroll: To move the text on the screen so that additional information can be displayed.

Software: Various programs which are executed by the computer, including programs built into the computer, Command Module programs, and programs entered by the user.

Sprite: Graphic feature of the VDP at the size of one character, four, or sixteen which can be moved freely on the screen. Occupies an own layer in the display. At most, 32 sprites can be displayed on the screen. While rendering lines, the TMS9918 VDP only considers four layers per row, which means that a fifth sprite becomes partly or completely invisible where four sprites with smaller number already show in the line.

Statement: An instruction preceded by a line number in a program. IN TI Basic, only one statement is allowed in a program line

String: A series of letters, numbers, and symbols treated as a unit. In TI Basic the content of a srting os indicated by "quotation marks" and a string variable is indicated by a trailing dollar sign - NAME$.

Subprogram: A pre-defined general-purpose procedure accessible to the user through the CALL statement in TI Basic. Subprograms extend the capability of Basic. Extended BASIC supports user written subprograms. Refer to article CALL subprograms.

Subroutine: A program segment which can be used more than once during the execution of a program, such as a complex set of calculations or a print routine. In TI Basic, a subroutine is entered by a GOSUB statement and ends with a RETURN statement.

Subscript: A numeric expression which specifies a particular item in an array . In TI Basic the subscript is written in parentheses immediately following the array name.


Trace: Listing the order in which the computer performs program statements. Tracing the line numbers can help you find errors in a program flow.


Underflow: The condition which occurs when the computer generates a numeric value greater than -1E-128, less than 1E-128, and not zero. When an underflow occurs, the value is replaced by zero.


V9938: VDP used on the Geneve or on graphical enhancement cards ("80-column cards"). Offers more graphics modes and can handle up to 192 KiB of memory.

Variable: A name given to a value which may vary during program execution. You can think of a variable as a memory location where values can be replaced by new values during program execution. A variable can be a number where for example H may have a value of 7, or a string of characters where for example T$ can have a value of "Module".

Variable-length records: Records in a file which vary in length depending on the amount of data per record. Using variable-length records conserves space on a file. Variable-length records can only be accessed sequentially.

Video Display Processor: (VDP) Co-processor in TI systems dedicated to render the display contents and to output to a display device.


Workspace: Set of 16 workspace registers. The TMS9900/9995 processors do not have user-defined registers within the processor but make use of external RAM for their registers. This allows to use context switches, but also slows down execution considerably. The current workspace is defined by the processor register WP (workspace pointer). Choosing a new workspace just amounts to loading a new value into this register. The workspace pointer points to the location of the high byte of register 0.


XB: (Also ExBas) - Extended BASIC Module.