program test { #include #include #include timer Timer1 counter vMsg = 0 event timeOutEvent when Timer1 > 9999 event vMsg1 when vMsg = 1 event vMsg2 when vMsg = 2 event vMsg3 when vMsg = 3 event vMsg4 when vMsg = 4 event vMsg5 when vMsg = 5 event vMsg6 when vMsg = 6 event vMsg7 when vMsg = 7 event vMsg8 when vMsg = 8 main { bbs_GlobalReset([A B C]) priority 8 start VCS_Watcher1 start VCS_Watcher2 start VCS_Watcher3 start VCS_Watcher4 start VCS_Watcher5 start VCS_Watcher6 start VCS_Watcher7 start VCS_Watcher8 forever { bb_SpinLeft(A, C, 10) clear message timeOutEvent.high = 40 clear Timer1 monitor timeOutEvent { forever { while message = 0 { /* wait for message */ } clear Timer1 vMsg = message while vMsg > 0 { clear Timer1 } clear message } } abort on event } } watcher VCS_Watcher1 monitor vMsg1 { power [ A B C ] 1 vMsg = 0 } watcher VCS_Watcher2 monitor vMsg2 { power [ A B C ] 2 vMsg = 0 } watcher VCS_Watcher3 monitor vMsg3 { power [ A B C ] 3 vMsg = 0 } watcher VCS_Watcher4 monitor vMsg4 { power [ A B C ] 4 vMsg = 0 } watcher VCS_Watcher5 monitor vMsg5 { power [ A B C ] 5 vMsg = 0 } watcher VCS_Watcher6 monitor vMsg6 { power [ A B C ] 6 vMsg = 0 } watcher VCS_Watcher7 monitor vMsg7 { power [ A B C ] 7 vMsg = 0 } watcher VCS_Watcher8 monitor vMsg8 { power [ A B C ] 8 vMsg = 0 } }