좋은 플로피의 DOS 부트 기록의 심상을 만들기
신선한 플로피의 부트 기록의 심상을 저장하기 위하여는, 프로그램 필요한 것은 뒤에 오는 3개의 업무를 한다:
- 좋은 플로피의 정확하게 읽힌 첫번째 512의 바이트
- 가장 중요한 성공적인 읽기 작업을 위한 검사 ()
- 지정된 파일 이름과 목적지 경로에 이 512의 바이트를 저장하십시오
플로피의 분야는 512의 바이트이고 분야의 정확한 심상을 베끼는 것이 필수이. 가동이 성공적 이었다는 것을 있건 없건 간에 체크에 플로피에 적용된 가동의 아무 유형나의 경우에는 가장 중요하고 가장 필요한 단계이다.
좋고 신선한 플러피 디스크에 대한 조차 어떤 초기 설정 문제든지 있을지도 모른다. 저것은 가동이 플러피 디스크의 모든 초기 설정의 플러피 디스크에 실행될 때 케이스의 대부분에서, 첫째로 리셋 디스크 가동 (INT 13H의 기능 00 H)로 프로그램에서 실행되는지 왜 이다.
초기 설정 후에도 최근에 삽입한 플러피 디스크 또는 바뀐 플러피 디스크가 당신이 프로그램을 다시 실행하도록 조언되는 아무 판독 오류나 일으키는 원인이 되는 경우에, 아마 이번에를 작동할지도 모른다.
뒤에 오는 프로그램은 이 지정된 업무를 이행하기 위한 것이다. 저희가 그것이 어떻게 진행하는지 보게 하십시오:
/* 신선한 플러피 디스크에서 파일에 시동 심상을 저장하십시오*/
#include <bios.h>
#include <stdio.h>
int main(void)
{
struct diskinfo_t dinfo;
union REGS regs;
int result;
int count=0, i;
char fname[80];
static char dbuf[512];
FILE *fp;
dinfo.drive = 0x00; /* A를 위한 드라이브 수: */
dinfo.head = 0; /* 디스크 맨 위 수 */
dinfo.track = 0; /* 대위 수 */
dinfo.sector = 1; /* 분야 수*/
dinfo.nsectors = 1; /* 분야 조사 */
dinfo.buffer = dbuf; /* 자료 버퍼 */
clrscr();
gotoxy(10,3);cprintf("시동 심상을 저장하기 위하여 파일 이름 및 경로에 들어가십시오");
gotoxy(5,5);
gets(fname);
fp=fopen(fname,"wb");
if((fp=fopen(fname,"wb"))==NULL)
{
highvideo();
gotoxy(10,10);cprintf("파일은 창조될 수 없었다");
getch();
exit(0);
}
|