Skip to content

alpgarcia/vpinball-bash-menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vpinball-bash-menu

Simple bash launcher for vpinball standalone.

Table of Contents

  1. Install
  2. Motivation
  3. Features
  4. Screenshots
  5. Alternatives
  6. Usage
  7. Additional Resources
  8. References & Ackowledgements

Install

Just clone the project or download menu.sh script and give it execution permission with chmod +x menu.sh.

See Usage section for details on how to run it.

Motivation

The goal of this project is providing a simple way of exploring and configuring my vpx collection.

The ideas behind it are:

  • List all vpx files within a directory (and all its subdirectories) in order to quickly visualize my collection.
  • List all ini files within a directory, so it is possible to launch any vpx file with different configurations. E.g. I have a setup with the table in one screen (portrait orientation) and the backglass + DMD in a separate screen, another one for a single secondary screen in portrait mode, and one more for a single screen in landscape mode).
  • Logs are printed in the console to quickly test the different configurations.
  • Launch tables avoiding to type once and again the same long and prone to errors command line.

Features

  • Show a list of all the vpx files found inside a customizable root path.
  • Select the ini file you want to use for launching the table among those found in a customizable root path.
  • Customize the number of items displayed at once on screen.
  • Show information about specific ini, directb2s, and vbs files stored in the same directory as the vpx file. A letter is shown for each one, colorized or greyed out depending on whether the file was found or not.

Screenshots

The following screenshots shows the process of launching a table:

Table selection menu Table selection menu

Alt text Ini selection menu

Alt text The Addams Family table being executed with a 3 screen setup: backglass, table and logs.

Alternatives

There are some good alternatives focused on different aspects and functionalities, I recommend you to try, at least, the following ones:

  • vpxtool by francisdb. A cross-platform console based utility written in Rust that provides a fancier front-end and a good set of utilities to deal with vpx files.
  • vpx. Bash script provided within the vpinball standalone and provides access to a wider set of VPinballX_GL command line parameters.

Usage

./menu.sh [ -t | --tables <TABLES_ROOT_DIR>] (default: $HOME/pinball/tables)
	  [ -i | --ini <INI_FILES_ROOT_DIR>] (default: $HOME/pinball/ini)
	  [ -e | --exe <VPINBALL_BINARY_PATH>] (default: $HOME/pinball/vpinball/build/VPinballX_GL)
	  [ -p | --page-size <NUMBER_OF_ITEMS_PER_PAGE>] (default: 20)
	  [ -h | --help ]

  • -t | --tables: path to our collection of vpx files. It may contain sub-directories. Defaults to ${HOME}/pinball/tables.
  • -i | --ini: path to the directory containing our ini files. It may contain sub-directories. Defaults to ${HOME}/pinball/ini.
  • -e | --exe: path to the vpinball standalone binary file. Defaults to ${HOME}/pinball/vpinball/build/VPinballX_GL.
  • -p | --page-size: number of items per page. Defaults to 20.
  • -h | --help: display usage text.

To change default values, just edit the bash script variables defined at the beginning.

Additional Resources

References & Ackowledgements

Code Related

About

Simple bash launcher for vpinball standalone

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages