?? NEWTITLE := '~~~~~  common deck DSP$CALLSDA', EJECT ??
{***********************************************************

{  System deadstart assist interface definitions.

{***********************************************************


  CONST

{  SDA function codes.

    load_vpb = 1,                 {load pp boot
    read_mch = 2,                 {read maintenance register
    idle_pp = 5,                  {idle pp
    dac = 6,                      {dcn channel
    call_dft = 7,                 {call dft to process a request for ve
    fetch_hdt = 9,                {fetch hdt information from cti
    clear_nos_ve_dft_buffer_p = 10,
    write_dft_request_block = 11, {call dft to process a 170 request
    fetch_ve_enabled_status = 12; {check for VE entry in CMRDECK

  TYPE
    register_record = PACKED RECORD
      register_value: PACKED ARRAY [1 .. register_size] OF 0 .. 7777(8),
      number: 0 .. 7777(8),
      length: 0 .. 77(8),
      status: 0 .. 77(8),
    RECEND;

  TYPE
    r_pointer = PACKED RECORD
      offset: 0 .. 0fff(16),
      rupper: 0 .. 0fff(16),
      rlower: 0 .. 0fff(16),
    RECEND;

  TYPE
    sda_call = (general_calls, write_dft_request);

  TYPE
    pp_data_type = PACKED RECORD
      CASE sda_call OF
      = general_calls =

{  Word 0.

        port_code: 0 .. 7777(8),
        pp_number: 0 .. 7777(8),
        size: 0 .. 77777777(8),
        completion: 0 .. 7777(8),

{  Word 1.

        ssr_buffer: r_pointer,
        fill1: 0 .. 77(8),
        data_buffer: ^cell,

      = write_dft_request =

{  Word 0.

        fill2: 0 .. 777777777777(8),
        dft_request_length: 0 .. 7777(8),
        completion1: 0 .. 7777(8),

{  Word 1.

{  R pointer in NOS/VE memory for DFT request.

        ve_dft_request_p: r_pointer,
        fill4: 0 .. 77(8),

{  Address relative to NVE subsystem of DFT request.

        os_170_dft_request_p: ^cell,
      CASEND,
    RECEND;

  VAR
    pp_table: pp_data_type;

  PROCEDURE [XREF] callsda
    (    fn: integer;
     VAR pp_table: pp_data_type);
?? OLDTITLE ??
