HPlogo MPE/iX Quick Reference Guide > Chapter 6 System Debug

Debugging your system

MPE documents

Complete PDF
Table of Contents
Index

  • Debug

  • Dump Analysis Tool (DAT)

  • Standalone Analysis Tool (SAT)

This chapter presents short descriptions of System Debug commands, window commands, standard functions, and environment variables. Refer to the System Debug Reference Manual for additional details on System Debug commands and functions described in this chapter.

System Debug Command Descriptions


This section presents short descriptions of System Debug commands. Commands that are inappropriate in either DAT or Debug are identified as "DAT only" or "Debug only". In addition, commands that require privileged mode (PM) capability are identified.

:


The CI command - Access to the MPE/iX command interpreter (CI).


  :[ command ] 

=


The calculator command. Calculates the value of an expression and displays the result in the specified base.

  = expression [base]  

ABORT


Aborts/terminates the current System Debug process.

  ABORT 

ALIAS


Defines an alias (alternative) name for a command or macro.

  ALIAS name command

ALIASD[EL]


Deletes the specified alias(es).

  ALIASD[EL] pattern [group] 

ALIASINIT


Restores the predefined aliases, in case they have been deleted.

  ALIASINIT 

ALIASL[IST]


Lists the currently defined aliases.

  ALIAS[LIST] [pattern] [group]

B (break)


Debug only. Privileged Mode: BA, BAX, BS.

Break. Sets a breakpoint.

  B   logaddr [:pin|@] [count] [loud] [cmdlist]    Program
  BG  logaddr [:pin|@] [count] [loud] [cmdlist]    Group library
  BP  logaddr [:pin|@] [count] [loud] [cmdlist]    Account library
  BLG logaddr [:pin|@] [count] [loud] [cmdlist]    Logon group lib
  BLP logaddr [:pin|@] [count] [loud] [cmdlist]    Logon account lib
  BS  logaddr [:pin|@] [count] [loud] [cmdlist]    System library
  
  BU  fname logaddr [:pin|@][count][loud][cmdlist] User library
  
  BV  virtaddr [:pin|@] [count] [loud] [cmdlist]   Virtual address
  
  BA  cmabsaddr [:pin|@] [count] [loud] [cmdlist]  Absolute CST
  BAX cmabsaddr [:pin|@] [count] [loud] [cmdlist]  Absolute CSTX

BD


Debug only.

Breakpoint delete. Deletes a breakpoint entry specified by index number.

  BD [number | @ [:pin | @]] 

BL


Debug only.

Breakpoint list. Lists breakpoint entries, specified by index number.

  BL [number | @ [:pin | @]] 

CLOSEDUMP


DAT only.

Closes a dump file.

  CLOSEDUMP 

CM


Enters compatibility mode (cmdat/cmdebug). See the NM command.

  CM 

CMDL[IST]


Command list. Displays a list of the valid commands for System Debug.

  CMDL[IST] [pattern] [group] [options] 

CMG


Privileged Mode

Displays values in the CMGLOBALS record for a process.

  CMG [pin]  

C[ONTINUE]


Continues/resumes execution of user program.

  C[ONTINUE] [ IGNORE | NOIGNORE ]

D (display)


Privileged Mode: DA, DCS, DCA, DZ, DSEC.

Displays the contents of the specified address.

  DA   offset   [count] [base] [recw] [bytew]      ABS relative
  DD   dst.off  [count] [base] [recw] [bytew]      CM data segment
  DDB  offset   [count] [base] [recw] [bytew]      DB relative
  DS   offset   [count] [base] [recw] [bytew]      S relative
  DQ   offset   [count] [base] [recw] [bytew]      Q relative
  
  DC   logaddr  [count] [base] [recw] [bytew]      Program file
  DCG  logaddr  [count] [base] [recw] [bytew]      Group library
  DCP  logaddr  [count] [base] [recw] [bytew]      Account library
  DCLG logaddr  [count] [base] [recw] [bytew]      Logon group lib
  DCLP logaddr  [count] [base] [recw] [bytew]      Logon account lib
  DCS  logaddr  [count] [base] [recw] [bytew]      System library
  DCU  fname logaddr [count] [base] [recw] [bytew] User library
  
  DCA  cmabsaddr [count] [base] [recw] [bytew]     Absolute CST
  DCAX cmabsaddr [count] [base] [recw] [bytew]     Absolute CSTX
  
  DV   virtaddr  [count] [base] [recw] [bytew]     Virtual
  DZ   realaddr  [count] [base] [recw] [bytew]     Real memory
  
  DSEC ldev.off  [count] [base] [recw] [bytew]     Secondary store

DATAB


Debug only. Privileged Mode.

Sets a data breakpoint.

  DATAB virtaddr [:pin|@] [byte_count] [count] [loudness] [cmdlist]

DATABD


Debug only. Privileged Mode.

Deletes a data breakpoint entry specified by index number.

  DATABD [number | @ [:pin|@] ] 

DATABL


Debug only. Privileged Mode.

Lists data breakpoint entries, specified by index number.

  DATABL [number | @ [:pin|@] ] 

DEBUG


Debug only. Privileged Mode.

DEBUG command access to DEBUG XL.

  DEBUG 

DELETExxx


Delete various items. These are predefined aliases for other commands.

  DELETEB        alias for  BD
  DELETEALIAS    alias for  ALIASD
  DELETEERR      alias for  ERRD
  DELETEMAC      alias for  MACD
  DELETEVAR      alias for  VARD

DEMO


Privileged Mode.

Adds/deletes/lists terminals used for demonstrating System Debug.

  DEMO
  DEMO LIST
  DEMO ADD ldevs
  DEMO DELETE ldevs

DIS


Disassembles a single NM or CM assembly instruction, based on the current mode.

  DIS nmword [virtaddr]
  DIS cmword1 [cmword2] [cmlogaddr]

DO


Reexecutes a command from the command stack.

  DO [cmd_string]
  DO [history_index]

DPIB


DAT Privileged Mode.

Display data from the process identification block (PIB) for a process.

  DPIB [pin]  

DPTREE


DAT Privileged Mode.

Prints out the process tree starting at the given PIN.

  DPTREE [pin] 

DR


Displays contents of the CM or NM registers.

  DR [cm_register] [base]
  DR [nm_register] [base]

DUMPINFO


DAT Privileged Mode.

Displays dump file information.

  DUMPINFO [options] 

ENV


Assigns a new value to one of the predefined environment variables.

  ENV var_name [=] var_value

ENVL[IST]


Displays the current values for environmental variables.

  ENVL[IST] [pattern] [group] [options] 

ERR


Pushes a user error message onto the error command stack.

  ERR errmsg 

ERRD[EL]


Deletes all errors on the error stack (reset the stack).

  ERRD[EL]

ERRL[IST]


Error list. Lists the most recent error(s) on the error stack.

  ERRL[IST] [ALL]

E[XIT]


Exits/resumes execution of user program.

  E[XIT]      Same as CONTINUE (in Debug)
  E[XIT]      Exit program       (in DAT)  

F (format)


Formats a specified data structure.

  FT path ft_options
  
  FV virtaddr path fv_options

F (freeze)


Debug only. Privileged Mode.

Freezes a code segment, data segment, or virtual address (range) in memory.

  FC   logaddr [bytelength]         Program file
  FCG  logaddr [bytelength]         Group library
  FCP  logaddr [bytelength]         Account library
  FCLG logaddr [bytelength]         Logon group library
  FCLP logaddr [bytelength]         Logon account library
  FCS  logaddr [bytelength]         System library
  FCU  fname logaddr [bytelength]   User library
  
  FCA  cmabsaddr                    CM absolute CST
  FCAX cmabsaddr                    CM absolute CST
  
  FDA  dstoff                       CM data segment

  FVA  virtaddr  [bytelength]       Virtual address

FINDPROC


Debug Privileged Mode.

Dynamically loads a specified NM procedure from any NM library.

  FINDPROC procedurename library_file [[NO]IGNORECASE]

FOREACH


Each time a FOREACH command is executed, name is set to the next expression value in value_list prior to the execution of cmdlist. Execution ends when there are no more expression values in the value_list.

  FOREACH name value_list  command
  
  FOREACH name value_list { cmdlist }

FPMAP


Reinitializes CM FPMAP symbolic procedure name access.

  FPMAP

FUNCL[IST]


Function list. Displays information about the predefined functions.

  FUNCL[IST] [pattern]  [group]  [options]

GETDUMP


DAT Privileged Mode.

Reads in a dump tape and creates a dump file.

  GETDUMP file [ ldevlist ]
  GETDUMP file [ DIR ]

H[ELP]


Displays online help messages for System Debug.

  H[ELP] [topic] [options]

HIST[ORY]


Displays the history command stack.

  HIST[ORY] option 

IF


If condition evaluates to TRUE, then execute all commands in cmdlist, else execute all commands in cmdlist2.

  IF condition THEN command
  
  IF condition THEN { cmdlist }
  
  IF condition THEN  command1  ELSE  command2
  
  IF condition THEN { cmdlist } ELSE command2
  
  IF condition THEN  command1  ELSE { cmdlist2 }
  
  IF condition THEN { cmdlist } ELSE { cmdlist2 }

IGNORE


Protects the next command (list) from error bailout.

  IGNORE option

INITxx


Privileged Mode.

Initialize registers from a specified location.

  INITNM virtaddr [ ISM | PIMREAL | PIMVIRTUAL ]
  INITCM virtaddr [ ISM | PIMREAL | PIMVIRTUAL ]
  INITNM TCB
  INITCM TCB | CMG | REGS

KILL


Debug only

Privileged Mode

Issues a request to process management to kill the specified process.

  KILL pin

LEV


Sets the current environment to the specified stack level in the stack markers.

  LEV [number]
  LEV [number] [interrupt_level] 

LIST


Controls the recording of input and output to a list file.

  LIST [ filename | ON | OFF | CLOSE ]

LISTREDO


Displays the history command stack.

  LISTREDO               alias for HIST[ORY]

LOADINFO


Debug only

Lists information about the currently loaded program and libraries.

  LOADINFO 

LOADPROC


Debug only.

Dynamically loads a specified CM procedure from a logically specified CM library selector.

  LOADPROC procedurename libselect

LOC


Defines a local variable within a macro body.

  LOC  var_name [:var_type] [=] var_value

LOCL[IST]


Lists the local variables that are defined with a macro.

  LOCL[IST] [pattern] 

LOG


Controls the recording of user input to the logfile.

  LOG [filename | ON | OFF | CLOSE ]

M (modify)


Debug only. Privileged Mode: MA, MD, MCS, MZ, MSEC.

Modifies the contents of the specified number of words at the specified address.

  MA   offset   [count] [base] [newvalue(s)]        ABS relative
  MD   dst.off  [count] [base] [newvalue(s)]        Data segment
  MDB  offset   [count] [base] [newvalue(s)]        DB relative
  MS   offset   [count] [base] [newvalue(s)]        S relative
  MQ   offset   [count] [base] [newvalue(s)]        Q relative
  
  MC   logaddr  [count] [base] [newvalue(s)]        Program file
  MCG  logaddr  [count] [base] [newvalue(s)]        Group library
  MCP  logaddr  [count] [base] [newvalue(s)]        Account library
  MCLG logaddr  [count] [base] [newvalue(s)]        Logon group
  MCLP logaddr  [count] [base] [newvalue(s)]        Logon account
  MCS  logaddr  [count] [base] [newvalue(s)]        System library
  MCU  fname logaddr   [count] [base] [newvalue(s)] User library
  MCA  cmabsaddr  [count] [base] [newvalue(s)]      Absolute CST
  MCAX cmabsaddr  [count] [base] [newvalue(s)]      Absolute CSTX
  
  MV   virtaddr   [count] [base] [newvalue(s)]      Virtual
  MZ   realaddr   [count] [base] [newvalue(s)]      Real memory
  
  MSEC ldev.off   [count] [base] [newvalue(s)]      Secondary storem

MAC[RO]


Defines a macro.

  MAC[RO] name [(parameters)] [options] {body}

MACD[EL]


Macro delete. Deletes the specified macro definition(s).

  MACD[EL] pattern 

MACECHO


Controls the "echoing" of each macro command line prior to its execution.

  MACECHO pattern [level]

MACL[IST]


Macro list. Lists the specified macro definition(s).

  MACL[IST] [pattern] [options] 

MACREF


Resets the reference count to zero for the specified macro(s).

  MACREF pattern

MACTRACE


Controls the "tracing" of macro execution.

  MACTRACE pattern [level] 

MAP


Opens a file and maps it into a usable virtual address space.

  MAP filename [option] 

MAPL[IST]


Lists the specified file(s) that have been opened with the MAP command.

  MAPL[IST] [pattern] 

MODD


DAT Privileged Mode.

Modification delete. Deletes a modification entry specified by index number.

  MODD [index | @]

MODL


DAT only.

Modification list. Lists current dump modifications.

  MODL [index | @]

MPEXL


Privileged Mode.

Displays information about the files which were used to build the operating system SOM portion of the NL.Pub.SYS for MPE/iX.

  MPEXL [fileset] [optionstring] [outputfile]

MPSW


Privileged Mode.

Modifies the NM processor status word (PSW). Exercise a bit of care with this command.

  MPSW bit_string

MR


Modifies the contents of the specified CM or NM register.

  MR cm_register [newvalue]
  MR nm_register [newvalue] 

NM


Enters native mode (nmdat / nmdebug). See the CM command.

  NM 

OPENDUMP


DAT Privileged Mode.

Opens a dump file.

  OPENDUMP file

PAUSE


Pauses (puts to sleep) a process for the specified number of seconds.

  PAUSE n

PIN


Privileged Mode.

Switches the process-specific pointers and registers to allow the examination of process related information.

  PIN [pin] [ANYSTATE] 

PROCLIST


Lists the specified NM symbols in the specified NM executable library.

  PROCLIST [pattern] [lstfile] [lookup_id] [detail] [outputfile]

PURGEDUMP


DAT Privileged Mode.

Purges a dump file.

  PURGEDUMP file

REDO


Reexecutes a command from the history command stack after optionally editing the command.

  REDO [cmd_string]
  REDO [history_index]

REGLIST


Lists the registers into a file in USE file format.

  REGLIST [filename] 

RESTORE


Restores macros or variables from a file that was previously created by the STORE command.

  RESTORE MACROS    filename
  RESTORE VARIABLES filename

RET[URN]


Exits from a macro, optionally returning a specified value.

  RET[URN] [value] 

SET


Set new values for a select subset of all user configurable options.

  SET [ O[CT] | % | D[EC] | # | H[EX] | $ ] [ IN | OUT ]
  
  SET [ CRON | CROFF ]
  
  SET [ MOREON | MOREOFF ]
  
  SET [ DEF[AULT] ]

SETxxx


The SETxxx commands are predefined aliases for other commands.

  SETALIAS    alias for  ALIAS
  SETENV      alias for  ENV
  SETERR      alias for  ERR
  SETLOC      alias for  LOC
  SETMAC      alias for  MAC
  SETVAR      alias for  VAR

SHOWxxx


The SHOWxxx commands are predefined aliases for other commands.

  SHOWALIAS    alias for  ALIASL
  SHOWB        alias for  BL
  SHOWCMD      alias for  CMDL
  SHOWDATAB    alias for  DATABL
  SHOWENV      alias for  ENVL
  SHOWERR      alias for  ERRL
  SHOWFUNC     alias for  FUNCL
  SHOWLOC      alias for  LOCL
  SHOWMAC      alias for  MACL
  SHOWMAP      alias for  MAPL
  SHOWSET      alias for  SET
  SHOWSYM      alias for  SYML
  SHOWVAR      alias for  VARL

S, SS


Single steps.

  S[S]  [num_instrs] [ L[OUD] | Q[UIET] ]

STORE


Stores the currently defined macros or variables to a file.

  STORE MACROS    filename
  STORE VARIABLES filename

SYMCLOSE


Closes a symbolic data type file that was opened with the SYMOPEN command.

  SYMCLOSE symname

SYMF[ILES]


Lists all open symbolic data type files and their symbolic names.

  SYMF[ILES]

SYMINFO


Lists information/dump data for an opened symbolic data type file.

  SYMINFO [symname] [option] [offset] [length]

SYML[IST]


Lists information for the specified symbol name in an opened symbolic data type file.

  SYML[IST] [pattern] [symname] [option] 

SYMOPEN


Opens a symbolic data type file and sets up pointers to the symbolic debug records.

  SYMOPEN filename [symname] 

SYMPREP


Prepares a program file containing symbolic debug information to be used by the symbolic formatter/symbolic access facility. Files modified through the use of this command are referred to as symbolic data type files.

  SYMPREP filename

T (translate)


Privileged Mode: TCA, TCS.

Translates the specified CM address to a virtual address.

  TA   offset                   ABS - Bank0
  TD   dst.off                  Data segment
  TDB  offset                   DB relative
  TS   offset                   S relative
  TQ   offset                   Q relative
  
  TC   cmlogaddr                Program file
  TCG  cmlogaddr                Group library
  TCP  cmlogaddr                Account library
  TCLG cmlogaddr                Logon group library
  TCLP cmlogaddr                Logon account library
  TCS  cmlogaddr                System library
  
  TCA  cmabsaddr                Absolute CST
  TCAX cmabsaddr                Absolute CSTX

TERM


Debug only.

Controls the synchronization of several debug processes on a single terminal.

  TERM   [ LIST | NEXT ]

TR[ACE]


Displays a stack trace.

  TR[ACE] [level] [options] 

TRAP


Debug only.

Arms/disarms/lists various traps that are monitored by Debug.

  TRAP [LIST]
  TRAP [trap-name] [option] 

UF


Debug Privileged Mode.

Unfreezes a code segment, data segment, or virtual address (range) in memory.

  UFC   logaddr  [bytelength]          Program file
  UFCG  logaddr  [bytelength]          Group library
  UFCP  logaddr  [bytelength]          Account library
  UFCLG logaddr                        Logon group library
  UFCLP logaddr                        Logon account library
  UFCS  logaddr  [bytelength]          System library
  UFCU  fname logaddr [bytelength]     User library
  
  UFCA  cmabsaddr                      Absolute CST
  UFCAX cmabsaddr                      Absolute CSTX
  
  UFDA  dst.off                        CM data segment
  
  UFVA  virtaddr [bytelength]          Virtual address

UNMAP


Closes (unmaps) a file that was opened by the MAP command.

  UNMAP index 

UPD


Update the windows.

  UPD 

USE


System Debug commands can be executed from a file with the USE command.

  USE
  USE  [filename]  [count]
  USENEXT  count
  USE [CLOSE] [ALL | @] 

VAR


Defines a user-defined variable.

  VAR  var_name [:var_type] [=] var_value

VARD[EL]


Variable delete. Deletes the specified user-defined variable(s).

  VARD[EL]  pattern

VARL[IST]


Variable list. Lists the value(s) for the specified user-defined variable(s).

  VARL[IST]  [pattern] 

W (write)


Writes a list of values, with optional formatting, to output.

  W    valuelist
  WL   valuelist
  WP   valuelist
  
  WCOL column
  WPAGE

WHELP


Displays online help messages for the window commands.

  WHELP 

WHILE


While condition evaluates to TRUE, executes all commands in cmdlist.

  WHILE condition DO cmdlist 

XL


Utilizes symbol information in a local library/program file.

  XL localfile space_id [loaded-fname]

XLD


Closes files opened with the XL command.

  XLD  localfile

XLL


Lists all of the files that have been opened with the XL command.

  XLL

Window Commands


This section presents short descriptions of System Debug window commands.

RED


Redraws the entire screen display of windows.

  RED

UWm


Allocates a named user window at the specified address. The command name specifies which type of window to define. User windows are displayed within the group window.

  UWA   offset     [name]   Absolute memory relative (ABS)
  UWDB  offset     [name]   DB relative
  UWS   offset     [name]   S relative
  UWQ   offset     [name]   Q relative
  
  UWD   dst.off    [name]   Data segment and offset
  
  UWCA  cmabsaddr  [name]   Code (CST) segment and offset
  UWCAX cmabsaddr  [name]   Code (CSTX) segment and offset
  
  UWV   virtaddr   [name]   Virtual address
  UWZ   realaddr   [name]   Real address

WDEF


Window defaults. Resets the default window sizes.

  WDEF

WGRP


Changes to the specified group of user-defined windows.

  WGRP  [group_number]

WOFF


Windows OFF. Turns off the windows.

  WOFF

WON


Windows ON. Turns on the windows. If windows are already on, redraws them.

  WON

wB


Window back. Scrolls the specified window backwards.

  PB   [amount]                     Program, current mode
  CMPB [amount]                     CM program
  NMPB [amount]                     NM program

  QB   [amount]                     CM frame,  Q relative
  SB   [amount]                     CM stack,  S relative
  
  GB   [amount]                     Group window
  UB   [amount] [win_number]        User window
  
  VB   [amount] [win_number]        Virtual window
  ZB   [amount]                     Real memory window
  LB   [amount]                     LDEV window
  TXB  [amount] [win_number]        Text window

wC


Window current. Marks the specified window as the current window. Many user window (U), text window (TX), and virtual window (V) commands operate on the current window.

  UC  [win_number]
  VC  [win_number]
  TXC [win_number]

wD


Window disable.

  RD                        CM registers
  GRD                       NM general registers
  SRD                       NM special registers
  
  PD                        Program, current mode
  CMPD                      CM program
  NMPD                      NM program
  QD                        CM frame,  Q relative
  SD                        CM stack,  S relative
  
  GD                        Group window
  UD    [win_number]        User  window
  
  VD    [win_number]        Virtual window
  ZD                        Real memory window
  LD                        LDEV window
  TXD   [win_number]        Text window

wE


Window enable.

  RE                        CM registers
  GRE                       NM general registers
  SRE                       NM special registers
  
  PE                        Program, current mode
  CMPE                      CM program
  NMPE                      NM program
  QE                        CM Frame,  Q relative
  SE                        CM Stack,  S relative
  
  GE                        Group window
  
  UE    [win_number]        User window
  
  VE    [win_number]        Virtual window
  ZE                        Real memory window
  LE                        LDEV window
  TXE   [win_number]        Text window

wF


Window forward. Scrolls the specified window forward.

  PF   [amount]                     Program current mode
  CMPF [amount]                     CM program
  NMPF [amount]                     NM program
  
  QF   [amount]                     CM frame,  Q relative
  SF   [amount]                     CM stack,  S relative
  
  GF   [amount]                     Group window
  UF   [amount] [win_number]        User window
  
  VF   [amount] [win_number]        Virtual window
  ZF   [amount]                     Real memory window
  LF   [amount]                     LDEV window
  TXF  [amount] [win_number]        Text window

wH


Window home. Returns a window to its original location.

  RH                                 CM registers window
  GRH                                NM general registers window
  SRH                                NM special registers window
  
  PH                                 Program window, current mode
  CMPH                               CM program window
  NMPH                               NM program window
  QH                                 CM frame window - Q relative
  SH                                 CM stack window - S relative
  
  GH                                 Group window
  UH  [win_number]                   User window
  
  VH  [virtaddr]   [win_number]      Virtual window
  ZH  [realaddr]                     Real memory window
  LH  [ldev.off]                     LDEV window
  TXH [win_number]                   Text window

wI


Window information. Prints information about the indicated windows. This command is defined for the virtual (V) and text (TX) windows.

  VI  [win_number]
  TXI [win_number]

wJ


Window jump. Jumps window to the specified address.

  PJ     [logaddr]                    Program file
  PJG    [logaddr]                    Group library
  PJP    [logaddr]                    Account library
  PJLG   [logaddr]                    Logon group library
  PJLP   [logaddr]                    Logon account library
  PJS    [logaddr]                    System library
  PJU    [fname logaddr]              User library
  PJV    [virtaddr]                   Any virtual address
  PJA    [absaddr]                    Absolute CST
  PJAX   [absaddr]                    Absolute CSTX
  
  CMPJ   [logaddr]                    Program file
  CMPJG  [logaddr]                    Group library
  CMPJP  [logaddr]                    Account library
  CMPJLG [logaddr]                    Logon group library
  CMPJLP [logaddr]                    Logon account library
  CMPJS  [logaddr]                    System library
  CMPJA  [absaddr]                    Absolute CST
  CMPJAX [absaddr]                    Absolute CSTX
  
  NMPJ   [logaddr]                    Program file
  NMPJG  [logaddr]                    Group library
  NMPJP  [logaddr]                    Account library
  NMPJLG [logaddr]                    Logon group library
  NMPJLP [logaddr]                    Logon account library
  NMPJS  [logaddr]                    System library
  NMPJU  [fname logaddr]              User library
  
  QJ     [dst.off]                    CM Frame,  Q relative
  SJ     [dst.off]                    CM Stack,  S relative
  
  VJ     [virtaddr]  [win_number]     Virtual window
  ZJ     [realaddr]                   Real memory window
  LJ     [Ldev.off]                   LDEV window
  TXJ    [record_number]              Text window

wK


Window kill.

  RK                        CM registers
  GRK                       NM general registers
  SRK                       NM special registers
  
  PK                        Program, current mode
  CMPK                      CM program
  NMPK                      NM program
  QK                        CM frame,  Q relative
  SK                        CM stack,  S relative
  
  GK                        Group window
  UK    [win_number]        User window
  
  VK    [win_number]        Virtual window
  ZK                        Real memory window
  LK                        LDEV window
  TXK   [win_number]        Text window

wL


Window lines. Sets the number of lines in a window.

  RL   [numlines]                     CM registers
  GRL  [numlines]                     NM general registers
  SRL  [numlines]                     NM special registers
  
  PL   [numlines]                     Program, current mode
  CMPL [numlines]                     CM program
  NMPL [numlines]                     NM program
  QL   [numlines]                     CM frame,  Q relative
  SL   [numlines]                     CM stack,  S relative
  
  GL   [numlines]                     Group window
  UL   [numlines] [win_number]        User window
  
  VL   [numlines] [win_number]        Virtual window
  ZL   [numlines]                     Real memory window
  LL   [numlines]                     LDEV window
  TXL  [numlines] [win_number]        Text window

wM


Window mode. Changes the mode for the Q or S window.

  QM  [addressmode] [signed]
  SM  [addressmode] [signed]

wN


Renames a virtual window or a user-defined window.

  UN   [name] [win_number]    User window
  VN   [name] [win_number]    Virtual window

wR


Sets the radix (output base) for the specified window.

  RR   base                     CM registers
  
  PR   base                     Program, current mode
  CMPR base                     CM program
  NMPR base                     NM program
  QR   base                     CM frame,  Q relative
  SR   base                     CM stack,  S relative
  
  GR   base                     Group window
  UR   base [win_number]        User window
  
  VR   base [win_number]        Virtual window
  ZR   base                     Real memory window
  LR   base                     Ldev window

wS


Window shift. Shifts a window to the left or right. This command is defined for text windows (TX).

  TXS  [amount] [win_number]

wW


Defines (enables) new windows.

  VW  virtaddr  [name]        Virtual window
  ZW  realaddr                Real Memory
  LW  Ldev.off                LDEV (Secondary Storage) window
  TXW filename                Text window
  
  UWm                         User window (see UWm command)

System Debug Function Specifications


This section presents short descriptions of the standard functions defined in System Debug. All functions are callable from both DAT and Debug.
The second line is the Formal Declaration.

func abstolog


Converts an CM absolute code address (ACPTR) to a CM logical code (LCPTR) address.

  abstolog (cmabsaddr)
  abstolog:lcptr (cmabsaddr:acptr)

func asc


Evaluates an expression and converts the result to an ASCII string.

  asc (value [formatspec])
  asc:str (value:any [formatspec:str = ''])

func ascc


Coerces an expression into a string value.

  ascc (value)  
  ascc:str (value:any) 

func bin


Converts a string expression to return a binary value.

  bin (strexp)  
  bin:any (strexp:str) 

func bitd


Bit deposit. Deposits a value into a specified range of bits.

  bitd (value position length target)  
  bitd:any (value:any position:s16 length:u16 target:any)

func bitx


Bit extract. Extracts a range of bits from an expression.

  bitx (source position length)  
  bitx:any (source:any position:s16 length:u16)

func bool


Coerces an expression into a Boolean value.

  bool (value)  
  bool:bool (value:any) 

func bound


Checks for an existing definition of an operand and returns its definition type.

  bound (operand)
  bound:str (operand:str)

func btow


Byte to word. Converts a CM DB-relative byte address to a CM DB-relative word address.

  btow (byteaddress [splitstack])
  btow:I16 (byteaddress:I16 [splitstack:bool=FALSE])

func cisetvar


Sets a new value for the specified CI (MPE/iX Command Interpreter) variable.

  cisetvar (civarname newvalue)
  cisetvar:bool (civarname:str newvalue:any) 

func civar


Returns the current value of a CI (MPE/iX Command Interpreter) variable.

  civar (civarname [stropt])  
  civar:any (civarname:str [stropt:str="NOEV"]) 

func cmaddr


Converts a CM procedure name (or primary/secondary entry point) to a CM logical code address.

  cmaddr (procname [lib])  
  cmaddr:lcptr (procname:str [lib:str=''])

func cmbpaddr


Returns the address corresponding to the indicated CM breakpoint index.

  cmbpaddr (bpindex [pin])
  cmbpaddr:lcptr (bpindex:u16 [pin:s16=0])

func cmbpindex


Returns the CM breakpoint index associated with the indicated CM code address.

  cmbpindex (cmaddr [pin])
  cmbpindex:u16 (cmaddr:cptr [pin:s16=0])

This function accepts the address (either logical or absolute) of an existing CM breakpoint and returns the logical index number associated with that breakpoint. The default action is to look for breakpoints set by the current PIN. Breakpoint indices for other PINs (including the global PIN) may be retrieved by utilizing the optional pin parameter.

func cmbpinstr


Returns the original CM instruction at a specified CM code address where a CM breakpoint has been set.

  cmbpinstr (cmaddr [pin])
  cmbpinstr:s16 (cmaddr:cptr [pin:s16=0])

func cmentry


Returns the CM (primary) entry point address of the CM procedure containing the specified CM logical code address.

  cmentry (cmlogaddr)  
  cmentry:lcptr (cmlogaddr:lcptr) 

func cmg


Returns the virtual address (SPTR) of a process's CMGLOBALS record.

  cmg (pin)  
  cmg:sptr (pin:u16) 

func cmnode


Returns the address of the closest CM node point corresponding to the specified CM logical code address.

  cmnode (cmlogaddr [node])
  cmnode:lcptr (cmlogaddr:lcptr [node:str="PREV"])

func cmproc


Returns the CM procedure name and offset corresponding to a CM logical code address.

  cmproc (cmlogaddr)  
  cmproc:str (cmlogaddr:lcptr) 

func cmproclen


Returns the length of the CM procedure which contains the specified CM logical code address.

  cmproclen (cmlogaddr)  
  cmproclen:u16 (cmlogaddr:lcptr) 

func cmseg


Returns the CM segment name for the specified CM logical code address.

  cmseg (cmlogaddr)  
  cmseg:str (cmlogaddr:lcptr) 

func cmstackbase


Returns the starting virtual address of a process's compatibility mode stack.

  cmstackbase (pin)
  cmstackbase:lptr (pin:u16) 

func cmstackdst


Returns the DST number for a process's compatibility mode stack.

  cmstackdst (pin)
  cmstackdst:u16 (pin:u16) 

func cmstacklimit


Returns the virtual address for the limit of a process's compatibility mode stack.

  cmstacklimit (pin)
  cmstacklimit:lptr (pin:u16)

func cmstart


Returns the starting point of the procedure containing the indicated CM logical code address.

  cmstart (cmlogaddr)
  cmstart:lcptr (cmlogaddr:lcptr) 

func cmtonmnode


Returns the address of the closest NM node point corresponding to the specified CM logical code address.

  cmtonmnode (cmlogaddr [node])  
  cmtonmnode:trans (cmlogaddr:lcptr [node:str=PREV]) 

func cmva


Returns the virtual address of a specified CM code address.

  cmva (cmaddr [pin])  
  cmva:lptr (cmaddr:cptr [pin:u16 = 0]) 

func cst


Coerces an expression into a CST absolute code pointer (ACPTR).

  cst (value)
  cst:cst (value:any)

func cstx


Coerces an expression into a CSTX absolute code pointer (ACPTR).

  cstx (value)
  cstx:cstx (value:any)

func dstva


Converts a CM data segment address to a virtual address.

  dsvta (dstoff)
  dstva:lptr (dstoff:lptr)

func errmsg


Returns an error message string, based on error number and an optional subsystem number.

  errmsg (errnum [subsys])
  errmsg:str (errnum:s16 [subsys:u16=$a9])

func grp


Coerces an expression into a GRP logical code pointer (LCPTR).

  grp (value)
  grp:grp (value:any)

func hash


Hashes a virtual address into a hash table (real) offset.

  hash (virtaddr)
  hash:s32 (virtaddr:ptr)

func lgrp


Coerces an expression into a LGRP logical code pointer (LCPTR).

  lgrp (value)
  lgrp:lgrp (value:any)

func logtoabs


Logical to absolute. Converts a CM logical code address (LCPTR) into a CM absolute code address (ACPTR).

  logtoabs (cmlogaddr)
  logtoabs:acptr (cmlogaddr:lcptr)

func lptr


Coerces an expression into a long pointer.

  lptr (value)
  lptr:lptr (value:any)

func lpub


Coerces an expression into a LPUB logical code pointer (LCPTR).

  lpub (value)
  lpub:lpub (value:any)

func ltolog


Long to logical. Converts a long pointer into a NM logical code address (LCPTR).

  ltolog (longptr)
  ltolog:lcptr (longptr:lptr)

func ltos


Long to short. Converts a virtual address to a short pointer.

  ltos (virtaddr)
  ltos:sptr (virtaddr:ptr)

func macbody


Returns a string that is the macro body for the specified macro name.

  macbody (macroname)
  macbody:str (macroname:str)

func mapindex


Returns the map index number of the specified file name which has been previously mapped into virtual space with the MAP command.

  mapindex (filename)
  mapindex:u16 (filename:str)

func mapsize


Returns the size in bytes of the specified mapped file.

  mapsize (filename)  
  mapsize:u32 (filename:str) 

func mapva


Returns the virtual address of the specified mapped file.

  mapva (filename)  
  mapva:lptr (filename:str) 

func nmaddr


Returns the virtual address of the specified NM procedure/data path.

  nmaddr (path [lookupid])
  nmaddr:long (path:str [lookupid:str="PROCEDURE"])

func nmbpaddr


Returns the address corresponding to the indicated NM breakpoint index.

  nmbpaddr (bpindex [pin])
  nmbpaddr:lptr (bpindex:u32 [pin:s16=0])

func nmbpindex


Returns the NM breakpoint index for the NM breakpoint that has been set at the specified NM code address.

  nmbpindex (virtaddr [pin])
  nmbpindex:u32 (virtaddr:ptr [pin:s16=0])

func nmbpinstr


Returns the original NM instruction at a specified NM code address where a NM breakpoint has been set.

  nmbpinstr (virtaddr[pin])
  nmbpinstr:s32 (virtaddr:ptr [pin:s16=0])

func nmcall


Dynamically calls a procedure/function passing up to four parameters.

  nmcall (path) [parm1] [parm2] [parm3] [parm4]
  nmcall:s32 (path:str [parm1:sptr=0][parm2:sptr=0]
    [parm3:sptr=0] [parm4:sptr=0]

func nmentry


Returns the entry point of the NM procedure containing the indicated address.

  nmentry (virtaddr)  
  nmentry:lptr (virtaddr:ptr) 

func nmfile


Returns the file name corresponding to the indicated NM (code) address.

  nmfile (virtaddr [length])  
  nmfile:str (virtaddr:ptr [length:u16=$20]) 

func nmmod


Returns the NM module name corresponding to the indicated address.

  nmmod (virtaddr [length])  
  nmmod:str (virtaddr:ptr [length:u16=$20]) 

func nmnode


Returns the NM logical code address (TRANS) of the closest NM node point corresponding to the specified NM address.

  nmnode (virtaddr [node])  
  nmnode:trans (virtaddr:ptr [node:str="PREV"]) 

func nmpath


Returns the full NM code path name corresponding to the indicated address.

  nmpath (virtaddr [length])  
  nmpath:str (virtaddr:ptr [length:u16=$50]) 

func nmproc


Returns the NM procedure name and offset corresponding to the specified virtual address.

  nmproc (virtaddr [length])  
  nmproc:str (virtaddr:ptr [length:u16=$40]) 

func nmstackbase


Returns the virtual address of the start of the process's NM stack.

  nmstackbase (pin)  
  nmstackbase:lptr (pin:u16) 

func nmstacklimit


Returns the virtual address of the limit of a process's NM stack.

  nmstacklimit (pin)  
  nmstacklimit:lptr (pin:u16) 

func nmtocmnode


Returns the CM logical code address of the closest CM node point corresponding to the specified NM address.

  nmtocmnode (virtaddr [node])  
  nmtocmnode:lcptr (virtaddr:lptr [node:str="PREV"]) 

func off


Returns the offset portion of a virtual address.

  off (virtaddr)  
  off:u32 (virtaddr:ptr) 

func pcb


Returns the virtual address (SPTR) of a process's PCB (process control block).

  pcb (pin)  
  pcb:sptr (pin:u16) 

func pcbx


Returns the virtual address (SPTR) of a process's PCBX (process control block extension).

  pcbx (pin)
  pcbx:sptr (pin:u16) 

func phystolog


Converts a CM physical segment number and mapping bit to a CM logical code address.

  phystolog (physsegnum [mappingbit])  
  phystolog:lcptr (physsegnum:u16 [mappingbit:bool=FALSE]) 

func pib


Returns the virtual address (SPTR) of a process's process information block (PIB).

  pib (pin)  
  pib:sptr (pin:u16) 

func pibx


Returns the virtual address (SPTR) of a process's process information block extension (PIBX).

  pibx: (pin) 
  pibx:sptr (pin:u16) 

func prog


Coerce an expression into a PROG logical code pointer (LCPTR).

  prog (value)  
  prog:prog (value:any) 

func pstate


Returns the process state, for the specified PIN, as a string.

  pstate (pin)  
  pstate:str (pin:u16) 

func pub


Coerces an expression into a PUB logical code pointer (LCPTR).

  pub (value)  
  pub:pub (value:any) 

func rtov


Real to virtual. Converts a real address to a virtual address.

  rtov (realaddr)
  rtov:lptr (realaddr:u32) 

func s16


Coerces an expression into a signed 16-bit value.

  s16 (value)  
  s16:s16 (value:any) 

func s32


Coerces an expression into a signed 32-bit value.

  s32 (value)  
  s32:s32 (value:any) 

func s64


Coerces an expression into a signed 64-bit value.

  s64 (value)  
  s64:s64 (value:any) 

func sid


Returns the space ID (SID) portion from a virtual address.

  sid (virtaddr)  
  sid:u32 (virtaddr:ptr) 

func sptr


Coerces an expression into a short pointer.

  sptr (value)  
  sptr:sptr (value:any) 

func stol


Short to long. Converts a virtual address to a long pointer.

  stol (virtaddr)  
  stol:lptr (virtaddr:ptr) 

func stolog


Short to logical. Converts a NM short pointer (SPTR) to a NM logical code address (LCPTR).

  stolog (shortptr [logsel] [userfname])
  stolog:lcptr (shortptr:sptr [logsel:str="PROG"] [userfname:str])

func str


Returns a substring of a source string.

  str (source position length)  
  str:str (source:str position:u16 length:u16) 

func strapp


String append. Returns the result of concatenating two strings.

  strapp (source tail)  
  strapp:str (source:str tail:str) 

func strdel


String delete. Returns a string with a substring deleted from the source string.

  strdel (source position length)  
  strdel:str (source:str position:u16 length:u16) 

func strdown


String downshift. Returns a string that is the result of downshifting all alphabetic characters in the source string.

  strdown (source)  
  strdown:str (source:str) 

func strextract


String extract. Returns a string (extracted) from the specified virtual address.

  strextract (virtaddr [length])  
  strextract:str (virtaddr:ptr [length:u16=$4]) 

func strinput


Prompts on the input device for user input and returns the user input line as a string.

  strinput (prompt)  
  strinput:str (prompt:str) 

func strins


String insert. Returns a string after inserting another string into the source string.

  strins (insert source position)
  strins:str (insert:str source:str position:u16) 

func strlen


String length. Returns the current size of a string.

  strlen (source)  
  strlen:u32 (source:str) 

func strltrim


String left trim. Deletes leading blanks from the source string.

  strltrim (source)
  strltrim:str (source:str)

func strmax


String maximum. Returns the (constant) maximum size of a string.

  strmax (source)  
  strmax:u32 (source:str) 

func strpos


String position. Returns the index of the first occurrence of one string in another.

  strpos (source searchstring [position])
  strpos:u32 (source:str searchstring:str [position:u32=1]) 

func strrpt


String repeat. Returns a string composed of repeated occurrences of a source string.

  strrpt (source count)  
  strrpt:str (source:str count:u32) 

func strrtrim


String right trim. Deletes trailing blanks from the source string.

  strrtrim (source)
  strrtrim:str (source:str)

func strup


String upshift. Returns a string which is the result of upshifting all alphabetic characters in the source string.

  strup (source)  
  strup:str (source:str) 

func strwrite


Returns a string which is the result of formatting one or more expressions in a manner equivalent to that of the W (WRITE) command.

  strwrite (valuelist) 
  strwrite:str (valuelist:str) 

func symaddr


Returns the bit- or byte-relative offset of a component specified through the path specification, relative to the outer structure.

  symaddr (path [units])  
  symaddr:u32 (path:str [units:u16=8]) 

func symconst


Returns the value of a declared constant.

  symconst (path)  
  symconst:any (path:str)

func syminset


Returns a Boolean value of TRUE if the set member specified by the member parameter is in the set specified by the virtual address and the path specification.

  syminset (virtaddr path member)  
  syminset:bool (virtaddr:ptr path:str member:str)

func symlen


Returns the length of a data structure in bits or bytes.

  symlen (path [units])  
  symlen:u32 (path:str [units:u32=$8]) 

func symtype


Returns the type of a component described by the path specification.

  symtype  (path)  
  symtype:int (path:str) 

func symval


Returns the value of a simple data type specified by a virtual address and a path.

  symval (virtaddr path)  
  symval:any (virtaddr:ptr path:str)

func sys


Coerces an expression into a SYS logical code pointer (LCPTR).

  sys (value)  
  sys:sys (value:any) 

func tcb


Returns the real address of a process's TCB (task control block).

  tcb (pin)  
  tcb:u32 (pin:u16) 

func trans


Coerces an expression into a TRANS logical code pointer (LCPTR).

  trans (value)  
  trans:trans (value:any) 

func typeof


Returns the type of an evaluated expression as a string.

  typeof (expr)  
  typeof:str (expr:any) 

func u16


Coerces an expression into an unsigned 16-bit value.

  u16 (value)  
  u16:u16 (value:any) 

func u32


Coerces an expression into an unsigned 32-bit value.

  u32 (value)  
  u32:u32 (value:any) 

func user


Coerces an expression into a USER library logical code pointer (LCPTR).

  user ([library] value) 
  user:user ([library:str=''] value:any) 

func vainfo


Returns selected information for the specified virtual address.

  vainfo (virtaddr selector)  
  vainfo:any (virtaddr:ptr selector:str) 

func vtor


Virtual to real. Converts a virtual address to a real address.

  vtor (virtaddr)  
  vtor:u32 (virtaddr:ptr) 

func vtos


Virtual to secondary. Converts a virtual address to a secondary storage address.

  vtos (virtaddr)  
  vtos:lptr (virtaddr:ptr) 

System Debug Environment Variables


The following tables provide short descriptions of all System Debug environment variables, arranged by their logical groups. The information is organized as follows:

  Group Name   Access Rights    Variable Name    Return Type

Access rights abbreviations are listed below. PM indicates that privileged mode (PM) capability is required.
r

Read access

R

PM read access

w

Write access

W

PM write access

d

Display access (DR command)

D

PM display access (DR command)

m

Modify access (MR command)

M

PM modify access (MR command)

const - constants

  const   r     FALSE             : BOOL
  const   r     TRUE              : BOOL 

cmd - command related

  cmd     rw    AUTOIGNORE        : BOOL
  cmd     rw    AUTOREPEAT        : BOOL
  cmd     rw    CMDLINESUBS       : BOOL
  cmd     rw    CMDNUM            : U32
  cmd     rw    ECHO_CMDS         : BOOL
  cmd     rw    ECHO_SUBS         : BOOL
  cmd     rw    ECHO_USE          : BOOL
  cmd     rw    ERROR             : S32
  cmd     r     MACRO_DEPTH       : U16
  cmd     rw    MULTI_LINE_ERRS   : U16
  cmd     rw    NONLOCALVARS      : BOOL
  cmd     rw    TRACE_FUNC        : U16

io - input/output

  io      rw    CM_INBASE         : STR
  io      rw    CM_OUTBASE        : STR
  io      r     COLUMN            : U16
  io      rW    CONSOLE_IO        : BOOL     (Debug only)
  io      rw    FILL              : STR
  io      rw    FILTER            : STR
  io      rw    HEXUPSHIFT        : BOOL
  io      rw    INBASE            : STR
  io      rw    JUSTIFY           : STR
  io      rw    LIST_INPUT        : BOOL
  io      rw    LIST_PAGELEN      : U16
  io      r     LIST_PAGENUM      : U16
  io      rw    LIST_PAGING       : BOOL
  io      rw    LIST_TITLE        : STR
  io      rw    LIST_WIDTH        : U16
  io      rw    NM_INBASE         : STR
  io      rw    NM_OUTBASE        : STR
  io      rw    OUTBASE           : STR
  io      rw    PROMPT            : STR
  io      rw    TERM_KEEPLOCK     : BOOL    (Debug only)
  io      rW    TERM_LDEV         : U16     (Debug only)
  io      rw    TERM_LOCKING      : BOOL    (Debug only)
  io      rw    TERM_LOUD         : BOOL
  io      rw    TERM_PAGING       : BOOL
  io      rw    TERM_WIDTH        : U16

misc - miscellaneous

  misc    rW    CCODE             : STR     (Debug only)
  misc    rW    CSTBASE           : LPTR
  misc    r d   CPU               : U16
  misc    r     DATE              : STR
  misc    r     DISP              : BOOL
  misc    rW    DSTBASE           : LPTR
  misc    r     ENTRY_MODE        : STR
  misc    rW    ESCAPECODE        : U32     (Debug only)
  misc    r     EXEC_MODE         : STR
  misc    r     ICSNEST           : U16
  misc    r     ICSVA             : LPTR
  misc    r     LASTPIN           : U16
  misc    rw    LOOKUP_ID         : STR
  misc    r     MODE              : STR
  misc    r d   MONARCHCPU        : u16
  misc    rw    MPEXL_TABLE-VA    : LPTR
  misc    r     PIN               : U16
  misc    rW    PRIV_USER         : BOOL
  misc    r     PROGNAME          : STR
  misc    rw    PSTMT             : U16
  misc    rw    QUIET_MODIFY      : BOOL
  misc    r     SYSVERSION        : STR
  misc    r     TIME              : STR
  misc    r     VERSION           : STR

win - window

  win     rw    CHANGES           : STR
  win     rw    CMPW              : LCPTR
  win     r     LW                : LPTR
  win     rw    MARKERS           : STR
  win     r     NMPW              : LCPTR
  win     r     PW                : LCPTR
  win     r     PWO               : SPTR
  win     r     PWS               : U32
  win     r     SHOW_CCTL         : BOOL
  win     r     VW                : LPTR
  win     r     VWO               : SPTR
  win     r     VWS               : U32
  win     rw    WIN_LENGTH        : U32
  win     rw    WIN_WIDTH         : U32
  win     r     ZW                : U32

limits - limits for macros and variables

  limits  rw    MACROS            : U16
  limits  r     MACROS_LIMIT      : U16
  limits  rw    VARS              : U16
  limits  r     VARS_LIMIT        : U16
  limits  rw    VARS_LOC          : U16
  limits  r     VARS_TABLE        : U16

cmreg - compatibility mode regs

  cmreg   r dm  CIR               : S16
  cmreg   r dm  CMPC              : LCPTR
  cmreg   r dm  DB                : S16
  cmreg   r dm  DBDST             : S16
  cmreg   r dm  DL                : S16
  cmreg   r d   MAPDST            : S16
  cmreg   r d   MAPFLAG           : S16
  cmreg   r dm  Q                 : S16
  cmreg   r dm  S                 : S16
  cmreg   r dm  SDST              : S16
  cmreg   r dm  STATUS            : S16
  cmreg   r dm  X                 : S16

nmreg - native mode regs

  nmreg   r dm  ARG0 - ARG3       : U32
  nmreg   r dM  CCR               : U16
  nmreg   r dm  CR0               : U3
  nmreg   r dm  CR8 - CR31        : U32
  nmreg   r dm  DP                : U32
  nmreg   r dM  EIEM              : U32
  nmreg   r dM  EIRR              : U32
  nmreg   r dM  IIR               : U32
  nmreg   r dM  IOR               : U32
  nmreg   r dM  IPSW              : U32
  nmreg   r dM  ISR               : U32
  nmreg   r dM  ITMR              : U32
  nmreg   r dM  IVA               : U32
  nmreg   r dm  PC                : LPTR
  nmreg   r dm  PCOB              : U32
  nmreg   r dm  PCOF              : U32
  nmreg   r dm  PCQB              : LPTR
  nmreg   r dm  PCQF              : LPTR
  nmreg   r dm  PCSB              : U32
  nmreg   r dm  PCSF              : U32
  nmreg   r dM  PID1 - PID4       : U16
  nmreg   r dM  PRIV              : BOOL
  nmreg   r d   PSP               : U32
  nmreg   r dM  PSW               : U32
  nmreg   r d   R0                : U32
  nmreg   r dm  R1 - R31          : U32
  nmreg   r dM  RCTR              : U32
  nmreg   r dm  RET0              : U32
  nmreg   r dm  RET1              : U32
  nmreg   r d   RP                : U32
  nmreg   r dm  SAR               : U16
  nmreg   r dm  SL                : U32
  nmreg   r dm  SP                : U32
  nmreg   r dm  SR0 - SR7         : U32
  nmreg   r dM  TR0 - TR7         : U32

fpreg - floating point regs

  fpreg   r dM  FPSTATUS          : U32
  fpreg   r dM  FP0 - FP15        : LPTR    (until S64 is supported)
  fpreg   r dM  FPE0 - FPE7       : U32

system - system wide debug

  system  rW    CONSOLE_DEBUG     : BOOL    (Debug only)
  system  rW    JOB_DEBUG         : BOOL    (Debug only)
  system  rW    DYING_DEBUG       : BOOL    (Debug only)

state - process state

The state variables consist of all NMREG, CMREG, and FPREG variables.




Chapter 6 System Debug


Chapter 7 File System