Использование FOSSIL-драйверов
Название FOSSIL является набором первых символов из названий нескольких коммуникационных программ - "Fido/Opus/SEAdog Standard Layer". Эти программы используют FOSSIL-драйверы для работы с асинхронным последовательным адаптером.
FOSSIL-драйверы используются для расширения функций BIOS, обслуживающих асинхронный последовательный адаптер и модем. Кроме того, FOSSIL-драйверы поддерживают несколько функций для работы с клавиатурой, видеоадаптером и системным таймером.
Использование FOSSIL-драйверов позволяет увеличить скорость обмена через последовательный адаптер до 38400 бит/с (функции BIOS допускают максимальную скорость только 9600 бит/с).
FOSSIL-драйвер самостоятельно обрабатывает прерывания от COM-портов. Он содержит два внутренних буфера, организованных в виде очереди.
В первый буфер - буфер передатчика - записываются данные, передаваемые компьютером модему. Драйвер самостоятельно определяет, когда асинхронный адаптер способен передать внешнему устройству очередной символ (т. е. когда свободен регистр данных COM-порта) и записывает его в регистр данных COM-порта. При этом переданный символ удаляется из буфера и происходит передача следующего символа.
Во второй буфер - буфер приемника - драйвер записывает данные, поступающие в компьютер через COM-порт. Затем содержимое этого буфера может быть считано программой при помощи специальной функции драйвера.
Примером такого FOSSIL-драйвера может служить драйвер Gwinn's Communications Controller, X00.SYS Version V1.30. Вы можете получить любые FOSSIL-драйверы и документацию на них практически на каждой станции BBS.
Существуют специальные FOSSIL-драйверы, обеспечивающие программную эмуляцию аппаратных протоколов коррекции ошибок - от MNP2 до MNP5. Дополнительные функции, поддерживаемые этими драйверами, мы рассмотрим позже.