Sonic 3 & Knuckles

nymous
Posts: 28
Joined: Sat Sep 25, 2021 10:13 pm
Been thanked: 3 times

Sonic 3 & Knuckles

Unread post 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.
nymous
Posts: 28
Joined: Sat Sep 25, 2021 10:13 pm
Been thanked: 3 times

Re: Sonic 3 & Knuckles

Unread post 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.
User avatar
Captain FPGA
Top Contributor
Posts: 373
Joined: Sun Apr 11, 2021 9:19 pm
Has thanked: 195 times
Been thanked: 25 times

Re: Sonic 3 & Knuckles

Unread post 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.
Dreams don't die!
Image
User avatar
Waifu4Life
Posts: 271
Joined: Fri Jun 19, 2020 5:30 am
Has thanked: 21 times
Been thanked: 47 times

Re: Sonic 3 & Knuckles

Unread post by Waifu4Life »

Never had any issues with S1&K, S2&K, S3&K and Sonic 3 Complete.
Stupid Dufus
Posts: 157
Joined: Sun Aug 30, 2020 12:04 am
Has thanked: 98 times
Been thanked: 46 times

Re: Sonic 3 & Knuckles

Unread post 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.
OldeManMoon
Posts: 8
Joined: Thu Sep 23, 2021 8:56 am

Re: Sonic 3 & Knuckles

Unread post 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.
vanfanel
Posts: 179
Joined: Sun May 24, 2020 6:53 pm
Has thanked: 13 times
Been thanked: 24 times

Re: Sonic 3 & Knuckles

Unread post 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.)
nymous
Posts: 28
Joined: Sat Sep 25, 2021 10:13 pm
Been thanked: 3 times

Re: Sonic 3 & Knuckles

Unread post 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
OldeManMoon
Posts: 8
Joined: Thu Sep 23, 2021 8:56 am

Re: Sonic 3 & Knuckles

Unread post 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.
vanfanel
Posts: 179
Joined: Sun May 24, 2020 6:53 pm
Has thanked: 13 times
Been thanked: 24 times

Re: Sonic 3 & Knuckles

Unread post 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...
OldeManMoon
Posts: 8
Joined: Thu Sep 23, 2021 8:56 am

Re: Sonic 3 & Knuckles

Unread post 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
nymous
Posts: 28
Joined: Sat Sep 25, 2021 10:13 pm
Been thanked: 3 times

Re: Sonic 3 & Knuckles

Unread post by nymous »

So, you guys think, should I create an issue about that?
rhester72
Top Contributor
Posts: 1323
Joined: Thu Jun 11, 2020 2:31 am
Has thanked: 15 times
Been thanked: 213 times

Re: Sonic 3 & Knuckles

Unread post 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?
User avatar
aberu
Core Developer
Posts: 1192
Joined: Tue Jun 09, 2020 8:34 pm
Location: Longmont, CO
Has thanked: 247 times
Been thanked: 411 times
Contact:

Re: Sonic 3 & Knuckles

Unread post 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 12571 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
birdybro~
nymous
Posts: 28
Joined: Sat Sep 25, 2021 10:13 pm
Been thanked: 3 times

Re: Sonic 3 & Knuckles

Unread post 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.
rhester72
Top Contributor
Posts: 1323
Joined: Thu Jun 11, 2020 2:31 am
Has thanked: 15 times
Been thanked: 213 times

Re: Sonic 3 & Knuckles

Unread post 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.
nymous
Posts: 28
Joined: Sat Sep 25, 2021 10:13 pm
Been thanked: 3 times

Re: Sonic 3 & Knuckles

Unread post 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.
rhester72
Top Contributor
Posts: 1323
Joined: Thu Jun 11, 2020 2:31 am
Has thanked: 15 times
Been thanked: 213 times

Re: Sonic 3 & Knuckles

Unread post 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.
Blitzwing
Posts: 103
Joined: Sat Sep 05, 2020 9:52 pm
Has thanked: 11 times
Been thanked: 24 times

Re: Sonic 3 & Knuckles

Unread post 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.
Post Reply