TI Memory Expansion
I have a question regarding the TI: Why do I always see ads for 32K RAM memory expansion, but never anything more than 32K? Is there any way I could construct a memory expansion with 48K for my TI-99/4A, or does the microprocessor just ignore any extra memory?
Like most microprocessors of its generation, the TI-9900 microprocessor in the Tl-99/4 and 99/4A can only address directly a maximum of 64K (65536) memory locations. These locations can't all be used for RAM, since the microprocessor must also have some permanent memory (ROM) to hold its operating system. Still more addresses are required to allow the microprocessor to communicate with the various input/output support chips and peripherals. And the ROM for the built-in BASIC language occupies another large chunk of address space. When all these features are added, only 32K of address space remains free for future memory expansion, which is why no expanders larger than 32K are available.
Note that the 16K of RAM built into the Tl-99 console is not directly connected to the microprocessor, and doesn't occupy any of its address space. That memory is part of the VDP (Video Display Processor) chip's address space, and the microprocessor can access it only indirectly, via the VDP. TI's built-in BASIC is designed to access only this VDP memory, which is one of the reasons it's comparatively slow. It also explains why standard TI BASIC can't use any expansion memory connected to the microprocessor. (VDP memory can't be expanded beyond the 16K provided.) To make use of the 32K expanded memory, you need TI Extended BASIC or some other command module.