Скачиваний:
38
Добавлен:
01.05.2014
Размер:
1.11 Кб
Скачать
/**
*.Name      getboot
*
*.Title     ‘зЁв вм § Ја㧮з­го § ЇЁбм
*
*.Descr     ”г­ЄжЁп бзЁвлў Ґв § Ја㧮з­го § ЇЁбм
*           ¤«п гЄ § ­­®Ј® ЌЊ„.
*
*.Proto     int getboot(BOOT _far *boot, int drive);
*
*.Params    boot        - гЄ § вҐ«м ­  ЎгдҐа, ў Є®в®ал©
*                         Ўг¤Ґв бзЁв ­  § Ја㧮筠п
*                         § ЇЁбм
*
*           drive       - ­®¬Ґа дЁ§ЁзҐбЄ®Ј® ЌЊ„
*                         (0 - ЇҐаўл© ЌЊ„, 1 - ўв®а®©,...)
*
*.Return    0 - Ґб«Ё § Јаг§®з­ п § ЇЁбм бзЁв ­ 
*               гбЇҐи­®;
*           1 - Їа®Ё§®и«  ®иЁЎЄ 
*
*.Sample    bootshow.c
**/

#include <stdio.h>
#include <dos.h>
#include "sysp.h"

int getboot(BOOT *boot, int drive) {

	 union REGS reg;
	 struct SREGS segreg;

// ‡ Ї®«­пҐ¬ ॣЁбва®ўлҐ бвагЄвгал ¤«п ўл§®ў 
// ЇаҐалў ­Ёп DOS INT 25h

	 reg.x.ax = drive;
	 reg.x.bx = FP_OFF(boot);
	 segreg.ds = FP_SEG(boot);
	 reg.x.cx = 1;
	 reg.x.dx = 0;
	 int86x(0x25, &reg, &reg, &segreg);

// €§ў«ҐЄ Ґ¬ Ё§ б⥪  ®б⠢襥бп в ¬ Ї®б«Ґ
// ўл§®ў  ЇаҐалў ­Ёп б«®ў®

	 _asm pop ax

	 return(reg.x.cflag);
}
Соседние файлы в папке LIBSRC