IDENT 5ME,DVEX PERIPH BASE M SST 5ME TITLE 5ME - MASS STORAGE VALIDATION ERROR PROCESSOR. *COMMENT 5ME - MS VALIDATION ERROR PROCESSOR. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992. SPACE 4,10 ***** 5ME - MASS STORAGE VALIDATION ERROR PROCESSOR. * * P. D. HAAS. 76/05/27. * J. M. MAREK. 87/04/24. SPACE 4,10 *** 5ME TRANSLATES ERROR CODES RETURNED BY CPUMTR ON A * *VMSM* REQUEST INTO ERRLOG MESSAGES. MESSAGES WILL NOT * BE ISSUED IF THE ERRORS ARE ON THE ERRLOG DEVICE. SPACE 4,10 *** ERRLOG MESSAGES. * * *MSER, EQXXX, TRACK COUNT.* = THE NUMBER OF AVAILABLE * TRACKS AS MAINTAINED IN THE *TDGL* WORD OF THE MST FOR * EST ORDINAL XXX IS INCORRECT (EC=1). * * *MSER, EQXXX, PF COUNT.* = THE NUMBER OF PRESERVED FILES * INDICATED IN THE TRT FOR EST ORDINAL XXX DOES NOT MATCH THE * COUNT MAINTAINED IN THE *ACGL* WORD OF THE MST (EC=2). * * *MSER, EQXXX, PERMITS CHAIN.* = THE FIRST TRACK OF THE * PERMITS CHAIN ON EST ORDINAL XXX IS NOT RESERVED AND/OR * PRESERVED IN THE TRT (EC=4). * * *MSER, EQXXX, CATALOG CHAIN.* = ERROR IN CATALOG CHAIN ON EST * ORDINAL XXX (EC=10), CAUSED BY ONE OR MORE OF THE FOLLOWING - * 1) LABEL TRACK NOT LINKED TO FIRST CATALOG TRACK. * 2) NUMBER OF CATALOG TRACKS NOT A POWER OF 2. * 3) CATALOG CHAIN NOT RESERVED. * 4) LENGTH OF CATALOG CHAIN INCORRECT. * 5) CATALOG CHAIN NON-CONTIGUOUS IF FLAGGED AS SUCH. * * *MSER, EQXXX, INDIRECT CHAIN.* = THE FIRST TRACK OF THE * INDIRECT CHAIN ON EST ORDINAL XXX IS NOT RESERVED AND/OR * PRESERVED IN THE TRT (EC=20). * * *MSER, EQXXX, PACK=VVVVVVV, DN=DD-U* = WRONG PACK MOUNTED * ON EQUIPMENT XXX. THE PACK MOUNTED HAS A VSN OF VVVVVVV, * A DEVICE NUMBER OF DD, AND IS RELATIVE UNIT U (IF IT IS * PART OF MULTI-SPINDLE SET.) SPACE 4,10 *** OPERATOR MESSAGES. * * *EQXXX, VALIDATION ERROR NN.* = MESSAGE FLASHED AT THE * SYSTEM CONTROL POINT AS A RESULT OF *VMSM* ERRORS ON * EST ORDINAL XXX. NN REPRESENTS ANY COMBINATION OF THE * ERROR CODES (EC) IDENTIFIED WITH THE ERRLOG MESSAGES. * * *EQXXX, PACK=VVVVVVV, DN=DD-U* = WRONG PACK MOUNTED ON * EQUIPMENT XXX. THE PACK MOUNTED HAS A VSN OF VVVVVVV, * A DEVICE NUMBER OF DD, AND IS RELATIVE UNIT U (IF IT IS * PART OF MULTI-SPINDLE SET.) SPACE 4,10 *** ENTRY CONDITIONS. * * (IR+2) = ERROR CODES. * .GT. 77 = FWA OF BUFFER CONTAINING LABEL SECTOR * (WRONG PACK ERROR.) * (IR+3) = EST ORDINAL. SPACE 4,10 *** EXIT CONDITIONS. * * (A) = STATUS RESPONSE. * 0 = OPERATOR ENTERED *GO*. * .LT. 0 = DEVICE IS DOWN. SPACE 4,10 ** COMMON DECKS. *CALL COMPMAC *CALL COMSCPS *CALL COMSLSD *CALL COMSMSC SPACE 4,10 **** DIRECT LOCATION ASSIGNMENTS. EI EQU 17 ERROR INDEX **** DVE TITLE MAIN LOOP. ORG N4SS+5*PFGL+12 DVEX LJM DVE1 ENTRY FROM *PPR* DVE EQU *-1 RETURN (FROM *EXR* CALL) UJN DVE3 ENTRY FROM *EXR* DVE1 LDN DVE2-DVE1 MODIFY EXIT RAM DVE LDD IR+2 GET ERROR FLAGS NJN DVE4 IF ERRORS SET DVE2 MONITOR DPPM RELEASE PP LJM PPR EXIT (FROM *PPR* CALL) DVE3 LDD IR+2 ZJN DVEX IF NO ERROR FLAGS DVE4 RJM C2D CONVERT ERROR FLAGS STM CMSG+14 LDD IR+3 CONVERT UPPER TWO DIGITS OF EST ORDINAL STD T5 SHN -3 RJM C2D STM CMSG+1 LDD IR+3 CONVERT LOWER DIGIT OF EST ORDINAL LPN 7 SHN 6 RAM CMSG+2 LDN NCPL GET NUMBER OF CONTROL POINTS CRD T6 AOD T6+1 SET ADDRESS OF SENSE SWITCH WORD SHN 7 ADN SNSW STD T7 LDN DFPP READ DAYFILE POINTER CRD CM LDD CM SET FWA OF DAYFILE POINTERS SHN 14 LMD CM+1 ADN 3*ELDY+2 CRD CM LDD IR+2 CHECK ERROR CODE ADK N4SS+PFGL*5-BFMS STD T6 SET PACK NAME ADDRESS FOR WRONG PACK SHN -7 ZJN DVE5 IF *VMSM* ERROR CODE LDN 40 PROHIBIT USING THIS PP TO DUMP DAYFILE RAM DVEA LDN 1 STD IR+2 FORCE ERROR CODE STM DVEB POST-PROCESS THE ERROR LCN 0 ERRNZ WPEM DVE5 STD EI SET ERROR MESSAGE INDEX NJN DVE6 IF WRONG PACK LDD T7 DISPLAY MESSAGE AT SYSTEM CONTROL POINT ADK MS2W-SNSW CWM CMSG,TR DVE6 AOD EI ADVANCE ERROR INDEX LDD IR+2 CHECK NEXT ERROR FLAG SHN 21-0 STD IR+2 PJN DVE6 IF NO ERROR SET LDM TMSG,EI SET ADDRESS OF MESSAGE SUFFIX STD T1 LDC CMSG+2 STD T2 DVE7 AOD T1 APPEND DESCRIPTION TO BASIC MESSAGE AOD T2 LDI T1 STI T2 NJN DVE7 IF NOT END OF ERROR DESCRIPTION LDD EI CHECK FOR WRONG PACK NJN DVE10 IF NOT WRONG PACK STD T1 MOVE PACK NAME TO MESSAGE DVE8 LDI T6 ZJN DVE9 IF SHORT NAME STM CMSG+6,T1 DVE9 AOD T6 AOD T1 SBN 3 MJN DVE8 IF MORE TO MOVE LDI T6 SCN 77 RAM CMSG+11 LDI T6 RJM C2D CONVERT DEVICE NUMBER STM CMSG+14 AOD T6 LDI T6 GET RELATIVE UNIT NUMBER LPN 7 ZJN DVE10 IF SINGLE SPINDLE DEVICE LDI T6 SHN -3 LPN 7 ADC 2R-0 STM CMSG+15 ERRNZ CMSG+16-CMSGL CODE ASSUMES A ZERO BYTE AFTER UNIT DVE10 LDD T5 CHECK ERRLOG EST ORDINAL LMD CM ZJN DVE11 IF ERRORS ON ERRLOG DEVICE DVEA LDC EMSG+ERLN ISSUE ERRLOG MESSAGE * LDC EMSG+ERLN+400000 (WRONG PACK ERROR) RJM DFM LDD IR+2 NJP DVE6 IF MORE ERRORS DVE11 UJN DVE13 RETURN * PSN (WRONG PACK ERROR) DVEB EQU *-1 * WAIT FOR A *GO* OR *DOWN* WHEN WRONG PACK MOUNTED. LDD T7 READ SENSE SWITCH WORD CRD CM LDN 3 SET PAUSE + NOGO FLAGS STD CM+3 LDD T7 STORE SENSE SWITCH WORD CWD CM DVE12 LDD T7 DISPLAY MESSAGE AT SYSTEM CONTROL POINT ADN MS2W-SNSW CWM CMSG,TR PAUSE NE WAIT FOR A *GO* OR *DOWN* * LDN 0 DELAY SBN 1 NJN *-1 IF NOT DONE DELAYING LDD T7 READ SENSE SWITCH WORD CRD CM LDD CM+3 CHECK ON OPERATOR INPUT DVE13 ZJN DVE15 IF OPERATOR ENTERED *GO* SFA EST,T5 CHECK DEVICE STATE ADK EQDE CRD CM LDD CM LPN 3 LMN 3 ZJN DVE14 IF DOWN LDD CM SHN 21-11 MJN DVE12 IF SHARED LDD T5 STD CM+1 LDN DWES DOWN THE DEVICE STD CM+2 MONITOR SEQM DVE14 LCN 1 SET INACCESSIBLE STATUS DVE15 LJM DVEX RETURN TITLE TABLES AND MESSAGES. TMSG SPACE 4,5 ** TABLE OF ERROR MESSAGE SUFFIXES. TMSG BSS 0 LOC 0 CHAR 1R0,00 CODE OTHER WPEM CON =C* PACK= 0, DN=DD*-1 MUST BE 1 BYTE .LT. *CMSG* * CON =C* PACK= 0, DN=DD-U* (MULTISPINDLE DEVICE) CODE * CON =C* TRACK COUNT.*-1 CON =C* PF COUNT.*-1 CON =C* PERMITS CHAIN.*-1 CON =C* CATALOG CHAIN.*-1 CON =C* INDIRECT CHAIN.*-1 LOC * USE LITERALS FORCE MESSAGES HERE EMSG SPACE 4,5 EMSG DATA 6HMSER, PREFIX FOR DETAILED ANALYSIS CMSG DATA C*EQ000, VALIDATION ERROR NN.* CMSGL EQU *-1 SPACE 4,5 ** COMMON DECKS. *CALL COMPC2D OVERFLOW DVEX,EPFW,CMR ERRPL *-DVEX+5-473 OVERFLOW ONE SECTOR END