home *** CD-ROM | disk | FTP | other *** search
- ' def fnCTICKS.def -- returns the number of clock ticks since midnight
- '
- ' Allows the caller to `mark' the time, with an optional offset
- ' ahead in time. Useful in timing routines
- '
- ' USAGE:
- ' HUN.SCNDS = 100
- ' MARK! = FNCTICKS (HUN.SCNDS) ' # of clock ticks that will
- ' 'have occurred since midnite (in 1 sec. from now)
- '
- 'input: HUN.SCNDS = hundredths of seconds from now
- 'output: TIME.MARK! = time marker calculated (clock ticks since midnight)
- '
- '$INCLUDE: 'qb.bi'
- DEF fncticks! (hun.scnds!)
- '$INCLUDE: 'TICKS.def'
- '$DYNAMIC
- DIM Registers AS RegType
- Registers.ax = 0 'set AH (& AL) to 0 to get clock setting
- CALL interrupt(&H1A, Registers, Registers)
- ''CALL int86(&H1A, VARPTR(registers%(0)), VARPTR(registers%(0)))
- cx! = Registers.cx: dx! = Registers.dx
- cticks! = (cx! * 2 ^ 16 + dx!) + (hun.scnds! / 100 * ticks.per.sec!)
- IF cticks! > ticks.per.day! THEN cticks! = cticks! - ticks.per.day!'passed midnite
- fncticks! = FIX(cticks!)
- END DEF
-
-
-