微信公众号 
图码生活

每天发布有五花八门的文章,各种有趣的知识等,期待您的订阅与参与
电脑报 1992-2001 十年文章全集
电脑报 1992-2001 十年文章全集
包含从 1992 年 - 2001 年间,两万余篇期刊文章,查询最少输入两个字符
随便看看
读取中
读取中
标题在BJ330上打印超长纸
栏目其它
作者辽宁 崔德香
发布1996-10-11
  按随机手册调整DIP开关SW2-4也只能使默认纸长为12英寸。
  在手册中查到,控制页长的打印命令:ESC C(Set Form Length,用行数来指定页长)。格式为:ESC C <n>,其中n为每页的行数,可取1-255,这里取最大值255,即使按图形方式打印,该设置仍有效。
  我用BASIC语言写了只有一条语句的程序,LPRINT CHR$(27);"C";CHR$(255);:END,并用Quick BASIC编译成一个执行文件BJ330.EXE,每次打印前先运行一下,配以适当的打印驱动软件,就可解决DOS下中西文文本打印。
  但是在WPS下打印时,WPS的其它打印命令又使“ESC C”命令失效。我用SOFT-ICE 2.52分析,设断点如下:BPIO 378 RW,得到了WPS打印文件前发送了命令ESC U,控制打印机单/双向命令,ESC U 1为单向打印,ESC U 0为双向打印。
  试验表明,当WPS不发送ESC U命令时,BJ330是按单向打印进行的,因此可将WPS的ESC U 1命令改为ESC C 255,并在打印时选“单向”打印,就可解决问题。(也可将ESC U 0也作上述修改)
  修改方法:可用DEBUG或PCTOOLS在WPS.CFG中查找1B 55 01,改为1B 43 FF。
  修改后可能出现“单向”仍不能打印超长纸,而选“双向”则可打印,说明文件中“单向”“双向”写反了,用PCTOOLS将WPS.CFG中“单向”“双向”文字互换即可。
  UCDOS中的WPS与原版差别较大,不能按上述方法修改。
  本文所述在SPDOS 5.21&WPS 2.2中运行通过。