/**************************************************************** * * * File: compat.h * * * * Description: * * Header file for compatiblity between compilers * * plus some general equates, etc. * * * ****************************************************************/ #ifndef COMPATHEADER #define COMPATHEADER #ifdef __POWERC #define cls clrscrn() #define INTREGS unsigned Rbp, unsigned Rdi, unsigned Rsi, unsigned \ Rds, unsigned Res, unsigned Rdx, unsigned Rcx, unsigned Rbx, \ unsigned Rax, unsigned Rip, unsigned Rcs, unsigned Rfl #define int86fx(a,b,c,d) (int86x(a,b,c,d),(c)->x.flags) #define int86f(a,b,c) (int86(a,b,c),(c)->x.flags) #define __FAR #else #define FARNULL (void far *)0 #define __FAR far #endif #define NEARNULL (void near *)0 #ifndef __TURBOC__ #ifndef __POWERC #define cls _msc_cls() #define INTREGS unsigned Res, unsigned Rds, unsigned Rdi, unsigned \ Rsi, unsigned Rbp, unsigned Rsp, unsigned Rbx, unsigned Rdx,\ unsigned Rcx, unsigned Rax, unsigned Rip, unsigned Rcs, unsigned Rfl #define enable() _enable() #define disable() _disable() #define getvect(x) _dos_getvect(x) #define setvect(x,y) _dos_setvect(x,y) #define bioskey(a) _bios_keybrd(a) #define MK_FP(s,o) ((void far *)((((unsigned long)(s))<<16) | \ ((unsigned long) (o)))) /* Microsoft must link with int86fx.asm, if int86fx or int86f is used */ #define int86f(a,b,c) int86fx(a,b,c,NULL) /* Use BIOS to clear screen */ #ifndef NOCLSFUNC void _msc_cls() { union REGS r; /* clear screen */ r.x.ax=0x0600; r.h.bh=0x7; r.x.cx=0; r.x.dx=24*256+79; int86(0x10,&r,&r); /* get video page */ r.h.ah=0xf; int86(0x10,&r,&r); /* set cursor */ r.x.dx=0; r.h.ah=2; int86(0x10,&r,&r); } #endif #endif #endif #ifdef __TURBOC__ #define cls clrscr() #ifndef __BORLANDC__ #define inp(n) inportb(n) #define outp(p,n) outportb(p,n) #endif #define INTREGS unsigned Rbp,unsigned Rdi,unsigned Rsi,unsigned \ Rds,unsigned Res,unsigned Rdx,unsigned Rcx,unsigned Rbx,\ unsigned Rax, unsigned Rip, unsigned Rcs, unsigned Rfl #define int86fx(a,b,c,d) (int86x(a,b,c,d),(c)->x.flags) #define int86f(a,b,c) (int86(a,b,c),(c)->x.flags) #endif /* End of header */ #endif