당신이 하는 무엇을 해야 정당하다 지정된 신선하고 새로운 심상을 그것의 DBR의 만들고 이 프로그램의 산출을 목적지 파일에서 베끼고 당신의 프로그램에 있는 이 자료를 풀칠하기 위하여 플로피를 가지고 가도록. 약간 포맷으로 만듬을 필요하면 하십시오. 저희가 그것이 어떻게 작동하는지 보게 하십시오:
/* 프로그램 만들 시동 심상 의 floppy 플러피 디스크 에 있는 여자 마법사 특성 */
#include <bios.h>
#include <stdio.h>
int main(void)
{
struct diskinfo_t dinfo;
union REGS regs;
int result,i;
int count=0;
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);
}
/// 디스크 체계를 초기화하십시오 \\\
for(i=0; i<3; i++)
{
regs.h.ah = 0x00; /* 리셋 디스크 체계*/
regs.h.dl = 0x00; /* 플러피 디스크 a: */
int86(0x13, ®s, ®s);
}
gotoxy(10,9); cprintf("플로피 디스크 드라이브에서 읽는 것을 시도:\n");
result = _bios_disk(_DISK_READ, &dinfo);
if ((result & 0xff00) == 0)
{
gotoxy(10,14);
cprintf("디스크는 플로피 디스크 드라이브에서 읽었다: 성공.\n");
while(count<512)
{
fprintf(fp,"0x%X, ",dbuf[count] & 0xff );
count++;
}
fclose(fp);
}
else
{
gotoxy(10,14);
cprintf("드라이브 A 의 상태를 읽을 수 없다= 0x%02x\n",
result);
}
return 0;
}
|