Options
All
  • Public
  • Public/Protected
  • All
Menu

Processor interface

Hierarchy

Implemented by

Index

Methods

connect

  • connect(): Promise<void>

disconnect

  • disconnect(): Promise<void>

execute

  • execute(address: number, code: Uint32Array, stackPointer: number, programCounter: number, linkRegister?: number, ...registers: number[]): Promise<void>
  • Exucute code at a specified memory address

    Parameters

    • address: number

      The address to put the code

    • code: Uint32Array

      The code to use

    • stackPointer: number

      The stack pointer to use

    • programCounter: number

      The program counter to use

    • Optional linkRegister: number

      The link register to use (defaults to address + 1)

    • Rest ...registers: number[]

      Values to add to the general purpose registers, R0, R1, R2, etc.

    Returns Promise<void>

getState

halt

  • halt(wait?: false | true, timeout?: number): Promise<void>
  • Halt the target

    Parameters

    • Optional wait: false | true

      Wait until halted before returning

    • Optional timeout: number

      Milliseconds to wait before aborting wait

    Returns Promise<void>

    Promise

isHalted

  • isHalted(): Promise<boolean>
  • Whether the target is halted

    Returns Promise<boolean>

    Promise of halted state

readAP

  • readAP(register: number): Promise<number>
  • Read from an access port register

    Parameters

    • register: number

      ID of register to read

    Returns Promise<number>

    Promise of register value

readBlock

  • readBlock(register: number, count: number): Promise<Uint32Array>
  • Read a block of 32-bit words from a memory access port register

    Parameters

    • register: number

      ID of register to read from

    • count: number

      The count of values to read

    Returns Promise<Uint32Array>

    Promise of register data

readCoreRegister

readCoreRegisters

  • readCoreRegisters(registers: CoreRegister[]): Promise<number[]>
  • Read an array of core registers

    Parameters

    Returns Promise<number[]>

    Promise of register values in an array

readDP

  • readDP(register: number): Promise<number>
  • Read from a debug port register

    Parameters

    • register: number

      ID of register to read

    Returns Promise<number>

    Promise of register value

readMem16

  • readMem16(register: number): Promise<number>
  • Read a 16-bit word from a memory access port register

    Parameters

    • register: number

      ID of register to read

    Returns Promise<number>

    Promise of register data

readMem32

  • readMem32(register: number): Promise<number>
  • Read a 32-bit word from a memory access port register

    Parameters

    • register: number

      ID of register to read

    Returns Promise<number>

    Promise of register data

readMem8

  • readMem8(register: number): Promise<number>
  • Read an 8-bit word from a memory access port register

    Parameters

    • register: number

      ID of register to read

    Returns Promise<number>

    Promise of register data

reconnect

  • reconnect(): Promise<void>

reset

  • reset(): Promise<boolean>

resume

  • resume(wait?: false | true, timeout?: number): Promise<void>
  • Resume a target

    Parameters

    • Optional wait: false | true

      Wait until resumed before returning

    • Optional timeout: number

      Milliseconds to wait before aborting wait

    Returns Promise<void>

    Promise

writeAP

  • writeAP(register: number, value: number): Promise<void>
  • Write to an access port register

    Parameters

    • register: number

      ID of register to write

    • value: number

      Value to write

    Returns Promise<void>

    Promise

writeBlock

  • writeBlock(register: number, values: Uint32Array): Promise<void>
  • Write a block of 32-bit words to a memory access port register

    Parameters

    • register: number

      ID of register to write to

    • values: Uint32Array

      The values to write

    Returns Promise<void>

    Promise

writeCoreRegister

  • writeCoreRegister(register: CoreRegister, value: number): Promise<void>
  • Write to a core register

    Parameters

    • register: CoreRegister

      The register to write to

    • value: number

      The value to write

    Returns Promise<void>

    Promise

writeDP

  • writeDP(register: number, value: number): Promise<void>
  • Write to a debug port register

    Parameters

    • register: number

      ID of register to write

    • value: number

      Value to write

    Returns Promise<void>

    Promise

writeMem16

  • writeMem16(register: number, value: number): Promise<void>
  • Write a 16-bit word to a memory access port register

    Parameters

    • register: number

      ID of register to write to

    • value: number

      The value to write

    Returns Promise<void>

    Promise

writeMem32

  • writeMem32(register: number, value: number): Promise<void>
  • Write a 32-bit word to a memory access port register

    Parameters

    • register: number

      ID of register to write to

    • value: number

      The value to write

    Returns Promise<void>

    Promise

writeMem8

  • writeMem8(register: number, value: number): Promise<void>
  • Write an 8-bit word to a memory access port register

    Parameters

    • register: number

      ID of register to write to

    • value: number

      The value to write

    Returns Promise<void>

    Promise