i社区用户: 密码:
搜索:
首页| 资讯| 信息化| 产品| 专题| 创业| 技术天地| 企业中心| 企业论坛| 职场| 周报全文| 商城| 市场
会展| Blog| i社区| 社区联盟| RSS| 电子杂志| 发行| 直播| IT两会| i| 下载| 上网导航| CIO俱乐部

如何使B盘变成A盘 何公道 河南高校电脑 450003

何公道

现在越来越多的PC机的软盘驱动器(简称软驱)配置为1.2M+1.44M,
俗称“一大一小”,这给用户提供了使用各种规格软磁盘的方便。5■软驱和3■软驱中
只能有一个为A驱,但市场上的软件规格各不相同,许多软件在安装过程中,只到A盘读
取数据,这就造成某些软件难于安装或无法安装。通常的解决办法就是打开机箱,调换软
盘驱动器的数据线(某些微机可以在CMOS中设置软盘驱动器的逻辑顺序)。频繁的打
开机箱无疑很麻烦,既浪费时间,又造成故障率增大,且大多数用户无法完成。许多用户
为此很是苦恼。
本人针对这个问题,对DOS做了深入的分析,编写了一个程序,它仅在您需要的时
候执行一下,就可以很轻松地完成A、B驱动器的交换。此程序很小,占磁盘和内存空间
都很少。转换以后的A、B驱动器,DOS和绝大多数软件均能可靠地进行读写,兼容性
很好。程序中有识别驻留、释放内存、热键切换和恢复原状等功能,使用方便。
下面给出一个简化了的版本,它仅包含了上述程序的核心部分,基本上完成了交换A
、B软驱的功能。*****
;Swap.asm
;Compiled by Turbo Assembler
;(c)Copyright HEG,My,1993
.Model olny
.Code 
Org ooh
Start:
jmp init
NewInt13
pushf
         cmp cs:in44od,1
      jz hh
cmp dl,80H
jae hh
xor dl,1    ;Swap A,B
hh:      popf
db 0eah
OldInt13 dw o,o      ;Jup d Int13
in440d  db o
NewInt21:
pushf
cmp ax,440dh
jne hh0
cmp bl,2     ;? B:
jne nn
dec bl
inc cs:im440d ;Set Inflag
jmp hhl
nn:      cmp bl 1 ;?A:
jne hhl
inc cs:in440d ;Set Inflag
inn bl
hhl:     popf
pushf
db 9ah
Oldint21 dw o,o ;Call Old 
Int21
mov cs:in440d,0  ;clear 
Inflag
iret
hho:     popf
jmp dword ptr cs:Oldint2
Init:    mov ax,SS13n
int 21h
mov Oldint13,bx
mov Oldint13+2,es
lea dx,NewInt13
mov ax,2513h
int 21h  ;Set Int13
mox ax,3521h
int 21h
mov OldInt21,bx
mov OldInt21+2,es
lea dx,NewInt21
mov ax,2521h
int 21h   ;Set Int21
mov ah,9
lea dx,Version
int 21h
mov dx,offset init
int 27h
Version  db 13,10
db ,13,10
db                 ,13,10
db Swap floppyA<=>B ,13,10
db ,13,10├
db (c)Copyrigho HEG,Zhengzhou.
May,1993                ,13,10
db Author:He Gongdao,Tel:5415
67,547072 ,13,10       ? ? db ,13,10
db now,A:change to B:,13,1

db B:chage to A:! ,13,10
db ,13,10 ,24
hend Start
*****

(计算机世界报 1994年 第7期)



周报全文频道联系方式:010-68130909
【关于我们】  【广告服务】  【周报发行】  【投稿指南】  【投稿声明】  【联系方式】  【法律声明】
  【媒体手册】  【编读往来】  
Copyright© ccw.com.cn,All rights reserved
中国计算机世界出版服务公司版权所有