8-Bit Software Online Conversion

Sunrise/Sunset - Listing

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