Я пытаюсь спасти старое приложение DOS 6.2, которое изначально работало на компьютере 486 DX2. Я переместил жесткий диск в относительно новый Celeron 633, и, похоже, все работает нормально, за исключением тех случаев, когда я пытаюсь выполнить печать через параллельный порт (LPT1), используя любую из стандартных команд печати. Сигнал отправляется на принтер, но на бумаге появляются неправильные символы. В частности:
0123456789 prints correctly.
áéíóú prints correctly.
abcd prints ☺☻♥♦
ABCD prints !"#$ (is 0x2 off)
Загруженная кодовая страница консоли - 850. Речь идет о принтере HP DeskJet 940C. К сожалению, у меня нет второго принтера с параллельным портом для тестирования.
Почему это должно меняться с одного компьютера на другой, когда ОС строго одинакова, и как мне настроить DOS для правильной печати?
Заранее спасибо.
Попробуйте другие настройки параллельного порта в BIOS новой машины. Сравните их с тем, что поддерживает 486 (он может не сказать вам; вам может потребоваться найти документацию на материнской плате).