Category : C Source Code
Archive   : ASM4QC.ZIP
Filename : ASM4QC.H

 
Output of file : ASM4QC.H contained in archive : ASM4QC.ZIP
/***********************************************************************
* ASM4QC, Assembly routines for QuickC *
* Version 2.02, Copyright (c) 1989-90 SoftCircuits (tm) *
* *
* ASM4QC.H, ASM4QC header file *
* C source code *
***********************************************************************/

struct vconfig { /* structure for getvconfig() */
unsigned int vsegment; /* video segment */
unsigned int vmode; /* video mode */
unsigned int vpage; /* video page */
unsigned int textrows; /* number of text rows */
unsigned int textcols; /* number of text columns */
unsigned int snowcheck; /* snow checking status */
int vcombo; /* video display combination code */
};

/* function declarations for data4qc (global data for ASM4QC library) */
int _color(int);
void getvconfig(struct vconfig *);
int initvideo(void);
int setbackcolor(int);
int setdefvenv(void);
int setforecolor(int);
void setsnowcheck(int);
void setvoff(int,int);
int setvsegment(int);

/* function declarations for stdvideo (standard video routines) */
void biosprintsa(char *);
void cls(void);
int curscol(void);
int cursrow(void);
void hidecurs(void);
void repch(char,int);
void restorecurs(void);
void scroll(int,int,int,int,int);
void setborder(void);
void setcurs(int,int);
int setvmode(int);
int vmode(void);
int voffcol(void);
int voffrow(void);
int vpage(void);

/* function declarations for extvideo (extended video routines) */
void frame(int,int,int,int);
void hscroll(int,int,int,int,int);
void printa(int,int);
void prints(char *);
void printsa(char *);
int reada(int,int);
char readc(int,int);
void setframetype(char,char,char,char,char,char);

/* function declarations for window (windowing routines) */
void restorewin(int *,int,int,int,int);
void savewin(int *,int,int,int,int);

/* function declarations for kbdio (keyboard input/output) */
void beep(int,int);
int edstring(char *,int);
int getkey(void);
int kbded(char *,int);
void kbdflush(void);
void pause(int);

/* macros */
#define foreback(f,b) ((f & 0x0F) | ((f & 0x10) << 3) | ((b & 0x07) << 4))
#define color(f,b) _color(foreback(f,b))
#define getasciicode() (getkey() & 0x00FF)
#define getscancode() (getkey() >> 8)
#define setdoubleframe() \
setframetype('\xCD','\xBA','\xC9','\xBB','\xC8','\xBC')
#define setsingleframe() \
setframetype('\xC4','\xB3','\xDA','\xBF','\xC0','\xD9')

/* constants */
#define TRUE 1
#define FALSE 0
#define ON 1
#define OFF 0
#define MONO_SEG 0xB000
#define COLOR_SEG 0xB800

/* attribute constants */
#define BLACK 0x00
#define BLUE 0x01
#define GREEN 0x02
#define CYAN 0x03
#define RED 0x04
#define MAGENTA 0x05
#define YELLOW 0x06
#define WHITE 0x07
#define BOLD 0x08
#define BLINKING 0x10

/* key constants as returned by getkey */
#define ESCAPE_KEY 0x011B
#define BACKSPACE_KEY 0x0E08
#define TAB_KEY 0x0F09
#define SHIFTTAB_KEY 0x0F00
#define RETURN_KEY 0x1C0D
#define F1_KEY 0x3B00
#define F2_KEY 0x3C00
#define F3_KEY 0x3D00
#define F4_KEY 0x3E00
#define F5_KEY 0x3F00
#define F6_KEY 0x4000
#define F7_KEY 0x4100
#define F8_KEY 0x4200
#define F9_KEY 0x4300
#define F10_KEY 0x4400
#define HOME_KEY 0x4700
#define UP_KEY 0x4800
#define PGUP_KEY 0x4900
#define LEFT_KEY 0x4B00
#define CENTER_KEY 0x4C00
#define RIGHT_KEY 0x4D00
#define END_KEY 0x4F00
#define DOWN_KEY 0x5000
#define PGDN_KEY 0x5100
#define INSERT_KEY 0x5200
#define DELETE_KEY 0x5300


  3 Responses to “Category : C Source Code
Archive   : ASM4QC.ZIP
Filename : ASM4QC.H

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/