While the simulation of hardware circuits is in no way problematic with respect to copyright (since we produce a new system by observing the behavior of the original one), the distribution of memory contents is generally subject to copyright, and unlicenced distribution is considered an offense by most jurisdictions.

Some countries know exemptions in the case of legacy software that is not runnable without the hardware, when the hardware is not available anymore. Other countries do not have corresponding exemptions. So you have to be aware of the following:

The emulator does not ship with any ROMs. There are ROMs available on some servers; use your favorite search engine. Keep in mind that most ROMs are distributed on the assumption that you have the original ROMs in hardware that you purchased. Downloading the ROMs of hardware that you do not have may be a copyright violation. In doubt, contact the copyright holders.

Consequently, I will not provide links for downloading these files. Find out by yourself how to get them. The safest way (from a legal standpoint) is to dump the contents from the real equipment if you own such a system.

At least for the TI-99/8 we have a written consent from TI that the ROM contents may be freely distributed. For TI-99/8 ROMs have a look at Planet99.net (login required).

Rumours are that you should also try the FTP site of WHTech.

The ROM dumps used for the TI emulations can be identified by this list. The required files must be present when starting the emulation. If an optional file is missing, the emulation will run, provided that the affected component that needs the ROM is not accessed. You will get a warning message stating that ROMs are missing and that the emulation will probably not run correctly.

Systems may be parents of others. In that case, the child systems borrow the ROM files from the parents if they do not have them in their own ZIP file. This means that if you have the ti99_4a.zip file, you can always launch the European version ti99_4ae since all files are equal, and the ti99_4a is the parent of ti99_4ae.

  • ti99_4 is the parent of ti99_4e (european version)
  • ti99_4a is the parent of ti99_4ae and ti99_4ev
  • ti99_8 is the parent of ti99_8e

MAME is tolerant about the file names inside the ZIP files; the only important key is the hash code. ROM contents are compared by their hash code to make sure that the contents are authentic. Files may be renamed within the ZIP files.

The following table refers to MAME versions 0.212 and higher. The ROM dumps are distributed over a set of ZIP files. Each ZIP file corresponds to a single system or peripheral extension.

Main systems

These are the ROMs for the consoles, the Geneve, and the SGCPU.

TI-99/4A (ti99_4a)

Also comprises the European version (ti99_4ae)

File name CRC SHA-1 Description
994a_grom0.u500 2445a5e8 ea15d8b0ac52112dc0d5f4ab9a79ac8ca1cc1bbc GROM chip 0000-17ff
994a_grom1.u501 b8f367ab 3ecead4b83ec525084c70b6123d4053f8a80e1f7 GROM chip 2000-37ff
994a_grom2.u502 e0bb5341 e255f0d65d69b927cecb8fcfac7a4c17d585ea96 GROM chip 4000-57ff
994a_rom_hb.u610 ee859c5f a45245707c3dccea902b718554a882d214a82504 ROM chip 0000-1fff high bytes
994a_rom_lb.u611 37859301 f4e774fd5913b387a763f1b8de5524c54b255434 ROM chip 0000-1fff low bytes

 

TI-99/4A modified for use with EVPC (ti99_4ev)

Inherits from ti99_4a

File name CRC SHA-1 Description
994ev_grom1.u501 6885326d 1a98de5ee886dce705de5cce11034a7be31aceac Modified GROM chip 2000-37ff

 

TI-99/4QI (ti99_4qi)

Inherits from ti99_4a

File name CRC SHA-1 Description
994qi_grom0.u29 8b07772d 95dcf5b7350ade65297eadd2d680c27561cc975c Modified GROM chip 0000-17ff

 

Geneve 9640 (geneve)

File name CRC SHA-1 Description
genbt098.bin b2e20df9 2d5d09177afe97d63ceb3ad59b498b1c9e2153f7 Boot EPROM v0.98 ("Swan")
genbt100.bin 8001e386 b44618b54dabac3882543e18555d482b299e0109 Boot EPROM v1.00

 

Geneve 9640 modified (genmod)

Reuses the boot EPROM from the Geneve 9640 (v1.00)

File name CRC SHA-1 Description
gnmbt100.bin 8001e386 b44618b54dabac3882543e18555d482b299e0109 Boot EPROM v1.00

 

SNUG TI-99/4P aka SGCPU (ti99_4p)

Also requires a prepared HSGPL card and the EVPC.

File name CRC SHA-1 Description
sgcpu_hb.bin aa100730 35e585b2dcd3f2a0005bebb15ede6c5b8c787366 ROM 0000-7FFF high bytes
sgcpu_lb.bin 2a5dc818 dec141fe2eea0b930859cbe1ebd715ac29fa8ecb ROM 0000-7FFF low bytes

 

TI-99/8 (ti99_8)

May use the HX5102 as storage. TI-99/4A expansion cards are not guaranteed to work.

ROM file CRC SHA-1 Description
cd2325a.vsm 1f58b571 0ef4f178716b575a1c0c970c56af8a8d97561ffe Speech ROM chip 1
cd2326a.vsm 65d00401 a367242c2c96cebf0e2bf21862f3f6734b2b3020 Speech ROM chip 2
g0_f830.bin 1026db60 7327095bf4f390476e69d9fd8424e98ea1f2325a GROM 0 at address F830 (System)
g1_f830.bin 93a43d65 19be8a07d674bc7554c2bc9c7a5725d81e888e6e GROM 1 at address F830
g2_f830.bin 06f2b901 f65e0fcb2c63e230b4a9563c72f91259b94ce955 GROM 2 at address F830
g0_f840.bin 44501071 4b5ef7f1aa43a87e7ae4f02090944be5c39b1f26 GROM 0 at address F840 (Text-to-Speech)
g1_f840.bin 5a271d9e bb95befa2ffba2cc17ac437386e069e8ff621248 GROM 1 at address F840
g2_f840.bin d52502df 17063e33ee8709d0df8030f38bb92c4322d55e1e GROM 2 at address F840
g3_f840.bin 86c12396 119b6df9211b5399245e017721fc51b88b60879f GROM 3 at address F840
g4_f840.bin f17a2ef8 dcb044f71d7f8a165b41f39e35a368d8f2d63b67 GROM 4 at address F840
g5_f840.bin 7dc41301 dff714da68de352db93fba309db8e5a8ae7cab1a GROM 5 at address F840
g6_f840.bin 7e310a90 e927d8b3f8b32aa4fb9f7d080d5262c566a77fc7 GROM 6 at address F840
g7_f840.bin 3a9d20df 1e6f9f8ec7df4b997a7579be742d0a7d54bc8763 GROM 7 at address F840
g0_f850.bin 2d948672 cf15912d6dae5a450e0cfd796aa36ea5e521dc56 GROM 0 at address F850 (P-Code library 1)
g1_f850.bin 7d64a842 d5884bb2af21c8027311478ee506beac6f46203d GROM 1 at address F850
g2_f850.bin e5ed8900 03826882ce10fb5a6b3a9ccc85d3d1fe51979d0b GROM 2 at address F850
g3_f850.bin 87aaf19e fdbe163773b8a30fa6b9508e679be6fa4f99bf7a GROM 3 at address F850
g4_f850.bin d3e789a5 5ab06aa75ca694b1035ce5ac0bebacc928721388 GROM 4 at address F850
g5_f850.bin 49fd90bd 44b2cef29c2d5304a0dcfedbdcdf9f21f2201bf9 GROM 5 at address F850
g6_f850.bin 31bac4ab e29049f0597d5de0bfd5c9c7bfea902abe858010 GROM 6 at address F850
g7_f850.bin 71534098 75e87123efde885e27dd749e07cb189eb2cc45a8 GROM 7 at address F850
g0_f860.bin 0ceef210 b89957fbff094b758746391a69dea6907c66b950 GROM 0 at address F860 (P-Code library 2)
g1_f860.bin fc87de25 4695b7f979f59a01ec16c55e4587c3379482b658 GROM 1 at address F860
g2_f860.bin e833e350 6ffe501981a1112be1af596a489d96e287fc6be5 GROM 2 at address F860
u25a_pas.bin d7ed6dd6 32212ce6426ceccbff73d342d4a3ef699c0ae1e4 ROM (16K) containing Pascal support
u25_rom1.bin b574461a 42c6aed44802cfabdd26b565d6e5ddfcd689f11e ROM containing ROM1 (16K), Text-to-speech DSR (8K), Hexbus DSR (8K)
u4_rom0.bin 901eb8d6 13190c5e834baa9c0a70066b566cfcef438ed88a ROM0 (only used in 99/4A mode)

 

TI-99/4 (ti99_4)

Less successful predecessor of the TI-99/4A.

File name CRC SHA-1 Description
994_grom0.u500 aa757e13 4658d3d01c0131c283a30cebd12e76754d41a84a GROM chip 0000-17ff
994_grom1.u501 c863e460 6d849a76011273a069a98ed0c3feaf13831c942f GROM chip 2000-37ff
994_grom2.u502 b0eda548 725e3f26f8c819f356e4bb405b4102b5ae1e0e70 GROM chip 4000-57ff
994_rom_hb.u610 6fcf4b15 d085213c64701d429ae535f9a4ac8a50427a8343 ROM chip 0000-1fff high bytes
994_rom_lb.u611 491c21d1 7741ae9294c51a44a78033d1b77c01568a6bbfb9 ROM chip 0000-1fff low bytes
 

TI-99/2 24K (ti99_224)

Uses 24K ROM; earlier prototype. Does not support Hexbus.

File name CRC SHA-1 Description
rom0000.bin c57436f1 71d9048fed0317cfcc4cd966dcbc3bc163080cf9 ROM 0000-1FFF
rom2000.bin be22c6c4 931931d61732bacdab1da227c01b8045ca860f0b ROM 2000-3FFF
rom4000.bin 926ca20e 91624a16aa2c62c7ebc23128308709efdebddca3 ROM 4000-5FFF

 

TI-99/2 32K (ti99_232)

Uses 32K ROM; later prototype. May use HX5102 as storage.

File name CRC SHA-1 Description
rom0000.u2a 01b94f06 ef2e0c5f0492d7d024ebfe3fad29c2b57ea849e1 ROM 0000-1FFF
rom2000.u12 0a32f80a 32ed98481998be295e637eaa2117337cfa4a7984 ROM 2000-3FFF
rom4000a.u3 10c11fab d43e0952538e66e2cedc307b71b65cb388cbe8e3 ROM 4000-5FFF Bank 1
rom4000b.u2b 34dd52ed e01892b1b110d7d592a7e7f1f39f9f46ea0818db ROM 4000-5FFF Bank 2

 

Peripheral Expansion Cards

These are cards that are plugged into the Peripheral Expansion Box (PEB).

SNUG BwG disk controller (ti99_bwg)

File name CRC SHA-1 Description
bwg_dsr.u15 06f1ec89 6ad77033ed268f986d9a5439e65f7d391c4b7651 DSR ROM (4 banks)

 

SNUG Enhanced Video Processor Card (ti99_evpc)

Runs on ti99_4ev, sgcpu

File name CRC SHA-1 Description
evpc_dsr.u21 a062b75d 6e8060f86e3bb9c36f244d88825e3fe237bfe9a9 Card DSR

 

Myarc Hard and Floppy Disk Controller (ti99_hfdc)

Standard floppy and hard disk controller. Runs with TI-99/4A and Geneve. Supports 2 sides, single (9) and double (18) density, and 40 or 80 tracks.

File name CRC SHA-1 Description
hfdc_dsr.u34 66fbe0ed 11df2ecef51de6f543e4eaf8b2529d3e65d0bd59 Card DSR

 

Myarc Memory Expansion Card MEXP-1 (ti99_myarcmem)

Configured to run with Myarc Extended Basic II.

File name CRC SHA-1 Description
myarc512k_xb2_dsr.bin 41fbb96d 4dc7fdfa46842957bcbb0cf2c37764e4bb6d877a Card DSR

 

P-Code Card (ti99_pcode)

Card has a master enable/disable switch (check DIP settings).

File name CRC SHA-1 Description
pcode_grom0.u11 505e5df0 66911fba7599c64981180f8a673581f4b05941ff Card GROM 0000-17FF
pcode_grom1.u13 63b546d5 3d830c8bdac102275ec0702eff1ebf4b67484f52 Card GROM 2000-37FF
pcode_grom2.u14 28821e5c c147bd5d8d624caa690284bfc253c6699e3518d4 Card GROM 4000-57FF
pcode_grom3.u16 1db4a4a5 f7a0ba8050f00ccc1ee328c66df5cc4269748ced Card GROM 6000-77FF
pcode_grom4.u19 9618eb9b 1f223f3febcb93e648cefe49c83bfeac802be9d6 Card GROM 8000-97FF
pcode_grom5.u20 c47efe6d f5b56c7de1cb1e7345a0716d35f00a3a9722febe Card GROM A000-B7FF
pcode_grom6.u21 06a34c93 56172c56afa3868f2098328f81881022230d949d Card GROM C000-D7FF
pcode_grom7.u22 a09ca8d9 2ea33d875f9c8e7c00df023a0d8d4461d50f0a87 Card GROM E000-F7FF
pcode_rom0.u1 3881d5b0 a60e0468bb15ff72f97cf6e80979ca8c11ed0426 Card ROM 4000-4FFF
pcode_rom1.u18 46a06b8b 24e2608179921aef312cdee6f455e3f46deb30d0 Card ROM 5000-5FFF 2 Banks

 

TI Floppy Disk Controller Card (ti99_tifdc)

Supports 2 sides, FM recording (single density), and 40 tracks.

File name CRC SHA-1 Description
fdc_dsr.u26 693c6b6e 0c24fb4944843ad3f08b0b139244a6bb05e1c6c2 Card DSR 4000-4FFF
fdc_dsr.u27 2c921087 3646c3bcd2dce16b918ee01ea65312f36ae811d2 Card DSR 5000-5FFF

 

TI RS232/PIO Card (ti99_rs232)

Provides two serial interfaces and one parallel interface. May be used twice in the system to get two more serial interfaces and one more parallel interface. Check DIP settings for CRU base.

File name CRC SHA-1 Description
rs232pio_dsr.u1 eab382fb ee609a18a21f1a3ddab334e8798d5f2a0fcefa91 Card DSR 4000-4FFF

 

Other devices

GRAMKracker (ti99_gkracker)

To be used in the GROM port (cartridge slot).

File name CRC SHA-1 Description
gkracker.bin 86eaaf9f a3bd5257c63e190800921b52dbe3ffa91ad91113 GK loader

 

Speech Synthesizer (ti99_speech)

Also used as a peripheral card (using an adaptor card)

File name CRC SHA-1 Description
cd2325a.u2a 1f58b571 0ef4f178716b575a1c0c970c56af8a8d97561ffe Speech ROM 128 Kbit
cd2326a.u2b 65d00401 a367242c2c96cebf0e2bf21862f3f6734b2b3020 Speech ROM 128 Kbit

 

HX5102 Hexbus Floppy Drive (ti_hx5102)

Used with TI-99/8 and TI-99/2 32K. Supports 2 sides, single (9) or double density (16 sectors) and 40 or 77 tracks.

File name CRC SHA-1 Description
hx5102_rom1.u25 40621a77 1532f6f23e0104326c21909cb0ec46936242a12a Drive firmware 8K
hx5102_rom2.u29 57c2603b 2f1d01378943436f0abd5b20710f6c8c175fde13 Drive firmware 8K