Я столкнулся со слудующей проблемой при программировании модема: Я использую INT 14H для передачи и получения ответов модема на hayes-команды; после передачи первой команды вторая не воспринимается, если не считать этим же прерыванием ответ на первую. В документации написано, что все ответы модема имеют одинаковое окончание - символ возвра коретки, однако на практике это не подтверждается. Как же можно гарантировано получить все символы ответа? Если модем не подает символов порту, то через две секунды прерывание возвращает в регистр AL символ "`". Если при каждом ответе проверять регистр AL на этот символ то получаются громадные задержки. Будьте добры, помогите решить эту проблему.
Я не уверен, что использование этого прерывания есть легкий подход. Совсем не сложно вручную работать с линией, прерываниями и т.п. Если нужно, могу дать рабочий код под ДОС (си, асм, паскаль). Минимальные функции - получение и посылка блоков байт.
Проблема в не в том, как посылать байты на последовательный порт или их считывать. Дло именно в работе с командами hayes-совместимого модема, спецификой ответов модема на команды.