1 /* BEGIN INCLUDE FILE ... cp_data_.incl.pl1 */
 2 /* Created:  July 1984 by G. Palter */
 3 
 4 /* Constants defined by the Multics Command Processor */
 5 
 6 dcl  1 cp_data_$standard_language aligned external,         /* standard Multics command language definition */
 7        2 character_types (0:511) fixed binary (9) unaligned unsigned;
 8 
 9 dcl  cp_data_$scratch_release_factor fixed binary external; /* "permanent" scratch segments are released every N uses */
10 
11 
12 /* Static data defined by the Multics Command Processor */
13 
14 dcl  cp_data_$under_lss bit (1) aligned external;           /* ON => restrict valid command names */
15 dcl  cp_data_$command_table_ptr pointer external;           /* -> the command table if in an LSS */
16 
17 dcl  cp_data_$scratch_lock_id fixed binary (35) external;   /* last unique ID assigned for scratch segment management */
18 
19           /*** List of scratch segments held "permanently" by the command processor */
20 dcl  1 permanent_scratch_segment_list aligned based (permanent_scratch_segment_list_ptr),
21        2 n_scratch_segments fixed binary,                   /* # of possible segments */
22        2 scratch_segments (0 refer (permanent_scratch_segment_list.n_scratch_segments)),
23          3 segment_ptr pointer,                             /* ... -> an actual scratch segment */
24          3 lock bit (36) aligned,                           /* ... unique ID of the CP instance using this segment */
25          3 usage_count fixed binary;                        /* ... total # of times this segment has been used */
26 
27 dcl  cp_data_$permanent_scratch_segment_list bit (36) aligned external;
28 dcl  permanent_scratch_segment_list_ptr pointer;            /* set to addr (cp_data_$permanent_scratch_segment_list) to
29                                                                allow different list sizes in BCE and Multics */
30 
31 /* END INCLUDE FILE ... cp_data_.incl.pl1 */