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 / cram.h < prev    next >
Encoding:
C/C++ Source or Header  |  1988-06-26  |  2.6 KB  |  79 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. /*    Copyright (c) 1987, 1988 Microsoft Corporation    */
  9. /*      All Rights Reserved    */
  10.  
  11. /*    This Module contains Proprietary Information of Microsoft  */
  12. /*    Corporation and should be treated as Confidential.       */
  13.  
  14. #ident    "@(#)head.sys:cram.h    1.4"
  15.  
  16. /*
  17.  * Defines for accessing the PC AT CMOS ram.
  18.  */
  19.  
  20. #define    CMOS_ADDR    0x70    /* I/O port address for CMOS ram address */
  21. #define    CMOS_DATA    0x71    /* I/O port address for CMOS ram data */
  22.  
  23. #define    DSB        0x0e    /* Diagnostic status byte ram address */
  24. #define    SSB        0x0f    /* Shutdown status byte ram address */
  25. #define DDTB        0x10    /* Diskette drive type byte ram address */
  26. #define    FDTB        0x12    /* Fixed disk type byte ram address */
  27. #define    EB        0x14    /* Equipment byte ram address */
  28. #define    BMLOW        0x15    /* Base mem size low byte ram address */
  29. #define    BMHIGH        0x16    /* Base mem size high byte ram address */
  30. #define    EMLOW        0x17    /* Expansion mem size low byte ram address */
  31. #define    EMHIGH        0x18    /* Expansion mem size high byte ram address */
  32. #define    DCEB        0x19    /* Drive C Extended byte ram address */
  33. #define    DDEB        0x1a    /* Drive D Extended byte ram address */
  34. #define    CKSUMLOW    0x2e    /* Checksum low byte ram address */
  35. #define    CKSUMHIGH    0x2f    /* Checksum high byte ram address */
  36. #define    EMLOW2        0x30    /* Expansion mem size low byte ram address */
  37. #define    EMHIGH2        0x31    /* Expansion mem size high byte ram address */
  38. #define    DCB        0x32    /* Date century byte ram address */
  39. #define    IF        0x33    /* Information flag ram address */
  40.  
  41. /*
  42.  * ioctls for accessing CMOS ram.
  43.  */
  44. #define CMOSIOC    ('C' << 8)
  45.  
  46. #define    CMOSREAD    (CMOSIOC | 0x01)
  47. #define    CMOSWRITE    (CMOSIOC | 0x02)
  48.  
  49. extern unsigned char    CMOSread();
  50.  
  51. /*
  52.  * defines for XENIX compatibility
  53.  */
  54.  
  55. /* Ports for interacting with chip at */
  56.  
  57. #define CMOSADDR    0x70     /* Use to select RAM address */
  58. #define CMOSDATA    0x71    /* R/W data */
  59.  
  60. /* Number of cmos bytes */
  61.  
  62. #define CMOSSIZE    0x40    /* 64 addressable bytes in chip */
  63.  
  64. /* Addresses of interest */
  65.  
  66. #define CMOSDIAG    0x0e    /* Diagnostic Status */
  67. #define CMOSFDT        0x10    /* Floppy Disk Type */
  68. #define CMOSHDT        0x12    /* Hard Disk Type; bits 7-4 are 1st drive */
  69. #define CMOSEQP        0x14    /* Diskette, Video, and CoProcessor info */
  70. #define CMOSADF        0x2d    /* Additional flags - Compaq VDU info */
  71.  
  72. /* Shifts of interest */
  73.  
  74. #define VID_SHFT    4    /* Shift display type bits into 0-3 */
  75.  
  76. /* masks of interest */
  77. #define CMPQVDU        0x04    /* Compaq VDU bit */
  78. #define CMPQDMM        0x01    /* Compaq Dual Mode Monitor bit */
  79.