Pyromaniac PRM: Debugger (Supplement for Pyromaniac)

Pyromaniac PRM: Debugger (Supplement for Pyromaniac)

RISC OS PyromaniacDebugger (Supplement for Pyromaniac)

Introduction and overview

The Debugger module within RISC OS Pyromaniac uses the Capstone Engine to disassemble ARM code. The resulting output from the debugger is slightly different to that which with Classic Debugger module produced. The manner in which the disassembly is presented can be configured through the regular RISC OS Pyromaniac configuration settings, and system variables.

The RISC OS Pyromaniac version of the Debugger module also includes additional *Commands which were previously provided by extension commands.

System variables

Configures the operation of *MemoryI

The Debugger$Options variable is used to change the way in which the Debugger's *MemoryI command functions. It is defined as a space separated list of options, where the leading character defines the option to set. At the current time, only a single option is defined.

CEnables colouring of parts of the disassembly.


List claimants of software vectors
*Vector vector
<vector>- Which vector should be listed. May be supplied as a vector number or a vector name.

The *Vector command will list the software vectors which have been claimed. A vector number or name may be supplied to list only that vector. When no parameter is supplied, all vectors on the system will be listed.

*Vector 36
Vector 36 (SerialV):
INTERNAL : : riscos.swis.osserialop.vector_SerialV
List claimants of ticker events

The *Tickers command will list the current ticker claimants. Claimants registered with SWI OS_CallAfter and SWI OS_CallEvery will be listed, together with the internally registered ticker events.

&07001f14/&0700051c {DA 'Module area', module 'Freeway'} : 9 cs, every 10 cs
riscos.pymods.internet.RISCOSSockets.ticker(None) : 49 cs, every 50 cs
List statistics about ticker events

The *TickerStats command will show statistics about the Ticker system. If the statistics have been enabled, this will include call statistics over a period.

Ticker statistics:
Current tickers: 2
second : current = 1 last = 2
15second : current = 3 last = -
minute : current = 29 last = -
second : current = 2 last = 2
15second : current = 4 last = -
minute : current = 14 last = -
Max queue:
second : current = 2 last = 2
15second : current = 2 last = -
minute : current = 2 last = -
Calls to CallEvery:
second : current = - last = -
15second : current = - last = -
minute : current = 2 last = -
Calls to CallAfter:
second : current = - last = -