diff --git a/Core/gb.c b/Core/gb.c index 24d7329..0f027ef 100644 --- a/Core/gb.c +++ b/Core/gb.c @@ -1319,6 +1319,11 @@ bool GB_is_cgb(GB_gameboy_t *gb) return (gb->model & GB_MODEL_FAMILY_MASK) == GB_MODEL_CGB_FAMILY; } +bool GB_is_cgb_in_cgb_mode(GB_gameboy_t *gb) +{ + return gb->cgb_mode; +} + bool GB_is_sgb(GB_gameboy_t *gb) { return (gb->model & ~GB_MODEL_PAL_BIT & ~GB_MODEL_NO_SFC_BIT) == GB_MODEL_SGB || (gb->model & ~GB_MODEL_NO_SFC_BIT) == GB_MODEL_SGB2; diff --git a/Core/gb.h b/Core/gb.h index cc235e8..d7eda27 100644 --- a/Core/gb.h +++ b/Core/gb.h @@ -765,6 +765,7 @@ __attribute__((__format__ (__printf__, fmtarg, firstvararg))) void GB_init(GB_gameboy_t *gb, GB_model_t model); bool GB_is_inited(GB_gameboy_t *gb); bool GB_is_cgb(GB_gameboy_t *gb); +bool GB_is_cgb_in_cgb_mode(GB_gameboy_t *gb); bool GB_is_sgb(GB_gameboy_t *gb); // Returns true if the model is SGB or SGB2 bool GB_is_hle_sgb(GB_gameboy_t *gb); // Returns true if the model is SGB or SGB2 and the SFC/SNES side is HLE'd GB_model_t GB_get_model(GB_gameboy_t *gb);