C# Class Emul8.Peripherals.CPU.TranslationCPU

Inheritance: IGPIOReceiver, IControllableCPU, IDisposable, IDisassemblable
Afficher le fichier Open project: emul8/emul8 Class Usage Examples

Protected Properties

Свойство Type Description
ClockSource Emul8.Time.BaseClockSource
InvalidInterruptNumberException Exception
machine Emul8.Core.Machine

Private Properties

Свойство Type Description
AdjustBlockSize void
Allocate System.IntPtr
BlitArray void
CheckCpuThreadId void
CheckHalted bool
CheckIfOnSynchronizedThread void
CpuLoop void
DeactivateHooks void
ExecuteHooks void
Free void
FreeState void
GetCpuIndex int
GetSymbolName string
HandleRamSetup void
HandleStepping void
IClockSource Emul8.Time.ClockEntry
IClockSource IEnumerable
IClockSource bool
Init void
InitDisas void
InitInterruptEvents void
InnerPause void
InvalidateTbInOtherCpus void
InvokeHalted void
InvokeInCpuThreadSafely void
IsBlockBeginEventEnabled uint
IsInstructionCountEnabled uint
IsIoAccessed int
LogAsCpu void
LogDisassembly void
ObtainPauseGuard CpuThreadPauseGuard
OnBlockBegin void
OnTranslationBlockFetch void
OnTranslationCacheSizeChange void
PrepareState void
ReactivateHooks void
ReadByteFromBus uint
ReadDoubleWordFromBus uint
ReadWordFromBus uint
Reallocate IntPtr
RebuildMemoryMappings void
RegisterMemoryChecked void
ReportAbort void
RestoreState void
SetMaximumBlockSize void
SetPCFromEntryPoint void
SubmitTranslationCacheSizeUpdate void
TouchHostBlock void
TrySetDisassembler bool
UpdateInstructionCounter void
UpdateTranslationCacheSize void
ValidateMemoryRangeAndThrow void
WriteByteToBus void
WriteDoubleWordToBus void
WriteWordToBus void

Méthodes publiques

Méthode Description
AddHook ( uint addr, Action hook ) : void
ClearHookAtBlockBegin ( ) : void
ClearPageAccessViaIo ( long address ) : void
ClearTranslationCache ( bool skipSync = false ) : void
DisassembleBlock ( uint addr, uint flags ) : string
Dispose ( ) : void
DisposeInner ( bool silent = false ) : void
EnterSingleStepModeSafely ( Emul8.Peripherals.CPU.HaltArguments args ) : void
GetRegisterUnsafe ( int register ) : uint
GetRegisters ( ) : int[]
GetRegistersValues ( ) : ].string[

Gets the registers values.

IClockSource ( System.Action action ) : void
IClockSource ( System.Action handler, Action visitor ) : void
IClockSource ( System.Action handler, ClockEntry>.Func visitor, Func factorIfNonExistant ) : void
IClockSource ( Emul8.Time.ClockEntry entry ) : void
IClockSource ( IEnumerable entries ) : void
InitFromElf ( ELF elf ) : void
InitFromUImage ( UImage uImage ) : void
IsSetEvent ( int number ) : bool
LogFunctionNames ( bool value ) : void
MapMemory ( IMappedSegment segment ) : void
MeasureExecutionRate ( ) : void
OnGPIO ( int number, bool value ) : void
Pause ( ) : void
RemoveAllHooks ( ) : void
RemoveHook ( uint addr, Action hook ) : void
RemoveHooksAt ( uint addr ) : void
Reset ( ) : void
Resume ( ) : void
SetHookAtBlockBegin ( uint>.Action hook ) : void
SetPageAccessViaIo ( long address ) : void
SetRegisterUnsafe ( int register, uint value ) : void
Start ( ) : void
StartGdbServer ( int port ) : void
Step ( int count = 1 ) : void
StopGdbServer ( ) : void
SymbolLookup ( uint addr ) : Symbol
TranslateAddress ( uint logicalAddress ) : uint
UnmapMemory ( Range range ) : void
UpdateContext ( ) : void

Méthodes protégées

Méthode Description
AfterLoad ( IntPtr statePtr ) : void
BeforeSave ( IntPtr statePtr ) : void
DecodeInterrupt ( int number ) : Interrupt
DoLookupSymbolInner ( uint offset ) : Symbol
ExtendWaitHandlers ( WaitHandle handle ) : void
InitializeRegisters ( ) : void
ResetInterruptEvent ( int number ) : void
TranslationCPU ( string cpuType, Emul8.Core.Machine machine, Endianess endianness ) : System

Private Methods

Méthode Description
AdjustBlockSize ( ) : void
Allocate ( int size ) : IntPtr
BlitArray ( IntPtr targetPointer, dynamic structures ) : void
CheckCpuThreadId ( ) : void
CheckHalted ( ) : bool
CheckIfOnSynchronizedThread ( ) : void
CpuLoop ( ) : void
DeactivateHooks ( uint address ) : void
ExecuteHooks ( uint address ) : void
Free ( IntPtr pointer ) : void
FreeState ( ) : void
GetCpuIndex ( ) : int
GetSymbolName ( uint offset ) : string
HandleRamSetup ( ) : void
HandleStepping ( bool force = false ) : void
IClockSource ( System.Action handler ) : Emul8.Time.ClockEntry
IClockSource ( ) : IEnumerable
IClockSource ( System.Action handler ) : bool
Init ( ) : void
InitDisas ( ) : void
InitInterruptEvents ( ) : void
InnerPause ( HaltArguments haltArgs ) : void
InvalidateTbInOtherCpus ( IntPtr start, IntPtr end ) : void
InvokeHalted ( HaltArguments arguments ) : void
InvokeInCpuThreadSafely ( Action a ) : void
IsBlockBeginEventEnabled ( ) : uint
IsInstructionCountEnabled ( ) : uint
IsIoAccessed ( uint address ) : int
LogAsCpu ( int level, string s ) : void
LogDisassembly ( uint pc, uint count, uint flags ) : void
ObtainPauseGuard ( bool forReading, long address ) : CpuThreadPauseGuard
OnBlockBegin ( uint address, uint size ) : void
OnTranslationBlockFetch ( uint offset ) : void
OnTranslationCacheSizeChange ( int realSize ) : void
PrepareState ( ) : void
ReactivateHooks ( ) : void
ReadByteFromBus ( uint offset ) : uint
ReadDoubleWordFromBus ( uint offset ) : uint
ReadWordFromBus ( uint offset ) : uint
Reallocate ( IntPtr oldPointer, int newSize ) : IntPtr
RebuildMemoryMappings ( ) : void
RegisterMemoryChecked ( long offset, long size ) : void
ReportAbort ( string message ) : void
RestoreState ( ) : void
SetMaximumBlockSize ( uint value, bool skipSync = false ) : void
SetPCFromEntryPoint ( uint entryPoint ) : void
SubmitTranslationCacheSizeUpdate ( ) : void
TouchHostBlock ( uint offset ) : void
TrySetDisassembler ( string type ) : bool
UpdateInstructionCounter ( int value ) : void
UpdateTranslationCacheSize ( int sizeAtThatTime ) : void
ValidateMemoryRangeAndThrow ( uint startAddress, uint uintSize ) : void
WriteByteToBus ( uint offset, uint value ) : void
WriteDoubleWordToBus ( uint offset, uint value ) : void
WriteWordToBus ( uint offset, uint value ) : void

Method Details

AddHook() public méthode

public AddHook ( uint addr, Action hook ) : void
addr uint
hook Action
Résultat void

AfterLoad() protected méthode

protected AfterLoad ( IntPtr statePtr ) : void
statePtr System.IntPtr
Résultat void

BeforeSave() protected méthode

protected BeforeSave ( IntPtr statePtr ) : void
statePtr System.IntPtr
Résultat void

ClearHookAtBlockBegin() public méthode

public ClearHookAtBlockBegin ( ) : void
Résultat void

ClearPageAccessViaIo() public méthode

public ClearPageAccessViaIo ( long address ) : void
address long
Résultat void

ClearTranslationCache() public méthode

public ClearTranslationCache ( bool skipSync = false ) : void
skipSync bool
Résultat void

DecodeInterrupt() protected abstract méthode

protected abstract DecodeInterrupt ( int number ) : Interrupt
number int
Résultat Interrupt

DisassembleBlock() public méthode

public DisassembleBlock ( uint addr, uint flags ) : string
addr uint
flags uint
Résultat string

Dispose() public méthode

public Dispose ( ) : void
Résultat void

DisposeInner() public méthode

public DisposeInner ( bool silent = false ) : void
silent bool
Résultat void

DoLookupSymbolInner() protected méthode

protected DoLookupSymbolInner ( uint offset ) : Symbol
offset uint
Résultat Symbol

EnterSingleStepModeSafely() public méthode

public EnterSingleStepModeSafely ( Emul8.Peripherals.CPU.HaltArguments args ) : void
args Emul8.Peripherals.CPU.HaltArguments
Résultat void

ExtendWaitHandlers() protected méthode

protected ExtendWaitHandlers ( WaitHandle handle ) : void
handle System.Threading.WaitHandle
Résultat void

GetRegisterUnsafe() public abstract méthode

public abstract GetRegisterUnsafe ( int register ) : uint
register int
Résultat uint

GetRegisters() public abstract méthode

public abstract GetRegisters ( ) : int[]
Résultat int[]

GetRegistersValues() public méthode

Gets the registers values.
public GetRegistersValues ( ) : ].string[
Résultat ].string[

IClockSource() public méthode

public IClockSource ( System.Action action ) : void
action System.Action
Résultat void

IClockSource() public méthode

public IClockSource ( System.Action handler, Action visitor ) : void
handler System.Action
visitor Action
Résultat void

IClockSource() public méthode

public IClockSource ( System.Action handler, ClockEntry>.Func visitor, Func factorIfNonExistant ) : void
handler System.Action
visitor ClockEntry>.Func
factorIfNonExistant Func
Résultat void

IClockSource() public méthode

public IClockSource ( Emul8.Time.ClockEntry entry ) : void
entry Emul8.Time.ClockEntry
Résultat void

IClockSource() public méthode

public IClockSource ( IEnumerable entries ) : void
entries IEnumerable
Résultat void

InitFromElf() public méthode

public InitFromElf ( ELF elf ) : void
elf ELF
Résultat void

InitFromUImage() public méthode

public InitFromUImage ( UImage uImage ) : void
uImage UImage
Résultat void

InitializeRegisters() protected méthode

protected InitializeRegisters ( ) : void
Résultat void

IsSetEvent() public méthode

public IsSetEvent ( int number ) : bool
number int
Résultat bool

LogFunctionNames() public méthode

public LogFunctionNames ( bool value ) : void
value bool
Résultat void

MapMemory() public méthode

public MapMemory ( IMappedSegment segment ) : void
segment IMappedSegment
Résultat void

MeasureExecutionRate() public méthode

public MeasureExecutionRate ( ) : void
Résultat void

OnGPIO() public méthode

public OnGPIO ( int number, bool value ) : void
number int
value bool
Résultat void

Pause() public méthode

public Pause ( ) : void
Résultat void

RemoveAllHooks() public méthode

public RemoveAllHooks ( ) : void
Résultat void

RemoveHook() public méthode

public RemoveHook ( uint addr, Action hook ) : void
addr uint
hook Action
Résultat void

RemoveHooksAt() public méthode

public RemoveHooksAt ( uint addr ) : void
addr uint
Résultat void

Reset() public méthode

public Reset ( ) : void
Résultat void

ResetInterruptEvent() protected méthode

protected ResetInterruptEvent ( int number ) : void
number int
Résultat void

Resume() public méthode

public Resume ( ) : void
Résultat void

SetHookAtBlockBegin() public méthode

public SetHookAtBlockBegin ( uint>.Action hook ) : void
hook uint>.Action
Résultat void

SetPageAccessViaIo() public méthode

public SetPageAccessViaIo ( long address ) : void
address long
Résultat void

SetRegisterUnsafe() public abstract méthode

public abstract SetRegisterUnsafe ( int register, uint value ) : void
register int
value uint
Résultat void

Start() public méthode

public Start ( ) : void
Résultat void

StartGdbServer() public méthode

public StartGdbServer ( int port ) : void
port int
Résultat void

Step() public méthode

public Step ( int count = 1 ) : void
count int
Résultat void

StopGdbServer() public méthode

public StopGdbServer ( ) : void
Résultat void

SymbolLookup() public méthode

public SymbolLookup ( uint addr ) : Symbol
addr uint
Résultat Symbol

TranslateAddress() public méthode

public TranslateAddress ( uint logicalAddress ) : uint
logicalAddress uint
Résultat uint

TranslationCPU() protected méthode

protected TranslationCPU ( string cpuType, Emul8.Core.Machine machine, Endianess endianness ) : System
cpuType string
machine Emul8.Core.Machine
endianness Endianess
Résultat System

UnmapMemory() public méthode

public UnmapMemory ( Range range ) : void
range Range
Résultat void

UpdateContext() public méthode

public UpdateContext ( ) : void
Résultat void

Property Details

ClockSource protected_oe property

protected BaseClockSource,Emul8.Time ClockSource
Résultat Emul8.Time.BaseClockSource

InvalidInterruptNumberException protected_oe static_oe property

protected static Exception InvalidInterruptNumberException
Résultat Exception

machine protected_oe property

protected Machine,Emul8.Core machine
Résultat Emul8.Core.Machine