mame/docs/source/usingmame/frontends.rst
Vas Crabb d64ea5331b
-frontend: Refactored menu event handling and fixed a number of issues. (#8777)
* Moved common code for drawing about box, info viewer, and other text box menus to a base class; removed the last of the info viewer logic and the multi-line item hack from the base menu class.
* Added previous/next group navigation for general inputs and plugin input selection menus.
* Moved message catalog logic to lib/util, allowing osd and emu to use localised messages.
* Made the base menu class use the UI manager’s feature for holding session state rather than a static map and mutex.
* Improved menu event handling model, and fixed many issues, particularly with menus behaving badly when hidden/shown.
* Added better support for menus that don’t participate in the usual menu stack, like the menuless sliders and the save/load state menus.
* Made a number of menus refresh state when being shown after being hidden (fixes MT08121 among other issues).
* Fixed indication of mounted slot option in the slot option details menu.
* Improved appearance of background menus when emulation isn't running - draw all menus in the stack, and darken the background menus to make the edges of the active menu clearer.
* Fixed locale issues in -listxml.

-debugger: Made GUI debuggers more uniform.
* Added new memory view features to Win32 debugger.
* Fixed spelling of hexadecimal in Cocoa debugger and added decimal address option.
* Fixed duplicate keyboard shortcut in Cocoa debugger (Shift-Cmd-D was both new device window and 64-bit float format).
* Made keyboard shortcuts slightly more consistent across debuggers.

-plugins: Moved input selection menu and sequence polling code to a common library.  Fixed the issue that prevented keyboard inputs being mapped with -steadykey on.

-docs: Started adding some documentation for MAME's internal UI, and updated the list of example front-ends.

-Regenerated message catalog sources.  For translators, the new strings are mostly:
* The names of the inputs provided by the OS-dependent layer for things like fullscreen and video features. These show up in the user interface inputs menu.
* The names for automatically generated views. These show up in the video options menu - test with a system with a lot of screens to see more variants.
* The input macro plugin UI.
* A few format strings for analog input assignments.
* A few strings for the about box header.
2021-10-31 12:31:16 +11:00

46 lines
2.4 KiB
ReStructuredText
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

.. _frontends:
Front-ends
==========
A number of third party tools for MAME to make system and software selection
simpler are available. These tools are called “front-ends”, and there are far
too many to list exhaustively here. Some are free, some are commercial
caveat emptor. Some older front-ends predate the merging of MAME and MESS and
do not support the additional console, hand-held, and computer functionality
inherited from MESS.
This following list is not an endorsement of any of these front-ends by the MAME
team. It simply shows a number of commonly used free front-ends to provide a
starting point.
`QMC2 <http://qmc2.batcom-it.net/>`__ (multiple platforms)
Provides a graphical interface for configuring many of MAMEs settings and
features. Also includes ROM management and media auditing features.
Written in C++ using the Qt toolkit, the
`source code is on SourceForge <https://sourceforge.net/projects/qmc2/>`__.
`Negatron <http://negatron.net/>`__ (multiple platforms)
Negatron emphasises features for configuring emulated computers and
consoles. Written in Java, the
`source code is on GitHub <https://github.com/xinyingho/Negatron>`__.
`BletchMAME <https://www.bletchmame.org/>`__ (multiple platforms)
BletchMAME takes advantage of MAMEs Lua scripting interface to integrate
tightly and effectively replace MAMEs internal user interface. It has
many useful features for home computer emulation. Written in C++, the
`source code is on GitHub <https://github.com/npwoods/bletchmame>`__.
`IV/Play <http://www.mameui.info/>`__ (Microsoft Windows)
A simple Windows program for launching systems in MAME. Written in C#, the
`souce code is on GitHub <https://github.com/Mataniko/IV-Play>`__.
`EmuLoader <http://emuloader.mameworld.info/>`__ (Microsoft Windows)
EmuLoader provides a Windows interface for launching systems in multiple
emulators, including MAME, Supermodel and DEMUL. Written in Delphi Pascal,
the source code is available
`on the download page <https://emuloader.mameworld.info/downloads.htm>`__.
`Retrofire <https://e2j.net/downloads/>`__ (Japanese, Microsoft Windows)
Provides a Japanese-language graphical interface for launching systems or
software in MAME.
The MAME team will not provide support for issues with front-ends. For support,
we suggest contacting the front-end author or asking on one of the popular
MAME-friendly forums on the Internet.