Metropoli BBS
VIEWER: delay.bas MODE: TEXT (ASCII)
 Delay.start! = TIMER           'the start of the delay
 Duration! = 1.5                'we want to wait 1.5 seconds
 CLS
 DO
    'do any desired tasks
    CALL Delay(Delay.start!, Duration!, Time.left!)
 LOOP WHILE Time.left! > 0


 SUB Delay (Start.time!, Dur!, Secs.left!) STATIC
     IF TIMER >= Start.time! THEN       'same day as we started
        Secs.left! = Start.time! + Dur! - TIMER
     ELSE                               'we have passed midnight
        Secs.left! = Start.time! + Dur! - TIMER - 86400
     END IF
 END SUB

[ RETURN TO DIRECTORY ]