www.kxcad.net Home > Electronic Index > Altium(Protel) Index
Overview
INexusDriver's Methods
{Top Level}
Function GetNexusDevice : INexusDevice;
Function SetNexusDevice(ANexusDevice : INexusDevice) : LongBool;
Function Finalize : LongBool;
Function GetBitmapHandle : THandle;
Function SaveProcessorState : LongBool;
Function RestoreProcessorState : LongBool;
Procedure CreateCustomViewer;
Function GetCustomViewer : IInstrumentView;
Function Supports (Action : PChar) : LongBool;
Procedure ShowAboutDialog;
Function VendorToolsDescriptor : WideString;
Function VendorToolsPresent : LongBool;
Function VendorToolsUpToDate : LongBool;
{Processor Registers}
Function SetProcessorRegisterValue(RegisterIndex : Integer; Value : LongWord ) : LongBool;
Function GetProcessorRegisterValue(RegisterIndex : Integer ) : LongWord;
Function GetProcessorRegisterWidth(RegisterIndex Integer ) : LongWord;
Function GetProcessorRegisterName (RegisterIndex Integer ) : WideString;
Function GetProcessorRegisterShortName (RegisterIndex : Integer) : WideString;
Function GetProcessorRegisterCount : Integer;
Function GetRegisterIndex_PC : Integer;
Function GetRegisterIndex_SP : Integer;
{Software Breakpoints}
Function AddSoftBreakpoint(MemorySpace : Integer;
Address : LongWord) : LongWord;
Function RemoveSoftBreakpoint(MemorySpace : Integer;
Address : LongWord;
Replaced : LongWord): LongBool;
{Memory Spaces}
Function GetMemorySpaceWidth (MemorySpaceIndex : Integer) : LongWord;
Function GetMemorySpaceLength (MemorySpaceIndex : Integer) : LongWord;
Function GetMemorySpaceKind (MemorySpaceIndex : Integer) : TMemoryKind;
Function GetMemorySpaceBytesPerUnit (MemorySpaceIndex : Integer) : LongWord;
Function GetMemorySpaceName (MemorySpaceIndex : Integer) : WideString;
Function GetMemorySpaceShortName (MemorySpaceIndex : Integer) : WideString;
Function GetMemorySpaceCount : Integer'
Function GetMemorySpace_Program : Integer;
Function MemoryRead (MemorySpaceIndex : Integer;
Buffer : PMemoryArray;
Address : LongWord;
Length : Integer ) : LongBool;
Function MemoryWrite (MemorySpaceIndex : Integer;
Buffer : PMemoryArray;
Address : LongWord;
Length : Integer ) : LongBool;
Function RunDiagnostic : LongBool;
{Physical Device Functions}
Function ResetDevice : LongBool;
Function GetDeviceState : TDeviceState;
Function ProgramDevice(FileName : WideString): Integer;
Function ReadUserCode : LongWord;
{Process Flow Functions}
Function FlowStage_Build : IProcessFlow;
Function FlowStage_Download : IProcessFlow;
Function CoreGen_OutputExtension : WideString;
Example
Procedure ResetProcessor;
Var
NexusWorkBench : INexusWorkbench;
NexusDevice : INexusDevice;
DeviceLink : IDeviceLink;
Begin
NexusWorkBench := GetNexusWorkbench;
DeviceLink := NexusWorkBench.GetCurrentHardDevice;
NexusDevice := DeviceLink.GetNexusDevice;
NexusDevice.ResetDevice;
End;