Debug Manual
Table Of Contents
- What’s New in This Manual
- About This Manual
- 1 Introduction
- Execution Modes on TNS/R Systems
- What User Access Is Required for Debugging
- How to Make a Process Enter Debug
- How to Select Debug as the Debugger
- Why a Process Enters Debug
- How to Determine Process State on a Trap or Signal
- Ending a Debug Session
- What Appears in the Debug Header Message
- How to Use Debug
- How Debug Breakpoints Work
- 2 Using Debug on TNS/R Processors
- 3 Debug Command Overview
- 4 Debug Commands
- Command Summary
- A Command
- AMAP Command
- B Command
- BASE Command
- BM Command
- C Command
- CM Command
- D Command
- DJ Command
- DN Command
- EX[IT] Command
- F[ILES] Command
- FC Command
- FN Command
- FNL Command
- FREEZE Command
- HALT Command
- H[ELP] Command
- I Command
- IH Command (TNS/R Native and OSS Processes)
- INSPECT Command
- LMAP Command
- M Command
- MH Command (TNS/R Native and OSS Processes)
- P[AUSE] Command
- PMAP Command (Accelerated Programs)
- PRV Command
- R Command
- S[TOP] Command
- T Command
- V Command
- VQ Command
- VQA Command
- = Command
- ? Command
- A Error Messages
- B ASCII Character Set
- C Command Syntax Summary
- Register Syntax
- Expression Syntax
- Address Syntax
- A Command
- AMAP Command
- B Command
- BASE Command
- BM Command
- C Command
- CM Command
- D Command
- DJ Command
- DN Command
- EX[IT] Command
- F[ILES] Command
- FC Command
- FN Command
- FNL Command
- FREEZE Command
- HALT Command
- H[ELP] Command
- I Command
- IH Command
- INSPECT Command
- LMAP Command
- M Command
- MH Command
- Output-Device Syntax
- P[AUSE] Command
- PMAP Command
- PRV Command
- R Command
- S[TOP] Command
- T Command
- V Command
- VQ Command
- VQA Command
- = Command
- ? Command
- D Session Boundaries
- E Correspondence Between Debug and Inspect Commands
- F Sample Debug Sessions
- Glossary
- Index

Sample Debug Sessions
Debug Manual—421921-003
F-41
Native Program Example
DN Command
Then display the information shown under the “Displaying Data Using Q Address”
using the DN command.
Using DN Command with Extended String Address
The EXAMPLE_FILL_ARRAY procedure does not update the extended indirect pointer
SP located at program _GLOBAL + %H18, so it is pointing to the beginning of the
selectable segment. We can repeat the DN commands above, using SP as an string
extended address.
The EXAMPLE_FILL_ARRAY procedure has a local extended string pointer,
SEGMENT_PTR, located at $SP + %h48. The pointer is set to offset 41 of SP. We can
repeat the above commands, using the location for the SEGMENT_PTR pointer.
We resume the program so it stops the next time we reach the end of the
EXAMPLE_FILL_ARRAY procedure. The ? command shows the segment that
iscurrently being used.
050,03,00266-DN 0x00080000, 1 : h 1
00080000: 0x01 0x00 0x00 0x00
050,03,00266-DN 0x00080000 + #40, #12/4 :a
00080028: ..abc. .defg. ......
Note. The DN command we are using has this address form: offset [indirection-type [index]].
50,03,00266-DN 0x08000000 + %h18sx, 1 :h 1
00080000: 0x01 0x00 0x00 0x00
050,03,00266-DN 0x08000000 + %h18sx#40, #12/4 :a
00080028: ..abc. .defg. ......
050,03,00266-DN $SP +%h48sx, #12/4 :a
00080029: .abcd. .efg.. ......
050,03,00266-r
enter some data
tuvwxyz
DEBUG $PC=0x70000568 -RISC BREAKPOINT ($PC: 0x70000568)-
050,03,00266-?
USE SEGMENT ID = %000002
BASE STANDARD IN
BASE STANDARD OUT
TERM \M5.$ZTN00.#PTUGRB0
PRV = OFF