что касается выдачи сигналов на линии данных через CreateFile/WriteFile - это 100% проверенный мной лично факт. я 100 раз так делал! )) это режим SPP. плюсом к этому для AY-LPT надо рулить 17м контактом порта (nSelect), как это делать, на шару я не нашел, надо ковырять (сейчас пока не могу, да и есть еще сомнения в синхронности, винда поди может принять байт на выдачу в порт и не выдать сразу, а мы уже переключим режим регистр/данные).
и еще, я не уверен, но может быть эта схема может работать в режиме EPP. если так, то в винде есть ioctl'ы для записи "адреса" и записи "данных". но это надо опять курить маны и пробовать на реальной железке.
да, городить внешнюю логику вокруг LPT-AY не надо (типа триггеров), достаточно посадить некоторые сигналы на нужный уровень.