EPRINT - SYSTEM ERROR PRINTOUT TASK EPRINT WILL PRINT ERROR MESSAGES FROM LB:[1,2]SYSERR.MSG, LB:[1,2]EPRINT.MSG OR MESSAGE FILE SPECIFIED (64 BYTE FIXED RECORDS) EPRINT IS ACTIVATED WITH A SEND, REQUEST AND CONNECT DIRECTIVE IN MACRO: .MCALL DIR$,SDRC$,STOP$S,EXIT$S MOV ERRNUM,ERRBUF ; GET ERROR CODE DIR$ #SNDREQ ; DO SEND DIRECTIVE BCS EXIT ;-- ERROR, SKIP STOP STOP$S ; STOP UNTIL EPRINT UNSTOPS EXIT: EXIT$S ; EXIT SNDREQ: SDRC$ EPRINT,ERRBUF,,,; ERROR SEND DIRECTIVE ERRBUF: .WORD 0 ; ERROR CODE .WORD 3 ; CONTROL WORD .BLKW 11. ; REST OF DIRECTIVE IN FORTRAN: INTEGER*2 ERRBUF(13) DATA TSKNAM/6REPRINT/ ERRBUF(2) = 3 ... ERRBUF(1) = ERRNUM CALL SDRC(TSKNAM,ERRBUF,,,,,IDS) IF (IDS.NE.1) GO TO 9999 CALL STOP(IDS) 9999 CALL EXIT END ERRNUM = $DSW CODE FOR DIRECTIVE ERRORS (HIGH BYTE ALL ONES) = I/O STATUS RETURN BYTE FOR I/O ERRORS (HIGH BYTE ZERO) WORD 1 - ERROR CODE NUMBER WORD 2 - CONTROL WORD FORMAT BIT OCTAL 0 1 - WAIT FOR PRINT OUT 1 2 - UNSTOP TASK AFTER ERROR PRINT 2 4 - RESUME TASK AFTER ERROR PRINT 3 10 - DON'T PRINT BEGINING LINE FEED 4 20 - DON'T PRINT TASK NAME 5 40 - DON'T PRINT ERROR NUMBER 6 100 - DON'T PRINT ' ERROR ' 7 200 - PRINT ' WARNING ' AND NOT ERROR 8 400 - GET MESSAGE FROM USER FILE 9 1000 - DON'T PRINT MESSAGE FROM FILE 10 2000 - PRINT ASCII MESSAGE 9,10 3000 - PRINT ASCII MESSAGE ONLY 11 4000 - PRINT FILE NAME USING FLAG WORD (WORD 3) 12 10000 - PRINT ASCII FOR FILE NAME BEFORE MESSAGE STRING 13 20000 - DON'T PRINT TRAILING CARRAGE RETURN 14 40000 - PRINT TIME AND DATE ON FIRST LINE WORD 3-13 DEPEND ON CONTROL WORD FOR ASCII MESSAGE - .ASCIZ /STRING UP TO 22. CHARACTERS/ FOR FILE NAME PRINT: WORD 3 - FILE NAME PRINT FLAGS BIT OCTAL 0 1 - NB.VER - PRINT VERSION NUMBER 1 2 - NB.TYP - PRINT FILE TYPE 2 4 - NB.NAM - PRINT FILE NAME 3 10 - NB.SVR - PRINT '*' FOR VERSION 4 20 - NB.STP - PRINT '*' FOR FILE TYPE 5 40 - NB.SNM - PRINT '*' FOR FILE NAME 6 100 - NB.DIR - PRINT DIRECTORY [UIC] 7 200 - NB.DEV - PRINT DEVICE AND UNIT NUMBER 8 400 - NB.SD1 - PRINT '*' FOR GROUP NUMBER 9 1000 - NB.SD2 - PRINT '*' FOR MEMBER NUMBER FOR GET MESSAGE FROM USER FILE: WORD 3 - RECORD OFFSET FROM ABS. VALUE OF ERROR NUMBER FOR GET MESSAGE OR PRINT FILE NAME: WORD 4 - DEVICE NAME IN ASCII WORD 5 - DEVICE UNIT IN BINARY WORD 6,7 - UIC IN RAD50 WORD 8-10 - FILENAME IN RAD50 WORD 11 - FILE TYPE IN RAD50 WORD 12 - VERSION IN BINARY WORD 13 - NOT USED