Vilros Retro Gaming USB Classic Controller Sets

About Vilros Retro Gaming USB Classic Controller Sets

Will update this. Posting for now.

Initial setup:

SSH into retropie

SSH landing screen

cd /opt/retropie/configs/all/retroarch-joypads

With your controller, enter emulationstation. Let the controller connect, be detected, and create the initial config as described in each section relevant to the controller. Once finished, at the SSH commandline, run:

ls



NOTE: the VILROS NES controller, the SNES controller, and the 6-button controller all have the same USB ID number & name. When plugging the controller in and configuring in emulationstation , a .cfg file will be created in /opt/retropie/configs/all/retroarch-joypads . In this case, when plugging the NES controller, this file is created:



'USB Gamepad .cfg'

Copy this file to <systemname - USBname.cfg>

This example: cp 'USB Gamepad .cfg' NES-controller-USB-Gamepad.cfg

When swapping controllers, copy the file back:

cp /opt/retropie/configs/all/retroarch-joypads/NES-controller-USB-Gamepad.cfg /opt/retropie/configs/all/retroarch-joypads/'USB Gamepad .cfg'

Do the initial setups for each emulator/controller combination. Once the controller is active in emulationstation, the buttons will need mapped to the cores. This is detailed in each section below. You should have 3 files created:

NES-controller-USB-Gamepad.cfg

Sega-6button-USB-Gamepad.cfg

SNES-controller-USB-Gamepad.cfg

Restart emulationstation from within the ES interface or restart the retropie from the terminal with sudo reboot . The controller will be ready for use for each of the game systems it has been configured for.

Creating controller-specific mapping:

After configuring each controller as shown below, the configurations for these mapppings should be move from defaults to controller-specific names to make loading the configurations simpler.

SSH to the retropie:

cd /opt/retropie/configs/nes/<emulator>/

cp <emulator>.rmp <controller-emulator>.rmp

rm <emulator.rmp>

Example:

pi@superpi:/opt/retropie/configs/snes/Snes9x $ cd /opt/retropie/configs/nes/Snes9x/

pi@superpi:/opt/retropie/configs/snes/Snes9x $ cp Snes9x.rmp SNES-Snes9x.rmp

pi@superpi:/opt/retropie/configs/snes/Snes9x $ rm Snes9x.rmp

NES Classic Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to NES & Vilros NES Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

plug in keyboard & controller

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/nes/retroarch.cfg

add input_menu_toggle_btn = "1" above #include

above restart emulationstation

open NES game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘A button 1’ to ‘A’

change ‘X button 2’ to ‘B’

press ‘z’ on the keyboard

Save Core Remap File

Load Remap File -> <emulator-name>.rmp

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sega Game Gear & Vilros NES Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

plug in keyboard

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/gamegear/retroarch.cfg

add ‘input_menu_toggle_btn = “1”‘ above #include

restart emulationstation

open Game Gear game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘A button 1’ to ‘C’

change ‘X button 2’ to ‘B’

press ‘z’ on the keyboard

Save Core Remap File

Load Remap File -> .rmp

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Gameboy/Gameboy Color & Vilros NES Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

plug in keyboard

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/gb or gbc/retroarch.cfg

add ‘input_menu_toggle_btn = “1”‘ above #include

restart emulationstation

open Gameboy game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘A button 1’ to ‘A’

change ‘X button 2’ to ‘B’

press ‘z’ on the keyboard

Save Core Remap File

Load Remap File -> .rmp

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sega Master System & Vilros NES Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

plug in keyboard

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/ngp/retroarch.cfg

add ‘input_menu_toggle_btn = “1”‘ above #include

restart emulationstation

open Master System game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘A button 1’ to ‘Button 2’

change ‘X button 2’ to ‘Button 1 Start’

press ‘z’ on the keyboard

Save Core Remap File

Load Remap File -> .rmp

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to NEOGEO Pocket & Vilros NES Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

plug in keyboard

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/ngpc/retroarch.cfg

add ‘input_menu_toggle_btn = “1”‘ above #include

restart emulationstation

open a NEOGEO Pocket game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘A button 1’ to ‘A’

change ‘X button 2’ to ‘B’

press ‘z’ on the keyboard

Save Core Remap File

Load Remap File -> .rmp

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to PC Engine/TurboGraphix 16 & Vilros NES Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

plug in keyboard

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/pcengine/retroarch.cfg

add ‘input_menu_toggle_btn = “1”‘ above #include

restart emulationstation

open a PC Engine/TurboGraphix 16 game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘A button 1’ to ‘I’

change ‘X button 2’ to ‘II’

press ‘z’ on the keyboard

Save Core Remap File

Load Remap File -> .rmp

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Atari 2600 & Vilros NES Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

plug in keyboard

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/atari2600/retroarch.cfg

add ‘input_menu_toggle_btn = “1”‘ above #include

restart emulationstation

open a Atari 2600 game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘A button 1’ to ‘—‘

change ‘X button 2’ to ‘Fire’ – Sets the B button to usable

press ‘z’ on the keyboard

Save Core Remap File

Load Remap File -> .rmp

Create controller-specific mapping

Super Nintendo Entertainment System (SNES) Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Super Nintendo & Vilros SNES Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Tested using Super Mario World [US]

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

restart emulationstation

open SNES game

open RGUI with ‘select + left bumper’

Controls -> Port 1 Controls

change ‘B button 0’ to ‘A’

change ‘Y button 3’ to ‘Y’

change ‘A button 1’ to ‘X’

change ‘X button 2’ to ‘B’

Save Core Remap File

Load Remap File -> snes9x.rmp

Create controller-specific mapping

Sega 6-button Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sega Megadrive & Vilros 6-button Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

(tested using lr-genesis-plus-gx)

Used Section 4b as my button guidance – https://gamefaqs.gamespot.com/genesis/586509-super-street-fighter-ii/faqs/63633

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/megadrive/retroarch.cfg

Add these next two lines above #include:

input_libretro_device_p1 = “513”

input_libretro_device_p2 = “513”

No need to set ‘input_menu_toggle_btn = “1”‘; this will be middle-top button (X)

restart emulationstation

open a Sega Megadrive game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘B button 0’ to ‘A’

change ‘Y button 3’ to ‘X’

change ‘A button 1’ to ‘B’

change ‘X button 2’ to ‘C’

change ‘L Button 4’ to ‘Y’

change ‘R Button 5’ to ‘Z’

press ‘A’ on the controller (bottom left)

Save Core Remap File

Load Remap File -> .rmp

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sega CD & Vilros 6-button Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

These are the same instructions as the Sega Megadrive

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

edit /opt/retropie/configs/segacd/retroarch.cfg

Add these next two lines above #include:

input_libretro_device_p1 = “513”

input_libretro_device_p2 = “513”

No need to set ‘input_menu_toggle_btn = “1”‘; this will be middle-top button (X)

restart emulationstation

open a Sega CD game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘B button 0’ to ‘A’

change ‘Y button 3’ to ‘X’

change ‘A button 1’ to ‘B’

change ‘X button 2’ to ‘C’

change ‘L Button 4’ to ‘Y’

change ‘R Button 5’ to ‘Z’

press ‘A’ on the controller (bottom left)

Save Core Remap File

Load Remap File -> .rmp

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sega 32x & Vilros 6-button Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

(tested using picodrive)

https://retropie.org.uk/forum/topic/16801/can-t-get-6-button-controller-sega-emulators

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

No need to set ‘input_menu_toggle_btn = “1”‘; this will be middle-top button (X)

restart emulationstation

open a Sega Megadrive game

open RGUI with ‘select + a button’

Go into Quick Menu -> Options and set player 1 (and 2) to 6-button controller

Controls -> Port 1 Controls

change ‘B button 0’ to ‘A’

change ‘Y button 3’ to ‘X’

change ‘A button 1’ to ‘B’

change ‘X button 2’ to ‘C’

change ‘L Button 4’ to ‘Y’

change ‘R Button 5’ to ‘Z’

press ‘A’ on the controller (bottom left)

Save Core Remap File

Load Remap File -> find the sega32x.rmp file.

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sega Saturn & Vilros 6-button Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

No need to set ‘input_menu_toggle_btn = “1”‘; this will be middle-top button (X)

restart emulationstation

open a Saturn game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘B button 0’ to ‘B’

change ‘Y button 3’ to ‘X’

change ‘Select button 8’ to ‘—‘

change ‘A button 1’ to ‘A’

change ‘X button 2’ to ‘C’

change ‘L Button 4’ to ‘Y’

change ‘R Button 5’ to ‘Z’

press ‘A’ on the controller (bottom left)

Save Core Remap File

Load Remap File -> find the Yabause.rmp file.

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Panasonic 3DO & Vilros 6-button Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

This was functionally useless – https://github.com/RetroPie/RetroPie-Setup/wiki/3do

Tested this with DOOM to get the buttons correct.

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘USB Gamepad .cfg’

No need to set ‘input_menu_toggle_btn = “1”‘; this will be middle-top button (X)

restart emulationstation

open a 3DO game

open RGUI with ‘select + a button’

Controls -> Port 1 Controls

change ‘B button 0’ to ‘A’

change ‘Y button 3’ to ‘L’

change ‘Select 8’ to ‘X (Stop)’

change ‘A button 1’ to ‘B’

change ‘X button 2’ to ‘C’

change ‘L Button 4’ to ‘—‘

change ‘R Button 5’ to ‘R’

press ‘A’ on the controller (bottom left)

Save Core Remap File

Load Remap File -> find the Opera.rmp file.

Create controller-specific mapping

Nintendo N64 Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Nintendo 64 & Vilros N64 Controller –

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

4-17-20

– Config is “good enough”, but still issues with GoldenEye I’m not sure how to resolve

using lr-mupen64plus:

Configuring initial setup from

https://github.com/RetroPie/RetroPie-Setup/wiki/Nintendo-64

Tested using F-Zero X with this as my guide: https://strategywiki.org/wiki/F-Zero_X/Controls

https://forum.recalbox.com/topic/3170/solved-n64-emulator-doesn-t-work-with-n64-usb-controller/2

Controller detects as: DragonRise\ Inc.\ \ \ Generic\ \ \ USB\ \ Joystick\ \ .cfg

Configure in emulationstation – do not set hotkey ‘select’

edit /opt/retropie/configs/n64/retroarch.cfg

add ‘input_menu_toggle_btn = “4”‘ above #include

restart emulationstation

open a N64 game

open RGUI with ‘left bumper (button 4)’

Controls -> Port 1 Controls

– Analog to Digital Type to ‘None’

– B Button 0 to ‘C1’

– Y button 3 to ‘B Button (C2)’

– Select Button 8 to ‘B Button (C2)’

– A button 1 to ‘A Button (C3)’

– X Button 2 to ‘C4’

– L button 4 to ‘L-Trigger’

– R button 5 to ‘R-Trigger’

– L2 button 6 to ‘A Button (C3)’

– R2 button 7 to ‘Z-trigger’

press ‘^’ on the controller (Top C button)

Save Core Remap File

pres ‘>’ on controller (Right C button)

Load Remap File -> find the file.

ssh – cd /opt/retropie/configs/n64/

cd

cp .rmp .rmp

Create controller-specific mapping

************| This is incomplete |****************

info for using mupen64plus (not done yet):

for /opt/retropie/configs/n64/InputAutoCfg.ini

[DragonRise Inc. Generic USB Joystick]

plugged = True

plugin = 2

mouse = False

AnalogDeadzone = 4096,4096

AnalogPeak = 32768,32768

DPad R = axis(5+)

DPad L = axis(5-)

DPad D = axis(6+)

DPad U = axis(6-)

Start = button(9)

Z Trig = button(7)

B Button = button(8)

A Button = button(6)

C Button R = button(1)

C Button L = button(3)

C Button D = button(2)

C Button U = button(0)

R Trig = button(5)

L Trig = button(4)

Mempak switch = key(109)

Rumblepak switch = key(114)

Y Axis = axis(1-,1+)

X Axis = axis(0-,0+)

Not Needed, but not deleting just yet:

input_menu_toggle_btn = “4”

input_select_btn = “7”

input_exit_emulator_btn = “-0”

input_reset_btn = “8”

input_menu_toggle_btn = “7”

input_select_btn = “4”

input_r_y_minus_btn = “0”

input_r_y_plus_btn = “2”

input_r_x_minus_btn = “3”

input_r_x_plus_btn = “1”

***********************************************

Sony Playstation Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sony Playstation & Vilros PS2 Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Tested with ‘Batman Beyond: Return of The Joker.’ – game has button-map in the startup options

Turn the analog button. ‘Analog’ will glow red.

Configure in emulationstation – allow hotkey to be ‘select’ (button 8)

Detects as ‘Microntek USB Joystick .cfg’

No need to set ‘input_menu_toggle_btn = “1”‘; this will be Triangle)

open a PSX game

open RGUI with ‘select + Triangle button’

Controls -> Port 1 Controls

change ‘B button 0’ to ‘Triangle’

change ‘Y button 3’ to ‘Square’

change ‘Select 8’ to ‘Select’

change ‘A button 1’ to ‘Circle’

change ‘X button 2’ to ‘Cross’

change ‘L Button 4’ to ‘L1’

change ‘R Button 5’ to ‘R1’

press ‘Triangle’ to go back.

Save Core Remap File

Load Remap File -> find the .rmp file.

Create controller-specific mapping

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sony PSP & Vilros PS2 Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Using PPSSPP – Just worked. Ran through the tests from

https://github.com/RetroPie/RetroPie-Setup/wiki/PSP

Hit Esc on the keyboard and went through programming the buttons. They were already set correctly.

Had to set the L and R. These mapped to

L – pad1.b6

R – pad1.b5

All other buttons were correct.

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Initial setup specific to Sega Dreamcast & Vilros PS2 Controller

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Using REDREAM – Just worked.

Hit Esc on the keyboard and went through programming the buttons. They were already set correctly.

Changed mapping of Select button to REDREAM Main Menu.

All other buttons were correct.

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Controller USB IDs

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Determined by plugging each in, then running dmesg

NES Controller:

[17931.436014] usb 1-1.4: new low-speed USB device number 8 using xhci_hcd

[17931.582235] usb 1-1.4: New USB device found, idVendor=0079, idProduct=0011, bcdDevice= 1.06

[17931.582247] usb 1-1.4: New USB device strings: Mfr=0, Product=2, SerialNumber=0

[17931.582255] usb 1-1.4: Product: USB Gamepad

[17931.592100] input: USB Gamepad as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0079:0011.0005/input/input5

[17931.592444] dragonrise 0003:0079:0011.0005: input,hidraw2: USB HID v1.10 Joystick [USB Gamepad ] on usb-0000:01:00.0-1.4/input0

SNES Controller:

[18010.527102] usb 1-1.4: new low-speed USB device number 9 using xhci_hcd

[18010.673572] usb 1-1.4: New USB device found, idVendor=0079, idProduct=0011, bcdDevice= 1.06

[18010.673581] usb 1-1.4: New USB device strings: Mfr=0, Product=2, SerialNumber=0

[18010.673587] usb 1-1.4: Product: USB Gamepad

[18010.685552] input: USB Gamepad as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0079:0011.0006/input/input6

[18010.685808] dragonrise 0003:0079:0011.0006: input,hidraw2: USB HID v1.10 Joystick [USB Gamepad ] on usb-0000:01:00.0-1.4/input0

Sega 6-button controller:

[18178.759401] usb 1-1.4: new low-speed USB device number 10 using xhci_hcd

[18178.895751] usb 1-1.4: New USB device found, idVendor=0079, idProduct=0011, bcdDevice= 1.06

[18178.895761] usb 1-1.4: New USB device strings: Mfr=0, Product=2, SerialNumber=0

[18178.895767] usb 1-1.4: Product: USB Gamepad

[18178.907599] input: USB Gamepad as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0079:0011.0007/input/input7

[18178.907918] dragonrise 0003:0079:0011.0007: input,hidraw2: USB HID v1.10 Joystick [USB Gamepad ] on usb-0000:01:00.0-1.4/input0

N64 Controller:

[ 10.123670] bcm2835-codec bcm2835-codec: Loaded V4L2 isp

[ 10.128000] input: DragonRise Inc. Generic USB Joystick as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0079:0006.0003/input/input3

[ 10.128766] dragonrise 0003:0079:0006.0003: input,hidraw2: USB HID v1.10 Joystick [DragonRise Inc. Generic USB Joystick ] on usb-0000:01:00.0-1.4/input0

PS2 Controller:

[15340.573573] usb 1-1.4: new low-speed USB device number 7 using xhci_hcd

[15340.712526] usb 1-1.4: New USB device found, idVendor=0079, idProduct=0006, bcdDevice= 1.07

[15340.712532] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0

[15340.712537] usb 1-1.4: Product: USB Joystick

[15340.712541] usb 1-1.4: Manufacturer: Microntek

[15340.724899] input: Microntek USB Joystick as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0079:0006.0004/input/input4

[15340.725117] dragonrise 0003:0079:0006.0004: input,hidraw2: USB HID v1.10 Joystick [Microntek USB Joystick ] on usb-0000:01:00.0-1.4/input0