Скачиваний:
38
Добавлен:
01.05.2014
Размер:
1.29 Кб
Скачать
/**
*.Name      getmboot
*
*.Title     ‘зЁв вм Ј« ў­го § Ја㧮з­го § ЇЁбм
*
*.Descr     ”г­ЄжЁп бзЁвлў Ґв Ј« ў­го § Ја㧮з­го § ЇЁбм
*           ¤«п гЄ § ­­®Ј® ЌЊ„.
*
*.Proto     int getmboot(MBOOT *master_boot, int drive);
*
*.Params    master_boot - гЄ § вҐ«м ­  ЎгдҐа, ў Є®в®ал©
*                         Ўг¤Ґв бзЁв ­  Ј« ў­ п § Ја㧮筠п
*                         § ЇЁбм
*
*           drive       - ­®¬Ґа дЁ§ЁзҐбЄ®Ј® ЌЊ„
*                         (0 - ЇҐаўл© ЌЊ„, 1 - ўв®а®©,...)
*
*.Return    0 - Ґб«Ё Ј« ў­ п § Јаг§®з­ п § ЇЁбм бзЁв ­ 
*               гбЇҐи­®;
*           Љ®¤ ®иЁЎЄЁ, Ї®«г祭­л© ®в дг­ЄжЁЁ BIOS "—⥭ЁҐ
*               ᥪв®а " - Ґб«Ё з⥭ЁҐ Ј« ў­®© § Ја㧮筮©
*               § ЇЁбЁ ўлЇ®«­Ёвм ­Ґў®§¬®¦­®.
*
*.Sample    partshow.c
**/

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

int getmboot(MBOOT *master_boot, int drive) {

	 struct diskinfo_t di;
	 int status;

// Џ®¤Ј®в ў«Ёў Ґ¬ бвагЄвгаг ¤«п з⥭Ёп
// Ј« ў­®© § Ја㧮筮© § ЇЁбЁ

	 di.drive = drive | 0x80;
	 di.head     = 0;
	 di.track    = 0;
	 di.sector   = 1;
	 di.nsectors = 1;
	 di.buffer   = (char*)master_boot;

// —Ёв Ґ¬ ᥪв®а, ᮤҐа¦ йЁ© Ј« ў­го
// § Ја㧮з­го § ЇЁбм

	 status = _bios_disk( _DISK_READ, &di ) >> 8;

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