cc65/libsrc/atari/clock.s
cpg 7fa0e2e8ee some small fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@227 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-07-29 21:25:43 +00:00

43 lines
687 B
ArmAsm

;
; Ullrich von Bassewitz, 25.07.2000
;
; Implemented using information from Sidney Cadot <sidney@janis.pds.twi.tudelft.nl>
;
; clock_t clock (void);
; unsigned _clocks_per_sec (void);
;
.export _clock, __clocks_per_sec
.importzp sreg
.include "atari.inc"
.proc _clock
lda #0 ; Byte 3 is always zero
sta sreg+1
php ; Save current I flag value
sei ; Disable interrupts
lda RTCLOK+2
sta sreg
lda RTCLOK ; Read clock
ldx RTCLOK+1
plp ; Restore old I bit
rts
.endproc
.proc __clocks_per_sec
lda #50 ; Assume PAL
ldx PAL ; use hw register, PALNTS is only supported on XL/XE ROM
beq @L1
ldx #0
lda #60
@L1: rts
.endproc