The Properties entry contains the binary properties structure that Unimodem requires in order to respond to the GetCommProperties API.
Eight DWORD hexadecimal values are used. For example,
HKR,, Properties, 1, 80,01,00,00, ff,00,00,00, ff,00,00,00, 07,00,00,00, 0f,00,00,00, f7,03,00,00, 00,c2,01,00, 40,38,00,00
The Profile Calculator tool can be used to create this value.
The Properties entry can be thought of as a C structure, as follows:
typedef struct ModemProp { DWORD DialOptions; // bitmap of supported options DWORD CallSetupFailTimeout; // Maximum value in seconds DWORD InactivityTimeout; // Maximum value in units // specified by InactivityScale DWORD SpeakerVolume; // bitmap of supported values DWORD SpeakerMode; // bitmap of supported values DWORD ModemOptions; // bitmap of supported values DWORD MaxDTERate; // Maximum value in bit/s DWORD MaxDCERate; // Maximum value in bit/s } ModemProp
The DialOptions DWORD is a bit vector of the embedded commands that the modem supports in dial commands:
DIALOPTION_DIALBILLING | 0x00000040 | Supports wait for bong "$" |
DIALOPTION_DIALQUIET | 0x00000080 | Supports wait for quiet "@" |
DIALOPTION_DIALDIALTONE | 0x00000100 | Supports wait for dial tone "W" |
These characters ('&', '@', 'W') cannot be changed. If they are not the same for the modem, these settings can not be used at all. For example, if the modem supports "Wait for bong tone", but uses '!' instead of '&', it must not set DIALOPTION_DIALBILLING, and Unimodem will proceed as if it does not support "Wait for bong tone".
A description of the other elements in the Modem Properties structure follows.
CallSetupFailTimeout | This is the maximum value that can be set for the call setup timer. The call setup time is the delay between dialing and responding to an incoming carrier signal after initial connection. If the modem does not detect a carrier within this time, the modem hangs up. If the modem does not have this feature, set the value to 0. |
See also Settings, CallSetupFailTimer registry entry documenation. | |
InactivityTimeout | This is the maximum value that can be set for the data inactivity timer. The Inactivity timeout is the period of data inactivity, while on-line, after which the modem hangs up. If the modem does not have this feature, set the value to 0. |
To convert to the maximum value in seconds, multiply this number by the value in InactivityScale. | |
See also Settings, InactivityTimeout registry entry documentation. | |
SpeakerVolume | This is a bit vector of possible speaker volume settings |
Supports low speaker volume | 0x00000001 |
Supports med speaker volume | 0x00000002 |
Supports high speaker volume | 0x00000004 |
See also corresponding Settings, SpeakerVolume_XXX registry settings.
SpeakerMode | This is a bit vector of possible speaker mode settings. |
Supports speaker mode off | 0x00000001 |
Supports speaker mode dial | 0x00000002 |
Supports speaker mode on | 0x00000004 |
Supports speaker mode setup | 0x00000008 |
See also corresponding Settings, SpeakerMode_XXX registry settings. | |
ModemOptions | This is a bit vector of settings that can be changed using lineSetDevConfig. |
0x00000001 | Supports enabling/disabling of data compression negotiation |
0x00000002 | Supports enabling/disabling of error control protocol negotiation |
0x00000004 | Supports enabling/disabling of forced error control |
0x00000008 | Supports enabling/disabling of a cellular protocol |
0x00000010 | Supports enabling/disabling of hardware flow control |
0x00000020 | Supports enabling/disabling of software flow control |
0x00000040 | Supports CCITT/Bell toggling |
0x00000080 | Supports enabling/disabling of speed negotiation |
0x00000100 | Supports tone and pulse dialing |
0x00000200 | Supports blind dialing |
0x00000400 | Supports CCITT V.21-V.22/CCITT V.23 toggling |
See also corresponding Settings, ErrorControl; Settings, FlowControl; Settings, Compression; Setting, Modulation; Settings, SpeedNegotiation; Settings, Pulse; Settings, Tone; Settings, Blind registry entry documentation.
MaxDTERate | The maximum data rate supported between the modem and the computer. |
MaxDCERate: | The maximum data transmission speed modem to modem. |
See also Registry Entry Name