Skip to content

Releases: gildahl/arcadeVFE

arcadeVFE v.1.2.2

22 Oct 21:48
e622a4c

Choose a tag to compare

arcadeVFE v.1.2.2 updates

Update Instructions: If you are currently using version 1.2.0 or 1.2.1, make sure you have fully exited arcadeVFE, then install into the same folder and it will be upgraded. If you are using version 1.1 or earlier, it is strongly recommended that you remove the old version and do a new install of v1.2.2.

  • Added high scores to GameInfo for supported games.
  • Added MARQUEE Scorecard high score editor supporting all games.
  • Added official high score records to GameInfo where such records exist.
  • Player Initials field added to Initial Setup, used to highlight the player's initials in the high score tables.
  • Added support to change pages in GameInfo using motion controller (within a desktop portal) or mouse clicks on the right and left sides of the page.
  • Added some sound cues.
  • Backup now includes high score and rom files options.
  • Disable Settings screen while GameInfo is displayed to avoid side-effects.
  • Changed Vicinity combobox to an edit box to simplify its operation.
  • Moved Edit Directory preference to the top to improve its context.
  • Removed Beep on action user preference checkbox from Settings and made it a vfe.ini setting only (since it is really more of a debugging tool). Set BeepOnProfileChange to 1 or 0 to turn on/off (default is off).
  • (fixed) added missing metadata for xmen6pu rom (X-Men 2-screen version).
  • (fixed) progress bar failed to hide in GameInfo if a logo file was missing.
  • (fixed) space and enter keys no longer force a refresh of GameInfo.
  • (fixed) fixed Detana Twin Bee title in history.xml

arcadeVFE v.1.2.1

17 Sep 21:23
111f528

Choose a tag to compare

arcadeVFE v.1.2.1 updates

Update Instructions: If you are currently using version 1.2.0, make sure you have fully exited arcadeVFE, then install into the same folder and it will be upgraded. If you are using version 1.1 or earlier, it is strongly recommended that you remove the old version and do a new install of v1.2.1.

  • Added a Config Tools button/feature/dialog to Initial Setup to permit backup, restoration, reset, and patching of ATC *.cfg files.
  • Fixed issue with formatted text in GameInfo extending past margins and added improved section highlighting.
  • Better protect GameInfo from mouse clicks and related side-effects (such as formatting disappearing).
  • Fixed copy action not working for keyboard navigation actions.
  • Added ddragon and karnov base rom cross ref. Fixed kingdmgp.
  • Minor refinements made to user interface.
  • Other minor text and documentation tweaks.

arcadeVFE v.1.2.0

13 Sep 16:09

Choose a tag to compare

arcadeVFE v.1.2.0 updates

  • (Fixed) If you started arcadeVFE with Other selected as the arcade type, the software could crash when selecting a rom.
  • (Fixed) If you used GameInfo and then started a new machine in the arcade too quickly after starting the previous one (usually between 2 to 10 seconds), VFE could lose state and not operate with these machines anymore until a restart.
  • (Fixed) Similarly, state could be lost after performing a rom audit or copy, also requiring a restart to correct.
  • (Fixed) Added warning to restart the application when toggling the Operate only when arcade is running setting to avoid an indeterminate state.
  • (Fixed) Combo boxes were not re-initialized when switching from a controller device to a keyboard device resulting in possible wrong/unintended keyboard assignments being made to the action table.
  • (Fixed) Keyboard mapping did not permit combining keys with Ctrl, Alt, etc.
  • (Fixed) Removed redundant lower case letters from the Map a keypress option.
  • (Fixed) Copy ROMs function now copies \chd folders.
  • (Fixed) Clear the current rom when ATC exits to avoid side effects.
  • (New) A true Windows Installer is now used for setup instead of a zip file.
  • (New) Can now preview GameInfo directly from the Settings dialog.
  • (New) Added default GameInfo navigation key mappings.
  • (New) GameInfo's data/history now use more recent history.xml and mameinfo.dat files (version 0.208).
  • (New) Added a large number of new images corresponding to ATC roms.
  • (New) Provided a method to specify image order in GameInfo.
  • (New) Added formatting to the GameInfo text to make it easier to read.
  • (New) Now possible to use keyboard keypresses to GameInfo navigation actions (not just controller buttons).
  • (New) Added title splash screen at application startup.
  • (New) Added game logo to GameInfo startup.
  • (New) Added progress bar to GameInfo startup.
  • (New) Added the MAME version used by ATC for the rom above the rom list.
  • (New) Added new option to set the monitor that GameInfo uses.
  • (New) May set whether to hide the mouse curser for GameInfo in vfe.ini.
  • (New) Implemented a new plugins.ini file in the .\Config folder
  • (Improvement) RawAccel can now be referenced in situ using the new plugins.ini instead of forcing it to be installed as a subfolder.
  • (Improvement) GameInfo loads game data much more quickly now.
  • (Improvement) GameInfo now appends base rom information for export roms.
  • (Improvement) Show Directory option changed to Edit Directory.
  • (Improvement) Send discrete up/down events when mapping buttons to keypresses.
  • (Improvement) Added WS_EX_NOACTIVATE to GameInfo window to better protect from mouse clicks.
  • (Improvement) Limit image scaling for low res images in GameInfo to reduce pixelation/improve quality.
  • (Improvement) Tooltip help updates.
  • (Improvement) Added additional startup and exit logging and auditing.
  • (Improvement) Documentation updates.
  • (Improvement) Code stabilization, refactoring, and other bug fixes.

arcadeVFE v.1.1.0

30 Aug 12:59
e09cee1

Choose a tag to compare

arcadeVFE v.1.1.0 updates

  • Added a third command line config option.
  • Added game information overlay
  • Added initial setup dialog
  • Added rom auditing feature
  • Added rom copying feature
  • Added machine directory editor
  • Fixed some errors in the rom list and added rom information to the drop down
  • Added support for keypresses to be mapped to game controller buttons
  • Only display command columns in the action list if needed.
  • Reset profile load suppression on application exit.
  • Blocked running of null button actions which caused side effects.
  • Improved method of changing rom file access time to address locks on larger files.
    (caused profile switching to fail after playing large rom games)
  • Raised pitch of error double-beep (was hard to hear).
  • Beep on profile change off by default.
  • Error message enhancements.
  • Many bug fixes.

Background Game Profile Switcher (BGPS) - Version 1.0.0.0

30 Jul 19:57

Choose a tag to compare

Note that BGPS is a preview quality release. arcadeVFE will be its replacement once it is ready.

Summary

BGPS provides the ability to run game controller configuration software automatically in the background based on what game is being played in emulation, or manually by pressing buttons on a keyboard or game controller. The primary use case for this utility is to facilitate on-the-fly game profile switching when playing emulated MAME games in a VR arcade environment that does not offer the "run before" or "run after" capabilities of conventional front ends where this sort of thing is usually handled.

Tested Software

BGPS supports and has been tested successfully with the following software:

  • Arcade Time Capsule (fantastic MAME-based VR arcade and main tested target client of BGPS)
  • Virtual Controller (software to create virtual XInput controllers)
  • Ultimarc UltraMap (software to modify behavior of Ultimarc's UltraStik 360 joysticks)
  • RawAccel (software to adjust sensitivity of mouse/trackball controllers)

Command line templates for Virtual Controller and UltraMap are provided as default selections. You may, of course, modify these or add new ones for other software to suit your needs.

Installation

To install BGPS, extract the distribution zip file to a folder on your Windows computer that has read/write access. The folder can be called whatever you want. After installation, you should right-click on each *.dll and *.exe file, choose Properties, and then check the "Unblock" checkbox at the bottom and click apply.

When you run the executable (BGPS.exe), you will see a joystick icon in the Windows tray indicating normal background mode is active. Right clicking on this icon will show a menu of options. When running for the first time you will want to choose the "Settings..." option to configure the application.

Log

See the log.txt file in the \log subfolder if needed for troubleshooting. This log is overwritten at the start of every run. Two beeps will be sounded if an error is written to the file. When reporting any issues with BGPS, be sure to include the last log with your description of the problem.

Configuration

BGPS offers two different modes of operation. The first is a "ROM Monitor" mode that will execute actions whenever specified rom files are accessed. Since this mode provides full automation for game environments like ATC, there's a good chance that "ROM Monitor" mode may be the only mode you need.

The second mode provides the option to trigger command line actions manually when a game controller button or keyboard key is pressed. Both "ROM Monitor" and keyboard/button actions can be added to the action list in any combination.

ROM Monitor:

To setup a new rom to be monitored, choose "ROM Monitor" from the "Device List" list in the Settings screen, then ensure that the "ROM folder to monitor" field contains the name of the folder containing MAME rom files for your emulator. These must be in *.zip file format. Next, choose a rom from the "Choose ROM" list that you want to trigger an action and then use the "Profile name" and "Command line template" fields to configure the specific command line that should execute when that game is loaded. Finally, press the "Assign ROM" button to add the action to the "Action List".

Note If you choose "[Default]" as the rom, the command line action you define will be executed whenever a rom that was NOT otherwise configured is accessed by the emulator. When you use this option, be aware that BGPS is "smart" enough to not execute the same command line twice in a row. For example, if you switch between two games that use the same profile (such as two default games, or two rotary joystick games that use the same profiles), profile loading will be suppressed for the second since that profile should already be loaded.

Buttons and Key Presses:

To setup a manual action that will run upon a particular button or key press, Choose "Keyboard" or one of the game controllers from the Device List in the Settings screen. Next, use the "Profile name" and "Command line template" fields to configure the command line that will execute when the button or key is pressed. Finally, press the "Assign" button to choose the actual button or key you want to assign to the action and add it to the Actions list.

Voice Annunciation

If you would like BGPS to verbally annunciate an action when it is executed, you may add a phrase to the optional "Voice annunciation phrase" field. You can test the phrase to see what it will sound like by pressing the "Voice Test" button.

How to configure Profiles and Command Line Templates

Profiles are files that define specific game controller configurations such as Ikari.vcd for Virtual Controller, or 4-way.ugc for UltraMap. To make command line creation easier, you may specify the profile separately in the "Profile name" field, and then choose a command line template in the "Command line template" field. This template will typically contain one of the following field tags:

[profile_name] - will be replaced by the filename or contents of "Profile name" field
[profile_full_name] - will be replaced by the full path/file or contents of "Profile name" field

For example, if the profile is "C:\Ultrastik\Profiles\qbert.ugc" and the command line template is "C:\UltraMap\UltraMap.exe [profile_name]", then upon pressing the "Assign" button, the command line that will be assigned to the action will be "C:\UltraMap\UltraMap.exe qbert.ugc". If the full path to the profile is needed, then the command line template should be changed to "C:\UltraMap\UltraMap.exe [profile_full_name]. If the command line template has no field tags, then the command line will be used verbatim with no insertions.

Additional Notes:

  • To test a command line while still in the Settings screen, press the "Test" button next to the Command Line Template field. Hovering over the "Test" button with the Show Tooltips option turned on, will show the actual command line that will be executed.

  • If your profile filename needs quotes around it, then simply add quotes around the field tag in the template, such as "[profile_name]" or "[profile_full_name]".

  • If you wish to trigger two command lines in a single action, click on the checkbox next to "Profile name 2" and you can configure a second command line using a completely different profile and command line template. There will be a one second delay between the execution of the first and second action.

  • If you want to add a new template to BGPS that will persist across sessions, you can edit any of the built-in ones and then use the Add button. You may also delete any template you no longer want to see in the list. Note that whenever you do this both the "Command line Template" and "Command Line Template 2" lists will be synchronized to contain the same list of templates.

  • As an FYI, these templates are saved in a file called templates.json in the root BGPS folder. You may delete this file to restore the original shipping defaults.

  • Be aware that BGPS pauses active operation while the Settings screen is open, so be sure to close it when done with configuration.

Understanding the Action List Table

Each time you use the "Assign" button to create a new action, that action will be added to the Action List table. If you get a warning saying "Duplicate", BGPS will highlight the duplicate action in the list at which point you may keep it or delete it.

When you complete the table, press the "Save list" button to save it. It will be saved in the \user folder as a *.bgp file having the name specified in the "Activity list name" field above the table. By default this name is "Arcade Controller" (saved as "Arcade Controller.bgp"). If you switch between multiple controllers for use with your emulator, you could save different action lists under different names. These can then be loaded in the future by creating a shortcut that provides the name as a command line parameter when launching BGPS. For example,

BGPS.exe "Arcade Controller" or
BGPS.exe "Gamepad"

The Action list table contains the following columns:

Device List

The device or method that was chosen to trigger the action.

Action

  • For the "ROM Monitor" Device List, this column shows the rom you chose to monitor.
  • For the "Keyboard" Device List, it shows the keyboard key or key combo you assigned.
  • For a game controller, it shows the button number you assigned.

Sequence

For "Keyboard" and game controller actions, it is possible to assign multiple actions to the same key or button. The effect of this is that when you press that key or button the first time, the action with a sequence number of 1 will be triggered. When you press that same key or button a second time, the action with a sequence number of 2 will be triggered, and so forth (with each action being verbally annunciated if you provided an annunciation phrase with each). This provides a means to manually switch between multiple profiles using a single key or button.

Sequence numbers are assigned to each action automatically when you add the action. To change the auto-assigned sequence of an action, just use the "Move Up" and "Move Down" buttons and you will see the sequence number for that action adjust according to its position in the list. Note that for "ROM Monitor" actions, the sequence number will always be 1 (since these are fully automated actions that have no need for sequencing).

Annunciation

This is the annunciation phrase you assigned to the action.

Command

This is the command line template ...

Read more