1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
|
M.A.M.E. - Multiple Arcade Machine Emulator
Copyright (C) 1997-2001 by Nicola Salmoria and The MAME Team
Many people have helped with this project--directly, or by releasing the source
code for the drivers they have written. We are not trying to take credit that
isn't ours. See the Acknowledgments section for a list of contributors. Please
note, however, that the list is largely incomplete. Also see the comments in
the source code to see the people who contributed to specific drivers. That
list, too, may be incomplete. We apologize for any omission.
All trademarks cited in this document are property of their respective owners.
For usage instructions, please consult the corresponding readme.
MS-DOS: msdos.txt
Windows: windows.txt
Usage and Distribution License
------------------------------
I. Purpose
----------
MAME is strictly a non-profit project. Its main purpose is to be a reference
to the inner workings of the emulated arcade machines. This is done for
educational purposes and to prevent many historical games from sinking into
oblivion once the hardware they run on stops working. Of course to preserve
the games, you must also be able to actually play them; you can consider
that a nice side effect.
It is not our intention to infringe on any copyrights or patents on the
original games. All of MAME's source code is either our own or freely
available. To operate, the emulator requires images of the original ROMs
from the arcade machines, which must be provided by the user. No portion of
the original ROM codes are included in the executable.
II. Cost
--------
MAME is free. Its source code is free. Selling either is not allowed.
III. ROM Images
---------------
ROM images are copyrighted material. Most of them cannot be distributed
freely. Distribution of MAME on the same physical medium as illegal copies
of ROM images is strictly forbidden.
You are not allowed to distribute MAME in any form if you sell, advertise,
or publicize illegal CD-ROMs or other media containing ROM images. This
restriction applies even if you don't make money, directly or indirectly,
from those activities. You are allowed to make ROMs and MAME available for
download on the same website, but only if you warn users about the ROMs's
copyright status, and make it clear that users must not download ROMs unless
they are legally entitled to do so.
IV. Source Code Distribution
----------------------------
If you distribute the binary (compiled) version of MAME, you should also
distribute the source code. If you can't do that, you must provide a link
to a site where the source can be obtained.
V. Distribution Integrity
-------------------------
This chapter applies to the official MAME distribution. See below for
limitations on the distribution of derivative works.
MAME must be distributed only in the original archives. You are not allowed
to distribute a modified version, nor to remove and/or add files to the
archive.
VI. Reuse of Source Code
--------------------------
This chapter might not apply to specific portions of MAME (e.g. CPU
emulators) which bear different copyright notices.
The source code cannot be used in a commercial product without the written
authorization of the authors. Use in non-commercial products is allowed, and
indeed encouraged. If you use portions of the MAME source code in your
program, however, you must make the full source code freely available as
well.
Usage of the _information_ contained in the source code is free for any use.
However, given the amount of time and energy it took to collect this
information, if you find new information we would appreciate if you made it
freely available as well.
VII. Derivative Works
---------------------
Derivative works are allowed, provided their source code is freely
available. However, these works are discouraged. MAME is a continuously-
-evolving project. It is in your best interests to submit your contributions
to the MAME development team, so they may be integrated into the main
distribution.
There are some specific modifications to the source code which go against
the spirit of the project. They are NOT considered a derivative work, and
distribution of executables containing them is strictly forbidden. Such
modifications include, but are not limited to:
- enabling games that are disabled
- changing the ROM verification commands so that they report missing games
- removing the startup information screens
If you make a derivative work, you are not allowed to call it MAME. You must
use a different name to make clear that it is a MAME derivative, not an
official distribution from the MAME team. Simply calling it MAME followed or
preceded by a punctuation mark (e.g. MAME+) is not sufficient. The name must
be clearly distinct (e.g. REMAME). The version number must also match the
number of the official MAME version from which you derived your version.
How to Contact Us
-----------------
The official MAME homepage is http://www.mame.net/ You can always find the
latest release there, including beta versions and information on things being
worked on. Also, a totally legal and free ROM set of Robby Roto is available
on the same page.
If you have bugs to report, check the MAME Testing Project at
http://www.mametesters.com
Here are some of the people contributing to MAME. If you have comments,
suggestions, or bug reports about an existing driver, check the driver's
source code to find who has worked on it, and send comments to that person.
If you are not sure who to contact, write to Nicola. If you have comments
specific to a system other than DOS (e.g. Mac, Win32, Unix), they should be
sent to the respective port maintainer (check the documentation to know who he
is). DON'T SEND THEM TO NICOLA - they will be ignored.
Nicola Salmoria MC6489@mclink.it
Mike Balfour mab22@po.cwru.edu
Aaron Giles agiles@sirius.com
Chris Moore chris.moore@writeme.com
Brad Oliver bradman@pobox.com
Andrew Scott ascott@utkux.utcc.utk.edu
Zsolt Vasvari vaszs01@banet.net
Luca Elia l.elia@tin.it
DON'T SEND BINARY ATTACHMENTS WITHOUT ASKING FIRST, *ESPECIALLY* ROM IMAGES.
THESE ARE NOT SUPPORT ADDRESSES. Support questions sent to these addresses
*will* be ignored. Please understand that this is a *free* project, mostly
targeted at experienced users. We don't have the resources to provide end user
support. Basically, if you can't get the emulator to work, you are on your own.
First of all, read the docs carefully. If you still can't find an answer to
your question, try checking the beginner's sections that many emulation pages
have, or ask on the appropriate Usenet newsgroups (e.g. comp.emulators.misc) or
on the official MAME message board at http://www.mame.net/msg/
For help in compiling MAME, check these pages:
http://www.mame.net/compile.html
http://www.mameworld.net
Also, DO NOT SEND REQUESTS FOR NEW GAMES TO ADD, unless you have some original
info on the game hardware or, even better, own the board and have the technical
expertise needed to help us.
Please don't send us information widely available on the Internet - we are
perfectly capable of finding it ourselves, thank you.
Acknowledgments
---------------
First of all, thanks to Allard van der Bas (avdbas@wi.leidenuniv.nl) for
starting the Arcade Emulation Programming Repository at
http://valhalla.ph.tn.tudelft.nl/emul8
Without the Repository, I would never have even tried to write an emulator.
Unfortunately, the original Repository is now closed, but its spirit lives
on in MAME.
Z80 emulator Copyright (c) 1998 Juergen Buchmueller, all rights reserved.
M6502 emulator Copyright (c) 1998 Juergen Buchmueller, all rights reserved.
Hu6280 Copyright (c) 1999 Bryan McPhail, mish@tendril.force9.net
I86 emulator by David Hedley, modified by Fabrice Frances (frances@ensica.fr)
M6809 emulator by John Butler, based on L.C. Benschop's 6809 Simulator V09.
M6808 based on L.C. Benschop's 6809 Simulator V09.
M68000 emulator Copyright 1999 Karl Stenerud. All rights reserved.
80x86 M68000 emulator Copyright 1998, Mike Coates, Darren Olafson.
8039 emulator by Mirko Buffoni, based on 8048 emulator by Dan Boris.
T-11 emulator Copyright (C) Aaron Giles 1998
TMS34010 emulator by Alex Pasadyn and Zsolt Vasvari.
TMS9900 emulator by Andy Jones, based on original code by Ton Brouwer.
Cinematronics CPU emulator by Jeff Mitchell, Zonn Moore, Neil Bradley.
Atari AVG/DVG emulation based on VECSIM by Hedley Rainnie, Eric Smith and
Al Kossow.
TMS5220 emulator by Frank Palazzolo.
AY-3-8910 emulation based on various code snippets by Ville Hallik,
Michael Cuddy, Tatsuyuki Satoh, Fabrice Frances, Nicola Salmoria.
YM-2203, YM-2151, YM3812 emulation by Tatsuyuki Satoh.
POKEY emulator by Ron Fries (rfries@aol.com).
Many thanks to Eric Smith, Hedley Rainnie and Sean Trowbridge for information
on the Pokey random number generator.
NES sound hardware info by Jeremy Chadwick and Hedley Rainne.
YM2610 emulation by Hiromitsu Shioya.
Background art by Peter Hirschberg (PeterH@cronuscom.com).
Allegro library by Shawn Hargreaves, 1994/97
SEAL Synthetic Audio Library API Interface Copyright (C) 1995, 1996
Carlos Hasan. All Rights Reserved.
Video modes created using Tweak 1.6b by Robert Schmidt, who also wrote
TwkUser.c.
"inflate" code for zip file support by Mark Adler.
DOS executable compressed with UPX by Markus F.X.J. Oberhumer & Laszlo Molnar,
http://upx.tsx.org/
Big thanks to Gary Walton (garyw@excels-w.demon.co.uk) for too many things
to mention.
Thanks to Brian Deuel, Neil Bradley, and the Retrocade dev team for allowing us
to use Retrocade's game history database.
Thanks to Richard Bush for info on several games.
Thanks to Dave (www.finalburn.com) for info on After Burner.
and thanks to everyone else I forgot.
|