home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / archives / victor9000.zip / vickermit.ioh < prev    next >
Text File  |  1991-04-18  |  3KB  |  98 lines

  1. /*    standard i/o header file for c86
  2. */
  3.  
  4. #define NULL 0
  5. #define EOF (-1)    /* standard end of file */
  6. #define EOS '\0'    /* standard end of string */
  7. #define stdin 0x8000    /* standard input */
  8. #define stdout 0x8001    /* standard output */
  9. #define stderr 0x8002    /* standard error */
  10. #define AREAD 0        /* ascii read */
  11. #define AWRITE 1    /* ascii write */
  12. #define AUPDATE 2    /* ascii update (take care with this one) */
  13. #define BREAD 4        /* binary update */
  14. #define BWRITE 5    /* binary write */
  15. #define BUPDATE 6    /* binary update */
  16. typedef char FILE;
  17. #define getchar() fgetc(stdin)
  18. #define getc(x) fgetc(x)
  19. #define putchar(x) fputc(x,stdout)
  20. #define putc(x,y) fputc(x,y)
  21. #define ungetch(c) ungetc(c,stdin)
  22.  
  23. /*    definition for setjmp and longjmp
  24. */
  25.  
  26. typedef int jmp_buf[3];
  27.  
  28. /*    end of standard header file
  29. */
  30. /********************************************************************
  31. *
  32. * Additional defintions for Victor 9000 Serial I/O, and some other
  33. * useful ones
  34. *
  35. *********************************************************************/
  36.  
  37. #define     TRUE       1        /* Define TRUE and FALSE */
  38. #define     FALSE       0
  39.  
  40. /* Define standard values for function keys */
  41.  
  42. #define     F1       0x0F1
  43. #define     F2       0x0F2
  44. #define     F3       0x0F3
  45. #define     F4       0x0F4
  46. #define     F5       0x0F5
  47. #define     F6       0x0F6
  48. #define     F7       0x0F7
  49. #define     F8       0x0F8
  50. #define     F9       0x0F9
  51. #define     F10       0x0FA
  52.  
  53. /* Define Names for MS-DOS Function codes */
  54.  
  55. #define     CIN       1        /* Keyboard Input */
  56. #define     COUT       2        /* Console Output */
  57. #define     AUXIN       3        /* Auxilary Input */
  58. #define     AUXOUT       4        /* Auxilary Output */
  59. #define     POUT       5        /* Printer Output */
  60. #define     DCIO       6        /* Direct Console I/O */
  61. #define     CINNE       8        /* Console Input - No Echo */
  62. #define     PSTR       9        /* Print String */
  63. #define     BCIN       0x0A        /* Buffered Console input */
  64. #define     CSTATUS   0x0B        /* Check Console Status */
  65.  
  66. /* Defines for Serial Ports */
  67.  
  68. #define     PORTA       0        /* Port A */
  69. #define     PORTB       1        /* Port B */
  70.  
  71. #define     B300       0        /* 300 Baud */
  72. #define     B600       1        /* 600 Baud */
  73. #define     B1200       2        /* 1200 Baud */
  74. #define     B2400       3        /* 2400 Baud */
  75. #define     B4800       4        /* 4800 Baud */
  76. #define     B9600       5        /* 9600 Baud */
  77.  
  78. #define     SIODEV       0xE004    /* Base Address (segment) of SIO devices */
  79. #define     ACRTL       2        /* Offset of A Control */
  80. #define     BCRTL       3        /* Offset of B control */
  81. #define     ADATA       0        /* Offset of A data */
  82. #define     BDATA       1        /* Offset of B Data */
  83.  
  84. #define SIOCTC       0xE002    /* Base address of 7201 timer */
  85. #define CTRCRTL       3        /* Offset of Control register */
  86.  
  87. /* Port Control Block Defintion */
  88.  
  89. typedef struct {
  90.     unsigned char port;
  91.     unsigned char baud;
  92.     unsigned char fulduplx;
  93.     unsigned char cr2;
  94.     unsigned char cr3;
  95.     unsigned char cr4;
  96.     unsigned char cr5;
  97. } PCB;
  98.