Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

twonunpackmule
Posts: 58
Joined: Sat Jan 30, 2021 5:17 pm
Has thanked: 5 times
Been thanked: 6 times

Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by twonunpackmule »

Hello

So, I noticed an issue that only occurs in this one title (out of the many I've played) where the game just glitches out using the M30 (Genesis DB9) via Snac. It basically goes into rapid fire without pressing a button and the button layout is all wrong. When I disable 6 button mode using the controller, it's fine...but that's not ideal for the particular title. Again, I've only ran into this issue with this title. Things like Streets of Rage 3 and Super Street Fighter 2 Turbo (both OG and PCM hack) work fine. I can also use the controller just fine when playing Ghouls and Ghost in standard 3 button mode (without having to disable it via the controller).

Just curious if anyone else was having this issue with their M30 (Genesis DB9 version)? If so, how can I correct this?

Thank you.
User avatar
ItalianGrandma
Posts: 131
Joined: Sun May 24, 2020 7:09 pm
Has thanked: 17 times
Been thanked: 22 times
Contact:

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by ItalianGrandma »

I don’t have SNAC, but I do have this controller and a Daemonbite adapter. I’ll give this game a try later and see if I get any weird results.
twonunpackmule
Posts: 58
Joined: Sat Jan 30, 2021 5:17 pm
Has thanked: 5 times
Been thanked: 6 times

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by twonunpackmule »

ItalianGrandma wrote: Fri May 28, 2021 2:15 pm I don’t have SNAC, but I do have this controller and a Daemonbite adapter. I’ll give this game a try later and see if I get any weird results.
Thanks! Seriously, it's been only this game where the controller acts oddly.
Yodasghost
Posts: 19
Joined: Tue Mar 30, 2021 7:08 pm
Has thanked: 18 times
Been thanked: 7 times

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by Yodasghost »

I remember reading somewhere that the snac doesnt play nice with 3rd party genesis controllers, good to know the the M30 works well, has anybody tried the Krikzz Joyzz?
User avatar
D3FMOD
Posts: 2
Joined: Fri Aug 20, 2021 4:43 pm

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by D3FMOD »

The way the Genesis interfaces with the controller is a little bit... strange. In fact it is not the console itself, it is the games which ask constantly to the controller what buttons are pressed, and it is even more complicated with 6 button pads as that adds a line switching to read the extra buttons. The problem is that there may be subtle differences in how the games ask and how frequent, which causes some incompatibilities with third party controllers.

I think there is nothing that can be done about it, except fixing how that game reads the gamepad.
xchester77
Posts: 6
Joined: Mon Oct 12, 2020 4:07 pm

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by xchester77 »

I'm not doubting anything that's been said, because I have no knowledge of how the Genesis operates, but If the game is the issue shouldn't the issue also be present on real hardware?

I have played xeno crisis with the m30 on real hardware and had no issues.
User avatar
darksakul
Posts: 352
Joined: Mon May 25, 2020 4:34 pm
Has thanked: 397 times
Been thanked: 73 times

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by darksakul »

The 3 button Genesis game pad works on duplexing a existing DB9 signal that the Sega Master System used as the Genesis was backwards compatible with Master System games (using a power base converter for the carts).

The Master System pad has no encoders and the buttons wire directly to the system.
The 3 button Genesis pad duplex the signal, so the controller sends out a signal twice. Once with the select line on pin 8 being held high and once when the line held low. This alternates so the user never knows the difference.

genesis_joystick.gif
genesis_joystick.gif (8.83 KiB) Viewed 8101 times

Now with the 6 button controller, the Duplexing hack the 3 button controller did got the same hack applied again, they duplex the duplex
With the controller going for a 4 cycle instead of a 2 cycle for all the buttons to be read.

Many games didn't like this double duplex hack, hence the mode button that was supposed to kick the controller into 3 button more.
This still caused issues in some games, and a 3 button pad had to be used.

The M30 isn't the old 6 button pad, its took that old hack and applied their own inputs on top. Like how the 2.4 ghz wireless has functions only on the Mega SG.

Snac should of been an extension on the core, with the controller working as it should. But it's not exactly 1 to 1 ether.
Just the same machine timing, fine for low latency and accuracy, required by Light guns. But it has it's compatibility issues with later/newer 3rd party accessories that were expecting a Actual Genesis and not the snack.

For the 2.4ghz M30, you would want a Ralphnet, Deamonbites or Monster Joystick DB9 to USB adapter. The latency increase here is negligible.
It is my great regret that we live in an age that is proud of machines that think and suspicious of people who try to.
DavesGameRoom
Posts: 13
Joined: Tue Dec 28, 2021 9:31 pm
Has thanked: 2 times
Been thanked: 1 time

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by DavesGameRoom »

Just to advise I have got a 2.4GHZ M30 and the Monster Joystick DB9 to USB Adapter... My M30 only works as a 2 button controller! yes you are reading me correctly.. it only picks up the B & C buttons of my M30. My M30 is on the latest Firmware from 8bitdo as is the receiver so not sure why it isn't working.

If I use my regular Mega Drive Wired 6 Button Pad, it works fine (you have to hold down the start button as you plug the DB9 to USB Adapter into the MiSTer so the Adapter switches to its 6 button mode, without this you only get regular 3 button mode).
User avatar
SegaSnatcher
Posts: 163
Joined: Sun May 24, 2020 9:18 pm
Has thanked: 36 times
Been thanked: 43 times

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by SegaSnatcher »

I know this might not be the answer you are looking for, but honestly this game is best played using Dual Analog Sticks. If you have a DS3/DS4 or DualSense just use that and you'll have a great experience. They are also super low latency when hooked up via a cable.
twonunpackmule
Posts: 58
Joined: Sat Jan 30, 2021 5:17 pm
Has thanked: 5 times
Been thanked: 6 times

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by twonunpackmule »

SegaSnatcher wrote: Fri Feb 04, 2022 11:07 pm I know this might not be the answer you are looking for, but honestly this game is best played using Dual Analog Sticks. If you have a DS3/DS4 or DualSense just use that and you'll have a great experience. They are also super low latency when hooked up via a cable.
I've mostly gone back to using USB. A lot of the point was just testing purposes. Sort of trying to get tabs on the situation. I do think dual sticks is a good way to play...but that's what the PC version is for.
bry111
Posts: 26
Joined: Tue Jul 21, 2020 12:31 am
Has thanked: 1 time
Been thanked: 2 times

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by bry111 »

twonunpackmule, would you be able to try out your 6 button controller via SNAC using the 6 button controller tester from https://huguesjohnson.com/programming/genesis/6button/ ?

In particular, I'm wondering whether the button display at the top of the screen seems to work OK, and also what value you get for cycle 9 (TH high) during VBlank read (that is, the lower right number) when no buttons are pressed - is it 01111111, 01110011, or something else?

The reason I ask is, I've built myself a SNAC adapter and it seems to work fine with many things, but Lost Vikings with a wired 6-button controller glitches out in-game and maybe it's similar to what was described with Xenocrisis. In my case Lost Vikings and the same 6-button controller work fine on a real Genesis. (Unfortunately I don't have Xenocrisis or a way to run homebrew on a real Genesis.)

I also notice in the 6 button controller tester that cycle 9 (TH high) during VBlank read shows 01110011 with no buttons pressed on this controller via SNAC, but shows 01111111 with a USB controller. If I understand correctly, 01110011 when TH/Select is high during any cycle other than 7 is like the left and right directions are pushed at the same time, and might be used to identify the Team Player multitap. So, maybe a bit of a stretch, but I'm wondering if maybe certain games think a multitap is being repeatedly inserted and removed and get confused. Or, maybe I made a mistake building my SNAC adapter...

But, don't worry about it if further testing would be inconvenient, I understand this isn't the intended use case for SNAC.
twonunpackmule
Posts: 58
Joined: Sat Jan 30, 2021 5:17 pm
Has thanked: 5 times
Been thanked: 6 times

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by twonunpackmule »

bry111 wrote: Mon Jul 04, 2022 5:49 am twonunpackmule, would you be able to try out your 6 button controller via SNAC using the 6 button controller tester from https://huguesjohnson.com/programming/genesis/6button/ ?

In particular, I'm wondering whether the button display at the top of the screen seems to work OK, and also what value you get for cycle 9 (TH high) during VBlank read (that is, the lower right number) when no buttons are pressed - is it 01111111, 01110011, or something else?

The reason I ask is, I've built myself a SNAC adapter and it seems to work fine with many things, but Lost Vikings with a wired 6-button controller glitches out in-game and maybe it's similar to what was described with Xenocrisis. In my case Lost Vikings and the same 6-button controller work fine on a real Genesis. (Unfortunately I don't have Xenocrisis or a way to run homebrew on a real Genesis.)

I also notice in the 6 button controller tester that cycle 9 (TH high) during VBlank read shows 01110011 with no buttons pressed on this controller via SNAC, but shows 01111111 with a USB controller. If I understand correctly, 01110011 when TH/Select is high during any cycle other than 7 is like the left and right directions are pushed at the same time, and might be used to identify the Team Player multitap. So, maybe a bit of a stretch, but I'm wondering if maybe certain games think a multitap is being repeatedly inserted and removed and get confused. Or, maybe I made a mistake building my SNAC adapter...

But, don't worry about it if further testing would be inconvenient, I understand this isn't the intended use case for SNAC.
I can give it a shot. Might take me a bit to get the free time to do it. I've since purchased a daemonbyte adapter and have been using that. But, I would like to figure out what happened with this particular title. Just for curiosity sake.
bry111
Posts: 26
Joined: Tue Jul 21, 2020 12:31 am
Has thanked: 1 time
Been thanked: 2 times

Re: Issues with M30 (Genesis 2.4ghz using SNAC) playing Xenocrisis

Unread post by bry111 »

It appears there is a glitch on the select/TH line resulting in spurious button press reports from the controller. I'm not sure if this is the cause of trouble reported in this thread but it doesn't look great.

Attached are some oscilloscope captures while using the 6 button controller tester linked earlier in the thread. Pardon the poor quality, I'm still learning how to use the scope. In all of them:
  • green is the select/TH line at the DE-10 (P7 connector pin 7, prior to the 100ohm resistor going to SNAC "USB" pin RX+)
  • blue is the select/TH line at the controller port (voltage level shifted up, Genesis pin 7),
  • yellow is the left button line at the DE-10 (voltage level shifted down, P7 connector pin 8, prior to the 100ohm resistor going to SNAC "USB" pin RX-)
  • pink/purple is the left button line at the controller port (Genesis pin 3)
The glitch happens between cycles 8 and 9 in the 6 button controller tester linked earlier in the thread; it seems that where the tester expects select/TH to be high, it reads state from the controller during the glitch as if select/TH is low. What the tester intends to be cycle 9 seems to be interpreted as cycle 10?
full 9-cycle sequence interpreted as 10 cycles?
full 9-cycle sequence interpreted as 10 cycles?
gen_snac_glitch.png (20.73 KiB) Viewed 5024 times
closeup of the glitch
closeup of the glitch
gen_snac_glitch_closeup.png (16.91 KiB) Viewed 5024 times

When the A button is pressed, the glitch doesn't happen and reads of the left button line happen as expected. Other combinations of buttons result in the glitch being present or absent. (Also, the select line voltage at the controller port seems oddly high? Spiked to over 7V, leveling off at about 5V.)
when A button pushed
when A button pushed
gen_snac_glitch_a.png (20 KiB) Viewed 5024 times
closeup of where the glitch would be when A button pushed
closeup of where the glitch would be when A button pushed
gen_snac_glitch_closeup_a.png (16.03 KiB) Viewed 5024 times

When the d-pad left direction is pressed, the glitch still occurs but reads of the left line happen as expected (because reads for cycles 9 and 10 are equivalent when left is pressed).
when left direction pushed
when left direction pushed
gen_snac_glitch_left.png (19.52 KiB) Viewed 5024 times
Post Reply