List of every detectable difference in Mega Drive revisions?

Ask anything your want about Megadrive/Genesis programming.

Moderator: BigEvilCorporation

Sik
Very interested
Posts: 939
Joined: Thu Apr 10, 2008 3:03 pm
Contact:

Re: List of every detectable difference in Mega Drive revisions?

Post by Sik » Tue Aug 25, 2020 4:33 am

I thought it was the other way, YM2612 always setting BUSY for a fixed number of cycles while YM3438 would set it only for as long as needed. But then again some people also say that the YM3438 is literally YM2612 on CMOS which should mean that the length of the BUSY flag should be identical… Which one is correct here?

And yeah, Teradrive has a discrete YM3438, but in a Discord server where I mentioned this it was brought up that Sega also added some extra logic precisely to fake the YM2612's behavior with the status register (looks like they had already found something that broke by then). I'm not sure how much of the behavior is recreated however, would need further testing (my guess would be that they're remapping everything to $A04000 on reads, but may not have necessarily accounted for the undefined bits of the status register).

On that note, it seems that MD2 VA2/VA2.3 is basically undetectable compared to some model 1 revision (MD1 VA5/VA6, my guess?), so good luck there. Quoting from #general-2 in the Plutiedev Discord server:
Ace wrote:It's essentially a shrunk-down Genesis model 1.
FM BUSY only accessible from $4000 in the Z80's address space and using a YM2612. However, VA2.3s commonly have a buggy ASIC, the 315-5685, which has misplaced shadow/highlight and is sometimes prone to raster effect glitches.
I don't think you can detect the buggy ASIC (from what I recall the issues are only exposed on the output)

btw, do all MD1 VA5 return back version %0001 in $A10001 even when TMSS is disabled? (since from what I recall some VA5 boards disable it?)

EDIT: on that note, does any revision ever return any other version values besides %0000 and %0001?
Sik is pronounced as "seek", not as "sick".

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Re: List of every detectable difference in Mega Drive revisions?

Post by Stef » Tue Sep 01, 2020 10:42 am

For some reasons YM3438 need more cycles than the YM2612 to update internal registers (i guess it depend from the register) so it makes sense the busy flag is also maintained for longer.

Mask of Destiny
Very interested
Posts: 615
Joined: Thu Nov 30, 2006 6:30 am

Re: List of every detectable difference in Mega Drive revisions?

Post by Mask of Destiny » Wed Sep 02, 2020 2:30 am

TmEE co.(TM) wrote:
Sat Aug 22, 2020 5:02 am
That's something I didn't know, I mainly only commented among the actual consoles (except MD2 VA2, which I would like to get and a VA0 MD1). Discrete YM3438 has longer busy bit cycle from what I remember reading from nukeYKT core notes, compared to 2612 and ASIC which would be another way to detect things.
At least in my test ROM (which is limited in resolution by the 68K), they all appear to have the same timing when reading status from the proper port.
Sik wrote:
Tue Aug 25, 2020 4:33 am
And yeah, Teradrive has a discrete YM3438, but in a Discord server where I mentioned this it was brought up that Sega also added some extra logic precisely to fake the YM2612's behavior with the status register (looks like they had already found something that broke by then). I'm not sure how much of the behavior is recreated however, would need further testing (my guess would be that they're remapping everything to $A04000 on reads, but may not have necessarily accounted for the undefined bits of the status register).
I think I may have said that, but I was just relaying information someone else had told me. I just ran my test ROM on my Teradrive (again? not sure if I ever did the first time) and it behaves like an MD with a YM3438 integrated into the VDP as best I can tell. One other little Teradrive quirk is that 68K open bus appears to have all bits high like the Z80 on VA3+ MD1s.
Sik wrote:
Tue Aug 25, 2020 4:33 am
On that note, it seems that MD2 VA2/VA2.3 is basically undetectable compared to some model 1 revision (MD1 VA5/VA6, my guess?), so good luck there.
VA6 has different open bus behavior than other revisions. So discrete YM2612 + TMSS + funky open bus (some bits tend to be stuck high) = MD1 VA6, discrete YM2612 + TMSS + normal open bus = MD2 VA2/VA2.3.

I am uncertain how a VA5 behaves, both in the extent that TMSS is present and functional and with regards to the open bus stuff. If anyone has one and can run my test ROM, I would appreciate it.
Sik wrote:
Tue Aug 25, 2020 4:33 am
EDIT: on that note, does any revision ever return any other version values besides %0000 and %0001?
Not on any of the hardware I have.

Post Reply