1 REM *** SHOOTING STARS ***›10 DATA 0,1,2,3,4,5,6,7,8,9,0,0,0,0,0,0,0,10,11,12,13,14,15›20 DIM DAT$(91),HEX(22):FOR X=0 TO 22:READ N:HEX(X)=N:NEXT X:LINE=990:RESTORE 1000:TRAP 60:? "CHECKING DATA"›25 LINE=LINE+10:? "LINE:";LINE:READ DAT$:IF LEN(DAT$)<>90 THEN 110›28 DATLIN=PEEK(183)+PEEK(184)*256:IF DATLIN<>LINE THEN ? "LINE ";LINE;" MISSING!":END ›30 FOR X=1 TO 89 STEP 2:D1=ASC(DAT$(X,X))-48:D2=ASC(DAT$(X+1,X+1))-48:BYTE=HEX(D1)*16+HEX(D2)›35 IF PASS=2 THEN PUT #1,BYTE:NEXT X:READ CHKSUM:GOTO 25›40 TOTAL=TOTAL+BYTE:IF TOTAL>999 THEN TOTAL=TOTAL-1000›45 NEXT X:READ CHKSUM:IF TOTAL=CHKSUM THEN 25›50 GOTO 110›60 IF PEEK(195)<>6 THEN 110›100 ? "WRITING FILE":PASS=2:LINE=990:RESTORE 1000:TRAP 60:GOTO 25›110 ? "BAD DATA: LINE ";LINE:END ›1000 DATA A209A9FF9D30259DDE26CA10F7A229A92585D6A93A85D5A009B9122591D58810F8A5D518690A85D5A5D6690085,695›1010 DATA D6CA10E6A9CA8D3002A9248D3102A90085CD85CB85CF85D185D3A93385CEA93485CCA93585D0A93685D2A93785,788›1020 DATA D4A9108D42068D43068DA006A9008DA1068DA2068DA3068D6006A9058D5006A9B48D0006AD0AD24A1869378D01,948›1030 DATA 06A200AD0AD24A4A69329D1006E8E006D0F1A2008A0A0A0A0A0A69379D2006E8E006D0F0A200AD0AD229039D30,321›1040 DATA 06E8E006D0F3A9308D07D4A93E8D2F02A9038D1DD0A900A891CB91CD91CF91D191D3C8D0F3A9008D45068D1ED0,300›1050 DATA A9468DC002A90F8DC1028DC2028DC302A9968DC502A9368DC602A9F88DC402A9038D4106A907A224A080205CE4,446›1060 DATA AD1FD0C906D0034C6824AD78022901D003CE0106AD78022908D003EE0006AD78022902D003EE0106AD78022904,186›1070 DATA D003CE0006AD0006C9C8D003CE0006AD0006C932D003EE0006AD0106C934D003EE0106AD0106C9C8D003CE0106,391›1080 DATA AD00068D00D0A200AC0106BDFF2491CBE8C8E013D0F5A200BD3006D006FE1006DE2006BD3006C901D006FE1006,306›1090 DATA FE2006BD3006C902D006DE1006FE2006BD3006C903D006DE1006DE2006E8E006D0C9A200BD1006C9CAD012BD30,69›1100 DATA 06D008A9039D3006189005A9029D3006BD1006C930D014BD3006C902F008A9009D3006189005A9019D3006BD20,766›1110 DATA 06C934D012BD3006D008A9019D3006189005A9029D3006BD2006C9D5D014BD3006C901D008A9009D3006189005,729›1120 DATA A9039D3006E8E006D093AD10068D01D0AD11068D02D0AD12068D03D0AD13068D05D0AD14068D06D0AD15068D07,24›1130 DATA D0A900AC200691CFA910C891CFC891CFA900C891CFA900AC210691D1A910C891D1C891D1A900C891D1A900AC22,98›1140 DATA 0691D3A910C891D3C891D3A900C891D3A9EFAC230631CD91CDA910C811CD91CDA910C811CD91CDA9EFC831CD91,628›1150 DATA CDA9FBAC240631CD91CDA904C811CD91CDA904C811CD91CDA9FBC831CD91CDA9BFAC250631CD91CDA940C811CD,19›1160 DATA 91CDA940C811CD91CDA9BFC831CD91CDEE4006AD4006C910D03AA9008D4006CE4106AD4106D005A9038D4106A9,239›1170 DATA C88D03D2AD4106C903D008A9788D02D2189014AD4106C902D008A9648D02D2189005A9558D02D2AD42068D2525,812›1180 DATA AD43068D2625ADA0068D2325ADA006C913D015ADA106D010EE5006EEA106A9A48D01D2A9018DA206ADA006C915,632›1190 DATA D017ADA106C901D010EE5006EEA106A9A48D01D2A9018DA206AD4506F0034C1724A9504E42060838ED4206282E,6›1200 DATA 4206A200EDA006E8E003D0F8AAA000C8D0FDCAD0F8ADA206C901D017A9328D00D2EEA306ADA306C925D008EEA2,154›1210 DATA 06A9008DA306ADA206C902D017A9288D00D2EEA306ADA306C925D008EEA206A9008DA306ADA206C903D017A920,39›1220 DATA 8D00D2EEA306ADA306C925D008EEA206A9008DA306ADA206C904D00DA9008D00D28D01D2A9008DA306A98AA200,65›1230 DATA 9D2925E8EC5006D0F74C0E21CE5006A9A88D01D28D03D2A9328D00D2481869648D02D28DC00268A000A200E8D0,192›1240 DATA FDC8C019D0F6186901C964D0DFA9008D00D28D01D28D02D28D03D2A9468DC002A900AC5006992925AD5006F003,491›1250 DATA 4C7920A9008D5006AD8402F007AD1FD0C906D0F4A900854D4C5B20AD09D00D0AD00D0BD00D0DD00D0ED00D0FD0,877›1260 DATA 29018D4506EE6006AD6006C93CD026A9008D6006EE4306AD4306C91AD017A9108D4306EE4206AD4206C916D008,77›1270 DATA EEA006A9108D42064C62E4707070471C2509090909090909090909090909090909090909090909090909090909,5›1280 DATA 0909090909090909090909090909090941CA24007C546C7C447C1010FEBABABA38382828EE0080000000000000,486›1290 DATA 000001000074696D6500001A000000000000000000000000000000000000000000000000000000000000000000,944›