Difference between revisions of "Mikes Mini Mame"
(→Controls) |
|||
(64 intermediate revisions by 2 users not shown) | |||
Line 21: | Line 21: | ||
Work started in Nov 2010, with most of the electronics sourced in advance from various locations. | Work started in Nov 2010, with most of the electronics sourced in advance from various locations. | ||
− | + | Finally finished the project in January 2011. Some minor work still has to be done with the user interface (a new custom Mala layout to replace the current basic one), however the cab is fully functional and is already paying out for all the effort by providing endless hours of fun. | |
+ | |||
+ | And without further delay, here are some high resolution pics of the finished cab. | ||
+ | |||
+ | [[image:Mikes_Mini_Mame_Final.JPG|thumb|Front Side|300px|left]] | ||
+ | |||
+ | [[image:Mikes_Mini_Mame_Final2.JPG|thumb|Back Side|260px|left]] | ||
+ | |||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
Line 30: | Line 37: | ||
As you may have guessed from the category this is a Bartop/Countertop/Coffee-tabletop/Whichever-suits-you-besttop project. | As you may have guessed from the category this is a Bartop/Countertop/Coffee-tabletop/Whichever-suits-you-besttop project. | ||
− | The idea for a mini, compact, carry-around cabinet came | + | The idea for a mini, compact, carry-around cabinet came mainly out of purely practical reasons. |
However, the real drive was curiosity as to whether the functionality and look and feel of a full sized cab could be successfully scaled down to a portable unit. | However, the real drive was curiosity as to whether the functionality and look and feel of a full sized cab could be successfully scaled down to a portable unit. | ||
− | + | Additionally, growing up during the golden age of arcades, for me, any such game is by now an invaluable memory machine. And let us not forget that several of the old games continue to be extremely addictive and highly playable even by today's standards. | |
+ | |||
+ | At this point I honestly could not resist linking to an amazing article I believe is definitely worth reading that can give some perspective to my nostalgic drive towards arcade games. | ||
+ | [http://www.everseradio.com/flying-off-the-screen-observations-from-the-golden-age-of-the-american-video-game-arcade/ “Flying Off the Screen: Observations from the Golden Age of the American Video Game Arcade” by Ernest Hilbert] | ||
To help me better visualise my concept I have used a CAD tool which on numerous occasions proved invaluable. See design section below. | To help me better visualise my concept I have used a CAD tool which on numerous occasions proved invaluable. See design section below. | ||
Line 52: | Line 62: | ||
A spinner/dial/paddle, was also included to allow playing of games like Arkanoid, or driving games which require an analog steering wheel. | A spinner/dial/paddle, was also included to allow playing of games like Arkanoid, or driving games which require an analog steering wheel. | ||
− | Since I discovered more than 30 Mame Light Gun games, a light gun module was necessary... | + | Since I discovered more than 30 Mame Light Gun games, a light gun module was necessary... (I am afraid the test with Ultimarc's AimTrak module was not very satisfying as I could not get the reliability I was "aiming" for out of it, so it was temporarily dropped) |
Start a game with a dedicated green button (with backlight) that can also double as a pause button while in game. | Start a game with a dedicated green button (with backlight) that can also double as a pause button while in game. | ||
Line 60: | Line 70: | ||
Also use backlit buttons for P1 start and Coin. | Also use backlit buttons for P1 start and Coin. | ||
− | Ability to regulate sound volume via a knob. | + | Ability to regulate sound volume via a knob. (Dropped during implemetation as I decided to avoid the mechanical complexity and use the software to do this by assigning shift-buttons and the joystick to do this) |
Ability to connect external USB mouse, keyboard and even a secondary control panel for dual game play. | Ability to connect external USB mouse, keyboard and even a secondary control panel for dual game play. | ||
Line 69: | Line 79: | ||
Here you can find the various cabinet components in the order that they were designed and incorporated into the Google Sketchup drawing. | Here you can find the various cabinet components in the order that they were designed and incorporated into the Google Sketchup drawing. | ||
==== Side Panels ==== | ==== Side Panels ==== | ||
+ | [[image:Mikes_Mini_Mame_Sketchup4.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup17.jpg|thumb||150px|left]] | ||
+ | |||
Even though this was the first item to be drawn, it was also the most difficult because it provided the base for all the rest. | Even though this was the first item to be drawn, it was also the most difficult because it provided the base for all the rest. | ||
The sidepanels would be constructed out of pine-wood 18mm thick. | The sidepanels would be constructed out of pine-wood 18mm thick. | ||
Line 78: | Line 91: | ||
* Angle for control panel (based on tests using a cardboard moc-up) | * Angle for control panel (based on tests using a cardboard moc-up) | ||
* Angle for monitor (based on using my laptop as a moc-up device) | * Angle for monitor (based on using my laptop as a moc-up device) | ||
+ | |||
+ | <br style="clear:both;"/> | ||
==== Main Panels ==== | ==== Main Panels ==== | ||
+ | [[image:Mikes_Mini_Mame_Sketchup5.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup6.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup18.jpg|thumb||150px|left]] | ||
+ | |||
The whole cabinet would be held together by three 12mm panels out of MDF which would hold the two side panels firmly together. | The whole cabinet would be held together by three 12mm panels out of MDF which would hold the two side panels firmly together. | ||
Line 85: | Line 104: | ||
The top panel would have an opening to serve a dual purpose. Firstly as a hot air exhaust vent and secondly as a carrying handle. | The top panel would have an opening to serve a dual purpose. Firstly as a hot air exhaust vent and secondly as a carrying handle. | ||
+ | <br style="clear:both;"/> | ||
==== Secondary Panels ==== | ==== Secondary Panels ==== | ||
+ | [[image:Mikes_Mini_Mame_Sketchup7.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup8.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup19.jpg|thumb||150px|left]] | ||
+ | |||
The rest of the panels were to be constructed from 6mm MDF since they would not have to support any load. | The rest of the panels were to be constructed from 6mm MDF since they would not have to support any load. | ||
The rear panel would have a circular opening to accept the 120mm fresh air cooling Fan. The Fan would create positive air pressure in the cabinet by drawing air in. The hot air would then be exhausted via the top main panel. | The rear panel would have a circular opening to accept the 120mm fresh air cooling Fan. The Fan would create positive air pressure in the cabinet by drawing air in. The hot air would then be exhausted via the top main panel. | ||
+ | <br style="clear:both;"/> | ||
==== Internal Components ==== | ==== Internal Components ==== | ||
− | + | [[image:Mikes_Mini_Mame_Sketchup9.jpg|thumb||150px|left]] | |
− | + | [[image:Mikes_Mini_Mame_Sketchup10.jpg|thumb||150px|left]] | |
− | + | [[image:Mikes_Mini_Mame_Sketchup20.jpg|thumb||150px|left]] | |
− | |||
− | |||
− | I left out the Power Supply since I intended to | + | In order for my design to be accurate I measured up and drew as Sketchup components the monitor, the motherboard, the cooling fan and the speakers. |
+ | |||
+ | I left out the Power Supply since I intended to dismantle it. This way placing it will not be an issue. | ||
These components allowed me to preview whether everything would fit and make any necessary adjustments to the overall dimensions well in advance of any actual woodworking. | These components allowed me to preview whether everything would fit and make any necessary adjustments to the overall dimensions well in advance of any actual woodworking. | ||
+ | <br style="clear:both;"/> | ||
==== Marquee and Screen Bezel ==== | ==== Marquee and Screen Bezel ==== | ||
− | + | [[image:Mikes_Mini_Mame_Sketchup11.jpg|thumb||150px|left]] | |
+ | [[image:Mikes_Mini_Mame_Sketchup12.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup21.jpg|thumb||150px|left]] | ||
− | + | Nothing special for the design of these parts. | |
+ | However during the construction I implemented some interesting methods to hold the Marquee and Screen Bezel in place. | ||
+ | <br style="clear:both;"/> | ||
==== Controls ==== | ==== Controls ==== | ||
+ | [[image:Mikes_Mini_Mame_Sketchup13.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup14.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup22.jpg|thumb||150px|left]] | ||
+ | |||
Again designing the controls within Sketchup helped me find out if everything would fit within the cabinet. | Again designing the controls within Sketchup helped me find out if everything would fit within the cabinet. | ||
Additionally I used Sketchup to accurately position the controls on the control panel as ergonomically as possible. | Additionally I used Sketchup to accurately position the controls on the control panel as ergonomically as possible. | ||
+ | |||
+ | <br style="clear:both;"/> | ||
==== Support Bars ==== | ==== Support Bars ==== | ||
+ | [[image:Mikes_Mini_Mame_Sketchup15.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup16.jpg|thumb||150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Sketchup23.jpg|thumb||150px|left]] | ||
+ | |||
A very important part of the design was to obtain the dimensions for all the necessary pine-wood bars (18mm x 18mm) that would hold all the panels firmly together. | A very important part of the design was to obtain the dimensions for all the necessary pine-wood bars (18mm x 18mm) that would hold all the panels firmly together. | ||
Line 121: | Line 161: | ||
However all the rest of the panels would attach to the support bars via bolts and wood-insert nuts or T-nuts. The screws would be of the socket head type (allen key). This meant that with minimum effort the entire cabinet could be dismantled and re-assembled as many times as I wanted. | However all the rest of the panels would attach to the support bars via bolts and wood-insert nuts or T-nuts. The screws would be of the socket head type (allen key). This meant that with minimum effort the entire cabinet could be dismantled and re-assembled as many times as I wanted. | ||
− | + | <br style="clear:both;"/> | |
− | |||
− | |||
− | |||
− | |||
− | |||
=== Color Scheme === | === Color Scheme === | ||
Line 150: | Line 185: | ||
== Hardware == | == Hardware == | ||
+ | |||
+ | [[image:Mikes_Mini_Mame_Electronics1.jpg|thumb|View from Front|200px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Electronics2.jpg|thumb|View from Rear|200px|left]] | ||
+ | |||
+ | <br style="clear:both;"/> | ||
+ | |||
* Mini-ITX form factor Motherboard. | * Mini-ITX form factor Motherboard. | ||
* Intel Atom CPU | * Intel Atom CPU | ||
Line 168: | Line 209: | ||
* Powerful enough (to run the basic games that I enjoy most). | * Powerful enough (to run the basic games that I enjoy most). | ||
+ | |||
+ | [[image:Mikes_Mini_Mame_D510MO.jpg|thumb|Intel D510MO|100px|left]] | ||
+ | [[image:Mikes_Mini_Mame_RAM.jpg|thumb|Memory|100px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Samsung152t.jpg|thumb|Monitor|100px|left]] | ||
+ | [[image:Mikes_Mini_Mame_PSU.jpg|thumb|Power Supply|100px|left]] | ||
+ | [[image:Mikes_Mini_Mame_SSD.jpg|thumb|Hard Drive|100px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Speakers.jpg|thumb|Speakers|150px|left]] | ||
+ | |||
+ | <br style="clear:both;"/> | ||
==== Motherboard ==== | ==== Motherboard ==== | ||
− | |||
I went for the Intel D510MO mini-itx form factor (170mm x 170mm) for the following reasons: | I went for the Intel D510MO mini-itx form factor (170mm x 170mm) for the following reasons: | ||
Line 182: | Line 231: | ||
Full specs [http://www.intel.com/products/desktop/motherboards/D510MO/D510MO-overview.htm here.] | Full specs [http://www.intel.com/products/desktop/motherboards/D510MO/D510MO-overview.htm here.] | ||
− | |||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
==== Memory ==== | ==== Memory ==== | ||
− | |||
'''Kingston KVR800D2N5/1G''' | '''Kingston KVR800D2N5/1G''' | ||
− | The motherboard | + | The motherboard supports two memory chips but one gig is more than enough for Mame. |
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
==== Monitor ==== | ==== Monitor ==== | ||
− | + | I needed a 4:3 aspect ratio monitor so that I could play both vertical and horizontal games without having to rotate the screen every time. I also needed the monitor to be of the LCD/TFT panel type in order to save space, heat and weight. | |
− | I needed a 4:3 aspect | ||
The problem is that nowadays you can not easily find 4:3 LCD screens since most of the new ones are wide-screen. So if you have one, charish it. Wide screen is not that good for Mame. | The problem is that nowadays you can not easily find 4:3 LCD screens since most of the new ones are wide-screen. So if you have one, charish it. Wide screen is not that good for Mame. | ||
'''Samsung 15" TFT Panel (Syncmaster152T)''' | '''Samsung 15" TFT Panel (Syncmaster152T)''' | ||
+ | |||
+ | [[image:Mikes_Mini_Mame_VGA.jpg|thumb|Gender Changer|150px|left]] | ||
Great monitor. Excellent contrast. Had it lying around for the past 5 years and it seemed time I put it to good use. | Great monitor. Excellent contrast. Had it lying around for the past 5 years and it seemed time I put it to good use. | ||
Line 207: | Line 255: | ||
The entire cabinet was designed based on the dimensions of this monitor. For example the internal width is just a few millimiters bigger than the monitor's width and the hight is also accordingly selected to just fit this monitor. | The entire cabinet was designed based on the dimensions of this monitor. For example the internal width is just a few millimiters bigger than the monitor's width and the hight is also accordingly selected to just fit this monitor. | ||
− | |||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
==== Power Supply ==== | ==== Power Supply ==== | ||
− | |||
'''SL-500 Power Supply''' | '''SL-500 Power Supply''' | ||
Line 220: | Line 266: | ||
==== Hard Drive ==== | ==== Hard Drive ==== | ||
− | |||
'''KINGSTON SNV125-S2/30GB SSDNOW V''' | '''KINGSTON SNV125-S2/30GB SSDNOW V''' | ||
Line 227: | Line 272: | ||
==== Speakers ==== | ==== Speakers ==== | ||
− | |||
'''Logitech LS11''' | '''Logitech LS11''' | ||
Line 235: | Line 279: | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
==== USB Extender ==== | ==== USB Extender ==== | ||
− | + | This was simply pushed through a hole on the lower rear panel. | |
+ | <br style="clear:both;"/> | ||
+ | Through the motherboard you can only get 500mA which is often not | ||
+ | <br style="clear:both;"/> | ||
+ | enough for connecting more than one peripherals, | ||
+ | <br style="clear:both;"/> | ||
+ | so the USB extender was feeded with external power from the PSU 5V lines. | ||
+ | [[image:Mikes_Mini_Mame_USB1.jpg|thumb|USB Extender|250px|left]] | ||
+ | <br style="clear:both;"/> | ||
=== Marquee Lighting === | === Marquee Lighting === | ||
− | USB light. | + | I bought a USB attached notebook desk light which featured a small cold cathode tube. Very handy... |
+ | |||
+ | [[image:Mikes_Mini_Mame_Marquee2.jpg|thumb|Cold Cathode Tube|200px|left]] | ||
+ | <br style="clear:both;"/> | ||
+ | |||
=== Power Feeds === | === Power Feeds === | ||
− | + | The PSU was disassembled and mounted on the bottom panel. | |
+ | <br style="clear:both;"/> | ||
+ | The lower rear panel hosted the power inlet, | ||
+ | <br style="clear:both;"/> | ||
+ | power switch and key switch and the necessary distribution connectors. | ||
+ | <br style="clear:both;"/> | ||
+ | You can also see the power filter circuit. | ||
+ | [[image:Mikes_Mini_Mame_Power1.jpg|thumb|Power Distribution|250px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Power3.jpg|thumb|Power Supply Unit|150px|left]] | ||
+ | <br style="clear:both;"/> | ||
+ | |||
==== Power Switch ==== | ==== Power Switch ==== | ||
− | + | Removed from a Samsung printer, this key interrupts both live | |
+ | <br style="clear:both;"/> | ||
+ | and neutral at the same time thus giving complete isolation. | ||
+ | <br style="clear:both;"/> | ||
+ | It is also quite big and has a very nice switching feel. | ||
+ | [[image:Mikes_Mini_Mame_Power2.jpg|thumb|Power Switch|200px|left]] | ||
+ | <br style="clear:both;"/> | ||
+ | |||
==== Lock Key ==== | ==== Lock Key ==== | ||
− | + | No more playing, its study time... | |
− | + | [[image:Mikes_Mini_Mame_Key.jpg|thumb|Key Power Switch|200px|left]] | |
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
Line 255: | Line 328: | ||
I chose Windows XP simply because of the beutiful Mala Front End. Otherwise I could have used the Linux installation from my previous arcade. | I chose Windows XP simply because of the beutiful Mala Front End. Otherwise I could have used the Linux installation from my previous arcade. | ||
− | In any case, even though I chose Windows I still used [http://www.nliteos.com/ nLite] to minimise the | + | In any case, even though I chose Windows I still used [http://www.nliteos.com/ nLite] to minimise the footprint of the installation. This way the OS would boot faster and consume less CPU during gaming. |
I used nLite to: | I used nLite to: | ||
Line 272: | Line 345: | ||
Mame 32bit version 1.38 | Mame 32bit version 1.38 | ||
=== Front End === | === Front End === | ||
− | Mala | + | I have used the Mala Front End. |
+ | <br style="clear:both;"/> | ||
+ | More work is definitely needed here in the form of better customizing the layouts. | ||
+ | |||
+ | Some issues with attaching additional controls were solved thanks to this guy. | ||
+ | [http://forum.arcadecontrols.com/index.php?topic=108767.0 ControllerRemap Utility] | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
Line 278: | Line 356: | ||
== Controls == | == Controls == | ||
− | + | All the controls were bought online from [http://www.ultimarc.com/ www.ultimarc.com]. | |
+ | |||
+ | [[image:Mikes_Mini_Mame_UltraStik.jpg|thumb|Stick|100px|left| Photo © Ultimarc.com, Used with permission.]] | ||
+ | [[image:Mikes_Mini_Mame_UltraLux.jpg|thumb|Buttons|100px|left| Photo © Ultimarc.com, Used with permission.]] | ||
+ | [[image:Mikes_Mini_Mame_SpinTrak.jpg|thumb|Dial|100px|left| Photo © Ultimarc.com, Used with permission.]] | ||
+ | [[image:Mikes_Mini_Mame_AimTrak.jpg|thumb|LightGun|100px|left| Photo © Ultimarc.com, Used with permission.]] | ||
+ | |||
+ | [[image:Mikes_Mini_Mame_CP_Final.JPG|thumb|Final Control Panel|300px|left]] | ||
+ | |||
+ | <br style="clear:both;"/> | ||
+ | |||
=== Stick === | === Stick === | ||
− | + | The '''UltraStik 360''' has no contacts or microswitches and can be used both as an analog and a digital stick. | |
− | + | ||
+ | It is USB attached to the computer and can also accept up to 8 button inputs so an additional button encoder is not necessary. | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
+ | |||
=== Buttons === | === Buttons === | ||
− | + | After discovering that from Mala I can light up only the buttons relevant to the selected game, I went for Ultimarc's illuminated buttons for the entire panel. The number 4 button even though it is white it has a blue led beneath. | |
− | |||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
+ | |||
=== Rotary Dial === | === Rotary Dial === | ||
− | + | Ultimarc's SpintTrak is an amazing piece of hardwarel. Very responsive. | |
− | + | However I discovered that it does not play well in mame if you use the -triplebuffer option. | |
+ | So for spinner games make sure you are not using the triplebuffer option. | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
+ | |||
=== Light Gun === | === Light Gun === | ||
− | + | I tried Ultimarc's AimTrak module which I mounted in a plastic toy gun. However I discovered that even with careful calibration the gun module is still not really reliable as a pointing device and seriously affects gameplay. | |
− | + | I will revisit this in the future to see if I can improve on anything... | |
+ | Just ordered TopGun II from Play-Asia. Will evaluate and let you know. | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
+ | |||
== Woodworking == | == Woodworking == | ||
− | + | [[image:Mikes_Mini_Mame_Screws.jpg|thumb|Socket Head|150px|left]] | |
− | + | [[image:Mikes_Mini_Mame_Panel1.jpg|thumb|Front Panel|150px|left]] | |
− | [[image: | + | |
+ | The supporting bars were first screwed and glued to the side panels. | ||
+ | |||
+ | The other panels were then attached to the supporting bars via socket head (6mm or 5mm) screws via T-nuts or insert nuts. | ||
<br style="clear:both;"/> | <br style="clear:both;"/> | ||
=== Side Panels === | === Side Panels === | ||
− | + | ||
* Templates | * Templates | ||
+ | [[image:Mikes_Mini_Mame_Template1.jpg|thumb|Template|150px|left]] | ||
+ | The template for the side panels was made out of 6mm marine ply wood. | ||
+ | |||
+ | <br style="clear:both;"/> | ||
+ | |||
* Ribs | * Ribs | ||
+ | [[image:Mikes_Mini_Mame_Ribs.jpg|thumb|Side Panel with ribs|200px|left]] | ||
+ | <br style="clear:both;"/> | ||
=== Rear Panels === | === Rear Panels === | ||
− | + | [[image:Mikes_Mini_Mame_Panels.jpg|thumb|All Panels Ready|200px|left]] | |
+ | [[image:Mikes_Mini_Mame_Fan1.jpg|thumb|120mm Fan Mounted|200px|left]] | ||
+ | <br style="clear:both;"/> | ||
+ | |||
=== Control Panel === | === Control Panel === | ||
− | + | [[image:Mikes_Mini_Mame_Building1.jpg|thumb|CP mounted|340px|left]] | |
+ | <br style="clear:both;"/> | ||
+ | |||
=== Screen Bezel === | === Screen Bezel === | ||
− | + | ||
+ | [[image:Mikes_Mini_Mame_Bezel1.jpg|thumb|Step 1|150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Bezel2.jpg|thumb|Step 2|150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Bezel3.jpg|thumb|CP Channel|150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Bezel4.jpg|thumb|CP Channel|150px|left]] | ||
+ | [[image:Mikes_Mini_Mame_Bezel5.jpg|thumb|Finished|150px|left]] | ||
+ | |||
+ | <br style="clear:both;"/> | ||
+ | |||
=== Marquee === | === Marquee === | ||
− | + | For placing the marquee I eventually opened 6mm channels on the upper and lower marquee panels. | |
− | + | [[image:Mikes_Mini_Mame_Marquee1.jpg|thumb|Marquee Position|180px|left]] | |
− | + | [[image:Mikes_Mini_Mame_Marquee3.jpg|thumb|Marquee Light|220px|left]] | |
− | |||
− | |||
<br style="clear:both;"/> | <br style="clear:both;"/> |
Latest revision as of 19:23, 11 March 2014
- Project Type: Bartop/Countertop Arcade Cabinet
- Construction Method: Scratchbuilt
- Monitor Type: 15" LCD TFT
- Interface Type: UltraStik 360
- Special Controls: SpinTrak, AimTrak, UltraLux & Pac-Drive
- OS: Windows XP stripped down using nLite
- Front End: MaLa
Abstract
Hello everybody,
My name is Michael, I live in Cyprus and I am a sys-admin by profession.
This is my second build after a restoration of an old cab back in 2005.
I decided on sharing the details for this latest arcade cabinet in case others might find the read useful or entertaining.
However, the real reason is to keep a record of the build process which for me, is actually more satisfying than finally owning the finished cabinet.
Work started in Nov 2010, with most of the electronics sourced in advance from various locations.
Finally finished the project in January 2011. Some minor work still has to be done with the user interface (a new custom Mala layout to replace the current basic one), however the cab is fully functional and is already paying out for all the effort by providing endless hours of fun.
And without further delay, here are some high resolution pics of the finished cab.
Scope
As you may have guessed from the category this is a Bartop/Countertop/Coffee-tabletop/Whichever-suits-you-besttop project.
The idea for a mini, compact, carry-around cabinet came mainly out of purely practical reasons. However, the real drive was curiosity as to whether the functionality and look and feel of a full sized cab could be successfully scaled down to a portable unit.
Additionally, growing up during the golden age of arcades, for me, any such game is by now an invaluable memory machine. And let us not forget that several of the old games continue to be extremely addictive and highly playable even by today's standards.
At this point I honestly could not resist linking to an amazing article I believe is definitely worth reading that can give some perspective to my nostalgic drive towards arcade games. “Flying Off the Screen: Observations from the Golden Age of the American Video Game Arcade” by Ernest Hilbert
To help me better visualise my concept I have used a CAD tool which on numerous occasions proved invaluable. See design section below.
Design
Some X-ray Pics!
CAD Software
As you may have guessed, its Google Sketchup.
Functionality
I chose to use only 4 player buttons in order to save control panel space. Also personally I prefer more simple games with less buttons. In any case with 4 buttons you can still play more than 90% of the Mame games in fact only excluding some 6-button fighting games.
A spinner/dial/paddle, was also included to allow playing of games like Arkanoid, or driving games which require an analog steering wheel.
Since I discovered more than 30 Mame Light Gun games, a light gun module was necessary... (I am afraid the test with Ultimarc's AimTrak module was not very satisfying as I could not get the reliability I was "aiming" for out of it, so it was temporarily dropped)
Start a game with a dedicated green button (with backlight) that can also double as a pause button while in game.
Quit a game with a dedicated red button (with backlight).
Also use backlit buttons for P1 start and Coin.
Ability to regulate sound volume via a knob. (Dropped during implemetation as I decided to avoid the mechanical complexity and use the software to do this by assigning shift-buttons and the joystick to do this)
Ability to connect external USB mouse, keyboard and even a secondary control panel for dual game play.
Ability to lock the cab so it can not be used without a physical key. (no child playing without permission...)
Design Steps
Here you can find the various cabinet components in the order that they were designed and incorporated into the Google Sketchup drawing.
Side Panels
Even though this was the first item to be drawn, it was also the most difficult because it provided the base for all the rest. The sidepanels would be constructed out of pine-wood 18mm thick.
Here I had to decide on the following:
- Width of the cabinet (based on the width of the monitor)
- Height of the control panel (based on the height of the controls)
- Overall height (based on the heights of control panel, monitor, marquee)
- Angle for control panel (based on tests using a cardboard moc-up)
- Angle for monitor (based on using my laptop as a moc-up device)
Main Panels
The whole cabinet would be held together by three 12mm panels out of MDF which would hold the two side panels firmly together.
One of the three panels was the control panel itself.
The top panel would have an opening to serve a dual purpose. Firstly as a hot air exhaust vent and secondly as a carrying handle.
Secondary Panels
The rest of the panels were to be constructed from 6mm MDF since they would not have to support any load.
The rear panel would have a circular opening to accept the 120mm fresh air cooling Fan. The Fan would create positive air pressure in the cabinet by drawing air in. The hot air would then be exhausted via the top main panel.
Internal Components
In order for my design to be accurate I measured up and drew as Sketchup components the monitor, the motherboard, the cooling fan and the speakers.
I left out the Power Supply since I intended to dismantle it. This way placing it will not be an issue.
These components allowed me to preview whether everything would fit and make any necessary adjustments to the overall dimensions well in advance of any actual woodworking.
Marquee and Screen Bezel
Nothing special for the design of these parts.
However during the construction I implemented some interesting methods to hold the Marquee and Screen Bezel in place.
Controls
Again designing the controls within Sketchup helped me find out if everything would fit within the cabinet.
Additionally I used Sketchup to accurately position the controls on the control panel as ergonomically as possible.
Support Bars
A very important part of the design was to obtain the dimensions for all the necessary pine-wood bars (18mm x 18mm) that would hold all the panels firmly together.
I needed the cabinet to be easily serviceable so I decided to use wood screws and glue the support bars to the side panels.
However all the rest of the panels would attach to the support bars via bolts and wood-insert nuts or T-nuts. The screws would be of the socket head type (allen key). This meant that with minimum effort the entire cabinet could be dismantled and re-assembled as many times as I wanted.
Color Scheme
Plain pine wood for the side panels, varnished with a clear wood varnish.
Pine has a natural tendency to turn orange-yellow as it ages so eventually it will blend beutifully with my choise of marquee.
I chose a greyish tone pattern for my CPO. By buying extra material I can cover the rest of the panels as well.
Marquee Art
The Marquee came from Game On Grafix along with the Control Panel Overlay (CPO) shown above.
Unfortunately the guys there could not cut a small enough piece of plexi for me so I had to get the plexi from local vendors.
Hardware
- Mini-ITX form factor Motherboard.
- Intel Atom CPU
- Solid State Disk Drive
- TFT screen
- Logitech Speakers
Computer Platform
I needed something with the following specs:
- Minimum moving parts (low maintenance, low MTBF).
- Low power consumption (less heat to dissipate).
- Small size (to fit in the cab).
- Quiet (low noise, better game sound)
- Powerful enough (to run the basic games that I enjoy most).
Motherboard
I went for the Intel D510MO mini-itx form factor (170mm x 170mm) for the following reasons:
1. Small size that would fit the cab and allow room for other components.
2. Ability for passive cooling. (no cpu fan, less noise)
3. Extremely low power consumption. (less heat in a wooden cab is a good thing)
4. Can happily run the majority of the mame games without additional hardware. (i.e. graphics cards)
Full specs here.
Memory
Kingston KVR800D2N5/1G
The motherboard supports two memory chips but one gig is more than enough for Mame.
Monitor
I needed a 4:3 aspect ratio monitor so that I could play both vertical and horizontal games without having to rotate the screen every time. I also needed the monitor to be of the LCD/TFT panel type in order to save space, heat and weight.
The problem is that nowadays you can not easily find 4:3 LCD screens since most of the new ones are wide-screen. So if you have one, charish it. Wide screen is not that good for Mame.
Samsung 15" TFT Panel (Syncmaster152T)
Great monitor. Excellent contrast. Had it lying around for the past 5 years and it seemed time I put it to good use.
Dismantling it was not very difficult and after doing so I discovered a hidden bonus. It seems with a VGA gender changer I can connect the motherboard almost directly to the monitor with no additional cable.
Another benefit is that the power supply is an external brick unit, thus the overall thickness of the monitor is very small.
The entire cabinet was designed based on the dimensions of this monitor. For example the internal width is just a few millimiters bigger than the monitor's width and the hight is also accordingly selected to just fit this monitor.
Power Supply
SL-500 Power Supply
This unit has a huge, very quiet 120mm Fan which I plan to place at the back of the cabinet.
But first I need to dismantle it...
Hard Drive
KINGSTON SNV125-S2/30GB SSDNOW V
Naturally I went for a Solid State Drive, because it is faster, noiseless, has lower power consumption and is almost indestructable.
Speakers
Logitech LS11
These tiny speakers have great sound quality and are easy to dismantle.
They also have the volume knob that I want.
USB Extender
This was simply pushed through a hole on the lower rear panel.
Through the motherboard you can only get 500mA which is often not
enough for connecting more than one peripherals,
so the USB extender was feeded with external power from the PSU 5V lines.
Marquee Lighting
I bought a USB attached notebook desk light which featured a small cold cathode tube. Very handy...
Power Feeds
The PSU was disassembled and mounted on the bottom panel.
The lower rear panel hosted the power inlet,
power switch and key switch and the necessary distribution connectors.
You can also see the power filter circuit.
Power Switch
Removed from a Samsung printer, this key interrupts both live
and neutral at the same time thus giving complete isolation.
It is also quite big and has a very nice switching feel.
Lock Key
No more playing, its study time...
Software
Nothing fancy here. Just running MaLa as a single shell application on a cut-down version of XP.
Operating System
I chose Windows XP simply because of the beutiful Mala Front End. Otherwise I could have used the Linux installation from my previous arcade.
In any case, even though I chose Windows I still used nLite to minimise the footprint of the installation. This way the OS would boot faster and consume less CPU during gaming.
I used nLite to:
- Slipstream SP3 into a Windows XP SP2 installation.
- Slipstream all the D510MO drivers (especially the ones for SATA disks)
- Slipstream all currently available security updates for XP.
- Remove several unneeded parts and functions of the OS
I then created a bootable USB stick containing my fresh XP setup files, plugged it into one of the usb ports and booted the system.
After that, it was a typical Windows installation. The installer detected my SSD drive thanks to the previously slipstreamed SATA drivers and believe it or not it was one of the fastest Windows installations I have ever seen (a few minutes...). This is mainly due to the speed of the SSD drive but also on the fact that I was installing from a USB 2 memory stick instead of a slower CD drive.
The problem was actually creating the bootable USB stick. I formatted the stick using NTFS and used specialised software to create a boot sector on the stick.
Emulator
Mame 32bit version 1.38
Front End
I have used the Mala Front End.
More work is definitely needed here in the form of better customizing the layouts.
Some issues with attaching additional controls were solved thanks to this guy. ControllerRemap Utility
Controls
All the controls were bought online from www.ultimarc.com.
Stick
The UltraStik 360 has no contacts or microswitches and can be used both as an analog and a digital stick.
It is USB attached to the computer and can also accept up to 8 button inputs so an additional button encoder is not necessary.
Buttons
After discovering that from Mala I can light up only the buttons relevant to the selected game, I went for Ultimarc's illuminated buttons for the entire panel. The number 4 button even though it is white it has a blue led beneath.
Rotary Dial
Ultimarc's SpintTrak is an amazing piece of hardwarel. Very responsive.
However I discovered that it does not play well in mame if you use the -triplebuffer option.
So for spinner games make sure you are not using the triplebuffer option.
Light Gun
I tried Ultimarc's AimTrak module which I mounted in a plastic toy gun. However I discovered that even with careful calibration the gun module is still not really reliable as a pointing device and seriously affects gameplay.
I will revisit this in the future to see if I can improve on anything...
Just ordered TopGun II from Play-Asia. Will evaluate and let you know.
Woodworking
The supporting bars were first screwed and glued to the side panels.
The other panels were then attached to the supporting bars via socket head (6mm or 5mm) screws via T-nuts or insert nuts.
Side Panels
- Templates
The template for the side panels was made out of 6mm marine ply wood.
- Ribs
Rear Panels
Control Panel
Screen Bezel
Marquee
For placing the marquee I eventually opened 6mm channels on the upper and lower marquee panels.