Displays either the contents of a specified block of memory (first syntax) or the contents of a descriptor table (second syntax).
[count] d [data-type] [source-address] [,] [count] d table-type [(expression)[.component]]
count
count
specifies how many table entries to display, beginning at a specific entry. In this case, expression
is a required parameter. For example, 5dgdt (40t)
displays 5 entries from the GDT beginning at entry number 40.
If you don't specify count
, the default is to display a screenful of entries until you type Q
to quit. You can increment the display one screen at a time by typing <Space>, or one line at a time by typing <CR>.
data-type
Enter this data type | To specify this display format |
---|---|
H |
Halfword (16 bits, hex) |
W |
Word (32 bits, hex) |
I |
Word integer (16 bits, hex & decimal) |
LI |
Long integer (64 bits, hex & decimal) |
LR |
Long real (64 bits, hex & decimal) |
SI |
Short integer (32 bits, hex & decimal) |
SR |
Short real (32 bits, hex & decimal) |
T |
Binary coded decimal (10 bytes) |
TR |
Temporary real (10 bytes) |
X |
Disassembled instruction |
If you omit this parameter, the block of memory is displayed in both byte and ASCII characters. Refer to previous sections in this chapter for more detailed information about data types.
source-address
, (comma)
Note: You cannot use continuation commas when you are displaying descriptor tables.
table-type
Enter this data type | To specify this display format |
---|---|
DT |
Generic descriptor table. If you use this table type, include an "(expression)" parameter. |
GDT |
Global descriptor table. |
IDT |
Interrupt descriptor table. |
LDT |
Local descriptor table. |
If you specify only the table type, SDM displays the entire table.
(expression)
If DT
is your table-type
, use a segment register mnemonic (for example, CS
) or selector enclosed in parentheses to designate the entry in the descriptor table to display. SDM uses the selector to decide which descriptor table you are referencing. Therefore, when you are debugging an application and you know the selector, you can examine the entry in the corresponding descriptor table without knowing whether it is a local or global descriptor table.
If GDT
, LDT
, or IDT
is your table type, use sequential entry numbers with a T
suffix to specify the table entry.
.component
The following lists the descriptor components and the descriptor types that apply to each component:
Component | Definition | Descriptor Type |
---|---|---|
.base |
segment base | dseg16, dseg32, eseg16, eseg32, tss286, dtable |
.limit |
segment limit | dseg16, dseg32, eseg16, eseg32, tss286, dtable |
.wcnt |
word count | callg286, callg386 |
.ssel |
segment selector | callg286, callg386, trapg286, trapg386, intg286, intg386, taskg, tss286 |
.soff |
segment offset | callg286, callg386, trapg286, trapg386, intg286, intg386 |
.dpl |
descriptor privilege level | dseg 16, dseg32, eseg16, eseg32, callg286, callg386, trapg286, trapg386, intg286, intg386, taskg, tss286, tss386, dtable |
.ed |
expand down | dseg16, dseg32 |
.w |
writable | dseg16, dseg32 |
.a |
accessed | dseg16, dseg32, eseg16, eseg32 |
.c |
conforming | eseg16, eseg32 |
.r |
readable | eseg16, eseg32 |
.p |
present | eseg16, eseg32 |
.b |
big | dseg32 |
.g |
granularity | dseg32, eseg32 |
This lists and describes the descriptor types. SDM uses these abbreviations when it displays the descriptor types.
Descriptor type | 32-bit descriptor | 16-bit descriptor |
---|---|---|
Data segment | dseg32 | dseg16 |
Executable segment | eseg32 | eseg16 |
Call gate | callg386 | callg286 |
Trap gate | trapg386 | trapg286 |
Interrupt gate | intg386 | intg286 |
Task gate | taskg | |
Task state segment | tss386 | tss286 |
Descriptor table | dtable |
..14dx
The display is similar to:
0F00:0000012A 55 PUSH BP 0F00:0000012B 8BEC MOV BP, SP 0F00:0000012D 8BF5 MOV SI, BP 0F00:0000012F 83C608 ADD SI, 8 0F00:00000132 CDB8 INT 0B8H 0F00:00000134 85C9 TEST CX,CX 0F00:00000136 7403 JZ A = 013BH [destination offset of 0F00:00000138 E82700 CALL A = 0162H [near jump and call 0F00:0000013B C45E04 LES BX,[BP+04H] 0F00:0000013E 26890F MOVES:[BX],CX 0F00:00000141 5D POP BP 0F00:00000142 C20600 RET 6 0F00:00000145 C8 ?? [invalid opcode
The comments preceded by brackets ([) are not part of the display; they are included to help you understand the display.
..5di
The display is similar to:
1000:00000000 1ABDH 6845 0929H 2345 1000:00000004 FFFFH -1 FBB6H -1098 1000:00000008 115CH 4444
..dgdt(4t)
The display is similar to:
GDT (4T) ESEG32 BASE=00FFC240 LIMIT=36BB P=1 DPL=0 A=1 C=0 R=1 G=0
DS
register, enter: ..ddt(ds)
The display is similar to:
LDT (5T) DSEG32 BASE=00000140 LIMIT=03FF P=1 DPL=0 ED=0 W=1 A=1 G=0