220 likes | 391 Views
Linux Mame Arcade. Ryan Whallen and Beth Garrett EKU, CEN/CET. OUTLINE. We attempted to make a Video Game Emulator, on a Linux system. This had rarely been done before. Thus making Linux have Hundreds of games. MOTIVATION. To make a retro arcade machine We had the parts already.
E N D
Linux Mame Arcade Ryan Whallen and Beth Garrett EKU, CEN/CET
OUTLINE • We attempted to make a Video Game Emulator, on a Linux system. • This had rarely been done before. • Thus making Linux have Hundreds of games.
MOTIVATION • To make a retro arcade machine • We had the parts already. • To see if Linux can run Mame.
INTRODUCTION • Had a Arcade Machine in Storage. • Wanted to see if we could get Old Games to play on it. • Researched how other people had done this. • Made our own Modifications.
What we needed. • Needed to make the joysticks work on a pc. • Install more Buttons. • Retrofit Monitor and Speakers into cabinet. • Needed to make Mame work on Linux.
The Bridge • Every Button had a line to a 40 PIN IDE Cable.
Connecting to the Computer • The KE72 Input Device took the place of a Keyboard. • Each PIN on the IDE Cable was now a key on a keyboard. • The KE72 Plugged Directly into the PS/2 Keyboard Port.
Programming the KE72 Using a uploading program on the CD with the KE72 and With a txt file and these commands your able to make your own keyboard. Sample: IN01:[F1] The Button on Input Pin #1 will act like the F1 key. After uploaded, the KE72 can be plugged into any pc and remember your configuration, until you upload a new file.
What is Mame? • MAME stands for Multiple Arcade Machine Emulator • It can emulate most arcade hardware ranging from the very old to the moderately new • It allows you to access multiple games at one time, which makes it ideal for arcade cabinet projects 11
PROPOSED SOLUTION • Originally AdvanceCD was going to be used, but it proved to be difficult to set up properly and was very picky about hardware • Instead we went with Xubuntu (Ubuntu Linux with xfce window manager) since numerous sites about making Linux arcade cabinets seem to prefer it the most 12
PROPOSED SOLUTION • We tried many different MAME programs for linux, including: • gmame • xmame • advmame • But the individual configuration and compatibility seems to be best with advmame, so we chose it for our emulator 13
PROPOSED SOLUTION • We also started with a very old PC (Pentium 2 based), that turned out to actually not be powerful enough for our needs, as it lagged heavily under Xubuntu and even in the console running only MAME • We switched to a more recent Athlon 64 desktop PC, which proved to be better, however… 14
PROPOSED SOLUTION • The Radeon x800 inside the computer was not fully compatible with the things we needed to do to autorun MAME • It’s core was not supported by framebuffer drivers, causing MAME to crash • We tried an Nvidia card, the card from the old machine, and a different Radeon card, but all had the same issue 15
PROPOSED SOLUTION • Due to this, we did not autostart MAME using only xserver, as it needed framebuffer support • There was also a bug that is present across all recent versions of Ubuntu… 16
PROPOSED SOLUTION • This bug was in how the tty1, tty2, etc. configuration files were understood by Ubuntu • The default script syntax was changed, but if you manually edit the files to mimic it, it ignores your changes and causes errors 17
PROPOSED SOLUTION • You have to basically script “backwards”, placing commands before they are normally supposed to be used in order to get around this bug • The scripts we used mostly relied on editing things such as .bashrc, which loads the desktop after the user is automatically logged in 18
PROPOSED SOLUTION • The autologin was accomplished using mingetty, and the event.d file for tty1, the first terminal console • This was done so the user would not need keyboard access at the arcade cabinet to login, saving time and removing the need to accommodate for a keyboard in the structure of the cabinet 19
RESULTS • Murphy's Law threw us some good curve balls, but we prevailed.
CONCLUSIONS • Learned more about Linux. • Learned how to hack Controllers. • Learned a lot from helping my fellow classmates.
FUTURE WORK • Playing more with The KE72. (I have two driving simulators in storage.) • Making more Arcade Cabinets and then Selling them.