Hi,
there's something that's bugging me lately.
As many of you surely know, there are some GBC games that are "GBA enhanced" - when you put them to a GBA, they will make access to an additional content and swap to a brighter color palette so the image is nicely visible on the original GBA.
To my knowledge there are four of those enhanced games:
- The Legend of Zelda: Oracle of Ages
- The Legend of Zelda: Oracle of Seasons
- Wendy: Every Witch Way
- Shantae
Anyway, additional content is nice. But the birghter color palette is not, especially when you're playing on a GBA SP AGS-101 (the one with the better screen) or Gameboy Player (on Gamecube). The colors look washed out in comparion to the original colors.
What I want to do - I want to play those games in their original colors on a GBA SP AGS-101/GBP without using a cheat device such as Gameshark. I have one and I tried to play the Zelda: Oracle of Seasons with it and it works (the cheat codes already exist, see the discussion on Gamehacking.org). There is one problem: the contact with the cartridge is loose and sometimes the game freezes when I unknowingly touch the device while playing. So it's not very practical and certainly not ergonomical as the device is rather large and uncomfortable too.
This is how the detection works (from GbdevWiki):
"Detecting CGB (and GBA) functions CGB hardware can be detected by examing the CPU accumulator (A-register) directly after startup. A value of 11h indicates CGB (or GBA) hardware, if so, CGB functions can be used (if unlocked, see above). When A=11h, you may also examine Bit 0 of the CPUs B-Register to separate between CGB (bit cleared) and GBA (bit set), by that detection it is possible to use 'repaired' color palette data matching for GBA displays."
I made some research and it appears that whether the B register is filled with 0 or 1 depends on the BIOS. I thought that I could swap the BIOS module with a one from a broken Gameboy Color, but unfortunately the BIOS is embedded in the CPU chip. You even cannot update the BIOS as it's read-only.
My question is - is it possible to make some kind of modchip that would force a game to think it's inserted in a GBC when it's actually inserted in a GBA? What would be needed to make it work?
there's something that's bugging me lately.
As many of you surely know, there are some GBC games that are "GBA enhanced" - when you put them to a GBA, they will make access to an additional content and swap to a brighter color palette so the image is nicely visible on the original GBA.
To my knowledge there are four of those enhanced games:
- The Legend of Zelda: Oracle of Ages
- The Legend of Zelda: Oracle of Seasons
- Wendy: Every Witch Way
- Shantae
Anyway, additional content is nice. But the birghter color palette is not, especially when you're playing on a GBA SP AGS-101 (the one with the better screen) or Gameboy Player (on Gamecube). The colors look washed out in comparion to the original colors.
What I want to do - I want to play those games in their original colors on a GBA SP AGS-101/GBP without using a cheat device such as Gameshark. I have one and I tried to play the Zelda: Oracle of Seasons with it and it works (the cheat codes already exist, see the discussion on Gamehacking.org). There is one problem: the contact with the cartridge is loose and sometimes the game freezes when I unknowingly touch the device while playing. So it's not very practical and certainly not ergonomical as the device is rather large and uncomfortable too.
This is how the detection works (from GbdevWiki):
"Detecting CGB (and GBA) functions CGB hardware can be detected by examing the CPU accumulator (A-register) directly after startup. A value of 11h indicates CGB (or GBA) hardware, if so, CGB functions can be used (if unlocked, see above). When A=11h, you may also examine Bit 0 of the CPUs B-Register to separate between CGB (bit cleared) and GBA (bit set), by that detection it is possible to use 'repaired' color palette data matching for GBA displays."
I made some research and it appears that whether the B register is filled with 0 or 1 depends on the BIOS. I thought that I could swap the BIOS module with a one from a broken Gameboy Color, but unfortunately the BIOS is embedded in the CPU chip. You even cannot update the BIOS as it's read-only.
My question is - is it possible to make some kind of modchip that would force a game to think it's inserted in a GBC when it's actually inserted in a GBA? What would be needed to make it work?