00001 /* 00002 * SpanDSP - a series of DSP components for telephony 00003 * 00004 * fcf.h - ITU T.30 fax control field definitions 00005 * 00006 * Written by Steve Underwood <steveu@coppice.org> 00007 * 00008 * Copyright (C) 2003 Steve Underwood 00009 * 00010 * All rights reserved. 00011 * 00012 * This program is free software; you can redistribute it and/or modify 00013 * it under the terms of the GNU General Public License version 2, as 00014 * published by the Free Software Foundation. 00015 * 00016 * This program is distributed in the hope that it will be useful, 00017 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00019 * GNU General Public License for more details. 00020 * 00021 * You should have received a copy of the GNU General Public License 00022 * along with this program; if not, write to the Free Software 00023 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00024 * 00025 * $Id: t30_fcf.h,v 1.10 2007/04/05 19:20:50 steveu Exp $ 00026 */ 00027 00028 /*! \file */ 00029 00030 #if !defined(_SPANDSP_T30_FCF_H_) 00031 #define _SPANDSP_T30_FCF_H_ 00032 00033 /*! Initial identification messages */ 00034 /*! From the called to the calling terminal. */ 00035 #define T30_DIS 0x80 /*! Digital identification signal */ 00036 #define T30_CSI 0x40 /*! Called subscriber identification */ 00037 #define T30_NSF 0x20 /*! Non-standard facilities */ 00038 00039 /*! Commands to send */ 00040 /*! From a calling terminal wishing to be a receiver, to a called terminal 00041 which is capable of transmitting. */ 00042 #define T30_DTC 0x81 /*! Digital transmit command */ 00043 #define T30_CIG 0x41 /*! Calling subscriber identification */ 00044 #define T30_NSC 0x21 /*! Non-standard facilities command */ 00045 #define T30_PWD 0xC1 /*! Password */ 00046 #define T30_SEP 0xA1 /*! Selective polling */ 00047 #define T30_PSA 0x61 /*! Polled subaddress */ 00048 #define T30_CIA 0xE1 /*! Calling subscriber internet address */ 00049 #define T30_ISP 0x11 /*! Internet selective polling address */ 00050 00051 /*! Commands to receive */ 00052 /*! From a calling terminal wishing to be a transmitter, to a called terminal 00053 which is capable of receiving. */ 00054 #define T30_DCS 0x82 /*! Digital command signal */ 00055 #define T30_TSI 0x42 /*! Transmitting subscriber information */ 00056 #define T30_NSS 0x22 /*! Non-standard facilities set-up */ 00057 #define T30_SUB 0xC2 /*! Subaddress */ 00058 #define T30_SID 0xA2 /*! Sender identification */ 00059 /*! T30_TCF - Training check is a burst of 1.5s of zeros sent using the image modem */ 00060 #define T30_CTC 0x12 /*! Continue to correct */ 00061 #define T30_TSA 0x62 /*! Transmitting subscriber internet address */ 00062 #define T30_IRA 0xE2 /*! Internet routing address */ 00063 00064 /*! Pre-message response signals */ 00065 /*! From the receiver to the transmitter. */ 00066 #define T30_CFR 0x84 /*! Confirmation to receive */ 00067 #define T30_FTT 0x44 /*! Failure to train */ 00068 #define T30_CTR 0xC4 /*! Response for continue to correct */ 00069 #define T30_CSA 0x24 /*! Called subscriber internet address */ 00070 00071 /*! Post-message commands */ 00072 #define T30_EOM 0x8E /*! End of message */ 00073 #define T30_MPS 0x4E /*! Multipage signal */ 00074 #define T30_EOP 0x2E /*! End of procedure */ 00075 #define T30_PRI_EOM 0x9E /*! Procedure interrupt - end of procedure */ 00076 #define T30_PRI_MPS 0x5E /*! Procedure interrupt - multipage signal */ 00077 #define T30_PRI_EOP 0x3E /*! Procedure interrupt - end of procedure */ 00078 #define T30_EOS 0x1E /*! End of selection */ 00079 #define T30_PPS 0xBE /*! Partial page signal */ 00080 #define T30_EOR 0xCE /*! End of retransmission */ 00081 #define T30_RR 0x6E /*! Receiver ready */ 00082 00083 /*! Post-message responses */ 00084 #define T30_MCF 0x8C /*! Message confirmation */ 00085 #define T30_RTP 0xCC /*! Retrain positive */ 00086 #define T30_RTN 0x4C /*! Retrain negative */ 00087 #define T30_PIP 0xAC /*! Procedure interrupt positive */ 00088 #define T30_PIN 0x2C /*! Procedure interrupt negative */ 00089 #define T30_PPR 0xBC /*! Partial page request */ 00090 #define T30_RNR 0xEC /*! Receive not ready */ 00091 #define T30_ERR 0x1C /*! Response for end of retransmission */ 00092 #define T30_FDM 0xFC /*! File diagnostics message */ 00093 00094 /*! Other line control signals */ 00095 #define T30_DCN 0xFA /*! Disconnect */ 00096 #define T30_CRP 0x1A /*! Command repeat */ 00097 #define T30_FNV 0xCA /*! Field not valid */ 00098 #define T30_TNR 0xEA /*! Transmit not ready */ 00099 #define T30_TR 0x6A /*! Transmit ready */ 00100 #define T30_PID 0x6C /*! Procedure interrupt disconnect */ 00101 00102 /*! Something only use as a secondary value in error correcting mode */ 00103 #define T30_NULL 0x00 /*! Nothing to say */ 00104 00105 /*! Information frame types used for error correction mode, in T.4 */ 00106 #define T4_FCD 0x06 /*! Facsimile coded data */ 00107 #define T4_RCP 0x86 /*! Return to control for partial page */ 00108 00109 #endif 00110 /*- End of file ------------------------------------------------------------*/