Данная статья предназначена для тех, кто имеет в своем распоряжении принтер типа D-100 (СМ-6325, ЕС-7189) и хотел бы использовать его совместно с компьютером типа IBM/PC. Как известно компьютеры IBM/PC используемые в русскоязычных странах имеют альтернативную кодировку символов для вывода текстовой информации.
Однако принтеры типа D-100 не поддерживают данную кодировку и при выводе на печать текста, в котором присутствуют символы с кодом от 128 до 255 будут не правильно отображаться. Для решения данной проблемы существует два подхода.
Первый из них заключается в замене внутренних "прошивок" принтера, в которых хранятся коды управляющей программы и знакогенератор.
Данный способ является кардинальным, поскольку практически превращает принтер в совместимый с IBM/PC. Однако этот способ требует от пользователя определенных знаний, умений и оборудования, для того что бы считать "прошивки" принтера, дизассемблировать их, исправить программу, странслировать и запрограммировать новые "прошивки".
Для тех, кто намерен воспользоваться именно этим способом, предлагаю прочесть статью [1], в которой подробно описывается способ замены внутренних "прошивок" принтера и даже приводится фрагмент кодов нового знакогенератора. Однако статья не позволяет полностью превратить принтер в совместимый с IBM, поскольку там не приведены коды для новой программы, без чего не удастся печатать графику как например на Epson совместимых принтерах. Возможно, кто-то из читателей уже выполнил этот нелегкий труд и опубликует его в одном из очередных номеров журнала, однако я пока такой публикации не встречал.
Второй подход заключается в загрузке в компьютер драйверов, которые подменяют прерывания обработки печатающих устройств и автоматически перекодируют символы вывода так, что бы при выводе на печать все символы отображались правильно. Недостатком данного способа является то, что при загрузке в память компьютера драйвер "отбирает" немного оперативной памяти и то, что при выводе на печать будут напечатаны только те символы, которые присутствуют в знакогенераторе принтера.
Например, если принтер имеет кодировку КОИ-8, то все латинские и русские символы будут напечатаны правильно, а некоторые символы псевдографики могут отсутствовать. Однако есть и большое преимущество данного метода.
Во первых он позволяет решить проблему практически без усилий даже новичкам и не требует особых знаний. Во вторых этот способ позволяет адаптировать к компьютеру любой принтер и при этом не требуется разбираться в "прошивках" и программах самого принтера.
Ниже я привожу текст собственной программы написанной на языке "Assembler-86", которая позволяет использовать принтер типа D-100 для печати текстовых документов при подключении к компьютеру типа IBM/PC.
Для пользования этой программой необходимо ввести ее текст в компьютер, выполнить компиляцию с помощью любого транслятора "Assembler-86" и получить исполняемый файл с расширением "com". В этом Вам может оказать помощь литература [2].
Если Вы не имеете возможности странслировать программу, можете с помощью бинарного редактора ввести ниже приведенные коды в файл и назначить ему имя с расширением "com", например "cm_6325.com".
Далее этот файл запускается и все. Теперь вы можете печатать любой текст. Для удобства пользования программой, я предлагаю поместить строку ее запуска в файл автозагрузки "autoexec.bat", при этом после включения Вашего компьютера данная программы сама загрузится, и Вы можете смело работать с принтером весь рабочий сеанс.
Данная программа-драйвер использует в памяти всего-навсего 720 байт и остается резидентной после запуска, "безболезненно" подменяя прерывание 17 DOS. Для тех читателей кто хотел бы иметь аналогичный драйвер для другого печатающего устройства, я с удовольствием могу помочь.
Скачать программу перекодировки написанную на языке "Assembler-86" - zip 4,11kb.