Build Your Own Arcade Controls Forum
Main => Main Forum => Topic started by: arcadebox on January 18, 2006, 05:59:46 pm
-
Hi, guys! ;)
I'm new in this message board, but I
builded some things for mame and others.
I'm an computer engineering student
and recently I started to buid an ZX spectrum clone,
and a year ago I builded some controllers for mame/others.
I'm now building an 8way to 4way joystick because I like to
play in pacman/mspacman and it is a pain in the ass playing
it with a normal stick, so I'm designing a circuit that filters
the diagonal moves.
I leave here the block diagram of it:
(http://arcadebox.no.sapo.pt/block-diagram.GIF)
It isn't completed yet, but I just wonder if it's a good idea?
Thanks in advance, and sorry for the bad english :angel:
-
If you're using MAME then there's no point as MAME can do the same thing in software.
-
Can , how?
-
You can block diagonal inputs in mame using the "not" when defining a control.
http://www.mame.net/mamefaq.html#h03
You just need to set mame up so Up registeres Up but not left or right. Right registers right but not up or down. That way if you push up-right nothing should register.
-
I saw many controllers/cabinets from some guys
that have a dedicated 4way stick for this type of games.
-
Thanks guys
-
Hi, guys! ;)
I'm new in this message board, but I
builded some things for mame and others.
I'm an computer engineering student
and recently I started to buid an ZX spectrum clone,
and a year ago I builded some controllers for mame/others.
I'm now building an 8way to 4way joystick because I like to
play in pacman/mspacman and it is a pain in the ass playing
it with a normal stick, so I'm designing a circuit that filters
the diagonal moves.
I leave here the block diagram of it:
(http://arcadebox.no.sapo.pt/block-diagram.GIF)
It isn't completed yet, but I just wonder if it's a good idea?
Thanks in advance, and sorry for the bad english :angel:
It won't help at all as pacman doesn't accept diagonal inputs anyway. Some have tried to do this in software without a lot of success. The problem is what do you convert a diagonal as. You can't just throw it away as that's definately wrong. If you push NE did you mean N or E? Iirc there was some success with using the last valid input, but that's not always correct either.
The original pacman stick was mechanically restricted, if you don't restrict it it's not going to feel right.
-
I saw many controllers/cabinets from some guys
that have a dedicated 4way stick for this type of games.
That's because electronic restriction (filtering out the diagonals), whether you do it with a circuit or with software, doesn't provide the results you want it to. The problem is, you leave huge dead spaces in your stick, where you can be pushing the handle but the game recieves no data, just as if you had let go of the stick and let it sit in the centered position. A true 4-way has the same dead spaces, but you are mechanically prevented from pushing the handle there- instead, you are guided into whichever of the 4 cardinal directions you are trying to hit in the first place.
-
Your basic idea has already been incorporated in MAME in software in two different ways. Let's assume you are moving from Right to Up.
In Method 1 - MAME switches from Right to Up as soon as the Up microswitch activates.
In Method 2 (which I think is the current version) - MAME switches from Right to Up as soon as the Right microswitch RELEASES.
The problem is in either case, MAME sometimes guesses wrong, so you can't get the same accuracy and feel that you get from a more accurate stick like a restricted 4-way or an analog or 49-way stick.
-
That's all true. I designed a similar circuit years ago and even got it going in a discrete logic emulator and bought the chips to make it happen.....
.....but then types told me about the NOT logic in MAME and I went that route, for awhile.
I finally ended up chaging my 8ways out for 4ways in my cocktail cab.
-
The type of restriction that I was thinking was the 2nd method that you describe,
when the stick hit an diagonal it maintain the last move, when this move goes off,
the circuit will aquire an new move (non-diagonal), when you make an diagonal the
first switch that goes on is that sets the move.
-
The type of restriction that I was thinking was the 2nd method that you describe,
when the stick hit an diagonal it maintain the last move, when this move goes off,
the circuit will aquire an new move (non-diagonal), when you make an diagonal the
first switch that goes on is that sets the move.
But this is built into MAME, so the only thing you are gaining is possible increased accuracy in 4-way games with non-MAME emulators.
-
I personally did not want to reset all my 4-way games to have those specific mappings ... (ie: there are too many 4-way games to map individually).
What I decided to do was to simply use an 8-way joystick but instead of mounting it thru a 1-1/8" circle, I mounted the joystick shaft through a diamond shape I cut in my control panel. This restricts the movements to 4-way guranteed since you can not even move the joystick into the corners anymore.
Of course to do this, then you can not use that 8-way joystick for 8-way games. It is basically a 4-way dedicated. I had enough space on my control panel, so having a dedicated 4-way was no problem for me .... but might not work for you .... just thought I would mention it.
-
The type of restriction that I was thinking was the 2nd method that you describe,
when the stick hit an diagonal it maintain the last move, when this move goes off,
the circuit will aquire an new move (non-diagonal), when you make an diagonal the
first switch that goes on is that sets the move.
But this is built into MAME, so the only thing you are gaining is possible increased accuracy in 4-way games with non-MAME emulators.
This is built into MAME WITHOUT remapping controls . . . You can map MAME so Up is Up-Not Right-Not Left, etc, but this just means MAME will ignore the diagonals, but if the game is set up to use a 4-way stick, MAME ignores the diagonals by default, so this isn't required and doesn't help you.
The code section was called sticky mode and fast sticky mode.
The only time the UP-Not Right-Not Left code helps is in rotated 4-way games like Q-bert using a standard 8-way stick. Here MAME assumes that the actual game uses a true 4-way with the cardinal directions rotated 45 degrees - if you want to use a standard stick, you have to map to the diagonals only, in this case:
UP-RIGHT (NOT UP, NOT RIGHT)
UP-LEFT (NOT UP, NOT LEFT)
DOWN-RIGHT (NOT DOWN, NOT RIGHT)
DOWN-LEFT (NOT DOWN, NOT LEFT)
-
I tested the last version of mame with pacman and
now it is much more acceptable, without any modifications.
The reason that I needed a circuit like that is because I'm
designing an bartop machine with a 2player CP , and
like you imagine it will be short in space so mouting an
extra 4way stick just for this games was impracticable.
Something like this:
(http://arcadebox.no.sapo.pt/060121_234131.jpg)
Thanks
-
There's always top-swichable joysticks such as the Prodigy from www.groovygamegear.com or the Mag-Stick Plus from www.ultimarc.com
-
Yes that type of joy is Ok,
but I have already 2 Happs competition.
like this:
(http://www.happcontrols.com/images/50/50607016_color.jpg)
and +- 20 happ buttons,
and right now I'm short in money :( :(
thanks for the tips ;)
-
You can block diagonal inputs in mame using the "not" when defining a control.
http://www.mame.net/mamefaq.html#h03
You just need to set mame up so Up registeres Up but not left or right. Right registers right but not up or down. That way if you push up-right nothing should register.
Were these configuration "switches" always available in Mame or were they included in one of the newer releases? (I'm using .036)
-
You can block diagonal inputs in mame using the "not" when defining a control.
http://www.mame.net/mamefaq.html#h03
You just need to set mame up so Up registeres Up but not left or right. Right registers right but not up or down. That way if you push up-right nothing should register.
Were these configuration "switches" always available in Mame or were they included in one of the newer releases? (I'm using .036)
AND sequences were added in R36B12, OR and NOT sequences in R36B13, so R36 Final should have them and be okay. You might need to look through the readme or whatsnew for how to set them up though, I think it was a double-press to set a NOT sequence, but the readme should say.
-
In the actual version (103) you set the button configuration, and
hit one time the key that you want, and
hit two times the key that you don't want ,
all in the same combo.
If you have a joystick repeat the same thing for it.
or means 2 or more diferent combos
and means simultaneous keys/buttons
not means negation to a key/button
-
I recently (yesterday) I tested different types of configurations in mame for
the 4way games with an 8way stick,
and I found interesting results:
- In the default configuration of mame(103) when I hit an diagonal the pacman
moves to the last direction that have been switched, so, some times the
pacman moved to strange directions, but if I maintain the stick pressed it
moved better.
- Now I negate diagonal moves in button configuration and I found that
when I hit an diagonal the pacman don't do anything , so caused many
stops on the corners :(
Conclusion:
None of this configurations are satisfactory for hardcore players, like me.
So, two things can be done:
- Use an 4 way stick (many made that)
- find an solution.
PS: Sorry for the bad english :(