Joystick testing thread

https://github.com/MiSTer-devel/Main_MiSTer/wiki

Moderators: Mug UK, Zorro 2, spiny, Greenious, Sorgelig, Moderator Team

NML32
Atari Super Hero
Atari Super Hero
Posts: 530
Joined: Tue Mar 11, 2014 1:54 am
Location: USA/Florida

Re: Joystick testing thread

Postby NML32 » Sun May 20, 2018 6:11 pm

raparici, I've been updating my post as I find new information that may be helpful to your issue. Maybe you missed this in my post. I think it may be worth a try.

2600-daptor II stripped FB1.hex - try this if you want to use with emulators other than Stella & EMU7800. This gets rid of the z-axis and disables button 1 when in 7800 mode - these can confuse the controller mapping in other emulators.

raparici
Atarian
Atarian
Posts: 7
Joined: Sat Jun 03, 2017 5:27 pm

Re: Joystick testing thread

Postby raparici » Sun May 20, 2018 7:06 pm

My Daptor 2600, is not Daptor II, but Daptor 2600 D9. As I commented I have no issues with VICE family of emulators.

Sorgelig
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2615
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: Joystick testing thread

Postby Sorgelig » Mon May 21, 2018 7:51 pm

New MiSTer update automatically detects the analog range, so it should be compatible with more joysticks without special tweaks.
Probably Daptor 2600 will work as well.

raparici
Atarian
Atarian
Posts: 7
Joined: Sat Jun 03, 2017 5:27 pm

Re: Joystick testing thread

Postby raparici » Thu May 24, 2018 12:33 pm

I tried in the Minimig core and it works perfect, thank you ! :-) will it work in all the other cores then ?

mrr19121970
Retro freak
Retro freak
Posts: 11
Joined: Wed Aug 02, 2017 3:40 pm

Re: Joystick testing thread

Postby mrr19121970 » Wed Aug 29, 2018 7:14 pm

I have 2 issues with ÚSB joysticks:

1) https://koka-shop.de/competition-pro-us ... ition.html I bought the USB Comp Pro. I was able to define directions and buttons over the core menu, and it worked fine in the menu. However I can't get any response in the NES core.

2) https://www.ebay.de/i/232908040742 this USB->DB9 adaptor works fin under Windows, however cannot be configured in the core menu. Every button and direction is registered as 0001/0001. HID\VID_0001&PID_0001&REV_0102

Any tips for getting either or both working ?

User avatar
Newsdee
Atari God
Atari God
Posts: 1176
Joined: Fri Sep 19, 2014 8:40 am

Re: Joystick testing thread

Postby Newsdee » Thu Aug 30, 2018 2:29 am

mrr19121970 wrote:I have 2 issues with ÚSB joysticks:

1) https://koka-shop.de/competition-pro-us ... ition.html I bought the USB Comp Pro. I was able to define directions and buttons over the core menu, and it worked fine in the menu. However I can't get any response in the NES core.

2) https://www.ebay.de/i/232908040742 this USB->DB9 adaptor works fin under Windows, however cannot be configured in the core menu. Every button and direction is registered as 0001/0001. HID\VID_0001&PID_0001&REV_0102

Any tips for getting either or both working ?


I don't remember remember if the NES core has a "swap joysticks" option. You can also try remapping from within the NES core. If it worked for other cores, it will work for NES.

The second one will need looking at the debugger output to figure out what USB messages are being sent to your MiSTer.

mrr19121970
Retro freak
Retro freak
Posts: 11
Joined: Wed Aug 02, 2017 3:40 pm

Re: Joystick testing thread

Postby mrr19121970 » Thu Aug 30, 2018 4:06 am

yes. the swap joysticks did it for me on the NES. I will try the debugger and post the results here.

mrr19121970
Retro freak
Retro freak
Posts: 11
Joined: Wed Aug 02, 2017 3:40 pm

Re: Joystick testing thread

Postby mrr19121970 » Fri Aug 31, 2018 6:13 pm

mrr19121970 wrote:https://www.ebay.de/i/232908040742


Long story shortened, I couldn't get anything on the SERIAL screen inspite of connecting correctly like described in the WIKI. Anyway....

It actually did work, defined right/left/up/down/B1 and skipped the rest. Was able to play NES with this USB->DB9 connector.

Tried this one also, and can confirm that it works fine too https://www.ebay.de/itm/253836508696

BBond007
Atari freak
Atari freak
Posts: 63
Joined: Wed Feb 28, 2018 3:23 am

Re: Joystick testing thread

Postby BBond007 » Fri Sep 07, 2018 12:43 am

Hello

I'm trying to use an adapter called "INNEX ATARI Controller USB".

This is an older adapter that I probably bought 10 years ago.

I'd like to use my CD32 controllers with my MiSTer Amiga CD32.

atari_to_usb01__95470.1493840714.jpg


Anyway both joysticks register the right and down and fire, however no up and left don't work or either stick.

I attached a Raspberry Pi and monitored the output from the serial console and no events were being reported for left or up.

I tried the adapter with the Raspberry Pi running RetroPie and had the exact same issue as MiSTer.

I figured the converter was defective so I tried the adapter under windows where it worked as expected.

I found a description of the problem I'm having here:

https://github.com/robmcmullen/hid-atari-retrobit

Is there a simpler fix than maintaining a non-standard kernel. I like this adapter because it supports two joysticks, however only one button is supported, so I'm considering a different adapter.

Thanks
You do not have the required permissions to view the files attached to this post.

Sorgelig
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2615
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: Joystick testing thread

Postby Sorgelig » Fri Sep 07, 2018 12:54 am

As you already noticed, this adaptor supports only one fire button which will be not enough for many cores.
Look for modern gamepads instead. Chinese PS3 replica is very cheap and has a lot of buttons.

ShyBry
Atarian
Atarian
Posts: 2
Joined: Wed Oct 10, 2018 9:09 pm

Re: Joystick testing thread

Postby ShyBry » Thu Oct 11, 2018 12:00 am

I've been unable to get my Retrode with a SNES controller to work as an input device. It works fine as a USB keyboard on a PC. If I plug it directly into the DE10-nano, the Retrode LED doesn't even light up. If I plug into a powered USB hub, sometimes it lights up but I can't map inputs. I'm probably doing something wrong since the first post of this thread lists it as working...?

Also I've been unable to connect via serial port to debug. I don't have a Windows PC; from a Linux PC, when I connect the mini USB of the DE10-nano, I can see an Altera device connected via lsusb (09fb:6810) but no /dev/ttyUSB0 appears. If I follow https://unix.stackexchange.com/a/104179 and try the following:

Code: Select all

# modprobe ftdi_sio
# echo 09fb 6810 >/sys/bus/usb-serial/drivers/ftdi_sio/new_id


I can get a /dev/ttyUSB0 to appear, but am unable to use minicom or screen to access it - it just hangs with no output, and dmesg is full of errors like

Code: Select all

[279539.268293] ftdi_sio ttyUSB0: ftdi_set_termios FAILED to set databits/stopbits/parity
[279540.268293] ftdi_sio ttyUSB0: ftdi_set_termios urb failed to set baudrate
[279545.268295] ftdi_sio ttyUSB0: urb failed to set to xon/xoff flow control
[279555.268300] ftdi_sio ttyUSB0: urb failed to set to xon/xoff flow control
[279560.268426] ftdi_sio ttyUSB0: Unable to write latency timer: -110


Has anyone accessed the serial port from a Linux PC to debug joystick issues? Am I missing something?

BBond007
Atari freak
Atari freak
Posts: 63
Joined: Wed Feb 28, 2018 3:23 am

Re: Joystick testing thread

Postby BBond007 » Thu Oct 11, 2018 2:38 am

ShyBry wrote:
Has anyone accessed the serial port from a Linux PC to debug joystick issues? Am I missing something?


I used a RPi/RetroPie/Minicom to debug mine, so yes....

No issue like that though. I did not have to do anything special (like modprobe) for the serial port to appear. I just got the device name from dmesg.

it seems like maybe you are set up for xon/xoff(software) flow control/handshaking vs CTS/RTS(hardware) and possibly wrong BPS

Probably wrong but check that anyway...
Last edited by BBond007 on Thu Oct 11, 2018 3:17 am, edited 1 time in total.

BBond007
Atari freak
Atari freak
Posts: 63
Joined: Wed Feb 28, 2018 3:23 am

Re: Joystick testing thread

Postby BBond007 » Thu Oct 11, 2018 3:14 am

Sorgelig wrote:As you already noticed, this adaptor supports only one fire button which will be not enough for many cores.
Look for modern gamepads instead. Chinese PS3 replica is very cheap and has a lot of buttons.


ended up just replacing the device with this:

https://www.amazon.com/gp/product/B00QRZ1HVS

Works well for anyone interested.

ReedSolomon
Atarian
Atarian
Posts: 6
Joined: Tue Oct 09, 2018 1:52 am

Re: Joystick testing thread

Postby ReedSolomon » Sun Oct 14, 2018 4:52 am

BBond007 wrote:Is there a simpler fix than maintaining a non-standard kernel. I like this adapter because it supports two joysticks, however only one button is supported, so I'm considering a different adapter.

Thanks


I have the genesis model of this cable and down and left don't register either, all other buttons work fine on a six button genesis controller even the mode button. It is a bit of an annoyance that this hasn't been fixed under Linux even though it's been a known issue for years.

Maybe when the bluetooth/usb Sega Saturn controllers come out by retro-bit they'll be an option to consider.

ijor
Hardware Guru
Hardware Guru
Posts: 3476
Joined: Sat May 29, 2004 7:52 pm
Contact:

Re: Joystick testing thread

Postby ijor » Mon Oct 15, 2018 2:22 pm

Sorgelig wrote:I have idea to add menu option preventing simultaneous button presses to improve game experience.


Have been implemented something like that? It might be a good idea. Some software might get confused if conflicting switches are asserted.

It is of course possible to prevent the conflict at the core. But I am bit reluctant to implement this at the core level since the hardware logic does allow it, and it was even used sometimes (e.g, some primitive protection dongles). The limitation was on the regular old joysticks that would never assert two switches in opposite directions.

Thinking in loud voice ... Ideally it might need some cooperation between the core and the MiSTer app. Only the app knows what kind of controller is currently connected and the app also receives all the events, press and release, while the core just receives a "state". But only the core knows if joysticks might allow two switches simultaneously (diagonal movement) as long as they are not on the opposite directions, or if only one switch at a time is expected to be asserted.

Sorgelig
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2615
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: Joystick testing thread

Postby Sorgelig » Mon Oct 15, 2018 3:01 pm

This is very specific to the core. Some arcades with joysticks using + in the case preventing diagonal move, but it's limited by few arcades. It's easy to implement inside the core and don't move this specific thing to ARM.
MiSTer already provides good enough and independent from implementation flexibility of input.
I've made implementation preventing diagonal events in some arcades - it's not that hard and completely independent.

ijor
Hardware Guru
Hardware Guru
Posts: 3476
Joined: Sat May 29, 2004 7:52 pm
Contact:

Re: Joystick testing thread

Postby ijor » Tue Oct 16, 2018 10:00 am

Sorgelig wrote:This is very specific to the core. Some arcades with joysticks using + in the case preventing diagonal move, but it's limited by few arcades. It's easy to implement inside the core and don't move this specific thing to ARM.
MiSTer already provides good enough and independent from implementation flexibility of input.
I've made implementation preventing diagonal events in some arcades - it's not that hard and completely independent.


Of course that it's not too difficult to implement this at the core. But, as I said, ideally it shouldn't be done at the core level because the platform hardware doesn't really have such limitation, only the joysticks did.

Take for e.g. the Atari 8-bit. The standard joystick were the old, regular, 2600 style joysticks that can't never assert opposite switches at the same time. But there were many other peripherals that connected to the joystick ports that didn't have such limitation. If you limit the connections at the core level, you won't be able to "emulate" any of those peripherals.

I do agree that is not such a big deal anyway. And I might perfectly understand that the use of special controllers or peripherals is very limited. So it might be not worth implementing this at the Arm side.

Sorgelig
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2615
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: Joystick testing thread

Postby Sorgelig » Tue Oct 16, 2018 11:45 am

This is where glue code works.
As you can see with Atari 8-bit core, the Atari800.sv is the glue code between core itself and MiSTer. As you see it does some additional things like paddle emulation by mouse. This is very very specific to this core, thus handled on FPGA side. Not in the main module but in adaptation glue module.
Handling every small specific to core thing in MiSTer will increase it's complexity without a real reason.

Sometimes i move some feature to MiSTer when i see it's common to many cores and easier to be handled in MiSTer. For example explicit joystick mode for keyboard on consoles cores as it's obviously keyboard input is not needed for these cores.

User avatar
nightshadowpt
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 100
Joined: Wed May 10, 2017 5:04 am

Re: Joystick testing thread

Postby nightshadowpt » Sun Oct 21, 2018 4:22 am

Hi,

I have tested a Razer Atrox (Xbox 360 version) and it works like a charm.

Image


Return to “MiSTer”

Who is online

Users browsing this forum: berighteous and 4 guests