26 April 2020

Standalone Spinner for MAME - The one and only How-To!

Arkanoid ... finally!

Arkanoid was very popular amongst us youngsters. I was one those that managed all 100 levels, but certainly not with just one coin. I also think that this was just manageable in the cocktail table version due to the stamina and focus required for this difficult game. We typically used to take the challenge by two, so that after dying, you could relax a bit while the other guy plays, and that worked out quite well.

A spinner for MAME has always been in my plans simply because of Arkanoid. But I always hesitated because I wanted a standalone spinner (for reasons stated below), while basically all online instructions relate to integrating a spinner into your overall arcade control panel.

Now, finally, it is there and works just perfectly.

My prototype with cardboard. As you can see, very decent styling.
I might even stick with the cardboard version because it works so well.

Why a Standalone Spinner?

Serious Gameplay: First and foremost, you need a standalone spinner for playing games such as Arkanoid seriously. I need sufficient space to rest my palms. Without these focused controls, I cannot imagine a successful gameplay. I am even undecided whether I will spin with the left hand or the right hand, so I will rotate the controller from time to time.

No Cabinet/Convenience: As said, the only acceptable cabinet for Arkanoid would be a cocktail table like this one with standalone controls. I tried Arkanoid once or twice on a regular stand-up cabinet, and this does not work out for me. And I cannot see a project for a cocktail table evolving at any time soon :-))).

I think we played on a table like that one with vertical controls.
Speaking of joysticks - I am converted to modern joypads. While I do have the 8bitdo Arcade Stick, the PS4 joypad is my favourite gaming device for old MAME games as well.

So ... finally, here are full instructions for building a standalone MAME spinning device.

Ingredients and Assembly

Ultimarc SpinTrak: The entire gaming community is fine with that one, and I fully agree.
https://www.ultimarc.com/trackballs-and-spinners/spinners/spintrak/
If you are in Europe, it is very nice to purchase it here:
https://www.arcadeworlduk.com/products/SpinTrak-Arcade-Spinner.html
Don't forget to purchase the knob separately. Since weight matters here, I went for the regular heavy knob (see the picture of the spinner below).
For a standalone project, the included USB adapter is the outstanding element: With that one, SpinTrak works like a mouse on your Mac/PC, just out of the box.

Connection of spinner to USB adapter: Already in this point the manufacturer's documentation is virtually non-existent. Fortunately Mavericks Arcade comes to the rescue - many thanks!
https://www.youtube.com/watch?v=tDCAc-63rFk&t=463s
In words: As you can see there, you connect the spinner on the top of the adapter, and here are only four pins (see minute 6.25 of his video). The spinner connector has also one missing pin, so you match the connector in that way that the missing pin on the spinner is where there is no pin on the USB adapter.

Immediately check: Plug the USB cable into your Mac/PC and spin -> your mouse pointer should move left/right. That's it for the spinner!

Daisy Chain Harness: For the wiring of the buttons, a daisy chain harness has a major advantage, as I will explain below.




Two Japanese-style Arcade Buttons: Three of the five pins in the lower row of the USB adapter are designed to work as two mouse buttons. Here was where I struggled most as a rookie in electronic wiring, but eventually it worked out quite easily.

Japanese-style arcade buttons have just two connectors, and you cannot mix them up. I went for these beautiful buttons from Seimitsu:
https://www.arcadeworlduk.com/products/seimitsu-ps-14-kn-c-arcade-button-with-kanji-logo.html

Beautiful Seimitsu Buttons!

First, let's take a look at the USB adapter: You need three pins of the five, whereas COM is located below the missing pin on the upper side - don't mix up here, I did!! LEFT stands for the first button, and RIGHT for the second button.
As presented by Ultimarc
Ultimarc just tells you the following: "The COM connection of both switches should be connected to COM and the normally-open connection of each switch to the LEFT or RIGHT pin." After a lot of trial&error, let me translate this to you:


  • First Arcade Button: one connection goes into COM, whereas the other connection goes into LEFT
  • Second Arcade Button: one connection goes into the same COM, whereas the other connection goes into RIGHT

Remember, it does not matter which of the button connections you use for COM, but at least I used the same connector on both buttons to be on the safe side.

Since there is one COM/Ground connector, I used three connectors of the daisy chain to connect in the following sequence: 1. First Button -> 2. COM -> 3. Second Button. The other two connections from button to LEFT and RIGHT are single connections and separated from each other. That is it!

The essential picture: Connect COM in a row of three, LEFT and RIGHT both separately.
Be careful: This assembly is not final!
Again testing: You can easily check whether you did it right. Plug the assembly into USB, and one button should trigger a left mouse click, the other the right mouse click.

Recommendation - Cardboard Prototype: I chose to make a cardboard prototype first because I might want a different size or a different placement of the controls. Consider that the spinner needs approximately 7 cm space in the box below the surface. I went for a large cardboard to have more rest for my palms.

For installing spinner and buttons, you need to disassemble the wiring. Don't forget the assembly rings, of spinner and buttons (on the above photo, these rings are removed!). With these assembly rings you, fix the controllers from below, after you have put the controls into the holes from above. This works very nicely with cardboard as well!

Spinner and Buttons assembled in cardboard holes and already fixed with the rings from below.
Connections to USB adapter still very loose.

Finally, when all is set and done and working, isolate all USB adapter connections: This USB adapter is rather fragile, and during my testing, I harmed the USB connection in a careless moment, but it still works. So as soon as you are confident with your cabling and everything works as expected, I recommend that you put insolation tape over all connections, so that they stay stable. Soldering would only be an option if you are in a permanent environment.

Stabilizing connections with isolation tape.

Software Configuration for MAME

Pre-configuring mame.ini

As you know from my other posts, I am a fan of editing options in the text editor. What you have to check there is minimal:

#
# CORE INPUT OPTIONS
#
mouse                        1
multimouse                1

For Arkanoid, please clearly consider:

#
# OSD VIDEO OPTIONS
#
waitvsync                   1

If you (like me) have not waitvsync activated by default, this would come into a clone of mame.ini called arkanoid.ini.

In my experience, waitvsync considerably smoothens the speed of the ball while playing, especially in high speed.


Configuring the Trackball and the Buttons in MAME

The next steps are made inside of MAME, best by launching Arkanoid.

1. Press TAB for the in-game menu.
2. Head for Input (General), then Player 1 Controls
3. Scroll all the way down to Paddle Analog (don't mix up with the Pedal settings!), press Return, now move the Spinner left and right, and MAME should assign correctly.
Spinner correctly assigned to "Paddle Analog"
4. Assign the two Buttons to Fire 1 and whatever else. Note that they are assigned as Mouse Buttons!

Final step: Adjusting Spinner Sensitivity

It is very important that you immediately adjust the sensitivity. In MAME Arcade 0.220, the default sensitivity is with 30, which is far too low for Arkanoid.

1. Start Arkanoid again and press TAB for the in-game menu.
2. Head for Analog Controls
3. Adjust Dial Sensitivity




I am currently experimenting at values between 50 and 60, which work best for me.

This concludes the configuration, and you are ready to play. This how-to became quite lengthy for a good reason, all this information is searchable in the internet, but you need to put all bits and pieces together. So that should really cover everything.

First impressions:

I can only speak for Arkanoid, and here the experience is perfect. The spinner has exactly the feel of the arcade machine. On the software side, waitvsync and sensitivity are really key, it is worth testing here.

Well, and otherwise I am wondering whether I will ever be able to reach the skills of the old times, at least half of it. I am still not used to a vertical monitor with Arkanoid, so let's see. But otherwise, the entire venture was definitely worth the efforts!

Any feedback is much appreciated.











No comments:

Post a Comment

Any comments are welcome!