Работа с LPT портом

Добрый день форумчане, столкнулся с проблемой. Печатающее устройство получает информацию через линии данных интерфейса. Печать полной строки (80 символов) печатающее устройство подразделяет на 4 зоны по 20 символов в каждой. Бумага и красящая лента расположены между рядом 80 бойков и непрерывно вращающимся печатающим барабаном. Блок управления производит развертку хранимой в буферной памяти информации, сравнивает с кодом символов, находящихся перед рядом бойков, выбирает позиции совпадающих символов, затем в требуемый момент приводит в действие выбранный боек и печатает соответствующий символ. Если в буферную память печатающего устройства поступает код одной из команд Возврат каретки, Перевод строки, или Перевод формата, оно осуществляет сброс счетчика, печать содержимого буферной памяти и выполняет указанную команду - Возврат каретки, Перевод строки, или Перевод формата соответственно.

Вот примерная программа