% ******************************%* *% * ANALOGUE CLOCK V 009 *% * *% ****************************** By Mark St.J. Bailey $ CLOCK. Version date 18/6/84*8 copyright (c) 1984 Tatung (UK) Ltd.B3L: 4: K~ 0 r 15: K," ": K: START LINE 1=V Z s : 1000:Z~u1: : 1000: 2140: START LINE 2`AL$~"******"jt SET UP SCREEN~1 : 15,0 : 40#IND USER OF OPTIONS AVAILABLE @9,2;"ENTER YOUR CHOICE :" @9,3;""@9,6;"KEY FUNCTION"@9,7;" "!@10,9;"1 DISPLAY CLOCK"@10,11;"2 RESET TIME"#@10,13;"3 SET ALARM TIME"!@10,15;"4 QUIT PROGRAM"  CONVERT INPUT VALUE TO 1-DIGIT NUMBER ((20) 2A~u48 : A}4 { A0 s 1330< F GO TO APPROPRIATE ROUTINEPZ A 1410,1700,1750,2140dn THIS IS ANALOGUE CLOCKx40:11,1:1:90,100  4 1970  15 0,0,55,1.312,0,0,0 0,0,48,1.312,0,0,0d@28,6;"TIME" : @28,14;"ALARM":@23,19;"S STOPS ALARM":@6,23;"Press SPACE to return to menu";7 : T1$~ : 1600 11,11 A~&20 s 1130 15,1 T0$~T1$~ : @28,8;:11,11 15,10@28,8;(T1$,2);":";(T1$,3,2);":";(T1$,2)1@28,16;(AL$,2);":";(AL$,3,2);":";(AL$,2):" RING s (T1$,4)~(AL$,4)s 2070: A~&53 s RING~0#,A~: A~&20 s 1130: A~A z &DF"6 (T0$,3,2)~(T1$,3,2)s 1530@ 0,0 r XM%,YM%,1 JALPHA~6w((T1$,3,2))u90)2TXM%~(40w(uALPHA)):YM%~(40w1.312w(uALPHA))^ 0,0 r XM%,YM%,0h 0,0 r XH%,YH%,1-rBETA~30w((T1$,2))u90)t(ALPHAtx2)x12,|XH%~(35w(uBETA)) : YH%~(35w(uBETA)) 0,0 r XH%,YH%,0  1500 SET CLOCK TIME%MES$~"ENTER CORRECT TIME": 1790~(T$t"000000",6) GO BACK TO MENU  1130 SET ALARM TIME$MES$~" ENTER ALARM TIME": 1790/AL$~(T$t"000000",6):RING~u1: RESET ALARM  1130 PROMPT FOR TIME INPUT40:(17)@12,10;MES$)@17,12;"HH:MM:SS";:I~1r8:(8);:IT$~"":I~0& GET NEXT CHARACTER 0A$~$4: RETURN IF 6 CHARACTERS ENTERED OR HITD (A$)~13 s 1950#N (A$)&30 { (A$)}&39 s 1840#X (I~3 { I~6) z (A$)}5 s 1840b I~0 z (A$)}2 s 1840&l I~1 z (A$)}4 z (T$)~2 s 18403vT$~T$tA$:@17tI,12;A$;: I~It1: (T$)~6 s 1950 SKIP OVER SEPARATER I~2 { I~5 s I~It1:":";  1840  Z~1 s 280 : (17):: DRAW HOUR MARKERS I~0 r 11wx6 p x6X1%~48w(I):X2%~55w(I)(Y1%~48w1.312w(I):Y2%~55w1.312w(I) X1%,Y1% r X2%,Y2%,0 I I~2 r 38:@I,0;(255):II~2r38:@I,22;(255);:I- I~1r 22:@2,I;(255):@38,I;(255): I L~((T1$,2)) * (Lx2)}Lx2 s 1,1514@28,16;(AL$,2);":";(AL$,3,2);":";(AL$,2)> J~0 r 20:J H15,1R(\ Z s 320: : 4:: FINISH LINE )