



                             AT REAL TIME CLOCK


The following information is provided for use "as-is" and is not guaranteed 
to be completely correct.  I have made ever attempt to check for correctness.
If you should have any corrections let me know.  I am including the source
files for CMOSRAM, one for MSs Quick C and one for Borlands Turbo Basic.


                                                 Thank You
                                                 James McDaniel
                                                 CIS 74365,1716


I/O ports 70 and 71 HEX.  Send address to I/O port 70 and read data 
from I/O port 71.  See data sheet on MC14818 for more info on commands
and there use.  A breakdown of memory locations and there use follows.


		AT REAL TIME CLOCK RAM CONFIGURATION USAGE

---------------------------------------------------------------------------
 ADDRESS   FUNCTION                   COMMENTS
---------------------------------------------------------------------------
   0H      SECONDS
   1H      SECOND ALARM
   2H      MINUTES
   3H      MINUTE ALARM
   4H      HOURS
   5H      HOUR ALARM
   6H      DAY OF WEEK
   7H      DAY OF MONTH
   8H      MONTH
   9H      YEAR
  0AH      STATUS REGISTER A          SEE AT RTC STATUS REGISTER A
  0BH      STSTUS REGISTER B          SEE AT RTC STATUS REGISTER B
  0CH      STATUS REGISTER C          SEE AT RTC STATUS REGISTER C
  0DH      STATUS REGISTER D          SEE AT RTC STATUS REGISTER D
  0EH      DIAGNOSTIC STATUS BYTE     SEE AT RTC DIAGNOSTIC STATUS BYTE
  0FH      SHUTDOWN STATUS BYTE       DEFINED BY POWER ON DIAGNOSTICS
  10H      DISK DRIVE TYPE BYTE       SEE AT RTC DISKETTE DRIVE TYPE BYTE
  11H      RESERVED
  12H      FIXED DRIVE TYPE           SEE AT RTC FIXED DRIVE TYPE BYTE
  13H      RESERVED
  14H      EQUIPMENT BYTE             SEE AT RTC EQUIPMENT BYTE
  15H      LOW BASE MEMORY BYTE
  16H      HIGH BASE MEMORY BYTE      100H=256K,200H=512K,280=640K
  17H      LOW EXPANSION MEMORY BYTE
  18H      HIGH EXPANSION MEMORY BYTE 200H=512K,400H=1024K,600-3C00H=TO 15360K
  19H      DRIVE C EXTENDED BYTE      SEE AT FIXED DISK DRIVE TYPES (TO 0EH)
  1AH      DRIVE D EXTENDED BYTE      SEE AT FIXED DISK DRIVE TYPES (TO 0EH)
1BH-2DH    RESERVED
2EH-2FH    CHECKSUM                   SIMPLE ADD OF DATA @ ADDRESSES 10-2DH
  30H      LOW EXPANSION MEMORY BYTE
  31H      HIGH EXPANSION MEMORY BYTE 200H=512K,400H=1024K,600-3C00H=TO 15360K 
  32H      DATE CENTURY BYTE          BCD VALUE FOR CENTURY
  33H      INFORMATION FLAGS          (BIT 7 SET = TOP 128K INSTALLED - CONT.
34H-3FH    RESERVED                   CONT. BIT 6 SET = FIRST USER MESSAGE)








                      AT REAL TIME CLOCK STATUS REGISTER A

---------------------------------------------------------------------------
7 6 5 4 3 2 1 0   FUNCTION               ALLOWABLE VALUES
---------------------------------------------------------------------------
X                 UPDATE IN PROGRESS    1=DATE/TIME BEING UPDATED 0=NOT
  X X X           22 STAGE DIVIDER      DEFAULT=010, 32.768 KHZ TIME BASE
        X X X X   RATE SELECTION        DEFAULT=0110, 1.024 KHZ FREQUENCY





                  AT REAL TIME CLOCK STATUS REGISTERS B

-------------------------------------------------------------------------
7 6 5 4 3 2 1 0   NAME                ALLOWABLE VALUES
--------------------------------------------------------------------------
X                 SET, 1 PER SECOND   0=UPDATE NORMALLY, 1=ABORT UPDATE
  X               PERIODIC INT ENABLE 0=DISABLE INT (DEFAULT), 1=ENABLED
    X             ALARM INT ENABLE    0=DISABLED (DEFAULT), 1=ENABLED
      X           UPDATE END INT ENA. 0=DISABLED (DEFAULT), 1=ENABLED
        X         SQUARE WAVE ENABLE  0=DIS (DEF), 1=ENA, PER REG A 0-3
          X       DATE MODE           0=BCD (DEFAULT), 1=BINARY
            X     24/12 MODE          0=12 HOUR, 1=24 HOUR FORMAT (DEFAULT)
              X   DAYLIGHT SAVING ENA 0=DISABLED (DEFAULT), 1=ENABLED


                  AT REAL TIME CLOCK STATUS REGISTER C

-------------------------------------------------------------------------
7 6 5 4 3 2 1 0   NAME                ALLOWABLE VALUES
-------------------------------------------------------------------------
X                 IRQF FLAG           READ ONLY
  X               PF FLAG             READ ONLY
    X             AF FLAG             READ ONLY
      X           UF FLAG             READ ONLY
        X X X X   RESERVED            SHOULD ALWAYS BE ZERO


                  AT REAL TIME CLOCK STATUS REGISTER D

--------------------------------------------------------------------------
7 6 5 4 3 2 1 0   NAME                ALLOWABLE VALUES                   
--------------------------------------------------------------------------
X                 VALID RAM BIT       0=BATT DEAD,RAM INVALID, 1=BATT GOOD
  X X X X X X X   RESERVED            SHOULD ALWAYS BE ZERO


                  AT REAL TIME CLOCK DIAGNOSTICS BYTE

------------------------------------------------------------------------
7 6 5 4 3 2 1 0   NAME                ALLOWABLE VALUES
------------------------------------------------------------------------
X                 POWER STAT OF RTC   1=CHIP HAS LOST POWER, 0=NOT
  X               CHECKSUM STATUS     0=CHECKSUM OK, 1=NOT OK
    X             CONFIGURATION INFO  0=VALID INFO, 1=NOT VALID
      X           MEMORY SIZE COMPARE 0=SAME SIZE, 1=NOT SAME SIZE
        X         FIXED DISK STATUS   0=OK, 1=DRIVE OR ADAPTER FAILED
          X       TIME STATUS         0=TIME IS OK, 1=TIME NOT OK
            X X   RESERVED







                  AT REAL TIME CLOCK DRIVE TYPE BYTE

-------------------------------------------------------------------------
7 6 5 4 3 2 1 0   FUNCTION            ALLOWABLE VALUES
-------------------------------------------------------------------------
X X X X           TYPE OF FIRST DRIVE 0000=NO DRIVE,   0001=360K 5.25"
                                      0010=1.2M 5.25"  0011=720K 3.5"
                                      0100=1.44M 3.5" 

        X X X X   TYPE OF SECOND DRIVE




                   AT REAL TIME CLOCK FIXED DRIVE TYPES

----------------------------------------------------------------------------
7 6 5 4 3 2 1 0    NAME               ALLOWABLE VALUES
----------------------------------------------------------------------------
X X X X            FIXED DISK C TYPE  0000=NO DRIVE 1H TO 0EH SEE CHART
        X X X X    FIXED DISK D TYPE  0000=NO DRIVE 1H TO 0EH SEE CHART

                   IF BYTE= 0FH THEN SEE EXTENDED BYTE FOR DRIVE TYPE



                   AT REAL TIME CLOCK EQUIPMENT BYTE

-----------------------------------------------------------------------------
7 6 5 4 3 2 1 0    NAME                  ALLOWABLE VALUES
-----------------------------------------------------------------------------
X X                NUMBER OF DISK DRIVES 00=1,01=2, OTHER VALUES RESERVED
    X X            PRIMARY DISPLAY TYPE  00=DISPLAY HAS BIOS,01=40 COL CGA
                                         10=80 COL CGA, 11=MDA
        X X        NOT USED
            X      MATH COPROCESSOR      0=NOT INSTALLED, 1=INSTALLED
              X    DISK DRIVES AVAILABLE 0=NO DRIVES, 1=DISK DRIVES AVAILABLE


           AT REAL TIME CLOCK DRIVE C AND D EXTENDED DRIVE TYPE BYTES

-----------------------------------------------------------------------------
7 6 5 4 3 2 1 0    NAME                  ALLOWABLE VALUES
-----------------------------------------------------------------------------
X X X X X X X X    DRIVE C TYPE BYTE     SEE NEXT CHART FOR TYPES
X X X X X X X X    DRIVE D TYPE BYTE     SEE NEXT CHART FOR TYPES

                   IF FIXED DRIVE 4 BITS FOR C IS 0-0EH IGNOR EXTENDED C
                   IF FIXED DRIVE 4 BITS FOR D IS 0-0EH IGNOR EXTENDED D
















	                    AT HARD DISK TYPES

	+--------------------------------------------------------+
	|      |          |       |      |      |         |      |
	| DISK | CYLINDER | TOTAL | PRE- | LAND | SECTORS | SIZE |
	| TYPE |  COUNT   | HEADS | COMP | ZONE | PER/TRK |  MB  |
	|------+----------+-------+------+------+---------+------|
	|   1  |    306   |    4  |  128 |  305 |   17    | 10.1 |
	|------+----------+-------+------+------+---------+------|
	|   2  |    615   |    4  |  300 |  615 |   17    | 20.4 |
	|------+----------+-------+------+------+---------+------|
	|   3  |    615   |    6  |  300 |  615 |   17    | 30.6 |
	|------+----------+-------+------+------+---------+------|
	|   4  |    940   |    8  |  512 |  940 |   17    | 62.4 |
	|------+----------+-------+------+------+---------+------|
	|   5  |    940   |    6  |  512 |  940 |   17    | 46.8 |
	|------+----------+-------+------+------+---------+------|
	|   6  |    615   |    4  | NONE |  615 |   17    | 20.4 |
	|------+----------+-------+------+------+---------+------|
	|   7  |    462   |    8  |  256 |  511 |   17    | 30.6 |
	|------+----------+-------+------+------+---------+------|
	|   8  |    733   |    5  | NONE |  733 |   17    | 30.4 |
	|------+----------+-------+------+------+---------+------|
	|   9  |    900   |   15  | NONE |  901 |   17    |112.0 |
	|------+----------+-------+------+------+---------+------|
	|  10  |    820   |    3  | NONE |  820 |   17    | 20.4 |
	|------+----------+-------+------+------+---------+------|
	|  11  |    855   |    5  | NONE |  855 |   17    | 35.4 |
	|------+----------+-------+------+------+---------+------|
	|  12  |    855   |    7  | NONE |  855 |   17    | 49.6 |
	|------+----------+-------+------+------+---------+------|
	|  13  |    306   |    8  |  128 |  319 |   17    | 20.3 |
	|------+----------+-------+------+------+---------+------|
	|  14  |    733   |    7  | NONE |  733 |   17    | 42.5 |
	|------+----------+-------+------+------+---------+------|
	|  16  |    612   |    4  |    0 |  663 |   17    | 20.5 |
	|------+----------+-------+------+------+---------+------|
	|  17  |    977   |    5  |  300 |  977 |   17    | 40.5 |
	|------+----------+-------+------+------+---------+------|
	|  18  |    977   |    7  | NONE |  977 |   17    | 56.7 |
	|------+----------+-------+------+------+---------+------|
	|  19  |   1024   |    7  |  512 | 1023 |   17    | 59.5 |
	|------+----------+-------+------+------+---------+------|
	|  20  |    733   |    5  |  300 |  732 |   17    | 30.4 |
	|------+----------+-------+------+------+---------+------|
	|  21  |    733   |    7  |  300 |  732 |   17    | 42.5 |
	|------+----------+-------+------+------+---------+------|
	|  22  |    733   |    5  |  300 |  733 |   17    | 30.4 |
	|------+----------+-------+------+------+---------+------|
	|  23  |    306   |    4  |    0 |  336 |   17    | 10.1 |
	|------+----------+-------+------+------+---------+------|
	|  25  |    615   |    4  |    0 |  615 |   17    | 20.4 |
	|------+----------+-------+------+------+---------+------|
	|  26  |   1024   |    4  | NONE | 1023 |   17    | 34.0 |
	+--------------------------------------------------------+











	                    AT HARD DISK TYPES

	+--------------------------------------------------------+
	|      |          |       |      |      |         |      |
	| DISK | CYLINDER | TOTAL | PRE- | LAND | SECTORS | SIZE |
	| TYPE |  COUNT   | HEADS | COMP | ZONE | PER/TRK |  MB  |
	|------+----------+-------+------+------+---------+------|
	|  27  |   1024   |    5  | NONE | 1023 |   17    | 42.5 |
	|------+----------+-------+------+------+---------+------|
	|  28  |   1024   |    8  | NONE | 1023 |   17    | 68.0 |
	|------+----------+-------+------+------+---------+------|
	|  29  |    512   |    8  |  256 |  512 |   17    | 34.0 |
	|------+----------+-------+------+------+---------+------|
	|  30  |    615   |    2  |  615 |  615 |   17    | 10.2 |
	|------+----------+-------+------+------+---------+------|
	|  31  |    989   |    5  |    0 |  989 |   17    | 41.0 |
	|------+----------+-------+------+------+---------+------|
	|  32  |   1020   |   15  | NONE | 1024 |   17    |127.0 |
	|------+----------+-------+------+------+---------+------|
	|  35  |   1024   |    9  | 1024 | 1024 |   17    | 76.5 |
	|------+----------+-------+------+------+---------+------|
	|  36  |   1024   |    5  |  512 | 1024 |   17    | 42.5 |
	|------+----------+-------+------+------+---------+------|
	|  37  |    830   |   10  | NONE |  830 |   17    | 68.8 |
	|------+----------+-------+------+------+---------+------|
	|  38  |    823   |   10  |  256 |  824 |   17    | 68.3 |
	|------+----------+-------+------+------+---------+------|
	|  39  |    615   |    4  |  128 |  664 |   17    | 20.4 |
	|------+----------+-------+------+------+---------+------|
	|  40  |    615   |    8  |  128 |  664 |   17    | 40.8 |
	|------+----------+-------+------+------+---------+------|
	|  41  |    917   |   15  | NONE |  918 |   17    |114.1 |
	|------+----------+-------+------+------+---------+------|
	|  42  |   1023   |   15  | NONE | 1024 |   17    |127.3 |
	|------+----------+-------+------+------+---------+------|
	|  43  |    823   |   10  |  512 |  823 |   17    | 68.3 |
	|------+----------+-------+------+------+---------+------|
	|  44  |    820   |    6  | NONE |  820 |   17    | 40.8 |
	|------+----------+-------+------+------+---------+------|
	|  45  |   1024   |    8  | NONE | 1024 |   17    | 68.0 |
	|------+----------+-------+------+------+---------+------|
	|  46  |    925   |    9  | NONE |  925 |   17    | 69.1 |
	|------+----------+-------+------+------+---------+------|
	|  47  |    699   |    7  |  256 |  700 |   17    | 40.6 |
	+--------------------------------------------------------+
	















