1 /*        BEGIN INCLUDE FILE...disk_pack.incl.pl1          Last Modified January 1982 for new volume map   */
 2 
 3 
 4 
 5 
 6 /****^  HISTORY COMMENTS:
 7   1) change(86-01-14,Fawcett), approve(86-05-13,MCR7383),
 8      audit(86-05-14,LJAdams), install(86-07-18,MR12.0-1098):
 9      Add vars PAGE_SIZE and VTOCE_SIZE, Also change the SECTORS_PER_VTOCE and
10      VTOCES_PER_RECORD form fixed bin constants to arrays of fixed bin
11      constants indexed by device type as defined in fs_dev_types.incl.pl1.
12      This was done for support of the 3380, and 3390 devices for 512_WORD_IO.
13   2) change(86-10-21,Fawcett), approve(86-10-21,MCR7533),
14      audit(86-10-21,Farley), install(86-10-22,MR12.0-1193):
15      Change PAGE_SIZE and VTOCE_SIZE from automatic to static constants.
16                                                    END HISTORY COMMENTS */
17 
18 
19 /*
20    All disk packs have the standard layout described below:
21 
22    Record  0                  : contains the label, as declared in fs_vol_label.incl.pl1.
23    Record  1 to 3             : contains the volume map, as declared in vol_map.incl.pl1
24    Record  4 to 5             : contains the dumper bit map, as declared in dumper_bit_map.incl.pl1
25    Record  6                  : contains the vtoc map, as declared in vtoc_map.incl.pl1
26    Record  7                  : formerly contained bad track list; no longer used.
27    Records 8 to n-1           : contain the array of vtoc entries; ( n is specified in the label)
28    each record contains 5 192-word vtoc entries. The last 64 words are unused.
29    Records n to N-1           : contain the pages of the Multics segments. ( N is specified in the label)
30 
31    Sundry partitions may exist within the region n to N-1, withdrawn or not as befits the meaning
32    of the particular partition.
33 
34 
35 
36    A conceptual declaration for a disk pack could be:
37 
38    dcl 1 disk_pack,
39    2 label_record             (0 : 0)             bit(36 * 1024),
40    2 volume_map_record        (1 : 3)             bit(36 * 1024),
41    2 dumper_bit_map_record    (4 : 5)             bit(36 * 1024),
42    2 vtoc_map_record          (6 : 6)             bit(36 * 1024),
43    2 spare_record             (7 : 7)             bit(36 * 1024),
44    2 vtoc_array_records       (8 : n-1),
45    3 vtoc_entry ( 5 )                             bit(36 * 192),
46    3 unused                                       bit(36 * 64),
47    2 Multics_pages_records    (n : N-1)           bit(36 * 1024);
48 
49 
50 
51 
52 */
53 
54 dcl (LABEL_ADDR              init (0),                      /* Address of Volume Label */
55      VOLMAP_ADDR             init (1),                      /* Address of first Volume Map record */
56      DUMPER_BIT_MAP_ADDR     init (4),                      /* For initial release compaitiblity */
57      VTOC_MAP_ADDR           init (6),                      /* Address of first VTOC Map Record */
58      VTOC_ORIGIN             init (8),                      /* Address of first record of VTOC */
59      DEFAULT_HCPART_SIZE     init (1000),                   /* Size of Hardcore Partition */
60      MAX_VTOCE_PER_PACK      init (31774))                  /* Limited by size of VTOC Map */
61                              fixed bin (17) int static options (constant);
62 
63 /* SECTORS_PER_VTOCE & VTOCES_PER_RECORD are indexed via device type as     */
64 /* defined by fs_dev_types and extracted form the disk_table entry (dte)    */
65 /* or the physical volume table entry (pvte) device type.                   */
66 
67 dcl PAGE_SIZE fixed bin (17) init (1024) static options (constant);
68 dcl VTOCE_SIZE fixed bin (17) init (192) static options (constant);
69 
70 dcl SECTORS_PER_VTOCE       (9) fixed bin static options (constant) init
71      (0, 3, 3, 3, 3, 3, 3, 1, 1);
72 dcl VTOCES_PER_RECORD       (9) fixed bin  static options  (constant) init
73      (0, 5, 5, 5, 5, 5, 5, 2, 2);
74 dcl SECTORS_PER_RECORD      (9) fixed bin static options (constant) init
75      (0, 16, 16, 16, 16, 16, 16, 2, 2);
76 
77 /*        END INCLUDE FILE...disk_pack.incl.pl1   */