annotate lib/pipedefs.a @ 2593:4c3c19ec3257

Added second vhd drive for MESS version 144 and newer. Will not alter performance with older versions of MESS.
author robertgault
date Sat, 24 Dec 2011 13:01:17 +0000
parents 594d292e1788
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2332
594d292e1788 added pipedefs
boisy
parents:
diff changeset
1 ********************************************************************
594d292e1788 added pipedefs
boisy
parents:
diff changeset
2 * PipeDefs - Pipe File Manager Definitions
594d292e1788 added pipedefs
boisy
parents:
diff changeset
3 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
4 * $Id$
594d292e1788 added pipedefs
boisy
parents:
diff changeset
5 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
6 * Edt/Rev YYYY/MM/DD Modified by
594d292e1788 added pipedefs
boisy
parents:
diff changeset
7 * Comment
594d292e1788 added pipedefs
boisy
parents:
diff changeset
8 * ------------------------------------------------------------------
594d292e1788 added pipedefs
boisy
parents:
diff changeset
9 * 1988/12/03 Chris J. Burke
594d292e1788 added pipedefs
boisy
parents:
diff changeset
10 * Coded from new PIPEMAN comments.
594d292e1788 added pipedefs
boisy
parents:
diff changeset
11
594d292e1788 added pipedefs
boisy
parents:
diff changeset
12 NAM PipeDefs
594d292e1788 added pipedefs
boisy
parents:
diff changeset
13 TTL Pipe File Manager Definitions
594d292e1788 added pipedefs
boisy
parents:
diff changeset
14
594d292e1788 added pipedefs
boisy
parents:
diff changeset
15 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
16 * IOMan equates duplicated for PipeMan use
594d292e1788 added pipedefs
boisy
parents:
diff changeset
17 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
18
594d292e1788 added pipedefs
boisy
parents:
diff changeset
19 NPATHS: SET 16 ;Maximum local paths per task -- must match IOMan
594d292e1788 added pipedefs
boisy
parents:
diff changeset
20 NameMax: SET 29 ;Maximum length of a file name
594d292e1788 added pipedefs
boisy
parents:
diff changeset
21
594d292e1788 added pipedefs
boisy
parents:
diff changeset
22 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
23 * Device Driver Static Storage Layout
594d292e1788 added pipedefs
boisy
parents:
diff changeset
24 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
25 csect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
26 RMB V.USER
594d292e1788 added pipedefs
boisy
parents:
diff changeset
27 V.List: RMB 2 ;Pointer to 1st pipe's pipe buffer
594d292e1788 added pipedefs
boisy
parents:
diff changeset
28 PManMem: EQU * ;Device driver memory (drive table equivalent)
594d292e1788 added pipedefs
boisy
parents:
diff changeset
29 endsect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
30
594d292e1788 added pipedefs
boisy
parents:
diff changeset
31 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
32 * Pipe Buffer Data Structure
594d292e1788 added pipedefs
boisy
parents:
diff changeset
33 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
34 csect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
35 PP.PD: RMB 2 ;Pointer to shared path descriptor
594d292e1788 added pipedefs
boisy
parents:
diff changeset
36 PP.Next: RMB 2 ;Pointer to next pipe buffer in system map
594d292e1788 added pipedefs
boisy
parents:
diff changeset
37 PP.Prev: RMB 2 ;Pointer to previous pipe buffer in system map
594d292e1788 added pipedefs
boisy
parents:
diff changeset
38 PP.Rsrv: RMB 2 ;Reserved
594d292e1788 added pipedefs
boisy
parents:
diff changeset
39 PP.Data: EQU * ;Data buffer begins at this offset
594d292e1788 added pipedefs
boisy
parents:
diff changeset
40 endsect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
41
594d292e1788 added pipedefs
boisy
parents:
diff changeset
42 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
43 * Unique Path Descriptor Variables
594d292e1788 added pipedefs
boisy
parents:
diff changeset
44 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
45 csect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
46 RMB PD.FST
594d292e1788 added pipedefs
boisy
parents:
diff changeset
47 *** PP.Read must have bit 4 clear; PP.Writ must be PP.Read XOR 4
594d292e1788 added pipedefs
boisy
parents:
diff changeset
48 PD.Read: EQU *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
49 PD.RPID: RMB 1 ;Process ID of reader waiting on signal
594d292e1788 added pipedefs
boisy
parents:
diff changeset
50 PD.RCT: RMB 1 ;Number of blocked readers
594d292e1788 added pipedefs
boisy
parents:
diff changeset
51 PD.RSIG: RMB 1 ;Signal to send reader
594d292e1788 added pipedefs
boisy
parents:
diff changeset
52 PD.REOR: RMB 1 ;Read EOR character
594d292e1788 added pipedefs
boisy
parents:
diff changeset
53 PD.Writ: EQU *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
54 PD.WPID: RMB 1 ;Process ID of writer waiting on signal
594d292e1788 added pipedefs
boisy
parents:
diff changeset
55 PD.WCT: RMB 1 ;Number of blocked writers
594d292e1788 added pipedefs
boisy
parents:
diff changeset
56 PD.WSIG: RMB 1 ;Signal to send writer
594d292e1788 added pipedefs
boisy
parents:
diff changeset
57 PD.WEOR: RMB 1 ;Write EOR character (dummy)
594d292e1788 added pipedefs
boisy
parents:
diff changeset
58 *** End of special section
594d292e1788 added pipedefs
boisy
parents:
diff changeset
59 PD.End: RMB 2 ;Pointer to end of pipe buffer
594d292e1788 added pipedefs
boisy
parents:
diff changeset
60 PD.NxtI: RMB 2 ;Next in pointer
594d292e1788 added pipedefs
boisy
parents:
diff changeset
61 PD.NxtO: RMB 2 ;Next out pointer
594d292e1788 added pipedefs
boisy
parents:
diff changeset
62 PD.RFlg: RMB 1 ;"Ready" flag
594d292e1788 added pipedefs
boisy
parents:
diff changeset
63 PD.Wrtn: RMB 1 ;"Written" flag
594d292e1788 added pipedefs
boisy
parents:
diff changeset
64 PD.BCnt: RMB 2 ;# queue elements currently bufered
594d292e1788 added pipedefs
boisy
parents:
diff changeset
65 PD.Own: RMB 1 ;Process ID of pipe original creator
594d292e1788 added pipedefs
boisy
parents:
diff changeset
66 PD.Keep: RMB 1 ;Non-zero if pipe has been kept open artificailly
594d292e1788 added pipedefs
boisy
parents:
diff changeset
67 PD.QSiz: RMB 2 ;Max. elements in queue (copied from OPT section)
594d292e1788 added pipedefs
boisy
parents:
diff changeset
68 endsect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
69
594d292e1788 added pipedefs
boisy
parents:
diff changeset
70 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
71 * Path descriptor option section
594d292e1788 added pipedefs
boisy
parents:
diff changeset
72 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
73 * Note that PD.Name overlaps with the last byte of PD.ECnt.
594d292e1788 added pipedefs
boisy
parents:
diff changeset
74 * PD.ECnt is copied to PD.QSiz as part of OPEN or CREATE,
594d292e1788 added pipedefs
boisy
parents:
diff changeset
75 * to make room for the pipe name.
594d292e1788 added pipedefs
boisy
parents:
diff changeset
76 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
77 csect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
78 RMB (PD.OPT+1)
594d292e1788 added pipedefs
boisy
parents:
diff changeset
79 PD.ESiz: RMB 1 ;Size of each queue element
594d292e1788 added pipedefs
boisy
parents:
diff changeset
80 PD.ECnt: RMB 2 ;Max. elements in queue (initial position)
594d292e1788 added pipedefs
boisy
parents:
diff changeset
81 IFGT Level-1
594d292e1788 added pipedefs
boisy
parents:
diff changeset
82 RMB (PD.OPT+3)-*
594d292e1788 added pipedefs
boisy
parents:
diff changeset
83 PD.Name: RMB NameMax
594d292e1788 added pipedefs
boisy
parents:
diff changeset
84 ENDC
594d292e1788 added pipedefs
boisy
parents:
diff changeset
85 endsect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
86
594d292e1788 added pipedefs
boisy
parents:
diff changeset
87 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
88 * Device Descriptor definitions
594d292e1788 added pipedefs
boisy
parents:
diff changeset
89 *
594d292e1788 added pipedefs
boisy
parents:
diff changeset
90 IT.PDC: EQU $12 ;Pipe device class (like IT.DTP, IT.DVC)
594d292e1788 added pipedefs
boisy
parents:
diff changeset
91 csect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
92 RMB IT.PDC
594d292e1788 added pipedefs
boisy
parents:
diff changeset
93 RMB 1 ;Leave room for device class
594d292e1788 added pipedefs
boisy
parents:
diff changeset
94 IT.ESiz: RMB 1 ;Size of each queue element
594d292e1788 added pipedefs
boisy
parents:
diff changeset
95 IT.ECnt: RMB 2 ;Max. elements in queue (initial position)
594d292e1788 added pipedefs
boisy
parents:
diff changeset
96 endsect
594d292e1788 added pipedefs
boisy
parents:
diff changeset
97