1 REM Ins{nt av 4068 2 REM **** MONITOR.PRG **** F}r anv{ndas fritt f|r ickekommer- 3 REM siellt bruk. Annars (c). Ins{nt av Victor Falkteg <4068>, som 4 REM kan n}s p} 046-152380. Anv{nd ABCV24 el T80PRT i botten! 5 REM Filen MONITOR.TXT ger komman- don som g{ller. MONITOR.TXT skall 6 REM ligga p} DR0 i monitorn. Den l{- ses vid kommandot HELP. 7 REM Password v{ljs eller f}s automa- tisk fr}n rad 50 (R$). L{gg in 8 REM tel.nr p} rad 80. Ev.text p} rad 790. Tad Du bort remraderna g}r 9 REM programmet med 16K. Tid st{ller Du t ex in med MONITOR.TID. 10 DIM W$=256% : A%=PEEK(65065)+256*PEEK(65066) : POKE A%+6,62720,SWAP%(62720) : ; CHR$(12%) 20 DIM B$=119%,A$=119%,H$=8%,H$(3%)=3%,Z1$=10%,M$=38%,R$=3%,S1$=7%,S2$=6%,S3$=3%,S4$=3%,S5$=2%,S6$=4%,S7$=4%,S8$=6% 30 S1$="SENDFIL" : S2$="GETFIL" : S3$="BYE" : S4$="LIB" : S5$="OP" : S6$="MENY" : S7$="HELP" : S8$="L[SFIL" 40 DIM \$=119%,[$=4%,Z$=2%,B2$=2% : ; "Password "; : INPUT \$ : GOSUB 640 : IF LEN(\$)>3% 40 ELSE R$=\$ 50 [$="WEFV" : Z$="/*" : B2$=CHR$(2%) : ; CHR$(12%); : GOSUB 710 : ; " "M$ : IF R$="" R$="MRJ" 60 ; ">"; 70 ONERRORGOTO 70 : OPEN "V24:CA.1" ASFILE 3 : L%=3% 80 ONERRORGOTO 310 : FOR I=O TO 100 : ; #L%,""; : NEXT I : ; #L%;"046-152380 TRYCK " : ; #L%;"" 90 INPUT #L%,\$ : IF \$<>"" 70 100 O%=O%+1% : ; O%" "; : GOSUB 710 : ; TAB(5%);H$; : ]%=PEEK(65011) 110 ; #L%;"" : GOSUB 710 : ; #L%;M$ : ; #L%;"" 120 ; #L%,"" : ; #L%,"Logga in med NAMN (max 10 tecken)" : ; #L%;"" : INPUT #L%,\$ : IF LEN(\$)>10% OR \$="" 120 130 GOSUB 640 : N$=\$ : ; TAB(17%)N$; : ; #L%,"" : ; #L%,"Inloggning nr:";O% 140 ; #L%;"" : ; #L%;"PASSWORD ?" : ; #L%;"" : INPUT #L%,\$ : IF \$="" OR LEN(\$)>3% 140 150 GOSUB 640 : K$=\$ : ; TAB(28%);K$; : IF K$=R$ K%=0% ELSE K%=1% : GOTO 170 160 ; #L%;"" : ; #L%;"Tack, ";N$;"." : ; #L%;"" : GOTO 180 170 ; #L%;"" : ; #L%;"Du f}r inte h{mta filer som slutar .ZZZ" 180 ONERRORGOTO 310 : GOSUB 710 : ; #L%;"" : ; #L%;M$ 190 ; #L%;"" : ; #L%,"MENY ger kommandon." 200 ; #L%;N$;", vilket kommando |nskas ?" : ; #L%;"" : INPUT #L%,\$ : ; #L%,"" 210 IF LEN(\$)=0% 200 ELSE GOSUB 640 220 IF INSTR(1%,S1$,\$) 330 ELSE IF INSTR(1%,S2$,\$) 490 ELSE IF INSTR(1%,S3$,\$) 300 ELSE IF INSTR(1%,S4$,\$) 660 230 IF INSTR(1%,S5$,\$) POKE 65011,]%,14% : ; "!" : OUT 6%,43% : GOTO 180 240 IF INSTR(1%,S6$,\$) 270 ELSE IF INSTR(1%,S7$,\$) 800 ELSE IF INSTR(1%,S8$,\$) 890 250 ; #L%;"Nej, ";N$;"." 260 ; #L%;\$;" finns ej!!!" : ; #L%;"" 270 ; #L%;S1$,"h{mta fil" : ; #L%;S2$,"s{nda fil" : ; #L%;S3$,"avsluta" 280 ; #L%;S4$,"tillg{ngliga filer" : ; #L%;S5$,"kallar operat|r" : ; #L%;S6$,"ger denna meny" 290 ; #L%;S7$,"ger mer hj{lp" : ; #L%;S8$,"l{s fil fr}n monitorn" : ; #L%;"" : GOTO 200 300 ; #L%;"" : GOSUB 710 : ; #L%;M$ : ; #L%;"" : ; #L%,"V[LKOMMEN ]TER, ";N$;" !!!" 310 ; #L%;"" : ; #L%,"BRYT NER F\RBINDELSEN !!!" 320 OUT 6%,0% : POKE 65011,]%,32% : ; H$; : CLOSE L% : FOR T=1 TO 25000 : NEXT T : GOTO 60 330 ONERRORGOTO 480 340 FOR T=1 TO 1000 : NEXT T : ; #L%,B2$;"SENDFIL" : INPUT #L%,\$ : IF \$="SYNKSVAR" 350 ELSE 340 350 INPUT #L%,\$ : GOSUB 640 : IF LEN(\$)=0% 460 ELSE IF LEN(\$)>12% 180 360 \$="DR0:"+\$ 370 ONERRORGOTO 420 : PREPARE \$ ASFILE 2 : POKE 65011,]%,15% : ; "F" 380 ; #L%,B2$;\$;" |ppnad, v{ntar p} rad nr 1" 390 FOR I%=1% TO 2000% : INPUTLINE #L%,A$ 400 IF LEFT$(A$,2%)=Z$ 430 ELSE ; #2,A$; 410 FOR T=1 TO 100 : NEXT T : ; #L%,B2$;'>' 420 NEXT I% 430 CLOSE 2 440 INPUT #L%,A$ : FOR T=1 TO 100 : NEXT T 450 ; #L%,"Filen har lagrats som ";\$ 460 ; #L%,"Vill du s{nda n}gon mer fil (J/N)" 470 ONERRORGOTO 180 : INPUT #L%,\$ : IF (ASC(\$) AND 223%)=74% OR ASC(\$)=0 THEN 340 480 GOTO 180 490 ONERRORGOTO 630 500 FOR T=1 TO 1000 : NEXT T : ; #L%,B2$;"SYNK" : INPUT #L%,\$ 510 IF \$="SYNKSVAR" 520 ELSE 500 520 INPUT #L%,\$ : GOSUB 640 : ONERRORGOTO 550 : GOSUB 910 : IF F%=1% 170 ELSE IF \$="" 180 530 POKE -456%,0% : OPEN \$ ASFILE 2 : ; #L%,B2$;"OPENED" : INPUT #L%,C$ : FOR I%=1% TO 10000% 540 INPUTLINE #2,A$ : FOR T=1 TO 100 : NEXT T : ; #L%,B2$;A$; : INPUTLINE #L%,C$ : NEXT I% 550 IF ERRCODE=21 ; #L%,B2$;"Filen "+\$+" finns ej" : GOTO 570 560 ; #L%,B2$;Z$ : INPUT #L%,A$ 570 FOR T=1 TO 3000 : NEXT T 580 IF ERRCODE=34 ; #L%,"Slut p} filen ";\$ 590 ; #L%,"Vill du ha n}gon mer fil (J/N)" 600 ONERRORGOTO 180 610 INPUT #L%,\$ 620 IF (ASC(\$) AND 223%)=74% OR ASC(\$)=0 THEN 500 630 GOTO 180 640 X$="" : FOR J%=1 TO LEN(\$) : IF ASC(RIGHT$(\$,J%))=46% X$=X$+"." ELSE X$=X$+CHR$((ASC(RIGHT$(\$,J%)) AND 223%)) 650 NEXT J% : \$=X$ : RETURN 660 S%=0% : J%=0% : N%=0% 670 ONERRORGOTO 690 : W$=SPACE$(256%) : POKE -767,0% : Z%=CALL(24678,SWAP%(1%)+32%*S%) : FOR I%=21% TO 245% STEP 16% 680 IF ASC(MID$(W$,I%,1%))=255% ; #L%;"" : GOTO 180 ELSE ; #L%;MID$(W$,I%,8%)+"."+MID$(W$,I%+8%,3%)+" "; : J%=J%+1% 690 N%=N%+1% : IF J%=2% J%=0% : ; #L%,"" : IF N%=7% N%=0% : ; #L%;""; : INPUTLINE #L%,\$ 700 NEXT I% : S%=S%+1% : GOTO 670 710 IF (PEEK(65008%) AND 4%)=0% 710 720 FOR I%=0% TO 2% : Z%(I%)=255% XOR PEEK(65008%+I%) : NEXT I% 730 Z1$=ADD$(MUL$(NUM$(256%*Z%(2%)+Z%(1%)),'512',0%),NUM$(Z%(0%)*2%),0%) 740 IF COMP%(Z1$,'8640000')>-1% D%=D%+1% : Z1$=SUB$(Z1$,'8640000',0%) : GOTO 740 750 Z=INT(VAL(Z1$)/100) : H%=Z/3600 : Z=Z-3600*H% : M%=Z/60 : S%=Z-60%*M% 760 H$(3%)=NUM$(S%) : H$(2%)=NUM$(M%) : H$(1%)=NUM$(H%) : H$="" 770 FOR I%=1% TO 3% : H$(I%)=RIGHT$(H$(I%),2%) : IF LEN(H$(I%))<2% H$(I%)="0"+H$(I%) 780 IF I%<3% H$(I%)=H$(I%)+":" 790 H$=H$+H$(I%) : NEXT I% : M$="* ABC-monitorn i Lund * Tid:"+H$+" *" : RETURN 800 F$="HELP.TXT" 810 ONERRORGOTO 180 : IF F%=1% 170 820 ; #L%;"" : ; #L%;"Tryck f|r mer text." : ; #L%;"Annat tecken + avbryter." : ; #L%;"" 830 OPEN "DR0:"+F$ ASFILE 4% : ONERRORGOTO 850 : FOR I%=1% TO 1000% : FOR J%=1% TO 20% : INPUTLINE #4%,B$ 840 ; #L%;B$; : NEXT J% : ; #L%;""; : INPUTLINE #L%,\$ : IF ASC(\$)<>13% 860 : NEXT I% 850 IF ERRCODE=34% 860 ELSE 180 860 ; #L%;"" : ; #L%;"En g}ng till (J/N)" 870 INPUT #L%,\$ : GOSUB 640 880 IF \$="J" 810 ELSE IF \$="N" 180 ELSE 860 890 ; #L%,"" : ; #L%;"Vilken fil vill Du l{sa, ";N$;"?" : INPUT #L%,\$ : IF \$="" 180 ELSE GOSUB 640 900 GOSUB 910 : IF \$="" 180 ELSE F$=\$ : GOTO 810 910 IF K%=1% AND INSTR(1%,\$,".ZZZ") F%=1% : GOTO 950 ELSE F%=0% 920 IF INSTR(1%,\$,".BAC") ; #L%,B2$;\$;" ej ASCII" : \$="" 930 IF INSTR(1%,\$,".SYS") ; #L%,B2$;\$;" ej ASCII" : \$="" 940 IF INSTR(1%,\$,".ABS") ; #L%,B2$;\$;" ej ASCII" : \$="" 950 RETURN