120 OPEN 2,2,0,CHR$(136)+CHR$(0): REM - OPEN RS-232 AT 1200 BPS 130 : 140 COFFEE = 204: LIGHTS = 220: REM - ASSIGN BSR MODULE 1 AND 2 ADDRESSES 150 : 160 C1 = 197: C2 = 199: REM - ASSIGN COMMANDS FOR BSR CONTROL 170 : 180 CHANNEL = COFFEE: CTRL = C2: GOSUB 500: REM - MAKE SURE COFFEE IS OFF 190 CHANNEL = LIGHTS: CTRL = C2: GOSUB 500:REM - MAKE SURE LIGHTS ARE OFF 200 : 210 PRINT "[147]MORNING COFFEE - PROGRAM INITIALIZATION" 220 INPUT " ENTER TIME NOW, SUCH AS HH,MM ";HOURS$,MINUTES$ 230 TI$ = HOURS$ + MINUTES$ + "00" 240 : 250 INPUT " ENTER TIME TO TURN ON COFFEE ";HOURS$,MINUTES$ 260 TC$ = HOURS$ + MINUTES$ 270 T1 = 60 * VAL(HOURS$) + VAL(MINUTES$) 280 INPUT " ENTER TIME TO TURN ON LIGHTS ";HOURS$,MINUTES$ 290 TL$ = HOURS$ + MINUTES$ 300 T2 = 60 * VAL(HOURS$) + VAL(MINUTES$) 310 PRINT " HAVE A GOOD NIGHT!" 320 PRINT " COFFEE WILL START AT ";LEFT$(TC$,2)+":"+RIGHT$(TC$,2) 330 PRINT " LIGHTS ON AT ";LEFT$(TL$,2)+":"+RIGHT$(TL$,2) 340 PRINT " PLEASE TURN OFF MONITOR NOW..." 350 : 360 T = 60 * VAL(LEFT$(TI$,2)) + VAL(MID$(TI$,3,2)) 370 IF T <> T1 THEN360 380 : 390 CHANNEL = COFFEE: CTRL = C1: GOSUB490: REM - TURN ON COFFEE MAKER 400 : 410 T = 60 * VAL(LEFT$(TI$,2)) + VAL(MID$(TI$,3,2)) 420 IF T <> T2 THEN410 430 : 440 CHANNEL = COFFEE: CTRL = C2: GOSUB490: REM - TURN OFF COFFEE MAKER 450 CHANNEL = LIGHTS: CTRL = C1: GOSUB490: REM - TURN ON LIGHTS 460 CLOSE 2: PRINT"[147]" 470 END: REM - END OF PROGRAM, SUBROUTINE TO CONTROLLE BSR MODILES FOLLOWS 480 : 490 REM - SUBROUTINE TO CONTROL A BSR MODULE: 500 PRINT#2,CHR$(CHANNEL) 510 FOR PAUS = 1 TO 1000: NEXT PAUS: REM - SHORT DELAY 520 PRINT#2,CHR$(CTRL) 530 FOR PAUS = 1 TO 1000: NEXT PAUS: REM - SHORT DELAY 540 RETURN