1
00:00:00,240 --> 00:00:05,359
MAME is a multiarcade machine emulator
2
00:00:03,240 --> 00:00:08,000
that emulates arcade machines, computer
3
00:00:05,359 --> 00:00:10,200
systems, and more. The user must supply
4
00:00:08,000 --> 00:00:13,080
the ROMs software, and any the other files
5
00:00:10,200 --> 00:00:16,119
needed like bios or extra data files
6
00:00:13,080 --> 00:00:19,119
such as CHD files. You can view more
7
00:00:16,119 --> 00:00:21,480
documentation and resources from mamedev.org
8
00:00:19,119 --> 00:00:25,800
however the main site I recommend for
9
00:00:21,480 --> 00:00:28,119
this tutorial is from adb.arcadeitalia.net
10
00:00:25,800 --> 00:00:30,320
. It has a search for the
11
00:00:28,119 --> 00:00:32,640
games and will list the status and files
12
00:00:30,320 --> 00:00:36,040
needed to run them along with other
13
00:00:32,640 --> 00:00:38,280
useful information. MAME arcade zips will
14
00:00:36,040 --> 00:00:41,320
contain all the necessary files that
15
00:00:38,280 --> 00:00:44,280
completes the ROM set. Separate files in
16
00:00:41,320 --> 00:00:47,440
the form of CHD files or bios files may
17
00:00:44,280 --> 00:00:50,360
be needed as well. ROM sets for arcade
18
00:00:47,440 --> 00:00:53,120
games come in two main flavors; merged
19
00:00:50,360 --> 00:00:55,199
and unmerged. Merged ROM sets will
20
00:00:53,120 --> 00:00:56,600
combine the files together such that the
21
00:00:55,199 --> 00:00:59,399
files are not
22
00:00:56,600 --> 00:01:02,199
duplicated. Non-merged zips have all the
23
00:00:59,399 --> 00:01:03,199
files duplicated and this is what BizHawk
24
00:01:02,199 --> 00:01:04,720
needs to
25
00:01:03,199 --> 00:01:06,400
run
26
00:01:04,720 --> 00:01:09,119
27
00:01:06,400 --> 00:01:12,000
adb.arcadeitalia.net lists out the necessary files
28
00:01:09,119 --> 00:01:14,640
needed to create an unmerged zip if you
29
00:01:12,000 --> 00:01:18,000
are unable to find a non-merged zip for
30
00:01:14,640 --> 00:01:20,320
your game. Keep in mind that MAME is
31
00:01:18,000 --> 00:01:22,799
updated frequently and many ROM sets
32
00:01:20,320 --> 00:01:25,840
change over time. It is important to get
33
00:01:22,799 --> 00:01:28,960
a ROM set with the same version to test,
34
00:01:25,840 --> 00:01:31,119
otherwise the game may not work. In
35
00:01:28,960 --> 00:01:32,920
Arcade Italia searching the title and
36
00:01:31,119 --> 00:01:34,880
looking at the game status is usually
37
00:01:32,920 --> 00:01:37,640
enough to determine if a game will run well.
38
00:01:34,880 --> 00:01:40,600
Green means good and should always
39
00:01:37,640 --> 00:01:44,399
work. Yellow means imperfect. There can be
40
00:01:40,600 --> 00:01:46,040
some minor issues. Red means preliminary.
41
00:01:44,399 --> 00:01:48,000
This means that the ROM may not work at
42
00:01:46,040 --> 00:01:50,759
all. You will have to play through it to
43
00:01:48,000 --> 00:01:53,159
the end to check for playability. These
44
00:01:50,759 --> 00:01:56,320
may not boot, or may crash at certain
45
00:01:53,159 --> 00:01:58,119
points, or have minor graphical issues.
46
00:01:56,320 --> 00:02:01,079
Make sure to always avoid games that
47
00:01:58,119 --> 00:02:03,799
have a bad dump status.
48
00:02:01,079 --> 00:02:06,920
How to run several games in Bizhawk. The
49
00:02:03,799 --> 00:02:09,039
first one is Karnov and I pulled it up here
50
00:02:06,920 --> 00:02:11,800
in Arcade Italia.
51
00:02:09,039 --> 00:02:13,800
We are first going to look and see
52
00:02:11,800 --> 00:02:16,160
at the status of the game. If you scroll
53
00:02:13,800 --> 00:02:18,040
down you can see that the overall status
54
00:02:16,160 --> 00:02:20,599
is all green. It's all
55
00:02:18,040 --> 00:02:24,519
good. Next you want to check to see what
56
00:02:20,599 --> 00:02:28,400
files are required. Go to
57
00:02:24,519 --> 00:02:31,440
files needed and click on the expander. All
58
00:02:28,400 --> 00:02:35,000
it shows is one file, it does not need any
59
00:02:31,440 --> 00:02:38,840
other CHD files or any other bios files.
60
00:02:35,000 --> 00:02:38,840
We can also see that the dump is
61
00:02:39,920 --> 00:02:45,879
good. To run this in bizhawk you could
62
00:02:42,599 --> 00:02:48,159
either drop in the file or go to
63
00:02:45,879 --> 00:02:50,800
file open
64
00:02:48,159 --> 00:02:54,519
advanced click, then launch
65
00:02:50,800 --> 00:02:57,200
game. Then navigate to the folder that
66
00:02:54,519 --> 00:03:01,480
has the ROM set zip.
67
00:02:57,200 --> 00:03:03,800
Select it and click open and
68
00:03:01,480 --> 00:03:03,800
it should
69
00:03:04,000 --> 00:03:11,360
run it.
70
00:03:06,720 --> 00:03:14,040
Or you could just drop it in like
71
00:03:11,360 --> 00:03:16,760
this by drag and dropping.
72
00:03:14,040 --> 00:03:19,640
The next game I'm going to show how
73
00:03:16,760 --> 00:03:23,239
to run is Area51.
74
00:03:19,640 --> 00:03:26,319
I have it open here on Arcade
75
00:03:23,239 --> 00:03:28,439
Italia so let us look at the status.
76
00:03:26,319 --> 00:03:32,640
First, it's all
77
00:03:28,439 --> 00:03:35,480
good, now let's go look at the required
78
00:03:32,640 --> 00:03:39,599
files. See here, you need the main file and
79
00:03:35,480 --> 00:03:42,560
then the CHD file which is extra data.
80
00:03:39,599 --> 00:03:45,920
So what you have to do is first we
81
00:03:42,560 --> 00:03:50,000
are going to open up Bizhawk, go to
82
00:03:45,920 --> 00:03:52,280
tools, then go to multi-disk bundler.
83
00:03:50,000 --> 00:03:55,400
Now the way this works is it's
84
00:03:52,280 --> 00:03:58,720
going to generate a XML file that will
85
00:03:55,400 --> 00:04:02,280
select and load the
86
00:03:58,720 --> 00:04:05,879
assets. We want to navigate to the
87
00:04:02,280 --> 00:04:09,200
folder that we want the XML to be in and
88
00:04:05,879 --> 00:04:12,120
I'm going to name it the same name as
89
00:04:09,200 --> 00:04:16,319
the game name aka the ROM set name.
90
00:04:12,120 --> 00:04:16,319
For the game select the system as
91
00:04:17,359 --> 00:04:22,360
arcade then we're going to go back to
92
00:04:19,519 --> 00:04:25,759
that same folder which I'm just copy
93
00:04:22,360 --> 00:04:29,400
pasting, and select the ROMset.
94
00:04:25,759 --> 00:04:32,759
You have to select the ROM set first
95
00:04:29,400 --> 00:04:32,759
then the CHD file
96
00:04:37,360 --> 00:04:45,440
so here this will be the ROM set.
97
00:04:42,160 --> 00:04:49,280
then you will have the CHD
98
00:04:45,440 --> 00:04:49,280
file. we're going to select
99
00:04:49,520 --> 00:04:54,800
save and it creates the XML file below.
100
00:04:52,560 --> 00:04:57,800
I'm going to click Save and Run you can
101
00:04:54,800 --> 00:05:00,759
overwrite it it's
102
00:04:57,800 --> 00:05:04,720
fine. Because the CHD file is so
103
00:05:00,759 --> 00:05:04,720
large it will take a second to load.
104
00:05:07,000 --> 00:05:13,639
Okay so this is Area 51 so it's
105
00:05:11,440 --> 00:05:15,680
running now. What you can also do once
106
00:05:13,639 --> 00:05:19,000
you have the XML files is you don't have to
107
00:05:15,680 --> 00:05:21,479
continually open the multi-disk bundler
108
00:05:19,000 --> 00:05:23,400
and select the files each time once you
109
00:05:21,479 --> 00:05:26,240
have the XML file, you can just drag and
110
00:05:23,400 --> 00:05:28,479
drop the XML file in and it'll load the game.
111
00:05:26,240 --> 00:05:28,479
112
00:05:28,639 --> 00:05:33,360
113
00:05:30,919 --> 00:05:35,800
Of course you all have to wait since the
114
00:05:33,360 --> 00:05:38,560
game is large.
115
00:05:35,800 --> 00:05:40,960
The next example is going to be
116
00:05:38,560 --> 00:05:43,160
the most complicated. It's going to be
117
00:05:40,960 --> 00:05:46,080
Guilty Gear XX.
118
00:05:43,160 --> 00:05:50,680
We open it and we go to the
119
00:05:46,080 --> 00:05:50,680
bottom we can see how this status is
120
00:05:50,880 --> 00:05:55,680
preliminary. However this one can be run
121
00:05:53,600 --> 00:05:57,360
but there might be issues. We can see the
122
00:05:55,680 --> 00:06:02,080
dump is
123
00:05:57,360 --> 00:06:05,000
good and if we look at the MAME required
124
00:06:02,080 --> 00:06:07,360
files there's a good list here. There's a
125
00:06:05,000 --> 00:06:10,440
CHD, there is the ROM set and then
126
00:06:07,360 --> 00:06:13,360
there's all of these other bios
127
00:06:10,440 --> 00:06:16,280
files. Now to run this we are going to do
128
00:06:13,360 --> 00:06:19,280
the same type of thing we did
129
00:06:16,280 --> 00:06:21,440
before. We are going to go to the open up
130
00:06:19,280 --> 00:06:25,720
bizhawk, go to
131
00:06:21,440 --> 00:06:25,720
tools, go to multi-disk bundler
132
00:06:27,520 --> 00:06:35,280
You're going to go to the folder
133
00:06:30,400 --> 00:06:37,919
that we want the XML file to be
134
00:06:35,280 --> 00:06:43,280
in, just name it the
135
00:06:37,919 --> 00:06:46,599
same file name as the name of the ROM
136
00:06:43,280 --> 00:06:48,560
set. Select arcade and then we are going
137
00:06:46,599 --> 00:06:54,800
to go down the list
138
00:06:48,560 --> 00:06:54,800
here. The first file needs to be the game.
139
00:06:58,520 --> 00:07:01,520
140
00:07:01,720 --> 00:07:05,720
the next is going to be the
141
00:07:06,639 --> 00:07:12,800
CHD.
142
00:07:09,879 --> 00:07:16,319
Click add to add additional
143
00:07:12,800 --> 00:07:18,280
assets that will go into the XML
144
00:07:16,319 --> 00:07:21,919
file and then we're just going to start
145
00:07:18,280 --> 00:07:21,919
adding all the other bios files
146
00:07:25,080 --> 00:07:31,520
here. Just going down the list.
147
00:07:28,520 --> 00:07:31,520
148
00:07:44,280 --> 00:07:48,080
And After you've made this save,
149
00:07:48,479 --> 00:07:53,520
look in the folder to make sure
150
00:07:50,759 --> 00:07:56,840
that it created the XML file. We could
151
00:07:53,520 --> 00:07:58,440
take a look at it by right clicking and edit.
152
00:07:56,840 --> 00:08:00,240
We can see I created it.
153
00:07:58,440 --> 00:08:02,919
it
154
00:08:00,240 --> 00:08:05,960
We're going to do Save and Run.
155
00:08:02,919 --> 00:08:08,919
You can just click overwrite
156
00:08:05,960 --> 00:08:08,919
there's no problem with that.
157
00:08:09,280 --> 00:08:16,400
Now for these larger
158
00:08:12,319 --> 00:08:16,400
files it will take a second to
159
00:08:18,240 --> 00:08:25,120
load, because it has to load all of these
160
00:08:20,560 --> 00:08:28,440
files, and CHD here is like 250 megabytes.
161
00:08:25,120 --> 00:08:31,440
So okay it gives you a warning.
162
00:08:28,440 --> 00:08:31,440
163
00:08:34,959 --> 00:08:39,320
You you see how it's running
164
00:08:36,919 --> 00:08:41,440
here. Some of these games may require some
165
00:08:39,320 --> 00:08:43,760
extra buttons to start.
166
00:08:41,440 --> 00:08:47,399
167
00:08:43,760 --> 00:08:47,399
But this will work.
168
00:08:56,560 --> 00:09:03,720
Here yep it's just going through here
169
00:09:01,160 --> 00:09:06,200
Guilty Gear XX.
170
00:09:03,720 --> 00:09:08,680
All right now as you can see that is
171
00:09:06,200 --> 00:09:11,760
the most complicated example, if you can
172
00:09:08,680 --> 00:09:16,519
do that you can do anything else just
173
00:09:11,760 --> 00:09:19,360
remember you need the ROM set name first,
174
00:09:16,519 --> 00:09:23,880
CHD, then the BIOS files.
175
00:09:19,360 --> 00:09:26,040
In arcade games, games change
176
00:09:23,880 --> 00:09:28,480
their settings through things called dipswitches.
177
00:09:26,040 --> 00:09:30,000
These dip switches can be accessed
178
00:09:28,480 --> 00:09:32,000
179
00:09:30,000 --> 00:09:34,959
through the menu here in Bizhawk
180
00:09:32,000 --> 00:09:38,160
First you need to select
181
00:09:34,959 --> 00:09:40,560
arcade then select settings.
182
00:09:38,160 --> 00:09:43,959
Usually the setting that you
183
00:09:40,560 --> 00:09:46,440
want to change would be the difficulty
184
00:09:43,959 --> 00:09:49,040
mode, sometimes there may be some other
185
00:09:46,440 --> 00:09:53,000
version here or
186
00:09:49,040 --> 00:09:56,839
lives but this is where you change it.
187
00:09:53,000 --> 00:09:59,959
In an arcade game unlike consoles
188
00:09:56,839 --> 00:10:02,440
inputs can vary a lot, however typically
189
00:09:59,959 --> 00:10:06,240
they have a coin and a start.
190
00:10:02,440 --> 00:10:07,519
These inputs could just be buttons
191
00:10:06,240 --> 00:10:10,720
or they could have
192
00:10:07,519 --> 00:10:12,720
analogs, there could also be a light gun.
193
00:10:10,720 --> 00:10:14,959
It all depends on what the game is and how
194
00:10:12,720 --> 00:10:18,839
many buttons and there can be many
195
00:10:14,959 --> 00:10:18,839
different number of players as well.
196
00:10:19,120 --> 00:10:23,399
To begin tasing an arcade game, go to
197
00:10:22,360 --> 00:10:27,040
198
00:10:23,399 --> 00:10:27,040
Tools and TasStudio.
199
00:10:28,320 --> 00:10:33,720
200
00:10:29,920 --> 00:10:36,440
now I'm going to open up a Tas project,
201
00:10:33,720 --> 00:10:39,160
which I have already
202
00:10:36,440 --> 00:10:43,360
done, and you can you can see here that
203
00:10:39,160 --> 00:10:46,240
you'll want a coin and then an
204
00:10:43,360 --> 00:10:48,600
input here. You'll have to look at which
205
00:10:46,240 --> 00:10:51,000
inputs are relevant, but if it's a one
206
00:10:48,600 --> 00:10:53,360
player game you can get rid of the Show Player 2.
207
00:10:51,000 --> 00:10:53,360
208
00:10:54,399 --> 00:11:00,040
As you can see there are all these
209
00:10:58,000 --> 00:11:01,519
various inputs you'll have to play and
210
00:11:00,040 --> 00:11:05,279
see what they do.
211
00:11:01,519 --> 00:11:05,279
Do a little bit of
212
00:11:07,560 --> 00:11:12,560
testing to get more info. You can go to
213
00:11:10,120 --> 00:11:14,399
tools and you could do the ram search to
214
00:11:12,560 --> 00:11:17,120
215
00:11:14,399 --> 00:11:20,360
get addresses When selecting memory domains
216
00:11:17,120 --> 00:11:23,560
you want to look for RAM memory domains
217
00:11:20,360 --> 00:11:23,560
and possibly SystemBus.
218
00:11:25,800 --> 00:11:31,480
Then once you find them you can
219
00:11:28,720 --> 00:11:35,440
double click them and add them to the
220
00:11:31,480 --> 00:11:37,880
Ram Watch. I have already a file that
221
00:11:35,440 --> 00:11:40,600
I've made for this
222
00:11:37,880 --> 00:11:43,440
game you can see I put a note for the
223
00:11:40,600 --> 00:11:47,680
name of what the address is, the
224
00:11:43,440 --> 00:11:47,680
value and it also lists the domain.
225
00:11:49,360 --> 00:11:56,600
One other thing you can do here
226
00:11:52,399 --> 00:11:56,600
is that arcade games do not show
227
00:11:56,639 --> 00:12:04,560
lag so what you can do is is open up LuaConsole.
228
00:12:01,000 --> 00:12:08,360
There is a
229
00:12:04,560 --> 00:12:10,720
script ManualSetLag and I will right click
230
00:12:08,360 --> 00:12:12,880
to show you what it looks like.
231
00:12:10,720 --> 00:12:14,639
Essentially what it's doing is you have
232
00:12:12,880 --> 00:12:18,199
to search for an
233
00:12:14,639 --> 00:12:20,880
address that will change based on
234
00:12:18,199 --> 00:12:23,560
whether you can put in input or not.
235
00:12:20,880 --> 00:12:25,240
So if the game is loading like in
236
00:12:23,560 --> 00:12:28,000
the middle of in between levels you
237
00:12:25,240 --> 00:12:31,240
shouldn't be able to put in any input.
238
00:12:28,000 --> 00:12:34,920
It's just no input there and you need to
239
00:12:31,240 --> 00:12:34,920
find that address and then put it
240
00:12:35,880 --> 00:12:41,440
here right here on this line 15, memory.readbyte.
241
00:12:39,880 --> 00:12:44,000
242
00:12:41,440 --> 00:12:47,120
I will show you what this will
243
00:12:44,000 --> 00:12:50,279
look like in TasStudio.
244
00:12:47,120 --> 00:12:52,320
We'll go back to the
245
00:12:50,279 --> 00:12:55,040
beginning now it's loading and you can
246
00:12:52,320 --> 00:12:57,160
see how all the frames are red.
247
00:12:55,040 --> 00:13:01,120
It's not able to really read input
248
00:12:57,160 --> 00:13:01,120
there now, but with the green it does
249
00:13:01,360 --> 00:13:04,480
so this script is very useful.
250
00:13:06,399 --> 00:13:12,240
In closing I'd like to show you a
251
00:13:09,600 --> 00:13:14,160
common issue if you do happen to have a
252
00:13:12,240 --> 00:13:17,360
merged file.
253
00:13:14,160 --> 00:13:21,120
So this file I'm going to
254
00:13:17,360 --> 00:13:23,839
open is not going to work because it is
255
00:13:21,120 --> 00:13:26,519
actually missing files and I'll show you
256
00:13:23,839 --> 00:13:26,519
what that looks like.
257
00:13:28,120 --> 00:13:33,440
258
00:13:30,399 --> 00:13:33,440
Okay so I'm going to open this
259
00:13:34,320 --> 00:13:38,760
file and then it'll show you this
260
00:13:38,800 --> 00:13:45,079
screen. It'll show you a list of the
261
00:13:42,240 --> 00:13:48,199
ROMs in the set but it won't know what
262
00:13:45,079 --> 00:13:51,440
to do because it doesn't have a complete
263
00:13:48,199 --> 00:13:55,240
set. Now if you click
264
00:13:51,440 --> 00:13:57,920
Cancel it'll show you an Arcade Load
265
00:13:55,240 --> 00:14:01,560
Error System Exception. And then it' will
266
00:13:57,920 --> 00:14:03,600
show you the ROMs that it doesn't have.
267
00:14:01,560 --> 00:14:05,240
So what you can do is you could
268
00:14:03,600 --> 00:14:07,279
search for these files or you could
269
00:14:05,240 --> 00:14:11,560
search for just the
270
00:14:07,279 --> 00:14:13,839
non-merged file for that game.
271
00:14:11,560 --> 00:14:16,440
That is something to keep in mind.
272
00:14:13,839 --> 00:14:18,000
And that's a wrap thank you for
273
00:14:16,440 --> 00:14:21,759
watching and have fun playing arcade
274
00:14:18,000 --> 00:14:21,759
games in Bizhawk.