hc
2023-05-26 a23f51ed7a39e452c1037343a84d7db1ca2c5bd7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
 
/*
 *
 Copyright (c) Eicon Networks, 2002.
 *
 This source file is supplied for the use with
 Eicon Networks range of DIVA Server Adapters.
 *
 Eicon File Revision :    2.1
 *
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 2, or (at your option)
 any later version.
 *
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY OF ANY KIND WHATSOEVER INCLUDING ANY
 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 See the GNU General Public License for more details.
 *
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 *
 */
struct pr_ram {
   word NextReq;         /* pointer to next Req Buffer               */
   word NextRc;          /* pointer to next Rc Buffer                */
   word NextInd;         /* pointer to next Ind Buffer               */
   byte ReqInput;        /* number of Req Buffers sent               */
   byte ReqOutput;       /* number of Req Buffers returned           */
   byte ReqReserved;     /* number of Req Buffers reserved           */
   byte Int;             /* ISDN-P interrupt                         */
   byte XLock;           /* Lock field for arbitration               */
   byte RcOutput;        /* number of Rc buffers received            */
   byte IndOutput;       /* number of Ind buffers received           */
   byte IMask;           /* Interrupt Mask Flag                      */
   byte Reserved1[2];    /* reserved field, do not use               */
   byte ReadyInt;        /* request field for ready interrupt        */
   byte Reserved2[12];   /* reserved field, do not use               */
   byte InterfaceType;   /* interface type 1=16K interface           */
   word Signature;       /* ISDN-P initialized indication            */
   byte B[1];            /* buffer space for Req,Ind and Rc          */
};
typedef struct {
   word next;
   byte Req;
   byte ReqId;
   byte ReqCh;
   byte Reserved1;
   word Reference;
   byte Reserved[8];
   PBUFFER XBuffer;
} REQ;
typedef struct {
   word next;
   byte Rc;
   byte RcId;
   byte RcCh;
   byte Reserved1;
   word Reference;
   byte Reserved2[8];
} RC;
typedef struct {
   word next;
   byte Ind;
   byte IndId;
   byte IndCh;
   byte MInd;
   word MLength;
   word Reference;
   byte RNR;
   byte Reserved;
   dword Ack;
   PBUFFER RBuffer;
} IND;