home *** CD-ROM | disk | FTP | other *** search
/ Piper's Pit BBS/FTP: ibm 0010 - 0019 / ibm0010-0019 / ibm0010.tar / ibm0010 / UNIX3862.ZIP / U386-06.ZIP / U386-6.TD0 / usr / include / sys / pic.h < prev    next >
Encoding:
C/C++ Source or Header  |  1988-06-26  |  2.6 KB  |  61 lines

  1. /*    Copyright (c) 1984, 1986, 1987, 1988 AT&T    */
  2. /*      All Rights Reserved      */
  3.  
  4. /*    THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T    */
  5. /*    The copyright notice above does not evidence any       */
  6. /*    actual or intended publication of such source code.    */
  7.  
  8.  
  9. #ident    "@(#)head.sys:pic.h    1.3"
  10.  
  11. /* Definitions for 8259 Programmable Interrupt Controller */
  12.  
  13. #define PIC_NEEDICW4    0x01            /* ICW4 needed */
  14. #define PIC_ICW1BASE    0x10            /* base for ICW1 */
  15. #define PIC_86MODE      0x01            /* MCS 86 mode */
  16. #define PIC_AUTOEOI     0x02            /* do auto eoi's */
  17. #define PIC_SLAVEBUF    0x08            /* put slave in buffered mode */
  18. #define PIC_MASTERBUF   0x0C            /* put master in bnuffered mode */
  19. #define PIC_SPFMODE     0x10            /* special fully nested mode */
  20. #define PIC_READISR     0x0B            /* Read the ISR */
  21. #define PIC_NSEOI       0x20            /* Non-specific EOI command */
  22.  
  23. #define PIC_VECTBASE    0x40            /* Vectors for external interrupts */
  24.                     /* start at 64.                    */
  25. /*
  26.  * Interrupt configuration information specific to a particular computer.
  27.  * These constants are used to initialize tables in modules/pic/space.c.
  28.  * NOTE: The master pic must always be pic zero.
  29.  */
  30.  
  31. #ifdef MB1      /* 386/20 Multibus 1 board */
  32.  
  33. #define NPIC    2                       /* 2 PICs */
  34. /* Port addresses */
  35. #define MCMD_PORT       0xC0            /* master command port */
  36. #define MIMR_PORT       0xC2            /* master intr mask register port */
  37. #define SCMD_PORT       0xC4            /* slave command port */
  38. #define SIMR_PORT       0xC6            /* slave intr mask register port */
  39. #define MASTERLINE      0x07            /* slave on IR7 of the master PIC */
  40. #define SLAVEBASE       ((MASTERLINE+1)*8) /* slave IR0 interrupt number */
  41. #define PICBUFFERED     1               /* PICs in buffered mode */
  42. #define I82380          0               /* i82380 chip not used */
  43.  
  44. #endif
  45.  
  46.  
  47. #ifdef AT386            /* AT386 board */
  48.  
  49. #define NPIC    2                       /* 2 PICs */
  50. /* Port addresses */
  51. #define MCMD_PORT       0x20            /* master command port */
  52. #define MIMR_PORT       0x21            /* master intr mask register port */
  53. #define SCMD_PORT       0xA0            /* slave command port */
  54. #define SIMR_PORT       0xA1            /* slave intr mask register port */
  55. #define MASTERLINE      0x02            /* slave on IR2 of master PIC */
  56. #define SLAVEBASE       8               /* slave IR0 interrupt number */
  57. #define PICBUFFERED     0               /* PICs not in buffered mode */
  58. #define I82380          0               /* i82380 chip not used */
  59.  
  60. #endif
  61.