About Devices

Devices are emulated bits of hardware that can be added to a machine. This could be as simple as a cartridge interface for a console system or an internal sound card for a computer system. In MAME, devices are added to slots. Slots are the connection ports that machines had such as serial ports or motherboard slots. Most machines and software will automatically add any required devices to get it to run but you also have full control if you want it.

You can use the MAME user interface to add a device to a machine. In the UI, devices are added from the slot menu...


MAME's Slot Menu

MAME's Slot Menu

MAME's Slot Menu

MAME's Slot Menu


To add devices from the command line, it's a bit more complex. For example...

mame64 cpc464p -cart batman -exp dkspeech

This will launch MAME running the cartridge version of Batman on an Amstrad CPC464+ computer with a DK Tronics Speech Synthesizer.

You can also add extra devices to a machine and then add software to those devices. The most frequent need is additional floppy disk drives to run multi-disk software titles. For example, say you want a second floppy drive on a Commodore Amiga 1200. The Amiga 1200 driver only supports one drive by default so you need to add the extra drive. To do this, you would need to know the name of the device that the driver needs to run the extra drive. To find out what devices a machine supports you would use the following command line...

mame64 A1200 -listdevices

This will generate a list of all the devices the machine can use. To be honest, it's not very clear and an easier way is to run the machine in MAME and open the Slots menu. This is accessed by pressing the Tab key and selecting "Slot Devices". If you are running a computer machine and the menu won't open, you may need to unlock the keyboard with the Scroll-Lock key first. Here's what you'll see...


A1200 Slot Menu

A1200 Slot Menu

A1200 Slot Menu

A1200 Slot Menu

Looking at the devices on the slot menu, fdc:0 is the first floppy disk controller slot and 35dd is a 3.5 inch, double density floppy disk that attaches to the controller. You will need a bit of computer knowledge to understand some of the devices in the list and each list will be different for each machine. To add the second drive from here you would change the fdc:1 option to 35dd and do a soft reset.

To add the floppy disk device via the command line, you would use the following command...

mame64 A1200 -flop1 wb.adf -fdc:1 35dd -flop2 wb2.adf

Breaking the command down: A1200 is the machine, -flop1 is the default floppy drive device, wb.adf is the first disk image, -fdc:1 is the option to add a new floppy disk device. 35dd is the type of floppy drive to add, -flop2 is the new floppy disk drive and wb2.adf is the second disk image

There is a bit more information on devices on the Running mame page