Type ASSEMBLE
Source Lines : 189
Fixes Applied : 0
Most Recent Version : Tuesday, December 12, 1978
Last Fix ID : [Unmodified]
Module
DMSPNT (POINT)
Function
TO PLACE A FILE STATUS TABLE ENTRY IN THE ACTIVE FILE TABLE (IF NECESSARY), AND TO SET THE READ POINTER AND/OR WRITE POINTER FOR THAT FILE TO A GIVEN ITEM NUMBER.
Attributes
NUCLEUS RESIDENT, REENTRANT
Operation
DMSPNT CHECKS FOR POSSIBLE PARAMETER LIST ERRORS AND EXITS WITH ERROR 2 IF PARAMETER LIST IF FAULTY. IF NOT, DMSPNT CALLS DMSLAF TO DETERMINE IF THE FST ENTRY FOR THE GIVEN FILE IS ALREADY IN THE ACTIVE FILE TABLE. IF YES, THE READ AND/OR WRITE POINTERS ARE SET AS DESCRIBED BELOW. IF NOT FOUND BY DMSLAF, THEN DMSPNT CALLS DMSLFS TO FIND THE FILE. IF IT IS NOT FOUND, ERROR 1 IS RETURNED TO THE CALLER. IF FOUND, THEN DMSLAFFE IS CALLED TO PLACE THE GIVEN FILE IN THE ACTIVE FILE TABLE. DMSPNT THEN CHECKS THE READ POINTER PROVIDED BY THE CALLER; IF IT IS ZERO, NO ACTION IS TAKEN. BUT IF NONZERO, THEN ITS VALUE IS STORED IN THE READ POINTER (AFTRP) IN THE ACTIVE FILE TABLE. NEXT, DMSPNT CHECKS THE WRITE POINTER PROVIDED BY THE CALLER; IF IT IS ZERO NO ACTION IS TAKEN. IF THE WRITE POINTER IS A HALFWORD OF ALL ONES (THAT IS,=65535), THEN THE WRITE POINTER AFTWP IS SET TO THE NUMBER OF ITEMS (AFTIC) PLUS ONE. IF THE WRITE POINTER IS NEITHER 0 NOR 65535, THEN ITS VALUE IS STORED IN THE WRITE POINTER (AFTWP) IN THE ACTIVE FILE TABLE. WHEN THROUGH, POINT RETURNS TO THE CALLER AS SHOWN IN THE EXIT CONDITIONS ABOVE.
Calls to Other Routines
DMSLAFFE, DMSLAF, DMSLFS