Processor interface

Hierarchy

  • DAP
    • Processor

Implemented by

Index

Methods

connect

  • connect(): Promise<void>
  • Connect to target device

    Returns Promise<void>

    Promise

disconnect

  • disconnect(): Promise<void>
  • Disconnect from target device

    Returns Promise<void>

    Promise

execute

  • execute(address: number, code: Uint32Array, stackPointer: number, programCounter: number, linkRegister?: undefined | 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: undefined | 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

  • Get the state of the processor core

    Returns Promise<CoreState>

    Promise of CoreState

halt

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

    Parameters

    • Optional wait: undefined | false | true

      Wait until halted before returning

    • Optional timeout: undefined | 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

  • Read from a core register

    Parameters

    Returns Promise<number>

    Promise of value

readCoreRegisters

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

    Parameters

    • registers: CoreRegister[]

      The registers to read

    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

reconnect

  • reconnect(): Promise<void>
  • Reconnect to target device

    Returns Promise<void>

    Promise

reset

  • reset(): Promise<boolean>
  • Reset target device

    Returns Promise<boolean>

    Promise

resume

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

    Parameters

    • Optional wait: undefined | false | true

      Wait until resumed before returning

    • Optional timeout: undefined | 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