There are two PCB types for BS Memory Cartridges with mask ROM instead of flash:
(click for larger image)
BSMC-CR-01 is used in the Same Game cartridge, and is a 512KiB ROM. You can read it out through $c0-c7:0000-ffff.
But if you put BSMC-BR-01, it goes poorly. It is as if A0 is not connected. So if you read $c0-c7:0000-ffff, every odd byte ends up identical to the even byte. Ex: "GNEXT DATA" reads back as "GGEETTDDTT"
In order to read this cartridge, it needs to be put in SD Gundam G Next. Only on this cartridge, it's not mapped on the bus by default. As an SA1 game, you have to set a super MMC bank to #$04 to access it. So with $2220=#$04, you can now read the BS Memory out correctly from $c0-c7:0000-ffff.
What is confusing me is ... this ROM is also 512KiB (both mirror after that), despite having four extra pins on the ROM chip. And why is there the A0 oddity on the Same Game cartridge?
I want to emulate this behavior so that if you insert BSMC-BR-01 into Same Game, it acts the same. And I still need to try reading out BSMC-CR-01 from SD Gundam G Next to see what happens.
Anyone have ideas on what might be going on here? These cartridges have an obscene amount of pins for what they are ... if someone knows the pinouts of the cartridge connector and the ROM chips, I can bring out my multimeter to trace where the mask ROM pins are going.
(Also: flash carts are BSMC-AF-01, and appear to be read out the same way as BSMC-CR-01.)
(click for larger image)
BSMC-CR-01 is used in the Same Game cartridge, and is a 512KiB ROM. You can read it out through $c0-c7:0000-ffff.
But if you put BSMC-BR-01, it goes poorly. It is as if A0 is not connected. So if you read $c0-c7:0000-ffff, every odd byte ends up identical to the even byte. Ex: "GNEXT DATA" reads back as "GGEETTDDTT"
In order to read this cartridge, it needs to be put in SD Gundam G Next. Only on this cartridge, it's not mapped on the bus by default. As an SA1 game, you have to set a super MMC bank to #$04 to access it. So with $2220=#$04, you can now read the BS Memory out correctly from $c0-c7:0000-ffff.
What is confusing me is ... this ROM is also 512KiB (both mirror after that), despite having four extra pins on the ROM chip. And why is there the A0 oddity on the Same Game cartridge?
I want to emulate this behavior so that if you insert BSMC-BR-01 into Same Game, it acts the same. And I still need to try reading out BSMC-CR-01 from SD Gundam G Next to see what happens.
Anyone have ideas on what might be going on here? These cartridges have an obscene amount of pins for what they are ... if someone knows the pinouts of the cartridge connector and the ROM chips, I can bring out my multimeter to trace where the mask ROM pins are going.
(Also: flash carts are BSMC-AF-01, and appear to be read out the same way as BSMC-CR-01.)