PROCEDURE dum$display_segment_table_entry, display_segment_table_entry, disste  (
  segment_number, sn: any of
     key
       all
     keyend
     integer 0 .. 4096
    anyend = $required
   display_option, do: key
     (sdtx)
     (sdt)
      all
   keyend = all
   output, o: file = $output
   status)
 " This procedure displays segment table entry using RJT's new dump analyzer
 " this requires tmm$dispatcher added to debug tables

  set_file_attributes output fc=legible pf=continuous pw=78
   current = $current_module
   chadm tmm$dispatcher
   xcb = 0
   dum$get_xcb xcb
   IF $generic_type(segment_number) = 'KEY' then
      " all "
    IF (display_option = all) or  (display_option =sdt) THEN
      dispv ?xcb.ost$execution_control_block.sdtp^.st  o=output
    IFEND
    IF (display_option = all) or  (display_option =sdtx) THEN
      dispv ?xcb.ost$execution_control_block.sdtx_p^.sdtx_table  o=output.$eoi
    IFEND
   ELSE  " Specific segment
    IF (display_option = all) or  (display_option =sdt) THEN
      dispv ?xcb.ost$execution_control_block.sdtp^.st[?segment_number]  o=output
    IFEND
    IF (display_option = all) or  (display_option =sdtx) THEN
      dispv ?xcb.ost$execution_control_block.sdtx_p^.sdtx_table[?segment_number]   o=output.$eoi
    IFEND
  IFEND
   chadm current
PROCEND dum$display_segment_table_entry
