Page 1 of 1

Sonic 3 & Knuckles

Posted: Sat Sep 25, 2021 10:32 pm
by nymous
Hello folks!

Have anyone tried the combined ROM of Sonic 3 & Knuckles? Seems like it has major glitches on MiSTer, I guess up to non-playable. I saw sprite flickering, messy main character sprites, unusual slowdowns, flickering horizontal lines etc.

I first guessed that I have a corrupted ROM, but I've rechecked with No-Intro's (md5: C5B1C655C19F462ADE0AC4E17A844D10) - same behavior.

I've tried both SDRAM and DDR3 loading. No difference. Overclocking to High does help, glitches are gone. But game it self runs faster than it should be.

Sonic 3 alone works flawlessly. Sonic & Knuckles alone seem to suffer from the same problem.

Re: Sonic 3 & Knuckles

Posted: Sat Sep 25, 2021 10:52 pm
by nymous
Oh, damn, I guess it is a timing issue with SDRAM. Tried again with ROM storage set to DDR3 and both S&K and combined S3&K work as expected.

Re: Sonic 3 & Knuckles

Posted: Sat Sep 25, 2021 11:44 pm
by Captain FPGA
nymous wrote: Sat Sep 25, 2021 10:52 pm Oh, damn, I guess it is a timing issue with SDRAM. Tried again with ROM storage set to DDR3 and both S&K and combined S3&K work as expected.
Hmmmm, perhaps I'll run some tests next time I fire up my Mister device. I planned on playing this, bouncing saved games through PC, Mega SD, and the Mister. I'd hate to learn that one out 3 is unplayable.

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 12:46 am
by Waifu4Life
Never had any issues with S1&K, S2&K, S3&K and Sonic 3 Complete.

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 1:43 am
by Stupid Dufus
Just played about 15 minutes and didn't have any issues. Same md5 hash. Using default settings on Genesis core (other than composite blending for video) from a recent fresh install of MiSTer.

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 9:20 am
by OldeManMoon
I’ve noticed the Sonic The Hedgehog no-intro Ron
Is off as Sonic appears outside the logo on the main screen instead of through it.
I always assumed Genesis needs work.

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 10:09 am
by vanfanel
OldeManMoon wrote: Sun Sep 26, 2021 9:20 am I’ve noticed the Sonic The Hedgehog no-intro Ron
Is off as Sonic appears outside the logo on the main screen instead of through it.
I always assumed Genesis needs work.
Thats because you have disabled sprite limit.
The Genesis core is almost perfect, you won't find these evident glitches (in fact there has been years since I found one).
Even more: the Genesis core on the MiSTer greatly surpasses the one on the MegaSG, which is left with bugs no one seems to care about (I have both, but I wouln't get the MegaSG should I have know it's core as going to be abandoned with bugs. Never again I guess.)

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 10:34 am
by nymous
Ok folks, I seem to find the cause of the problem. Yes, I guess it is a timing issue, but rather related to regions, not type of storage it uses.

With all settings untouched, the core is set (at least in my case) to detect region by extension. And it seem to always load ROMs as PAL. After that, I'm usually manually change the region and do a core reset, through menu or IO board. Game kind of starts in the switched region, but glitches like hell.

I have captured a video of that: Glitches

But If I change the region detection to header and beforehand, everything works flawlessly.

Good

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 10:50 am
by OldeManMoon
vanfanel wrote: Sun Sep 26, 2021 10:09 am
OldeManMoon wrote: Sun Sep 26, 2021 9:20 am I’ve noticed the Sonic The Hedgehog no-intro Ron
Is off as Sonic appears outside the logo on the main screen instead of through it.
I always assumed Genesis needs work.
Thats because you have disabled sprite limit.
The Genesis core is almost perfect, you won't find these evident glitches (in fact there has been years since I found one).
Even more: the Genesis core on the MiSTer greatly surpasses the one on the MegaSG, which is left with bugs no one seems to care about (I have both, but I wouln't get the MegaSG should I have know it's core as going to be abandoned with bugs. Never again I guess.)

I have mega sg.
What bugs does it have?
I’m curious as contemplating selling.

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 11:27 am
by vanfanel
OldeManMoon wrote: Sun Sep 26, 2021 10:50 am

I have mega sg.
What bugs does it have?
I’m curious as contemplating selling.

Off the top of my head:

-Unselective pixel blending is all f***ed up because there's no simple linear filtering to go with it: try to set pixel blending to the maximum value (which is unselective pixel blending, as in a real TV) and everything looks like absolute garbage.
That's because there's no simple bilinear interpolation, which is what unselective pixel blending must be combined with: the MegaSG default scaling tries to give sharp pixels (which is NOT how those games are designed to look) instead of simply allowing linear interpolation, which combined with unselective pixel blending is a TOTAL disaster.
Comparet to the MiSTer, where I can simply use bilinear + pixel blending + scanlines, which is the way thigs are supposed look for these games, the MegaSG has a very poor image over HDMI.
NOTE: games on the Genesis/MegaDrive are designed to take advantage from pixel blending over RF/RCA. They don't look right without it. Only MiSTer delivers.

-Tiny Toon Adventures from Konami has missing tittle screen music.

-Master System and Game Gear games all have tearing and/or frame desyncs (depending on the resolution used it's either one thing or the other).

Of course, firmware author (Kevtris) has been informed years ago. Doesn't seem like he will do anything about it after all this time.
Never again will I buy closed-source FPGA platforms, once milked by the manufacturer, they are abandoned with bugs and they release their new piece of shit with different bugs that won't be fixed either, and so on, and on...

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 12:47 pm
by OldeManMoon
That does sound a lot although I’ve never experienced screen tearing of any kind unless it is set zero lag in mega sg menu.

I have experienced poor fm audio in master system mind and prefer it off on mega sg

Re: Sonic 3 & Knuckles

Posted: Sun Sep 26, 2021 3:43 pm
by nymous
So, you guys think, should I create an issue about that?

Re: Sonic 3 & Knuckles

Posted: Mon Sep 27, 2021 1:42 am
by rhester72
nymous wrote: Sun Sep 26, 2021 3:43 pm So, you guys think, should I create an issue about that?
About what? You don't have a ROM set that indicates the preferred/required region in the file extensions, so it doesn't work. You do have valid headers, which does work. What's the issue?

Re: Sonic 3 & Knuckles

Posted: Mon Sep 27, 2021 3:49 am
by aberu
nymous wrote: Sun Sep 26, 2021 3:43 pm So, you guys think, should I create an issue about that?
Nope. :)

Everything is working as intended. If you have region detection set to file ext it does the following:

bin = jp
md = eu
gen = us

If you set it to header, then it follows this sega technical bulletin:
87156365-cc248c00-c279-11ea-802b-fe7b3d42c14c.png
87156365-cc248c00-c279-11ea-802b-fe7b3d42c14c.png (198.64 KiB) Viewed 11129 times
So everything is working as intended. This does come up a lot so I submitted a pull request that recently got merged which changes the default option from File Ext to Header, because Header detection is, AFAICT, compatible with the entire licensed library.

However, the changes I made are not present in the latest release. If you'd like, here is the unstable release for anyone interested which also fixes one obscure bug with the Star Trek TNG...

https://github.com/MiSTer-unstable-nigh ... 2_7e1b.rbf

Re: Sonic 3 & Knuckles

Posted: Mon Sep 27, 2021 8:24 am
by nymous
rhester72 wrote: Mon Sep 27, 2021 1:42 am About what? You don't have a ROM set that indicates the preferred/required region in the file extensions, so it doesn't work. You do have valid headers, which does work. What's the issue?
I'm changing the region after loading and doing reset of the core. Why this isn't working? For Sonic 3 for example it is just enough to remove "Only for NTSC Genesis" warning, and doesn't add any glitches.

Re: Sonic 3 & Knuckles

Posted: Mon Sep 27, 2021 12:35 pm
by rhester72
nymous wrote: Mon Sep 27, 2021 8:24 am I'm changing the region after loading and doing reset of the core. Why this isn't working? For Sonic 3 for example it is just enough to remove "Only for NTSC Genesis" warning, and doesn't add any glitches.
Because it isn't supposed to.

The clock is set when you load the ROM, based on the region specifications already discussed. It isn't changed on a reset. The only thing you're doing is changing the in-memory region declared to the game, so the game's region-programmed behavior will change, but proper video output and timing will not be set.

Re: Sonic 3 & Knuckles

Posted: Mon Sep 27, 2021 12:53 pm
by nymous
rhester72 wrote: Mon Sep 27, 2021 12:35 pm The clock is set when you load the ROM, based on the region specifications already discussed. It isn't changed on a reset. The only thing you're doing is changing the in-memory region declared to the game, so the game's region-programmed behavior will change, but proper video output and timing will not be set.
Well, that sounds much like a bug to me. A very confusing behavior for a end-user, at least. Why allow to change regions on the fly then, if it doesn't set proper timing etc? Video mode changes though, if you check my video, you'll see it sets to 59 Hz instead of 50 Hz.

Re: Sonic 3 & Knuckles

Posted: Mon Sep 27, 2021 1:01 pm
by rhester72
OK - file a bug report if you wish, it's been explained and discussed to death at this point. You're now aware of how to get the behavior you're looking for.

Re: Sonic 3 & Knuckles

Posted: Thu Oct 07, 2021 8:11 pm
by Blitzwing
nymous wrote: Mon Sep 27, 2021 12:53 pm
rhester72 wrote: Mon Sep 27, 2021 12:35 pm The clock is set when you load the ROM, based on the region specifications already discussed. It isn't changed on a reset. The only thing you're doing is changing the in-memory region declared to the game, so the game's region-programmed behavior will change, but proper video output and timing will not be set.
Well, that sounds much like a bug to me. A very confusing behavior for a end-user, at least. Why allow to change regions on the fly then, if it doesn't set proper timing etc? Video mode changes though, if you check my video, you'll see it sets to 59 Hz instead of 50 Hz.
I wouldn't call it a bug, maybe the default behaviour of Auto Region should be set to header instead of extension as most people will be playing retail games. If you're just sticking with retail titles then set it to header that's what I did and the results are almost always perfect, if playing homebrew and hacks that's really what the region change option is there for. I wouldn't know but there is possibily a technical reason why the clock is set based on PAL or NTSC speeds at ROM load and not on a soft reset.