1 " ***********************************************************
  2 " *                                                         *
  3 " * Copyright, (C) Honeywell Information Systems Inc., 1982 *
  4 " *                                                         *
  5 " ***********************************************************
  6 
  7 
  8 " SSU_ --- Transfer vector for accessing all of the subsystem utility functions
  9 
 10 " Created:  3 May 1980 by W. Olin Sibert
 11 " Modified: 24 July 1981 by Jay Pattin to add entries for ssu_ec_
 12 " Modified: 17 November 1981 by Jay Pattin to add get/set_info_prefix
 13 " Modified: 10 December 1981 by G. Palter to make arg_count, arg_ptr, return_arg, and
 14 "    arg_list_ptr replaceable
 15 " Modified: February 1982 by G. Palter to add ssu_$standalone_invocation, rename the
 16 "    exec_com entries, and reflect the movement of some entries to eliminate ssu_table_mgr_
 17 " Modified: June 1982 by G. Palter to add (get set reset)_request_processor_options and
 18 "    get_default_rp_options (all replaceable), add reset_procedure, make execute_line and
 19 "    evaluate_active_string not go through the SCI but instead call setup procedures which
 20 "    then transfer through the SCI, and rename ssu_execute_line_ to ssu_request_processor_
 21 " Modified: 9 July 1982 by Jay Pattin to add execute_start_up
 22 " Modified: 30 August 1982 by G. Palter to delete ssu_$set_default_procedure which was
 23 "    replaced by ssu_$reset_procedure
 24 " Modified: 6 November 1984 by G. Palter to make ssu_$get_subsystem_and_request_name a
 25 "    replaceable procedure
 26 
 27 
 28           name      ssu_
 29 
 30 
 31 " Macro to generate a call to an external entrypoint in the utilities
 32 
 33           macro     ext_transfer
 34           segdef    &1
 35 &1:       getlp
 36           tra       &2
 37 
 38           &end
 39 
 40 
 41 " Macro to generate a call to a replaceable procedure
 42 
 43           macro     sci_transfer
 44           segdef    &1
 45 &1:       epp1      ap|2,*              " PR1 <- addr (sci_ptr)
 46           epp1      pr1|0,*             " PR1 <- addr (sci)
 47           ife       &2,()
 48           tra       pr1|sci.&1,*
 49           ifend
 50           ine       &2,()
 51           tra       pr1|sci.&2,*
 52           ifend
 53 
 54           &end
 55 
 56 
 57 " An entry which does nothing: used as default value of several replaceable procedures
 58 
 59           segdef    just_return
 60 
 61 just_return:
 62           short_return
 63 
 64 
 65 " Null label and entry variables (PL/I doesn't provide them in the language)
 66 
 67           segdef    null_label
 68           segdef    null_entry
 69 
 70           even
 71 null_label:
 72 null_entry:
 73           its       -1,1
 74           its       -1,1
 75 
 76 " ^L
 77 
 78           sci_transfer        abort_line
 79           sci_transfer        abort_subsystem
 80           ext_transfer        add_info_dir,ssu_info_mgr_$add_info_dir
 81           ext_transfer        add_request_table,ssu_request_mgr_$add_request_table
 82           ext_transfer        apply_request_util,ssu_misc_requests_$apply_request_util
 83           sci_transfer        arg_count
 84           sci_transfer        arg_list_ptr
 85           sci_transfer        arg_ptr
 86           ext_transfer        cpescape,ssu_misc_procs_$cpescape
 87           ext_transfer        cpescape_disabled,ssu_misc_procs_$cpescape_disabled
 88           ext_transfer        create_invocation,ssu_invocation_$create
 89           ext_transfer        delete_info_dir,ssu_info_mgr_$delete_info_dir
 90           ext_transfer        delete_request_table,ssu_request_mgr_$delete_request_table
 91           ext_transfer        destroy_invocation,ssu_invocation_$destroy
 92           ext_transfer        evaluate_active_string,ssu_request_processor_$prepare_to_evaluate_string
 93           ext_transfer        execute_line,ssu_request_processor_$prepare_to_execute_line
 94           ext_transfer        execute_start_up,ssu_ec_$execute_start_up
 95           ext_transfer        execute_string,ssu_request_processor_$execute_string
 96           ext_transfer        get_abbrev_info,ssu_request_processor_$get_abbrev_info
 97           ext_transfer        get_area,ssu_temp_mgr_$get_area
 98           ext_transfer        get_debug_mode,ssu_misc_procs_$get_debug_mode
 99           ext_transfer        get_default_procedure,ssu_procedure_mgr_$get_default
100           sci_transfer        get_default_rp_options
101           ext_transfer        get_ec_search_list,ssu_ec_$get_ec_search_list
102           ext_transfer        get_ec_subsystem_ptr,ssu_ec_$get_ec_subsystem_ptr
103           ext_transfer        get_ec_suffix,ssu_ec_$get_ec_suffix
104           ext_transfer        get_info_prefix,ssu_info_mgr_$get_info_prefix
105           ext_transfer        get_info_ptr,ssu_invocation_$get_info_ptr
106           ext_transfer        get_invocation_count,ssu_invocation_$get_invocation_count
107           ext_transfer        get_level_n_sci_ptr,ssu_invocation_$get_level_n_sci_ptr
108           ext_transfer        get_prev_sci_ptr,ssu_invocation_$get_prev_sci_ptr
109           ext_transfer        get_procedure,ssu_procedure_mgr_$get
110           ext_transfer        get_prompt,ssu_misc_procs_$get_prompt
111           ext_transfer        get_prompt_mode,ssu_misc_procs_$get_prompt_mode
112           ext_transfer        get_ready_mode,ssu_misc_procs_$get_ready_mode
113           ext_transfer        get_request_name,ssu_invocation_$get_request_name
114           sci_transfer        get_request_processor_options,get_rp_options
115           sci_transfer        get_subsystem_and_request_name,get_subsys_and_request_name
116           ext_transfer        get_subsystem_name,ssu_invocation_$get_subsystem_name
117           ext_transfer        get_subsystem_version,ssu_invocation_$get_subsystem_version
118           ext_transfer        get_temp_segment,ssu_temp_mgr_$get_segment
119           sci_transfer        invoke_request
120           ext_transfer        list_info_dirs,ssu_info_mgr_$list_info_dirs
121           ext_transfer        list_request_tables,ssu_request_mgr_$list_request_tables
122           sci_transfer        listen
123           sci_transfer        locate_request
124           ext_transfer        print_blast,ssu_usage_$print_blast
125           sci_transfer        print_message
126           ext_transfer        record_usage,ssu_usage_$record_usage
127           ext_transfer        release_area,ssu_temp_mgr_$release_area
128           ext_transfer        release_temp_segment,ssu_temp_mgr_$release_segment
129           ext_transfer        reset_procedure,ssu_procedure_mgr_$set_default
130           sci_transfer        reset_request_processor_options,reset_rp_options
131           sci_transfer        return_arg
132           ext_transfer        set_abbrev_info,ssu_request_processor_$set_abbrev_info
133           ext_transfer        set_debug_mode,ssu_misc_procs_$set_debug_mode
134           ext_transfer        set_info_dirs,ssu_info_mgr_$set_info_dirs
135           ext_transfer        set_info_prefix,ssu_info_mgr_$set_info_prefix
136           ext_transfer        set_info_ptr,ssu_invocation_$set_info_ptr
137           ext_transfer        set_procedure,ssu_procedure_mgr_$set
138           ext_transfer        set_prompt,ssu_misc_procs_$set_prompt
139           ext_transfer        set_prompt_mode,ssu_misc_procs_$set_prompt_mode
140           ext_transfer        set_ready_mode,ssu_misc_procs_$set_ready_mode
141           sci_transfer        set_request_processor_options,set_rp_options
142           ext_transfer        set_request_tables,ssu_request_mgr_$set_request_tables
143           ext_transfer        set_ec_search_list,ssu_ec_$set_ec_search_list
144           ext_transfer        set_ec_subsystem_ptr,ssu_ec_$set_ec_subsystem_ptr
145           ext_transfer        set_ec_suffix,ssu_ec_$set_ec_suffix
146           ext_transfer        standalone_invocation,ssu_invocation_$create_standalone
147           sci_transfer        unknown_request
148 
149 " ^L
150 
151           include   _ssu_sci
152 
153           end       ssu_