annotate defs/pipedefs.l2v3 @ 489:c9cad71c4605

runb.asm now incorporates both 6809 and 6309 versions, Makefile reflects change
author boisy
date Wed, 09 Oct 2002 14:44:30 +0000
parents c07686556109
children
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 opt -l
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
6 ttl OS9 Level 2 Pipe Definitions
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
8 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
9 * Copyright 1988 by Microware Systems Corporation
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
10 * All Rights Reserved
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
11 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
12 * Named pipe equates by Burke & Burke.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
13 * All rights assigned to Microware Systems Corporation.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
14 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
15 * This file contains proprietary information of Microware Systems
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
16 * Corporation. Persons accessing this file will be held strictly
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
17 * accountable for their use of the information herein.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
18 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
19
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
20 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
21 * OS9 Level 2 Pipe Definitions
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
22 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
23 * Modification History
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
24 * --------------------
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
25 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
26 * Date Who Description
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
27 * -------- --- -----------------------------------------
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
28 * 12/03/88 cjb Coded from new PIPEMAN comments
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
29 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
30
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
31 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
32 * IOMan equates duplicated for PipeMan use
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
33 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
34
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
35 NPATHS set 16 ;Maximum local paths per task -- must match IOMan
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
36 NameMax set 29 ;Maximum length of a file name
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
37
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
38 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
39 * Device Driver Static Storage Layout
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
40 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
41 org V.User
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
42 V.List rmb 2 ;Pointer to 1st pipe's pipe buffer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
43 PManMem equ . ;Device driver memory (drive table equivalent)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
44
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
45 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
46 * Pipe Buffer Data Structure
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
47 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
48 org 0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
49 PP.PD rmb 2 ;Pointer to shared path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
50 PP.Next rmb 2 ;Pointer to next pipe buffer in system map
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
51 PP.Prev rmb 2 ;Pointer to previous pipe buffer in system map
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
52 PP.Rsrv rmb 2 ;Reserved
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
53 PP.Data equ . ;Data buffer begins at this offset
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
54
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
55 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
56 * Unique Path Descriptor Variables
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
57 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
58 org PD.FST
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
59 *** PP.Read must have bit 4 clear; PP.Writ must be PP.Read XOR 4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
60 PD.Read equ .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
61 PD.RPID rmb 1 ;Process ID of reader waiting on signal
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
62 PD.RCT rmb 1 ;Number of blocked readers
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
63 PD.RSIG rmb 1 ;Signal to send reader
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
64 PD.REOR rmb 1 ;Read EOR character
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
65 PD.Writ equ .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
66 PD.WPID rmb 1 ;Process ID of writer waiting on signal
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
67 PD.WCT rmb 1 ;Number of blocked writers
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
68 PD.WSIG rmb 1 ;Signal to send writer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
69 PD.WEOR rmb 1 ;Write EOR character (dummy)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
70 *** End of special section
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
71 PD.End rmb 2 ;Pointer to end of pipe buffer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
72 PD.NxtI rmb 2 ;Next in pointer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
73 PD.NxtO rmb 2 ;Next out pointer
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
74 PD.RFlg rmb 1 ;"Ready" flag
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
75 PD.Wrtn rmb 1 ;"Written" flag
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
76 PD.BCnt rmb 2 ;# queue elements currently bufered
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
77 PD.Own rmb 1 ;Process ID of pipe original creator
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
78 PD.Keep rmb 1 ;Non-zero if pipe has been kept open artificailly
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
79 PD.QSiz rmb 2 ;Max. elements in queue (copied from OPT section)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
80
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
81 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
82 * Path descriptor option section
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
83 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
84 * Note that PD.Name overlaps with the last byte of PD.ECnt.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
85 * PD.ECnt is copied to PD.QSiz as part of OPEN or CREATE,
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
86 * to make room for the pipe name.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
87 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
88 org (PD.OPT+1)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
89 PD.ESiz rmb 1 ;Size of each queue element
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
90 PD.ECnt rmb 2 ;Max. elements in queue (initial position)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
91 org (PD.OPT+3)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
92 PD.Name rmb NameMax ;Name buffer for named pipe.
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
93
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
94 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
95 * Device Descriptor definitions
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
96 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
97 IT.PDC equ $12 ;Pipe device class (like IT.DTP, IT.DVC)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
98 org IT.PDC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
99 rmb 1 ;Leave room for device class
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
100 IT.ESiz rmb 1 ;Size of each queue element
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
101 IT.ECnt rmb 2 ;Max. elements in queue (initial position)
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
102
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
103 * End of pipedefs
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
104
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
105 opt l
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
106
373
c07686556109 Added ifeq statements at top to allow for multiple use's of same def
boisy
parents: 0
diff changeset
107 endc
c07686556109 Added ifeq statements at top to allow for multiple use's of same def
boisy
parents: 0
diff changeset
108