6100 BSC Programming Manual
 BSC Example
 detail^message^others = 'P' := [
 !0 ! " NO ADDITIONAL INFORMATION AVAILABLE ",
 !1 ! " LINE NOT CONFIGURED ",
 !2 ! " NO USER TRANSLATE TABLE ",
 !3 ! " LINE BUSY ",
 !4 ! " NO REQUEST ACTIVE ",
 !5 ! " TRACE IS ACTIVE ",
 !6 ! " CONNECT TIMEOUT ",
 !7 ! " DISCONNECT TIMEOUT ",
 !8 ! " LAST REPLY ENQ ",
 !9 ! " TIMEOUT WAITING FOR BID ",
 !10! " CONSECUTIVE RVI READS ",
 !11! " CONSECUTIVE CONVERSATIONAL REPLIES ",
 !12! " ENQ RESPONSE TO BID ",
 !13! " ENQ ENQ RETRY ABORT ON BID ",
 !14! " RVI READ INITIAL "];
STRING
 UNKNOWN^ERROR^MESSAGE = 'P' := [
 !0 ! " UNKNOWN ERROR! "];
 INT error^index;
 status := cpline^buffer.clip^rsp^hdr.status;
 status^detail := cpline^buffer.clip^rsp^hdr.status^detail;
 IF NOT status THEN
 BEGIN
 BUFFER ':=' error^message FOR error^message^length;
 RETURN;
 END
 ELSE
 BEGIN
 RSCAN error^numbers[20] UNTIL status -> @SP;
 IF $CARRY THEN
 BUFFER ':=' UNKNOWN^ERROR^MESSAGE FOR error^message^length
 ELSE
 BEGIN
 error^index := @SP - @error^numbers;
 BUFFER ':=' ERROR^MESSAGE[error^message^length *
 error^index] FOR error^message^length;
 END
 END;
 CALL WRITE^TERM(IBUFFER,error^message^length);
 IF status = 22 THEN
 BEGIN
 IF NOT status^detail THEN
 BUFFER ':=' detail^message^22 FOR error^message^length
 ELSE
 B-11










