标题打印口巧切换
栏目外设类维护与维修
作者山东 李同君
发布1995-01-20
IBM及兼容机的内存低端是数据区,该区数据均可直接访问,而打印机口地址就存放在该数据区中[段地址:40H,偏移地址:08H_09H打印机1(LPT1)]
[段地址:40H,偏移地址:0AH_0BH打印机2(LPT2]
只要把两个打印口地址数据相互交换,即可实现交换打印口的目的。
本文所给程序就是利用上述原理来交换两个打印口地址数据的,从而巧换打印口。本程序可在DEBUG下直接建立(如下):
C:\>debug
-a100
××××:0100 mov ax,0040
××××:0103 mov ds,ax
××××:0105 mov si,0008
××××:0108 mov ax,[si]
××××:010A mov si,000a
××××:010D mov dx,[si]
××××:010F mov [si],ax
××××:0111 mov si,0008
××××:0114 nov [si],dx
××××:0116 int 20
××××:0118
-n lptswap.com
-rcx
cx:0000
:18
-w
Writing 0018 bytes
-q
c:\>
本程序(LPTSWAP.COM)在长城0520、浪潮286、386、联想386、联想486机器上运行通过。若想恢复,只需再执行一次LPTSWAP.COM即可。
(山东 李同君)