mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 14:11:48 -06:00
ez80: implemented timer get/set function - delegates to firmware
This commit is contained in:
@@ -31,7 +31,7 @@ AUTOCON .EQU TRUE ; ENABLE CONSOLE TAKEOVER AT LOADER PROMPT
|
||||
CPUSPDCAP .EQU SPD_FIXED ; CPU SPEED CHANGE CAPABILITY SPD_FIXED|SPD_HILO
|
||||
CPUSPDDEF .EQU SPD_HIGH ; CPU SPEED DEFAULT SPD_UNSUP|SPD_HIGH|SPD_LOW
|
||||
CPUOSC .EQU 18432000 ; CPU OSC FREQ IN MHZ
|
||||
INTMODE .EQU 1 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
|
||||
INTMODE .EQU 1 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (EZ80 operates with IM 2 - simulating IM 1)
|
||||
DEFSERCFG .EQU SER_115200_8N1 | SER_RTS ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM)
|
||||
;
|
||||
RAMSIZE .EQU 512 ; SIZE OF RAM IN KB (MUST MATCH YOUR HARDWARE!!!)
|
||||
|
||||
@@ -5058,6 +5058,13 @@ SYS_GETFN:
|
||||
; DE:HL: TIMER VALUE (32 BIT)
|
||||
;
|
||||
SYS_GETTIMER:
|
||||
#IF (CPUFAM == CPU_EZ80)
|
||||
LD A, 2
|
||||
LD B, 0 ; GET TIMER TICK
|
||||
EZ80_FN
|
||||
RET
|
||||
|
||||
#ELSE
|
||||
LD HL,HB_TICKS
|
||||
HB_DI
|
||||
CALL LD32
|
||||
@@ -5065,6 +5072,8 @@ SYS_GETTIMER:
|
||||
LD C, TICKFREQ
|
||||
XOR A
|
||||
RET
|
||||
#ENDIF
|
||||
|
||||
;
|
||||
; GET SECONDS
|
||||
; RETURNS:
|
||||
@@ -5072,6 +5081,13 @@ SYS_GETTIMER:
|
||||
; C: NUM TICKS WITHIN CURRENT SECOND
|
||||
;
|
||||
SYS_GETSECS:
|
||||
#IF (CPUFAM == CPU_EZ80)
|
||||
LD A, 2
|
||||
LD B, 1 ; GET SECOND TICK
|
||||
EZ80_FN
|
||||
RET
|
||||
|
||||
#ELSE
|
||||
LD HL,HB_SECS
|
||||
HB_DI
|
||||
CALL LD32
|
||||
@@ -5082,6 +5098,7 @@ SYS_GETSECS:
|
||||
LD C,A
|
||||
XOR A
|
||||
RET
|
||||
#ENDIF
|
||||
;
|
||||
; GET BOOT INFORMATION
|
||||
; RETURNS:
|
||||
@@ -5289,24 +5306,38 @@ SYS_SETBOOTINFO:
|
||||
; DE:HL: TIMER VALUE (32 BIT)
|
||||
;
|
||||
SYS_SETTIMER:
|
||||
#IF (CPUFAM == CPU_EZ80)
|
||||
LD A, 2
|
||||
LD B, 2 ; SET TICKS
|
||||
EZ80_FN
|
||||
RET
|
||||
#ELSE
|
||||
LD BC,HB_TICKS
|
||||
HB_DI
|
||||
CALL ST32
|
||||
HB_EI
|
||||
XOR A
|
||||
RET
|
||||
#ENDIF
|
||||
;
|
||||
; SET SECS
|
||||
; ON ENTRY:
|
||||
; DE:HL: SECONDS VALUE (32 BIT)
|
||||
;
|
||||
SYS_SETSECS:
|
||||
#IF (CPUFAM == CPU_EZ80)
|
||||
LD A, 2
|
||||
LD B, 3 ; SET SECS
|
||||
EZ80_FN
|
||||
RET
|
||||
#ELSE
|
||||
LD BC,HB_SECS
|
||||
HB_DI
|
||||
CALL ST32
|
||||
HB_EI
|
||||
XOR A
|
||||
RET
|
||||
#ENDIF
|
||||
;
|
||||
; SET SYSTEM CPU SPEED ATTRIBUTES
|
||||
; ON ENTRY:
|
||||
|
||||
@@ -6,8 +6,8 @@ include $(TOOLS)/Makefile.inc
|
||||
|
||||
.SHELLFLAGS = -ce
|
||||
|
||||
ROMAPPS1 := assign mode rtc syscopy xm ../../Source/Images/Common/All/WDATE
|
||||
ROMAPPS2 := fdu format survey sysgen talk timer cpuspd
|
||||
ROMAPPS1 := assign mode rtc syscopy xm
|
||||
ROMAPPS2 := fdu format survey sysgen talk cpuspd
|
||||
|
||||
rom128_%.dat: DISKDEF=wbw_rom128
|
||||
rom256_%.dat: DISKDEF=wbw_rom256
|
||||
|
||||
BIN
Source/RomDsk/ROM_384KB/timer.com
Normal file
BIN
Source/RomDsk/ROM_384KB/timer.com
Normal file
Binary file not shown.
Reference in New Issue
Block a user