Mercurial > hg > Members > kono > nitros9-code
annotate defs/pipedefs @ 2642:11e6f408141f
Now properly putting shadow value in place.
author | Boisy Pitre <boisy.pitre@nuance.com> |
---|---|
date | Tue, 28 Feb 2012 23:31:24 -0600 |
parents | e396d4f24b27 |
children |
rev | line source |
---|---|
2024 | 1 IFNE PIPEDEFS-1 |
373
c07686556109
Added ifeq statements at top to allow for multiple use's of same def
boisy
parents:
0
diff
changeset
|
2 |
2024 | 3 PIPEDEFS SET 1 |
373
c07686556109
Added ifeq statements at top to allow for multiple use's of same def
boisy
parents:
0
diff
changeset
|
4 |
1200 | 5 ******************************************************************** |
6 * PipeDefs - Pipe File Manager Definitions | |
516 | 7 * |
1200 | 8 * $Id$ |
516 | 9 * |
1200 | 10 * Edt/Rev YYYY/MM/DD Modified by |
11 * Comment | |
12 * ------------------------------------------------------------------ | |
13 * 1988/12/03 Chris J. Burke | |
14 * Coded from new PIPEMAN comments. | |
516 | 15 |
2024 | 16 NAM PipeDefs |
17 TTL Pipe File Manager Definitions | |
1200 | 18 |
0 | 19 * |
20 * IOMan equates duplicated for PipeMan use | |
21 * | |
22 | |
2024 | 23 NPATHS SET 16 ;Maximum local paths per task -- must match IOMan |
24 NameMax SET 29 ;Maximum length of a file name | |
0 | 25 |
26 * | |
27 * Device Driver Static Storage Layout | |
28 * | |
2024 | 29 ORG V.User |
30 V.List RMB 2 ;Pointer to 1st pipe's pipe buffer | |
31 PManMem EQU . ;Device driver memory (drive table equivalent) | |
0 | 32 |
33 * | |
34 * Pipe Buffer Data Structure | |
35 * | |
2024 | 36 ORG 0 |
37 PP.PD RMB 2 ;Pointer to shared path descriptor | |
38 PP.Next RMB 2 ;Pointer to next pipe buffer in system map | |
39 PP.Prev RMB 2 ;Pointer to previous pipe buffer in system map | |
40 PP.Rsrv RMB 2 ;Reserved | |
41 PP.Data EQU . ;Data buffer begins at this offset | |
0 | 42 |
43 * | |
44 * Unique Path Descriptor Variables | |
45 * | |
2024 | 46 ORG PD.FST |
0 | 47 *** PP.Read must have bit 4 clear; PP.Writ must be PP.Read XOR 4 |
2024 | 48 PD.Read EQU . |
49 PD.RPID RMB 1 ;Process ID of reader waiting on signal | |
50 PD.RCT RMB 1 ;Number of blocked readers | |
51 PD.RSIG RMB 1 ;Signal to send reader | |
52 PD.REOR RMB 1 ;Read EOR character | |
53 PD.Writ EQU . | |
54 PD.WPID RMB 1 ;Process ID of writer waiting on signal | |
55 PD.WCT RMB 1 ;Number of blocked writers | |
56 PD.WSIG RMB 1 ;Signal to send writer | |
57 PD.WEOR RMB 1 ;Write EOR character (dummy) | |
0 | 58 *** End of special section |
2024 | 59 PD.End RMB 2 ;Pointer to end of pipe buffer |
60 PD.NxtI RMB 2 ;Next in pointer | |
61 PD.NxtO RMB 2 ;Next out pointer | |
62 PD.RFlg RMB 1 ;"Ready" flag | |
63 PD.Wrtn RMB 1 ;"Written" flag | |
64 PD.BCnt RMB 2 ;# queue elements currently bufered | |
65 PD.Own RMB 1 ;Process ID of pipe original creator | |
66 PD.Keep RMB 1 ;Non-zero if pipe has been kept open artificailly | |
67 PD.QSiz RMB 2 ;Max. elements in queue (copied from OPT section) | |
0 | 68 |
69 * | |
70 * Path descriptor option section | |
71 * | |
72 * Note that PD.Name overlaps with the last byte of PD.ECnt. | |
73 * PD.ECnt is copied to PD.QSiz as part of OPEN or CREATE, | |
74 * to make room for the pipe name. | |
75 * | |
2024 | 76 ORG (PD.OPT+1) |
77 PD.ESiz RMB 1 ;Size of each queue element | |
78 PD.ECnt RMB 2 ;Max. elements in queue (initial position) | |
79 IFGT Level-1 | |
80 ORG (PD.OPT+3) | |
81 PD.Name RMB NameMax | |
82 ENDC | |
0 | 83 |
84 * | |
85 * Device Descriptor definitions | |
86 * | |
2024 | 87 IT.PDC EQU $12 ;Pipe device class (like IT.DTP, IT.DVC) |
88 ORG IT.PDC | |
89 RMB 1 ;Leave room for device class | |
90 IT.ESiz RMB 1 ;Size of each queue element | |
91 IT.ECnt RMB 2 ;Max. elements in queue (initial position) | |
0 | 92 |
93 * End of pipedefs | |
94 | |
2024 | 95 ENDC |
516 | 96 |