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