.TITLE WATCH DOG TIMER .IDENT /V00.0A/ .ENABL AMA .NLIST BEX .MCALL DIR$,SPND$S,EXIT$S,ASTX$S,MRKT$,QIOW$ ; START: DIR$ #HELLO ;TELL THEM WE RAN. MOV #RUN.WD,CSR.WD ;ENABLE THE TIMER. MOV #1,SRR.WD ;ENABLE THE RELAY. DIR$ #DELAY ;WAIT A LITTLE BEFORE TESTING. SPND$S ;NOW WE GO TO SLEEP. ; ; ; CLR CSR.WD ;DISABLE THE TIMER. (???) DIR$ #BYE ;TELL THEM WE ARE GONE. EXIT$S ;GO AWAY. ; ; ; HITME: DIR$ #DELAY ;WAIT A LITTLE AGAIN. MOV #RUN.WD,CSR.WD ;RESET THE TIME-OUT. TST (SP)+ ;REMOVE JUNK E.F. ASTX$S ;EXIT THE AST. ; ; ; DELAY: MRKT$ ,60.,1.,HITME ;DELAY DPB FOR 60 TICKS. HELLO: QIOW$ IO.WVB,5,5,,,, BYE: QIOW$ IO.WVB,5,5,,,, ; MSG1: .ASCII /**** WATCH DOG IS AWAKE ****/ $MSG1= .-MSG1 MSG2: .ASCII /**** WATCH DOG IS ASLEEP ****/ $MSG2= .-MSG2 .EVEN ; RUN.WD= 3 ;ENABLE STUFF ; CSR.WD= 172400 CFR.WD= 172402 XCSR= 172404 SRR.WD= 172406 ; .END START