룸바이오스 데이터 영역 접근과
룸바이오스 데이터 영역 접근
#include<stdio.h>
int main()
{
struct BIOS_EQUIP
{
unsigned bootdisk :1;
unsigned copro :1;
unsigned ram :2;
unsigned video :2;
unsigned fdd :2;
unsigned dma :1;
unsigned comport :3;
unsigned gameio :1;
unsigned s_prt :1; unsigned p_prt :2;
}*equip;
unsigned equipment;
equipment = peek(0, 0x410);
equip = (struct BIOS_EQUIP *)&equipment;
system("cls");
printf("%p\n",equipment);
printf("Rom bios data check\n");
printf("boot from disk = %u\n", equip->bootdisk);
printf("equip->copr = %u\n", equip->copro);
printf("equip->ram = %u\n", equip->ram);
printf("equip->video = %u\n", equip->video);
printf("equip->fdd = %u\n", equip->fdd);
getch();
return 0;
}
인터럽트 서비스 루틴 가로채기
#include<stdio.h>
#include<dos.h>
//인터럽트 서비스 루틴가로채기
void my_putch(char ch)
{
union REGS r;
r.h.ah = 0x0E;
r.h.al = ch;
r.h.bh = 0;
r.h.bl = 1;
int86(0x10, &r, &r); // 인터럽트 서비스 루틴 호출
}
int main()
{
char* t;
t = "what a wonderful world!";
while (*t != 0)
{
my_putch(*t++);
}
getch();
return 0;
}
'공부,일 > c언어' 카테고리의 다른 글
간단한 키보드 제어 (0) | 2021.06.17 |
---|---|
비디오 램 영역을 통한 화면 출력 (0) | 2021.06.16 |
터보C 설치 사용 (0) | 2021.06.15 |
Linked List 구현 (0) | 2021.06.14 |
파일도 결국 1과0으로 이루어지 데이터이다. (0) | 2021.06.13 |
댓글