Browse Source

Architecture support for DS1307 I2C

pull/198/head
b1ackmai1er 5 years ago
parent
commit
9fee763265
  1. 2
      Source/Apps/rtcds7.asm
  2. 21
      Source/HBIOS/hbios.asm
  3. 3
      Source/HBIOS/hbios.inc
  4. 7
      Source/HBIOS/std.asm

2
Source/Apps/rtcds7.asm

@ -108,7 +108,7 @@ DS7_CTL .EQU (DS7_OUT | DS7_SQWE | DS7_RATE)
; ;
; ;
CALL DS7_RDC ; READ CLOCK DATA INTO BUFFER CALL DS7_RDC ; READ CLOCK DATA INTO BUFFER
CALL DS7_DISP ; DISPLAY TIME AND DATE FROM BUFFER
CALL DS7_DISP ; DISPLAY TIME AND DATE FROM BUFFER
RET RET
; ;
;----------------------------------------------------------------------------- ;-----------------------------------------------------------------------------

21
Source/HBIOS/hbios.asm

@ -2281,6 +2281,10 @@ HB_INITTBL:
#IF (INTRTCENABLE) #IF (INTRTCENABLE)
.DW INTRTC_INIT .DW INTRTC_INIT
#ENDIF #ENDIF
#IF (DS7RTCENABLE)
.DW PCF8584_INIT
.DW DS7RTC_INIT
#ENDIF
#IF (VDUENABLE) #IF (VDUENABLE)
.DW VDU_INIT .DW VDU_INIT
#ENDIF #ENDIF
@ -4468,6 +4472,23 @@ SIZ_SIMRTC .EQU $ - ORG_SIMRTC
.ECHO SIZ_SIMRTC .ECHO SIZ_SIMRTC
.ECHO " bytes.\n" .ECHO " bytes.\n"
#ENDIF #ENDIF
#IF (DS7RTCENABLE & (DS7RTCMODE=DS7RTCMODE_PCF))
ORG_PCF8584 .EQU $
#INCLUDE "pcf8584.asm"
SIZ_PCF8584 .EQU $ - ORG_PCF8584
.ECHO "PCF8584 occupies "
.ECHO SIZ_PCF8584
.ECHO " bytes.\n"
#ENDIF
#IF (DS7RTCENABLE)
ORG_DS7RTC .EQU $
#INCLUDE "ds7rtc.asm"
SIZ_DS7RTC .EQU $ - ORG_DS7RTC
.ECHO "DS7RTC occupies "
.ECHO SIZ_DS7RTC
.ECHO " bytes.\n"
#ENDIF
; ;
#IF (INTRTCENABLE) #IF (INTRTCENABLE)
ORG_INTRTC .EQU $ ORG_INTRTC .EQU $

3
Source/HBIOS/hbios.inc

@ -186,10 +186,11 @@ DIODEV_HDSK .EQU $90
; ;
; RTC DEVICE IDS ; RTC DEVICE IDS
; ;
RTCDEV_DS .EQU $00 ; DS1322
RTCDEV_DS .EQU $00 ; DS1302
RTCDEV_BQ .EQU $10 ; BQ4845P RTCDEV_BQ .EQU $10 ; BQ4845P
RTCDEV_SIMH .EQU $30 ; SIMH RTCDEV_SIMH .EQU $30 ; SIMH
RTCDEV_INT .EQU $40 ; PERIODIC INT TIMER RTCDEV_INT .EQU $40 ; PERIODIC INT TIMER
RTCDEV_DS7 .EQU $50 ; DS1302 (I2C)
; ;
; VIDEO DEVICE IDS ; VIDEO DEVICE IDS
; ;

7
Source/HBIOS/std.asm

@ -115,12 +115,17 @@ CTCMODE_CTR .EQU 1 ; CTC COUNTER
CTCMODE_TIM16 .EQU 2 ; CTC TIMER W/ DIV 16 CTCMODE_TIM16 .EQU 2 ; CTC TIMER W/ DIV 16
CTCMODE_TIM256 .EQU 3 ; CTC TIMER W/ DIV 256 CTCMODE_TIM256 .EQU 3 ; CTC TIMER W/ DIV 256
; ;
; DS RTC MODE SELECTIONS
; DS1302 RTC MODE SELECTIONS
; ;
DSRTCMODE_NONE .EQU 0 ; NO DSRTC DSRTCMODE_NONE .EQU 0 ; NO DSRTC
DSRTCMODE_STD .EQU 1 ; ORIGINAL DSRTC CIRCUIT (SBC, ZETA, MK4) DSRTCMODE_STD .EQU 1 ; ORIGINAL DSRTC CIRCUIT (SBC, ZETA, MK4)
DSRTCMODE_MFPIC .EQU 2 ; MF/PIC VARIANT DSRTCMODE_MFPIC .EQU 2 ; MF/PIC VARIANT
; ;
; DS1307 RTC MODE SELECTIONS
;
DS7RTCMODE_NONE .EQU 0 ; NO DSRTC
DS7RTCMODE_PCF .EQU 1 ; PCF8584 I2C
;
; SIO MODE SELECTIONS ; SIO MODE SELECTIONS
; ;
SIOMODE_NONE .EQU 0 SIOMODE_NONE .EQU 0

Loading…
Cancel
Save