1 REM GRANDFATHER CLOCK 2 REM ORIGINAL -C- T.W.HENSCH, 4/83 3 REM REVISED BY L. STAUDACHER, 12/83 4 REM CHIMES ADDED AND CODE CONDENSED 5 REM BY R. LULEY, 1/84 6 REM ADAPTED FOR NEC PC-8201 7 REM BY ROBINSON MARKEL 10 DIMEY%(7),PCH%(4):DEFINTI,N 20 FORN=1TO4:READPCH(N):NEXT:DATA4968,5586,6269,8368 30 FORI=0TO7:READEY%(I):NEXT 40 DATA8,5,0,-5,-8,-5,0,5 50 DIMXM%(60),YM%(60) 60 DIMXH%(60),YH%(60),XR%(60),YR%(60) 70 PI=3.14159:SCREEN0,0:CLS 80 LOCATE10,2:PRINT"Please wait..." 90 FORI=0TO59 100 READX,Y 110 XM%(I)=50+18*X:YM%(I)=32+18*Y 120 XH%(I)=50+13*X:YH%(I)=32+13*Y 130 XR%(I)=50+23*X:YR%(I)=32+23*Y 140 NEXT 150 CLS:LINE(20,4)-(80,61),1,B:LINE(23,7)-(77,58),1,B 160 LINE(20,2)-(4,33):LINE-(20,63):LINE-(20,2):LINE(80,15)-(200,53),1,B 170 FOR Q=0TO9:X0=8+Q:Y0=33+2*Q:X1=8+Q:Y1=33-2*Q:NEXT 180 LINE(82,20)-(195,48),1,BF:LINE(200,10)-(215,58),1,B 190 FORV=13TO53STEP4:LINE(204,V)-(211,V+2),1,B:NEXT 200 FORC=82TO120STEP2:PRESET(C,42):NEXT:LINE(120,41)-(135,43),0,BF 210 PRESET(136,42):FORC=82TO100STEP2:PRESET(C,26):NEXT: 220 LINE(100,25)-(102,27),0,B 230 LINE(216,5)-(223,63),1,B 240 FORI=0TO59 250 PSET(XR%(I),YR%(I)) 260 IFIMOD5=0THENLINE(XR%(I),YR%(I))-(XM%(I),YM%(I)) 270 NEXT 280 T$=TIME$:M=VAL(MID$(T$,4,2)):H=VAL(LEFT$(T$,2))MOD12: 290 H=H*5+INT(M/12):LINE(50,32)-(XM%(M),YM%(M)) 300 LINE(50,32)-(XH%(H),YH%(H)):LINE(51,31)-(49,33),1,BF 310 T$=TIME$:V=VAL(RIGHT$(T$,2)) 320 IFS=VTHENGOTO310ELSEGOSUB490 330 S=V 340 IFS>0ANDS<>(M+1)GOTO310ELSEIFS=0THENGOTO350ELSEGOTO400 350 IFM<>14ANDM<>29ANDM<>44ANDM<>59GOTO400 360 IFM=14THENGOSUB1210:GOTO400 370 IFM=29THENGOSUB1240:GOSUB1270:GOTO400 380 IFM=44THENGOSUB1300:GOSUB1330:GOSUB1210:GOTO400 390 GOSUB1240:GOSUB1270:GOSUB1300:GOSUB1330:GOSUB1180 400 LINE(50,32)-(XM%(M),YM%(M)),0 410 LINE(50,32)-(XH%(H),YH%(H)),0 420 M=VAL(MID$(T$,4,2)) 430 H=VAL(LEFT$(T$,2))MOD12:H=H*5+INT(M/12) 440 S=V 450 LINE(50,32)-(XM%(M),YM%(M)) 460 LINE(50,32)-(XH%(H),YH%(H)) 470 LINE(49,31)-(51,33),B 480 GOTO310 490 SOUND8000+4000*(SMOD2),1 500 FORL%=0TO3 510 F%=1 520 LINE(81,33)-(180,33+E%),F%:LINE(180,36+E%)-(186,30+E%),F%,B 530 F%=0:EC%=(EC%+1)MOD8:E%=EY%(EC%) 540 LINE(81,33)-(180,33+E%),F%:LINE(180,36+E%)-(186,30+E%),F%,B 550 FORK%=0TO1:NEXT 560 NEXT 570 RETURN 580 DATA-1.,0. 590 DATA-.995,-.105 600 DATA-.978,-.208 610 DATA-.951,-.309 620 DATA-.914,-.407 630 DATA-.866,-.500 640 DATA-.809,-.588 650 DATA-.743,-.669 660 DATA-.669,-.743 670 DATA-.588,-.809 680 DATA-.500,-.866 690 DATA-.407,-.914 700 DATA-.309,-.951 710 DATA-.208,-.978 720 DATA-.105,-.995 730 DATA0.,-1. 740 DATA.105,-.995 750 DATA.208,-.978 760 DATA.309,-.951 770 DATA.407,-.914 780 DATA.500,-.866 790 DATA.588,-.809 800 DATA.669,-.743 810 DATA.743,-.669 820 DATA.809,-.588 830 DATA.866,-.500 840 DATA.914,-.407 850 DATA.951,-.309 860 DATA.978,-.208 870 DATA.995,-.105 880 DATA1.,0. 890 DATA.995,.105 900 DATA.978,.208 910 DATA.951,.309 920 DATA.914,.407 930 DATA.866,.500 940 DATA.809,.588 950 DATA.743,.669 960 DATA.669,.743 970 DATA.588,.809 980 DATA.500,.866 990 DATA.407,.914 1000 DATA.309,.951 1010 DATA.208,.978 1020 DATA.105,.995 1030 DATA0.,1. 1040 DATA-.105,.995 1050 DATA-.208,.978 1060 DATA-.309,.951 1070 DATA-.407,.914 1080 DATA-.500,.866 1090 DATA-.588,.809 1100 DATA-.669,.743 1110 DATA-.743,.669 1120 DATA-.809,.588 1130 DATA-.866,.500 1140 DATA-.914,.407 1150 DATA-.951,.309 1160 DATA-.978,.208 1170 DATA-.995,.105 1180 H=VAL(LEFT$(TIME$,2))MOD12:IFH=0THENH=12:FORI=1TO1000:NEXT 1190 FORI=1TOH:SOUND16383,30:FORN=1TO1000:NEXT:NEXT 1200 RETURN 1210 RESTORE1220:FORI=1TO4:READN:SOUNDPCH(N),25:NEXT:FORI=1TO1000:NEXT 1220 DATA1,2,3,4 1230 RETURN 1240 RESTORE1250:FORI=1TO4:READN:SOUNDPCH(N),25:NEXT:FORI=1TO1000:NEXT 1250 DATA3,1,2,4 1260 RETURN 1270 RESTORE1280:FORI=1TO4:READN:SOUNDPCH(N),25:NEXT:FORI=1TO1000:NEXT 1280 DATA3,2,1,3 1290 RETURN 1300 RESTORE1310:FORI=1TO4:READN:SOUNDPCH(N),25:NEXT:FORI=1TO1000:NEXT 1310 DATA1,3,2,4 1320 RETURN 1330 RESTORE1340:FORI=1TO4:READN:SOUNDPCH(N),25:NEXT:FORI=1TO1000:NEXT 1340 DATA4,2,1,3 1350 RETURN