MESS

From Ninerpedia

Jump to: navigation, search
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.

The emulator does not ship with any ROMs. There are ROMs available on some servers; use your favorite search engine. But note 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.

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

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.

For an overview related to MESS versions, see the version history. It informs you about bug fixes, open issues, and regressions.

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.

Obsolete

Personal tools