📄 ansiload.c
字号:
/*** ANSILOAD.C - tries to detect if an ANSI-style driver is loaded**** public domain by Bob Jarvis*/#include <stdio.h>#include <dos.h>#include "sniptype.h"#include "ansiload.h"static void goto_rc(int row, int col){ union REGS regs; regs.h.ah = 2; regs.h.bh = 0; /* assumes we're using video page 0 */ regs.h.dh = (unsigned char)row; regs.h.dl = (unsigned char)col; int86(0x10, ®s, ®s);}static void get_rc(int *row, int *col){ union REGS regs; regs.h.ah = 3; regs.h.bh = 0; /* again, assume video page 0 */ int86(0x10, ®s, ®s); *row = regs.h.dh; *col = regs.h.dl;}int is_ansi_loaded(void){ int save_r, save_c; int new_r, new_c; int isloaded; get_rc(&save_r, &save_c); goto_rc(15,15); fputs("\x1B[0;0H", stderr); get_rc(&new_r, &new_c); if(new_r == 0 && new_c == 0) isloaded = True_; else { isloaded = False_; fputs("\b\b\b\b\b\b \b\b\b\b\b\b", stderr); } goto_rc(save_r, save_c); return isloaded;}#ifdef TESTmain(){ if(is_ansi_loaded()) puts("ANSI.SYS is loaded"); else puts("ANSI.SYS is NOT loaded"); return 0;}#endif /* TEST */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -