Page 1 of 3

DOOM Enemy Behavior?

Posted: Tue Aug 24, 2021 4:30 am
by John198X
Enemy behavior in SNES Doom seems to be borked.
Is this an issue with Super FX 2 accuracy? Or something else?

Embarrassed to say I played through all three episodes today… constantly thinking “this can’t be right,” but having no frame of reference for this port. Checking out people’s youtube playthroughs and playing a bit in retroarch confirmed the problem.

Enemies almost never attack from range, have a tendency to walk right up to you and do nothing (unless there are multiple enemies next to you, then they suddenly want to melee often), don’t seem to be effected by taking damage properly (flinching animation, sound, pausing movement), and higher health enemies (cacodemons, barons, cyberdemon) can take massive amounts of damage as if they aren’t being effected by a large amount of shots.

I checked out the USA and Japanese versions and saw the same problems. Can anyone else load up the game and try this? Quick way to confirm would be jumping into episode 3 (will have to choose one of the two highest difficulties in US version). See if the imps at the beginning of the stage bother to shoot any fireballs…. Then open the first door and see if the cacodemon flinches at your pistol shots.

Re: DOOM Enemy Behavior?

Posted: Wed Aug 25, 2021 1:44 pm
by John198X
Replayed the whole game in bsnes as a comparison.

I couldn't tell any real difference as far as how the game runs and handles inputs. All the inaccuracies seem to come down to how enemies are handled. To elaborate on the inaccuracies when playing on MiSTer: Enemies almost never attack from range and rarely melee, when they should attack constantly. On the SNES version especially, they should be shooting quite often. When they should only cry out once upon spotting you, their 'discovery' sounds plays over and over again as if they are constantly seeing you for the first time. Monsters do not show their 'being damaged' animation frames when being shot and do not stagger/pause their movement as they should. Damage doesn't seem to register properly the majority of the time on any enemies, being the most noticeable on higher health enemies. This is a port of the game where Barons of Hell can be taken out with a mere 2 rockets. Playing on MiSTer, it always took many more.

Hope this helps to diagnose the problem.

Re: DOOM Enemy Behavior?

Posted: Thu Aug 26, 2021 6:55 pm
by ioev
Tested and I'm seeing the same behavior. Enemies make the "saw you" grunt over and over and have to be super close before they attack. Also made sure I didn't have turbo mode on for snes or super fx to rule out it causing the issue.

Re: DOOM Enemy Behavior?

Posted: Thu Aug 26, 2021 10:32 pm
by MostroW
This game uses a Super FX 2 chip and is one of the three games only using it, maybe the implementation is not 100%?

I can't say if the enemy AI is dependant on this chip, though it sounds plausible to me.

Quoting Wikipedia:
On July 14, 2020, the source code for the game was released by Randy Linden, the game's creator, under the GPL-3.0-only license.
Maybe there is a way to discern if the enemy AI is depending on that chip's calculation for behaviour?

Super Mario World 2 uses the same chip and i've played that game up till world 3 and didn't have any strange issues as far as i could tell, though it could be just the way this game uses the chip?

Re: DOOM Enemy Behavior?

Posted: Thu Aug 26, 2021 10:49 pm
by rhester72
No experience with that chip, but historically, most issues like this one specifically come down to a broken randomizer. Might be another place to look.

Re: DOOM Enemy Behavior?

Posted: Thu Aug 26, 2021 10:51 pm
by aberu
If you are comparing the DOOM on the SNES to DOOM on PC or other platforms, the game engine was rewritten from scratch, a reverse engineering job, by Randy Linden... in ASSEMBLY by hand. It wasn't actually much of a port at all. Totally amazing stuff. I almost guarantee that the AI is different as a result. He didn't have access to the full source code of DOOM, he reverse engineered the DOOM data formats, wrote his own 3d engine for the game, etc... It's an amazing feat.

https://www.vintageisthenewold.com/inte ... eem-part-1

Re: DOOM Enemy Behavior?

Posted: Thu Aug 26, 2021 11:45 pm
by Mr. Encyclopedia
If you are comparing the DOOM on the SNES to DOOM on PC or other platforms, the game engine was rewritten from scratch, a reverse engineering job, by Randy Linden.
Pretty sure we're comparing SNES Doom running on MiSTer to SNES Doom running on an emulator. I suppose it's worth it to compare the emulator behavior to Doom on actual SNES hardware, and double-check that this isn't a ROM issue, but a hardware inaccuracy in the SNES core seems like the most likely culprit, especially given that this was written at a very low level and may rely on Super FX 2 chip idiosyncracies that no other game takes advantage of. If anyone is familiar with Winter Gold, the third Super FX 2 game, maybe it's worth it to examine its behavior as well.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 12:02 am
by rhester72
The SNES Mini folks that worked on and tested Hakchi are *very very very very very* familiar with the expected behavior of Winter Gold right down to the EXACT amount of time it takes certain events to occur due to bug-chasing from a few years ago. I'm not one of them, but I did witness it happen, so there are folks in the community that know that specific game like the back of their hand (including the synchronization between the music and graphics in the intro), compared to actual hardware.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 1:01 am
by ash2fpga
Did a bit of search for doom snes rng info but didn't get much.

There seems to be quite a bit about doom in general, using a fixed 256 entry table, but the snes port may not be using that?

For snes, I found a passing reference to the rng in a tas post, but that's about it.

https://www.doomworld.com/forum/topic/1 ... an-1-hour/

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 3:06 am
by John198X
Yes I was comparing SNES Doom on Mister vs on an emulator. The same rom even. Relieved to see someone saw the same behavior. I thought it must have something to do with Super FX2 implementation. Yoshi’s Island seems fine to me as well, but it seems Doom may utilize it in a less conventional way.

edit: Yeah we’re not talking about subtle differences compared to the PC original, we’re talking about something being totally broken.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 3:32 am
by darksakul
John198X wrote: Tue Aug 24, 2021 4:30 am Enemy behavior in SNES Doom seems to be borked.
Is this an issue with Super FX 2 accuracy? Or something else?

Embarrassed to say I played through all three episodes today… constantly thinking “this can’t be right,” but having no frame of reference for this port. Checking out people’s youtube playthroughs and playing a bit in retroarch confirmed the problem.

Enemies almost never attack from range, have a tendency to walk right up to you and do nothing (unless there are multiple enemies next to you, then they suddenly want to melee often), don’t seem to be effected by taking damage properly (flinching animation, sound, pausing movement), and higher health enemies (cacodemons, barons, cyberdemon) can take massive amounts of damage as if they aren’t being effected by a large amount of shots.

I checked out the USA and Japanese versions and saw the same problems. Can anyone else load up the game and try this? Quick way to confirm would be jumping into episode 3 (will have to choose one of the two highest difficulties in US version). See if the imps at the beginning of the stage bother to shoot any fireballs…. Then open the first door and see if the cacodemon flinches at your pistol shots.
It possible that the issues stems from how cut down the SNES port of Doom was. It's one of the few ports of Doom not to use the Doom Engine.
It used a custom Game Engine called the Reality engine and it was done by one man Randy Linden
Floor and celling textures were removed as well as particle effects to save on the limited Ram and the SNES own bottle necks.
Sound propagation is also unused, rendering all enemies AI deaf.

Considering the hurdles Randy Linden had to contend with, as he had no dev kit for the SNES FX Chip. He instead worked with a hacked Star Fox cart, and a pair of modified SNES controllers, one plugged into the SNES the other into the parallel port of an Amiga and some custom software tools.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 4:33 am
by John198X
darksakul wrote: Fri Aug 27, 2021 3:32 am It possible that the issues stems from how cut down the SNES port of Doom was. It's one of the few ports of Doom not to use the Doom Engine.
It used a custom Game Engine called the Reality engine and it was done by one man Randy Linden
Floor and celling textures were removed as well as particle effects to save on the limited Ram and the SNES own bottle necks.
Sound propagation is also unused, rendering all enemies AI deaf.

Considering the hurdles Randy Linden had to contend with, as he had no dev kit for the SNES FX Chip. He instead worked with a hacked Star Fox cart, and a pair of modified SNES controllers, one plugged into the SNES the other into the parallel port of an Amiga and some custom software tools.
No one here has managed to compare with real hardware, but we can say that SNES Doom running on Mister currently has completely broken enemy behavior, including registration of damage, that is entirely different to how it plays in a high accuracy emulator as well as in comparison to every video I watched online to try and figure out what the heck was going on.

I’d say Linden turned out a very good port, but it seems he utilized the hardware (probably the superfx2) in some way that reveals an inaccuracy in the current SNES core. Which is pretty cool, but it’d be even cooler to get it fixed. :D

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 11:33 am
by darksakul
John198X wrote: Fri Aug 27, 2021 4:33 am
darksakul wrote: Fri Aug 27, 2021 3:32 am It possible that the issues stems from how cut down the SNES port of Doom was. It's one of the few ports of Doom not to use the Doom Engine.
It used a custom Game Engine called the Reality engine and it was done by one man Randy Linden
Floor and celling textures were removed as well as particle effects to save on the limited Ram and the SNES own bottle necks.
Sound propagation is also unused, rendering all enemies AI deaf.

Considering the hurdles Randy Linden had to contend with, as he had no dev kit for the SNES FX Chip. He instead worked with a hacked Star Fox cart, and a pair of modified SNES controllers, one plugged into the SNES the other into the parallel port of an Amiga and some custom software tools.
No one here has managed to compare with real hardware, but we can say that SNES Doom running on Mister currently has completely broken enemy behavior, including registration of damage, that is entirely different to how it plays in a high accuracy emulator as well as in comparison to every video I watched online to try and figure out what the heck was going on.

I’d say Linden turned out a very good port, but it seems he utilized the hardware (probably the superfx2) in some way that reveals an inaccuracy in the current SNES core. Which is pretty cool, but it’d be even cooler to get it fixed. :D
If you want to compare for 100% accuracy, forget PC Emulation. You need to find someone with the actual game cart.
Yes no one came up with a real cart to compare. But it's been shown and documented that the Enemy AI is already off on the SNES version of Doom.
It been already established that whole portions of the enemy script is turned off or left in the SNES version.

The SNES FPGA Core is a mature core, saying is a core executing the AI wrong based on Software emulation performance is far fetch at best.

If you want more "accurate" Doom experience, I suggest the AO486 Core

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 12:22 pm
by John198X
darksakul wrote: Fri Aug 27, 2021 11:33 am If you want to compare for 100% accuracy, forget PC Emulation. You need to find someone with the actual game cart.
Yes no one came up with a real cart to compare. But it's been shown and documented that the Enemy AI is already off on the SNES version of Doom.
It been already established that whole portions of the enemy script is turned off or left in the SNES version.

The SNES FPGA Core is a mature core, saying is a core executing the AI wrong based on Software emulation performance is far fetch at best.

If you want more "accurate" Doom experience, I suggest the AO486 Core
Once again, we're not talking about subtle differences in AI. Yes, there are differences in monster behavior in the SNES version and the original Doom and its many source ports, but the only one noticeable in normal play is enemy 'deafness.' I didn't make the original post because I'm just looking for a good version of Doom to play... I made the post because there is an issue with the SNES core, and I'm trying to point it out so it can be resolved. I'm pretty sure we all want accuracy to be improved, and that doesn't happen through offhand dismissal of problems and telling people the issues they are experiencing aren't real. These are not little differences that can be chalked up to chance or overthinking oneself, they are massive and obvious.

8 people have posted in this thread. The 2 that have actually loaded up the game and played it are saying something is very wrong. I'm sorry I don't have an original cart to somehow legitimize myself, but I guarantee that monsters in specifically the SNES version of Doom are not meant to screech/grunt/roar constantly while almost never shooting at you, only to walk up to you and proceed to stand there and maybe decide to attack every once in a while, and never react to damage in terms of animation, sound, and behavior.

I've done all the diligence I can with means I have available to me, which are playing through the entire game via emulation and checking out multiple youtube longplays (including some that specify they are running on real hardware). Those confirmed for me that the SNES version of Doom pretty much plays like Doom, rather than how it currently plays on a MiSTer. I didn't do that because I needed to examine them for little differences, but only to make sure I wasn't completely crazy... because it's currently completely, obviously broken and I was under the impression that the core was basically perfect outside of a couple documented outliers. Anyone person willing to actually play this on the MiSTer for more than a couple minutes will be able to understand it is currently not at all accurate with this game.

Here's easy check for anyone that has the means to play on real hardware right now: Choose episode 3. There are imps conveniently right at the beginning of the stage, as well as higher health cacodemons behind the first door. On a SNES, both enemy types have fireball attacks they will begin to use frequently almost immediately upon seeing you. On MiSTer, they will almost never fire, if at all. On a SNES, they have flinching animation frames and damage noise when being shot by the starter pistol you will have, which will also momentarily interrupt their movement toward you. On MiSTer, none of those things occur. This little test will take mere moments and will showcase and confirm just about every issue I'm pointing out.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 1:15 pm
by akeley
darksakul wrote: Fri Aug 27, 2021 11:33 am If you want to compare for 100% accuracy, forget PC Emulation.
[...]
If you want more "accurate" Doom experience, I suggest the AO486 Core
This is getting a bit tiresome, it was the same in the other thread regarding unlicensed carts glitching on SNES. Emulation might not be 100% accurate but for most of the main platforms it's pretty close, at least in representing what happens on original hardware - even if "how" it happens differs. And the emulators won't automagically fix some major problem in the game either.

Overall, the OP has presented a very good bug report, and it should be investigated properly, not handwaved away because software emulation. Sure, it'd be ideal to check it on original SNES, but I'm 99% sure it wll produce the same result.

And if you think ao486 - which is still rather far from mature - is somewhat more accurate just because it's FPGA...well, :)

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 1:16 pm
by FoxbatStargazer
Or you can look at a video of real hardware. Watch this guy get shot up pretty bad on ultra-violence in the opening level.

https://youtu.be/s6bDDoU1zIM?t=945

Now play Mister (I did) and notice that the gun-toting enemies literally will not shoot at all until they are point-blank range... and even then, only occasionally.

I'd say there's an issue.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 1:21 pm
by John198X
akeley, FoxbatStargazer: Thanks! I was starting to feel like I was taking crazy pills. :lol:

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 1:51 pm
by darksakul
akeley wrote: Fri Aug 27, 2021 1:15 pm
And if you think ao486 - which is still rather far from mature - is somewhat more accurate just because it's FPGA...well, :)
The core isn't 100% but with the fragmented nature of PC hardware even back then, you have to take the middle ground approach.

But I digress, even if the 486 core not 100% such a old DOS game like Doom runs fine.

And when the only comparisons are to software emulation, yes I will discount the accuracy reports.
What software emulation was used, what version, what settings.

Anyone got their FX Pak Pro flash cart with the rom warmed up and running on a Snes or Super NT.
Better yet the real cart. It's irrelevant how a Software emulator performs compared to FPGA unless the same dev worked on both.

Of your goal is to play a more accurate Doom, you need to run the DOS version, end of story.

If you want to bug report, we need more than vagueness, conjecture and less " but it didn't play like this on a YouTube video" nonsense.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 1:59 pm
by John198X
darksakul wrote: Fri Aug 27, 2021 1:51 pm
akeley wrote: Fri Aug 27, 2021 1:15 pm
And if you think ao486 - which is still rather far from mature - is somewhat more accurate just because it's FPGA...well, :)
The core isn't 100% but with the fragmented nature of PC hardware even back then, you have to take the middle ground approach.

But I digress, even if the 486 core not 100% such a old DOS game like Doom runs fine.

And when the only comparisons are to software emulation, yes I will discount the accuracy reports.
What software emulation was used, what version, what settings.

Anyone got their FX Pak Pro flash cart with the rom warmed up and running on a Snes or Super NT.
Better yet the real cart. It's irrelevant how a Software emulator performs compared to FPGA unless the same dev worked on both.

Of your goal is to play a more accurate Doom, you need to run the DOS version, end of story.

If you want to bug report, we need more than vagueness, conjecture and less " but it didn't play like this on a YouTube video" nonsense.
You are implying that either everyone in this thread that's actually loaded up the SNES version on a MiSTer is either lying or an idiot, or that the SNES port dev's amazing work led to a version of Doom that's totally busted and terrible when playing on real hardware, but somehow magically becomes a decent port of Doom when played in the most current emulators (except that's not accurate either, because anyone can see it plays properly on real hardware with just a quick look at widely available video captures).

I'm new to this forum, having come here to specifically bring up a problem that no one seems to have discovered even though this game is a prime candidate as an edge case that could have problems. I have no idea how any progress or improvements are supposed to happen with attitudes like you're displaying in here.

Once again, I'm not looking to play "a more accurate Doom." That literally has nothing to do with anything in this thread. I'm looking to have a more accurate SNES core.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 2:08 pm
by akeley
John198X wrote: Fri Aug 27, 2021 1:59 pm I'm new to this forum, having come here to specifically bring up a problem that no one seems to have discovered, even though this game is a prime candidate as an edge case that could have problems. I have no idea how any work or improvements get made with attitudes like you're displaying in here.
Just ignore it mate. And thanks for the report, regardless of what comes out of it.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 2:11 pm
by John198X
akeley wrote: Fri Aug 27, 2021 2:08 pm Just ignore it mate. And thanks for the report, regardless of what comes out of it.
Thanks again. I've outlined very obvious inaccuracies three times now with increasing specificity. I guess there's not much else I can do.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 2:36 pm
by ash2fpga
Posting an issue on github might be the best course of action at this point.

https://github.com/MiSTer-devel/SNES_MiSTer/issues

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 2:42 pm
by AtomicShroom
John198X wrote: Fri Aug 27, 2021 1:59 pm I'm new to this forum, having come here to specifically bring up a problem that no one seems to have discovered even though this game is a prime candidate as an edge case that could have problems. I have no idea how any progress or improvements are supposed to happen with attitudes like you're displaying in here.
This is an absolute cancer on this forum and community. The insane amount of immediate dismissiveness to any issue/suggestion/comment that is brought about is mind boggling to be honest, as if some people held MiSTer in such pristine high regard that it could never possibly at fault for anything. It needs to stop.

When I brought up an issue about V-Sync breaking after about 4 hours of continuous use, I was made to be crazy, that it was impossible, that no one had seen this, that it must have been my TV, my setup, my config, etc. Absolutely anything but MiSTer. It just couldn't be. But when a coder was actually courageous enough to dig in and investigate, sure enough they identified a race condition that could occur under some very specific timings. And they fixed it. And now this issue is gone. But man did I have to make a case for it and keep putting on pressure because the amount of backlash I received at first made me want to just give up.

This needs to stop.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 2:46 pm
by John198X
ash2fpga wrote: Fri Aug 27, 2021 2:36 pm Posting an issue on github might be the best course of action at this point.

https://github.com/MiSTer-devel/SNES_MiSTer/issues
Thanks. Surely a better use of my time than what this has degenerated into. I will do so later today.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 3:11 pm
by John198X
AtomicShroom wrote: Fri Aug 27, 2021 2:42 pm This needs to stop.
What boggles my mind is that the poster themself can’t help repeatedly pointing out the very unique development history and rare enhancement chip used by the game in question, yet can’t seem to fathom how it could possibly be one of few releases remaining that has accuracy issues.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 3:11 pm
by aberu
darksakul wrote: Fri Aug 27, 2021 1:51 pm And when the only comparisons are to software emulation, yes I will discount the accuracy reports.
What software emulation was used, what version, what settings.

Anyone got their FX Pak Pro flash cart with the rom warmed up and running on a Snes or Super NT.
Better yet the real cart. It's irrelevant how a Software emulator performs compared to FPGA unless the same dev worked on both.
To be fair, they said they compared to bsnes, which bsnes is the most accurate and compatible thing out there in terms of software emulators. Shortly before Near passed away... they went over how the Super FX implementation on the MiSTer is not as accurate as it is in bsnes currently.

I've also done test rom comparisons using basically all known test roms out there and there are a number of tests, a few of them low-level math associated, that the MiSTer core doesn't pass but both real hardware and bsnes do pass. The only one fixed since I did this was the test that was failing in the beavis and butthead issue awhile ago on github.

I was asking questions because I wasn't sure what they were talking about. Real hardware comparisons are better, yes, but bsnes is as close to real hardware as you are gonna get in terms of compatibility. bsnes is more compatible and more accurate than the MiSTer SNES core, you can objectively measure this with all of the test roms yourself if you don't believe me. It takes awhile, but you may learn something from it. And that's not a jab at the MiSTer core, the MiSTer core is like 99.9% there basically... bsnes took well over a decade of pioneering work that the MiSTer SNES core has benefited from.

Also a romcart will not be sufficient if your goal is to only compare to real hardware, as that is an FPGA implementation of the SuperFX 2, and not the real thing. I have found hardware reimplementation bugs in Mega Everdrive Pro that is not fixed, for instance.

Everybody cool off a bit, no need to get mad at each other right now. We are a buncha nerds, it's okay. :P

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 3:26 pm
by Stupid Dufus
Here is a video comparison I made showing the difference in enemy AI between Doom on a SD2SNES running on a 1-chip SNES compared to Doom running on the SNES core for MiSTer.

Yes, it's running on a flash cart with an FPGA implementation of the SFX chip, but this still clearly demonstrates a difference between them. Where the fault is I don't know.

https://youtu.be/Tzc3e-W6z78

I hope this demonstrates the issue described by John198X.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 3:36 pm
by aberu
Thank you for putting in that effort to provide this evidence. It will help whoever it is that will fix the issue! :)

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 3:52 pm
by aberu
Attached are the test roms I mentioned before. I think one or two of these has been fixed since I did this.
mister-fail-bsnes-pass.zip
(1.35 MiB) Downloaded 186 times
Of note... the GSU Test rom failed when I tested .

https://krikzz.com/forum/index.php?topic=7451.30 - Note that redguy was still figuring this out a couple years ago, but might have completed support back then... SuperFX might be perceptibly perfect now, or it might not. I'm not sure. But it is related to this GSU test rom apparently.

The KungFuFurby irq and nmi roms apparently fail on MiSTer but succeed on bsnes for instance. So maybe something slightly wrong with HDMA implementation in the MiSTer core could cause this issue? I dunno. Of note, jonasquinn's nmi test rom (might be the same one) also fails.

I'm pretty sure mul_div_timing fails still, but it might be fixed after the beavis and butthead fixes.

If anyone wants to test these out and report back if new ones do work and don't work, that would be great.

So anyone, no matter how noble the intent is, saying that "software emulation is bad" in any kind of way needs to personally look to the evidence. There are plenty of software emulators that are more accurate than anything in FPGA. Genesis-Plus-GX is more compatible and accurate than the sega genesis core and far exceeds the sega cd core. bsnes is just barely ahead now (mainly because the mister core was built on what bsnes had already achieved), but also has support for all enhancement chips (unlike the mister core and unlike super nt, etc...) and supports the super gameboy as well. Stella is wayyyyy ahead of the Atari2600 core.

People should be honest about this and if you don't know, find out for yourself and do real comparisons, before you claim software emulation is bad or whatever.

Re: DOOM Enemy Behavior?

Posted: Fri Aug 27, 2021 3:53 pm
by John198X
Thank you so much Dufus!

edit: Just loaded up E1M1 on Ultra-Violence in bsnes and it seems identical to how it behaves on your flash cart & SNES setup.

edit2: Issue submitted. https://github.com/MiSTer-devel/SNES_MiSTer/issues/295