C# Класс NesHd.Core.CPU.Cpu

The 6502
Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
CycleCounter int
CyclesPerScanline int
Flag_B bool
Flag_C bool
Flag_D bool
Flag_I bool
Flag_N bool
Flag_V bool
Flag_Z bool
IRQNextTime bool
OpCode byte
PrevPc ushort
REG_A byte
REG_PC ushort
REG_S byte
REG_X byte
REG_Y byte

Открытые методы

Метод Описание
Cpu ( System.Memory memory, TvFormat tvFormat, NesEngine engine ) : System

The 6502

Push16 ( ushort data ) : void
PushStatus ( ) : void
Reset ( ) : void
Run ( ) : void

Run the cpu looping

SetTvFormat ( TvFormat format ) : void
SoftReset ( ) : void
StatusRegister ( ) : byte
TogglePause ( ) : void

Pause the cpu

Приватные методы

Метод Описание
AAC ( byte M, int count, ushort bytes ) : void
AAX ( byte M ) : byte
ADC ( byte M, int count, ushort bytes ) : void
AND ( byte M, int count, ushort bytes ) : void
ARR ( byte M ) : void
ASL ( byte M ) : byte
ASR ( byte M ) : void
ATX ( byte M ) : void
AXA ( byte M ) : byte
AXS ( byte M ) : void
Absolute ( byte A, byte B ) : byte
AbsoluteWrite ( byte A, byte B, byte data ) : byte
AbsoluteX ( byte A, byte B, bool CheckPage ) : byte
AbsoluteXWrite ( byte A, byte B, byte data ) : byte
AbsoluteY ( byte A, byte B, bool CheckPage ) : byte
AbsoluteYWrite ( byte A, byte B, byte data ) : byte
BCC ( byte arg1 ) : void
BCS ( byte arg1 ) : void
BEQ ( byte arg1 ) : void
BIT ( byte M, int count, ushort bytes ) : void
BMI ( byte arg1 ) : void
BNE ( byte arg1 ) : void
BPL ( byte arg1 ) : void
BRK ( ) : void
BVC ( byte arg1 ) : void
BVS ( byte arg1 ) : void
CLC ( ) : void
CLD ( ) : void
CLI ( ) : void
CLV ( ) : void
CMP ( byte M, int count, ushort bytes ) : void
CPX ( byte M, int count, ushort bytes ) : void
CPY ( byte M, int count, ushort bytes ) : void
DCP ( byte M, int count, ushort bytes ) : void
DEC ( byte M ) : byte
DEX ( ) : void
DEY ( ) : void
DOP ( int count, ushort bytes ) : void
EOR ( byte M, int count, ushort bytes ) : void
INC ( byte M ) : byte
INX ( ) : void
INY ( ) : void
IRQ ( ) : void
ISC ( byte M, int count, ushort bytes ) : void
IndirectX ( byte A ) : byte
IndirectXWrite ( byte A, byte data ) : byte
IndirectY ( byte A, bool CheckPage ) : byte
IndirectYWrite ( byte A, byte data ) : byte
InitializeCPU ( TvFormat FORMAT ) : void

Initialize and set the timing of the cpu

JSR ( byte arg1, byte arg2 ) : void
KIL ( ) : void
LAR ( byte M, int count, ushort bytes ) : void
LAX ( byte M, int count, ushort bytes ) : void
LDA ( ) : void
LDX ( ) : void
LDY ( ) : void
LSR ( byte M ) : byte
MakeAddress ( byte c, byte d ) : ushort

get two bytes into a correct address

NOP ( ) : void
ORA ( byte M, int count, ushort bytes ) : void
PHA ( ) : void
PHP ( ) : void
PLA ( ) : void
PLP ( ) : void
Pull16 ( ) : ushort
Pull8 ( ) : byte
PullStatus ( ) : void
Push8 ( byte data ) : void
RLA ( byte M, int count, ushort bytes ) : void
ROL ( byte M ) : byte
ROR ( byte M ) : byte
RRA ( byte M, int count, ushort bytes ) : void
RTI ( ) : void
RTS ( ) : void
SBC ( byte M, int count, ushort bytes ) : void
SEC ( ) : void
SED ( ) : void
SEI ( ) : void
SLO ( byte M, int count, ushort bytes ) : void
SRE ( byte M, int count, ushort bytes ) : void
SXA ( byte M ) : byte
SYA ( byte M ) : byte
TAX ( ) : void
TAY ( ) : void
TOP ( int count, ushort bytes ) : void
TSX ( ) : void
TXA ( ) : void
TXS ( ) : void
TYA ( ) : void
XAA ( int count, ushort bytes ) : void
XAS ( byte M, byte arg1 ) : byte
ZeroPage ( ushort A ) : byte
ZeroPageWrite ( ushort A, byte data ) : byte
ZeroPageX ( ushort A ) : byte
ZeroPageXWrite ( ushort A, byte data ) : byte
ZeroPageY ( ushort A ) : byte
ZeroPageYWrite ( ushort A, byte data ) : byte

Описание методов

Cpu() публичный Метод

The 6502
public Cpu ( System.Memory memory, TvFormat tvFormat, NesEngine engine ) : System
memory System.Memory The memory
tvFormat TvFormat The TV format
engine NesEngine
Результат System

Push16() публичный Метод

public Push16 ( ushort data ) : void
data ushort
Результат void

PushStatus() публичный Метод

public PushStatus ( ) : void
Результат void

Reset() публичный Метод

public Reset ( ) : void
Результат void

Run() публичный Метод

Run the cpu looping
public Run ( ) : void
Результат void

SetTvFormat() публичный Метод

public SetTvFormat ( TvFormat format ) : void
format TvFormat
Результат void

SoftReset() публичный Метод

public SoftReset ( ) : void
Результат void

StatusRegister() публичный Метод

public StatusRegister ( ) : byte
Результат byte

TogglePause() публичный Метод

Pause the cpu
public TogglePause ( ) : void
Результат void

Описание свойств

CycleCounter публичное свойство

public int CycleCounter
Результат int

CyclesPerScanline публичное свойство

public int CyclesPerScanline
Результат int

Flag_B публичное свойство

public bool Flag_B
Результат bool

Flag_C публичное свойство

public bool Flag_C
Результат bool

Flag_D публичное свойство

public bool Flag_D
Результат bool

Flag_I публичное свойство

public bool Flag_I
Результат bool

Flag_N публичное свойство

public bool Flag_N
Результат bool

Flag_V публичное свойство

public bool Flag_V
Результат bool

Flag_Z публичное свойство

public bool Flag_Z
Результат bool

IRQNextTime публичное свойство

public bool IRQNextTime
Результат bool

OpCode публичное свойство

public byte OpCode
Результат byte

PrevPc публичное свойство

public ushort PrevPc
Результат ushort

REG_A публичное свойство

public byte REG_A
Результат byte

REG_PC публичное свойство

public ushort REG_PC
Результат ushort

REG_S публичное свойство

public byte REG_S
Результат byte

REG_X публичное свойство

public byte REG_X
Результат byte

REG_Y публичное свойство

public byte REG_Y
Результат byte