一个实现A、B软驱读写互换的小程序

Author: 武汉 赵跃龙 汪振华 Date: 1996-08-09

        本程序的设计思想是:在调用INT 13h中断之前,通过一段常驻内存程序来截取INT 13h中断,将原A盘的入口参数与B盘的入口参数互换,再调用原INT 13h中断,这样即可实现A、B软驱读/写的互换。
        SWAP程序清单如下:
        A>type swap.c
        #include <stdio,h>
        #include <dos.h
        #include <conio.h>
        #include <stdlib.h>
        void interrupt (*oldint13h)();
        void interrupt newint13h();
        main()
        { oldint13h=getveet(0x13);
        setvect(0x13,newint13h);
        keep(0,(-SS+-SP/16--psp));}
        void interrupt newint13h()
        { if(-DL==0x00) -DL=0x01;
        else
        if(-DL==0x01) -DL=0x00;
        (*oldint13h)();}