10 '***** 20 '***** Programa modificado el 6 de Enero del 2000 30 '***** por Osman Burgoa Monroy 40 '***** 50 CLEAR: 60 CLS 3:TIEM$=TIME$:FECHA$=DATE$ 70 CLS 3: FECHA$=DATE$ 80 ND=10 90 DIM D0(60),D1(60),D2(60),D3(60),D4(60),D5(60) 100 DIM D6(60),D7(60) ,DTT(60) ,W1(60),W2(60):X=0:GIO=277 110 DIM S(5):'DR=VAL(LEFT$(TIME$,2)) :ER=VAL(MID$(TIME$,4,2)):V1=DR*60+ER/60 120 EJEY=639:SCREEN 3 :CONSOLE 0,25,0,1:CLS 3 130 VIEW (0, 0)-(EJEY,GIO):LINE( 0,0)-(EJEY,GIO),,B 140 LINE(37,0)-(37,255):HI=25:LINE(0,255)-(EJEY,255) 150 TTT$=DATE$ 160 FOR GH=10 TO 75 STEP 15:LINE(35,GH)-(39,GH):NEXT GH:LINE(35,168)-(39,168) 170 FOR GH=90 TO 160 STEP 15:LINE(35,GH)-(39,GH):NEXT GH:LINE(35,185)-(39,185) 180 FOR GH=185 TO 250 STEP 15:LINE(35,GH)-(39,GH):NEXT GH 190 DEFSTR A 200 GOSUB *RSOPEN 210 FOR I=1 TO 60 220 D0(I)=0:D1(I)=0:D2(I)=0 230 D3(I)=0:D4(I)=0:D5(I)=0 240 NEXT I 250 CLOSE #2 260 ID=-2 : MIN=-2 270 LOCATE 0,0:PRINT 200 280 LOCATE 0,1:PRINT 100 290 LOCATE 0,2:PRINT 90 300 LOCATE 0,3:PRINT 80 310 LOCATE 0,4:PRINT 79 320 LOCATE 0,5:PRINT 78 330 LOCATE 0,6:PRINT 77 340 LOCATE 0,7:PRINT 76 350 LOCATE 0,8:PRINT 75 360 LOCATE 0,9:PRINT 74 370 LOCATE 0,10:PRINT 73 380 LOCATE 0,11:PRINT 70 390 LOCATE 0,12:PRINT 545 400 LOCATE 0,13:PRINT 540 410 LOCATE 0,14:PRINT 535 420 LOCATE 0,15:PRINT 530 430 GOSUB *TITLE 440 OUT &HD7,&H30 : OUT &HD1,0 : OUT &HD1,0 450 OUT &HD7,&H70 : OUT &HD3,0 : OUT &HD3,0 460 OUT &HD7,&HB0 : OUT &HD5,0 : OUT &HD5,0 470 OUT &HDE,&H30 : OUT &HD8,0 : OUT &HD8,0 480 OUT &HDE,&H70 : OUT &HDA,0 : OUT &HDA,0 490 OUT &HDE,&HB0 : OUT &HDC,0 : OUT &HDC,0 500 *MAIN.LOOP:ID=ID+1 510 LOCATE 0,0:PRINT 200 520 LOCATE 0,1:PRINT 100 530 LOCATE 0,2:PRINT 90 540 LOCATE 0,3:PRINT 80 550 LOCATE 0,4:PRINT 79 560 LOCATE 0,5:PRINT 78 570 LOCATE 0,6:PRINT 77 580 LOCATE 0,7:PRINT 76 590 LOCATE 0,8:PRINT 75 600 LOCATE 0,9:PRINT 74 610 LOCATE 0,10:PRINT 73 620 LOCATE 0,11:PRINT 70 630 LOCATE 0,12:PRINT 545 640 LOCATE 0,13:PRINT 540 650 LOCATE 0,14:PRINT 535 660 LOCATE 0,15:PRINT 530 670 LOCATE 5 ,18 680 PRINT " Monitor de Neutrones 8-NM64 Chacaltaya (1,2,3,4,6,10,11,12)" 690 LOCATE 1,16 700 AA$="A:":EA=DSKF(AA$) 710 PRINT" A:";EA/1000; ",si A:<100 copiar a disketes ";TIEM$;" . ";FECHA$;" . ND=";ND;" " 720 LOCATE 48,23: PRINT "Fecha Universal ";DATE$ 730 LOCATE 48,21:PRINT"Hora Universal":LOCATE 65,21: PRINT TIME$ 740 LOCATE 24,23: PRINT "Evs.> 5%= ";EVENTO 750 LOCATE 54,0 :PRINT "Dias : ";INT((ID/60)/24*10^2+.5)/10^2 760 TM0=(INP(&HD1)+(INP(&HD1)*256)) 770 TM1=(INP(&HD3)+(INP(&HD3)*256)) 780 TM2=(INP(&HD5)+(INP(&HD5)*256)) 790 TN0=(INP(&HD8)+(INP(&HD8)*256)) 800 TN1=(INP(&HDA)+(INP(&HDA)*256)) 810 TN2=(INP(&HDC)+(INP(&HDC)*256)) 820 C0=CMT0-TM0 : CMT0=TM0 : IF C0<0 THEN C0=C0+65535! 830 C1=CMT1-TM1 : CMT1=TM1 : IF C1<0 THEN C1=C1+65535! 840 C2=CMT2-TM2 : CMT2=TM2 : IF C2<0 THEN C2=C2+65535! 850 C3=CNT0-TN0 : CNT0=TN0 : IF C3<0 THEN C3=C3+65535! 860 C4=CNT1-TN1 : CNT1=TN1 : IF C4<0 THEN C4=C4+65535! 870 C5=CNT2-TN2 : CNT2=TN2 : IF C5<0 THEN C5=C5+65535! 880 IF ID<1 THEN GOTO *SKIP 890 M=MIN : IF M=0 THEN M=60 900 D0(M)=C0 : D1(M)=C1 : D2(M)=C2 910 D3(M)=C3 : D4(M)=C4 : D5(M)=C5 920 GOSUB *DATGET : D6(M)=B1: D7(M)=B2 930 *SKIP 940 JI=1:LOCATE JI,20: PRINT USING "oo 1+2 = ###### /min";C0 950 V=V+1:LOCATE JI,21:PRINT USING "oo 3+4 = ###### /min";C1 960 X=(40+V1*639/(1440*ND))+(V*639)/(1440*ND):DFD=VAL(LEFT$(TIME$,2)) 970 'IF DFD=0 THEN 960 ELSE 970 980 'LINE(X,245)-(X,255) 990 'IF DFD=12 THEN 980 ELSE 990 1000 'LINE(X,252)-(X,255) 1010 IF X>600 AND DFD=0 THEN 1020 ELSE 1080 1020 CLS 2:V=0:V1=0:VIEW (0, 0)-(EJEY,277):LINE( 0,0)-(EJEY,277),,B 1030 LINE(37,0)-(37,255):HI=25:LINE(0,255)-(EJEY,255) 1040 LINE(37,0)-(37,255):HI=25:LINE(0,255)-(EJEY,255) 1050 FOR GH=10 TO 75 STEP 15:LINE(35,GH)-(39,GH):NEXT GH:LINE(35,168)-(39,168) 1060 FOR GH=90 TO 160 STEP 15:LINE(35,GH)-(39,GH):NEXT GH:LINE(35,185)-(39,185) 1070 FOR GH=185 TO 250 STEP 15:LINE(35,GH)-(39,GH):NEXT GH 1080 LOCATE JI,22 : PRINT USING "oo 5+6 = ###### /min";C2 1090 LOCATE JI,23: PRINT USING "oo 7+8 = ###### /min ";C3 1100 LOCATE 24,20: PRINT USING "oo 9+10 = ###### /min";C4 1110 LOCATE 24,21: PRINT USING "oo 11+12= ###### /min";C5 1120 TOTAL#=C0+C1+C2+C3+C4+C5 :TOTA#=TOTAL#/1000 :TOTA#=TOTA#+43 1130 IF TOTAL#>122000! THEN EVENTO=EVENTO+1 1140 LOCATE 24,22: PRINT USING "oo Total= ###### /min";TOTAL#:KJ=185 1150 IF(TOTA#<=200)AND(TOTA#>=150)THEN 1160 ELSE 1170 1160 LINE(X, KJ)- (X,277-(TOTA#*14/50 )-210),2 1170 IF(TOTA#<150)AND(TOTA#>=140)THEN 1180 ELSE 1190 1180 LINE(X, KJ)- (X,277-(TOTA#*15/10)-26),2 1190 IF(TOTA#<140)AND(TOTA#>=130)THEN 1200 ELSE 1210 1200 LINE(X,KJ )- (X,277-(TOTA#*15/10)-26),2 1210 IF(TOTA#<130)AND(TOTA#>=125)THEN 1220 ELSE 1230 1220 LINE(X, KJ)- (X,277-(TOTA#*15/5)+169),2 1230 IF(TOTA#<125)AND(TOTA#>=122)THEN 1240 ELSE 1250 1240 LINE(X, KJ)-( X,277-(TOTA#*18/3)+545 ),2 1250 IF(TOTA#<122)AND(TOTA#>=120)THEN 1260 ELSE 1270 1260 LINE(X, KJ)-( X,277-(TOTA#*15/2)+728),2 1270 IF(TOTA#<120)AND(TOTA#>=119)THEN 1280 ELSE 1290 1280 LINE(X, KJ)- (X,277-(TOTA#*15)+1628),2 1290 IF(TOTA#<119)AND(TOTA#>=118)THEN 1300 ELSE 1310 1300 LINE(X, KJ)- (X,277-(TOTA#*15)+1628),2 1310 IF(TOTA#<118)AND(TOTA#>=117)THEN 1320 ELSE 1330 1320 LINE(X, KJ)- (X,277-(TOTA#*15)+1628),2 1330 IF(TOTA#<117)AND(TOTA#>=116)THEN 1340 ELSE 1350 1340 LINE(X, KJ)- (X,277-(TOTA#*15.02)+1632),2 1350 IF(TOTA#<116)AND(TOTA#>=100)THEN 1360 ELSE 1370 1360 LINE(X, KJ)- (X,277-(TOTA#*15/16)),2 1370 LOCATE 64,22:PRINT B3 1380 LOCATE 54,1 :PRINT "Pres.corr. :";B3+10.535;"[mb] ":KOR=.0009869 1390 LOCATE 54,2 :PRINT "Atmosfera :";INT((B3+10.535)*KOR*10^4+.5)*10^-2;"% " 1400 IF(B3<=545)AND(B3>=540)THEN 1410 ELSE 1420 1410 LINE(X,245)- (X,277-(B3*15/5) +1560),2 1420 IF(B3< 540)AND(B3>=535)THEN 1430 ELSE 1440 1430 LINE(X,245)-(X,277-(B3*15/5) +1560 ) ,2 1440 IF(B3< 535)AND(B3>=530)THEN 1450 ELSE 1460 1450 LINE(X,245)-(X,277-(B3*15/5) +1560 ) ,2 1460 LOCATE 48,22: PRINT "Presion [mb]" 1470 IF MIN=0 THEN GOSUB *FILE 1480 IF VAL(MID$(TIME$,7,2))=0 THEN GOTO 1480 1490 *MINI.LOOP 1500 WE3=VAL(MID$(TIME$,7,3)) 1510 WE2=VAL(MID$(TIME$,4,4)) 1520 WE1=VAL(MID$(TIME$,1,2)) 1530 IF WE1=3 THEN WE1=27 1540 IF WE1=2 THEN WE1=26 1550 IF WE1=1 THEN WE1=25 1560 IF WE1=0 THEN WE1=24 1570 T$=TIME$:LOCATE 64,20 : PRINT WE1-4;":";WE2;":";WE3 1580 LOCATE 48,21:PRINT"Hora Universal":LOCATE 65,21: PRINT TIME$ 1590 LOCATE 48,20:PRINT"Hora Local " 1600 SEC=VAL(MID$(T$,7,2)) 1610 IF SEC<>0 THEN GOTO *MINI.LOOP 1620 MIN=VAL(MID$(T$,4,2)) : HOUR=VAL(MID$(T$,1,2))-1 1630 D$=DATE$ : YEAR =VAL(MID$(D$,1,2)) 1640 MONTH=VAL(MID$(D$,4,2)) : DAY =VAL(MID$(D$,7,2)) 1650 ' 1660 'IF DAY=0 THEN 1640 ELSE 1660 1670 'DAY=DAY1 1680 ' 1690 IF HOUR=-1 THEN 1700 ELSE 1720 1700 HOUR=23:DAY=DAY-1 1710 'IF DAY=0 THEN DAY=DAY+1 1720 GOTO *MAIN.LOOP 1730 *FILE 1740 LINE(X,251)-(X,255) 1750 FOR GG=1 TO 60 1760 IF(D0(GG)=0)AND(D1(GG)=0)AND(D2(GG)=0)AND(D6(GG)=0)THEN QQ=QQ+1 1770 NEXT GG :N1=QQ+1:NN1=60-QQ 1780 IF MONTH=1 THEN MES$="01" 1790 IF MONTH=2 THEN MES$="02" 1800 IF MONTH=3 THEN MES$="03" 1810 IF MONTH=4 THEN MES$="04" 1820 IF MONTH=5 THEN MES$="05" 1830 IF MONTH=6 THEN MES$="06" 1840 IF MONTH=7 THEN MES$="07" 1850 IF MONTH=8 THEN MES$="08" 1860 IF MONTH=9 THEN MES$="09" 1870 IF MONTH=10 THEN MES$="10" 1880 IF MONTH=11 THEN MES$="11" 1890 IF MONTH=12 THEN MES$="12" 1900 D$=DATE$ : YEAR$=MID$(D$,1,2) 1910 NOMS$="1\"+MES$+MID$(YEAR$,1)+MID$(STR$(DAY),2)+"."+MID$(STR$(HOUR),2) 1920 NOMS1$="2\"+MES$+MID$(YEAR$,1)+MID$(STR$(DAY),2)+"."+MID$(STR$(HOUR),2) 1930 OPEN NOMS$ FOR OUTPUT AS #2 1940 FOR I=1 TO 60 1950 DTT(I) = D0(I)+D1(I)+D2(I)+D3(I)+D4(I)+D5(I) 1960 PRINT #2,I,DTT(I);D0(I);D1(I);D2(I);D3(I);D4(I);D5(I);D6(I)+.001*D7(I) 1970 PPP=PPP+D6(I)+.001*D7(I):MQ=DTT(I)+MQ 1980 W1(I)=DTT(I):W2(I)=D6(I)+.001*D7(I) 1990 NEXT I 2000 AA$="A:":EA=DSKF(AA$): LOCATE 10,10 :PRINT "espacio en a:";EA 2010 LOCATE 1,16 2020 PRINT" A:";EA/1000; ",si A:<100 copiar a diskettes ";TIEM$;" . ";FECHA$;" . ND=";ND 2030 CLOSE#2 2040 'OPEN NOMS1$ FOR OUTPUT AS #2 2050 'PRINT#2,INT(MQ/1000),(PPP/NN1)+10.535,NN1 2060 IF DFD=0 THEN 2070 ELSE 2090 2070 LINE(X,245)-(X,255) 2080 LINE(X+1,245)-(X+1,255) 2090 IF DFD=12 THEN 2100 ELSE 2110 2100 LINE(X,249)-(X,255):'CLOSE#2 2110 NN1=0:MQ=0:PPP=0:N1=0:QQ=0: RETURN 2120 *TITLE 2130 LOCATE 5 ,18 2140 PRINT " Monitor de Neutrones 8-NM64 Chacaltaya (1,2,3,4,6,10,11,12)" 2150 RETURN 2160 *RSOPEN 2170 OPEN "COM:N81NN" AS #1 2180 PRINT #1,"*0100P3" : CLOSE #1 2190 OPEN "COM:N81NN" AS #1 2200 RETURN 2210 *DATGET 2220 PRINT #1,"*0100P3" 2230 A1="" : NTB=NTN 2240 GOSUB *GETCHR : IF AK<>"*" THEN 2240 2250 GOSUB *GETCHR : IF AK<>"." THEN A1=A1+AK : GOTO 2250 2260 A1=MID$(A1,5) : A2="" 2270 GOSUB *GETCHR : A2=A2+AK : IF LEN(A2)<3 THEN 2270 2280 B1=VAL(A1): B2=VAL(A2): B3=B1+B2/1000 2290 RETURN 2300 *GETCHR 2310 IF LOC(1)=0 THEN GOTO 720 2320 AK=INPUT$(1,1) 2330 RETURN