Browse Source
Add NS MM58167B RTC Driver
- This is currently specific to the S100 systems interface.
pull/633/head
Wayne Warthen
3 months ago
No known key found for this signature in database
GPG Key ID: 8B34ED29C07EEB0A
40 changed files with
101 additions and
31 deletions
-
BIN
Doc/RomWBW Applications.pdf
-
BIN
Doc/RomWBW Disk Catalog.pdf
-
BIN
Doc/RomWBW Hardware.pdf
-
BIN
Doc/RomWBW Introduction.pdf
-
BIN
Doc/RomWBW System Guide.pdf
-
BIN
Doc/RomWBW User Guide.pdf
-
ReadMe.md
-
ReadMe.txt
-
Source/Doc/Hardware.md
-
Source/Doc/SystemGuide.md
-
Source/HBIOS/Config/SZ180_std.asm
-
Source/HBIOS/Config/SZ80_std.asm
-
Source/HBIOS/cfg_DUO.asm
-
Source/HBIOS/cfg_DYNO.asm
-
Source/HBIOS/cfg_EPITX.asm
-
Source/HBIOS/cfg_EZZ80.asm
-
Source/HBIOS/cfg_GMZ180.asm
-
Source/HBIOS/cfg_HEATH.asm
-
Source/HBIOS/cfg_MASTER.asm
-
Source/HBIOS/cfg_MBC.asm
-
Source/HBIOS/cfg_MK4.asm
-
Source/HBIOS/cfg_MON.asm
-
Source/HBIOS/cfg_MSX.asm
-
Source/HBIOS/cfg_N8.asm
-
Source/HBIOS/cfg_NABU.asm
-
Source/HBIOS/cfg_RCEZ80.asm
-
Source/HBIOS/cfg_RCZ180.asm
-
Source/HBIOS/cfg_RCZ280.asm
-
Source/HBIOS/cfg_RCZ80.asm
-
Source/HBIOS/cfg_RPH.asm
-
Source/HBIOS/cfg_SBC.asm
-
Source/HBIOS/cfg_SCZ180.asm
-
Source/HBIOS/cfg_SZ180.asm
-
Source/HBIOS/cfg_SZ80.asm
-
Source/HBIOS/cfg_Z80RETRO.asm
-
Source/HBIOS/cfg_ZETA.asm
-
Source/HBIOS/cfg_ZETA2.asm
-
Source/HBIOS/hbios.asm
-
Source/HBIOS/hbios.inc
-
Source/HBIOS/romldr.asm
|
|
|
@ -7,7 +7,7 @@ |
|
|
|
**RomWBW Introduction** \ |
|
|
|
Version 3.6 \ |
|
|
|
Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \ |
|
|
|
12 Nov 2025 |
|
|
|
14 Nov 2025 |
|
|
|
|
|
|
|
# Overview |
|
|
|
|
|
|
|
|
|
|
|
@ -1,6 +1,6 @@ |
|
|
|
RomWBW Introduction |
|
|
|
Wayne Warthen (wwarthen@gmail.com) |
|
|
|
12 Nov 2025 |
|
|
|
14 Nov 2025 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -2492,6 +2492,7 @@ Note: |
|
|
|
| PCF | PCF8584-based I2C Real-Time Clock | |
|
|
|
| RP5C01 | Ricoh RPC01A Real-Time Clock w/ NVRAM | |
|
|
|
| SIMRTC | SIMH Simulator Real-Time Clock | |
|
|
|
| MMRTC | NS MM58167B Real-Time Clock (no NVRAM) | |
|
|
|
|
|
|
|
## DsKy (DiSplay KeYpad) |
|
|
|
|
|
|
|
|
|
|
|
@ -1430,6 +1430,7 @@ unit. The table below enumerates these values. |
|
|
|
| RTCDEV_RP5 | 0x05 | Ricoh RPC01A Real-Time Clock w/ NVRAM | rp5rtc.asm | |
|
|
|
| RTCDEV_EZ80 | 0x07 | eZ80 on-chip RTC | ez80rtc.asm | |
|
|
|
| RTCDEV_PC | 0x08 | MC146818/DS1285/DS12885 RTC w/ NVRAM | pcrtc.asm | |
|
|
|
| RTCDEV_MM | 0x09 | NS MM58167B RTC (no NVRAM) | mmrtc.asm | |
|
|
|
|
|
|
|
The time functions to get and set the time (RTCGTM and RTCSTM) require a |
|
|
|
6 byte date/time buffer in the following format. Each byte is BCD |
|
|
|
|
|
|
|
@ -58,6 +58,7 @@ Z180_MEMWAIT .SET 1 ; Z180: MEMORY WAIT STATES (0-3) |
|
|
|
Z180_IOWAIT .SET 3 ; Z180: I/O WAIT STATES TO ADD ABOVE 1 W/S BUILT-IN (0-3) |
|
|
|
; |
|
|
|
INTRTCENABLE .SET TRUE ; ENABLE PERIODIC INTERRUPT CLOCK DRIVER (INTRTC.ASM) |
|
|
|
MMRTCENABLE .SET TRUE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
ASCIENABLE .SET TRUE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) |
|
|
|
PLDSERENABLE .SET TRUE ; PLDSER: ENABLE PLD-USB SERIAL DRIVER (PLDSER.ASM) |
|
|
|
|
|
|
|
@ -55,6 +55,8 @@ MEMMGR .SET MM_SZ80 ; MEMORY MANAGER: MM_[SBC|Z2|N8|Z180|Z280|MBC|RPH|MON|EZ51 |
|
|
|
FPLED_ENABLE .SET TRUE ; FP: ENABLES FRONT PANEL LEDS |
|
|
|
FPLED_IO .SET $05 ; FP: PORT ADDRESS FOR FP LEDS |
|
|
|
; |
|
|
|
MMRTCENABLE .SET TRUE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
PLDSERENABLE .SET TRUE ; PLDSER: ENABLE PLD-USB SERIAL DRIVER (PLDSER.ASM) |
|
|
|
SCCENABLE .SET TRUE ; SCC: ENABLE ZILOG SCC SERIAL DRIVER (SCC.ASM) |
|
|
|
SCONENABLE .SET TRUE ; SCON: ENABLE S100 CONSOLE DRIVER (SCON.ASM) |
|
|
|
|
|
|
|
@ -169,6 +169,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -164,6 +164,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -163,6 +163,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -204,6 +204,8 @@ DS7RTCMODE .EQU DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .EQU FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .EQU FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
PCRTCENABLE .EQU FALSE ; PCRTC: DISABLE DS12885 etc. RTC |
|
|
|
PCRTC_BASE .EQU $C0 ; Default port for PCRTC, like DSRTC. |
|
|
|
; |
|
|
|
|
|
|
|
@ -162,6 +162,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTC_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -165,6 +165,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -171,6 +171,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -170,6 +170,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -166,6 +166,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -171,6 +171,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -163,6 +163,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -168,6 +168,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -165,6 +165,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
; |
|
|
|
PLDSERENABLE .SET FALSE ; PLDSER: ENABLE PLD-USB SERIAL DRIVER (PLDSER.ASM) |
|
|
|
|
|
|
|
@ -158,6 +158,10 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
; |
|
|
|
PLDSERENABLE .SET FALSE ; PLDSER: ENABLE PLD-USB SERIAL DRIVER (PLDSER.ASM) |
|
|
|
|
|
|
|
@ -166,6 +166,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -155,6 +155,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -166,6 +166,8 @@ DS7RTCMODE .SET DS7RTCMODE_PCF ; DS7RTC: OPERATING MODE: DS7RTCMODE_[PCF] |
|
|
|
; |
|
|
|
DS5RTCENABLE .SET FALSE ; DS5RTC: ENABLE DS-1305 SPI CLOCK DRIVER (DS5RTC.ASM) |
|
|
|
; |
|
|
|
MMRTCENABLE .SET FALSE ; MMRTC: ENABLE NS MM58167B RTC DRIVER (MMRTC.ASM) |
|
|
|
; |
|
|
|
SSERENABLE .SET FALSE ; SSER: ENABLE SIMPLE SERIAL DRIVER (SSER.ASM) |
|
|
|
SSERCFG .SET SER_9600_8N1 ; SSER: SERIAL LINE CONFIG |
|
|
|
SSERSTATUS .SET $FF ; SSER: STATUS PORT |
|
|
|
|
|
|
|
@ -4257,9 +4257,6 @@ HB_INITTBL: |
|
|
|
#IF (SIMRTCENABLE) |
|
|
|
.DW SIMRTC_INIT |
|
|
|
#ENDIF |
|
|
|
#IF (INTRTCENABLE) |
|
|
|
.DW INTRTC_INIT |
|
|
|
#ENDIF |
|
|
|
#IF (DS7RTCENABLE) |
|
|
|
.DW DS7RTC_INIT |
|
|
|
#ENDIF |
|
|
|
@ -4275,6 +4272,12 @@ HB_INITTBL: |
|
|
|
#IF (PCRTCENABLE) |
|
|
|
.DW PCRTC_INIT |
|
|
|
#ENDIF |
|
|
|
#IF (MMRTCENABLE) |
|
|
|
.DW MMRTC_INIT |
|
|
|
#ENDIF |
|
|
|
#IF (INTRTCENABLE) |
|
|
|
.DW INTRTC_INIT |
|
|
|
#ENDIF |
|
|
|
#IF (CPUFAM == CPU_EZ80) |
|
|
|
; INITALISE ONE OF THE SUPPORTED SYSTEM TIMER TICKS DRIVERS |
|
|
|
.DW EZ80_TMR_INIT |
|
|
|
@ -8865,15 +8868,6 @@ SIZ_PCRTC .EQU $ - ORG_PCRTC |
|
|
|
MEMECHO " bytes.\n" |
|
|
|
#ENDIF |
|
|
|
; |
|
|
|
#IF (INTRTCENABLE) |
|
|
|
ORG_INTRTC .EQU $ |
|
|
|
#INCLUDE "intrtc.asm" |
|
|
|
SIZ_INTRTC .EQU $ - ORG_INTRTC |
|
|
|
MEMECHO "INTRTC occupies " |
|
|
|
MEMECHO SIZ_INTRTC |
|
|
|
MEMECHO " bytes.\n" |
|
|
|
#ENDIF |
|
|
|
; |
|
|
|
#IF (DS7RTCENABLE) |
|
|
|
ORG_DS7RTC .EQU $ |
|
|
|
#INCLUDE "ds7rtc.asm" |
|
|
|
@ -8892,6 +8886,24 @@ SIZ_RP5RTC .EQU $ - ORG_RP5RTC |
|
|
|
MEMECHO " bytes.\n" |
|
|
|
#ENDIF |
|
|
|
; |
|
|
|
#IF (MMRTCENABLE) |
|
|
|
ORG_MMRTC .EQU $ |
|
|
|
#INCLUDE "mmrtc.asm" |
|
|
|
SIZ_MMRTC .EQU $ - ORG_MMRTC |
|
|
|
MEMECHO "MMRTC occupies " |
|
|
|
MEMECHO SIZ_MMRTC |
|
|
|
MEMECHO " bytes.\n" |
|
|
|
#ENDIF |
|
|
|
; |
|
|
|
#IF (INTRTCENABLE) |
|
|
|
ORG_INTRTC .EQU $ |
|
|
|
#INCLUDE "intrtc.asm" |
|
|
|
SIZ_INTRTC .EQU $ - ORG_INTRTC |
|
|
|
MEMECHO "INTRTC occupies " |
|
|
|
MEMECHO SIZ_INTRTC |
|
|
|
MEMECHO " bytes.\n" |
|
|
|
#ENDIF |
|
|
|
; |
|
|
|
#IF (SSERENABLE) |
|
|
|
ORG_SSER .EQU $ |
|
|
|
#INCLUDE "sser.asm" |
|
|
|
|
|
|
|
@ -438,6 +438,7 @@ RTCDEV_RP5 .EQU $05 ; RP5C01 |
|
|
|
RTCDEV_DS5 .EQU $06 ; DS1305 (SPI) |
|
|
|
RTCDEV_EZ80 .EQU $07 ; EZ80 ON-CHIP RTC |
|
|
|
RTCDEV_PC .EQU $08 ; PC style parallel RTC |
|
|
|
RTCDEV_MM .EQU $09 ; NS MM58167B RTC (NO NVRAM) |
|
|
|
; |
|
|
|
; DSKY DEVICE IDS |
|
|
|
; |
|
|
|
|
|
|
|
@ -1230,26 +1230,26 @@ appload2: |
|
|
|
; |
|
|
|
;======================================================================= |
|
|
|
; Routine - Copy chunk of data from Rom to a RAM location, source |
|
|
|
; chunk may span banks. |
|
|
|
; chunk may span banks. Source address must be <= 32768. |
|
|
|
; param : HL=Source Adr, DE=Dest Adr, BC=Length, A=Source Bank |
|
|
|
;======================================================================= |
|
|
|
; |
|
|
|
;;; loop: |
|
|
|
;;; |
|
|
|
;;; CPYLEN = (32768 - SRCADR) |
|
|
|
;;; if (CPYLEN >= LEN) then CPYLEN = LEN |
|
|
|
;;; LEN = (LEN - CPYLEN) ; do it here to avoid saving CPYLEN |
|
|
|
;;; |
|
|
|
;;; ; BnkCpy returns updated SRCADR, DSTADR |
|
|
|
;;; call BnkCpy(SRCBNK:SRCADR, DSTBNK:DSTADR, CPYLEN) |
|
|
|
;;; |
|
|
|
;;; if (SRCADR == 32768) |
|
|
|
;;; increment SRCBNK |
|
|
|
;;; SRCADR = 0 |
|
|
|
;;; |
|
|
|
;;; if (LEN == 0) then done |
|
|
|
;;; |
|
|
|
;;; goto loop |
|
|
|
; loop: |
|
|
|
; |
|
|
|
; CPYLEN = (32768 - SRCADR) |
|
|
|
; if (CPYLEN >= LEN) then CPYLEN = LEN |
|
|
|
; LEN = (LEN - CPYLEN) ; do it here to avoid saving CPYLEN |
|
|
|
; |
|
|
|
; ; BnkCpy returns updated SRCADR, DSTADR |
|
|
|
; call BnkCpy(SRCBNK:SRCADR, DSTBNK:DSTADR, CPYLEN) |
|
|
|
; |
|
|
|
; if (SRCADR == 32768) |
|
|
|
; increment SRCBNK |
|
|
|
; SRCADR = 0 |
|
|
|
; |
|
|
|
; if (LEN == 0) then done |
|
|
|
; |
|
|
|
; goto loop |
|
|
|
; |
|
|
|
#if (BIOS == BIOS_WBW) |
|
|
|
; |
|
|
|
|