
DOS源码
文章平均质量分 70
MSVCer
这个作者很懒,什么都没留下…
展开
-
EGL--XMS类头文件 XMS.H
/* XMS.H 代码编写: 王家宝 最后更新日期: 2000.04.01 用途: 操作XMS内存 要求: 系统提供HIMEM.SYS*/char *xms_2_basemem_buffer;/* divide the screen XMS_BLOCK_NUM block */struct xms_move{ long byte_count; /* 每次传送多少个字节 */原创 2004-11-22 23:05:00 · 1070 阅读 · 0 评论 -
EGL--延时函数头文件 DELAY.H
/* DELAY.H 代码编写: 王家宝 最后更新日期: 2000.04.01 用途: 提供比较精确的延时功能 要求: 函数修改了系统中断 0x8 ,因此要求在结束延时功能之前 不要再修改 0x8 中断,提供最小的延时单位为 1/18.2 秒*/#define MAXTIMERS 10BOOL IsInit=0;struct { int id; UINT ticks; UIN原创 2004-11-22 23:50:00 · 3029 阅读 · 0 评论 -
EGL--标准基础类实现文件 STDEG.INC
/* STDEG.INC*/BOOL CheckChineseOs(void){ outportb(0x03ce,0x06); return( (peekb(0x0040,0x0049)==3 && inportb(0x03cf)&0x0F!=0x0e)?1:0 );}void InitGr(void){ int gd=VGA,gm=VGAHI; static UINT ha原创 2004-11-22 23:16:00 · 1273 阅读 · 0 评论 -
EGL--标准基础类头文件 STDEG.H
/* STDEG.H 代码编写: 王家宝 最后更新日期: 2000.04.01 用途: 提供友好的人机界面 要求: 必须有兼容微软的鼠标器与驱动程序 必须提供有扩充内存管理程序HIMEM.SYS 配有VGA显示卡的彩色显示器*//* 由WinMake()使用的边框类型 */enum WINFRAME{ STD_FRAME=101, SHADOWLINE_FRAME,原创 2004-11-22 23:13:00 · 1356 阅读 · 0 评论 -
EGL--鼠标类函数实现文件 MOUSE.INC
/* MOUSE.INC*/void pascal set_event_handler(int call_mask,void far( *location)()){ union REGS r; struct SREGS sr; if(MOUSE_THERE){ /* THE MOUSE FUNCTION 12 */ r.x.ax=12; r.x.cx=call_ma原创 2004-11-22 22:58:00 · 1335 阅读 · 0 评论 -
EGL--键盘类函数实现文件 KEY.INC
/* KEY.INC*/int GetKey(){ int character,ext_char=0; if((character=getch())!=0) return(character); else ext_char=getch(); return(ext_char*100+character);}int GetStatusKey(int cmd){ cha原创 2004-11-22 22:52:00 · 1175 阅读 · 0 评论 -
EGL--键盘类头文件 KEY.H
/* KEY.H 代码编写: 王家宝 最后更新日期: 2000.04.01 用途: 获取键盘输入,对一般字符键与特殊按键加以识别*/#define BACKSPACE 8#define TAB 9#define ENTER 13#define ESC 27#define UP 7200#define DOWN 8000#define LEFT 7500#define原创 2004-11-22 22:42:00 · 1265 阅读 · 0 评论 -
EGL--用户手册
GEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEGG原创 2004-11-22 22:34:00 · 1337 阅读 · 0 评论 -
EGL--头文件 EGHEAD.H
/* EGHEAD.H*/#define SHORT unsigned char#define INT signed int#define UINT unsigned int#define BOOL unsigned char#define BYTE signed char#define UBYTE unsigned char#define OK 32762#define原创 2004-11-22 22:33:00 · 1273 阅读 · 0 评论 -
DOS下的屏幕保护
#include "dos.h"#include "conio.h"#include "stdlib.h"#include "math.h"#include "time.h"#define MAX 30#define FIRSTPAGE 5#define LASTPAGE 6#define Z 3#define DELAY_TIME 3000int ACTIVEPAGE=0;struct原创 2004-11-22 23:56:00 · 1352 阅读 · 0 评论 -
EGL--延时函数实现文件 DELAY.INC
/* DELAY.INC*/void InitTimer() /* 初始化整个延时系统,结束必须要调用EndTimer */{ int i; if( IsInit ) return; disable(); old_int8=getvect(0x8); setvect(0x8,new_int8); /* 安装时钟中断,以保证精确的延时 */ enable(); for( i=0;原创 2004-11-22 23:51:00 · 1319 阅读 · 0 评论 -
EGL--鼠标相关类函数补充 EVENT.OBJ
可以在微软的鼠标驱动上安装回调函数,在鼠标有EVENT时,回调函数会被驱动调用,在回调函数中可以查询鼠标的状态,然后将相应的变更置位,以反映鼠标的状态变更情况当初用ASM写了一段回调函数,可惜ASM源码已经丢失了,现在只有二进制目标文件了,我将二进制文件的映象COPY SCREEN了,上载到我的相册中了,可以用二进制编辑器恢复这个OBJ文件,然后将此文件与您生成的文件进行链接原创 2004-11-22 23:48:00 · 1395 阅读 · 0 评论 -
EGL--XMS类函数实现文件 XMS.INC
/* XMS.INC*/int xms_init() /* 检测扩充内存服务程序 */{ union REGS r; r.x.ax=0x4300; int86(0x2f,&r,&r); if(r.h.al!=0x80) return(ERROR); /* 无HIMEM.SYS */ if( (xms_2_basemem_buffer=malloc(XMS_BUF))==原创 2004-11-22 23:08:00 · 1130 阅读 · 0 评论