#include"disk.h" int Disk_Reset(unsigned char disk_NO){ __asm{ mov dl,disk_NO mov ah,0 int 13h } return Disk_State(); } unsigned char Disk_State(){ unsigned char o1; __asm{ mov ah,1 int 13h mov o1,al } return o1; } int load(unsigned char disk_NO,void*lptr,unsigned int start_sectr,char length){ unsigned char o1; o1=Disk_Reset(disk_NO); if(!o1) { char head=0; char track=0; char sector=start_sectr; unsigned int offs=(unsigned int)lptr; __asm{ mov ax,ds mov es,ax mov bx,offs mov cl,sector mov ch,track mov dh,head mov dl,disk_NO mov al,length mov ah,2 int 13h mov o1,ah } return o1; } return o1; }