Prevent the Cocoa port from being both "paused" and "debug_paused"

This commit is contained in:
Lior Halphon 2016-07-02 20:58:06 +03:00
parent cc9af4a5c5
commit 9321df9630

View File

@ -216,6 +216,9 @@ static uint32_t rgbEncode(GB_gameboy_t *gb, uint8_t r, uint8_t g, uint8_t b)
{ {
[self log:"^C\n"]; [self log:"^C\n"];
gb.debug_stopped = true; gb.debug_stopped = true;
if (!running) {
[self start];
}
[self.consoleInput becomeFirstResponder]; [self.consoleInput becomeFirstResponder];
} }
@ -241,7 +244,8 @@ static uint32_t rgbEncode(GB_gameboy_t *gb, uint8_t r, uint8_t g, uint8_t b)
[(NSMenuItem*)anItem setState:!self.audioClient.isPlaying]; [(NSMenuItem*)anItem setState:!self.audioClient.isPlaying];
} }
else if ([anItem action] == @selector(togglePause:)) { else if ([anItem action] == @selector(togglePause:)) {
[(NSMenuItem*)anItem setState:!running]; [(NSMenuItem*)anItem setState:(!running) || (gb.debug_stopped)];
return !gb.debug_stopped;
} }
else if ([anItem action] == @selector(reset:) && anItem.tag != 0) { else if ([anItem action] == @selector(reset:) && anItem.tag != 0) {
[(NSMenuItem*)anItem setState:(anItem.tag == 1 && !gb.is_cgb) || (anItem.tag == 2 && gb.is_cgb)]; [(NSMenuItem*)anItem setState:(anItem.tag == 1 && !gb.is_cgb) || (anItem.tag == 2 && gb.is_cgb)];