Hi guys
I know there are a number of other threads covering this topic but none of the suggestions thus far has helped on my setup.
I assume this is the same for everyone. I have two U360s on my MAME. Q*bert defaults to the following setup on first launch:
Up - performs up/right
Down - performs down/left
Left - performs up/left
Right - performs down/right.
Obviously I want movement of the character to correlate to movement of the joystick, ie when he moves up/right when the joystick is moved up/right, not when the joystick is moved up.
First thing I tried was to set control options for "this game" where character up was an input of up/right, down was down/left etc, thus:
<?xml version="1.0"?>
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
<mameconfig version="10">
<system name="qbert">
<input>
<port tag="IN4" type="P1_JOYSTICK_RIGHT" mask="1" defvalue="0">
<newseq type="standard">
JOYCODE_1_YAXIS_DOWN_SWITCH JOYCODE_1_XAXIS_RIGHT_SWITCH
</newseq>
</port>
<port tag="IN4" type="P1_JOYSTICK_LEFT" mask="2" defvalue="0">
<newseq type="standard">
JOYCODE_1_YAXIS_UP_SWITCH JOYCODE_1_XAXIS_LEFT_SWITCH
</newseq>
</port>
<port tag="IN4" type="P1_JOYSTICK_UP" mask="4" defvalue="0">
<newseq type="standard">
JOYCODE_1_YAXIS_UP_SWITCH JOYCODE_1_XAXIS_RIGHT_SWITCH
</newseq>
</port>
<port tag="IN4" type="P1_JOYSTICK_DOWN" mask="8" defvalue="0">
<newseq type="standard">
JOYCODE_1_YAXIS_DOWN_SWITCH JOYCODE_1_XAXIS_LEFT_SWITCH
</newseq>
</port>
</input>
</system>
</mameconfig>
Of course this simply resulted in no joystick movements causing the character to move. So time for a trawl through the forums then! First port of call was this idea from u_rebelscum:
make mame use a "rotated 4-way" grid map (no other remapping needed).
I'd make a qbert.ini file and put one line in it. What the line says depends on which of the above two choices you use. I prefer the latter:
joystick_map 4444s8888..444458888.444555888.ss5.222555666.222256666.2222s6666.2222s6666
All this served to do was to make the character not move at all in spite of what joystick movements I tried - up/down/left/right or any diagonals (same as my original config - I did delete that CFG file before I tried this).
Next I found this CFG from Congui:
This is my cfg looks like:
<?xml version="1.0"?>
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
<mameconfig version="10">
<system name="qbert">
<input>
<port type="P1_JOYSTICK_RIGHT" mask="1" index="42" defvalue="0">
<newseq type="standard">
KEYCODE_6_PAD KEYCODE_2_PAD
</newseq>
</port>
<port type="P1_JOYSTICK_LEFT" mask="2" index="43" defvalue="0">
<newseq type="standard">
KEYCODE_8_PAD KEYCODE_4_PAD
</newseq>
</port>
<port type="P1_JOYSTICK_UP" mask="4" index="44" defvalue="0">
<newseq type="standard">
KEYCODE_8_PAD KEYCODE_6_PAD
</newseq>
</port>
<port type="P1_JOYSTICK_DOWN" mask="8" index="45" defvalue="0">
<newseq type="standard">
KEYCODE_2_PAD KEYCODE_4_PAD
</newseq>
</port>
</input>
<mixer>
<volume_multiplier final="256" final_max="2560" mixer="256" mixer_max="2560" />
</mixer>
</system>
</mameconfig>
Hope this helps.
This works to a level, ie the diagonals on the joystick work the way they should, however the unidirections also still work, ie, left will still go up/left, so if I go to hit down/left but accidentally don't do enough "down" the joystick picks it up as a left movement and I go up/left and die (again).
So what I need to know is, how can I use the four diagonals ONLY without the unidirections too?
Many thanks for any advice you can offer guys - cheers
