• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.github/workflows/H27-Oct-2020-147133

3rdparty/H27-Oct-2020-4,942,2703,906,821

android-project/H27-Oct-2020-2,5651,868

artwork/H03-May-2022-152127

benchmarks/H27-Oct-2020-7357

bgfx/H27-Oct-2020-8,0987,449

ctrlr/H27-Oct-2020-989927

docs/H03-May-2022-24,21918,444

doxygen/H03-May-2022-2,7632,150

hash/H27-Oct-2020-2,321,7562,015,128

hlsl/H27-Oct-2020-2,6912,135

ini/H27-Oct-2020-637599

keymaps/H27-Oct-2020-438412

language/H27-Oct-2020-163,711126,447

plugins/H27-Oct-2020-25,92719,837

projects/H27-Oct-2020-86

regtests/H27-Oct-2020-9,2958,055

roms/H03-May-2022-

samples/H03-May-2022-12299

scripts/H03-May-2022-46,98835,678

src/H27-Oct-2020-10,248,7478,456,607

tests/H27-Oct-2020-1,165963

web/H27-Oct-2020-266208

.editorconfigH A D27-Oct-2020191 1411

.gitattributesH A D27-Oct-20202.1 KiB6050

.gitignoreH A D27-Oct-2020511 5149

.travis.ymlH A D27-Oct-2020945 4443

COPYINGH A D27-Oct-202011.1 KiB286207

README.mdH A D27-Oct-20205.6 KiB11676

dist.makH A D27-Oct-20203 KiB130112

makefileH A D03-May-202253.2 KiB1,9191,314

README.md

1
2# **MAME** #
3
4[![Join the chat at https://gitter.im/mamedev/mame](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/mamedev/mame?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
5
6Build status:
7
8| OS/Compiler   | Status        |
9| ------------- |:-------------:|
10| Linux/GCC and Clang | ![CI (Linux)](https://github.com/mamedev/mame/workflows/CI%20(Linux)/badge.svg) [![Build Status](https://travis-ci.org/mamedev/mame.svg?branch=master)](https://travis-ci.org/mamedev/mame) |
11| Windows/GCC and MSVC | ![CI (Windows)](https://github.com/mamedev/mame/workflows/CI%20(Windows)/badge.svg) |
12| macOS/Clang | ![CI (macOS)](https://github.com/mamedev/mame/workflows/CI%20(macOS)/badge.svg) |
13
14Static analysis status for entire build (except for third-party parts of project):
15
16[![Coverity Scan Status](https://scan.coverity.com/projects/5727/badge.svg?flat=1)](https://scan.coverity.com/projects/mame-emulator)
17
18What is MAME?
19=============
20
21MAME is a multi-purpose emulation framework.
22
23MAME's purpose is to preserve decades of software history. As electronic technology continues to rush forward, MAME prevents this important "vintage" software from being lost and forgotten. This is achieved by documenting the hardware and how it functions. The source code to MAME serves as this documentation. The fact that the software is usable serves primarily to validate the accuracy of the documentation (how else can you prove that you have recreated the hardware faithfully?). Over time, MAME (originally stood for Multiple Arcade Machine Emulator) absorbed the sister-project MESS (Multi Emulator Super System), so MAME now documents a wide variety of (mostly vintage) computers, video game consoles and calculators, in addition to the arcade video games that were its initial focus.
24
25How to compile?
26===============
27
28If you're on a *NIX or OSX system, it could be as easy as typing
29
30```
31make
32```
33
34for a MAME build,
35
36```
37make SUBTARGET=arcade
38```
39
40for an arcade-only build, or
41
42```
43make SUBTARGET=mess
44```
45
46for MESS build.
47
48See the [Compiling MAME](http://docs.mamedev.org/initialsetup/compilingmame.html) page on our documentation site for more information, including prerequisites for Mac OS X and popular Linux distributions.
49
50For recent versions of OSX you need to install [Xcode](https://developer.apple.com/xcode/) including command-line tools and [SDL 2.0](https://www.libsdl.org/download-2.0.php).
51
52For Windows users, we provide a ready-made [build environment](http://mamedev.org/tools/) based on MinGW-w64.
53
54Visual Studio builds are also possible, but you still need [build environment](http://mamedev.org/tools/) based on MinGW-w64.
55In order to generate solution and project files just run:
56
57```
58make vs2017
59```
60or use this command to build it directly using msbuild
61
62```
63make vs2017 MSBUILD=1
64```
65
66
67Where can I find out more?
68=============
69
70* [Official MAME Development Team Site](http://mamedev.org/) (includes binary downloads, wiki, forums, and more)
71* [Official MESS Wiki](http://mess.redump.net/)
72* [MAME Testers](http://mametesters.org/) (official bug tracker for MAME and MESS)
73
74
75Contributing
76=============
77
78## Coding standard
79
80MAME source code should be viewed and edited with your editor set to use four spaces per tab. Tabs are used for initial indentation of lines, with one tab used per indentation level. Spaces are used for other alignment within a line.
81
82Some parts of the code follow [Allman style](https://en.wikipedia.org/wiki/Indent_style#Allman_style); some parts of the code follow [K&R style](https://en.wikipedia.org/wiki/Indent_style#K.26R_style) -- mostly depending on who wrote the original version. **Above all else, be consistent with what you modify, and keep whitespace changes to a minimum when modifying existing source.** For new code, the majority tends to prefer Allman style, so if you don't care much, use that.
83
84All contributors need to either add a standard header for license info (on new files) or inform us of their wishes regarding which of the following licenses they would like their code to be made available under: the [BSD-3-Clause](http://opensource.org/licenses/BSD-3-Clause) license, the [LGPL-2.1](http://opensource.org/licenses/LGPL-2.1), or the [GPL-2.0](http://opensource.org/licenses/GPL-2.0).
85
86License
87=======
88The MAME project as a whole is made available under the terms of the
89[GNU General Public License, version 2](http://opensource.org/licenses/GPL-2.0)
90or later (GPL-2.0+), since it contains code made available under multiple
91GPL-compatible licenses.  A great majority of the source files (over 90%
92including core files) are made available under the terms of the
93[3-clause BSD License](http://opensource.org/licenses/BSD-3-Clause), and we
94would encourage new contributors to make their contributions available under the
95terms of this license.
96
97Please note that MAME is a registered trademark of Gregory Ember, and permission
98is required to use the "MAME" name, logo, or wordmark.
99
100<a href="http://opensource.org/licenses/GPL-2.0" target="_blank">
101<img align="right" src="http://opensource.org/trademarks/opensource/OSI-Approved-License-100x137.png">
102</a>
103
104    Copyright (C) 1997-2020  MAMEDev and contributors
105
106    This program is free software; you can redistribute it and/or modify it
107    under the terms of the GNU General Public License version 2, as provided in
108    docs/legal/GPL-2.0.
109
110    This program is distributed in the hope that it will be useful, but WITHOUT
111    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
112    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
113    more details.
114
115Please see COPYING for more details.
116