/* standard i/o header file for c86 */ #define NULL 0 #define EOF (-1) /* standard end of file */ #define EOS '\0' /* standard end of string */ #define stdin 0x8000 /* standard input */ #define stdout 0x8001 /* standard output */ #define stderr 0x8002 /* standard error */ #define AREAD 0 /* ascii read */ #define AWRITE 1 /* ascii write */ #define AUPDATE 2 /* ascii update (take care with this one) */ #define BREAD 4 /* binary update */ #define BWRITE 5 /* binary write */ #define BUPDATE 6 /* binary update */ typedef char FILE; #define getchar() fgetc(stdin) #define getc(x) fgetc(x) #define putchar(x) fputc(x,stdout) #define putc(x,y) fputc(x,y) #define ungetch(c) ungetc(c,stdin) /* definition for setjmp and longjmp */ typedef int jmp_buf[3]; /* end of standard header file */ /******************************************************************** * * Additional defintions for Victor 9000 Serial I/O, and some other * useful ones * *********************************************************************/ #define TRUE 1 /* Define TRUE and FALSE */ #define FALSE 0 /* Define standard values for function keys */ #define F1 0x0F1 #define F2 0x0F2 #define F3 0x0F3 #define F4 0x0F4 #define F5 0x0F5 #define F6 0x0F6 #define F7 0x0F7 #define F8 0x0F8 #define F9 0x0F9 #define F10 0x0FA /* Define Names for MS-DOS Function codes */ #define CIN 1 /* Keyboard Input */ #define COUT 2 /* Console Output */ #define AUXIN 3 /* Auxilary Input */ #define AUXOUT 4 /* Auxilary Output */ #define POUT 5 /* Printer Output */ #define DCIO 6 /* Direct Console I/O */ #define CINNE 8 /* Console Input - No Echo */ #define PSTR 9 /* Print String */ #define BCIN 0x0A /* Buffered Console input */ #define CSTATUS 0x0B /* Check Console Status */ /* Defines for Serial Ports */ #define PORTA 0 /* Port A */ #define PORTB 1 /* Port B */ #define B300 0 /* 300 Baud */ #define B600 1 /* 600 Baud */ #define B1200 2 /* 1200 Baud */ #define B2400 3 /* 2400 Baud */ #define B4800 4 /* 4800 Baud */ #define B9600 5 /* 9600 Baud */ #define SIODEV 0xE004 /* Base Address (segment) of SIO devices */ #define ACRTL 2 /* Offset of A Control */ #define BCRTL 3 /* Offset of B control */ #define ADATA 0 /* Offset of A data */ #define BDATA 1 /* Offset of B Data */ #define SIOCTC 0xE002 /* Base address of 7201 timer */ #define CTRCRTL 3 /* Offset of Control register */ /* Port Control Block Defintion */ typedef struct { unsigned char port; unsigned char baud; unsigned char fulduplx; unsigned char cr2; unsigned char cr3; unsigned char cr4; unsigned char cr5; } PCB;