- [00004] NVFAPVD - A-A PREPARE VCB DATA.
- [00009] A-A PREPARE VCB DATA
- [00034] PROC NVFUMQE
- [00035] PROC SSTATS
- [00036] PROC MESSAGE
- NVFAPVD.txt
- *DECK NVFAPVD
- USETEXT TEXTNVF
- PROC NVFAPVD((VCB),(AN),PAC);
- # TITLE NVFAPVD - A-A PREPARE VCB DATA. #
- BEGIN # NVFAPVD #
- #
- ** NVFAPVD - A-A PREPARE VCB DATA
- *
- * C. BRION 82/09/24. 83/05/09.
- *
- * THE FUNCTION OF THIS PROCEDURE IS TO READY A PAAC ENTRY AND ISSUE
- * A VCB READ REQUEST TO THE VCB READ REQUEST QUEUE.
- *
- * PROC NVFAPVD((VCB,(AN),PAC)
- *
- * ENTRY:
- *
- * VCB - VCB ORDINAL OF NETWORK CONNECTION.
- * AN - APPLICATION NUMBERD THAT CONNECTION BELONGED TO.
- *
- * EXIT:
- *
- * PAC - INDEX TO PAAC TABLE ENTRY.
- #
- #
- **** PROC NVFAPVD XREF LIST
- #
- XREF
- BEGIN
- PROC NVFUMQE; # MAKE QUEUE ENTRY #
- PROC SSTATS; # SS- ALLOCATE TABLE SPACE #
- PROC MESSAGE; # DAYFILE MESSAGE SENDER #
- END
- #
- ****
- #
- ITEM PAC I; # LOCAL PAAC INDEX VAR #
- ITEM VCB I; # LOCAL VCB ORDINAL #
- ITEM AN I; # LOCAL APPL NUMBER #
- ITEM DUMBUF I; # DUMMY TEXT AREA #
- ITEM AORD I; # AST ORDINAL, LOOP VAR#
- ITEM ASTNUM I; # NUMBER AST ENTRIES #
- #
- * NOASTMSG - MESSAGE WARNING OF NO AST ENTRY.
- #
- ARRAY NOASTMSG [00:00] S(3);
- BEGIN
- ITEM NOAST$TXT C(00,00,20)=["NVFAPVD-NO AST ENTRY"];
- ITEM NOAST$ZBYT U(02,00,60)=[0];
- END
- #
- * BPAAC - DUMMY ARRAY FOR CLEARING PAAC.
- #
- BASED ARRAY BPAAC [00:00] S(1);
- BEGIN
- ITEM BPA$WORD U(00,00,60);
- END
- #
- * **** PROC NVFAPVD ENTRY ****
- #
- #
- ALLOCATE PAAC ENTRY AND CLEAR IT
- #
- PAC = PACLNGTH / PAACSIZ$;
- SSTATS(P<PAAC>,PAACSIZ$);
- P<BPAAC> = LOC(PAAC[PAC]);
- FOR AORD = 0 STEP 1 UNTIL (PAACSIZ$ - 1)
- DO
- BEGIN
- BPA$WORD[AORD] = 0;
- END
- #
- GET AST ENTRY THAT HAS THE SAME AN AS THAT OF THE CONNECTION
- THAT HAS RETURNED TO NVF.
- #
- ASTNUM = ASTLNGTH / ASTSIZ$;
- FOR AORD = 0 STEP 1 WHILE
- ((AST$AN[AORD] NQ AN) AND
- (AORD LS ASTNUM))
- DO
- BEGIN
- END
- #
- THE AST ENTRY MAY NOT BE THERE. FUTURE ENHANCEMENTS TO NVF MAY
- HAVE TO MAKE THE AST A DYNAMIC TABLE. IF NO ENTRY, SIMPLY LET
- THE WORLD KNOW AND PROCEED.
- #
- IF AORD EQ ASTNUM
- THEN
- BEGIN
- MESSAGE(NOASTMSG,0);
- END
- ELSE
- #
- OTHERWISE, GO AHEAD AND SET THE PAAC ENTRY.
- #
- BEGIN
- PA$SWAP[PAC] = AST$ANAM[AORD];
- PA$SWAPAN[PAC] = AN;
- END
- #
- MAKE A VCB READ REQUEST
- #
- NVFUMQE(P<VRQ>,DUMBUF,10,VCB,0);
- END # NVFAPVD #
- TERM
- *ENDIF