Terminology

From Ninerpedia
Revision as of 09:50, 7 December 2014 by Stephen Shaw (talk | contribs) (add extra alphabet letters ready to edit)
Jump to navigation Jump to search

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

A

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.

B

C

Communications Register Unit: serial interface embedded in TMS processors

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

D

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.

E

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.

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.

F

FDC: - Floppy Disk Controller

Firehose cable: Nickname for the Flex Cable Interface

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.

G

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 Programming Language: (GPL) 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).

Graphics Read-Only Memory: (GROM) 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.

H

I

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.

L

M

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.

N

P

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

PIO: Parrallel/Printer Port.

S

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.

V

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.

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

W

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.

X

XB: (Also ExBas) - Extended BASIC Module.