Update to upstream/master

This commit is contained in:
radius 2017-12-09 21:07:11 -05:00
commit be3385a8c1
2 changed files with 9 additions and 6 deletions

View File

@ -289,11 +289,13 @@ void GB_palette_changed(GB_gameboy_t *gb, bool background_palette, uint8_t index
void GB_set_color_correction_mode(GB_gameboy_t *gb, GB_color_correction_mode_t mode) void GB_set_color_correction_mode(GB_gameboy_t *gb, GB_color_correction_mode_t mode)
{ {
gb->color_correction_mode = mode; gb->color_correction_mode = mode;
if (gb->is_cgb) {
for (unsigned i = 0; i < 32; i++) { for (unsigned i = 0; i < 32; i++) {
GB_palette_changed(gb, false, i * 2); GB_palette_changed(gb, false, i * 2);
GB_palette_changed(gb, true, i * 2); GB_palette_changed(gb, true, i * 2);
} }
} }
}
/* /*
STAT interrupt is implemented based on this finding: STAT interrupt is implemented based on this finding:

View File

@ -1073,9 +1073,10 @@ static void ei(GB_gameboy_t *gb, uint8_t opcode)
{ {
/* ei is actually "disable interrupts for one instruction, then enable them". */ /* ei is actually "disable interrupts for one instruction, then enable them". */
GB_advance_cycles(gb, 4); GB_advance_cycles(gb, 4);
gb->ime = false; if (!gb->ime && !gb->ime_toggle) {
gb->ime_toggle = true; gb->ime_toggle = true;
} }
}
static void ld_hl_sp_r8(GB_gameboy_t *gb, uint8_t opcode) static void ld_hl_sp_r8(GB_gameboy_t *gb, uint8_t opcode)
{ {