TYX
Home

Company Profile

Products

Support

News

Partners

PUG

Guestbook

Release Notes

Application Notes

Papers and Info

Problem Report

Y2K

FAQ


Release Notes

CEM User
Release Notes
Release 20010308
Version 3.9.19

Purpose

The purpose of this document is to provide information pertaining to the release of the CEM Kernel and user interface. This document is divided into three sections:

Enhancements Describes changes that enhance the capability of the CEM Kernel.

Problem Reports Describes changes that correct errors reported in problem reports.

CEM Help Describes changes made to the user interface that will eventually be added to the CEM On-Line Help.

Enhancements

CEM Error Message with Error Bits (ErrMsgBits()) vice Error Number (ErrMsg())

Prior to this release, the CEM Kernel only allowed a CEM Device Driver to register an error by specifying an Error Number plus a Message String. When the RTS receives the Error Message from the CEM Kernel, the RTS takes various actions depending on the value of the Error Number.

With this release, the CEM Kernel also allows a CEM Device Driver to register an error by specifying one or more Error Bits plus a Message String. When the RTS receives the Error Message from the CEM Kernel, the RTS takes the actions specified by the Error Bits. See the CEM Help Section below for detailed information about the new CEM Macro ErrMsgBits().

Note CEM Error Messages with Error Bits are supported by the Studio RTS but are not supported by the Windows RTS (WRTS) and the X-Window RTS (XRTS). If by some chance the WRTS or XRTS were to receive one of these Messages, the Message would be processed as if it were a CEM Error Message with an Error Number of zero.

Problem Reports

None.

CEM Help

Update to Terminal I/O CEM Macro Group

ErrMsgBits()

Note ErrMsgBits() is new and is documented below. ErrMsg() is not new but is documented below because it is not sufficiently documented in the current CEM Help Files.

 

Name: ErrMsg

Type: Terminal I/O

Usage:
short nErrNum;

char *pcErrMsg;

ErrMsg( nErrNum, pcErrMsg );

Description: This Macro causes an Error Message to be queued for eventual delivery to the RTS. The Error Message has the following format:

FError Device:CHChannel [Name]Line:StatNo Message

where is
F a Literal.
Error the Decimal Error Number specified by nErrNum
Device the Device Name.
:CH a Literal.
Channel the Device Channel.
[ a Literal.
Name the ATLAS Module Name.
] a Literal
Line the ATLAS Module Source File Line Number.
: a Literal
StatNo the ATLAS Module Statement Number.
Message the Message String specified by pcErrMsg

See Also: CEM Macro ErrMsgBits().

Name: ErrMsgBits

Note CEM Error Messages with Error Bits are supported only by the Studio RTS.

Type: Terminal I/O

Usage:
short nErrBits;

char *pcErrMsg;

ErrMsgBits( nErrBits, pcErrMsg );

Description: This Macro causes an Error Message to be queued for eventual delivery to the RTS. The Error Message has the following format:

FError Device:CHChannel [Name]Line:StatNo Message

where is
F a Literal.
Error the Decimal Error Number derived from nErrBits as follows:
1. If
nErrBits is zero, set nErrBits to 0x7FFF. Otherwise, clear nErrBits Sign Bit (Bit 2**15).
2. Convert
nErrBits to Long Integer.
3. Logical-Left-Shift Long Integer 16 bit positions.
Therefore, the minimum decimal value will be +65,536 (for 0x0001) and the maximum decimal value will be +2,147,418,112 (for 0x7FFF). See below for the defined bit values of
nErrBits.
Device the Device Name.
:CH a Literal.
Channel the Device Channel.
[ a Literal.
Name the ATLAS Module Name.
] a Literal
Line the ATLAS Module Source File Line Number.
: a Literal
StatNo the ATLAS Module Statement Number.
Message the Message String specified by pcErrMsg.

nErrBits is defined as containing three Bit Fields that should be set using the Labels specified below (which are defined in the CEM Header File cem.h):

Severity Field There are three mutually-exclusive Labels for specifying the severity of the error:

EB_SEVERITY_INFO

EB_SEVERITY_WARNING

EB_SEVERITY_ERROR

Action Field There are three mutually exclusive Labels for specifying what action the RTS is to take pertaining to the execution of the ATLAS Program:

EB_ACTION_HALT

EB_ACTION_RESET

EB_ACTION_ABORT

Set Field There is one Label for specifying a specific RTS action:

EB_SET_MAXTIME

See Also: CEM Macro ErrMsg().




| Home | Company Profile | Products | Support | News | Partners | User Groups | Guestbook |