Back to index

Info for ti99_4a


====== Texas Instruments TI-99/4a Home Computer (1981) ======




===== Features =====

* CPU: TI TMS 9900 (with 256 bytes 'cache', actually it accesses to 256 bytes of RAM) 3,3 MHz
* Co-Processor: TMS 9918 (TMS 9929 in Europe) - Video / Sprite
* RAM: 16 KB - Memory expansion card can be added : 4 KB or 32 KB (up to 52 KB)
* VRAM: 16 KB
* ROM: 26 KB : 8 KB ROM connected to the CPU + 18 KB ROM in byte-serial bit-mapped circuits (usually known as GROM, Graphic Only Memory)
* Text Modes: 32 x 24 (16 colors), 40 x 24 (2 colors)
* Graphic Modes: Multicolor mode : 48 x 64 with 16 colors, 256 x 192 with 16 colors (only accesed via machine code) Sprites (only with TI-Extended Basic)
* Colors: 16
* Sound: 3 channels, 5 octaves (110Hz to 55kHz) and 1 noise channel (periodic and white)
* I/O Ports: Tape interface, RGB video, Joystick (2), cartridge slot (Solid State Cartridge)
* Keyboard: QWERTY full-stroke keyboard, 48 keys, 2 x SHIFT, CTRL, ALPHA LOCK, FCTN
* OS: TI's own system, but a p-code card could be added, which gave access to the UCSD p-system and a Pascal compiler.
* Built In Language: TI Basic



===== Usage =====

This TI-99/4a driver offers a high level of compatibility, and implements several optional extensions

* Image cartridges are in V9t9 format (see below for instructions).

* Speech synthesis is emulated completely. The speech synthesizer occasionally generates some weird noise instead of the expected phonemes. I think the actual reason for this issue is the original ti-99/4(a) speech synthesizer uses a tms0285 instead of the tms5220 chip that is emulated: I think I have read somewhere that TI 99/8, which did use a tms5220, was affected by similar bugs. Incidentally, I have tried to hack the tms5220 emulator to sound more like a tms0285, but it is just a hack, I have not reverse-engineered the tms0285.

* Three types of memory expansion cards are emulated: the original TI 32kbyte card, the Super AMS card, and the Foundation card.

* Any of three different floppy disk controllers can be emulated: TI's original SD disk controller, SNUG's BwG disk controller, and Myarc's HFDC disk controller. These disk controllers have different abilities: TI's controller only supports single density disks with 9 sectors per track and 40 tracks per sides; the BwG controller supports double density, and it uses no VDP RAM at all; the HFDC controller supports 80-track floppy disks (high density support is incomplete and non-functional on the TI-99 because of issues with the DSR, though it works fine on the Geneve). Four floppy disk drives are emulated, though the TI controller only supports three of them (the fourth disk drive will be ignored by the TI-99 if the TI controller is selected, but it will work fine with other controllers). Floppy disk images are in V9T9 format. The older MESS-specific format that was used in MESS .69 and earlier has been abandonned; note that this format was compatible with single-sided V9T9 disk images (but not double-sid
ed ones).

* In addition to the floppy drives, the HFDC can support up to 3 MFM hard disks. If you want to use these hard disks, you must use HFDC as the floppy disk controller. Disk images use the MAME harddisk format (the sector size for HFDC harddisks is 256). (BTW, early HFDC cards also included a tape interface which is not emulated.)

* Thierry Nouspickel's IDE card prototype is emulated. A description can be found on Thierry's site along with the required disk-based DSR. Note that the disk image does not work very well with the BwG disk controller, though I cannot figure out why (it works fine with both the TI controller and the HFDC controller). The hard disk image is in the standard MESS/MAME hardddisk format (with 512-byte sectors); since MESS does not support image diff file currently, only un-compressed images can be written to (compressed images ARE supported, but only as read-only disks). Note that current versions of MESS emulate the latest (2004) prototype, contrary to MESS .84 and earlier that emulated an earlier (2001) prototype. The 2004 prototype is incompatible with the 2001 prototype (IDE bus has been byte-swapped), so you need to download the latest DSRs and use a new, blank IDE hard disk image if you switch from MESS .84 or earlier. You must use the DSR version for the 2004 prototype with a rtc65271 clock chip.
The state of the rtc65271 clock chip is now saved to disk, so that you can use the rtc RAM bootstrap loader to load IDEAL from the IDE harddisk, as explained in Nouspickel's IDEAL page.

* Serial port and PIO emulation is incomplete. On the one hand, nothing useful can be done with the RS232 interface, but, on the other hand, the PIO interface enables you to redirect PIO output to a file and save listings to this file by "printing" them to PIO.

* SNUG's HSGPL support is incomplete, but you can already play with it if you want to. You will need the HSGPL DSR (and probably the software manual, too) from the SNUG web site to do anything useful. The FEEPROM is saved to a file called "hsgpl.mem", in the memcard folder. The DSR and system GROM0 needs to be loaded into the FEEPROM: to do so, you can use a hex editor to create a hsgpl.mem file in correct format (see below). Afterwards, you may write extra GROM using the HSGPL DSR. Note that Supercart and MBX paging are not emulated correctly, and there must be other issues. The format of the hsgpl.mem file is relatively simple:
* byte 0 is always 0, and the rest of the file is made of four similar sections for each Flash EEPROM (DSR, GROM0, GROM1, and ROM6);
* the first byte of each section is 0, the second should be 1, and the next 512kbytes is the raw FEEPROM data.

* The SmartMedia part of the USB-SmartMedia card is supposed to be emulated, but it has not been tested yet.

* The tape interface is emulated. The CS1 unit is read/write, whereas CS2 is write-only. Tapes are stored as sampled wave files. You may find that the emulated tape interface is a relatively simple way to exchange files with real-world TI-99s.

== Cartridges ==

Loading a cartridge: You do not need a cartridge image to run the computer, since TI-99/4a has a small built-in basic interpreter.

V9t9-format cart images are typically split into up to 3 files. You MUST load all individual files. Loading a single zip archive containing all the cartridge files will NOT work, you must uncompress the archive and select every file instead. These files can be loaded in any order, as long as all necessary files are loaded.

The following file name extensions are recognized for cartridges dumps:
* "g.bin", ".grom" or ".g": GROM dump
* "c.bin", ".crom" or ".c": CPU ROM dump
* "d.bin", ".drom" or ".d": CPU ROM dump for second page (pages cartridges only), to be loaded alongside a CPU ROM dump

The following two types are supported as alternatives to the CPU ROM type (these extensions are only found in MESS, not V9T9)
* "m.bin", ".mrom" or ".m": minimemory CPU ROM dump; similar to CPU ROM dump, but the address range >7000->7fff is set up as RAM (paging is not supporting); unfortunately, there is no way you can save the contents of minimemory to disk
* "b.bin", ".brom" or ".b": MBX CPU ROM dump; similar to CPU ROM dump, but the address range >6c00->6ffd is set up as RAM, and the paging scheme is different; unfortunately, I do not have any correct dump of a MBX cart to test emulation with.

== Configurations ==

Setting up the system configuration: A few dip switches enable or disable computer extensions. These switches are only read at reset. Therefore, if you edit them, you must reset the emulator (press F3 in partial keyboard emulation mode) for the changes to be taken into account.

== Keyboard ==

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by default. Whilst in full keyboard emulation mode, some key associated functionality may be disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the scroll_lock key.



===== History and Trivia =====

The TI-99/4a Home Computer was a TI-99/4 with improved keyboard, revised ROMs, and an additional graphics mode. It was officially introduced in June 1981, and was retired in late 1983.

TI-99/4a was quite successful in Europe and US (possibly hundreds of thousand units built). In 1983, though, competition on the home computer market was so harsh that TI had to cut down the price of TI-99/4a to less than $100, while suffering heavy losses. So, by the end of 1983, TI had abandoned TI-99/4a, its prototype successors, and withdrawn from the home computer market.



===== Links =====

* Sometimes -- http://sometimes.99er.net/
* 99ers -- http://www.99er.net/
* TI-99 Forever -- http://www.ti99.com/



===== Other Emulators =====

* PC99 -- http://pw2.netcom.com/~mjmw/index.html
* Classic99 -- http://www.harmlesslion.com/software/Classic99
* Win994A -- http://www.99er.net/win994a.shtml




Generated on Sun Jul 19 10:17:28 2009