GB: Allow use of CGB-E and AGB-0 BIOS versions (closes #3427)
This commit is contained in:
parent
9923d1b3a1
commit
abb46602ca
1
CHANGES
1
CHANGES
@ -44,6 +44,7 @@ Misc:
|
|||||||
- Core: Add MD5 hashing for ROMs
|
- Core: Add MD5 hashing for ROMs
|
||||||
- Core: Add support for specifying an arbitrary portable directory
|
- Core: Add support for specifying an arbitrary portable directory
|
||||||
- GB: Prevent incompatible BIOSes from being used on differing models
|
- GB: Prevent incompatible BIOSes from being used on differing models
|
||||||
|
- GB: Allow use of CGB-E and AGB-0 BIOS versions (closes mgba.io/i/3427)
|
||||||
- GB Serialize: Add missing savestate support for MBC6 and NT (newer)
|
- GB Serialize: Add missing savestate support for MBC6 and NT (newer)
|
||||||
- GBA: Improve detection of valid ELF ROMs
|
- GBA: Improve detection of valid ELF ROMs
|
||||||
- GBA Audio: Remove broken XQ audio pending rewrite
|
- GBA Audio: Remove broken XQ audio pending rewrite
|
||||||
|
@ -35,7 +35,9 @@ static const uint8_t _registeredTrademark[] = {0x3C, 0x42, 0xB9, 0xA5, 0xB9, 0xA
|
|||||||
#define SGB2_BIOS_CHECKSUM 0X53D0DD63
|
#define SGB2_BIOS_CHECKSUM 0X53D0DD63
|
||||||
#define CGB_BIOS_CHECKSUM 0x41884E46
|
#define CGB_BIOS_CHECKSUM 0x41884E46
|
||||||
#define CGB0_BIOS_CHECKSUM 0xE8EF5318
|
#define CGB0_BIOS_CHECKSUM 0xE8EF5318
|
||||||
|
#define CGBE_BIOS_CHECKSUM 0xE95DC95D
|
||||||
#define AGB_BIOS_CHECKSUM 0xFFD6B0F1
|
#define AGB_BIOS_CHECKSUM 0xFFD6B0F1
|
||||||
|
#define AGB0_BIOS_CHECKSUM 0x570337EA
|
||||||
|
|
||||||
mLOG_DEFINE_CATEGORY(GB, "GB", "gb");
|
mLOG_DEFINE_CATEGORY(GB, "GB", "gb");
|
||||||
|
|
||||||
@ -550,7 +552,9 @@ bool GBIsBIOS(struct VFile* vf) {
|
|||||||
case SGB2_BIOS_CHECKSUM:
|
case SGB2_BIOS_CHECKSUM:
|
||||||
case CGB_BIOS_CHECKSUM:
|
case CGB_BIOS_CHECKSUM:
|
||||||
case CGB0_BIOS_CHECKSUM:
|
case CGB0_BIOS_CHECKSUM:
|
||||||
|
case CGBE_BIOS_CHECKSUM:
|
||||||
case AGB_BIOS_CHECKSUM:
|
case AGB_BIOS_CHECKSUM:
|
||||||
|
case AGB0_BIOS_CHECKSUM:
|
||||||
return true;
|
return true;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -567,7 +571,9 @@ bool GBIsCompatibleBIOS(struct VFile* vf, enum GBModel model) {
|
|||||||
return model < GB_MODEL_CGB;
|
return model < GB_MODEL_CGB;
|
||||||
case CGB_BIOS_CHECKSUM:
|
case CGB_BIOS_CHECKSUM:
|
||||||
case CGB0_BIOS_CHECKSUM:
|
case CGB0_BIOS_CHECKSUM:
|
||||||
|
case CGBE_BIOS_CHECKSUM:
|
||||||
case AGB_BIOS_CHECKSUM:
|
case AGB_BIOS_CHECKSUM:
|
||||||
|
case AGB0_BIOS_CHECKSUM:
|
||||||
return model >= GB_MODEL_CGB;
|
return model >= GB_MODEL_CGB;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
@ -862,9 +868,11 @@ void GBDetectModel(struct GB* gb) {
|
|||||||
break;
|
break;
|
||||||
case CGB_BIOS_CHECKSUM:
|
case CGB_BIOS_CHECKSUM:
|
||||||
case CGB0_BIOS_CHECKSUM:
|
case CGB0_BIOS_CHECKSUM:
|
||||||
|
case CGBE_BIOS_CHECKSUM:
|
||||||
gb->model = GB_MODEL_CGB;
|
gb->model = GB_MODEL_CGB;
|
||||||
break;
|
break;
|
||||||
case AGB_BIOS_CHECKSUM:
|
case AGB_BIOS_CHECKSUM:
|
||||||
|
case AGB0_BIOS_CHECKSUM:
|
||||||
gb->model = GB_MODEL_AGB;
|
gb->model = GB_MODEL_AGB;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user