User Tools

Site Tools


ibm:vm370-lib:cp:dmkvsc.assemble_abs

Table of Contents

DMKVSC Abstract

Statistics

Type ASSEMBLE
Source Lines : 605
Fixes Applied : 8
Most Recent Version : Wednesday, March 28, 1979
Last Fix ID : [HRC011DK]

Synopsis

Module

Function

           THE USERS CHANNEL PROGRAM.                                *
                                                                     *

Attributes

Operation

       1. CHECKS TO ENSURE THAT THE CHANNEL PROGRAM DOES NOT START
       IN PAGE 0, OR ABOVE THE V=R AREA (ERROR 12 IF IT DOES).

       1A. IF CHANNEL PROGRAM IS FOR TAPE, THEN CHECK FOR
       BACKSPACE FILE OR FORWARD SPACE FILE CCWS. IF SO
       THE CONTROL UNIT MUST NOT BE RELEASED AT INITATION.

       2. DETERMINES THE TYPE OF CCW FROM THE LAST 4 BITS OF THE OP
       CODE (USING THE OP CODE OF THE PREVIOUS CCW IF THE PREVIOUS
       CCW HAD CHAIN-DATA FLAG SET).

       3. FOR "WRITE" CCW'S (OP CODE ENDING IN 01, 05, 09, OR 0D),
       CHECKS THAT THE DATA ADDRESS IS NOT IN PAGE 0, AND THAT THE
       ENDING ADDRESS IS NOT ABOVE THE V=R AREA (ERROR 12 IF IT IS).
       IF OK, INCREMENTS INTERNAL COUNT OF "REGULAR" CCW'S.

       4. FOR "READ" CCW'S (OP CODE ENDING IN 02, 06, 0A, OR 0E),
       IF SKIP FLAG IS SET, JUST INCREMENTS THE INTERNAL COUNT OF
       "REGULAR" CCW'S.  IF NOT, CHECKS DATA ADDRESS AS IN STEP 3.

       5. FOR "READ BACKWARD" CCW (OP CODE OF 0C), COMPUTES THE
       "ENDING ADDRESS" (DATA ADDRESS LESS BYTE COUNT), AND THEN
       HANDLES AS OTHER READ CCW'S IN STEP 4.

       6. FOR A "SENSE" TYPE COMMAND (OP CODE OF 04, 94, OR B4),
       SETS RETURN-CODE INDICATING SENSE WAS FOUND;  THEN CHECKS FOR
       THE SKIP FLAG SET AND VALID DATA ADDRESS AS IN STEP 4, EXCEPT
       THAT THE COUNT OF "REGULAR" CCW'S IS NOT INCREMENTED.

       OTHER CCW OP CODES ENDING IN 04 ARE HANDLED AS READ-TYPE
       CCW'S (STEP 4).

       7. FOR A "NO-OP" CCW (OP CODE OF 03), NO ERROR CHECKING IS
       DONE, AND NO COUNTS ARE INCREMENTED.  (IF NO "REGULAR" CCW'S
       ARE ENCOUNTERED, RETURN-CODE 8 IS GIVEN UPON EXIT.)

       OTHER CCW OP CODES ENDING IN 03 ARE HANDLED AS CONTROL-TYPE
       CCW'S (STEP 8).

       8. FOR CONTROL CCW'S (OP CODES ENDING IN 03, 07, 0B, OR 0F,
       EXCEPT FOR NO-OP = 03), THE COUNT OF "REGULAR" CCW'S IS
       INCREMENTED, BUT NO OTHER ERROR-CHECKING IS DONE.

       9. FOR A CCW ENDING IN 00, THE CCW-SCANNING IS TERMINATED,
       IN STEP 12.

       10. FOR A TIC CCW (OP CODE ENDING IN 08), THE ADDRESS IN
       THE TIC IS CHECKED TO SEE IF IT FALLS WITHIN THE PORTION OF
       THE CHANNEL PROGRAM CURRENTLY BEING CHECKED.  IF SO, THE
       PREVIOUS CCW IS CHECKED FOR COMMAND-CHAIN OR DATA-CHAIN SET;
       IF YES, GOES TO HANDLE "NEXT" CCW AS IN STEP 11;  IF NOT,
       TERMINATES CCW-SCANNING IN STEP 12.

       IF THE TIC POINTS TO A NEW AREA, CHECKS IF IT IS THE FIRST
       SUCH TIC;  IF NOT, TERMINATES CCW-SCANNING IN STEP 12;  IF
       IT IS THE FIRST, POINTS TO NEW SECTION OF CHANNEL PROGRAM
       AND STARTS CHECKING IT AT STEP 1.

       11. UPON COMPLETION OF CHECKING THE CCW (IN STEPS 3-8),
       CHECKS IF THE CURRENT CCW HAS COMMAND-CHAIN OR DATA-CHAIN
       SET;  IF YES, ADVANCES 8 BYTES TO NEXT CCW AND CONTINUES
       SCANNING AT STEP 2;  IF NOT, TERMINATES SCANNING AT STEP 12.

       12. WHEN SCANNING IS COMPLETE (FROM ERROR 12 OR FROM STEP 10
       OR 11), DETERMINES FROM TENTATIVE RETURN CODE AND THE COUNT
       OF THE REGULAR CCW'S WHICH RETURN-CODE SHOULD BE GIVEN.
       SETS RETURN CODE (0, 4, 8, OR 12), SETS CONDITION CODE,
       RESTORES NECESSARY REGISTERS, AND RETURNS TO CALLER.

Calls to Other Routines

       NONE
ibm/vm370-lib/cp/dmkvsc.assemble_abs.txt ยท Last modified: 2023/08/06 13:37 by Site Administrator