Invalid data being read from specific ROM addresses by the 68000?

Ask anything your want about the 32X Mushroom programming.

Moderator: BigEvilCorporation

Post Reply
Ralakimus
Interested
Posts: 19
Joined: Mon Nov 30, 2015 12:38 pm

Invalid data being read from specific ROM addresses by the 68000?

Post by Ralakimus » Mon Aug 12, 2024 12:57 am

Okay, I need someone with an actual 32X to test this. On my own 32X, I have this issue where if the 68000 tries to read from ROM addresses 0x210000, 0x210001, or anywhere in 0x2130D0-0x2130DF (basically, 0x910000, 0x910001, 0x9130D0-0x913D0F with the bank set to 2), something else gets read, and the results are consistent every time I run it. With 0x210000 and 0x210001, bits 6 and 7 get masked out, and the other addresses read something completely different (the values are always the same, 0000 C000 55A0 [random] FFFF FFFF FFFF FFFF). Does this happen for anyone else, and if anyone happens to know, why does this happen?

ROM Download

These are my results, with each column being the 4 ROM banks being compared with each other:

Image

EDIT: After some testing...

Happens:
  • Model 1 USA VA3 Genesis, VA0 USA 32X, Mega Everdrive Pro
  • Model 1 Japan VA5 Genesis, VA0 USA 32X, Mega Everdrive Pro
  • Model 1 USA VA6.5 Genesis, VA0 USA 32X, Mega Everdrive Pro
  • Model 2 USA VA0 Genesis, VA0 USA 32X, Mega Everdrive Pro
Does not happen
  • Model 2 USA VA0 Genesis, VA0 USA 32X, Everdrive X3
  • Model 1 USA VA6.5 Genesis, VA0 USA 32X, Everdrive X3
  • Model 1 USA VA6 Genesis, VA0 USA 32X, Everdrive X7
  • Model 2 Europe Mega Drive (board version unknown), Europe 32X (board version unknown, "20-6923 04049-01-2 ABS"), "Everdrive MD" (either super old or a bootleg)
I'm starting to think it's an issue with the Mega Everdrive Pro with the 32X, considering that's the only difference between the 2 Genesis model 2 VA0/32X VA0 tests. For the tests outside of my initial one in which the issue happens, the results are exactly the same.

I did notice that the old version of the extended SSF mapper for the X3/X5/X7 series used to have registers mapped at 0xA130D0-0xA130DF, which looks suspiciously alike to 0x9130D0-0x9130DF... I have no clue if there's some sort of relation or not, but it's a thought.
Last edited by Ralakimus on Mon Aug 12, 2024 8:05 pm, edited 1 time in total.

ob1
Very interested
Posts: 465
Joined: Wed Dec 06, 2006 9:01 am
Location: Aix-en-Provence, France

Re: Invalid data being read from specific ROM addresses by the 68000?

Post by ob1 » Mon Aug 12, 2024 9:02 am

Once upon a time, I happened to have these kind of strange behaviour.
I can not tell you my MD nor 32X model, not even MegaEverdrive version,
but I definitely remember reading unexpected bytes.

Could be / hope it only comes with the Mega Everdrive.

Post Reply