PROCEDURE (HIDDEN) cmp$ask_for_intervention (
  deadstart_phase, dp: key
      installation, reinstallation, continuation
    keyend = $required
  menu_items: list of name = $required
  prolog_procedure_name, ppn: name = $required
  usecp_selection: string = $required
  intervention_step: (VAR) name = $required
  status)

"$FORMAT=OFF
VAR
   local_status: status
   menu_selection: string
VAREND

"$FORMAT=ON

  IF deadstart_phase = installation THEN
    rap$display_message message_module=sysdp_messages ..
          message_name=prolog_selection_info message_parameters=(..
          usecp_selection $string(prolog_procedure_name)) to=$output
    rap$prompt_via_menu menu_module= installation_ds_menu ..
          menu_selections=menu_items prompting_options=allow_go ..
          selection_chosen=menu_selection status=local_status
  ELSEIF deadstart_phase = reinstallation THEN
    rap$display_message message_module=sysdp_messages ..
          message_name=prolog_selection_info message_parameters=(..
          usecp_selection $string(prolog_procedure_name)) to=$output
    rap$prompt_via_menu menu_module= continuation_ds_menu ..
          menu_selections=menu_items prompting_options=allow_go ..
          menu_parameters= 'SYSTEM SET RECOVERY' ..
          selection_chosen=menu_selection status=local_status
  ELSE "Continuation deadstart"
    rap$prompt_via_menu menu_module= continuation_ds_menu ..
          menu_selections=menu_items prompting_options=(allow_go, ..
          clear_screen) menu_parameters= 'CONTINUATION DEADSTART' ..
          selection_chosen=menu_selection status=local_status
  IFEND

  IF local_status.normal THEN
    cmp$display_menu_selection menu_selection=menu_selection ..
        menu_items=menu_items output=$job_log
    IF menu_selection <> '+GO' THEN
      intervention_step = $name(menu_selection)
    ELSE
      intervention_step = none
    IFEND
  ELSE
    rap$display_message message_module=sysdp_messages ..
          message_name=report_menu_fault to=$output
    display_value local_status
    intervention_step = none
  IFEND

PROCEND cmp$ask_for_intervention
