📄 cpuops.cpp
字号:
DirectIndexedX (READ); LDY16 ();}static void OpACX1 (void){ Absolute (READ); LDY8 ();}static void OpACX0 (void){ Absolute (READ); LDY16 ();}static void OpBCX1 (void){ AbsoluteIndexedX (READ); LDY8 ();}static void OpBCX0 (void){ AbsoluteIndexedX (READ); LDY16 ();}/**********************************************************************************************//* LSR *************************************************************************************** */static void Op4AM1 (void){ A_LSR8 ();}static void Op4AM0 (void){ A_LSR16 ();}static void Op46M1 (void){ Direct (MODIFY); LSR8 ();}static void Op46M0 (void){ Direct (MODIFY); LSR16 ();}static void Op56M1 (void){ DirectIndexedX (MODIFY); LSR8 ();}static void Op56M0 (void){ DirectIndexedX (MODIFY); LSR16 ();}static void Op4EM1 (void){ Absolute (MODIFY); LSR8 ();}static void Op4EM0 (void){ Absolute (MODIFY); LSR16 ();}static void Op5EM1 (void){ AbsoluteIndexedX (MODIFY); LSR8 ();}static void Op5EM0 (void){ AbsoluteIndexedX (MODIFY); LSR16 ();}/**********************************************************************************************//* ORA *************************************************************************************** */static void Op09M1 (void){ Registers.AL |= *CPU.PC++;#ifndef SA1_OPCODES CPU.Cycles += CPU.MemSpeed;#endif SetZN8 (Registers.AL);}static void Op09M0 (void){#ifdef FAST_LSB_WORD_ACCESS Registers.A.W |= *(uint16 *) CPU.PC;#else Registers.A.W |= *CPU.PC + (*(CPU.PC + 1) << 8);#endif CPU.PC += 2;#ifndef SA1_OPCODES CPU.Cycles += CPU.MemSpeedx2;#endif SetZN16 (Registers.A.W);}static void Op05M1 (void){ Direct (READ); ORA8 ();}static void Op05M0 (void){ Direct (READ); ORA16 ();}static void Op15M1 (void){ DirectIndexedX (READ); ORA8 ();}static void Op15M0 (void){ DirectIndexedX (READ); ORA16 ();}static void Op12M1 (void){ DirectIndirect (READ); ORA8 ();}static void Op12M0 (void){ DirectIndirect (READ); ORA16 ();}static void Op01M1 (void){ DirectIndexedIndirect (READ); ORA8 ();}static void Op01M0 (void){ DirectIndexedIndirect (READ); ORA16 ();}static void Op11M1 (void){ DirectIndirectIndexed (READ); ORA8 ();}static void Op11M0 (void){ DirectIndirectIndexed (READ); ORA16 ();}static void Op07M1 (void){ DirectIndirectLong (READ); ORA8 ();}static void Op07M0 (void){ DirectIndirectLong (READ); ORA16 ();}static void Op17M1 (void){ DirectIndirectIndexedLong (READ); ORA8 ();}static void Op17M0 (void){ DirectIndirectIndexedLong (READ); ORA16 ();}static void Op0DM1 (void){ Absolute (READ); ORA8 ();}static void Op0DM0 (void){ Absolute (READ); ORA16 ();}static void Op1DM1 (void){ AbsoluteIndexedX (READ); ORA8 ();}static void Op1DM0 (void){ AbsoluteIndexedX (READ); ORA16 ();}static void Op19M1 (void){ AbsoluteIndexedY (READ); ORA8 ();}static void Op19M0 (void){ AbsoluteIndexedY (READ); ORA16 ();}static void Op0FM1 (void){ AbsoluteLong (READ); ORA8 ();}static void Op0FM0 (void){ AbsoluteLong (READ); ORA16 ();}static void Op1FM1 (void){ AbsoluteLongIndexedX (READ); ORA8 ();}static void Op1FM0 (void){ AbsoluteLongIndexedX (READ); ORA16 ();}static void Op03M1 (void){ StackRelative (READ); ORA8 ();}static void Op03M0 (void){ StackRelative (READ); ORA16 ();}static void Op13M1 (void){ StackRelativeIndirectIndexed (READ); ORA8 ();}static void Op13M0 (void){ StackRelativeIndirectIndexed (READ); ORA16 ();}/**********************************************************************************************//* ROL *************************************************************************************** */static void Op2AM1 (void){ A_ROL8 ();}static void Op2AM0 (void){ A_ROL16 ();}static void Op26M1 (void){ Direct (MODIFY); ROL8 ();}static void Op26M0 (void){ Direct (MODIFY); ROL16 ();}static void Op36M1 (void){ DirectIndexedX (MODIFY); ROL8 ();}static void Op36M0 (void){ DirectIndexedX (MODIFY); ROL16 ();}static void Op2EM1 (void){ Absolute (MODIFY); ROL8 ();}static void Op2EM0 (void){ Absolute (MODIFY); ROL16 ();}static void Op3EM1 (void){ AbsoluteIndexedX (MODIFY); ROL8 ();}static void Op3EM0 (void){ AbsoluteIndexedX (MODIFY); ROL16 ();}/**********************************************************************************************//* ROR *************************************************************************************** */static void Op6AM1 (void){ A_ROR8 ();}static void Op6AM0 (void){ A_ROR16 ();}static void Op66M1 (void){ Direct (MODIFY); ROR8 ();}static void Op66M0 (void){ Direct (MODIFY); ROR16 ();}static void Op76M1 (void){ DirectIndexedX (MODIFY); ROR8 ();}static void Op76M0 (void){ DirectIndexedX (MODIFY); ROR16 ();}static void Op6EM1 (void){ Absolute (MODIFY); ROR8 ();}static void Op6EM0 (void){ Absolute (MODIFY); ROR16 ();}static void Op7EM1 (void){ AbsoluteIndexedX (MODIFY); ROR8 ();}static void Op7EM0 (void){ AbsoluteIndexedX (MODIFY); ROR16 ();}/**********************************************************************************************//* SBC *************************************************************************************** */static void OpE9M1 (void){ Immediate8 (READ); SBC8 ();}static void OpE9M0 (void){ Immediate16 (READ); SBC16 ();}static void OpE5M1 (void){ Direct (READ); SBC8 ();}static void OpE5M0 (void){ Direct (READ); SBC16 ();}static void OpF5M1 (void){ DirectIndexedX (READ); SBC8 ();}static void OpF5M0 (void){ DirectIndexedX (READ); SBC16 ();}static void OpF2M1 (void){ DirectIndirect (READ); SBC8 ();}static void OpF2M0 (void){ DirectIndirect (READ); SBC16 ();}static void OpE1M1 (void){ DirectIndexedIndirect (READ); SBC8 ();}static void OpE1M0 (void){ DirectIndexedIndirect (READ); SBC16 ();}static void OpF1M1 (void){ DirectIndirectIndexed (READ); SBC8 ();}static void OpF1M0 (void){ DirectIndirectIndexed (READ); SBC16 ();}static void OpE7M1 (void){ DirectIndirectLong (READ); SBC8 ();}static void OpE7M0 (void){ DirectIndirectLong (READ); SBC16 ();}static void OpF7M1 (void){ DirectIndirectIndexedLong (READ); SBC8 ();}static void OpF7M0 (void){ DirectIndirectIndexedLong (READ); SBC16 ();}static void OpEDM1 (void){ Absolute (READ); SBC8 ();}static void OpEDM0 (void){ Absolute (READ); SBC16 ();}static void OpFDM1 (void){ AbsoluteIndexedX (READ); SBC8 ();}static void OpFDM0 (void){ AbsoluteIndexedX (READ); SBC16 ();}static void OpF9M1 (void){ AbsoluteIndexedY (READ); SBC8 ();}static void OpF9M0 (void){ AbsoluteIndexedY (READ); SBC16 ();}static void OpEFM1 (void){ AbsoluteLong (READ); SBC8 ();}static void OpEFM0 (void){ AbsoluteLong (READ); SBC16 ();}static void OpFFM1 (void){ AbsoluteLongIndexedX (READ); SBC8 ();}static void OpFFM0 (void){ AbsoluteLongIndexedX (READ); SBC16 ();}static void OpE3M1 (void){ StackRelative (READ); SBC8 ();}static void OpE3M0 (void){ StackRelative (READ); SBC16 ();}static void OpF3M1 (void){ StackRelativeIndirectIndexed (READ); SBC8 ();}static void OpF3M0 (void){ StackRelativeIndirectIndexed (READ); SBC16 ();}/**********************************************************************************************//* STA *************************************************************************************** */static void Op85M1 (void){ Direct (WRITE); STA8 ();}static void Op85M0 (void){ Direct (WRITE); STA16 ();}static void Op95M1 (void){ DirectIndexedX (WRITE); STA8 ();}static void Op95M0 (void){ DirectIndexedX (WRITE); STA16 ();}static void Op92M1 (void){ DirectIndirect (WRITE); STA8 ();}static void Op92M0 (void){ DirectIndirect (WRITE); STA16 ();}static void Op81M1 (void){ DirectIndexedIndirect (WRITE); STA8 ();#ifdef noVAR_CYCLES if (CheckIndex ()) CPU.Cycles += ONE_CYCLE;#endif}static void Op81M0 (void){ DirectIndexedIndirect (WRITE); STA16 ();#ifdef noVAR_CYCLES if (CheckIndex ()) CPU.Cycles += ONE_CYCLE;#endif}static void Op91M1 (void){ DirectIndirectIndexed (WRITE); STA8 ();}static void Op91M0 (void){ DirectIndirectIndexed (WRITE); STA16 ();}static void Op87M1 (void){ DirectIndirectLong (WRITE); STA8 ();}static void Op87M0 (void){ DirectIndirectLong (WRITE); STA16 ();}static void Op97M1 (void){ DirectIndirectIndexedLong (WRITE); STA8 ();}static void Op97M0 (void){ DirectIndirectIndexedLong (WRITE); STA16 ();}static void Op8DM1 (void){ Absolute (WRITE); STA8 ();}static void Op8DM0 (void){ Absolute (WRITE); STA16 ();}static void Op9DM1 (void){ AbsoluteIndexedX (WRITE); STA8 ();}static void Op9DM0 (void){ AbsoluteIndexedX (WRITE); STA16 ();}static void Op99M1 (void){ AbsoluteIndexedY (WRITE); STA8 ();}static void Op99M0 (void){ AbsoluteIndexedY (WRITE); STA16 ();}static void Op8FM1 (void){ AbsoluteLong (WRITE); STA8 ();}static void Op8FM0 (void){ AbsoluteLong (WRITE); STA16 ();}static void Op9FM1 (void){ AbsoluteLongIndexedX (WRITE); STA8 ();}static void Op9FM0 (void){ AbsoluteLongIndexedX (WRITE); STA16 ();}static void Op83M1 (void){ StackRelative (WRITE); STA8 ();}static void Op83M0 (void){ StackRelative (WRITE); STA16 ();}static void Op93M1 (void){ StackRelativeIndirectIndexed (WRITE); STA8 ();}static void Op93M0 (void){ StackRelativeIndirectIndexed (WRITE); STA16 ();}/**********************************************************************************************//* STX *************************************************************************************** */static void Op86X1 (void){ Direct (WRITE); STX8 ();}static void Op86X0 (void){ Direct (WRITE); STX16 ();}static void Op96X1 (void){ DirectIndexedY (WRITE);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -