Mercurial > repos > blastem
comparison m68k_core.c @ 1279:996eb76d6da1
RESET is not a terminal instruction on the 68K. Fixes a crash bug in Chavez II and possibly other games
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 13 Mar 2017 23:14:13 -0700 |
parents | f36ef4847ef2 |
children | c5821f9de325 |
comparison
equal
deleted
inserted
replaced
1278:34d3cb05014d | 1279:996eb76d6da1 |
---|---|
679 } | 679 } |
680 | 680 |
681 uint8_t m68k_is_terminal(m68kinst * inst) | 681 uint8_t m68k_is_terminal(m68kinst * inst) |
682 { | 682 { |
683 return inst->op == M68K_RTS || inst->op == M68K_RTE || inst->op == M68K_RTR || inst->op == M68K_JMP | 683 return inst->op == M68K_RTS || inst->op == M68K_RTE || inst->op == M68K_RTR || inst->op == M68K_JMP |
684 || inst->op == M68K_TRAP || inst->op == M68K_ILLEGAL || inst->op == M68K_INVALID || inst->op == M68K_RESET | 684 || inst->op == M68K_TRAP || inst->op == M68K_ILLEGAL || inst->op == M68K_INVALID |
685 || (inst->op == M68K_BCC && inst->extra.cond == COND_TRUE); | 685 || (inst->op == M68K_BCC && inst->extra.cond == COND_TRUE); |
686 } | 686 } |
687 | 687 |
688 static void m68k_handle_deferred(m68k_context * context) | 688 static void m68k_handle_deferred(m68k_context * context) |
689 { | 689 { |