{ *************************************************************************** } MODULE mod_handle_globals ; { Created 7-JUL-1989 MICHIGAN STATE UNIVERSITY, TRIGGER CONTROL SOFTWARE } { *************************************************************************** } INCLUDE mod_common_global_flags, mod_def_hardware_tables, mod_handle_tracing, { mod_handle_registers,} mod_handle_scalers, mod_common_hard_io ; {from the TRICS hardware IO library } { *************************************************************************** } EXPORT {read_global_trgcnt_scaler,} {PROCEDURE read global trigger count scaler } reset_global_beamx_scaler, {PROCEDURE reset global beam crossing scaler } reset_global_trgcnt_scaler; {PROCEDURE reset global trigger count scaler } { *************************************************************************** } IMPORT status_type, ok,{already_done,}io_failure,{wrong_mode,} {from module MOD_COMMON_GLOBAL_FLAGS } {trace_info,}trace_warn, trace_error,{from module MOD_HANDLE_TRACING } inline_tracing, {from module MOD_HANDLE_TRACING } {handle_trc_inf,} {from module MOD_HANDLE_TRACING } handle_trc_wrn, {from module MOD_HANDLE_TRACING } handle_trc_err, {from module MOD_HANDLE_TRACING } {bbb, mbd, imlinput, imlroinput, andor, fstd, dbsc, sbscdis, sbscaofired,} {tlmfired, imlrofired, dgmstdig, tlmbusy, imlrobusy, dgmbzdis, tlmtrgnum,} {tlmstdig, tlmfiredstb, tlmfiredout, imlroaux, mtgaux, mtgholdtx, mtgstdig,} {mtgbusy, mtgtss,}dbsctrgnum, dbscbeamx, {from module MOD_DEF_HARDWARE_TABLES } {update_register,} {from module MOD_HANDLE_REGISTERS } reset_dbscaler, {from module MOD_HANDLE_SCALERS } {reset_sbscaler,} {from module MOD_HANDLE_SCALERS } {read_sbscalers,} {from module MOD_HANDLE_SCALERS } {read_dbscaler,} {from module MOD_HANDLE_SCALERS } cbus_param_list ; {from module MOD_COMMON_HARD_IO } { *************************************************************************** } { *************************************************************************** } VAR tag : VARYING_STRING(8) := 'HGL/HDB%' ; { *************************************************************************** } { *************************************************************************** } PROCEDURE reset_global_trgcnt_scaler ( tagext : VARYING_STRING(8) := '' ; iopar :^cbus_param_list ; VAR status : [OPTIONAL] status_type ); VAR io_status : status_type ; BEGIN IF PRESENT(status) THEN status := ok ; IF ( inline_tracing(trace_warn) <> 0 ) THEN handle_trc_wrn ( TAG := tag + tagext, MESSAGE := ' Resetting Global ' + ' Trigger Count Scaler ' ) ; { *** reset scaler } reset_dbscaler ( TAGEXT := tagext, CARD := ADDRESS(dbsctrgnum), REGISTER := ADDRESS(dbsctrgnum.trgnumresetreg), IOPAR := iopar, STATUS := io_status ) ; IF ( io_status = io_failure ) THEN BEGIN IF ( inline_tracing(trace_error) <> 0 ) THEN handle_trc_err ( TAG := tag + tagext, MESSAGE := ' Failure Resetting Global ' + ' Trigger Count Scaler ' ) ; IF PRESENT(status) THEN status := io_status ; END ; END ; { *************************************************************************** } { *************************************************************************** } PROCEDURE reset_global_beamx_scaler ( tagext : VARYING_STRING(8) := '' ; iopar :^cbus_param_list ; VAR status : [OPTIONAL] status_type ); VAR io_status : status_type ; BEGIN IF PRESENT(status) THEN status := ok ; IF ( inline_tracing(trace_warn) <> 0 ) THEN handle_trc_wrn ( TAG := tag + tagext, MESSAGE := ' Resetting Global ' + ' Beam Crossing Scaler ' ) ; { *** reset scaler } reset_dbscaler ( TAGEXT := tagext, CARD := ADDRESS(dbscbeamx), REGISTER := ADDRESS(dbscbeamx.beamxresetreg), IOPAR := iopar, STATUS := io_status ) ; IF ( io_status = io_failure ) THEN BEGIN IF ( inline_tracing(trace_error) <> 0 ) THEN handle_trc_err ( TAG := tag + tagext, MESSAGE := ' Failure Resetting Global ' + ' Beam Crossing Scaler ' ) ; IF PRESENT(status) THEN status := io_status ; END ; END ; { *************************************************************************** } { *************************************************************************** } END . { DEC/CMS REPLACEMENT HISTORY, Element MOD115_HANDLE_GLOBALS.PAS} { *1 26-MAR-1990 09:02:53 TRIGGER "original loading of pascal source"} { DEC/CMS REPLACEMENT HISTORY, Element MOD115_HANDLE_GLOBALS.PAS}