1 !!!! INPUT.BAS (V4A-12) EDIT 1 06/14/74 !!!! !!!! WRITTEN BY JEFFREY J. KILLEEN !!!! !!!! ASSUMPTION COLLEGE WORCESTER,MASS !!!! 100 T1%=1% : T2%=3% 110 ! T1% MUST ALWAYS BE THE TERMINAL ON SITE T2% MUST ALWAYS BE THE TERMINAL TO THE OTHER COMPUTER 120 A$=SYS(CHR$(6%)+CHR$(7%)) !DETACH THE JOB 130 OPEN "KB"+NUM$(T2%)+":" AS FILE 1%,RECORDSIZE 1024% !OPEN KB WITH PHONE LINE AND LARGE BUFFER 140 B$=B$+CHR$(0%) FOR X%=0% TO 9% : B$=B$+CHR$(10%)+CHR$(0%)+CHR$(0%)+ CHR$(13%) : B2$=B2$+CHR$(0%) FOR X%=14% TO 26% : B$=B$+B2$+CHR$(27%)+CHR$(0%)+CHR$(0%)+CHR$(0%)+CHR$(0%) !B$=XLATE STRING 150 B2$="" : B2$=B2$+CHR$(X%) FOR X%=32% TO 127% : B$=B$+B2$ : B2$="" : B2$=B2$+CHR$(0%) FOR X%=128% TO 255% : B$=B$+B2$ !XLATE IN LINE 290 160 DIM A%(30%) : CHANGE SYS(CHR$(6%)+CHR$(-3%)) TO A% : A%(I%)=A%(I%)+SWAP%(A%(I%+1%)) FOR I%=5% TO 11% STEP 2% !GET JOBTABLE ADDRESS (V4A ONLY) 170 B%=PEEK(PEEK(A%(11%)+ASCII(CHR$(PEEK(2056%))))) : C%=PEEK(B%+2%) : V$=SYS(CHR$(6%)+CHR$(-6%)+CHR$(B%)+CHR$(SWAP%(B%))+ CHR$(C%)+CHR$(SWAP%(C%))) !SET CHANNEL 0 EQUAL TO CHANNEL 1 (V4A) 180 A$=SYS(CHR$(3%)) !SET CHANNEL 0 TO NO ECHO (PHONE LINE) 190 A$=SYS(CHR$(4%)) : GET#1% : FIELD#1%,RECOUNT AS I$ !CHANNEL 0 ODT SUBMODE : I$=CHARS. IN BUFF 200 IF INSTR(1%,I$,CHR$(2%)) THEN 240 !GO INTO FILE MODE - CHR2 THROUGH FORCE 210 IF INSTR(1%,I$,CHR$(6%)) THEN 310 !END PROGRAM - CHR(6) FORCED FROM OUTPUT 220 A$=SYS(CHR$(6%)+CHR$(-5%)+CHR$(T1%)+I$) !SEND TO TERMINAL RECEIVING INFO 230 GO TO 190 !END OF TERMINAL TALK LOOP 240 OPEN "NAME.DAT" AS FILE 4% : DIM#4%,N$(1%) : OPEN N$(1%) AS FILE 3% : CLOSE 4% !GET NAME OF FILE TO RECEIVE INFO 250 A$=SYS(CHR$(6%)+CHR$(-4%)+CHR$(T1%)+CHR$(13%)) !FORCE TO LET OUTPUT KNOW READY 260 INPUT LINE#1%,A$ : IF INSTR(1%,A$,CHR$(5%)) THEN CLOSE 3% : GO TO 190 !IF FORCED CHR(5) FILE TRANSFER DONE 270 X%=0% : R%=LEN(A$) !X% COUNTS BACK ON LINE A$ 280 IF ASCII(RIGHT(A$,R%-X%))>27% THEN I2$=LEFT(A$,R%-X%+1%) ELSE X%=X%+1% : IF X%=R% THEN 260 ELSE GO TO 280 !FINDS CONTROL CHAR - SKIPS BLANK LINES 290 I2$=XLATE(I2$,B$) !PULLS OUT "JUNK" CHARS. 300 A2$=SYS(CHR$(6%)+CHR$(-5%)+CHR$(T1%)+I2$) : PRINT#3%,A$;: GO TO 260 !SENDS A$ TO RECEIVE TERMINAL AND FILE 310 A$=SYS(CHR$(2%)) : CLOSE 1% : A$=SYS(CHR$(6%)+CHR$(8%)+CHR$(ASCII(CHR$(PEEK(2056%)))/2%)+ SPACE$(24%)+CHR$(255%)+SPACE$(2%)) : END !SET CHANNEL ONE TO ECHO - KILLS JOB