annotate defs/pipedefs @ 497:910b1bd03739

Fixed makefile error, wrapped IFNE H6309 around gshell 6309 code
author boisy
date Wed, 09 Oct 2002 15:33:11 +0000
parents c07686556109
children 6f1799317d2b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
373
c07686556109 Added ifeq statements at top to allow for multiple use's of same def
boisy
parents: 0
diff changeset
1 ifeq PIPEDEFS
c07686556109 Added ifeq statements at top to allow for multiple use's of same def
boisy
parents: 0
diff changeset
2
c07686556109 Added ifeq statements at top to allow for multiple use's of same def
boisy
parents: 0
diff changeset
3 PIPEDEFS set 1
c07686556109 Added ifeq statements at top to allow for multiple use's of same def
boisy
parents: 0
diff changeset
4
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
5 nam PipeDefs
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
6 ttl OS-9 Pipe Definitions
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
8 * OS-9 Pipe Definitions
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
9 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
10 * IOMan equates duplicated for PipeMan use
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
11 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
12
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
13 NPATHS set 16 ;Maximum local paths per task -- must match IOMan
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
14 NameMax set 29 ;Maximum length of a file name
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
15
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
16 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
17 * Device Driver Static Storage Layout
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
18 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
19 org V.User
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
20 V.List rmb 2 ;Pointer to 1st pipe's pipe buffer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
21 PManMem equ . ;Device driver memory (drive table equivalent)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
22
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
23 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
24 * Pipe Buffer Data Structure
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
25 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
26 org 0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
27 PP.PD rmb 2 ;Pointer to shared path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
28 PP.Next rmb 2 ;Pointer to next pipe buffer in system map
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
29 PP.Prev rmb 2 ;Pointer to previous pipe buffer in system map
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
30 PP.Rsrv rmb 2 ;Reserved
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
31 PP.Data equ . ;Data buffer begins at this offset
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
32
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
33 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
34 * Unique Path Descriptor Variables
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
35 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
36 org PD.FST
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
37 *** PP.Read must have bit 4 clear; PP.Writ must be PP.Read XOR 4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
38 PD.Read equ .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
39 PD.RPID rmb 1 ;Process ID of reader waiting on signal
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
40 PD.RCT rmb 1 ;Number of blocked readers
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
41 PD.RSIG rmb 1 ;Signal to send reader
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
42 PD.REOR rmb 1 ;Read EOR character
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
43 PD.Writ equ .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
44 PD.WPID rmb 1 ;Process ID of writer waiting on signal
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
45 PD.WCT rmb 1 ;Number of blocked writers
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
46 PD.WSIG rmb 1 ;Signal to send writer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
47 PD.WEOR rmb 1 ;Write EOR character (dummy)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
48 *** End of special section
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
49 PD.End rmb 2 ;Pointer to end of pipe buffer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
50 PD.NxtI rmb 2 ;Next in pointer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
51 PD.NxtO rmb 2 ;Next out pointer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
52 PD.RFlg rmb 1 ;"Ready" flag
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
53 PD.Wrtn rmb 1 ;"Written" flag
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
54 PD.BCnt rmb 2 ;# queue elements currently bufered
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
55 PD.Own rmb 1 ;Process ID of pipe original creator
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
56 PD.Keep rmb 1 ;Non-zero if pipe has been kept open artificailly
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
57 PD.QSiz rmb 2 ;Max. elements in queue (copied from OPT section)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
58
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
59 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
60 * Path descriptor option section
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
61 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
62 * Note that PD.Name overlaps with the last byte of PD.ECnt.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
63 * PD.ECnt is copied to PD.QSiz as part of OPEN or CREATE,
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
64 * to make room for the pipe name.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
65 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
66 org (PD.OPT+1)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
67 PD.ESiz rmb 1 ;Size of each queue element
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
68 PD.ECnt rmb 2 ;Max. elements in queue (initial position)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
69
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
70 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
71 * Device Descriptor definitions
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
72 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
73 IT.PDC equ $12 ;Pipe device class (like IT.DTP, IT.DVC)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
74 org IT.PDC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
75 rmb 1 ;Leave room for device class
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
76 IT.ESiz rmb 1 ;Size of each queue element
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
77 IT.ECnt rmb 2 ;Max. elements in queue (initial position)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
78
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
79 * End of pipedefs
373
c07686556109 Added ifeq statements at top to allow for multiple use's of same def
boisy
parents: 0
diff changeset
80 endc
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
81