- Details
- Category: Information
MAME has undergone some rare, but important changes in usage that users should be aware of. In particular, when many releases are skipped, things may suddenly appear broken, but there may have been a change a while back.
These changes may require you to modify your existing MAME setup to achieve the same behaviour as before the release.
- Details
- Category: Information
This version log of MAME specifically lists all TI-related changes in the code. Have a look here to see whether the latest release adds interesting features for you.
- Details
- Category: Information
From time to time, I run some benchmarks on various machines for MAME, to be able to give some advice on minimum hardware requirements.
To run MAME, and in particular the TI emulations, your host (PC, Laptop) must offer a minimum performance. You might wonder why a PC with gigahertz CPU may run into trouble when emulating an 80ies computer with 3 Megahertz clock, but the point is that MAME emulates the electrical circuits at a fairly precise level, and while in your real system, lots of things may happen in parallel, this is not the case in emulation.
Here are some tests that show you what you can expect. The percentages show how well the emulator managed to keep pace with the real system; they indicate the number of emulated seconds in relation to the real time seconds. Only when you have a 100% result, the emulation runs at the precise speed; otherwise the running time is stretched. One may also say that the numbers say how much work it has managed to do when the real system did 100%.
PC platform
The following table comprises PC platforms like laptops or desktops. As shown, the TI-99 emulations in MAME run satisfactorily on platforms after 2010.
Raw bench performance
In this table, performance data has been recorded from bare benchmark runs without graphic output. In that case, the emulation is run without time synchronization, at maximum speed. If you get a 200% value this means that the emulation runs at twice the speed as the real system.
It is not sufficient to get a 100% benchmark value in this test. This is because the graphic output means a considerable load for the emulation; see the table in the next section. Hence, these values are independent of the graphic performance of your system.
MAME release | Speed GHz | TI-99/4A | TI-99/4A + EVPC | SGCPU aka TI-99/4P | Geneve | TI-99/8 + HX5102 | TI-99/2 + HX5102 | |
PC Core i7-6700 | 0.218 | 4.0 | 731% |
706% | 827% | 483% | 243% | 568% |
Emulated disk operations also cause a high performance impact. For example, if we let the Geneve boot during the test, the performance drops from 483% to 416%.
Graphic performance
In this table, performance data has been recorded from test runs with graphic output. This is most interesting to see whether you can expect a good emulation experience without lagging, chopped sounds, or unrealistic slow execution. However, the value definitely depends on the performance of your graphic card (2D performance). It may be better or worse for your specific card.
MAME release | Speed GHz | TI-99/4A | TI-99/4A + EVPC | SGCPU aka TI-99/4P | Geneve | TI-99/8 + HX5102 | TI-99/2 + HX5102 | |
Atom N270 | 0.230 | 1.6 | 14% | 16% | n.t. | 13% | n.t. | n.t. |
Laptop Celeron | 0.208 | 2.0 | 19% | 14% | 15% | 14% | 10% | 16% |
Thinkpad T60 Core2 Duo | 0.208 | 1.8 | 92% | 89% | 91% | 85% | 45% | 91% |
Laptop Core i5-3320M | 0.208 | 2.6 | 100% | 100% | 100% | 100% | 100% | 100% |
PC Core i7-6700K | 0.208 | 4.0 | 100% | 100% | 100% | 100% | 100% | 100% |
PC Core i7-7700 | 0.208 | 3.6 | 100% | 100% | 100% | 100% | 100% | 100% |
Small devices
I also ran some tests on Raspberry Pi. Before Pi 4, the Raspberry was plainly unusable for the TI-99 emulation in MAME. You may have probably heard about MAME emulations running decently on the Raspberry, but the performance of MAME largely depends on the emulated system. The TI-99 family is emulated in high precision, which requires a lot of performance.
The entries suffixed with "32bit" and "64bit" refer to the Raspberry Pi OS installation (32 bit or 64 bit) as of July 2023. The entries without width specification refer to the Raspbian OS (32 bit). Note that from MAME 0.254 on, Raspberry Pi OS is mandatory as underlying operating system.
Raw bench performance
As above, the plain emulation performance without graphic output is considered. These values are independent of the graphic performance of the device.
MAME release | Speed GHz | TI-99/4A | TI-99/4A + EVPC | SGCPU aka TI-99/4P | Geneve | TI-99/8 + HX5102 | TI-99/2 + HX5102 | |
RPi 4 | 0.223 | 1.5 | 141% | 131% | 154% | 74% | 45% | 85% |
RPi 4 32bit | 0.256 | 1.5 | 138% | 122% | 142% | 72% | 47% | 73% |
RPi 4 64bit | 0.256 | 1.5 | 164% | 149% | 182% | 84% | 54% | 105% |
Graphic performance
This table shows the performance with graphic output.
MAME release | Speed GHz | TI-99/4A | TI-99/4A + EVPC | SGCPU aka TI-99/4P | Geneve | TI-99/8 + HX5102 | TI-99/2 + HX5102 | |
RPi 3B+ | 0.208 | 1.4 | 6% | 4% | 4% | 4% | 4% | 5% |
RPi 4 | 0.223 | 1.5 | 100% | 97% | 99% | 64% | 44% | 79% |
RPi 4 32bit | 0.256 | 1.5 | 100% | 94% | 95% | 63% | 46% | 70% |
RPi 4 64bit | 0.256 | 1.5 | 100% | 100% | 100% | 78% | 50% | 98% |
I believe that the Raspberry Pi3 B+ was not running by optimum conditions, and there may be some tricks to get a better performance. To my surprise, the Raspberry Pi 4 managed to run the TI-99/4A emulation in full speed. This mean a tremendous increase in performance and makes it possible to run the MAME emulation on that device for the first time.
The graphic output has a much smaller footprint on the Pi 4 than expected. It seems as if the graphic performance is not a bottleneck for the Raspberry anymore.
Note however, as mentioned above, that the performance highly depends on further emulation operations with high impact, like disk operations. This means that if you do a lot of disk operations, the TI-99/4A performance on the Raspberry Pi 4 drops from 100% to 92%. This may still be sufficient for a good emulation experience, though.
Even if a Raspberry seemingly performs well for all your typical PC applications, the MAME emulation is a big challenge for it. You should keep in mind that a typical high-end PC pulls about 200 W electrical power, while a Raspberry does not exceed 15 W. The higher power consumption comes from the high performance of CPU and graphics card. Hence, some basic physical considerations tell us that a Raspberry will not reach the performance of a fully equipped desktop PC.
- Details
- Category: Information
In MAME (release 0.247 and higher), the following TI hardware is emulated:
Computers
- TI-99/2
- TI-99/4
- TI-99/4A
- TI-99/4A QI
- TI-99/8
- SGCPU (TI-99/4A in the box)
- Geneve 9640
- Geneve 9640 Mod (aka Genmod)
Peripheral devices
- Peripheral Expansion Box
- 32K Memory Expansion Card
- Bus mouse (EVPC, Geneve)
- BwG Floppy Disk Controller (SNUG)
- Cartridge Expander
- Cassette recorder
- Corcomp Disk Controller (orig/revised)
- Enhanced Video Processor Card 1 (SNUG)
- Floppy Disk Drives
- FORTi Sound card
- GRAM Kracker
- Handheld controllers (Joysticks)
- Hard Disk Drives (generic/Seagate)
- Hexbus peripheral system
- High Speed GPL Card (SNUG)
- Horizon Ramdisk (HRD4000)
- HX5102 Hexbus floppy drive
- IDE adapter card (Nouspikel)
- Mechatronics Mouse
- Memex Card (Myarc)
- Memory Expansion Card (Myarc)
- Myarc Disk Drive Controller Card (DDCC1)
- Myarc Hard and Floppy Disk Controller
- P-Code Card
- PFM512(A) (Geneve)
- PGRAM(+) Card
- Remote Handset Controllers (TI-99/4)
- RS232/PIO card (TI)
- SID Master 99 sound card
- Speech Synthesizer plus PEB adapter
- SuperAMS Memory Card (Asgard, SW99ers)
- TI Floppy Disk Controller Card
- TIPI Card
- WHTSCSI adapter
Media
- Solid State Software cartridges
- Cassettes (wav files)
- Floppy disks images
- Hard disk images
- Details
- Category: Information
Before you start with MAME, and in particular with the TI emulations, there are some points of interest you should know.