Other configurations

Game names -> rom names matching

On different emulators, game names:

    • 1. match relevant .rom file name (ex.: Super Mario Land [EU].zip => “Super Mario Land [EU]”): setting parameter

      list_type                               0

      game names will be retrieved according to rom names.

       

    • 2a. don’t match relevant .rom file name (ex. alibaba.zip => “Ali Baba and 40 Thieves”): M.A.M.E. case

setting parameter

list_type                               1

complete game names are retrieved from xml data generated by mame.exe, with no additional file.

 

  • 2b. don’t match relevant .rom file name (ex. lair.txt => “Dragon’s Lair european version”): case of other emulators
  • In case of other emulators (es. Daphne) which require a specific rom name, not adequated to be displayed in FEEL lists, set parameters

    list_type                               0
    nms_file                               [.nms file name]

    A textfile with .nms extension (ex. daphne.nms) will be saved in the rom path, with the following structure:

    [game name] | [rom name without extension]

    Example of .nms file:

    Dragon’s Lair european version|lair
    Dragon’s Lair II|lair2
    Space Ace|ace…

    in this way in frontend lists complete game name will be displayed (ex. “Dragon’s Lair european version”), but emulator command line will be composed with the correct game name requested be the emulator (in the ex. “lair”).


Keyboard re-mapping options

In the (typical in a home arcade-cabinet) case of using an arcade dashboard as frontend’s unique controller configuring a large number of installed emulators, keyboard re-mapping can be useful (assignment of a keypress to another key).

Using parameter

 input_mapping

it is possible to make keyboard commands sent to a specific emu, when run, are “filtered” and replaced by other commands, which will receive only the keypress of the fitered key.

Re-mapping format is

[input keyboard sequence] :: [output keyboard sequence]

Esempio di configurazione:

input_mapping                           LAlt::L, Space::V

These settings are useful for:

  • ridefine a specific keyboard sequence (ex.: ESC) to close an emu accepting a specific command only (ex.: LAlt-F4)
  • cancel a unvoluntary keypress of emu command keys (ex.: LAlt, key 2 of Player1 on MAME, on some emu opens program menu locking game, etc.)
  • replace not needed commands with specific emu requested ones (ex.: on home computer emu, it’s usually requested to press keys such as F1, F3, Y/N, etc., usually not available on common dashboard commands)

 

It’ even possible, using “+” operator, replace a single key key-press with more than one keys on output.

Example:

input_mapping                           Esc::Lalt+F4

 

This capability is very useful using Windows games/apps, which usually accept Alt+F4 sequence as Close command: re-mapping Esc key with Alt+F4 sequence, they can be closed with the same key as MAME, cuncurring to the dashboard commands’ consistency.

 

 

 

Re-mapping keyboard commands complete list

# A … Z
# 0 … 9
# LAlt           = Left Alt
# LControl, LCtrl = Left Control
# RControl, RCtrl = Right Control
# LWin           = Left Windows
# RWin           = Right Windows
# Tab             = Tab key
# Space           = Spacebar
# Backspace       = Backspace
# Enter, Return   = Enter
# Pause           = Pause
# Escape, Esc     = Esc
# PageUp         = Page Up
# PageDown       = Page Down
# End             = End
# Home           = Home
# Insert, Ins     = Ins
# Delete, Del     = Del
# NumPad0 … 9   = NumPad keys
# Multiply       = *
# Add             = +
# Subtract       = –
# Divide         = /
# F1..F12         = Function keys
# None           = No key (useful to totally disable a keypress)

 

 

NOTE: keyboard re-mapping is based on DirectInput and so DOESN’T WORK on emulator reading keyboard in “RAW” mode.

Statistically speaking, there are very few cases: the most known one is MAME in its plain version.

Mame can be anyway made compatible with a simple code fix, and exe recompile. In particular, you will want to activate FORCE_DIRECTINPUT option in this sourcefile:

http://mamedev.org/source/src/osd/windows/input.c.html

Rom-specific configuration through .ini file list

Another degree of customization is .ini file (one per rom) list mode, which allows to customize config parameters at single rom/game level.

Setting at emulator level (ex.: mame.ini) parameters

list_type                               2
rom_extension                           ini
rom_path                               [.ini file list path]

(i.e.: list_type 2 = .ini file list), it will be possible to set all launch the single rom with specific run parameters, suche as custom commandline, pre and post-emulator commands (mount/unmount drive images etc.), keyboard remapping, others:

pre_emulator_app_commandline
pre_emulator_app_arguments
emulator_commandline                 [exe game commandline]
emulator_arguments                   [optional parameters]
emulator_nodosbox                     1
post_emulator_app_commandline
post_emulator_app_arguments
input_mapping                         [keyboard re-mappings]

Leave a Reply


*