MESS
From Ninerpedia
MESS (Multiple Emulator Super System) is a multi-system emulator which emulates more than 400 computer systems, many of them from the good old days of the Home Computers. Among them are also a number of TI platforms:- TI-99/4, 50 Hz and 60 Hz
- TI-99/4A, 50 Hz and 60 Hz
- TI-99/8
- Geneve 9640
Raphael Nabet was the original contributor to this emulator who must have spent a horrendous amount of time to create this emulation. We find not only the well-known TI-99/4A console, but also the Geneve 9640 and even a computer which never made it into the public, the TI-99/8. But as the hardware description and the system ROMs in source code were made available, we can now enjoy this computer on the MESS emulator.
A number of peripherals are also emulated, ranging from various disk controllers (up to HFDC), to serial interfaces, USB interface, IDE interface, HSGPL, and also SGCPU.
I would be happy to see more people from the TI community helping to improve MESS.
Contents |
MESS manuals
MESS TI FAQ
We are currently preparing a Frequently Asked Questions section especially related to the TI/Geneve emulation in MESS.
Installing and Configuring MESS
TODO
Using MESS (in general)
TODO
Working with the TI emulation
TODO
Revised cartridge system
The cartridge system of MESS version 0.131 and later
Programmer's Guide to MESS
TODO
Availability of the emulator
The emulator is currently available as version 0.138 for Windows systems and also for Mac and Unix systems (as SDLMESS).
The version 0.138 is highly recommended for use with the TI emulation.
You can download and work on the MESS source codes, but MESS is not an open source project in the GPL sense. If you want to contribute, download the sources, and get in contact with the maintainers. A good location for that is the MESS message board.
For TI-99/8 ROMs have a look at Planet99.net (login required).
Tips
- Building MESS from source
- Change MESS menu mode key from Scroll Lock to another key
Using your TI/Geneve hard drive in MESS
If you are using a SCSI hard drive on your ASCSI or WHT controller, you can easily hook that drive as is to a SCSI controller of your PC. Using Linux, you can get a sector dump from the /dev/sda device (or similar) by using the dd command. Note that you do not have partitions, so you cannot access the drive by a file system driver. Within Windows, you need a tool to directly access the contents of the drive; Explorer won't do.
If you want to use a SCSI hard drive image in MESS, you cannot simply use your sector dump that you got from your original drive; you have to convert it. We have some instructions how to achieve this.
Formatting disks
MESS requires floppy image files, that is, the contents of the whole disk must be stored in a single file. There are two supported formats, the Sector Dump Format and the Track Dump Format. There are two ways to get a blank new image file:
- Use imgtool to create a SDF-formatted blank disk.
- Create an empty file and use the emulation to format the file, just as if you formatted a blank disk.
For the second option you just need a file of the appropriate size. Using Linux you can easily create such an empty file:
dd if=/dev/zero of=my_image.dsk count=<number of bytes> bs=1
For sector dumps, an SSSD disk has 92160 bytes; a DSDD disk has 368640. For track dump images, an SSSD disk has 130120 bytes, while the DSDD disk has 549760 bytes. Once you chose the size you have to use the matching format.
Note that in versions 0.137 and earlier, the HFDC controller cannot format a disk (because the emulation of the SMC HFC9234 chip lacks formatting support), causing the emulator to crash.
Working with MiniMemory
(MESS < 0.131) When you want to use the Mini Memory NVRAM (needs MESS 0.126+), you have to mount a pseudo module besides the Mini Memory GROM and ROM. This pseudo module must have a name ending in *m.bin, like memorym.bin. When you save a program using SAVE MINIMEM, a file is created in the nvram/ti99_4x subdiretory which corresponds to this pseudo file. That is, you can choose different NVRAM buffer files by selecting another pseudo RAM file. Note that the pseudo file itself is loaded but not transferred to memory.
Tools
I have prepared a bash script to automatically create layout files for the new cartridge format. You can find the script here: createrpk.sh
MESS version features and issues
MESS is a powerful multi-system emulator, but as with all such complex systems, they collect more and more issues over the years. In this case it's even worse: The original code maintainer who was responsible for the TI-99 portions of the emulator seems to have backed out of the project some years ago.
As the development of the emulator continued, changes in the emulator core broke several features of the TI emulation, making it virtually unusable. The last version known to be running adequately was 0.97.
In the last weeks I managed to clear the worst issues, so we slowly get back to a usable emulator. Of course, a lot of issues still remain. Although there is a Bugzilla for MESS, I'll also put the problems on these pages as a quick reference.
Below I described some of the issues in more detail. Also have a look at the "non-issues". Not every surprising reaction is actually a bug.
The issues discussed in those pages relate to the version 0.121.
- No problem: Issues that are actually no emulator bugs
- Fixed problems: Problems that have been resolved.
- Open issues: Problems that I know of, but which are still unsolved
- Regressions: Problems that appear again after being solved
- Wish list: Feature requests

