
What are CSMAME, CSMESS, and MAMEHub?
CSMAME and CSMESS are modifications of MAME and MESS that allow for
netplay by synchronizing player inputs and system memory across the
Internet. The modifications are made to the core MAME/MESS code, so any
game playable by MAME/MESS can be played online using CSMAME/CSMESS
without requiring game-specific hacks.
MAMEHub is a frontend that helps users to arrange and play games on
CSMAME and CSMESS. This allows users to play older generation arcade,
home console and computer games over the Internet.
Unlike similar systems released before (such as Kaillera or GGPO), MAMEHub
is 100% open source, cross platform and has a much wider pool of games (in
particular the 80's decade, due to it's MESS support). Currently an estimated
1500 system drivers (a potential 40,000 games) are included in MAMEHub
(see compatibility lists for game driver status).
MAMEHub is a hobbyist project, therefore is not intended for commercial use.
The MAME/MESS licences fully apply. Users must own the original game(s)
before they can legally play it/them online.
Some games could be considered exempt being over 20 years old, however
the legality of this varies from country to country. Examples that full into this
category include old game console titles from the late 70's / early 80's
(Intellivision, Atari 2600). old home computer games (ZX Spectrum, C64, Atari
ST) as well as arcade ROMs available from the MAMEdev web site (which have
been made free for distribution from the original game authors).
Also, if a user has purchased licensed arcade ROMs from either Star ROMs or
from a cabinet purchase, they should also be able to play those too on
MAMEHub.
No games / ROMs are located on the server, they are client side only.
Project History
In September 2010, CSMAME (otherwise known as Client Server MAME) was
released.
This is a network modified port of MAME which adds the ability to play a 20
year history of arcade games over the Internet with other players across the
world (these are real original coin operated arcade games from the late 70's
to late 90's).
For gaming over the Internet, one user acts as the server, whilst other user
acts as the client (these settings are set via command line arguments). The
network communication is achieved through the use of RakNet libraries and
utilizing MAME 's in-built save state architecture, and is coded in the form of
a netcode wrapper.
A few months later, CSMESS (Client Server MESS) was released. So like MAME,
MESS was also enhanced for Internet gaming in exactly the same way with
this emulator port. MESS is the sister project to MAME (sharing the same code
structure) and emulates old game consoles and home computers.
The developer of CSMAME and CSMESS, produced a follow up separate
application called MAMEHub, which allows CSMAME and CSMESS emulators to
be joined together into a single centralised server based system.
The main benefits of MAMEHub include a GUI (users no longer have to use
command line options) as well as providing an online chat service to help
arrange game sessions. MAMEHub also maintains a central list of running
games, where a user can either click on a running game to join or can decide to
start their own game (called hosting) for other users to join.
Users can also choose to observe a game only. This allows users to watch their
friends trying to beat a high score or observe game techniques to improve
gaming skills.
After MAMEHub was released, CSMAME, CSMESS and MAMEHub then became
known collectively as MAMEHub.
About


