From Ninerpedia
Revision as of 01:16, 29 December 2009 by Mizapf (talk | contribs) (Hardware moved to Specifications)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

The common TI-99 setup comprises the console, and peripheral devices. In earlier years, peripheral devices like interfaces, memory expansion, or speech synthesizer were hooked next to each other at the peripheral port on the right side of the console, building up a chain of boxes which stretched beyond the ends of your desk (the Sidecar setup). Later, peripheral extensions were put into the Peripheral Expansion Box (PEB).

Hardware Architecture of the TI-99/4A

The TI-99/4A is a microcomputer system driven by one TMS9900 microprocessor.

The address bus is 16 bit wide, allowing for a maximum of 64 KiB of directly accessible memory, consisting of ROM, RAM, and special ports.

The data bus is 16 bit wide. However, most peripheral devices outside the console were connected by an 8 bit bus using a 16/8 bit converter (splitting one word in subsequent two bytes and vice versa). This led some people to falsely believe that the TI-99/4A was an 8-bit system (or "not a true 16 bit system").

One special feature of the TMS9900 processor (and comparable processors of this family) was that there are no hardware registers available for user programs. Instead, the TMS9900 uses a pointer to a set of 16 software registers with 16 bit width each in RAM. This workspace pointer (WP) may be set by user programs and allows to quickly replace the complete set of 16 registers which is especially useful for modular programming. Programs could allocate their own workspace area, move the WP to this area, and thus avoid to interfere with other programs.

In the TI home computer system family there was also a concept of port-based memory addressing. This allowed to considerably increase the useable memory by introducing new address spaces. Three of these memories are available:

  • Video memory: 16 KiB
  • GROM memory: 64 KiB (multiple ports allow to multiply this size)
  • Speech memory (within the Speech Synthesizer)