About
History
QMC2 – M.A.M.E./M.E.S.S. Catalog / Launcher II is the successor of one of the first UNIX M.A.M.E. GUI front ends available on this planet called QMamecat (derived from MAMECAT, which was text-only). QMamecat was based upon Qt 2; its development was frozen in 2003.
By the beginning of March 2006, we started to build QMC2 from scratch as a Qt 4 project. Parts of the design and code were inspired by its predecessor, but it’s not just a remake. We tried to make the new design as flexible as possible to minimize dependencies from front end and CLI related MAME changes, which was a major deficiency of QMamecat. QMC2 now uses a template based emulator configuration scheme, which can easily be enhanced with additional command line options (defined in an XML template file).
Status
As a result of this flexible design and countless hours of work, QMC2 today is a multi-platform GUI front end for several M.A.M.E. and M.E.S.S. variants. It’s known to work on any modern Linux distribution, most UNIX derivates such as OpenSolaris or FreeBSD, on Mac OS X and Windows (XP, Vista and above).
On Linux/UNIX and Mac OS X we currently support SDLMAME and SDLMESS, on Windows you have the choice between the original variants of MAME and MESS as well as MAMEUIFX32 (which is supported by the MAME variant with a replacement template for MAMEUIFX32).
There are probably even more MAME / MESS variants which could be driven by QMC2, but these are the ones we officially support and for which we provide configuration templates.
Since QMC2 0.2.b9, the minimum required Qt version is 4.5. We strongly recommend to use Qt 4.5.2 or above!
Since QMC2 0.2.b13, there’s support for Qt 4.6 as well. However, there are still some minor issues left which are related to apparent bugs of Qt 4.6, and we don’t recommend to use it until they are resolved by the former Trolls. Also, some aspects of QMC2’s style sheets need to be updated to better work with Qt 4.6. The latest version we tried was Qt 4.6.2.
Features
As of version 0.2.b14 (not released yet!), QMC2’s major features include:
- Extremely fast drawing of game/machine images, optionally smoothly scaled (PNG images, buffered in a resizable LRU-cache)
- Support for game/machine icons (also PNG images), fast (pre-)caching mechanism
- Icons and all game/machine images can either be stored as individual files in respective directories or they can be combined and compressed in ZIP archives
- Easily extensible template-based emulator configuration scheme (defined through an external XML file)
- Cool editor for configuration of global and game/machine-specific emulator options, including a search function
- Support for all emulation-related extra information available through the emulator (displayed in a tree)
- Fast search function with automatic wildcard pattern matching
- Selectable sort criteria and order for game/machine list (description, name/ID, ROM state, year and manufacturer)
- Straightforward process management to control emulator processes
- Clear and full logging (separate front end and emulator logs)
- Cached ROM state verification, indicated as colored spheres in front of each game/machine description
- Verification of sample sets
- Game/machine image checks (icons, previews & flyers)
- Online display of current game/machine list and search result statistics
- Two game/machine list views: full detail and parent/clone hierarchy
- The GUI will always remain interactive even if heavy background processing is running
- Time-consuming background tasks can be stopped on demand at (nearly) any time
- Optional auto-save/restore of window layout and game/machine selection
- Multi-platform support (Linux/UNIX, Mac OS X and Windows)
- Fully multi-language capable – right now, translations exist for English (us), German (de), Polish (pl), French (fr) and Portuguese (pt)
- Game/machine favorites management and play-history
- Online HTML documentation and browser
- Designed to be used for multiple emulators: SDLMAME/SDLMESS on UNIX and Mac OS X, MAME/MAMEUIFX32/MESS on Windows — plus support for additional foreign emulators on all platforms
- Built-in support for GUI styles and Qt style sheets (.qss)
- Automatic caching of analysed game/machine data to speed up processing
- Import & export of emulator configuration files (i. e. mame.ini/mess.ini)
- All short cuts and GUI control keys can be remapped
- Removal of obsolete samples and image files (stored in directories or ZIP archives)
- Automatic caching of XML output from the emulator
- Built-in ROMAlyzer to deeply analyze a game’s/machine’s ROMs and CHDs
- Optional use of OpenGL features (currently only for image painting)
- Support for direct GUI control via analog and digital joysticks through SDL (Simple Directmedia Layer)
- Detailed game/machine information from MAME’s history.dat game information database and MESS’ sysinfo.dat machine information database
- Basically the same for mameinfo.dat as MAME’s emulator information database (there’s nothing like that for MESS)
- Support for MAME’s output notifications via a named pipe (see emulator control panel)
- Built in audio player based on the Phonon API
- ROM status export to clipboard or file as ASCII, CSV or HTML
- Integrated MESS device configuration
- All (SDL)MAME and (SDL)MESS variants of QMC2 supported on the respective target platform can launch each other (doesn’t work on Windows yet)
- Freely adjust the order and visibility of available game/machine details
- MAWS web lookup for all MAME variants, including automatic caching of all successfully loaded MAWS ROM set pages
- MAWS quick download: when visiting a game’s MAWS page, automatically download available image data usable by QMC2
- X11 only: optional/on-demand embedding of emulator windows
- Freely adjustable layout of the main widget’s major sub-widgets/sub-layouts
- MAME targets only: demo mode to run random games for a specific period of time (in a mode suitable for demo purposes)
Team
The following people have contributed in some way to the development of QMC2 and are active members of the current development team.
| QMC2 Team Members (in no particular order) | |
|---|---|
René Reucher
|
Jonas Reucher
|
Robert Hamberger
|
Carsten Engel carsten dot engel at maxi-dsl dot de
|
| Christopher Stone chris dot stone at gmail dot com http://tkmame.retrogames.com
|
Armin Schmidhuber armin_schmidhuber at web dot de http://www.a-zkaufhaus.de http://www.zxmamecd.eu
|
| Julian Sikorski belegdol at gmail dot com
|
Vincent Bousquet webmaster at arcadehits dot net http://www.arcadehits.net
|
| William Blake billb at ydl dot net http://www.ps3bodega.com
|
Samwise
|
Vasantha Crabb
|
Marcelo Bossoni mmbossoni at users dot sourceforge dot net
|
Contact and contributions
Project homepage:
http://qmc2.arcadehits.net/wordpress
Development site:
http://sourceforge.net/projects/qmc2
QMC2 development mailing list:
qmc2-devel at lists dot sourceforge dot net
(subscription required: https://lists.sourceforge.net/lists/listinfo/qmc2-devel)
Bug tracking system:
http://apps.sourceforge.net/mantisbt/qmc2/my_view_page.php
Donations
You can also support this project by contributing a donation. Any amount of money will be greatly appreciated and credited accordingly! But no matter if you do or not, due to the personal interest of its authors, the project will live on anyway
.
Hardware donations are also welcome. We could need any sort of state-of-the-art equipment, ranging from PCs to arcade cabinets. If you don’t want to donate money but this sort of goods instead, here’s your opportunity to support us. Please contact us, and consider to send us your local beer as we also need some software
!
