Build Your Own Arcade Controls Forum

Main => Software Forum => Topic started by: Shieldwolf on May 25, 2004, 07:32:06 pm

Title: why does ctrl file not take for some games?
Post by: Shieldwolf on May 25, 2004, 07:32:06 pm
I made a ctrl file which works great except on certain games.

Specifically SF games where for some reason button 4 on player 1 and button 3 on player to  are left defaulted to "none". My ctrl file has them marked and on all my other games they seem to work. I'm using noname mam exp commandline if it helps
Title: Re:why does ctrl file not take for some games?
Post by: Howard_Casto on May 25, 2004, 09:14:58 pm
Short answer... it's your fault.....

Ctrlr files work fine, there are no known bugs.... therefore it has to be user error.  

Also keep in mind that cfg files take priority over ctrlr files.... so if you've been monkeying with settings in-game.... delete your cfg file and see if that helps.  
Title: Re:why does ctrl file not take for some games?
Post by: Minwah on May 26, 2004, 04:37:33 am
I don't know what is wrong with your's Shieldwolf, but I have a similar problem: http://www.arcadecontrols.org/yabbse/index.php?board=3;action=display;threadid=19596

I don't seem to have any problems with digital controls afaik, as HC said try deleting your CFG files...
Title: Re:why does ctrl file not take for some games?
Post by: Howard_Casto on May 26, 2004, 03:33:02 pm
Heh, minwah, you have terrible luck.  You would run into the single bug in the ctrlr file structure.  Check your other thread, I explained it.  
Title: Re:why does ctrl file not take for some games?
Post by: Shieldwolf on May 27, 2004, 12:09:30 pm
HEY HOWARD

Take a look

the buttons that seem  not to show up are

player 1 button 4 ;
player 2 button 3 u

They come up as none on a lot of games, but I have it set up correctly.

#RCB

ctrlrname "rcb"

# If the game uses a trackball, paddle, dial, ad_stick or pedal input,
# include the mouse.ini input customization file

trackball_ini           mouse
paddle_ini              mouse
dial_ini                mouse
ad_stick_ini            mouse
pedal_ini               mouse

UI_CONFIGURE            "KEYCODE_TAB"
UI_ON_SCREEN_DISPLAY    "KEYCODE_TILDE"
UI_PAUSE                "KEYCODE_F1"
UI_RESET_MACHINE        "KEYCODE_"
UI_SHOW_GFX             "KEYCODE_"
UI_FRAMESKIP_DEC        "KEYCODE_"
UI_FRAMESKIP_INC        "KEYCODE_"
UI_THROTTLE             "KEYCODE_"
UI_SHOW_FPS             "KEYCODE_F11 ! KEYCODE_LCONTROL ! KEYCODE_LSHIFT"
UI_SHOW_PROFILER        "KEYCODE_"
UI_SNAPSHOT             "KEYCODE_"
UI_TOGGLE_CHEAT         "KEYCODE_"
UI_UP                   "KEYCODE_UP"
UI_DOWN                 "KEYCODE_DOWN"
UI_LEFT                 "KEYCODE_LEFT"
UI_RIGHT                "KEYCODE_RIGHT"
UI_SELECT               "KEYCODE_ENTER"
UI_CANCEL               "KEYCODE_ESC"
UI_PAN_UP               "KEYCODE_PGUP ! KEYCODE_LSHIFT"
UI_PAN_DOWN             "KEYCODE_PGDN ! KEYCODE_LSHIFT"
UI_PAN_LEFT             "KEYCODE_PGUP KEYCODE_LSHIFT"
UI_PAN_RIGHT            "KEYCODE_PGDN KEYCODE_LSHIFT"
UI_TOGGLE_DEBUG         "KEYCODE_"
UI_SAVE_STATE           "KEYCODE_"
UI_LOAD_STATE           "KEYCODE_"
UI_ADD_CHEAT            "KEYCODE_"
UI_DELETE_CHEAT         "KEYCODE_"
UI_SAVE_CHEAT           "KEYCODE_"
UI_WATCH_VALUE          "KEYCODE_"
UI_EDIT_CHEAT           "KEYCODE_"
START1                  "KEYCODE_5"
START2                  "KEYCODE_6"
START3                  "KEYCODE_7"
START4                  "KEYCODE_8"
COIN1                   "KEYCODE_1"
COIN2                   "KEYCODE_2"
COIN3                   "KEYCODE_3"
COIN4                   "KEYCODE_4"
SERVICE1                "KEYCODE_"
SERVICE2                "KEYCODE_"
SERVICE3                "KEYCODE_"
SERVICE4                "KEYCODE_"
TILT                    "KEYCODE_Minus"

P1_JOYSTICK_UP          "KEYCODE_UP"
P1_JOYSTICK_DOWN        "KEYCODE_DOWN"
P1_JOYSTICK_LEFT        "KEYCODE_LEFT"
P1_JOYSTICK_RIGHT       "KEYCODE_RIGHT"
P1_BUTTON1              "KEYCODE_G"
P1_BUTTON2              "KEYCODE_H"
P1_BUTTON3              "KEYCODE_J"
P1_BUTTON4              "KEYCODE_;"
P1_BUTTON5              "KEYCODE_L"
P1_BUTTON6              "KEYCODE_K"
P1_BUTTON7              "KEYCODE_'"
P1_BUTTON8              "CODE_NONE"
P1_BUTTON9              "CODE_NONE"
P1_BUTTON10             "CODE_NONE"
P1_JOYSTICKRIGHT_UP     "KEYCODE_"
P1_JOYSTICKRIGHT_DOWN   "KEYCODE_"
P1_JOYSTICKRIGHT_LEFT   "KEYCODE_"
P1_JOYSTICKRIGHT_RIGHT  "KEYCODE_"
P1_JOYSTICKLEFT_UP      "KEYCODE_"
P1_JOYSTICKLEFT_DOWN    "KEYCODE_"
P1_JOYSTICKLEFT_LEFT    "KEYCODE_"
P1_JOYSTICKLEFT_RIGHT   "KEYCODE_"
P2_JOYSTICK_UP          "KEYCODE_W"
P2_JOYSTICK_DOWN        "KEYCODE_R"
P2_JOYSTICK_LEFT        "KEYCODE_Q"
P2_JOYSTICK_RIGHT       "KEYCODE_E"
P2_BUTTON1              "KEYCODE_T
P2_BUTTON2              "KEYCODE_Y"
P2_BUTTON3              "KEYCODE_U"
P2_BUTTON4              "KEYCODE_I"
P2_BUTTON5              "KEYCODE_O"
P2_BUTTON6              "KEYCODE_P"
P2_BUTTON7              "KEYCODE_\"
P2_BUTTON8              "CODE_NONE"
P2_BUTTON9              "CODE_NONE"
P2_BUTTON10             "CODE_NONE"
P2_JOYSTICKRIGHT_UP     "KEYCODE_"
P2_JOYSTICKRIGHT_DOWN   "KEYCODE_"
P2_JOYSTICKRIGHT_LEFT   "KEYCODE_"
P2_JOYSTICKRIGHT_RIGHT  "KEYCODE_"
P2_JOYSTICKLEFT_UP      "KEYCODE_"
P2_JOYSTICKLEFT_DOWN    "KEYCODE_"
P2_JOYSTICKLEFT_LEFT    "KEYCODE_"
P2_JOYSTICKLEFT_RIGHT   "KEYCODE_"
P3_JOYSTICK_UP          "KEYCODE_F"
P3_JOYSTICK_DOWN        "KEYCODE_A"
P3_JOYSTICK_LEFT        "KEYCODE_S"
P3_JOYSTICK_RIGHT       "KEYCODE_D"
P3_BUTTON1              "KEYCODE_INSERT"
P3_BUTTON2              "KEYCODE_HOME"
P3_BUTTON3              "KEYCODE_PAGEUP"
P3_BUTTON4              "KEYCODE_DELETE"
P3_BUTTON5              "KEYCODE_END"
P3_BUTTON6              "KEYCODE_PAGEDN"
P4_JOYSTICK_UP          "KEYCODE_X"
P4_JOYSTICK_DOWN        "KEYCODE_V"
P4_JOYSTICK_LEFT        "KEYCODE_z"
P4_JOYSTICK_RIGHT       "KEYCODE_c"
P4_BUTTON1              "KEYCODE_/"
P4_BUTTON2              "KEYCODE_B"
P4_BUTTON3              "KEYCODE_N"
P4_BUTTON4              "KEYCODE_M"
P4_BUTTON5              "KEYCODE_,"
P4_BUTTON6              "KEYCODE_."
P1_PEDAL                "KEYCODE_"
P1_PEDAL_EXT            "KEYCODE_Y"
P2_PEDAL                "KEYCODE_"
P2_PEDAL_EXT            "KEYCODE_"
P3_PEDAL                "KEYCODE_RCONTROL"
P3_PEDAL_EXT            "KEYCODE_"
P4_PEDAL                "JOYCODE_4_BUTTON1"
P4_PEDAL_EXT            "KEYCODE_"

P1_PADDLE               "KEYCODE_LEFT | JOYCODE_1_LEFT"
P1_PADDLE_EXT           "KEYCODE_RIGHT | JOYCODE_1_RIGHT"
P2_PADDLE               "KEYCODE_D | JOYCODE_2_LEFT"
P2_PADDLE_EXT           "KEYCODE_G | JOYCODE_2_RIGHT"
P3_PADDLE               "KEYCODE_J | JOYCODE_3_LEFT"
P3_PADDLE_EXT           "KEYCODE_L | JOYCODE_3_RIGHT"
P4_PADDLE               "JOYCODE_4_LEFT"
P4_PADDLE_EXT           "JOYCODE_4_RIGHT"

P1_PADDLE_V             "KEYCODE_UP | JOYCODE_1_UP"
P1_PADDLE_V_EXT         "KEYCODE_DOWN | JOYCODE_1_DOWN"
P2_PADDLE_V             "KEYCODE_R | JOYCODE_2_UP"
P2_PADDLE_V_EXT         "KEYCODE_F | JOYCODE_2_DOWN"
P3_PADDLE_V             "KEYCODE_I | JOYCODE_3_UP"
P3_PADDLE_V_EXT         "KEYCODE_K | JOYCODE_3_DOWN"
P4_PADDLE_V             "JOYCODE_4_UP"
P4_PADDLE_V_EXT         "JOYCODE_4_DOWN"

P1_DIAL                 "KEYCODE_LEFT | JOYCODE_1_LEFT"
P1_DIAL_EXT             "KEYCODE_RIGHT | JOYCODE_1_RIGHT"
P2_DIAL                 "KEYCODE_D | JOYCODE_2_LEFT"
P2_DIAL_EXT             "KEYCODE_G | JOYCODE_2_RIGHT"
P3_DIAL                 "KEYCODE_J | JOYCODE_3_LEFT"
P3_DIAL_EXT             "KEYCODE_L | JOYCODE_3_RIGHT"
P4_DIAL                 "JOYCODE_4_LEFT"
P4_DIAL_EXT             "JOYCODE_4_RIGHT"

P1_DIAL_V               "KEYCODE_UP | JOYCODE_1_UP"
P1_DIAL_V_EXT           "KEYCODE_DOWN | JOYCODE_1_DOWN"
P2_DIAL_V               "KEYCODE_R | JOYCODE_2_UP"
P2_DIAL_V_EXT           "KEYCODE_F | JOYCODE_2_DOWN"
P3_DIAL_V               "KEYCODE_I | JOYCODE_3_UP"
P3_DIAL_V_EXT           "KEYCODE_K | JOYCODE_3_DOWN"
P4_DIAL_V               "JOYCODE_4_UP"
P4_DIAL_V_EXT           "JOYCODE_4_DOWN"

P1_TRACKBALL_X          "KEYCODE_LEFT | JOYCODE_1_LEFT"
P1_TRACKBALL_X_EXT      "KEYCODE_RIGHT | JOYCODE_1_RIGHT"
P2_TRACKBALL_X          "KEYCODE_D | JOYCODE_2_LEFT"
P2_TRACKBALL_X_EXT      "KEYCODE_G | JOYCODE_2_RIGHT"
P3_TRACKBALL_X          "KEYCODE_J | JOYCODE_3_LEFT"
P3_TRACKBALL_X_EXT      "KEYCODE_L | JOYCODE_3_RIGHT"
P4_TRACKBALL_X          "JOYCODE_4_LEFT"
P4_TRACKBALL_X_EXT      "JOYCODE_4_RIGHT"

P1_TRACKBALL_Y          "KEYCODE_UP | JOYCODE_1_UP"
P1_TRACKBALL_Y_EXT      "KEYCODE_DOWN | JOYCODE_1_DOWN"
P2_TRACKBALL_Y          "KEYCODE_R | JOYCODE_2_UP"
P2_TRACKBALL_Y_EXT      "KEYCODE_F | JOYCODE_2_DOWN"
P3_TRACKBALL_Y          "KEYCODE_I | JOYCODE_3_UP"
P3_TRACKBALL_Y_EXT      "KEYCODE_K | JOYCODE_3_DOWN"
P4_TRACKBALL_Y          "JOYCODE_4_UP"
P4_TRACKBALL_Y_EXT      "JOYCODE_4_DOWN"

P1_AD_STICK_X           "KEYCODE_LEFT | JOYCODE_1_LEFT"
P1_AD_STICK_X_EXT       "KEYCODE_RIGHT | JOYCODE_1_RIGHT"
P2_AD_STICK_X           "KEYCODE_D | JOYCODE_2_LEFT"
P2_AD_STICK_X_EXT       "KEYCODE_G | JOYCODE_2_RIGHT"
P3_AD_STICK_X           "KEYCODE_J | JOYCODE_3_LEFT"
P3_AD_STICK_X_EXT       "KEYCODE_L | JOYCODE_3_RIGHT"
P4_AD_STICK_X           "JOYCODE_4_LEFT"
P4_AD_STICK_X_EXT       "JOYCODE_4_RIGHT"

P1_AD_STICK_Y           "KEYCODE_UP | JOYCODE_1_UP"
P1_AD_STICK_Y_EXT       "KEYCODE_DOWN | JOYCODE_1_DOWN"
P2_AD_STICK_Y           "KEYCODE_R | JOYCODE_2_UP"
P2_AD_STICK_Y_EXT       "KEYCODE_F | JOYCODE_2_DOWN"
P3_AD_STICK_Y           "KEYCODE_I | JOYCODE_3_UP"
P3_AD_STICK_Y_EXT       "KEYCODE_K | JOYCODE_3_DOWN"
P4_AD_STICK_Y           "JOYCODE_4_UP"
P4_AD_STICK_Y_EXT       "JOYCODE_4_DOWN"

OSD_1                   "CODE_NONE"
OSD_2                   "CODE_NONE"
OSD_3                   "CODE_NONE"
OSD_4                   "CODE_NONE"

Title: Re:why does ctrl file not take for some games?
Post by: ErikRuud on May 27, 2004, 02:17:39 pm
You have not setup those cotrlr files correctly.

read the ctrlr.txt file ic mame/docs

P1_BUTTON4   "KEYCODE_;" should be "KEYCODE_COLON"

P1_BUTTON7   "KEYCODE_'" should be "KEYCODE_QUOTE"

P2_BUTTON7   "KEYCODE_\" should be "KEYCODE_BACKSLASH"

P2_BUTTON1  "KEYCODE_T should have a closing quote after the _T.  This is might be screwing up everything else following it in the file.

You also have a lot of keys assigned to"KEYCODE_".  I don't know what that is supposed to be, but it is not valid.
Title: Re:why does ctrl file not take for some games?
Post by: Howard_Casto on May 28, 2004, 04:45:31 pm
KEYCODE_  is VERY bad.....

programatically in mame, it says "create a generic input port for an external program to use and send ALL  keycode data through this port."  This is kept in place for joysticks that have more than 10 buttons, but what you are saying is "any keyboad key that's unlabeled" and there are more than one, which is confusing mame.  As you can imagine, all manner of crap happens when you do crazy stuff like that.  

Besides that, the ctrlr files don't exactly do a super job of filtering out bad inputs, so when you add them, there's no telling what mame will think you mean.  

Long story short, like I said before.... user error.  Reading is a good thing.  Asking questions before reading is a bad thing,  ;)
Title: Re:why does ctrl file not take for some games?
Post by: Shieldwolf on May 28, 2004, 04:56:24 pm
pay no attention to KEYCODE_ its not actually in mame I was changing then names for those keys which is why they are blank.
Thanks for helping on the others.
Title: Re:why does ctrl file not take for some games?
Post by: SirPoonga on May 31, 2004, 09:20:44 pm
It also might be that some games have the controls hard coded.,