10 REM BY MATTHEW SMITH 20 REM FOR 8-BIT SOFTWARE 1991 30 REM THANKS TO.... 40 REM MARTIN WHIPP FOR HELP WITH SOME 50 REM OF THE DATA 60 REM & ABIGAIL McLOUGHLIN FOR GIVING 70 REM ME THE IDEA FOR THE PROGRAM 80 : 90 MODE7 100 CLS 110 @%=&20207 120 VDU23;8202;8202 130 : 140 PROCREADDATA 150 PROCSETUP 160 PROCGRID 170 PROCSETWORDS 180 PROCCHOOSEOPTIONS 190 : 200 GOTO 170 210 : 220 DEFPROCSETUP 230 MONTH$="JANUARY" 240 MONTH%=1 250 LATITUDE$="50 N" 260 LATITUDE%=1 270 ENDPROC 280 : 290 DEFPROCGRID 300 CLS 310 YCORD=4 320 FOR LOOP=1 TO 9 330 PRINTTAB(24,YCORD)"5" 340 YCORD=YCORD+1 350 NEXT LOOP 360 YCORD=4 370 FORPOOL=1 TO 19 380 PRINTTAB(0,YCORD)"5" 390 YCORD=YCORD+1 400 NEXT POOL 410 YCORD=4 420 FOROOPL=1 TO 19 430 PRINTTAB(37,YCORD)"j" 440 YCORD=YCORD+1 450 NEXTOOPL 460 YCORD=13 470 FORLPOO=1 TO 10 480 PRINTTAB(22,YCORD)"5" 490 YCORD=YCORD+1 500 NEXTLPOO 510 YCORD=13 520 FORLOPL=1 TO 10 530 PRINTTAB(6,YCORD)"5" 540 YCORD=YCORD+1 550 NEXTLOPL 560 PRINTTAB(0,0) 570 VDU141:PRINT" Sunrise/set Finder : British Isles" 580 VDU141:PRINT"Sunrise/set Finder : British Isles" 590 PRINTTAB(0,13)"=,,,,,<,,,,,,,,,,,,,,,<,-,,,,,,,,,,,,n" 600 PRINTTAB(0,23)"-,,,,,-,,,,,,,,,,,,,,,-,,,,,,,,,,,,,,." 610 PRINTTAB(0,3)"<,,,,,,,,,,,,,,,,,,,,,,,<,,,,,,,,,,,,l" 620 ENDPROC 630 : 640 DEFPROCSETWORDS 650 PRINTTAB(2,5)"Options " 660 PRINTTAB(26,5)"Date" 670 PRINTTAB(26,9)"Latitude" 680 PRINTTAB(2,7)"1 : Change Month " 690 PRINTTAB(2,9)"2 : Change Latitude" 700 PRINTTAB(2,11)"3 : Printout Data" 710 PRINTTAB(26,7)" " 720 PRINTTAB(26,7)""MONTH$ 730 PRINTTAB(26,11)""LATITUDE$ 740 PRINTTAB(2,14)"Day" 750 PRINTTAB(8,14)"Sunrise Times" 760 PRINTTAB(8,15)" (GMT)" 770 PRINTTAB(24,14)"Sunset Times" 780 PRINTTAB(24,15)" (GMT)" 790 PRINTTAB(2,16)"01" 800 PRINTTAB(2,17)"06" 810 PRINTTAB(2,18)"11" 820 PRINTTAB(2,19)"16" 830 PRINTTAB(2,20)"21" 840 PRINTTAB(2,21)"26" 850 PRINTTAB(2,22)"31" 860 PRINTTAB(12,16)""RISE$(LATITUDE%,MONTH%,1) 870 PRINTTAB(27,16)""SET$(LATITUDE%,MONTH%,1) 880 PRINTTAB(12,17)""RISE$(LATITUDE%,MONTH%,2) 890 PRINTTAB(27,17)""SET$(LATITUDE%,MONTH%,2) 900 PRINTTAB(12,18)""RISE$(LATITUDE%,MONTH%,3) 910 PRINTTAB(27,18)""SET$(LATITUDE%,MONTH%,3) 920 PRINTTAB(12,19)""RISE$(LATITUDE%,MONTH%,4) 930 PRINTTAB(27,19)""SET$(LATITUDE%,MONTH%,4) 940 PRINTTAB(12,20)""RISE$(LATITUDE%,MONTH%,5) 950 PRINTTAB(27,20)""SET$(LATITUDE%,MONTH%,5) 960 PRINTTAB(12,21)""RISE$(LATITUDE%,MONTH%,6) 970 PRINTTAB(27,21)""SET$(LATITUDE%,MONTH%,6) 980 PRINTTAB(12,22)""RISE$(LATITUDE%,MONTH%,7) 990 PRINTTAB(27,22)""SET$(LATITUDE%,MONTH%,7) 1000 ENDPROC 1010 : 1020 DEFPROCREADDATA 1030 DIM RISE$(3,12,7) 1040 X=1:Y=1:Z=1 1050 : 1060 PRINTTAB(16,15)CHR$(141)((33+(1/3))/2)*Z"%" 1070 PRINTTAB(6,12)CHR$(141)"READING DATA PLEASE WAIT" 1080 PRINTTAB(6,11)CHR$(141)"READING DATA PLEASE WAIT" 1090 PRINTTAB(16,16)CHR$(141)((33+(1/3))/2)*Z"%" 1100 READ RISE$(Z,Y,X) 1110 X=X+1 1120 IF X=8 LET Y=Y+1 1130 IF X=8 LET X=1 1140 IF Y=13 LET Z=Z+1 1150 IF Z=4 GOTO 1180 1160 IF Y=13 LET Y=1 1170 GOTO 1050 1180 DIM SET$(3,12,7) 1190 X=1:Y=1:Z=1 1200 PRINTTAB(16,15)CHR$(141)((33+(1/3))/2)*Z+50"%" 1210 PRINTTAB(6,12)CHR$(141)"READING DATA PLEASE WAIT" 1220 PRINTTAB(6,11)CHR$(141)"READING DATA PLEASE WAIT" 1230 PRINTTAB(16,16)CHR$(141)((33+(1/3))/2)*Z+50 1240 READ SET$(Z,Y,X) 1250 X=X+1 1260 IF X=8 LET Y=Y+1 1270 IF X=8 LET X=1 1280 IF Y=13 LET Z=Z+1 1290 IF Z=4 ENDPROC 1300 IF Y=13 LET Y=1 1310 GOTO 1200 1320 : 1330 DEFPROCCHOOSEOPTIONS 1340 Q$=GET$ 1350 IF Q$="1" THEN 1390 1360 IF Q$="2" THEN 1730 1370 IF Q$="3" PROCPRINT 1380 ENDPROC 1390 : 1400 PRINTTAB(2,5)"Change Month" 1410 PRINTTAB(2,7)" " 1420 PRINTTAB(2,9)" " 1430 PRINTTAB(2,11)" " 1440 PRINTTAB(2,11)" ";:INPUT B$ 1450 X=LEN(B$) 1460 IF X>9 PROCGRID 1470 IFB$="JANUARY" LET MONTH%=1 1480 IFB$="JANUARY"MONTH$=B$ 1490 IFB$="FEBRUARY"MONTH%=2 1500 IFB$="FEBRUARY"MONTH$=B$ 1510 IFB$="MARCH"MONTH%=3 1520 IFB$="MARCH"MONTH$=B$ 1530 IFB$="APRIL"MONTH%=4 1540 IFB$="APRIL"MONTH$=B$ 1550 IFB$="MAY"MONTH%=5 1560 IFB$="MAY"MONTH$=B$ 1570 IFB$="JUNE"MONTH%=6 1580 IFB$="JUNE"MONTH$=B$ 1590 IFB$="JULY"MONTH%=7 1600 IFB$="JULY"MONTH$=B$ 1610 IFB$="AUGUST"MONTH%=8 1620 IFB$="AUGUST"MONTH$=B$ 1630 IFB$="SEPTEMBER"MONTH%=9 1640 IFB$="SEPTEMBER"MONTH$=B$ 1650 IFB$="OCTOBER"MONTH%=10 1660 IFB$="OCTOBER"MONTH$=B$ 1670 IFB$="NOVEMBER"MONTH%=11 1680 IFB$="NOVEMBER"MONTH$=B$ 1690 IFB$="DECEMBER"MONTH%=12 1700 IFB$="DECEMBER"MONTH$=B$ 1710 ENDPROC 1720 : 1730 PRINTTAB(2,5)"Change Latitude " 1740 PRINTTAB(2,7)"Select Latitude " 1750 PRINTTAB(2,9)"50 N, 55 N, 60 N " 1760 PRINTTAB(2,11)" " 1770 PRINTTAB(2,11)" ";:INPUT C$ 1780 X=LEN(C$) 1790 IF X>5 PROCGRID 1800 IF C$="50 N" LATITUDE%=1 1810 IF C$="50 N" LATITUDE$=C$ 1820 IF C$="55 N" LATITUDE%=2 1830 IF C$="55 N" LATITUDE$=C$ 1840 IF C$="60 N" LATITUDE%=3 1850 IF C$="60 N" LATITUDE$=C$ 1860 ENDPROC 1870 REM DATA 1880 REM 50 N RISE 1890 DATA 8.0, 8.0, 7.9, 7.9, 7.8, 7.7, 7.6 1900 DATA 7.6, 7.4, 7.3, 7.2, 7.0, 6.8, *** 1910 DATA 6.7, 6.6, 6.4, 6.2, 6.0, 5.8, 5.7 1920 DATA 5.6, 5.4, 5.3, 5.1, 4.9, 4.8, *** 1930 DATA 4.6, 4.5, 4.3, 4.2, 4.1, 4.0, 3.9 1940 DATA 3.9, 3.9, 3.8, 3.8, 3.8, 3.9, *** 1950 DATA 3.9, 4.0, 4.0, 4.1, 4.2, 4.3, 4.5 1960 DATA 4.5, 4.6, 4.7, 4.8, 5.0, 5.1, 5.2 1970 DATA 5.2, 5.4, 5.5, 5.6, 5.7, 5.9, *** 1980 DATA 6.0, 6.1, 6.3, 6.4, 6.5, 6.7, 6.8 1990 DATA 6.8, 7.0, 7.1, 7.2, 7.4, 7.5, *** 2000 DATA 7.6, 7.7, 7.8, 7.9, 7.9, 8.0, 8.0 2010 REM 55 N RISE 2020 DATA 8.4, 8.4, 8.3, 8.2, 8.1, 8.0, 7.9 2030 DATA 7.9, 7.7, 7.5, 7.3, 7.2, 7.0, *** 2040 DATA 6.8, 6.6, 6.4, 6.2, 6.0, 5.8, 5.6 2050 DATA 5.5, 5.3, 5.1, 4.9, 4.7, 4.5, *** 2060 DATA 4.3, 4.2, 4.0, 3.9, 3.7, 3.6, 3.5 2070 DATA 3.5, 3.4, 3.4, 3.3, 3.3, 3.4, *** 2080 DATA 3.4, 3.5, 3.6, 3.7, 3.8, 4.0, 4.1 2090 DATA 4.1, 4.3, 4.4, 4.6, 4.8, 4.9, 5.1 2100 DATA 5.1, 5.3, 5.4, 5.6, 5.7, 5.9, *** 2110 DATA 6.0, 6.2, 6.4, 6.5, 6.7, 6.9, 7.0 2120 DATA 7.1, 7.2, 7.4, 7.6, 7.7, 7.9, *** 2130 DATA 8.0, 8.1, 8.2, 8.3, 8.4, 8.4, 8.4 2140 REM 60 N RISE 2150 DATA 9.0, 9.0, 8.9, 8.8, 8.6, 8.5, 8.3 2160 DATA 8.2, 8.0, 7.8, 7.6, 7.4, 7.1, *** 2170 DATA 7.0, 6.7, 6.5, 6.2, 6.0, 5.7, 5.5 2180 DATA 5.4, 5.2, 4.9, 4.7, 4.4, 4.2, *** 2190 DATA 4.0, 3.8, 3.5, 3.3, 3.2, 3.0, 2.9 2200 DATA 2.8, 2.7, 2.6, 2.6, 2.6, 2.6, *** 2210 DATA 2.7, 2.8, 2.9, 3.1, 3.3, 3.4, 3.6 2220 DATA 3.7, 3.9, 4.1, 4.3, 4.5, 4.7, 4.9 2230 DATA 4.9, 5.1, 5.3, 5.5, 5.7, 5.9, *** 2240 DATA 6.1, 6.3, 6.5, 6.7, 6.9, 7.1, 7.3 2250 DATA 7.4, 7.6, 7.8, 8.0, 8.2, 8.4, *** 2260 DATA 8.6, 8.7, 8.9, 9.0, 9.0, 9.1, 9.0 2270 REM 50 N SET 2280 DATA 16.1, 16.2, 16.3, 16.5, 16.6, 16.7, 16.9 2290 DATA 16.9, 17.0, 17.2, 17.3, 17.5, 17.6, **** 2300 DATA 17.7, 17.8, 18.0, 18.1, 18.2, 18.4, 18.5 2310 DATA 18.5, 18.7, 18.8, 18.9, 19.0, 19.2, **** 2320 DATA 19.3, 19.4, 19.6, 19.7, 19.8, 19.9, 20.0 2330 DATA 20.0, 20.1, 20.1, 20.2, 20.2, 20.2, **** 2340 DATA 20.2, 20.2, 20.1, 20.1, 20.0, 19.9, 19.7 2350 DATA 19.7, 19.6, 19.4, 19.3, 19.1, 19.0, 18.8 2360 DATA 18.7, 18.6, 18.4, 18.2, 18.0, 17.8, **** 2370 DATA 17.6, 17.5, 17.3, 17.1, 17.0, 16.8, 16.6 2380 DATA 16.6, 16.5, 16.4, 16.2, 16.2, 16.1, **** 2390 DATA 16.0, 16.0, 16.0, 16.0, 16.0, 16.1, 16.1 2400 REM 55 N SET 2410 DATA 15.7, 15.8, 15.9, 16.1, 16.2, 16.4, 16.6 2420 DATA 16.6, 16.8, 17.0, 17.1, 17.3, 17.5, **** 2430 DATA 17.6, 17.8, 17.9, 18.1, 18.3, 18.4, 18.6 2440 DATA 18.6, 18.8, 18.9, 19.1, 19.3, 19.4, **** 2450 DATA 19.6, 19.7, 19.9, 20.0, 20.2, 20.3, 20.4 2460 DATA 20.5, 20.6, 20.6, 20.7, 20.7, 20.7, **** 2470 DATA 20.7, 20.6, 20.6, 20.5, 20.4, 20.2, 20.1 2480 DATA 20.1, 19.9, 19.7, 19.5, 19.3, 19.1, 18.9 2490 DATA 18.9, 18.7, 18.5, 18.2, 18.0, 17.8, **** 2500 DATA 17.6, 17.4, 17.2, 17.0, 16.8, 16.6, 16.4 2510 DATA 16.4, 16.2, 16.1, 15.9, 15.8, 15.7,**** 2520 DATA 15.6, 15.6, 15.5, 15.5, 15.6, 15.6, 15.7 2530 REM 60 N SET 2540 DATA 15.1, 15.2, 15.4, 15.6, 15.8, 16.0, 16.2 2550 DATA 16.2, 16.4, 16.7, 16.9, 17.1, 17.3, **** 2560 DATA 17.4, 17.7, 17.9, 18.1, 18.3, 18.5, 18.7 2570 DATA 18.7, 18.9, 19.1, 19.3, 19.5, 19.7, **** 2580 DATA 20.0, 20.2, 20.4, 20.6, 20.8, 20.9, 21.1 2590 DATA 21.1, 21.3, 21.4, 21.4, 21.5, 21.5, **** 2600 DATA 21.4, 21.3, 21.2, 21.1, 20.9, 20.8, 20.6 2610 DATA 20.5, 20.3, 20.1, 19.8, 19.6, 19.4, 19.1 2620 DATA 19.1, 18.8, 18.6, 18.3, 18.1, 17.8, **** 2630 DATA 17.6, 17.3, 17.1, 16.8, 16.6, 16.3, 16.1 2640 DATA 16.1, 15.9, 15.7, 15.5, 15.3, 15.2, **** 2650 DATA 15.0, 15.0, 14.9, 14.9, 14.9, 15.0, 15.1 2660 REM END! 2670 DEFPROCPRINT 2680 CLS 2690 VDU2 2700 PRINT'''"LATITUDE "LATITUDE$ 2710 PRINT"MONTH "MONTH$ 2720 PRINT'" RISE SET" 2730 PRINT 2740 PRINT"01 ";:PRINTRISE$(LATITUDE%,MONTH%,1); 2750 PRINT" ";:PRINTSET$(LATITUDE%,MONTH%,1) 2760 PRINT"06 ";:PRINTRISE$(LATITUDE%,MONTH%,2); 2770 PRINT" ";:PRINTSET$(LATITUDE%,MONTH%,2) 2780 PRINT"11 ";:PRINTRISE$(LATITUDE%,MONTH%,3); 2790 PRINT" ";:PRINTSET$(LATITUDE%,MONTH%,3) 2800 PRINT"16 ";:PRINTRISE$(LATITUDE%,MONTH%,4); 2810 PRINT" ";:PRINTSET$(LATITUDE%,MONTH%,4) 2820 PRINT"21 ";:PRINTRISE$(LATITUDE%,MONTH%,5); 2830 PRINT" ";:PRINTSET$(LATITUDE%,MONTH%,5) 2840 PRINT"26 ";:PRINTRISE$(LATITUDE%,MONTH%,6); 2850 PRINT" ";:PRINTSET$(LATITUDE%,MONTH%,6) 2860 PRINT"31 ";:PRINTRISE$(LATITUDE%,MONTH%,7); 2870 PRINT" ";:PRINTSET$(LATITUDE%,MONTH%,7) 2880 VDU3 2890 CLS 2900 PROCGRID 2910 ENDPROC