Ну грубо говоря, насколько сложно сделать файл, просто на прерывании от LPT висеть, и по прерыванию какие-то данные читать оттуда и передавать в user-space? Ну там программа на 10 килобайт, на 100 килобайт, пол часа, неделя...
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)