10 ! +++++++++++++++++++++++++++++++++++ 20 ! Program .... MINIMON.IBM 30 ! Senast {ndrad 1985-05-08 av GT f|r Fil|verf|ring IBMPC-ABC802 40 ! Modifiering av FILTRANS.800 av Bo Kullmar 50 ! Utg}va 1.5 1983-04-29 60 ! +++++++++++++++++++++++++++++++++++ 70 EXTEND : INTEGER 80 DIM Rad$=159%,Radin$=159% 90 DIM N$=256% 100 Monitor$='V24:VEA70G72.55' 110 Filslut$='/*' 120 Se$='SENDFIL' 130 Ge$='GETFIL' 140 By$='BYE' 150 Z%=FNMonitor% 160 END 170 DEF FNMonitor% 180 V24%=3% : OPEN Monitor$ AS FILE V24% 190 ; CHR$(7%,12%) CUR(10%,0%) 'Denna ABC-802 startar som MONITOR f|r IBM PC' : ; 200 ; 'n{r du trycker ner en tangent!' : GET \$ : ; CHR$(12%) 210 ; #V24%,'ABC-800 Mini-Monitor' 220 ; #V24%,'Vad vill du g|ra?' 230 ON ERROR GOTO 400 240 INPUT #V24%,\$ 250 IF LEN(\$)=0% THEN 220 ELSE \$=FNStora$(\$) 260 IF INSTR(1%,Se$,\$) THEN Z%=FNMsend% : GOTO 210 270 IF INSTR(1%,Ge$,\$) THEN Z%=FNMget% : GOTO 210 280 IF INSTR(1%,By$,\$) THEN 370 290 ; #V24%,\$ ' finns ej!' 300 ; #V24% 310 ; #V24%,'Meny:' : ; #V24% 320 ; #V24% 'SENDFIL S{nda fil' 330 ; #V24%,'GETFIL H{mta fil' 340 ; #V24%,'BYE Avsluta' 350 ; #V24% 360 GOTO 210 370 ; #V24%,'Bryt ner f|rbindelsen!' : Z%=FNDelay%(1000) 380 ; #V24%, : Z%=FNDelay%(10000) : GOTO 210 390 RETURN 0% 400 RESUME 210 410 FNEND 420 DEF FNMsend% 430 ON ERROR GOTO 710 440 Z%=FNDelay%(300) 450 ; #V24%,'Send file to ABC-800 (Svara: SYNKSVAR)' 460 INPUT #V24%,\$ 470 IF \$='SYNKSVAR' THEN 480 ELSE 440 480 ; #V24%,'Ange filnamn i ABC800:' 490 INPUT #V24%,\$ : IF LEN(\$)=0% THEN 660 500 IF LEN(\$)>12% THEN 690 510 ON ERROR GOTO 700 520 PREPARE \$ AS FILE 2% 530 Z%=FNDelay%(100) 540 ; #V24%,\$;' opened, waiting for line # 1' 550 ; #V24%,'Minimonitor will send ">" as return character' 560 ; #V24%,'Send /* as last line (end-of-file-marker)' 570 FOR I%=1% TO 2000% 580 INPUT LINE #V24%,Radin$ 590 IF LEFT$(Radin$,2%)=Filslut$ THEN 630 600 ; #2%,Radin$; 610 ; #V24%,'>'; 620 NEXT I% 630 CLOSE 2% 640 Z%=FNDelay%(100) 650 ; #V24%,'Filen har lagrats som ';\$ 660 ; #V24%,'Vill du s{nda n}gon mer fil? (J/N) ' 670 INPUT #V24%,\$ 680 IF (ASCII(\$) AND 223%)=74% THEN 430 690 RETURN 0% 700 RESUME 660 710 RESUME 690 720 FNEND 730 DEF FNMget% 740 ON ERROR GOTO 1010 750 Z%=FNDelay%(300) 760 ; #V24%,'Mottaga fil fr ABC-800 (Svara: SYNKSVAR)' 770 INPUT #V24%,\$ 780 IF \$='SYNKSVAR' THEN 790 ELSE 750 790 ; #V24%,'Ange filnamn i ABC800:' 800 INPUT #V24%,\$ ! Filnamnet 810 POKE -188%,0% 820 IF INSTR(1%,\$,'.bac') THEN ; #V24%,\$;' ej ASCII' : GOTO 950 830 IF INSTR(1%,\$,'.BAC') THEN ; #V24%,\$;' ej ASCII' : GOTO 950 840 OPEN \$ AS FILE 2% 850 Z%=FNDelay%(100) 860 ; #V24%,'Press ENTER to start transfer of file' 870 INPUT #V24%,C$ 880 FOR I%=1% TO 10000% 890 INPUT LINE #2%,Rad$ 900 Z%=FNDelay%(100) 910 ; #V24%,Rad$; 920 NEXT I% 930 ; #V24%,"Filen "+\$+" finns ej" : GOTO 950 940 ; #V24%,Filslut$ 950 Z%=FNDelay%(100) 960 IF ERRCODE=34% THEN ; #V24%,'Slut p} filen ' \$ 970 ; #V24%,'Vill du ha n}gon mer fil? (J/N) ' 980 INPUT #V24%,\$ 990 IF (ASCII(\$) AND 223%)=74% THEN 750 1000 RETURN 0% 1010 Z%=FNDelay%(100) 1020 IF ERRCODE=21% THEN RESUME 930 1030 IF ERRCODE=34% THEN RESUME 940 1040 RESUME 1000 1050 FNEND 1060 DEF FNStora$(\$) LOCAL X$=40,A% 1070 FOR J%=1% TO LEN(\$) 1080 A%=ASCII(RIGHT$(\$,J%)) 1090 IF A%>95% THEN X$=X$+CHR$(A% AND 223%) ELSE X$=X$+CHR$(A%) 1100 NEXT J% 1110 RETURN X$ 1120 FNEND 1130 DEF FNDelay%(Y) LOCAL I 1140 WHILE I