Interface BreakTable

All Known Implementing Classes:
BreakTableCallBack

public interface BreakTable
A collection of breakpoints for the emulator

A BreakTable keeps track of an arbitrary number of breakpoints for an emulator. Breakpoints are either associated with a particular user-defined pcode op, or with a specific machine address (as in a standard debugger). Through the BreakTable object, an emulator can invoke breakpoints through the two methods

  • doPcodeOpBreak()
  • doAddressBreak()
depending on the type of breakpoint they currently want to invoke
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Invoke any breakpoints associated with this machine address
    boolean
    Invoke any breakpoints associated with this particular pcodeop
    void
    Associate a particular emulator with breakpoints in this table
  • Method Details

    • setEmulate

      void setEmulate(Emulate emu)
      Associate a particular emulator with breakpoints in this table

      Breakpoints may need access to the context in which they are invoked. This routine provides the context for all breakpoints in the table.

      Parameters:
      emu - is the Emulate context
    • doPcodeOpBreak

      boolean doPcodeOpBreak(PcodeOpRaw curop)
      Invoke any breakpoints associated with this particular pcodeop

      Within the table, the first breakpoint which is designed to work with this particular kind of pcode operation is invoked. If there was a breakpoint and it was designed to replace the action of the pcode op, then true is returned.

      Parameters:
      curop - is the instance of a pcode op to test for breakpoints
      Returns:
      true if the action of the pcode op is performed by the breakpoint
    • doAddressBreak

      boolean doAddressBreak(Address addr)
      Invoke any breakpoints associated with this machine address

      Within the table, the first breakpoint which is designed to work with at this address is invoked. If there was a breakpoint, and if it was designed to replace the action of the machine instruction, then true is returned.

      Parameters:
      addr - is address to test for breakpoints
      Returns:
      true is the machine instruction has been replaced by a breakpoint