cdc:nos2.source:nam5871:nvfiivt
Table of Contents
NVFIIVT
Table Of Contents
- [00003] PROC NVFIIVT
- [00004] NVFIIVT - INITIALIZES THE VOT AND VDT TABLES
- [00008] INITIALIZES THE VOT AND VDT TABLES
Source Code
- NVFIIVT.txt
- *DECK NVFIIVT
- USETEXT TXVCBNV
- PROC NVFIIVT;
- # TITLE NVFIIVT - INITIALIZES THE VOT AND VDT TABLES #
- BEGIN # NVFIIVT #
- #
- ** NVFIIVT - INITIALIZES THE VOT AND VDT TABLES
- *
- * A. LIM 81/08/07
- *
- * THIS PROCEDURE INITIALIZES THE VCB-ORDINAL-TABLE(VOT) AND
- * THE VCB-DATA-VALID-INDICATOR-TABLE(VDT).
- *
- * PROC NVFIIVT
- *
- * ENTRY NONE
- *
- * EXIT VOT IS INITIALIZED TO FREE STATE, WHILE
- * VDT IS INITIALIZED TO INVALID STATE.
- *
- * NOTES NONE
- *
- * METHOD PHYSICAL FEATURES OF THE FILES SUCH AS THE
- * MAXIMUM-SECTOR-PER-TRACK(MST), MAXIMUM-
- * ENTRIES-PER-SECTOR(MES), ACTUAL-ENTRIES-
- * PER-SECTOR(AES), BITS-USED-IN-WORD, AND
- * WORDS-PER-TABLE, ARE DEFINED IN TXVCBNV.
- * FIRST, A BIT PATTERN OF MES BITS WITH AES
- * BITS SET IS BUILT. FOR EXAMPLE, MES = 8,
- * AND AES = 7, THEN THE BIT PATTERN WOULD
- * LOOK LIKE THIS: 11111110.
- * FINALLY THE VOT AND THE VDT TABLES WOULD BE
- * SET TO THE BIT PATTERN A BYTE AT A TIME
- * UNTIL MST TIMES IS EXHAUSTED.
- *
- #
- # ITEMS #
- ITEM BITPTN U; # BIT PATTERN #
- ITEM I,J,K,L I; # INDUCTION VARIABLES #
- ITEM SECWORD U; # SECTORS/WORD #
- ITEM WRDS U; # VOT AND VDT TABLE SIZE #
- ITEM WD U; # THE NTH WORD IN THE TABLE #
- CONTROL EJECT;
- SECWORD = BITSWORD$/MAXENSEC$; # CAL SECTORS/WORD #
- WRDS = (MAXSEC$ + SECWORD - 1)/SECWORD; # CAL TBL SIZ(VTSIZE$) #
- # SET BIT PATTERN #
- FOR I = 0 STEP 1 UNTIL MAXENSEC$ - 1 DO
- BEGIN
- IF I LQ ACTENSEC$ - 1 THEN
- BEGIN
- B<I,1>BITPTN = 1;
- END
- ELSE
- BEGIN
- B<I,1>BITPTN = 0;
- END
- END # FOR LOOP #
- #
- * INITIALIZES VOT AND VDT A BYTE AT A TIME WITH THE
- * AFORE-DEFINED BIT PATTERN
- #
- FOR J = 1 STEP SECWORD UNTIL MAXSEC$ DO
- BEGIN
- WD = J/SECWORD;
- K = MAXSEC$ - WD * SECWORD;
- IF K GR SECWORD THEN
- BEGIN
- K = SECWORD;
- END
- FOR L = 0 STEP 1 UNTIL K - 1 DO
- BEGIN
- B<12+L*MAXENSEC$, MAXENSEC$>VOT$WORD[WD] =
- B<0, MAXENSEC$>BITPTN;
- B<12+L*MAXENSEC$, MAXENSEC$>VDT$WORD[WD] =
- B<0, MAXENSEC$>BITPTN;
- END # FOR L LOOP #
- END # FOR J LOOP #
- RETURN;
- END # NVFIIVT #
- TERM
cdc/nos2.source/nam5871/nvfiivt.txt ยท Last modified: 2023/08/05 17:23 by Site Administrator