Skip to content

Conversation

cam900
Copy link
Contributor

@cam900 cam900 commented Sep 3, 2025

In Mega drive/Genesis Super Street Fighter 2 Cartridge, Sega 315-5709/315-5779 controls bankswitching and determines upper half of ROM space (Backup RAM or ROM).

Titan Overdrive 2 requires compatible mapper hardware as above, but ROM space is forced to ROM?

Reference (for mapper chip): https://segaretro.org/images/7/78/IC_BD_16M_42PIN_x_4_EPROM_32X_RD_User%27s_Manual.pdf

@angelosa
Copy link
Member

angelosa commented Sep 3, 2025

Phantasy Star IV and Sonic 3 & Knuckles (thru lock-on?) actually depends on the backup RAM to be view selectable (those uses different mappers).
Super Street Fighter 2 shouldn't have any SRAM, and it's the only official release known to need the ROM banks. The 32x development cartridge refers to a different configuration, very unlikely that is implemented here.
For homebrews the conventional form is to use SEGA SSF in the header at $100, cfr. plutiedev reference, and the official documentation actually states that bank 0 is mappable and SRAM overlay is on a different bit, something I haven't touched because Titan mapper is a one-shot PoC until I have the chance to rewrite this.

Further reading:
TASEmulators/BizHawk#695

{
D0: Determine upper half (0x200000 onward) of ROM space: Backup RAM(1) or ROM(0)
D1: Backup RAM Write protect
(No official licensed software used these features)
Copy link
Contributor Author

@cam900 cam900 Sep 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"No official licensed software used these features" in here means "No official licensed software used SRAM overlay and write protect register in 315-5709/315-5779 mapper chip".
These registers are used in official licensed software without 315-5709/315-5779 mapper chip.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again: what's your rationale/reference that makes you think Super Street Fighter 2 uses a 32x dev cart with those numbers?

Copy link
Contributor Author

@cam900 cam900 Sep 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reference is for mapper chip, and i think dev cart mentioned at reference and actual MD Super Street Fighter 2 cart PCB has same mapper chip. There's another dev cart has same mapper chip as reference/MD Super Street Fighter 2 cart PCB: https://segaretro.org/images/a/a0/IC_BD_4M_32PIN_x_8_EPROM_32X_RD_User%27s_Manual.pdf

Copy link
Member

@angelosa angelosa Sep 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PCB picture, post it.

Copy link
Contributor Author

@cam900 cam900 Sep 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://gendev.spritesmind.net/mirrors/www.nepereny.com/misc2/games/genesis_super_street_fighter_2.htm here is PCB for MD Super Street Fighter 2; it has 315-5779, but compatible as 315-5709.
Some PCB has 315-5709 instead 315-5779.
see also: megadriv.xml mentioned 315-5709 IC in Super Street Fighter 2.

PCB with 315-5709: https://storage.googleapis.com/images.pricecharting.com/6b41c02b48a6a12967bf17268e0b259a0dc1c94097afd863c1c6ebee0d85bec5/1600.jpg

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I doubt your mask is right, in the [do some other stuff] above there's ROM checksum for 0x300000-0x3fffff, throwing a red screen of death if the SRAM view would respond there.

Copy link
Contributor Author

@cam900 cam900 Sep 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so reference in above has wrong info maybe(it says 0x200000 to 0x3fffff is mapped to SRAM when SRAM access bit is enabled, but it's not true and actually lesser area is mapped to SRAM?) even its official documents from sega...

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/VRES does the trick, B27 connection prevents SRAM being visible at startup while mapping the banks linearly.
image

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That means, 0xa130f1 is should be set to 0x02 at reset, right? (RAM accessing disabled and write protected)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's my understanding of it yeah. Notice that I've already implemented this in the upcoming rewrite.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants