mame/ctrlr/hotrod.cfg
Vas Crabb d4589e0b29 Input refactoring:
osd/modules/input, emu/inpttype.cpp: Made most default joystick
assignments supplied by input modules.  Input modules take available
controls into consideration when generating default assignments.

emu/inpttype.ipp: Added a separate "Back" UI input separate from Cancel.
You may want an easier to hit combination for moving to the previous
menu than for exiting or cancelling input.  They both default to Escape.

emu/inpttype.ipp: Added a UI Help control.  Currently only used by
analog inputs menu

emu/inpttype.h: Moved I/O port field type enum to its own header and
sorted UI controls so they appear in a more logical order.

ui: Don't use UI Select to restore defaults - people should be getting
used to the UI Clear input by now.  UI Select cycles multi-value items
instead.

ui/inputmap.cpp: Don't use immediate cancel to cycle between clearing
and restoring default assignment (use UI Clear instead).

osd: Reduced the number of files needing to include the dreaded emu.h.
Got some implementation out of headers.
2023-02-18 06:18:45 +11:00

139 lines
4.5 KiB
INI

<mameconfig version="10">
<system name="default">
<!-- HotRod input configuration file -->
<input>
<remap origcode="KEYCODE_UP" newcode="KEYCODE_8PAD" />
<remap origcode="KEYCODE_DOWN" newcode="KEYCODE_2PAD" />
<remap origcode="KEYCODE_LEFT" newcode="KEYCODE_4PAD" />
<remap origcode="KEYCODE_RIGHT" newcode="KEYCODE_6PAD" />
<port type="UI_UP">
<newseq type="standard">KEYCODE_UP OR KEYCODE_8PAD</newseq>
</port>
<port type="UI_DOWN">
<newseq type="standard">KEYCODE_DOWN OR KEYCODE_2PAD</newseq>
</port>
<port type="UI_LEFT">
<newseq type="standard">KEYCODE_LEFT OR KEYCODE_4PAD</newseq>
</port>
<port type="UI_RIGHT">
<newseq type="standard">KEYCODE_RIGHT OR KEYCODE_6PAD</newseq>
</port>
<port type="UI_SELECT">
<newseq type="standard">KEYCODE_ENTER OR KEYCODE_LCONTROL</newseq>
</port>
<port type="UI_MENU">
<newseq type="standard">KEYCODE_TAB OR KEYCODE_1 KEYCODE_3</newseq>
</port>
<port type="UI_BACK">
<newseq type="standard">KEYCODE_ESC OR KEYCODE_LALT OR JOYCODE_1_BUTTON2</newseq>
</port>
<port type="UI_CANCEL">
<newseq type="standard">KEYCODE_ESC OR KEYCODE_2 KEYCODE_4</newseq>
</port>
<port type="UI_CLEAR">
<newseq type="standard">KEYCODE_DEL OR KEYCODE_SPACE OR JOYCODE_1_BUTTON3</newseq>
</port>
<port type="UI_HELP">
<newseq type="standard">KEYCODE_F1 OR KEYCODE_LSHIFT OR JOYCODE_1_BUTTON4</newseq>
</port>
<port type="START1">
<newseq type="standard">KEYCODE_1</newseq>
</port>
<port type="START2">
<newseq type="standard">KEYCODE_2</newseq>
</port>
<port type="COIN1">
<newseq type="standard">KEYCODE_3</newseq>
</port>
<port type="COIN2">
<newseq type="standard">KEYCODE_4</newseq>
</port>
<port type="START3">
<newseq type="standard">KEYCODE_5</newseq>
</port>
<port type="START4">
<newseq type="standard">KEYCODE_6</newseq>
</port>
<port type="P1_JOYSTICK_UP">
<newseq type="standard">KEYCODE_8PAD</newseq>
</port>
<port type="P1_JOYSTICK_DOWN">
<newseq type="standard">KEYCODE_2PAD</newseq>
</port>
<port type="P1_JOYSTICK_LEFT">
<newseq type="standard">KEYCODE_4PAD</newseq>
</port>
<port type="P1_JOYSTICK_RIGHT">
<newseq type="standard">KEYCODE_6PAD</newseq>
</port>
<port type="P1_JOYSTICKRIGHT_UP">
<newseq type="standard">KEYCODE_R</newseq>
</port>
<port type="P1_JOYSTICKRIGHT_DOWN">
<newseq type="standard">KEYCODE_F</newseq>
</port>
<port type="P1_JOYSTICKRIGHT_LEFT">
<newseq type="standard">KEYCODE_D</newseq>
</port>
<port type="P1_JOYSTICKRIGHT_RIGHT">
<newseq type="standard">KEYCODE_G</newseq>
</port>
<port type="P1_JOYSTICKLEFT_UP">
<newseq type="standard">KEYCODE_8PAD</newseq>
</port>
<port type="P1_JOYSTICKLEFT_DOWN">
<newseq type="standard">KEYCODE_2PAD</newseq>
</port>
<port type="P1_JOYSTICKLEFT_LEFT">
<newseq type="standard">KEYCODE_4PAD</newseq>
</port>
<port type="P1_JOYSTICKLEFT_RIGHT">
<newseq type="standard">KEYCODE_6PAD</newseq>
</port>
<port type="P1_BUTTON1">
<newseq type="standard">KEYCODE_LCONTROL OR JOYCODE_1_BUTTON1 OR MOUSECODE_1_BUTTON1</newseq>
</port>
<port type="P1_BUTTON2">
<newseq type="standard">KEYCODE_LALT OR JOYCODE_1_BUTTON2 OR MOUSECODE_1_BUTTON3</newseq>
</port>
<port type="P1_BUTTON3">
<newseq type="standard">KEYCODE_SPACE OR JOYCODE_1_BUTTON3 OR MOUSECODE_1_BUTTON2</newseq>
</port>
<port type="P1_BUTTON4">
<newseq type="standard">KEYCODE_LSHIFT OR JOYCODE_1_BUTTON4</newseq>
</port>
<port type="P1_BUTTON5">
<newseq type="standard">KEYCODE_Z OR JOYCODE_1_BUTTON5</newseq>
</port>
<port type="P1_BUTTON6">
<newseq type="standard">KEYCODE_X OR JOYCODE_1_BUTTON6</newseq>
</port>
<port type="P2_BUTTON1">
<newseq type="standard">KEYCODE_A OR JOYCODE_2_BUTTON1</newseq>
</port>
<port type="P2_BUTTON2">
<newseq type="standard">KEYCODE_S OR JOYCODE_2_BUTTON2</newseq>
</port>
<port type="P2_BUTTON3">
<newseq type="standard">KEYCODE_Q OR JOYCODE_2_BUTTON3</newseq>
</port>
<port type="P2_BUTTON4">
<newseq type="standard">KEYCODE_W OR JOYCODE_2_BUTTON4</newseq>
</port>
<port type="P2_BUTTON5">
<newseq type="standard">KEYCODE_E OR JOYCODE_2_BUTTON5</newseq>
</port>
<port type="P2_BUTTON6">
<newseq type="standard">KEYCODE_OPENBRACE OR JOYCODE_2_BUTTON6</newseq>
</port>
</input>
</system>
</mameconfig>