Vectrex: interrupt fixes
This commit is contained in:
parent
6a5fc8b47e
commit
9cbc78778f
|
@ -8,7 +8,7 @@ namespace BizHawk.Emulation.Common.Components.MC6809
|
||||||
{
|
{
|
||||||
Regs[ADDR] = 0xFFF8;
|
Regs[ADDR] = 0xFFF8;
|
||||||
PopulateCURINSTR(IDLE,
|
PopulateCURINSTR(IDLE,
|
||||||
IDLE,
|
SET_E,
|
||||||
DEC16, SP,
|
DEC16, SP,
|
||||||
WR_DEC_LO, SP, PC,
|
WR_DEC_LO, SP, PC,
|
||||||
WR_DEC_HI, SP, PC,
|
WR_DEC_HI, SP, PC,
|
||||||
|
@ -34,7 +34,7 @@ namespace BizHawk.Emulation.Common.Components.MC6809
|
||||||
{
|
{
|
||||||
Regs[ADDR] = 0xFFF6;
|
Regs[ADDR] = 0xFFF6;
|
||||||
PopulateCURINSTR(IDLE,
|
PopulateCURINSTR(IDLE,
|
||||||
IDLE,
|
CLR_E,
|
||||||
DEC16, SP,
|
DEC16, SP,
|
||||||
WR_DEC_LO, SP, PC,
|
WR_DEC_LO, SP, PC,
|
||||||
WR_DEC_HI, SP, PC,
|
WR_DEC_HI, SP, PC,
|
||||||
|
@ -51,7 +51,7 @@ namespace BizHawk.Emulation.Common.Components.MC6809
|
||||||
{
|
{
|
||||||
Regs[ADDR] = 0xFFFC;
|
Regs[ADDR] = 0xFFFC;
|
||||||
PopulateCURINSTR(IDLE,
|
PopulateCURINSTR(IDLE,
|
||||||
IDLE,
|
SET_E,
|
||||||
DEC16, SP,
|
DEC16, SP,
|
||||||
WR_DEC_LO, SP, PC,
|
WR_DEC_LO, SP, PC,
|
||||||
WR_DEC_HI, SP, PC,
|
WR_DEC_HI, SP, PC,
|
||||||
|
|
|
@ -78,6 +78,7 @@ namespace BizHawk.Emulation.Common.Components.MC6809
|
||||||
public const ushort LD_8 = 67;
|
public const ushort LD_8 = 67;
|
||||||
public const ushort LD_16 = 68;
|
public const ushort LD_16 = 68;
|
||||||
public const ushort LEA = 69;
|
public const ushort LEA = 69;
|
||||||
|
public const ushort CLR_E = 70;
|
||||||
|
|
||||||
public MC6809()
|
public MC6809()
|
||||||
{
|
{
|
||||||
|
@ -360,6 +361,9 @@ namespace BizHawk.Emulation.Common.Components.MC6809
|
||||||
case SET_E:
|
case SET_E:
|
||||||
FlagE = true;
|
FlagE = true;
|
||||||
break;
|
break;
|
||||||
|
case CLR_E:
|
||||||
|
FlagE = false;
|
||||||
|
break;
|
||||||
case ANDCC:
|
case ANDCC:
|
||||||
Regs[CC] &= Regs[instr_pntr++];
|
Regs[CC] &= Regs[instr_pntr++];
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -472,8 +472,7 @@ namespace BizHawk.Emulation.Common.Components.MC6809
|
||||||
RD_INC, ALU, SP,
|
RD_INC, ALU, SP,
|
||||||
RD_INC_OP, ALU2, SP, SET_ADDR, US, ALU, ALU2,
|
RD_INC_OP, ALU2, SP, SET_ADDR, US, ALU, ALU2,
|
||||||
RD_INC, ALU, SP,
|
RD_INC, ALU, SP,
|
||||||
RD_INC_OP, ALU2, SP,
|
RD_INC_OP, ALU2, SP, SET_ADDR, PC, ALU, ALU2);
|
||||||
SET_ADDR, PC, ALU, ALU2);
|
|
||||||
|
|
||||||
IRQS = 14;
|
IRQS = 14;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue