Original controllers - SNAC vs. USB?
-
- Posts: 11
- Joined: Wed May 27, 2020 11:16 pm
Original controllers - SNAC vs. USB?
Is there any benefit of using SNAC over USB adapters besides from being able to use light guns?
I only want to use my original controllers (not light guns). I Don’t see any reason to use SNAC over USB Adapters aside from having the define the joypad buttons per core which I believe SNAC doesn’t require.
Am I missing something or is SNAC not really worth using if you don’t care too much about special controllers?
All opinions appreciated
Ps first post here!
I only want to use my original controllers (not light guns). I Don’t see any reason to use SNAC over USB Adapters aside from having the define the joypad buttons per core which I believe SNAC doesn’t require.
Am I missing something or is SNAC not really worth using if you don’t care too much about special controllers?
All opinions appreciated
Ps first post here!
- Newsdee
- Top Contributor
- Posts: 873
- Joined: Mon May 25, 2020 1:07 am
- Has thanked: 104 times
- Been thanked: 239 times
Re: Original controllers - SNAC vs. USB?
SNAC was mostly added to allow using non-standard controllers (like a lightgun).
For regular controllers USB should work fine.
For regular controllers USB should work fine.
-
- Posts: 11
- Joined: Wed May 27, 2020 11:16 pm
Re: Original controllers - SNAC vs. USB?
Thanks for the reply!
So I’m right in saying that there is no benefit from using the SNAC over USB adapters I.e. Raphnet, daemonbite ones, other than non-standard controller support and not having to worry about defining joypad buttons?
I think that this is the case but want to make sure I’m not missing something from not choosing SNAC.
Re: Original controllers - SNAC vs. USB?
the big advantage, at least for me, is that with the daemonbite adapter, it not only works with mister but also pc[and probably your phone too] as it just turns it inot an xinput device
-
- Posts: 11
- Joined: Wed May 27, 2020 11:16 pm
Re: Original controllers - SNAC vs. USB?
Although I won’t use it for PC, that is a good point!
I think I’m going to stick with USB. I don’t think it’s worth it for me personally to use SNAC.
Thanks for the replies.
-
- Posts: 109
- Joined: Wed May 27, 2020 11:33 pm
- Has thanked: 101 times
- Been thanked: 15 times
Re: Original controllers - SNAC vs. USB?
I don't now, so I'm asking not stating, but doesn't SNAC have less input lag than USB?
Also, light guns work with SNAC, is there any info about a Sega Master System 3D Glasses adapter?
Also, light guns work with SNAC, is there any info about a Sega Master System 3D Glasses adapter?
- Sigismond0
- Posts: 339
- Joined: Mon May 25, 2020 2:21 am
- Has thanked: 1 time
- Been thanked: 66 times
Re: Original controllers - SNAC vs. USB?
SNAC will save you ~1ms compared to an optimal USB setup. The big advantage isn't the latency, it's the native accessory support like light guns and such.
Re: Original controllers - SNAC vs. USB?
Small correction, the daemonbite adapters are DirectInput (DInput) devices.
- SegaSnatcher
- Posts: 163
- Joined: Sun May 24, 2020 9:18 pm
- Has thanked: 36 times
- Been thanked: 43 times
Re: Original controllers - SNAC vs. USB?
SNAC will save you from missing the 1 frame polling rate since you'll always be on time with a wired native controller since its direct to FPGA communication and essentially works just like a native connection. Best tested USB controllers can hit about 95% on time which is really good, but some USB controllers can be much worse, at least with SNAC you know you are getting the best latency possible.Sigismond0 wrote: ↑Wed Jun 17, 2020 3:38 pm SNAC will save you ~1ms compared to an optimal USB setup. The big advantage isn't the latency, it's the native accessory support like light guns and such.
So its not just merely 1ms you gain in reality, it can be up to a frame.
-
- Posts: 72
- Joined: Mon May 25, 2020 8:41 am
- Has thanked: 75 times
- Been thanked: 13 times
- Contact:
Re: Original controllers - SNAC vs. USB?
I'm happy with USB (Daemonbite controller) only with Fast USB polling. If you go the USB route just run fast_USB_polling_on.sh script, it makes a difference.
Re: Original controllers - SNAC vs. USB?
Anyone got a download link for the fast_USB_polling_on.sh script? I can't find it anywhere online and I can't run the update script as I'm in China and my Mister is unable to connect to Github.
Many thanks!
Edit:
Never mind, found it here:
https://raw.githubusercontent.com/MiSTe ... ling_on.sh
Many thanks!
Edit:
Never mind, found it here:
https://raw.githubusercontent.com/MiSTe ... ling_on.sh
Re: Original controllers - SNAC vs. USB?
Hi all,
just had a revelation in terms of gameplay/input lag after I‘ve soldered a Mega Drive controller PCB to my Namco arcade stick.
When I connected the stick to Antonio Villena‘s MiSTer via the DB9 port (User IO Joystick DB9), the difference in performance vs. USB was like night and day, with input lag completely gone and gameplay on par with the original arcade PCB.
I‘m extremely input lag sensitive and couldn‘t wipe that huge smile off my face while playing Wonderboy arcade and Contra/Adventure Island on the Famicom core.
I‘m super happy with what I‘ve got now and just wanted to encourage everyone to consider doing this, if 100% accurate gameplay is as important to you, as it is to me.
Not going back to my JPAC, despite having fast USB polling activated.
just had a revelation in terms of gameplay/input lag after I‘ve soldered a Mega Drive controller PCB to my Namco arcade stick.
When I connected the stick to Antonio Villena‘s MiSTer via the DB9 port (User IO Joystick DB9), the difference in performance vs. USB was like night and day, with input lag completely gone and gameplay on par with the original arcade PCB.
I‘m extremely input lag sensitive and couldn‘t wipe that huge smile off my face while playing Wonderboy arcade and Contra/Adventure Island on the Famicom core.
I‘m super happy with what I‘ve got now and just wanted to encourage everyone to consider doing this, if 100% accurate gameplay is as important to you, as it is to me.
Not going back to my JPAC, despite having fast USB polling activated.
-
- Posts: 9
- Joined: Wed Jul 15, 2020 3:42 pm
- Has thanked: 2 times
Re: Original controllers - SNAC vs. USB?
Your USB adapter must be very bad and laggy. Im very, very, VERY sensitive to lag and I play mister with a good usb adapter and i can do 1 frame links on street fighter consistently. I also play the same game with a real cps1 pcb and a arcade stick with a supergun and native jamma controls and get exactly the same perceived latency.Gryzor wrote: ↑Mon Jul 13, 2020 2:38 pm Hi all,
just had a revelation in terms of gameplay/input lag after I‘ve soldered a Mega Drive controller PCB to my Namco arcade stick.
When I connected the stick to Antonio Villena‘s MiSTer via the DB9 port (User IO Joystick DB9), the difference in performance vs. USB was like night and day, with input lag completely gone and gameplay on par with the original arcade PCB.
I‘m extremely input lag sensitive and couldn‘t wipe that huge smile off my face while playing Wonderboy arcade and Contra/Adventure Island on the Famicom core.
I‘m super happy with what I‘ve got now and just wanted to encourage everyone to consider doing this, if 100% accurate gameplay is as important to you, as it is to me.
Not going back to my JPAC, despite having fast USB polling activated.
Re: Original controllers - SNAC vs. USB?
Oh, I can 1cc Contra or Ghouls'n Ghosts and pull off combos with a USB controller just fine too, tyvm.
But my post was about how much tighter it feels to play with DB9 input, after shaving off that last frame of lag.
I just perform NOTICEABLY better with SNAC, up to the point where most games feel entirely different.
That's just me though, so feel free to keep playing with a USB controller.
-
- Core Developer
- Posts: 217
- Joined: Sun May 24, 2020 8:48 pm
- Has thanked: 50 times
- Been thanked: 301 times
Re: Original controllers - SNAC vs. USB?
DB9 is not the same as SNAC. DB9 still has latency because it has to poll the controller.
SNAC is directly connected to the core without additional polling.
SNAC is directly connected to the core without additional polling.
Re: Original controllers - SNAC vs. USB?
Check out Antonio Villena's MiSTer devices. He builds them with a SNAC8 interface, implemented through a DB9 connector.
Apparently SNAC8 has one additional pin compared to the offical SNAC7, but it's lagfree all the same.
I'm running the ENCC/UserIO joystick fork of the MiSTer cores for that.
-
- Posts: 9
- Joined: Wed Jul 15, 2020 3:42 pm
- Has thanked: 2 times
Re: Original controllers - SNAC vs. USB?
Well if thats the case im sorry, i feel bad for you. Must suck to not be able to enjoy a game because of microseconds of lag.Gryzor wrote: ↑Fri Jul 17, 2020 10:44 amOh, I can 1cc Contra or Ghouls'n Ghosts and pull off combos with a USB controller just fine too, tyvm.
But my post was about how much tighter it feels to play with DB9 input, after shaving off that last frame of lag.
I just perform NOTICEABLY better with SNAC, up to the point where most games feel entirely different.
That's just me though, so feel free to keep playing with a USB controller.
-
- Core Developer
- Posts: 217
- Joined: Sun May 24, 2020 8:48 pm
- Has thanked: 50 times
- Been thanked: 301 times
Re: Original controllers - SNAC vs. USB?
DB9 connects to the same IO lines as SNAC but it is not a native controller because DB9 supports various controllers like Genesis, SNES, TurboGrafx etc. on all cores. So that means it has to convert the different types of controller to a standard type which in this case is Genesis. That means it has to poll the controllers (lag).Gryzor wrote: ↑Fri Jul 17, 2020 5:07 pm Check out Antonio Villena's MiSTer devices. He builds them with a SNAC8 interface, implemented through a DB9 connector.
Apparently SNAC8 has one additional pin compared to the offical SNAC7, but it's lagfree all the same.
I'm running the ENCC/UserIO joystick fork of the MiSTer cores for that.
If you connect a SNES controller then it has to poll the controller and convert it to Genesis type. Then the DB9 module in the cores polls the DB9 adapter every 1.31 milliseconds. So it has at least 1.31ms lag + the time it takes to poll the SNES controller and convert it to Genesis type.
The lag may be lower than some USB devices but certainly not lag free.
Re: Original controllers - SNAC vs. USB?
You feel bad for me being "super happy with what I've got now"?retrossauro wrote: ↑Sat Jul 18, 2020 2:16 am i feel bad for you. Must suck to not be able to enjoy a game because of microseconds of lag.
I guess if I regularly 1cc Ghouls, Contra and others, I'm somehow "not able to enjoy those games"? O_o
@paulbnl
The Genesis has DB9 ports and the PCB I'm using is a native controller, so that core has no lag whatsoever.
It leads to the same perceptible difference in all cores that support it, from what I can tell gameplay wise.
Ask Antonio regarding polling of the other cores for details.
Re: Original controllers - SNAC vs. USB?
I think SNAC8 is used only when two gamepads are connected and when only one is used then snac7 is enough. When using snes adapter on db9 for example you just enable serial snac from the snes core menu...
maybe Antonio could give more details
maybe Antonio could give more details
-
- Posts: 140
- Joined: Sun May 24, 2020 8:11 pm
- Has thanked: 2 times
- Been thanked: 49 times
Re: Original controllers - SNAC vs. USB?
SNAC8 is an extension of SNAC6 (IO <= 6.0) and SNAC7 (IO >= 6.1). So it has same zero lag. It also works with official cores (but without OSD control and one player only).
-
- Posts: 140
- Joined: Sun May 24, 2020 8:11 pm
- Has thanked: 2 times
- Been thanked: 49 times
Re: Original controllers - SNAC vs. USB?
This is absolutely incorrect. Can you explain for example where are these 1.31ms lag if I have not use any circuitery on most of splitters.
-
- Posts: 140
- Joined: Sun May 24, 2020 8:11 pm
- Has thanked: 2 times
- Been thanked: 49 times
Re: Original controllers - SNAC vs. USB?
The only splitter has some minimal lag is NeoGeo, but can be about 40ns lag. Nanoseconds, not micro second and never miliseconds as USB
-
- Core Developer
- Posts: 217
- Joined: Sun May 24, 2020 8:48 pm
- Has thanked: 50 times
- Been thanked: 301 times
Re: Original controllers - SNAC vs. USB?
I got it from DB9 module https://github.com/Miguel-T80c/Genesis_ ... joydb9md.v.antoniovillena wrote: ↑Sat Jul 18, 2020 3:13 pm This is absolutely incorrect. Can you explain for example where are these 1.31ms lag if I have not use any circuitery on most of splitters.
This module is clocked at 50Mhz and it divides the clock by 256 for the joystick state counter which results in 195.3Khz (0.00512ms per state).
The joystick state counter counts from 0-255 and it saves the joystick buttons at state 0-6: 256 x 0.00512ms = 1.31ms.
-
- Posts: 140
- Joined: Sun May 24, 2020 8:11 pm
- Has thanked: 2 times
- Been thanked: 49 times
Re: Original controllers - SNAC vs. USB?
I will talk with the person who wrote that code. But even if you have that lag it's only on the extension part of the core. You can select the SNAC option on the menu and have same speed than with SNAC+blue adapters. And of course doesn't affect to NES, SNES, PCEngine and NeoGeo splitters.paulbnl wrote: ↑Sat Jul 18, 2020 3:43 pm I got it from DB9 module https://github.com/Miguel-T80c/Genesis_ ... joydb9md.v.
This module is clocked at 50Mhz and it divides the clock by 256 for the joystick state counter which results in 195.3Khz (0.00512ms per state).
The joystick state counter counts from 0-255 and it saves the joystick buttons at state 0-6: 256 x 0.00512ms = 1.31ms.
-
- Core Developer
- Posts: 217
- Joined: Sun May 24, 2020 8:48 pm
- Has thanked: 50 times
- Been thanked: 301 times
Re: Original controllers - SNAC vs. USB?
Does that mean only the Genesis controller works on all cores and for NES, SNES, PC Engine and NeoGeo controllers they only work on their own cores with SNAC enabled?
-
- Posts: 140
- Joined: Sun May 24, 2020 8:11 pm
- Has thanked: 2 times
- Been thanked: 49 times
Re: Original controllers - SNAC vs. USB?
I have talked with the coders and basically they did that way because basically is legacy code. So I have suggested a simpler way to read in 2 cycles (with SELECT signal as continuous clock) and the code works. So it's only 2 cycle lag (8 cycle lag on buttons X,Y,Z,MODE). We will study to use a faster clock than 195.3Khz to reduce the lag even more. Now the lag is 10us.paulbnl wrote: ↑Sat Jul 18, 2020 3:43 pm This module is clocked at 50Mhz and it divides the clock by 256 for the joystick state counter which results in 195.3Khz (0.00512ms per state).
The joystick state counter counts from 0-255 and it saves the joystick buttons at state 0-6: 256 x 0.00512ms = 1.31ms.
Thanks for reporting this problem.
-
- Posts: 140
- Joined: Sun May 24, 2020 8:11 pm
- Has thanked: 2 times
- Been thanked: 49 times
Re: Original controllers - SNAC vs. USB?
Yes. To guarantee zero lag you need to use native controller. For example if you want zero lag with the NES core you need to use NES controller with SNAC. But in our fork we have implemented 2 universal controllers: Genesis and NeoGeo. With these controllers you can manage the OSD and the rest of the cores. But of course in this mode you have some minimal lag. Not as minimal with Genesis as you pointed but we will improve soon
-
- Posts: 140
- Joined: Sun May 24, 2020 8:11 pm
- Has thanked: 2 times
- Been thanked: 49 times
Re: Original controllers - SNAC vs. USB?
The main problem with official SNAC is there are not level shifters on IO board, so you need an extra board to do level shifting and another one to change USB3 connector to native one
-
- Core Developer
- Posts: 547
- Joined: Sun May 24, 2020 9:30 pm
- Has thanked: 20 times
- Been thanked: 145 times
Re: Original controllers - SNAC vs. USB?
Or one converter board (per machine) to do all of the above.antoniovillena wrote: ↑Sat Jul 18, 2020 10:07 pm The main problem with official SNAC is there are not level shifters on IO board, so you need an extra board to do level shifting and another one to change USB3 connector to native one