Type ASSEMBLE
Source Lines : 1,300
Fixes Applied : 8
Most Recent Version : Thursday, December 7, 1978
Last Fix ID : [R15003DK]
Function
WHILE EXECUTING A CP GENERATED TAPE CHANNEL PROGRAM. POSITIONING OF THE TAPE WILL BE REQUIRED ON READ/WRITE COMMANDS AND THE CHANNEL PROGRAM RE-EXECUTED. IF THE ERROR CONDITION IS UNCORRECTABLE A CALL WILL BE ISSUED TO THE MESSAGE WRITER (DMKMSW) FOR OPERATOR AWARENESS. ON REGAINING CONTROL FROM DMKMSW THE ORIGINAL CHANNEL PROGRAM MAY BE RE-EXECUTED OR TERMINATED. TO ISSUE A RELEASE CCW TO TAPE DEVICE TO DETERMINE IF HARDWARE HAS 2/4 CHANNEL SWITCH.
Operation
ADDRESS OF THE IOERBLOK IN THE RDEVBLOK. B. TEST FOR CHANNEL ERROR. 1. INTERFACE AND CHANNEL CONTROL CHECKS ARE RETURNED TO THE CALLER WITH IOBSTAT=IOBFATAL. C. TEST FOR OTHER TYPE ERROR. DESIGNATION OF COMMAND BEING EXECUTED C=CONTROL R=READ W=WRITE 1. EQUIPMENT CHECK (C,R,W) PERFORM ACTION 10. 2. BUS-OUT CHECK (C,R,W) PERFORM ACTION 4. 3. INTERVENTION REQUIRED (C,R,W) PERFORM ACTION 3. 4. COMMAND REJECT (C,R,W) PERFORM ACTION 13. 5. OVERRUN (R,W) PERFORM ACTION 7. 6. LOAD POINT (C,R) PERFORM ACTION 12. 7. DATA CHECK (R) PERFORM ACTION 5. 8. DATA CHECK (W) PERFORM ACTION 6. 9. DATA CHECK (C) PERFORM ACTION 8. 10. CHANNEL DATA CHECK (R,W) PERFORM ACTION 7. 11. CHANNEL DATA CHECK WITH DATA CONV ON (R) PERFORM ACTION 13. 12. CHANNEL DATA CHECK AND NOT CAPABLE ON (R) PERFORM ACTION 9. 13. CHANNEL DATA CHECK AND NO PREVIOUS SENSE BITS ON (R,W,C) PERFORM ACTION 10. 14. CHAINING CHECK (R) PERFORM ACTION 7. 15. PROGRAM CHECK (R,W) PERFORM ACTION 12. 16. PROTECTION CHECK (R,W) PERFORM ACTION 12. 17. INCORRECT LENGTH (R,W) PERFORM ACTION 12. **************** * ACTION LIST * **************** 3. CHECK TO SEE IF TAPE DRIVE IS EXISTENT. IF NON-EXISTENT ISSUE OPERATOR MESSAGE. IF THE COMMAND WAS A REWIND-UNLOAD EXIT. OTHERWISE SET INTERVENTION REQUIRED FLAGS AND WAIT FOR THE DEVICE END INTERRUPT. WHEN THE DEVICE END INTERRUPT OCCURS RE-ISSUE THE ORGINAL CCW STRING. 4. RE-ISSUE THE COMMAND IF 'DEVICE END' STATUS IS NOT PRESENT. IF 'DEVICE END' IS PRESENT DURING A WRITE, REPOSITION THE TAPE AND RE-ISSUE THE COMMAND. ALLOW A MAXIMUM OF 5 RETRIES. 5. RETRY ORIGINAL CCW STRING 40 TIMES WITH TAPE CLEANING ACTION PERFORMED EVERY 4'TH TIME. IF THE ERROR STILL PERSISTS READ OPPOSITE RECOVERY WILL BE ATTEMPTED. 6. REPOSITION TAPE AND ISSUE AN ERASE COMMAND, THEN FOLLOW WITH THE ORIGINAL CCW STRING FOR A MAXIMUM OF 15 RETRIES. 7. REPOSITION TAPE AND RE-ISSUE COMMAND FOR A MAXIMUM OF 5 RETRIES. 8. IF COMMAND IS A 'WTM', EXECUTE ACTION 6. IF THE COMMAND IS AN 'ERASE GAP' RETRY THE COMMAND FOR 3 RETRIES. 9. REPOSITION TAPE TO LOAD POINT AND ISSUE OPERATOR MESSAGE. 10. CALL DMKMSW. 12. SET IOBSTAT=IOBFATAL AND RETURN TO CALLER. 13. CALL DMKMSW. D. IF THE RETRY PROCEDURE HAS BEEN EXHAUSTED AND UNSUCCESSFUL CALL DMKMSW FOR OPERATOR OPTIONS. (CANCEL,RETRY,IGNORE) THE RESPONSES ALLOWED WILL BE BASED ON THE CONDITION CAUSING THIS ERROR.
Calls to Other Routines
DMKTAPER - 1. DMKMSW - TO PROVIDE OPERATOR COMMUNICATION IN ATTEMPTING TO CORRECT THE ERROR CONDITION. 2. DMKIOEST - TO UPDATE STATISTICAL COUNTERS DMKTAPRL - 1. DMKIOSQR - PERFORM TIO/REL 2. DMKPTRUL - UNLOCK DMKTAP PAGE DMKTAPER/DMKTAPRL 1. DMKFREE - TO OBTAIN STORAGE FOR WORK AREAS 2. DMKFRET - TO RETURN STORAGE WORK AREAS. 4. DMKIOEST - TO UPDATE STATISTICAL COUNTERS