spandsp  0.0.6
t30_fcf.h
Go to the documentation of this file.
1 /*
2  * SpanDSP - a series of DSP components for telephony
3  *
4  * t30_fcf.h - ITU T.30 fax control field definitions
5  *
6  * Written by Steve Underwood <steveu@coppice.org>
7  *
8  * Copyright (C) 2003 Steve Underwood
9  *
10  * All rights reserved.
11  *
12  * This program is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU Lesser General Public License version 2.1,
14  * as published by the Free Software Foundation.
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public
22  * License along with this program; if not, write to the Free Software
23  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24  */
25 
26 /*! \file */
27 
28 #if !defined(_SPANDSP_T30_FCF_H_)
29 #define _SPANDSP_T30_FCF_H_
30 
31 enum
32 {
33  /*! Initial identification messages */
34  /*! From the called to the calling terminal. */
35  T30_DIS = 0x80, /*! [0000 0001] Digital identification signal */
36  T30_CSI = 0x40, /*! [0000 0010] Called subscriber identification */
37  T30_NSF = 0x20, /*! [0000 0100] Non-standard facilities */
38 
39  /*! Commands to send */
40  /*! From a calling terminal wishing to be a receiver, to a called terminal
41  which is capable of transmitting. */
42  T30_DTC = 0x81, /*! [1000 0001] Digital transmit command */
43  T30_CIG = 0x41, /*! [1000 0010] Calling subscriber identification */
44  T30_NSC = 0x21, /*! [1000 0100] Non-standard facilities command */
45  T30_PWD = 0xC1, /*! [1000 0011] Password */
46  T30_SEP = 0xA1, /*! [1000 0101] Selective polling */
47  T30_PSA = 0x61, /*! [1000 0110] Polled subaddress */
48  T30_CIA = 0xE1, /*! [1000 0111] Calling subscriber internet address */
49  T30_ISP = 0x11, /*! [1000 1000] Internet selective polling address */
50 
51  /*! Commands to receive */
52  /*! From a calling terminal wishing to be a transmitter, to a called terminal
53  which is capable of receiving. */
54  T30_DCS = 0x82, /*! [X100 0001] Digital command signal */
55  T30_TSI = 0x42, /*! [X100 0010] Transmitting subscriber information */
56  T30_NSS = 0x22, /*! [X100 0100] Non-standard facilities set-up */
57  T30_SUB = 0xC2, /*! [X100 0011] Sub-address */
58  T30_SID = 0xA2, /*! [X100 0101] Sender identification */
59  /*! T30_TCF - Training check is a burst of 1.5s of zeros sent using the image modem */
60  T30_CTC = 0x12, /*! [X100 1000] Continue to correct */
61  T30_TSA = 0x62, /*! [X100 0110] Transmitting subscriber internet address */
62  T30_IRA = 0xE2, /*! [X100 0111] Internet routing address */
63 
64  /*! Pre-message response signals */
65  /*! From the receiver to the transmitter. */
66  T30_CFR = 0x84, /*! [X010 0001] Confirmation to receive */
67  T30_FTT = 0x44, /*! [X010 0010] Failure to train */
68  T30_CTR = 0xC4, /*! [X010 0011] Response for continue to correct */
69  T30_CSA = 0x24, /*! [X010 0100] Called subscriber internet address */
70 
71  /*! Post-message commands */
72  T30_EOM = 0x8E, /*! [X111 0001] End of message */
73  T30_MPS = 0x4E, /*! [X111 0010] Multipage signal */
74  T30_EOP = 0x2E, /*! [X111 0100] End of procedure */
75  T30_PRI_EOM = 0x9E, /*! [X111 1001] Procedure interrupt - end of procedure */
76  T30_PRI_MPS = 0x5E, /*! [X111 1010] Procedure interrupt - multipage signal */
77  T30_PRI_EOP = 0x3E, /*! [X111 1100] Procedure interrupt - end of procedure */
78  T30_EOS = 0x1E, /*! [X111 1000] End of selection */
79  T30_PPS = 0xBE, /*! [X111 1101] Partial page signal */
80  T30_EOR = 0xCE, /*! [X111 0011] End of retransmission */
81  T30_RR = 0x6E, /*! [X111 0110] Receiver ready */
82 
83  /*! Post-message responses */
84  T30_MCF = 0x8C, /*! [X011 0001] Message confirmation */
85  T30_RTP = 0xCC, /*! [X011 0011] Retrain positive */
86  T30_RTN = 0x4C, /*! [X011 0010] Retrain negative */
87  T30_PIP = 0xAC, /*! [X011 0101] Procedure interrupt positive */
88  T30_PIN = 0x2C, /*! [X011 0100] Procedure interrupt negative */
89  T30_PPR = 0xBC, /*! [X011 1101] Partial page request */
90  T30_RNR = 0xEC, /*! [X011 0111] Receive not ready */
91  T30_ERR = 0x1C, /*! [X011 1000] Response for end of retransmission */
92  T30_FDM = 0xFC, /*! [X011 1111] File diagnostics message */
93 
94  /*! Other line control signals */
95  T30_DCN = 0xFA, /*! [X101 1111] Disconnect */
96  T30_CRP = 0x1A, /*! [X101 1000] Command repeat */
97  T30_FNV = 0xCA, /*! [X101 0011] Field not valid */
98  T30_TNR = 0xEA, /*! [X101 0111] Transmitter not ready */
99  T30_TR = 0x6A, /*! [X101 0110] Transmitter ready */
100  T30_TK = 0x4B, /*! [1101 0010] Transmitter keys */
101  T30_RK = 0x4A, /*! [0101 0010] Receiver keys */
102  T30_PSS = 0x1F, /*! [1111 1000] Present signature signal (used only as FCF2) */
103  T30_DES = 0xA0, /*! [0000 0101] Digital extended signal */
104  T30_DEC = 0x93, /*! [1100 1001] Digital extended command */
105  T30_DER = 0x53, /*! [1100 1010] Digital extended request */
106  T30_DTR = 0x11, /*! [1000 1000] Digital turnaround request (conflicts with ISP) */
107  T30_DNK = 0x9A, /*! [X101 1001] Digital not acknowledge */
108  T30_PID = 0x6C, /*! [X011 0110] Procedure interrupt disconnect */
109  T30_SPI = 0x10, /*! [0000 1000] Security page indicator */
110  T30_SPT = 0x80, /*! [0000 0001] Security page type */
111 
112  /*! Something only use as a secondary value in error correcting mode */
113  T30_NULL = 0x00, /*! [0000 0000] Nothing to say */
114 
115  /*! Information frame types used for error correction mode, in T.4 */
116  T4_FCD = 0x06, /*! [0110 0000] Facsimile coded data */
117  T4_RCP = 0x86 /*! [0110 0001] Return to control for partial page */
118 };
119 
120 #endif
121 /*- End of file ------------------------------------------------------------*/
Definition: t30_fcf.h:58
Definition: t30_fcf.h:116
Definition: t30_fcf.h:100
Definition: t30_fcf.h:92
Definition: t30_fcf.h:78
Definition: t30_fcf.h:90
Definition: t30_fcf.h:108
Definition: t30_fcf.h:76
Definition: t30_fcf.h:96
Definition: t30_fcf.h:66
Definition: t30_fcf.h:74
Definition: t30_fcf.h:103
Definition: t30_fcf.h:107
Definition: t30_fcf.h:42
Definition: t30_fcf.h:98
Definition: t30_fcf.h:97
Definition: t30_fcf.h:56
Definition: t30_fcf.h:104
Definition: t30_fcf.h:45
Definition: t30_fcf.h:106
Definition: t30_fcf.h:62
Definition: t30_fcf.h:54
Definition: t30_fcf.h:67
Definition: t30_fcf.h:68
Definition: t30_fcf.h:44
Definition: t30_fcf.h:109
Definition: t30_fcf.h:89
Definition: t30_fcf.h:86
Definition: t30_fcf.h:91
Definition: t30_fcf.h:117
Definition: t30_fcf.h:35
Definition: t30_fcf.h:110
Definition: t30_fcf.h:88
Definition: t30_fcf.h:72
Definition: t30_fcf.h:87
Definition: t30_fcf.h:61
Definition: t30_fcf.h:80
Definition: t30_fcf.h:75
Definition: t30_fcf.h:48
Definition: t30_fcf.h:46
Definition: t30_fcf.h:73
Definition: t30_fcf.h:43
Definition: t30_fcf.h:57
Definition: t30_fcf.h:36
Definition: t30_fcf.h:69
Definition: t30_fcf.h:55
Definition: t30_fcf.h:47
Definition: t30_fcf.h:113
Definition: t30_fcf.h:49
Definition: t30_fcf.h:101
Definition: t30_fcf.h:85
Definition: t30_fcf.h:102
Definition: t30_fcf.h:77
Definition: t30_fcf.h:99
Definition: t30_fcf.h:95
Definition: t30_fcf.h:105
Definition: t30_fcf.h:37
Definition: t30_fcf.h:60
Definition: t30_fcf.h:84
Definition: t30_fcf.h:79
Definition: t30_fcf.h:81