Browse Source

Merge pull request #545 from wdl1908/master

Some enhancements to the pcf driver.
pull/552/head
Wayne Warthen 8 months ago
committed by GitHub
parent
commit
f42c53f9e5
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 2
      Source/HBIOS/cfg_MASTER.asm
  2. 2
      Source/HBIOS/cfg_RCZ80.asm
  3. 42
      Source/HBIOS/pcf.asm

2
Source/HBIOS/cfg_MASTER.asm

@ -128,6 +128,8 @@ CTCOSC .EQU 614400 ; CTC CLOCK FREQUENCY
;
PCFENABLE .EQU FALSE ; ENABLE PCF8584 I2C CONTROLLER
PCFBASE .EQU $F0 ; PCF8584 BASE I/O ADDRESS
PCFCLK .EQU 12 ; PCF CLOCK BASE
PCFTRNS .EQU 90 ; PCF TRANSFER SPEED
;
EIPCENABLE .EQU FALSE ; EIPC: ENABLE Z80 EIPC (Z84C15) INITIALIZATION
;

2
Source/HBIOS/cfg_RCZ80.asm

@ -96,6 +96,8 @@ CTCOSC .SET CPUOSC ; CTC CLOCK FREQUENCY
;
PCFENABLE .SET FALSE ; ENABLE PCF8584 I2C CONTROLLER
PCFBASE .SET $F0 ; PCF8584 BASE I/O ADDRESS
PCFCLK .SET 8 ; PCF CLOCK BASE
PCFTRNS .SET 90 ; PCF TRANSFER SPEED
;
EIPCENABLE .SET FALSE ; EIPC: ENABLE Z80 EIPC (Z84C15) INITIALIZATION
;

42
Source/HBIOS/pcf.asm

@ -82,10 +82,46 @@ PCF_TRNS11 .EQU 002H ; 11 kHz */
PCF_TRNS15 .EQU 003H ; 1.5 kHz */
;
; BELOW VARIABLES CONTROL PCF CLOCK DIVISOR PROGRAMMING
; HARD-CODED FOR NOW
;
PCF_CLK .EQU PCF_CLK12
PCF_TRNS .EQU PCF_TRNS90
#IF (PCFCLK = 3)
PCF_CLK .EQU PCF_CLK3
#ELSE
#IF (PCFCLK = 443)
PCF_CLK .EQU PCF_CLK443
#ELSE
#IF (PCFCLK = 6)
PCF_CLK .EQU PCF_CLK6
#ELSE
#IF (PCFCLK = 8)
PCF_CLK .EQU PCF_CLK8
#ELSE
#IF (PCFCLK = 12)
PCF_CLK .EQU PCF_CLK12
#ELSE ***ERROR
.ERROR "PCFCLK UNDEFINED OR WRONG VALUE VALID VALUES ARE (3,443,6,8,12)"
#ENDIF
#ENDIF
#ENDIF
#ENDIF
#ENDIF
;
#IF (PCFTRNS = 90)
PCF_TRNS .EQU PCF_TRNS90
#ELSE
#IF (PCFTRNS = 45)
PCF_TRNS .EQU PCF_TRNS45
#ELSE
#IF (PCFTRNS = 11)
PCF_TRNS .EQU PCF_TRNS11
#ELSE
#IF (PCFTRNS = 15)
PCF_TRNS .EQU PCF_TRNS15
#ELSE ***ERROR
.ERROR "PCFTRNS UNDEFINED OR WRONG VALUE VALID VALUES ARE (90,45,11,15)"
#ENDIF
#ENDIF
#ENDIF
#ENDIF
;
; TIMEOUT AND DELAY VALUES (ARBITRARY)
;

Loading…
Cancel
Save