source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/mcx.h@ 1186

Last change on this file since 1186 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 12.2 KB
RevLine 
[1166]1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _MCX_H_
7#define _MCX_H_
8
9typedef struct _MODEMDEVCAPS {
10 DWORD dwActualSize;
11 DWORD dwRequiredSize;
12 DWORD dwDevSpecificOffset;
13 DWORD dwDevSpecificSize;
14 DWORD dwModemProviderVersion;
15 DWORD dwModemManufacturerOffset;
16 DWORD dwModemManufacturerSize;
17 DWORD dwModemModelOffset;
18 DWORD dwModemModelSize;
19 DWORD dwModemVersionOffset;
20 DWORD dwModemVersionSize;
21 DWORD dwDialOptions;
22 DWORD dwCallSetupFailTimer;
23 DWORD dwInactivityTimeout;
24 DWORD dwSpeakerVolume;
25 DWORD dwSpeakerMode;
26 DWORD dwModemOptions;
27 DWORD dwMaxDTERate;
28 DWORD dwMaxDCERate;
29 BYTE abVariablePortion[1];
30} MODEMDEVCAPS,*PMODEMDEVCAPS,*LPMODEMDEVCAPS;
31
32typedef struct _MODEMSETTINGS {
33 DWORD dwActualSize;
34 DWORD dwRequiredSize;
35 DWORD dwDevSpecificOffset;
36 DWORD dwDevSpecificSize;
37 DWORD dwCallSetupFailTimer;
38 DWORD dwInactivityTimeout;
39 DWORD dwSpeakerVolume;
40 DWORD dwSpeakerMode;
41 DWORD dwPreferredModemOptions;
42 DWORD dwNegotiatedModemOptions;
43 DWORD dwNegotiatedDCERate;
44 BYTE abVariablePortion [1];
45} MODEMSETTINGS,*PMODEMSETTINGS,*LPMODEMSETTINGS;
46
47#define DIALOPTION_BILLING 0x00000040
48#define DIALOPTION_QUIET 0x00000080
49#define DIALOPTION_DIALTONE 0x00000100
50
51#define MDMVOLFLAG_LOW 0x00000001
52#define MDMVOLFLAG_MEDIUM 0x00000002
53#define MDMVOLFLAG_HIGH 0x00000004
54
55#define MDMVOL_LOW 0x00000000
56#define MDMVOL_MEDIUM 0x00000001
57#define MDMVOL_HIGH 0x00000002
58
59#define MDMSPKRFLAG_OFF 0x00000001
60#define MDMSPKRFLAG_DIAL 0x00000002
61#define MDMSPKRFLAG_ON 0x00000004
62#define MDMSPKRFLAG_CALLSETUP 0x00000008
63
64#define MDMSPKR_OFF 0x00000000
65#define MDMSPKR_DIAL 0x00000001
66#define MDMSPKR_ON 0x00000002
67#define MDMSPKR_CALLSETUP 0x00000003
68
69#define MDM_COMPRESSION 0x00000001
70#define MDM_ERROR_CONTROL 0x00000002
71#define MDM_FORCED_EC 0x00000004
72#define MDM_CELLULAR 0x00000008
73#define MDM_FLOWCONTROL_HARD 0x00000010
74#define MDM_FLOWCONTROL_SOFT 0x00000020
75#define MDM_CCITT_OVERRIDE 0x00000040
76#define MDM_SPEED_ADJUST 0x00000080
77#define MDM_TONE_DIAL 0x00000100
78#define MDM_BLIND_DIAL 0x00000200
79#define MDM_V23_OVERRIDE 0x00000400
80#define MDM_DIAGNOSTICS 0x00000800
81
82#define MDM_MASK_BEARERMODE 0x0000f000
83#define MDM_SHIFT_BEARERMODE 12
84
85#define MDM_MASK_PROTOCOLID 0x000f0000
86#define MDM_SHIFT_PROTOCOLID 16
87
88#define MDM_MASK_PROTOCOLDATA 0x0ff00000
89#define MDM_SHIFT_PROTOCOLDATA 20
90
91#define MDM_MASK_PROTOCOLINFO (MDM_MASK_PROTOCOLID|MDM_MASK_PROTOCOLDATA)
92#define MDM_SHIFT_PROTOCOLINFO MDM_SHIFT_PROTOCOLID
93
94#define MDM_MASK_EXTENDEDINFO (MDM_MASK_BEARERMODE|MDM_MASK_PROTOCOLINFO)
95#define MDM_SHIFT_EXTENDEDINFO MDM_SHIFT_BEARERMODE
96
97#define MDM_GET_BEARERMODE(_dwOptions) (((_dwOptions)&MDM_MASK_BEARERMODE) >> MDM_SHIFT_BEARERMODE)
98#define MDM_SET_BEARERMODE(_dwOptions,_bm) (((_dwOptions) &= ~MDM_MASK_BEARERMODE),((_dwOptions) |= (((_bm)<<MDM_SHIFT_BEARERMODE)&MDM_MASK_BEARERMODE)))
99#define MDM_GET_PROTOCOLID(_dwOptions) (((_dwOptions)&MDM_MASK_PROTOCOLID) >> MDM_SHIFT_PROTOCOLID)
100#define MDM_SET_PROTOCOLID(_dwOptions,_prot) (((_dwOptions) &= ~MDM_MASK_PROTOCOLID),((_dwOptions) |= (((_prot)<<MDM_SHIFT_PROTOCOLID)&MDM_MASK_PROTOCOLID)))
101#define MDM_GET_PROTOCOLDATA(_dwOptions) (((_dwOptions)&MDM_MASK_PROTOCOLDATA) >> MDM_SHIFT_PROTOCOLDATA)
102#define MDM_SET_PROTOCOLDATA(_dwOptions,_pd) (((_dwOptions) &= ~MDM_MASK_PROTOCOLDATA),((_dwOptions) |= (((_pd)<<MDM_SHIFT_PROTOCOLDATA)&MDM_MASK_PROTOCOLDATA)))
103#define MDM_GET_PROTOCOLINFO(_dwOptions) ((_dwOptions)&MDM_MASK_PROTOCOLINFO)
104#define MDM_SET_PROTOCOLINFO(_dwOptions,_pinfo) (((_dwOptions) &= ~MDM_MASK_PROTOCOLINFO),((_dwOptions) |= ((_pinfo)&MDM_MASK_PROTOCOLINFO)))
105#define MDM_GEN_PROTOCOLINFO(_pid,_pdata) ((((_pid)<<MDM_SHIFT_PROTOCOLID)&MDM_MASK_PROTOCOLID) |(((_pdata)<<MDM_SHIFT_PROTOCOLDATA)&MDM_MASK_PROTOCOLDATA))
106#define MDM_GET_EXTENDEDINFO(_dwOptions) ((_dwOptions)&MDM_MASK_EXTENDEDINFO)
107#define MDM_SET_EXTENDEDINFO(_dwOptions,_extinfo) (((_dwOptions) &= ~MDM_MASK_EXTENDEDINFO),((_dwOptions) |= ((_extinfo) & MDM_MASK_EXTENDEDINFO)))
108#define MDM_GEN_EXTENDEDINFO(_bearermode,_pinfo) (((_pinfo)&MDM_MASK_PROTOCOLINFO) |(((_bearermode)<<MDM_SHIFT_BEARERMODE)&MDM_MASK_BEARERMODE))
109
110#define MDM_BEARERMODE_ANALOG 0x0
111#define MDM_BEARERMODE_ISDN 0x1
112#define MDM_BEARERMODE_GSM 0x2
113
114#define MDM_PROTOCOLID_DEFAULT 0x0
115#define MDM_PROTOCOLID_HDLCPPP 0x1
116#define MDM_PROTOCOLID_V128 0x2
117#define MDM_PROTOCOLID_X75 0x3
118#define MDM_PROTOCOLID_V110 0x4
119#define MDM_PROTOCOLID_V120 0x5
120#define MDM_PROTOCOLID_AUTO 0x6
121#define MDM_PROTOCOLID_ANALOG 0x7
122#define MDM_PROTOCOLID_GPRS 0x8
123#define MDM_PROTOCOLID_PIAFS 0x9
124
125#define MDM_SHIFT_HDLCPPP_SPEED 0x0
126#define MDM_MASK_HDLCPPP_SPEED 0x7
127
128#define MDM_HDLCPPP_SPEED_DEFAULT 0x0
129#define MDM_HDLCPPP_SPEED_64K 0x1
130#define MDM_HDLCPPP_SPEED_56K 0x2
131
132#define MDM_SHIFT_HDLCPPP_AUTH 0x3
133#define MDM_MASK_HDLCPPP_AUTH (0x7<<3)
134
135#define MDM_HDLCPPP_AUTH_DEFAULT 0x0
136#define MDM_HDLCPPP_AUTH_NONE 0x1
137#define MDM_HDLCPPP_AUTH_PAP 0x2
138#define MDM_HDLCPPP_AUTH_CHAP 0x3
139#define MDM_HDLCPPP_AUTH_MSCHAP 0x4
140
141#define MDM_SHIFT_HDLCPPP_ML 0x6
142#define MDM_MASK_HDLCPPP_ML (0x3<<6)
143
144#define MDM_HDLCPPP_ML_DEFAULT 0x0
145#define MDM_HDLCPPP_ML_NONE 0x1
146#define MDM_HDLCPPP_ML_2 0x2
147
148#define MDM_GEN_HDLCPPP_PROTOCOL_DATA(_speed,_auth,_ml) ((((_speed)<<MDM_SHIFT_HDLCPPP_SPEED)&MDM_MASK_HDLCPPP_SPEED) |(((_auth)<<MDM_SHIFT_HDLCPPP_AUTH)&MDM_MASK_HDLCPPP_AUTH) |(((_ml)<<MDM_SHIFT_HDLCPPP_ML)&MDM_MASK_HDLCPPP_ML))
149
150#define MDM_PROTOCOL_HDLCPPP_64K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_64K,MDM_HDLCPPP_AUTH_DEFAULT,MDM_HDLCPPP_ML_DEFAULT))
151#define MDM_PROTOCOL_HDLCPPP_56K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_56K,MDM_HDLCPPP_AUTH_DEFAULT,MDM_HDLCPPP_ML_DEFAULT))
152#define MDM_PROTOCOL_HDLCPPP_112K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_56K,MDM_HDLCPPP_AUTH_DEFAULT,MDM_HDLCPPP_ML_2))
153#define MDM_PROTOCOL_HDLCPPP_112K_PAP MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_56K,MDM_HDLCPPP_AUTH_PAP,MDM_HDLCPPP_ML_2))
154#define MDM_PROTOCOL_HDLCPPP_112K_CHAP MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_56K,MDM_HDLCPPP_AUTH_CHAP,MDM_HDLCPPP_ML_2))
155#define MDM_PROTOCOL_HDLCPPP_112K_MSCHAP MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_56K,MDM_HDLCPPP_AUTH_MSCHAP,MDM_HDLCPPP_ML_2))
156#define MDM_PROTOCOL_HDLCPPP_128K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_64K,MDM_HDLCPPP_AUTH_DEFAULT,MDM_HDLCPPP_ML_2))
157#define MDM_PROTOCOL_HDLCPPP_128K_PAP MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_64K,MDM_HDLCPPP_AUTH_PAP,MDM_HDLCPPP_ML_2))
158#define MDM_PROTOCOL_HDLCPPP_128K_CHAP MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_64K,MDM_HDLCPPP_AUTH_CHAP,MDM_HDLCPPP_ML_2))
159#define MDM_PROTOCOL_HDLCPPP_128K_MSCHAP MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_HDLCPPP,MDM_GEN_HDLCPPP_PROTOCOL_DATA (MDM_HDLCPPP_SPEED_64K,MDM_HDLCPPP_AUTH_MSCHAP,MDM_HDLCPPP_ML_2))
160
161#define MDM_SHIFT_V120_SPEED 0x0
162#define MDM_MASK_V120_SPEED 0x7
163
164#define MDM_V120_SPEED_DEFAULT 0x0
165#define MDM_V120_SPEED_64K 0x1
166#define MDM_V120_SPEED_56K 0x2
167
168#define MDM_SHIFT_V120_ML 0x6
169#define MDM_MASK_V120_ML (0x3<<6)
170
171#define MDM_V120_ML_DEFAULT 0x0
172#define MDM_V120_ML_NONE 0x1
173#define MDM_V120_ML_2 0x2
174
175#define MDM_GEN_V120_PROTOCOL_DATA(_speed,_ml) ((((_speed)<<MDM_SHIFT_V120_SPEED)&MDM_MASK_V120_SPEED) |(((_ml)<<MDM_SHIFT_V120_ML)&MDM_MASK_V120_ML))
176
177#define MDM_PROTOCOL_V120_64K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V120,MDM_GEN_V120_PROTOCOL_DATA (MDM_V120_SPEED_64K,MDM_V120_ML_NONE))
178#define MDM_PROTOCOL_V120_56K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V120,MDM_GEN_V120_PROTOCOL_DATA (MDM_V120_SPEED_56K,MDM_V120_ML_NONE))
179#define MDM_PROTOCOL_V120_112K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V120,MDM_GEN_V120_PROTOCOL_DATA (MDM_V120_SPEED_56K,MDM_V120_ML_2))
180#define MDM_PROTOCOL_V120_128K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V120,MDM_GEN_V120_PROTOCOL_DATA (MDM_V120_SPEED_64K,MDM_V120_ML_2))
181
182#define MDM_SHIFT_X75_DATA 0x0
183#define MDM_MASK_X75_DATA 0x7
184
185#define MDM_X75_DATA_DEFAULT 0x0
186#define MDM_X75_DATA_64K 0x1
187#define MDM_X75_DATA_128K 0x2
188#define MDM_X75_DATA_T_70 0x3
189#define MDM_X75_DATA_BTX 0x4
190
191#define MDM_GEN_X75_PROTOCOL_DATA(_data) (((_data)<<MDM_SHIFT_X75_DATA)&MDM_MASK_X75_DATA)
192
193#define MDM_PROTOCOL_X75_64K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_X75,MDM_GEN_X75_PROTOCOL_DATA (MDM_X75_DATA_64K))
194#define MDM_PROTOCOL_X75_128K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_X75,MDM_GEN_X75_PROTOCOL_DATA (MDM_X75_DATA_128K))
195#define MDM_PROTOCOL_X75_T_70 MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_X75,MDM_GEN_X75_PROTOCOL_DATA (MDM_X75_DATA_T_70))
196#define MDM_PROTOCOL_X75_BTX MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_X75,MDM_GEN_X75_PROTOCOL_DATA (MDM_X75_DATA_BTX))
197
198#define MDM_SHIFT_V110_SPEED 0x0
199#define MDM_MASK_V110_SPEED 0xf
200
201#define MDM_V110_SPEED_DEFAULT 0x0
202#define MDM_V110_SPEED_1DOT2K 0x1
203#define MDM_V110_SPEED_2DOT4K 0x2
204#define MDM_V110_SPEED_4DOT8K 0x3
205#define MDM_V110_SPEED_9DOT6K 0x4
206#define MDM_V110_SPEED_12DOT0K 0x5
207#define MDM_V110_SPEED_14DOT4K 0x6
208#define MDM_V110_SPEED_19DOT2K 0x7
209#define MDM_V110_SPEED_28DOT8K 0x8
210#define MDM_V110_SPEED_38DOT4K 0x9
211#define MDM_V110_SPEED_57DOT6K 0xA
212
213#define MDM_GEN_V110_PROTOCOL_DATA(_data) (((_data)<<MDM_SHIFT_V110_SPEED)&MDM_MASK_V110_SPEED)
214
215#define MDM_PROTOCOL_V110_1DOT2K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_1DOT2K))
216#define MDM_PROTOCOL_V110_2DOT4K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_2DOT4K))
217#define MDM_PROTOCOL_V110_4DOT8K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_4DOT8K))
218#define MDM_PROTOCOL_V110_9DOT6K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_9DOT6K))
219#define MDM_PROTOCOL_V110_12DOT0K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_12DOT0K))
220#define MDM_PROTOCOL_V110_14DOT4K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_14DOT4K))
221#define MDM_PROTOCOL_V110_19DOT2K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_19DOT2K))
222#define MDM_PROTOCOL_V110_28DOT8K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_28DOT8K))
223#define MDM_PROTOCOL_V110_38DOT4K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_38DOT4K))
224#define MDM_PROTOCOL_V110_57DOT6K MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_V110,MDM_GEN_V110_PROTOCOL_DATA (MDM_V110_SPEED_57DOT6K))
225
226#define MDM_SHIFT_AUTO_SPEED 0x0
227#define MDM_MASK_AUTO_SPEED 0x7
228#define MDM_AUTO_SPEED_DEFAULT 0x0
229
230#define MDM_SHIFT_AUTO_ML 0x6
231#define MDM_MASK_AUTO_ML (0x3<<6)
232#define MDM_AUTO_ML_DEFAULT 0x0
233#define MDM_AUTO_ML_NONE 0x1
234#define MDM_AUTO_ML_2 0x2
235
236#define MDM_GEN_AUTO_PROTOCOL_DATA(_speed,_ml) ((((_speed)<<MDM_SHIFT_AUTO_SPEED)&MDM_MASK_AUTO_SPEED) |(((_ml)<<MDM_SHIFT_AUTO_ML)&MDM_MASK_AUTO_ML))
237
238#define MDM_PROTOCOL_AUTO_1CH MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_AUTO,MDM_GEN_AUTO_PROTOCOL_DATA (MDM_AUTO_SPEED_DEFAULT,MDM_AUTO_ML_NONE))
239#define MDM_PROTOCOL_AUTO_2CH MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_AUTO,MDM_GEN_AUTO_PROTOCOL_DATA (MDM_AUTO_SPEED_DEFAULT,MDM_AUTO_ML_2))
240
241#define MDM_ANALOG_RLP_ON 0x0
242#define MDM_ANALOG_RLP_OFF 0x1
243#define MDM_ANALOG_V34 0x2
244
245#define MDM_GEN_ANALOG_PROTOCOL_DATA(_rlp) (_rlp)
246
247#define MDM_PROTOCOL_ANALOG_RLP MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_ANALOG,MDM_GEN_ANALOG_PROTOCOL_DATA (MDM_ANALOG_RLP_ON))
248#define MDM_PROTOCOL_ANALOG_NRLP MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_ANALOG,MDM_GEN_ANALOG_PROTOCOL_DATA (MDM_ANALOG_RLP_OFF))
249#define MDM_PROTOCOL_ANALOG_V34 MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_ANALOG,MDM_GEN_ANALOG_PROTOCOL_DATA (MDM_ANALOG_V34))
250#define MDM_PROTOCOL_GPRS MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_GPRS,0)
251
252#define MDM_PIAFS_INCOMING 0
253#define MDM_PIAFS_OUTGOING 1
254
255#define MDM_PROTOCOL_PIAFS_INCOMING MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_PIAFS,MDM_PIAFS_INCOMING)
256#define MDM_PROTOCOL_PIAFS_OUTGOING MDM_GEN_PROTOCOLINFO(MDM_PROTOCOLID_PIAFS,MDM_PIAFS_OUTGOING)
257#endif
Note: See TracBrowser for help on using the repository browser.