Задача простая: надо вывести что-нибудь на печать, например, так:
DIR > LPT1
У меня вылазит ошибка:
- Код: Выделить всё
Bad disk command on device LPT1
R(etry), I(gnore), F(ail), or A(bort)? _
Вот лог загрузки autoexec.bat:
- Код: Выделить всё
MODE LPT1:80,6,B
LPT1: not rerouted
Printer error
Resident portion of MODE loaded
Infitite retry on parallel printer time-out
Дополнительные сведения:
- Существуют официальные драйверы для DOS-программ WordPerfect, Lotus-1-2-3, Word 6.0 for DOS и некоторых других, из которых всё прекрасно распечатывается. Проблема заключается в том, чтобы вывести на LPT1 результат выполнения какой-нибудь консольной команды, или, например, распечатать текст из встроенного вьюера Norton Commander.
- Из консоли WinXP или из под виртуальной машины всё работает отлично. Проблема только в "голом" DOS. Пробовал версии 5.0 и 8.0
- Русские шрифты в принтер загружены.
- В биосе пробовал менять режим порта на ECP, EPP, Bi-Directional, Normal а также некоторые другие настройки порта (например, версия EPP и версия режима DMA для ECP). Прерывание настроено на IRQ 7 (пробовал ставить IRQ5). Адрес порта не менял, хотя там есть варианты.
- Есть предположение, что проблема в кабеле Centronics. В интернете нашёл несколько схему перепайки в стандартный LPT, но не знаю, поможет ли.
- Слышал также, что эту проблему можно как-то решить при помощи недокументированных прерываний DOS. Не знаю, может просто слухи, но, с другой стороны, драйвер порта Windows же как-то решает эту проблему? Значит, можно как-то сделать драйвер порта для DOS...