Go to the first, previous, next, last section, table of contents.

# 8 Platform-specific features

This section lists the settings and commands that are platform specific.

## 8.1 AmigaOS-specific features

This section lists the settings and commands that are common and specific to all Amiga based platforms (this includes AmigaOS3, AmigaOS4, Morphos and AROS), and are thus not present in other platforms.

### 8.1.1 Amiga (AmigaOS3/AmigaOS4/MorphOS/AROS) specific resources

`InitialDefaultDir`
  String specifying the initial default directory, which is used by the generic file browser dialog.
`InitialTapeDir`
  String specifying the initial tape directory, which is used by the tape image file browser dialog (all emulators except xscpu64, x64dtv and vsid).
`InitialDiskDir`
  String specifying the initial tape directory, which is used by the disk image file browser dialog (all emulators except vsid).
`InitialAutostartDir`
  String specifying the initial autostart directory, which is used by the autostart image file browser dialog (all emulators except vsid).
`InitialCartDir`
  String specifying the initial cartridge directory, which is used by the cartridge image file browser dialog (all emulators except x64dtv and vsid).
`InitialSnapshotDir`
  String specifying the initial snapshots directory, which is used by the snapshots file browser dialog (all emulators except vsid).
`FullscreenEnabled`
  Boolean to enable/disable fullscreen mode.
`StatusBarEnabled`
  Boolean to enable/disable the statusbar.
`SaveResourcesOnExit`
  Boolean specifying whether the emulator should save changed settings before exiting. If this is enabled, the user will be always prompted first, in case the settings have changed.
`ConfirmOnExit`
  Boolean specifying whether to show a confirmation dialog on exit.

### 8.1.2 Amiga (AmigaOS3/AmigaOS4/MorphOS/AROS) specific command-line options

`-initialdefaultdir <Name>`
  Select the initial default directory for the file browser dialog (`InitialDefaultDir`).
`-initialtapedir <Name>`
  Select the initial tape images directory for the file browser dialog (`InitialTapeDir`) (all emulators except xscpu64, x64dtv and vsid).
`-initialdiskdir <Name>`
  Select the initial disk images directory for the file browser dialog (`InitialDiskDir`) (all emulators except vsid).
`-initialautostartdir <Name>`
  Select the initial autostart directory for the file browser dialog (`InitialAutostartDir`) (all emulators except vsid).
`-initialcartdir <Name>`
  Select the initial cartridge images directory for the file browser dialog (`InitialCartDir`) (all emulators except x64dtv and vsid).
`-initialsnapshotdir <Name>`
  Select the initial snapshot directory for the file browser dialog (`InitialSnapshotDir`) (all emulators except vsid).
`-fullscreen`
`+fullscreen`
  Enable/disable fullscreen mode (`FullscreenEnabled=1`, `FullscreenEnabled=0`).
`-statusbar`
`+statusbar`
  Enable/Disable the statusbar (`StatusBarEnabled=1`, `StatusBarEnabled=0`).
`-saveres`
`+saveres`
  Enable/disable automatic saving of settings on exit (`SaveResourcesOnExit=1`, `SaveResourcesOnExit=0`).
`-confirmexit`
  Confirm quitting VICE (`ConfirmOnExit=1`).
`+confirmexit`
  Never confirm quitting VICE (`ConfirmOnExit=0`).

### 8.1.3 AmigaOS3-specific features

This section lists the settings and commands that are common and specific to AmigaOS3, and are thus not present in other platforms. The AmigaOS3 port uses the AHI sound system, the CGX or P96 graphics system, the LowLevel input system, the MUI GUI system, and optionally the OpenPCI library for access to expansion cards like Catweasel or HardSID. Please note that access to the Catweasel can also be done using catweaselsid.device.

#### 8.1.3.1 AmigaOS3 specific resources

`JoyFire1`
  Integer specifying the code of the button to use for fire for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid).
`JoyFire2`
  Integer specifying the code of the button to use for fire for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid).
`JoyFire3`
  Integer specifying the code of the button to use for fire for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid).
`JoyFire4`
  Integer specifying the code of the button to use for fire for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid).
`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)

The following resource is only present if the CGX video system is present and used at compile time, and cgxvideo.library is present at runtime.

`VideoOverlayEnabled`
  Boolean to enable/disable video overlay mode.

#### 8.1.3.2 AmigaOS3 specific command-line options

`-joydev1 <0-5>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-joydev2 <0-5>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-extrajoydev1 <0-5>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-extrajoydev2 <0-5>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)

The following command-line option is only present if the CGX video system is present and used at compile time, and cgxvideo.library is present at runtime.

`-videooverlay`
`+videooverlay`
  Enable/Disable video overlay mode (`VideoOverlayEnabled=1`, `VideoOverlayEnabled=0`).

### 8.1.4 AmigaOS4-specific features

This section lists the settings and commands that are common and specific to AmigaOS4, and are thus not present in other platforms. The AmigaOS4 port uses the AHI sound system, the P96 graphics system, the AmigaInput input system, the MUI GUI system, and optionally the expansion library for access to expansion cards like Catweasel or HardSID.

#### 8.1.4.1 AmigaOS4 specific resources

These are all generic joystick related resources and are therefor present in all emulators except vsid.

`JOYAI1_ID`
  String specifying the AmigaInput ID of hardware joystick 1.
`JOYAI2_ID`
  String specifying the AmigaInput ID of hardware joystick 2.
`JOYAI1_Up`
  String specifying the AmigaInput event ID for the up direction of hardware joystick 1.
`JOYAI2_Up`
  String specifying the AmigaInput event ID for the up direction of hardware joystick 2.
`JOYAI1_Down`
  String specifying the AmigaInput event ID for the down direction of hardware joystick 1.
`JOYAI2_Down`
  String specifying the AmigaInput event ID for the down direction of hardware joystick 2.
`JOYAI1_Left`
  String specifying the AmigaInput event ID for the left direction of hardware joystick 1.
`JOYAI2_Left`
  String specifying the AmigaInput event ID for the left direction of hardware joystick 2.
`JOYAI1_Right`
  String specifying the AmigaInput event ID for the right direction of hardware joystick 1.
`JOYAI2_Right`
  String specifying the AmigaInput event ID for the right direction of hardware joystick 2.
`JOYAI1_Fire`
  String specifying the AmigaInput event ID for the fire button of hardware joystick 1.
`JOYAI2_Fire`
  String specifying the AmigaInput event ID for the fire button of hardware joystick 2.

`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1/AI, 3: Keyset 2/AI)
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1/AI, 3: Keyset 2/AI)
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1/AI, 3: Keyset 2/AI)
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1/AI, 3: Keyset 2/AI)

#### 8.1.4.2 AmigaOS4 specific command-line options

`-joydev1 <0-3>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1/AI, 3: Keyset 2/AI)
`-joydev2 <0-3>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1/AI, 3: Keyset 2/AI)
`-extrajoydev1 <0-3>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1/AI, 3: Keyset 2/AI)
`-extrajoydev2 <0-3>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1/AI, 3: Keyset 2/AI)

### 8.1.5 MorphOS-specific features

This section lists the settings and commands that are common and specific to MorphOS, and are thus not present in other platforms. The MorphOS port uses the AHI or SDL sound system, the CGX graphics system, the LowLevel input system, the MUI GUI system, and optionally the OpenPCI library for access to expansion cards like Catweasel or HardSID. Please note that access to the Catweasel can also be done using catweaselsid.device.

#### 8.1.5.1 MorphOS specific resources

`JoyFire1`
  Integer specifying the code of the button to use for fire for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid).
`JoyFire2`
  Integer specifying the code of the button to use for fire for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid).
`JoyFire3`
  Integer specifying the code of the button to use for fire for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid).
`JoyFire4`
  Integer specifying the code of the button to use for fire for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid).
`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)

The following resource is only present if the CGX video system is present and used at compile time, and cgxvideo.library is present at runtime.

`VideoOverlayEnabled`
  Boolean to enable/disable video overlay mode.

#### 8.1.5.2 MorphOS specific command-line options

`-joydev1 <0-5>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-joydev2 <0-5>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-extrajoydev1 <0-5>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-extrajoydev2 <0-5>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)

The following command-line option is only present if the CGX video system is present and used at compile time, and cgxvideo.library is present at runtime.

`-videooverlay`
`+videooverlay`
  Enable/Disable video overlay mode (`VideoOverlayEnabled=1`, `VideoOverlayEnabled=0`).

### 8.1.6 AROS-specific features

This section lists the settings and commands that are common and specific to AROS, and are thus not present in other platforms. The AROS port uses the AHI or SDL sound system, the CGX graphics system, the LowLevel input system, the MUI GUI system.

#### 8.1.6.1 AROS specific resources

`JoyFire1`
  Integer specifying the code of the button to use for fire for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid).
`JoyFire2`
  Integer specifying the code of the button to use for fire for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid).
`JoyFire3`
  Integer specifying the code of the button to use for fire for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid).
`JoyFire4`
  Integer specifying the code of the button to use for fire for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid).
`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)

The following resource is only present if the CGX video system is present and used at compile time, and cgxvideo.library is present at runtime.

`VideoOverlayEnabled`
  Boolean to enable/disable video overlay mode.

#### 8.1.6.2 AROS specific command-line options

`-joydev1 <0-5>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-joydev2 <0-5>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-extrajoydev1 <0-5>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)
`-extrajoydev2 <0-5>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Joy0, 3: Joy1, 4: Joy2, 5: Joy3)

The following command-line option is only present if the CGX video system is present and used at compile time, and cgxvideo.library is present at runtime.

`-videooverlay`
`+videooverlay`
  Enable/Disable video overlay mode (`VideoOverlayEnabled=1`, `VideoOverlayEnabled=0`).

## 8.2 BeOS-specific features

This section lists the settings and commands that are common and specific to BeOS, Zeta and Haiku, and are thus not present in other platforms.

### 8.2.1 BeOS specific resources

`JoystickDisplay`
  Boolean to enable/disable displaying the joystick status in the emulator window.
`SaveResourcesOnExit`
  Boolean specifying whether the emulator should save changed settings before exiting. If this is enabled, the user will be always prompted first, in case the settings have changed.
`ConfirmOnExit`
  Boolean specifying whether to show a confirmation dialog on exit.
`DirectWindow`
  Boolean specifying whether to use the BeOS DirectWindow API.
`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4..19: Hardware joysticks)
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4..19: Hardware joysticks)
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4..19: Hardware joysticks)
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4..19: Hardware joysticks)

### 8.2.2 BeOS specific command-line options

`-joydisplay`
`+joydisplay`
  Enable/Disable joystick display. (`JoystickDisplay=1`, `JoystickDisplay=0`).
`-saveres`
`+saveres`
  Enable/disable automatic saving of settings on exit (`SaveResourcesOnExit=1`, `SaveResourcesOnExit=0`).
`-confirmexit`
  Confirm quitting VICE (`ConfirmOnExit=1`).
`+confirmexit`
  Never confirm quitting VICE (`ConfirmOnExit=0`).
`-directwindow`
`+directwindow`
  Enable/disable usage of the BeOS DirectWindow API (`DirectWindow=1`, `DirectWindow=0`).
`-joydev1 <0-19>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4..19: Hardware joysticks)
`-joydev2 <0-19>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4..19: Hardware joysticks)
`-extrajoydev1 <0-19>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4..19: Hardware joysticks)
`-extrajoydev2 <0-19>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4..19: Hardware joysticks)

## 8.3 DOS-specific features

This section lists the settings and commands that are common and specific to DOS, and are thus not present in other platforms.

### 8.3.1 DOS joystick hardware types

Here is a list of joystick hardware types that are supported

`JOY_TYPE_AUTODETECT (0xFFFFFFFF, "auto")`
  Attempts to autodetect your joystick hardware. It isn't possible to reliably distinguish between all the possible input setups, so this routine can only ever choose the standard joystick, Sidewider, GamePad Pro, or GrIP drivers.
`JOY_TYPE_NONE (0x00000000, "none")`
  Dummy driver for machines without any joystick.
`JOY_TYPE_STANDARD (0x53544420, "standard")`
  A normal two button stick.
`JOY_TYPE_2PADS (0x32504144, "dual")`
  Dual joystick mode (two sticks, each with two buttons).
`JOY_TYPE_4BUTTON (0x34425554, "4button")`
  Enable the extra buttons on a 4-button joystick.
`JOY_TYPE_6BUTTON (0x36425554, "6button")`
  Enable the extra buttons on a 6-button joystick.
`JOY_TYPE_8BUTTON (0x38425554, "8button")`
  Enable the extra buttons on an 8-button joystick.
`JOY_TYPE_FSPRO (0x4650524F, "fspro")`
  CH Flightstick Pro or compatible stick, which provides four buttons, an analogue throttle control, and a 4-direction coolie hat.
`JOY_TYPE_WINGEX (0x57494E47, "wingex")`
  A Logitech Wingman Extreme, which should also work with any Thrustmaster Mk.I compatible joystick. It provides support for four buttons and a coolie hat. This also works with the Wingman Warrior, if you plug in the 15 pin plug (remember to unplug the 9-pin plug!) and set the tiny switch in front to the "H" position (you will not be able to use the throttle or the spinner though).
`JOY_TYPE_SIDEWINDER (0x53572020, "sidewinder")`
  The Microsoft Sidewinder digital pad (supports up to four controllers, each with ten buttons and a digital direction control).
`JOY_TYPE_SIDEWINDER_AG (0x53574147, "sidewinderag")`
  An alternative driver to JOY_TYPE_SIDEWINDER. Try this if your Sidewinder isn't recognized with JOY_TYPE_SIDEWINDER.
`JOY_TYPE_SIDEWINDER_PP (0x53575050, "sidewinderpp")`
  The Microsoft Sidewinder 3D/Precision/Force Feedback Pro joysticks.
`JOY_TYPE_GAMEPAD_PRO (0x4750524F, "gamepadpro")`
  The Gravis GamePad Pro (supports up to two controllers, each with ten buttons and a digital direction control).
`JOY_TYPE_GRIP (0x47524950, "grip")`
  Gravis GrIP driver, using the grip.gll driver file.
`JOY_TYPE_GRIP4 (0x47524934, "grip4")`
  Version of the Gravis GrIP driver that is constrained to only move along the four main axes.
`JOY_TYPE_SNESPAD_LPT1 (0x534E4531, "sneslpt1")`
`JOY_TYPE_SNESPAD_LPT2 (0x534E4532, "sneslpt2")`
`JOY_TYPE_SNESPAD_LPT3 (0x534E4533, "sneslpt3")`
  SNES joypads connected to LPT1, LPT2 and LPT3 respectively.
`JOY_TYPE_PSXPAD_LPT1 (0x50535831, "psxlpt1")`
`JOY_TYPE_PSXPAD_LPT2 (0x50535832, "psxlpt2")`
`JOY_TYPE_PSXPAD_LPT3 (0x50535833, "psxlpt3")`
  PSX joypads connected to LPT1, LPT2 and LPT3 respectively. See http://www.ziplabel.com/dpadpro/index.html for information about the parallel cable required. The driver automagically detects which types of PSX pads are connected out of digital, analog (red or green mode), NegCon, multi taps, Namco light guns, Jogcons (force feedback steering wheel) and the mouse. If the controller isn't recognised it is treated as an analog controller, meaning the driver should work with just about anything. You can connect controllers in any way you see fit, but only the first 8 will be used. The Sony Dual Shock or Namco Jogcon will reset themselves (to digital mode) after not being polled for 5 seconds. This is normal, the same thing happens on a Playstation, it's designed to stop any vibration in case the host machine crashes. Other mode switching controllers may have similar quirks. However, if this happens to a Jogcon controller the mode button is disabled. To reenable the mode button on the Jogcon you need to hold down the Start and Select buttons at the same time. The G-con45 needs to be connected to (and pointed at) a TV type monitor connected to your computer.
`JOY_TYPE_N64PAD_LPT1 (0x4E363431, "n64lpt1")`
`JOY_TYPE_N64PAD_LPT2 (0x4E363432, "n64lpt2")`
`JOY_TYPE_N64PAD_LPT3 (0x4E363433, "n64lpt3")`
  N64 joypads connected to LPT1, LPT2 and LPT3 respectively. See http://www.st-hans.de/N64.htm for information about the necessary hardware adapter. It supports up to four controllers on a single parallel port. There is no need to calibrate the analog stick, as this is done by the controller itself when powered up. This means that the stick has to be centred when the controller is initialised. One possible issue people may have with this driver is that it is physically impossible to move the analog stick fully diagonal, but I can't see this causing any major problems. This is because of the shape of the rim that the analog stick rests against. Like the Gravis Game Pad Pro, this driver briefly needs to disable hardware interrupts while polling. This causes a noticeable performance hit on my machine in both drivers, but there is no way around it.
`JOY_TYPE_DB9_LPT1 (0x44423931, "db9lpt1")`
`JOY_TYPE_DB9_LPT1 (0x44423932, "db9lpt2")`
`JOY_TYPE_DB9_LPT3 (0x44423933, "db9lpt3")`
  A pair of two-button joysticks connected to LPT1, LPT2 and LPT3 respectively. Port 1 is compatible with Linux joy-db9 driver (multisystem 2-button), and port 2 is compatible with Atari interface for DirectPad Pro. See the source file (src/dos/multijoy.c) for pinout information.
`JOY_TYPE_TURBOGRAFX_LPT1 (0x54475831, "tgxlpt1")`
`JOY_TYPE_TURBOGRAFX_LPT2 (0x54475832, "tgxlpt2")`
`JOY_TYPE_TURBOGRAFX_LPT3 (0x54475833, "tgxlpt3")`
  These drivers support up to 7 joysticks, each one with up to 5 buttons, connected to LPT1, LPT2, and LPT3 respectively. They use the TurboGraFX interface by Steffen Schwenke: see http://www.burg-halle.de/~schwenke/parport.html for details on how to build this.
`JOY_TYPE_WINGWARRIOR (0x57574152, "wingwar")`
  A Wingman Warrior joystick.
`JOY_TYPE_IFSEGA_ISA (0x53454749, "ifsegaisa")`
`JOY_TYPE_IFSEGA_PCI (0x53454750, "ifsegapci")`
`JOY_TYPE_IFSEGA_PCI_FAST (0x53475046, "ifsegapcifast")`
  Drivers for the IF-SEGA joystick interface cards by the IO-DATA company (these come in PCI, PCI2, and ISA variants).

### 8.3.2 DOS specific resources

`UseLeds`
  Boolean to enable/disable using the keyboard leds for status display.
`ShowStatusbar`
  Integer specifying the mode of the statusbar. (0: Off, 1: On, 2: Auto)
`VGAMode`
  Integer specifying the VGA mode. (0: 320x200x8, 1: 360x240x8, 2: 360x270x8, 3: 376x282x8, 4: 400x300x8, 5: 640x480x8, 6: 800x600x8, 7: 1024x768x8, 8: 320x200x16, 9: 400x300x16, 10: 640x480x16, 11: 800x600x16, 12: 1024x768x16, 13: 640x480x32, 14: 800x600x32, 15: 1024x768x32)
`HwJoyType`
  Integer specifying the hardware type of the joystick (all emulators except vsid). See `'DOS joystick hardware types'` for the types.
`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: Joystick 2)
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: Joystick 2)
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: Joystick 2)
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: Joystick 2)

The following resource is only available if the midas sound driver is not used during compile time.

`TripleBuffering`
  Boolean to enable/disable triple buffering if possible.

### 8.3.3 DOS specific command-line options

`-leds`
`+leds`
  Enable/disable usage of keyboard leds (`UseLeds=1`, `UseLeds=0`).
`-statusbar <Mode>`
  Set the statusbar mode (`ShowStatusbar`). (0: Off, 1: On, 2: Auto)
`-vgamode <Mode>`
  Set the VGA mode (`VGAMode`). (0: 320x200x8, 1: 360x240x8, 2: 360x270x8, 3: 376x282x8, 4: 400x300x8, 5: 640x480x8, 6: 800x600x8, 7: 1024x768x8, 8: 320x200x16, 9: 400x300x16, 10: 640x480x16, 11: 800x600x16, 12: 1024x768x16, 13: 640x480x32, 14: 800x600x32, 15: 1024x768x32)
`-joyhwtype <type>`
  Set the joystick hardware type (`HwJoyType`) (all emulators except vsid). See `DOS joystick hardware types` for the types.
`-joydev1 <0-5>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: Joystick 2)
`-joydev2 <0-5>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: Joystick 2)
`-extrajoydev1 <0-5>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: Joystick 2)
`-extrajoydev2 <0-5>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: Joystick 2)

The following command-line option is only available if the midas sound driver is not used during compile time.

`-triplebuf`
`+triplebuf`
  Enable/Disable triple buffering (`TripleBuffering=1`, `TripleBuffering=0`).

## 8.4 OS2-specific features

## 8.5 SDL-specific features

This section lists the settings and commands that are common and specific to SDL, and are thus not present in other platforms.

### 8.5.1 SDL specific resources

`HotkeyFile`
  String specifying the name of the hotkey file (all emulators except vsid).
`MenuKey`
  Integer specifying the keycode for activating the SDL menu.
`MenuKeyUp`
  Integer specifying the keycode for 'up' in the SDL menu.
`MenuKeyDown`
  Integer specifying the keycode for 'down' in the SDL menu.
`MenuKeyLeft`
  Integer specifying the keycode for 'left' in the SDL menu.
`MenuKeyRight`
  Integer specifying the keycode for 'right' in the SDL menu.
`MenuKeySelect`
  Integer specifying the keycode for 'select' in the SDL menu.
`MenuKeyCancel`
  Integer specifying the keycode for 'cancel' in the SDL menu.
`MenuKeyExit`
  Integer specifying the keycode for 'exit' in the SDL menu.
`MenuKeyMap`
  Integer specifying the keycode for 'map' in the SDL menu.
`SaveResourcesOnExit`
  Boolean specifying whether the emulator should save changed settings before exiting. If this is enabled, the user will be always prompted first, in case the settings have changed.
`ConfirmOnExit`
  Boolean specifying whether to show a confirmation dialog on exit.
`SDLStatusbar`
  Boolean to enable/disable the statusbar (all emulators except vsid).
`SDLBitdepth`
  Integer specifying the bitdepth used. (0: current, 8, 15, 16, 24, 32)
`SDLLimitMode`
  Integer specifying the resolution limit mode. (0: off, 1: max, 2: fixed)
`SDLCustomWidth`
  Integer specifying the custom resolution width.
`SDLCustomHeight`
  Integer specifying the custom resolution height.
`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick (only if joystick support was present in the compile time SDL library))
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick (only if joystick support was present in the compile time SDL library))
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick (only if joystick support was present in the compile time SDL library))
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick (only if joystick support was present in the compile time SDL library))
`CrtcSDLFullscreenMode`
  Integer specifying the fullscreen mode (xcbm2 and xpet only).
`CrtcHwScale`
  Boolean specifying whether to enable or disable hardware scaling (xcbm2 and xpet only).
`CrtcFullscreenDevice`
  String specifying the fullscreen device (xcbm2 and xpet only).
`CrtcFullscreen`
  Boolean specifying whether to use fullscreen mode or not (xcbm2 and xpet only).
`CrtcFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (xcbm2 and xpet only).
`TEDSDLFullscreenMode`
  Integer specifying the fullscreen mode (xplus4 only).
`TEDHwScale`
  Boolean specifying whether to enable or disable hardware scaling (xplus4 only).
`TEDFullscreenDevice`
  String specifying the fullscreen device (xplus4 only).
`TEDFullscreen`
  Boolean specifying whether to use fullscreen mode or not (xplus4 only).
`TEDFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (xplus4 only).
`VDCSDLFullscreenMode`
  Integer specifying the fullscreen mode (x128 only).
`VDCHwScale`
  Boolean specifying whether to enable or disable hardware scaling (x128 only).
`VDCFullscreenDevice`
  String specifying the fullscreen device (x128 only).
`VDCFullscreen`
  Boolean specifying whether to use fullscreen mode or not (x128 only).
`VDCFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (x128 only).
`VICSDLFullscreenMode`
  Integer specifying the fullscreen mode (xvic only).
`VICHwScale`
  Boolean specifying whether to enable or disable hardware scaling (xvic only).
`VICFullscreenDevice`
  String specifying the fullscreen device (xvic only).
`VICFullscreen`
  Boolean specifying whether to use fullscreen mode or not (xvic only).
`VICFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (xvic only).
`VICIISDLFullscreenMode`
  Integer specifying the fullscreen mode (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`VICIIHwScale`
  Boolean specifying whether to enable or disable hardware scaling (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`VICIIFullscreenDevice`
  String specifying the fullscreen device (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`VICIIFullscreen`
  Boolean specifying whether to use fullscreen mode or not (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`VICIIFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (all emulators except xcbm2, xpet, xplus4, xvic and vsid).

The following resources are only present if the OpenGL library is present and used at compile time.

`AspectRatio`
  String/float specifying the aspect ratio. (0.5-2.0)
`SDLGLAspectMode`
  Integer specifying the OpenGL aspect mode. (0: off, 1: custom, 2: true)
`SDLGLFlipX`
  Boolean to enable/disable OpenGL horizontal screen flip.
`SDLGLFlipY`
  Boolean to enable/disable OpenGL vertical screen flip.

The following resources are only present if the SDL library has joystick support at compile time and applies to all emulators except vsid.

`JoyMapFile`
  String specifying the name of the joystick map file.
`JoyThreshold`
  Integer specifying the joystick threshold. (0..32767)
`JoyFuzz`
  Integer specifying the joystick fuzz. (0..32767)

The following resource is only present if compiling for native dingoo.

`OverClock`
  Boolean to enable/disable overclocking.

### 8.5.2 SDL specific command-line options

`-hotkeyfile <name>`
  Set the hotkey file name (`HotkeyFile`) (all emulators except vsid).
`-menukey <key>`
  Set the keycode of the SDL menu activation key (`MenuKey`).
`-menukeyup <key>`
  Set the keycode of the 'up' in the SDL menu (`MenuKeyUp`).
`-menukeydown <key>`
  Set the keycode of the 'down' in the SDL menu (`MenuKeyDown`).
`-menukeyleft <key>`
  Set the keycode of the 'left' in the SDL menu (`MenuKeyLeft`).
`-menukeyright <key>`
  Set the keycode of the 'right' in the SDL menu (`MenuKeyRight`).
`-menukeyselect <key>`
  Set the keycode of the 'select' in the SDL menu (`MenuKeySelect`).
`-menukeycancel <key>`
  Set the keycode of the 'cancel' in the SDL menu (`MenuKeyCancel`).
`-menukeyexit <key>`
  Set the keycode of the 'exit' in the SDL menu (`MenuKeyExit`).
`-menukeymap <key>`
  Set the keycode of the 'map' in the SDL menu (`MenuKeyMap`).
`-saveres`
`+saveres`
  Enable/disable automatic saving of settings on exit (`SaveResourcesOnExit=1`, `SaveResourcesOnExit=0`).
`-confirmexit`
  Confirm quitting VICE (`ConfirmOnExit=1`).
`+confirmexit`
  Never confirm quitting VICE (`ConfirmOnExit=0`).
`-statusbar`
`+statusbar`
  Enable/disable the statusbar (`SDLStatusbar=1`, `SDLStatusbar=0`) (all emulators except vsid).
`-sdlbitdepth <bpp>`
  Set the display bitdepth (`SDLBitdepth`). (0: current, 8, 15, 16, 24, 32)
`-sdllimitmode <mode>`
  Set the resolution limit mode (`SDLLimitMode`). (0: off, 1: max, 2: fixed)
`-sdlcustomw <width>`
  Set the custom resolution width (`SDLCustomWidth`).
`-sdlcustomh <height>`
  Set the custom resolution height (`SDLCustomHeight`).
`-joydev1 <0-3> / <0-4>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick (only if joystick support was present in the compile time SDL library))
`-joydev2 <0-3> / <0-4>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick (only if joystick support was present in the compile time SDL library))
`-extrajoydev1 <0-3> / <0-4>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick (only if joystick support was present in the compile time SDL library))
`-extrajoydev2 <0-3> / <0-4>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick (only if joystick support was present in the compile time SDL library))
`-CRTCSDLfullmode <Mode>`
  Set the fullscreen mode (`CrtcSDLFullscreenMode`) (xcbm2 and xpet only).
`-CRTChwscale`
`+CRTChwscale`
  Enable/Disable hardware scaling (`CrtcHwScale=1`, `CrtcHwScale=0`) (xcbm2 and xpet only).
`-CRTCfulldevice <device>`
  Select fullscreen device (`CrtcFullscreenDevice`) (xcbm2 and xpet only).
`-CRTCfull`
`+CRTCfull`
  Enable/Disable fullscreen (`CrtcFullscreen=1`, `CrtcFullscreen=0`) (xcbm2 and xpet only).
`-TEDSDLfullmode <Mode>`
  Set the fullscreen mode (`TEDSDLFullscreenMode`) (xplus4 only).
`-TEDhwscale`
`+TEDhwscale`
  Enable/Disable hardware scaling (`TEDHwScale=1`, `TEDHwScale=0`) (xplus4 only).
`-TEDfulldevice <device>`
  Select fullscreen device (`TEDFullscreenDevice`) (xplus4 only).
`-TEDfull`
`+TEDfull`
  Enable/Disable fullscreen (`TEDFullscreen=1`, `TEDFullscreen=0`) (xplus4 only).
`-VDCSDLfullmode <Mode>`
  Set the fullscreen mode (`VDCSDLFullscreenMode`) (x128 only).
`-VDChwscale`
`+VDChwscale`
  Enable/Disable hardware scaling (`VDCHwScale=1`, `VDCHwScale=1`) (x128 only).
`-VDCfulldevice <device>`
  Select fullscreen device (`VDCFullscreenDevice`) (x128 only).
`-VDCfull`
`+VDCfull`
  Enable/Disable fullscreen (`VDCFullscreen=1`, `VDCFullscreen=0`) (x128 only).
`-VICSDLfullmode <Mode>`
  Set the fullscreen mode (`VICSDLFullscreenMode`) (xvic only).
`-VIChwscale`
`+VIChwscale`
  Enable/Disable hardware scaling (`VICHwScale=1`, `VICHwScale=0`) (xvic only).
`-VICfulldevice <device>`
  Select fullscreen device (`VICFullscreenDevice`) (xvic only).
`-VICfull`
`+VICfull`
  Enable/Disable fullscreen (`VICFullscreen=1`, `VICFullscreen=0`) (xvic only).
`-VICIISDLfullmode <Mode>`
  Set the fullscreen mode (`VICIISDLFullscreenMode`) (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`-VICIIhwscale`
`+VICIIhwscale`
  Enable/Disable hardware scaling (`VICIIHwScale=1`, `VICIIHwScale=0`) (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`-VICIIfulldevice <device>`
  Select fullscreen device (`VICIIFullscreenDevice`) (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`-VICIIfull`
`+VICIIfull`
  Enable/Disable fullscreen (`VICIIFullscreen=1`, `VICIIFullscreen=0`) (all emulators except xcbm2, xpet, xplus4, xvic and vsid).

The following command-line options are only present if the OpenGL library is present and used at compile time.

`-aspect <aspect ratio>`
  Set the aspect ratio (`AspectRatio`). (0.5-2.0)
`-sdlaspectmode <mode>`
  Set the aspect mode (`SDLGLAspectMode`). (0: off, 1: custom, 2: true)
`-sdlflipx`
`+sdlflipx`
  Enable/disable OpenGL horizontal screen flip (`SDLGLFlipX=1`, `SDLGLFlipX=0`).
`-sdlflipy`
`+sdlflipy`
  Enable/disable OpenGL vertical screen flip (`SDLGLFlipY=1`, `SDLGLFlipY=0`).

The following command-line options are only present if the SDL library has joystick support at compile time and applies to all emulators except vsid.

`-joymap <name>`
  Set the joystick map file name (`JoyMapFile`).
`-joythreshold <0-32767>`
  Set the joystick threshold (`JoyThreshold`).
`-joyfuzz <0-32767>`
  Set the joystick fuzz (`JoyFuzz`).

## 8.6 Unix-specific features

This section lists the settings and commands that are common and specific to Unix, and are thus not present in other platforms.

### 8.6.1 Unix specific resources

`SaveResourcesOnExit`
  Boolean specifying whether the emulator should save changed settings before exiting. If this is enabled, the user will be always prompted first, in case the settings have changed.
`ConfirmOnExit`
  Boolean specifying whether to show a confirmation dialog on exit.
`HTMLBrowserCommand`
  String specifying the command to run the help browser. The help browser can be any HTML browser, and every ``%s'` in the string is replaced with the name of the toplevel file of the VICE documentation. For example, the default value ``netscape %s'` runs Netscape Navigator.
`CrtcHwScale`
  Boolean specifying whether to enable or disable hardware scaling (xcbm2 and xpet only).
`CrtcFullscreenDevice`
  String specifying the fullscreen device (xcbm2 and xpet only).
`CrtcFullscreen`
  Boolean specifying whether to use fullscreen mode or not (xcbm2 and xpet only).
`CrtcFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (xcbm2 and xpet only).
`TEDHwScale`
  Boolean specifying whether to enable or disable hardware scaling (xplus4 only).
`TEDFullscreenDevice`
  String specifying the fullscreen device (xplus4 only).
`TEDFullscreen`
  Boolean specifying whether to use fullscreen mode or not (xplus4 only).
`TEDFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (xplus4 only).
`VDCHwScale`
  Boolean specifying whether to enable or disable hardware scaling (x128 only).
`VDCFullscreenDevice`
  String specifying the fullscreen device (x128 only).
`VDCFullscreen`
  Boolean specifying whether to use fullscreen mode or not (x128 only).
`VDCFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (x128 only).
`VICHwScale`
  Boolean specifying whether to enable or disable hardware scaling (xvic only).
`VICFullscreenDevice`
  String specifying the fullscreen device (xvic only).
`VICFullscreen`
  Boolean specifying whether to use fullscreen mode or not (xvic only).
`VICFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (xvic only).
`VICIIHwScale`
  Boolean specifying whether to enable or disable hardware scaling (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`VICIIFullscreenDevice`
  String specifying the fullscreen device (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`VICIIFullscreen`
  Boolean specifying whether to use fullscreen mode or not (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`VICIIFullscreenStatusbar`
  Boolean specifying whether to show the status bar in fullscreen mode or not (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Analog joystick 1, 5: Analog joystick 2, 6: Analog joystick 3, 7: Analog joystick 4, 8: Analog joystick 5, 9: Analog joystick 6, 10: Digital joystick 1, 11: Digital joystick 2, 12: USB joystick 1, 13: USB joystick 2)
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Analog joystick 1, 5: Analog joystick 2, 6: Analog joystick 3, 7: Analog joystick 4, 8: Analog joystick 5, 9: Analog joystick 6, 10: Digital joystick 1, 11: Digital joystick 2, 12: USB joystick 1, 13: USB joystick 2)
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Analog joystick 1, 5: Analog joystick 2, 6: Analog joystick 3, 7: Analog joystick 4, 8: Analog joystick 5, 9: Analog joystick 6, 10: Digital joystick 1, 11: Digital joystick 2, 12: USB joystick 1, 13: USB joystick 2)
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Analog joystick 1, 5: Analog joystick 2, 6: Analog joystick 3, 7: Analog joystick 4, 8: Analog joystick 5, 9: Analog joystick 6, 10: Digital joystick 1, 11: Digital joystick 2, 12: USB joystick 1, 13: USB joystick 2)

The available joysticks might differ depending on operating system and joystick support in the OS.

`Devices 4..9`
  Only available if joystick support is available at compile time.
`Devices 10 and 11`
  Only available if digital joystick support is available at compile time.
`Devices 12 and 13`
  Only available if USB joystick support is available at compile time.

The following resources are only available if MIDI support is available at compile time.

`MIDIInDev`
  String specifying the MIDI input device (x64, x64sc, xscpu64, x128 and xvic only).
`MIDIOutDev`
  String specifying the MIDI output device (x64, x64sc, xscpu64, x128 and xvic only).

The following resource is only available if MIDI support and ALSA support is available at compile time.

`MIDIDriver`
  Enum specifying the MIDI driver (x64, x64sc, xscpu64, x128 and xvic only). (0: OSS, 1: ALSA)

The following resources are only available if RS232 device support or RS232 network support is available at compile time.

`RsDevice1Baud`
`RsDevice2Baud`
`RsDevice3Baud`
`RsDevice4Baud`
  Integers specifying the RS232 baudrate devices if the device file points to a special device (like ``/dev/ttyS0'`; see section 6.12 RS232 settings) (all emulators except vsid).

### 8.6.2 Unix specific command-line options

`-saveres`
`+saveres`
  Enable/disable automatic saving of settings on exit (`SaveResourcesOnExit=1`, `SaveResourcesOnExit=0`).
`-confirmexit`
  Confirm quitting VICE (`ConfirmOnExit=1`).
`+confirmexit`
  Never confirm quitting VICE (`ConfirmOnExit=0`).
`-htmlbrowser <Command>`
  Specify the command to run the HTML browser for the on-line help (`HTMLBrowserCommand`).
`-CRTChwscale`
`+CRTChwscale`
  Enable/Disable hardware scaling (`CrtcHwScale=1`, `CrtcHwScale=0`) (xcbm2 and xpet only).
`-CRTCfulldevice <device>`
  Select fullscreen device (`CrtcFullscreenDevice`) (xcbm2 and xpet only).
`-TEDhwscale`
`+TEDhwscale`
  Enable/Disable hardware scaling (`TEDHwScale=1`, `TEDHwScale=0`) (xplus4 only).
`-TEDfulldevice <device>`
  Select fullscreen device (`TEDFullscreenDevice`) (xplus4 only).
`-VDChwscale`
`+VDChwscale`
  Enable/Disable hardware scaling (`VDCHwScale=1`, `VDCHwScale=1`) (x128 only).
`-VIChwscale`
`+VIChwscale`
  Enable/Disable hardware scaling (`VICHwScale=1`, `VICHwScale=0`) (xvic only).
`-VICfulldevice <device>`
  Select fullscreen device (`VICFullscreenDevice`) (xvic only).
`-VICIIhwscale`
`+VICIIhwscale`
  Enable/Disable hardware scaling (`VICIIHwScale=1`, `VICIIHwScale=0`) (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`-VICIIfulldevice <device>`
  Select fullscreen device (`VICIIFullscreenDevice`) (all emulators except xcbm2, xpet, xplus4, xvic and vsid).
`-joydev1 <0-3> / <0-9> / <0-11> / <0-13>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Analog joystick 1, 5: Analog joystick 2, 6: Analog joystick 3, 7: Analog joystick 4, 8: Analog joystick 5, 9: Analog joystick 6, 10: Digital joystick 1, 11: Digital joystick 2, 12: USB joystick 1, 13: USB joystick 2)
`-joydev2 <0-3> / <0-9> / <0-11> / <0-13>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Analog joystick 1, 5: Analog joystick 2, 6: Analog joystick 3, 7: Analog joystick 4, 8: Analog joystick 5, 9: Analog joystick 6, 10: Digital joystick 1, 11: Digital joystick 2, 12: USB joystick 1, 13: USB joystick 2)
`-extrajoydev1 <0-3> / <0-9> / <0-11> / <0-13>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Analog joystick 1, 5: Analog joystick 2, 6: Analog joystick 3, 7: Analog joystick 4, 8: Analog joystick 5, 9: Analog joystick 6, 10: Digital joystick 1, 11: Digital joystick 2, 12: USB joystick 1, 13: USB joystick 2)
`-extrajoydev2 <0-3> / <0-9> / <0-11> / <0-13>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Analog joystick 1, 5: Analog joystick 2, 6: Analog joystick 3, 7: Analog joystick 4, 8: Analog joystick 5, 9: Analog joystick 6, 10: Digital joystick 1, 11: Digital joystick 2, 12: USB joystick 1, 13: USB joystick 2)

The available joysticks might differ depending on operating system and joystick support in the OS.

`Devices 4..9`
  Only available if joystick support is available at compile time.
`Devices 10 and 11`
  Only available if digital joystick support is available at compile time.
`Devices 12 and 13`
  Only available if USB joystick support is available at compile time.

The following command-line options are only available if MIDI support is available at compile time.

`-midiin <name>`
  Specify MIDI-In device (`MIDIInDev`) (x64, x64sc, xscpu64, x128 and xvic only).
`-midiout <name>`
  Specify MIDI-Out device (`MIDIOutDev`) (x64, x64sc, xscpu64, x128 and xvic only).

The following command-line option is only available if MIDI support and ALSA support is available at compile time.

`-mididrv <driver>`
  Specify MIDI driver (`MIDIDriver`) (x64, x64sc, xscpu64, x128 and xvic only). (0: OSS, 1: ALSA)

The following command-line options are only available if RS232 device support or RS232 network support is available at compile time.

`-rsdev1baud <baudrate>`
`-rsdev2baud <baudrate>`
`-rsdev3baud <baudrate>`
`-rsdev4baud <baudrate>`
  Specify <baudrate> as baudrate for the RS232 devices if the device name specifies a special device (like ``/dev/ttyS0'` for example, see section 6.12 RS232 settings; `RsDevice1Baud`, `RsDevice2Baud` `RsDevice3Baud` and `RsDevice4Baud`) (all emulators except vsid).

### 8.6.3 XAW-specific features

This section lists the settings and commands that are common and specific to the XAW GUI, and are thus not present in other platforms.

#### 8.6.3.1 XAW GUI specific resources

`DisplayDepth`
  Integer specifying the depth of the host display. The value ``0'` (the default) causes the emulator to autodetect it (all emulators except vsid). (0..32)
`PrivateColormap`
  Boolean specifying whether VICE should install a private colormap at startup. This only makes sense for 8-bit displays that could run out of colors if other color-hungry applications are running at the same time (all emulators except vsid).
`UseXSync`
  Boolean specifying whether `XSync()` is called after updating the emulation window.
`MITSHM`
  Integer specifying whether VICE should try to use the shared memory extensions (MITSHM) when starting up. The shared memory extensions make things a lot faster but might not be available on your system. You will not be able to use these extensions if you are sitting at an X terminal while running the emulator on a remote machine across a network. Valid values are: 0 = do not use MITSHM, 1 = do use MITSHM, -1 = try to autodetect availability on startup (default). The last is a simple test if the emulator runs across a network and if so disables MITSHM (If you have problems with this test please report it). (-1: auto, 1: off, 2: on)
`Window0Width`
`Window0Height`
`Window0Xpos`
`Window0Ypos`
  Integers specifying the position and size of the (first) emulator window (all emulators except vsid).
`Window1Width`
`Window1Height`
`Window1Xpos`
`Window1Ypos`
  Integers specifying the position and size of the (second) emulator window (x128 only).

The following resources are only available if Xvideo support is present at compile time.

`AspectRatio`
  String/float specifying the aspect ratio (0.5-2.0).
`KeepAspectRatio`
  Boolean specifying whether the aspect ratio of the output window should be preserved. (0: free scaling, 1: scale with fixed aspect ratio)
`TrueAspectRatio`
  Boolean specifying whether to use the true (non square pixels) aspect ratio.
`FOURCC`
  String specifying the YUV FOURCC format to use.

The following resources are only available if XRandr support is present at compile time.

`UseFullscreen`
  Boolean specifying whether fullscreen mode is currently in use (all emulators except vsid).
`CrtcXRANDRFullscreenMode`
  integer specifying XRANDR fullscreen mode (xcbm2 and xpet only).
`TEDXRANDRFullscreenMode`
  integer specifying XRANDR fullscreen mode (xplus4 only).
`VDCXRANDRFullscreenMode`
  integer specifying XRANDR fullscreen mode (x128 only).
`VICXRANDRFullscreenMode`
  integer specifying XRANDR fullscreen mode (xvic only).
`VICIIXRANDRFullscreenMode`
  integer specifying XRANDR fullscreen mode (all emulators except xcbm2, xpet, xplus4, xvic and vsid).

The following resources are only available if VidMode support is present at compile time.

`UseFullscreen`
  Boolean specifying whether fullscreen mode is currently in use.
`CrtcVidmodeFullscreenMode`
  integer specifying VidMode fullscreen mode (xcbm2 and xpet only).
`TEDVidmodeFullscreenMode`
  integer specifying VidMode fullscreen mode (xplus4 only).
`VDCVidmodeFullscreenMode`
  integer specifying VidMode fullscreen mode (x128 only).
`VICVidmodeFullscreenMode`
  integer specifying VidMode fullscreen mode (xvic only).
`VICIIVidmodeFullscreenMode`
  integer specifying VidMode fullscreen mode (all emulators except xcbm2, xpet, xplus4, xvic and vsid).

#### 8.6.3.2 XAW GUI specific command-line options

`-displaydepth <value>`
  Specify the display depth (`DisplayDepth`) (all emulators except vsid). (0..32)
`-colormap`
`+colormap`
  Enable/disable installation of a private colormap (`PrivateColormap=1`, `PrivateColormap=0`) (all emulators except vsid).
`-xsync`
`+xsync`
  Enable/disable usage of `XSync()` when updating the emulation window (`UseXSync=1`, `UseXSync=0`).
`-mitshm`
`+mitshm`
  Enable/disable usage of the MITSHM extensions (`MITSHM=1`, `MITSHM=0`).

The following command-line options are only available if Xvideo support is present at compile time.

`-aspect <aspect ratio>`
  Set the aspect ratio (`AspectRatio`). (0.5-2.0)
`-keepaspect`
  Enable keeping of the aspect ratio when scaling (`KeepAspectRatio=1`).
`+keepaspect`
  Disable keeping of the aspect ratio when scaling (freescaling) (`KeepAspectRatio=0`).
`-trueaspect`
`+trueaspect`
  Enable/disable whether to use the true (non square pixels) aspect ratio (`TrueAspectRatio=1`, (`TrueAspectRatio=0`).
`-fourcc <fourcc>`
  Set the YUV FOURCC format to use (`FOURCC`).

The following command-line options are only available if XRandr support is present at compile time.

`-fullscreen`
`+fullscreen`
  Enable/disable fullscreen mode (`UseFullscreen=1`, (`UseFullscreen=0`) (all emulators except vsid).
`-CrtcXRANDRfullmode <mode>`
  Select fullscreen mode (`CrtcXRANDRFullscreenMode`). (xcbm2 and xpet only)
`-TEDXRANDRfullmode <mode>`
  Select fullscreen mode (`TEDXRANDRFullscreenMode`). (xplus4 only)
`-VDCXRANDRfullmode <mode>`
  Select fullscreen mode (`VDCXRANDRFullscreenMode`). (x128 only)
`-VICXRANDRfullmode <mode>`
  Select fullscreen mode (`VICXRANDRFullscreenMode`). (xvic only)
`-VICIIXRANDRfullmode <mode>`
  Select fullscreen mode (`VICIIXRANDRFullscreenMode`). (all emulators except xcbm2, xpet, xplus4, xvic and vsid)

The following command-line options are only available if VidMode support is present at compile time.

`-fullscreen`
`+fullscreen`
  Enable/disable fullscreen mode (`UseFullscreen=1`, (`UseFullscreen=0`).
`-CrtcVidmodefullmode <mode>`
  Select fullscreen mode (`CrtcVidmodeFullscreenMode`). (xcbm2 and xpet only)
`-TEDVidmodefullmode <mode>`
  Select fullscreen mode (`TEDVidmodeFullscreenMode`). (xplus4 only)
`-VDCVidmodefullmode <mode>`
  Select fullscreen mode (`VDCVidmodeFullscreenMode`). (x128 only)
`-VICVidmodefullmode <mode>`
  Select fullscreen mode (`VICVidmodeFullscreenMode`). (xvic only)
`-VICIIVidmodefullmode <mode>`
  Select fullscreen mode (`VICIIVidmodeFullscreenMode`). (all emulators except xcbm2, xpet, xplus4, xvic and vsid)

### 8.6.4 GTK-specific features

This section lists the settings and commands that are common and specific to the GTK GUI, and are thus not present in other platforms.

#### 8.6.4.1 GTK GUI specific resources

`KeepAspectRatio`
  Boolean specifying whether the aspect ratio of the output window should be preserved. (0: free scaling, 1: scale with fixed aspect ratio)
`TrueAspectRatio`
  Boolean specifying whether to use the true (non square pixels) aspect ratio.

#### 8.6.4.2 GTK GUI specific command-line options

`-keepaspect`
  Enable keeping of the aspect ratio when scaling (`KeepAspectRatio=1`).
`+keepaspect`
  Disable keeping of the aspect ratio when scaling (freescaling) (`KeepAspectRatio=0`).
`-trueaspect`
`+trueaspect`
  Enable/disable whether to use the true (non square pixels) aspect ratio (`TrueAspectRatio=1`, (`TrueAspectRatio=0`).

## 8.7 Mac OS X-specific features

## 8.8 Windows-specific features

This section lists the settings and commands that are common and specific to the Windows GUI, and are thus not present in other platforms.

### 8.8.1 Windows GUI specific resources

`MouseSensitivity`
  Integer specifying the sensitivity of the mouse (all emulators except xcbm2, xcbm5x0, xpet, xplus4 and vsid). (0..40)
`MonitorDimensions`
  String that holds the dimensions and position in an encoded form.
`InitialDefaultDir`
  String specifying the initial default directory, which is used by the generic file browser dialog.
`InitialTapeDir`
  String specifying the initial tape directory, which is used by the tape image file browser dialog (all emulators except x64dtv, xscpu64 and vsid).
`InitialDiskDir`
  String specifying the initial tape directory, which is used by the disk image file browser dialog (all emulators except vsid).
`InitialAutostartDir`
  String specifying the initial autostart directory, which is used by the autostart image file browser dialog (all emulators except vsid).
`InitialCartDir`
  String specifying the initial cartridge directory, which is used by the cartridge image file browser dialog (all emulators except x64dtv and vsid).
`InitialSnapshotDir`
  String specifying the initial snapshots directory, which is used by the snapshots file browser dialog (all emulators except vsid).
`SaveResourcesOnExit`
  Boolean specifying whether the emulator should save changed settings before exiting. If this is enabled, the user will be always prompted first, in case the settings have changed.
`ConfirmOnExit`
  Boolean specifying whether to show a confirmation dialog on exit.
`SingleCPU`
  Boolean specifying whether to use only the first CPU on an SMP system, or all CPUs.
`Window0Xpos`
`Window0Ypos`
  Integers specifying the position and size of the (first) emulator window (all emulators except vsid).
`Window1Xpos`
`Window1Ypos`
  Integers specifying the position and size of the (second) emulator window (x128 only).
`AlwaysOnTop`
  Boolean specifying if the emulator window should stay on top of other windows.
`JoyDevice1`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: joystick 2)
`JoyDevice2`
  Integer specifying which joystick device the emulator should use for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: joystick 2)
`JoyDevice3`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: joystick 2)
`JoyDevice4`
  Integer specifying which joystick device the emulator should use for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: joystick 2)
`JoyAutofire1Speed`
  Integer specifying the autofire speed for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid). (0..32)
`JoyAutofire2Speed`
  Integer specifying the autofire speed for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid). (0..32)
`JoyAutofire3Speed`
  Integer specifying the autofire speed for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid). (0..32)
`JoyAutofire4Speed`
  Integer specifying the autofire speed for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid). (0..32)
`JoyAutofire1Button`
  Integer specifying the the code of the button to use for autofire for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid).
`JoyAutofire2Button`
  Integer specifying the the code of the button to use for autofire for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid).
`JoyAutofire3Button`
  Integer specifying the the code of the button to use for autofire for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid).
`JoyAutofire4Button`
  Integer specifying the the code of the button to use for autofire for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid).
`JoyFire1Button`
  Integer specifying the the code of the button to use for fire for the emulation of joystick 1 (all emulators except xcbm2, xpet and vsid).
`JoyFire2Button`
  Integer specifying the the code of the button to use for fire for the emulation of joystick 2 (all emulators except xcbm2, xpet, xvic and vsid).
`JoyFire3Button`
  Integer specifying the the code of the button to use for fire for the emulation of extra joystick 1 (all emulators except xcbm5x0 and vsid).
`JoyFire4Button`
  Integer specifying the the code of the button to use for fire for the emulation of extra joystick 2 (all emulators except xcbm5x0, xplus4 and vsid).

The following resources are only available if MIDI support is available at compile time.

`MIDIInDev`
  Integer specifying the MIDI input device (x64, x64sc, xscpu64, x128 and xvic only).
`MIDIOutDev`
  Integer specifying the MIDI output device (x64, x64sc, xscpu64, x128 and xvic only).

The following resources are only available if DirectX 9 support is available at compile time.

`DX9Disable`
  Boolean specifying whether to disable the DirectX 9 video driver and fall back on the GDI video driver (all emulators except vsid). (0: use GDI, 1: use DX9)
`DXPrimarySurfaceRendering`
  Boolean to enable/disable rendering to DirectX primary surface (all emulators except vsid).
`FullscreenEnabled`
  Boolean to enable/disable fullscreen mode (all emulators except vsid).
`FullscreenDevice`
  Integer specifying the fullscreen device (all emulators except vsid).
`FullscreenWidth`
  Integer specifying the width of the fullscreen display (all emulators except vsid).
`FullscreenHeight`
  Integer specifying the height of the fullscreen display (all emulators except vsid).
`FullscreenRefreshRate`
  Integer specifying the refresh rate of the fullscreen display (all emulators except vsid).
`VBLANKSync`
  Boolean to enable/disable vertical blank sync (all emulators except vsid).
`KeepAspectRatio`
  Boolean specifying whether the aspect ratio of the output window should be preserved (all emulators except vsid). (0: free scaling, 1: scale with fixed aspect ratio)
`TrueAspectRatio`
  Boolean specifying whether to use the true (non square pixels) aspect ratio (all emulators except vsid).
`AspectRatio`
  Integer specifying the aspect ratio (all emulators except vsid). (500..2000)

### 8.8.2 Windows GUI specific command-line options

`-mousesensitivity <sensitivity>`
  Set the sensitivity of the mouse (`MouseSensitivity`) (all emulators except xcbm2, xcbm5x0, xpet, xplus4 and vsid). (0..40)
`-initialdefaultdir <Name>`
  Select the initial default directory for the file browser dialog (`InitialDefaultDir`).
`-initialtapedir <Name>`
  Select the initial tape images directory for the file browser dialog (`InitialTapeDir`) (all emulators except x64dtv, xscpu64 and vsid).
`-initialdiskdir <Name>`
  Select the initial disk images directory for the file browser dialog (`InitialDiskDir`) (all emulators except vsid).
`-initialautostartdir <Name>`
  Select the initial autostart directory for the file browser dialog (`InitialAutostartDir`) (all emulators except vsid).
`-initialcartdir <Name>`
  Select the initial cartridge images directory for the file browser dialog (`InitialCartDir`) (all emulators except x64dtv and vsid).
`-initialsnapshotdir <Name>`
  Select the initial snapshot directory for the file browser dialog (`InitialSnapshotDir`) (all emulators except vsid).
`-saveres`
`+saveres`
  Enable/disable automatic saving of settings on exit (`SaveResourcesOnExit=1`, `SaveResourcesOnExit=0`).
`-confirmexit`
  Confirm quitting VICE (`ConfirmOnExit=1`).
`+confirmexit`
  Never confirm quitting VICE (`ConfirmOnExit=0`).
`-singlecpu`
  Only use the first CPU on SMP systems (`SingleCPU=1`).
`+singlecpu`
  Use all CPUs on SMP systems (`SingleCPU=0`).
`-alwaysontop`
`+alwaysontop`
  Enable/disable always on top feature (`AlwaysOnTop=1`, `AlwaysOnTop=0`).
`-joydev1 <0-5>`
  Set the device for joystick emulation of port 1 (`JoyDevice1`) (all emulators except xcbm2, xpet and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: joystick 2)
`-joydev2 <0-5>`
  Set the device for joystick emulation of port 2 (`JoyDevice2`) (all emulators except xcbm2, xpet, xvic and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: joystick 2)
`-extrajoydev1 <0-5>`
  Set device for extra joystick port 1 (`JoyDevice3`) (all emulators except xcbm5x0 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: joystick 2)
`-extrajoydev2 <0-5>`
  Set device for extra joystick port 2 (`JoyDevice4`) (all emulators except xcbm5x0, xplus4 and vsid). (0: None, 1: Numpad, 2: Keyset 1, 3: Keyset 2, 4: Joystick 1, 5: joystick 2)

The following command-line options are only available if MIDI support is available at compile time.

`-midiin <number>`
  Specify MIDI-In device (`MIDIInDev`) (x64, x64sc, xscpu64, x128 and xvic only).
`-midiout <number>`
  Specify MIDI-Out device (`MIDIOutDev`) (x64, x64sc, xscpu64, x128 and xvic only).

The following command-line options are only available if DirectX 9 support is available at compile time.

`-dx9disable`
  Disable DirectX 9 video driver and fall back on the GDI video driver (`DX9Disable=1`) (all emulators except vsid).
`-dx9enable`
  Enable DirectX 9 video driver (`DX9Disable=1`) (all emulators except vsid).
`-dxpsrender`
`+dxpsrender`
  Enable/disable rendering to DirectX primary surface (`DXPrimarySurfaceRendering=1`, `DXPrimarySurfaceRendering=0`) (all emulators except vsid).
`-fullscreen`
`+fullscreen`
  Enable/Disable fullscreen mode (`FullscreenEnabled=1`, `FullscreenEnabled=0`) (all emulators except vsid).
`-fullscreendevice <number>`
  Specify fullscreen device (`FullscreenDevice`) (all emulators except vsid).
`-vblanksync`
`+vblanksync`
  Enable/disable vertical blank sync (`VBLANKSync=1`, `VBLANKSync=0`) (all emulators except vsid).
`-keepaspect`
  Enable keeping of the aspect ratio when scaling (`KeepAspectRatio=1`) (all emulators except vsid).
`+keepaspect`
  Disable keeping of the aspect ratio when scaling (freescaling) (`KeepAspectRatio=0`) (all emulators except vsid).
`-trueaspect`
`+trueaspect`
  Enable/disable whether to use the true (non square pixels) aspect ratio (`TrueAspectRatio=1`, (`TrueAspectRatio=0`) (all emulators except vsid).
`-aspect <aspect ratio>`
  Set the aspect ratio (`AspectRatio`) (all emulators except vsid). (500..2000)

Go to the first, previous, next, last section, table of contents.