Вопрос
Модем не определяет сигнал «занято», т.е. проходит больше 30 сек., пока Windows напишет, что «line is busy».
Модем Acorp на чипе Conexant (win-modem PCI). Можно это как-нибудь исправить, например с помощью команд?
Ответ
Во-первых можно попробовать поменять страну, например установить в свойствах модема Чехословакию.
Во-вторых можно заняться правкой реестра:
Открываем реестр: REGEDIT
Hаходим:
[HKEY_LOCAL_MACHINE\ System\ CurrentControlSet\ Services\ Class\ Modem\ 0000\ Country\ 0000]
Редактируем параметр «CADENCE» с 37 до (37+36) байты.
Tone Cadence Parameters
Defined Values
1 Byte Defines number of phases (1,2). Value reflects number of different Phases (pulse) that identifies a tone's cycle. 36 Bytes* Defines cadence for Dialtone
36 Bytes* Defines cadence for Busy
36 Bytes* Defines cadence for Ringback
36 Bytes* Defines cadence for Congestion
*Parameter declared in the following format:
Minimum ON time (ms); Phase 1 — 4 Bytes
Maximum ON time (ms); Phase 1 — 4 Bytes
Minimum OFF time (ms); Phase 1 — 4 Bytes
Maximum OFF time (ms); Phase 1 — 4 Bytes
Minimum ON time (ms); Phase 2 (if used) — 4 Bytes
Maximum ON time (ms); Phase 2 (if used) — 4 Bytes
Minimum OFF time (ms); Phase 2 (if used) — 4 Bytes
Maximum OFF time (ms); Phase 2 (if used) — 4 Bytes
Number of cycles needed for detection (if used) — 4 Bytes
Если непонятно то:
37,38,39,40 байты, например, 2с,01,00,00 — это значит: минимальная длительность первой фазы наличия тона бизи — 300 мс,
41,42,43,44 байты, например, 58,02,00,00 — максимальная длительность 600 мс,
45,46,47,48 байты у тебя 2с,01,00,00 — это значит минимальная длительность первой фазы отсутствия тона бизи 300 мс,
49,50,51,52 байты у тебя 58,02,00,00 — это значит максимальная длительность первой фазы отсутствия тона бизи 600 мс.
Ставим мининальную длительность, например, 150 мс (96,00,00,00) и ловим BUSY. В любом случае, можно и поэкспериментировать :) Примерно определить длительность посылок busy можно, например, так:
Берем секундомер и считаем за какой интервал времени бизи десять раз пикнет. Затем эту длительность делим на 10 (секунд) и получаем что-то типа 500 мс. Еще делим на 2 получаем 250 мс. Естественно операции по правке реестра нужно делать не кривыми руками, иначе загубленная Win гарантирована!!!!
Pavel
Copyright 2000-2004 Сообщество Чайников
Контактная информация