libretro / gambatte-libretro

Hard fork of Gambatte to the libretro API.
http://sourceforge.net/projects/gambatte/
GNU General Public License v2.0
105 stars 79 forks source link

Regarding Game Boy Pocket emulation/hardware #129

Closed ghost closed 5 years ago

ghost commented 5 years ago

Hello everyone!

Recently started using the Gambatte core again and had almost forgotten how good it was!

I have used bgb for a while now and noticed that it had options for detecting Game Boy Pocket/Super Game Boy 2 hardware.

There is actually a separate BIOS for the Game Boy Pocket, it's called mgb_boot.bin (SHA1: 4e68f9da03c310e84c523654b9026e51f26ce7f0) and in bgb it works quite well.

Normal users wouldn't see the difference between the regular dmg_boot.bin and the mgb_boot.bin when booting a Game Boy game, the only real difference is that the mgb_boot.bin differs in one byte.

It loads the value $FF into the A register instead of $01 just before handing over the control to the game which is used by the game to detect that it is running on Game Boy Pocket hardware.

Coming back to Gambatte again I noticed in the Emulated hardware core option that Game Boy Pocket isn't present (Auto|GB|GBC|GBA)

Would it be possible to add Game Boy Pocket to the list? There is a seperate BIOS and the Game Boy Pocket is different to the standard brick sized original Game Boy hardware wise.

When using Use official bootloader (restart) enabled with the mgb_boot.bin BIOS the user could pair it with the added Emulated hardware (restart) GBP option and make it "act" like a Game Boy Pocket.

This would be pretty cool, to have most of the Game Boy systems available.

What do you think?

ghost commented 5 years ago

I've been thinking, adding this would be rather pointless.

People could just use the regular gb_bios.bin and slap a Game Boy Pocket palette on to the experience and no one would see the difference.

I don't know if there is any Game Boy games that explicit requires Game Boy Pocket hardware or benefits from it at all.

Gambatte is great like it is, maybe one day in the future this will be relevant.

I'm closing this for now.