#ifndef CONIO_H
#define CONIO_H
/* weitestgehend entnommen von BorlandC 3.1 */
void conio_init(void);
struct text_info {
unsigned char winleft; // hier: nullbasiert
unsigned char wintop;
unsigned char winright;
unsigned char winbottom;
unsigned char attribute; // hier: ANSI-Attribute (rot und blau vertauscht)
unsigned char normattr; // ungenutzt
unsigned char currmode; // hier: Seite!
unsigned char screenheight;
unsigned char screenwidth;
unsigned char curx; // hier: nullbasiert
unsigned char cury;
};
extern struct text_info _textinfo;
void clreol(void);
void clrscr(void);
void gotoxy(int x, int y);
#define wherex() (_textinfo.curx+1)
#define wherey() (_textinfo.cury+1)
//int getch(void);
//int getche(void);
//int kbhit(void);
void putch(int c);
void cputs(const char *s);
int cvprintf(const char *format, va_list args);
int cprintf(const char *format, ...);
void textattr(int attr); // nur Auswirkung im Terminalfenster!
#define textbackground(color) textattr(((color&7)<<4)|_textinfo.attribute&0x8F)
#define textcolor(color) textattr((color)&0x8F|_textinfo.attribute&0x70)
#define highvideo() textattr(_textinfo.attribute|0x08);
#define lowvideo() textattr(_textinfo.attribute&~0x08);
#define window(l,t,r,b) {\
_textinfo.winleft =(l)-1;\
_textinfo.wintop =(t)-1;\
_textinfo.winright =(r);\
_textinfo.winbottom=(b);\
gotoxy(1,1);}
#endif//CONIO_H
Vorgefundene Kodierung: ASCII (7 bit) | 2
|