Mercurial > hg > Members > kono > nitros9-code
view defs/pipedefs @ 1933:1e312b144f4d
Major changes:
CCIO,CC3IO are now VTIO
GrfInt is now CoGrf
WindInt is now CoWin
VDGInt (L2), CO32 (L1) is now CoVDG
CO51 (L1) is now CoHR
CO80 (L1) is now CoWP
All files referencing these have been changed
author | boisy |
---|---|
date | Sat, 26 Nov 2005 21:31:29 +0000 |
parents | 8d4b5ee1cee4 |
children | e396d4f24b27 |
line wrap: on
line source
IFNE PIPEDEFS-1 PIPEDEFS set 1 ******************************************************************** * PipeDefs - Pipe File Manager Definitions * * $Id$ * * Edt/Rev YYYY/MM/DD Modified by * Comment * ------------------------------------------------------------------ * 1988/12/03 Chris J. Burke * Coded from new PIPEMAN comments. nam PipeDefs ttl Pipe File Manager Definitions * * IOMan equates duplicated for PipeMan use * NPATHS set 16 ;Maximum local paths per task -- must match IOMan NameMax set 29 ;Maximum length of a file name * * Device Driver Static Storage Layout * org V.User V.List rmb 2 ;Pointer to 1st pipe's pipe buffer PManMem equ . ;Device driver memory (drive table equivalent) * * Pipe Buffer Data Structure * org 0 PP.PD rmb 2 ;Pointer to shared path descriptor PP.Next rmb 2 ;Pointer to next pipe buffer in system map PP.Prev rmb 2 ;Pointer to previous pipe buffer in system map PP.Rsrv rmb 2 ;Reserved PP.Data equ . ;Data buffer begins at this offset * * Unique Path Descriptor Variables * org PD.FST *** PP.Read must have bit 4 clear; PP.Writ must be PP.Read XOR 4 PD.Read equ . PD.RPID rmb 1 ;Process ID of reader waiting on signal PD.RCT rmb 1 ;Number of blocked readers PD.RSIG rmb 1 ;Signal to send reader PD.REOR rmb 1 ;Read EOR character PD.Writ equ . PD.WPID rmb 1 ;Process ID of writer waiting on signal PD.WCT rmb 1 ;Number of blocked writers PD.WSIG rmb 1 ;Signal to send writer PD.WEOR rmb 1 ;Write EOR character (dummy) *** End of special section PD.End rmb 2 ;Pointer to end of pipe buffer PD.NxtI rmb 2 ;Next in pointer PD.NxtO rmb 2 ;Next out pointer PD.RFlg rmb 1 ;"Ready" flag PD.Wrtn rmb 1 ;"Written" flag PD.BCnt rmb 2 ;# queue elements currently bufered PD.Own rmb 1 ;Process ID of pipe original creator PD.Keep rmb 1 ;Non-zero if pipe has been kept open artificailly PD.QSiz rmb 2 ;Max. elements in queue (copied from OPT section) * * Path descriptor option section * * Note that PD.Name overlaps with the last byte of PD.ECnt. * PD.ECnt is copied to PD.QSiz as part of OPEN or CREATE, * to make room for the pipe name. * org (PD.OPT+1) PD.ESiz rmb 1 ;Size of each queue element PD.ECnt rmb 2 ;Max. elements in queue (initial position) IFGT Level-1 org (PD.OPT+3) PD.Name rmb NameMax ENDC * * Device Descriptor definitions * IT.PDC equ $12 ;Pipe device class (like IT.DTP, IT.DVC) org IT.PDC rmb 1 ;Leave room for device class IT.ESiz rmb 1 ;Size of each queue element IT.ECnt rmb 2 ;Max. elements in queue (initial position) * End of pipedefs ENDC