#ifndef mybios
#define mybios
#include
typedefunsigned charBYTE;
typedefunsigned int WORD;
typedefunsigned longDWORD;
/*
* ReadChar:读键盘键值,如果没有按键,将等待
* 输入参数:asc 和 scan 是 char 变量的地址
* 输出参数:*asc: ASCII码 和 *scan:扫描码
*/
void ReadChar(BYTE * asc, BYTE * scan)
{
union REGS regs;
regs.h.ah = 0;
int86(0x16,®s,®s);
*asc=regs.h.al;
*scan=regs.h.ah;
}
/*
* CheckKeyboard
检查键盘缓冲区,是否有按键
* return
rc = 0; 没有按键; rc = 1 有按键
*/
int CheckKeyBoard(void)
{
union REGS regs;
regs.h.ah = 1;
int86(0x16,®s,®s);
return (regs.x.flags & 0x40) ? 0 : 1;
}
/*
* Sleepp18_2等待1/18.2个时钟
* 输入参数
count: 等待次数
*/
void Sleepp18_2( DWORD count )
{
DWORDfar * long_ptr;
DWORD
timer_vaule, timer_count;
long_ptr = (DWORD far *)0x0000046c;
timer_vaule = *long_ptr;
timer_count = timer_vaule + count;
while( 1 ) {
timer_vaule = *long_ptr;
if( timer_vaule > timer_count )
break;
}
}
/*
* GetCursor 得到光标位置
* 输出参数
row 行0-24;col:列0-79
*/
void GetCursor( BYTE *row, BYTE *col)
{
union REGS regs;
regs.h.bh = 0x00;
regs.h.ah = 0x03;
int86(0x10,®s,®s);
*row=regs.h.dh;
*col=regs.h.dl;
}
/*
* SetCursor 设置光标位置
* 输入参数
row 行0-24;col:列0-79
*/
void SetCursor(BYTE row, BYTE col)
{
union REGS regs;
regs.h.dh = row;
regs.h.dl = col;
regs.x.bx = 0;
regs.h.ah = 0x02;
int86(0x10,®s,®s);
}
/*
* SetCursorShape 设置光标形状
* 输入参数
top--boot (0-12)
*/
void SetCursorShape(BYTE top, BYTE bott)
{
union REGS regs;
regs.h.ch = top;
regs.h.cl = bott;
regs.h.ah = 0x01;
int86(0x10,®s,®s);
}
/*
* SetCursorOn
设置光标可见
*/
void SetCursorOn()
{
union REGS regs;
regs.h.ch = 11;
regs.h.cl = 12;
regs.h.ah = 0x01;
int86(0x10,®s,®s);
}
/*
* SetCursorOff
隐藏光标
*/
void SetCursorOff()
{
union REGS regs;
regs.h.ch = 0x20;
regs.h.cl = 0x00;
regs.h.ah = 0x01;
int86(0x10,®s,®s);
}
/*
* ClsScr
清屏
*/
void ClsScr()
{
union REGS regs;
regs.h.ch = 0;
regs.h.cl = 0;
regs.h.dh = 24;
regs.h.dl = 79;
regs.h.al = 0x00;
regs.h.bh = 0x07;
regs.h.ah = 0x06;
int86(0x10,®s,®s);
}
/*
* ClsWin
清一个窗口(左上、右下的行列坐标)
* NOTE:
The function(0x06) is scrool up; function(0x07) is scrool down
*
attr: bit7-bit4 背景颜色 bit3-bit0 字符颜色
*
bit0和bit4--兰色; bit1和bit5--绿色; bit2和bit6--红色; bit3和bit7--灰色;
*/
这是一个头文件的一部分,头文件太长了,谁能给逐句翻译一下,另外我C语言已经会了,但是我看不懂这个,我想知道我要看啥书才能看懂他写的啥?这个是用的BOIS么?我看不懂他要干啥。。
谁要是能说明白这个我追分!!!!!!!(我主要要这个!!)
|