1 /* BEGIN INCLUDE FILE...iod_device_tab.incl.pl1 */
 2 
 3 
 4 
 5 /****^  HISTORY COMMENTS:
 6   1) change(88-01-27,Brunelle), approve(), audit(), install():
 7      Ancient History
 8      Created by J. Stern, January 1975
 9      Modified by J. C. Whitmore April 1978
10   2) change(88-02-18,Brunelle), approve(88-08-31,MCR7911),
11      audit(88-09-29,Wallman), install(88-10-28,MR12.2-1199):
12      Added comment, head_sheet, tail_sheet, paper_type, forms_table,
13      forms_validation, font_dir variables to device entries in support of laser
14      printers.  Changed driver_module, args to text_offset instead of strings.
15      Added comment, default_form  to minor device entries.  Changed args in
16      minor device entry to text_offset instead of string.
17                                                    END HISTORY COMMENTS */
18 
19 
20 /* format: style4 */
21 
22 dcl  idtp ptr;                                              /* ptr to device table */
23 dcl  1 iod_device_tab aligned based (idtp),                 /* IO daemon device table */
24        2 n_devices fixed bin,                               /* number of major devices */
25        2 pad fixed bin,
26        2 entries (1 refer (iod_device_tab.n_devices)) like idte; /* entries for major devices */
27 
28 dcl  idtep ptr;                                             /* major device entry pointer */
29 dcl  1 idte aligned based (idtep),                          /* major device entry */
30 
31 /* static info associated with device from the parms file */
32 
33        2 dev_id char (24),                                  /* major device name */
34        2 comment unaligned like text_offset,                /* comment to apply to the major device */
35        2 attach_name char (32),                             /* channel name or dial id for device attachment */
36        2 attach_type fixed bin,                             /* indicates meaning of attach_name */
37                                                             /* see ATTACH_TYPE_XX in iod_constants.incl.pl1 */
38        2 ctl_attach_name char (32),                         /* channel, dial id, or source for control terminal attachment */
39        2 ctl_attach_type fixed bin,                         /* indicates meaning of ctl_attach_name */
40                                                             /* see CTL_ATTACH_TYPE_XX in iod_constants.incl.pl1 */
41        2 driver_module unaligned like text_offset,          /* offset to pathname of program to drive device */
42        2 head_sheet unaligned like text_offset,             /* offset to name of head_sheet program to use */
43        2 tail_sheet unaligned like text_offset,             /* offset to name of tail_sheet program to use */
44        2 paper_type fixed bin,                              /* -1=default , 1=continuous form, 2=single sheet */
45        2 forms_table unaligned like text_offset,            /* offset to forms table to apply to this queue group */
46        2 forms_validation unaligned like text_offset,       /* offset to name of routine for forms validation */
47        2 font_dir unaligned like text_offset,               /* offset to location of downloadable fonts */
48        2 args unaligned like text_offset,                   /* offset to arguments to driver program */
49        2 first_minor fixed bin,                             /* index of first minor device for this major device */
50        2 last_minor fixed bin,                              /* index of last minor device for this major device */
51 
52 /* dynamic info associated with driver of this device */
53 
54        2 lock bit (36),                                     /* lock id of current driver */
55        2 process_id bit (36);                               /* process id of current driver */
56 
57 dcl  mdtp ptr;
58 dcl  1 minor_device_tab aligned based (mdtp),
59        2 n_minor fixed bin,                                 /* number of minor devices */
60        2 pad fixed bin,
61        2 entries (1 refer (minor_device_tab.n_minor)) like mdte;
62 
63 dcl  mdtep ptr;                                             /* minor device entry pointer */
64 dcl  1 mdte aligned based (mdtep),                          /* minor device entry */
65 
66 /* static info associated with device from the parms file */
67 
68        2 dev_id char (24),                                  /* minor device name */
69        2 comment unaligned like text_offset,                /* comment to apply to the minor device */
70        2 default_form unaligned like text_offset,           /* offset to default -form string for minor device */
71        2 default_dev_class fixed bin,                       /* default device class index */
72        2 major_index fixed bin,                             /* subscript of corresponding major device entry */
73        2 args unaligned like text_offset,                   /* offset to arguments to driver program */
74 
75 /* dynamic info associated with driver of this device */
76 
77        2 dev_class_index fixed bin,                         /* index of device class table entry */
78        2 current_request fixed bin (18),                    /* offset of current request descriptor */
79        2 driver_ptr ptr,                                    /* ptr to driver status segment */
80        2 active fixed bin,                                  /* 1 if active, 0 if not active */
81        2 seq_id fixed bin (35);                             /* sequence number of last request */
82 
83 /* named constants for attach_type, ctl_attach_type and paper_type are found
84    in iod_constants.incl.pl1 */
85 
86 /* END INCLUDE FILE...iod_device_tab.incl.pl1 */