level 1
钨硫钇
楼主
UNION不懂,还有INT86不懂,还有“regs.x.ax=15;/*设置mickey与象素的比,这个会影响鼠标移动速度*/”不懂,还有,这段鼠标初始化为什么要这样写也不懂。。。。
union REGS regs;
int x_max,y_max;
int Msinit(int Xlo,int Xhi,int Ylo,int Yhi)/*鼠标初始化*/
{
int retcode;
regs.x.ax=0;/*初始化鼠标*/
int86(0x33,®s,®s);
retcode=regs.x.ax;
if(retcode==0) return 0;
regs.x.ax=7;/*设置鼠标X方向的移动范围*/
regs.x.cx=Xlo;
regs.x.dx=Xhi;
int86(0x33,®s,®s);
regs.x.ax=8;/*设置鼠标Y方向的移动范围*/
regs.x.cx=Ylo;
regs.x.dx=Yhi;
int86(0x33,®s,®s);
regs.x.ax=15;/*设置mickey与象素的比,这个会影响鼠标移动速度*/
regs.x.cx=(int)(x_max/640);
regs.x.dx=(int)(y_max/480);
int86(0x33,®s,®s);
return retcode;
}
2010年04月07日 10点04分
1
union REGS regs;
int x_max,y_max;
int Msinit(int Xlo,int Xhi,int Ylo,int Yhi)/*鼠标初始化*/
{
int retcode;
regs.x.ax=0;/*初始化鼠标*/
int86(0x33,®s,®s);
retcode=regs.x.ax;
if(retcode==0) return 0;
regs.x.ax=7;/*设置鼠标X方向的移动范围*/
regs.x.cx=Xlo;
regs.x.dx=Xhi;
int86(0x33,®s,®s);
regs.x.ax=8;/*设置鼠标Y方向的移动范围*/
regs.x.cx=Ylo;
regs.x.dx=Yhi;
int86(0x33,®s,®s);
regs.x.ax=15;/*设置mickey与象素的比,这个会影响鼠标移动速度*/
regs.x.cx=(int)(x_max/640);
regs.x.dx=(int)(y_max/480);
int86(0x33,®s,®s);
return retcode;
}