﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
253	analyze_multics (azm) needs to support oct dec calc and index_set active functions.	Gary Dixon	Eric Swenson	"In order to define useful abbreviations for use in analyzing dumps, several Multics active functions need to be defined in the analyze_multics request environment.  These include:

- calc, plus, minus, times, divide: for calculations
- decimal, octal: for number base conversion
- index_set: for generation of a set of related numbers to permit display of a list of entries

By making these command/active-functions as azm requests, they can be used directly in azm request lines, and in abbreviations defined for use in azm requests.

These changes can easily be added to analyze_multics by listing the command/af entries in azm_request_table_.alm using the multics_request macro.  Such capabilities would permit definition of simple abbreviations to display data structures from a dump.  

Examples of such abbreviations are shown below.


{{{
azm:  sld 22
Could not find apte for process_idx 0
     dbr = 17543650
This is an early dump.

  ERF 22  in directory >dumps dumped at 09/19/21  0752.3 pdt Sun.
Proc   0 DBR  17543650 empty     last on cpu    Initializer.SysDaemon.z

azm:  .l
b cme      execute_string ""display sst$cmp,*  -as """"cma(""""[decimal &1o]"""")"""" ""
b slte     execute_string ""display slt +[octal [calc 4*[decimal &1o]+8]] -as slte""
}}}

The following shows use of the cme abbreviation to display a Core Map Entry (CME) for real memory page 337 (octal).  Note that this CME has different values in two related dump IDs: 22 and 23.

{{{
azm:  cme 337
cma (223)                     @ 47|1604
  fp = ""176144""b3, bp = ""000604""b3, devadd = ""0000011111010011010100""b, contr = ""0""b3, ptwp = ""016370""b3, astep = ""016354""b3,
  pin_counter = 0, synch_page_entryp = ""000000""b3
  ON:  io, abs_usable
  OFF: synch_held, er, removing, abs_w, notify_requested, phm_hedge

azm:  sld 23
Could not find apte for process_idx 0
     dbr = 17543650
This is an early dump.

  ERF 23  in directory >dumps dumped at 09/19/21  0758.0 pdt Sun.
Proc   0 DBR  17543650 empty     last on cpu    Initializer.SysDaemon.z

azm:  cme 337
cma (223)                     @ 47|1604
  fp = ""000000""b3, bp = ""000000""b3, devadd = ""0000000000000000000000""b, contr = ""0""b3, ptwp = ""000000""b3, astep = ""000000""b3,
  pin_counter = 0, synch_page_entryp = ""000000""b3
  ON:  abs_w
  OFF: synch_held, io, er, removing, abs_usable, notify_requested, phm_hedge
}}}

The next example display the System Loader Table Entry (SLTE) for segment 60: idle_pdses

{{{
azm:  slte 60
slte                          @ 7|310
  names_ptr = ""007300""b3, path_ptr = ""000000""b3, access = ""1010""b, cur_length = ""001""b3,
  ringbrack (1) through ringbrack (3) = ""0""b3, segno = ""000060""b3, max_length = ""000""b3, bit_count = ""00110000""b3
  ON:  wired, link_sect_wired, combine_link
  OFF: cache, abs_seg, firmware_seg, layout_seg, breakpointable, paged, per_process, acl_provided, branch_required, init_seg,
       temp_seg, link_provided, link_sect, pre_linked, defs
}}}

 "	enhancement	closed	major	MR12.8	Answering Service	MR12.7	fixed		
