*** /w/kermit/d/hp3000.c Thu Jul 1 10:21:04 1993 --- hp3000.c Sat Sep 3 14:53:14 1994 *************** *** 23,29 **** #pragma LIST OFF #endif ! #define VERS "GMI'S HP 3000 C KERMIT. VERSION: 05 FEB 93." #pragma VERSIONID VERS /* Suggested compile options: INFO="+L -Aa -C" */ --- 23,29 ---- #pragma LIST OFF #endif ! #define VERS "GMI'S HP 3000 C KERMIT. VERSION: 12 JULY 1994" #pragma VERSIONID VERS /* Suggested compile options: INFO="+L -Aa -C" */ *************** *** 81,86 **** --- 81,99 ---- /* Minneapolis, MN 55440 */ /* (612) 540-7703 */ /* */ + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + /* */ + /* I have left General Mills, and will no longer be able */ + /* to maintain the HP3000 Kermits unless, by chance or good */ + /* fortune, I wind up in another HP3000 shop. I will be */ + /* available to answer questions on a call-at-your-own risk */ + /* basis. My home phone is (612) 559-3764. */ + /* Tony Appelget */ + /* 13 July 1994 */ + /* */ + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + /* */ + /* */ /* *************************************************************** */ /* Originally written in SPL and reworked considerably in that */ /* language. Translated to C. This was a rooky's first effort */ *************** *** 1837,1843 **** else begin E_ST "SFILE - BUFILL error" E_EN; ! SFILESTATUS = 'A'; end; end; end --- 1850,1857 ---- else begin E_ST "SFILE - BUFILL error" E_EN; ! N = NPNO(N); ! SFILESTATUS = 'Z'; end; end; end *************** *** 3802,3808 **** case SENDV_1: begin ! M_ST " { PAUSE number }" M_EN; M_ST " { }" M_EN; M_ST "Syntax: SET SEND { { ON } }" M_EN; M_ST " { BINARY{ OFF } }" M_EN; --- 3816,3822 ---- case SENDV_1: begin ! M_ST " { PAUSE 1/10 secs}" M_EN; M_ST " { }" M_EN; M_ST "Syntax: SET SEND { { ON } }" M_EN; M_ST " { BINARY{ OFF } }" M_EN; *************** *** 4300,4306 **** "wise n is assumed to be decimal. Default value" M_EN; M_ST ! "for SOH is 01." M_EN; break; end; --- 4314,4320 ---- "wise n is assumed to be decimal. Default value" M_EN; M_ST ! "for SOH is 1." M_EN; break; end; *** /w/kermit/d/hp3000.spl Mon Oct 21 18:54:46 1991 --- hp3000.spl Sat Sep 3 14:53:07 1994 *************** *** 1,13 **** ! $PAGE "599 HP P599E73O.P065.A538 SPL SOURCE 021591 021591TA" $CONTROL MAIN=KERMIT, NOLIST $TITLE "KERMIT" BEGIN define VERS = ("HP 3000 KERMIT ", ! "(07/17/91) ", ! "(Modified for General Mills Inc.)", %(16)0D, %(16)0A, ! "Works best with PC Kermit V2.31", %(16)0D, %(16)0A, "You can now use PARM= on RUN stmt ", "to specify TAKE file.")#; --- 1,12 ---- ! $PAGE $CONTROL MAIN=KERMIT, NOLIST $TITLE "KERMIT" BEGIN define VERS = ("HP 3000 KERMIT ", ! "VERSION: 12 JULY 1994", %(16)0D, %(16)0A, ! "Works best with PC Kermit V2.31 or newer.", %(16)0D, %(16)0A, "You can now use PARM= on RUN stmt ", "to specify TAKE file.")#; *************** *** 27,32 **** --- 26,42 ---- << Minneapolis, MN 55440 >> << (612) 540-7703 >> << >> + << * * * * * * * * * * * * * * * * * * * * * * * * * * * * * >> + << >> + << I have left General Mills, and will no longer be able >> + << to maintain the HP3000 Kermits unless, by chance or good >> + << fortune, I wind up in another HP3000 shop. I will be >> + << available to answer questions on a call-at-your-own risk >> + << basis. My home phone is (612) 559-3764. >> + << Tony Appelget >> + << 13 July 1994 >> + << >> + << * * * * * * * * * * * * * * * * * * * * * * * * * * * * * >> << >> << Added HELP function. >> << >> *************** *** 315,320 **** --- 325,337 ---- << statement to after it so that termtype 18, if used, does >> << echo. >> << >> + << UNSCHEDULED FIX TONY APPELGET FEB 1992 >> + << >> + << SET RECEIVE FIXREC ? (help) did not allow subsequent setting>> + << of ON or OFF. I uncovered this problem while working on the>> + << C translation and suspect it has been in place for 7 years. >> + << Fixed it both here and in the C translation. >> + << >> equate DBUF'WORDSIZE = 1024, DBUF'BYTESIZE = DBUF'WORDSIZE*2, *************** *** 510,516 **** TSPEED := 0, << Line Speed (CPS) >> LDEV'LINE := 0; << Line LDEV >> ! byte SOH := %2, << Begin-packet character >> MY'BLK'CK := "3", YOUR'BLK'CK := "3"; --- 527,533 ---- TSPEED := 0, << Line Speed (CPS) >> LDEV'LINE := 0; << Line LDEV >> ! byte SOH := %1, << Begin-packet character >> MY'BLK'CK := "3", YOUR'BLK'CK := "3"; *************** *** 650,656 **** FWRITE, FCONTROL, FGETINFO, ! PRINT, FCHECK, << For debugging only >> PRINTFILEINFO, PRINT'FILE'INFO, << ditto >> FPOINT, GETJCW, --- 667,673 ---- FWRITE, FCONTROL, FGETINFO, ! PRINT, FCHECK, FERRMSG, << For debugging only >> PRINTFILEINFO, PRINT'FILE'INFO, << ditto >> FPOINT, GETJCW, *************** *** 1083,1099 **** move LBUF(1) := LBUF(0),(LBUF'BYTESIZE -1); FCONTROL(LNUM,04,MY'TO); << Set timeout interval >> - IF <> THEN - IF DEBUG'MODE<>0 AND LOGNUM<>0 THEN - BEGIN - FCHECK(LNUM, R'ERROR); - MOVE PBUF:="FCONTROL SET TIMEOUT ERROR ", 2; - PLEN:=TOS-@PBUF; - PLEN:=PLEN+ASCII(R'ERROR, 10, PBUF(PLEN)); - WRITE'LOG(PBUF, PLEN, RPACK'PACK); - END; - E'ST "READING FROM REMOTE" E'EN; LBUFCNT := FREAD(LNUM,W'LBUF,-LBUF'BYTESIZE); << Read buffer >> if <> then --- 1100,1106 ---- *************** *** 1105,1112 **** move PBUF := "RPACK: FSERROR ", 2; PLEN:=TOS-@PBUF; PLEN:=PLEN+ASCII(R'ERROR, 10, PBUF(PLEN)); FWRITE(LOGNUM, PBUF'W, -PLEN, 0); - R'ERROR:=1; end; end else begin << Have a packet >> --- 1112,1119 ---- move PBUF := "RPACK: FSERROR ", 2; PLEN:=TOS-@PBUF; PLEN:=PLEN+ASCII(R'ERROR, 10, PBUF(PLEN)); FWRITE(LOGNUM, PBUF'W, -PLEN, 0); end; + R'ERROR:=1; end else begin << Have a packet >> *************** *** 2602,2608 **** end else begin ! MY'TO := 3 + LONGPACK'SIZE/TSPEED; << Rcv timeout >> if RPACK(RP,RP'LEN,RP'NUM,RP'DATA) then begin if RP = "D" then --- 2609,2615 ---- end else begin ! MY'TO := 10 + LONGPACK'SIZE/TSPEED; << Rcv timeout >> if RPACK(RP,RP'LEN,RP'NUM,RP'DATA) then begin if RP = "D" then *************** *** 2840,2846 **** move A'DEV := "000 "; ASCII(LDEV'LINE, -10, A'DEV(2)); ! ! LNUM := FOPEN( , <<%500>>, %4, LBUF'WORDSIZE, A'DEV); IF <> THEN IF LOGNUM<>0 THEN BEGIN FCHECK(LNUM, R'ERROR); --- 2847,2853 ---- move A'DEV := "000 "; ASCII(LDEV'LINE, -10, A'DEV(2)); ! ! LNUM := FOPEN( , %500, %4, LBUF'WORDSIZE, A'DEV); IF <> THEN IF LOGNUM<>0 THEN BEGIN FCHECK(LNUM, R'ERROR); *************** *** 2862,2892 **** --- 2869,2962 ---- TTYPE := DFLT'TTYPE; FCONTROL(LNUM,39,ORGL'TTYPE); + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FCONTROL 39 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; FCONTROL(LNUM,38,TTYPE); + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FCONTROL 38 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; FCONTROL(LNUM,13,ORGL'ECHO); + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FCONTROL 13 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; if TSPEED <> 0 then begin ORGL'TISPEED := TSPEED; FCONTROL(LNUM,10,ORGL'TISPEED); + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FCONTROL 10 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; ORGL'TOSPEED := TSPEED; FCONTROL(LNUM,11,ORGL'TOSPEED); + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FCONTROL 11 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; end else FCONTROL(LNUM,40,TSPEED); << Get speed >> + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FCONTROL 40 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; FSETMODE(LNUM,4); << Inhibit LF >> + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FSETMODE 4 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; if HNDSHK = 2 then begin << Set XON as termination char >> TEMP := XON; FCONTROL(LNUM,25,TEMP); + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FCONTROL 25 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; end; TEMP:=MY'EOL cat CTL("Y") (0:8:8); FCONTROL(LNUM, 41, TEMP); <> + IF <> THEN IF LOGNUM>0 + THEN BEGIN + FCHECK(LNUM, TEMP); + E'ST "FCONTROL 41 PROBLEM" E'EN; + FERRMSG(TEMP, PBUF, PLEN); + WRITE'LOG(PBUF, PLEN, -2); + END; if (LDEV'CI = LDEV'LINE) land *************** *** 4004,4010 **** << SET SEND >> begin ! M'ST " { PAUSE number }" M'EN; M'ST " { }" M'EN; M'ST "Syntax: SET SEND { { ON } }" M'EN; M'ST " { BINARY{ OFF } }" M'EN; --- 4074,4080 ---- << SET SEND >> begin ! M'ST " { PAUSE 1/10 secs}" M'EN; M'ST " { }" M'EN; M'ST "Syntax: SET SEND { { ON } }" M'EN; M'ST " { BINARY{ OFF } }" M'EN; *************** *** 4454,4460 **** "wise n is assumed to be decimal. Default value" M'EN; M'ST ! "for SOH is 2 (STX)." M'EN; end; --- 4524,4530 ---- "wise n is assumed to be decimal. Default value" M'EN; M'ST ! "for SOH is 1." M'EN; end; *************** *** 5155,5161 **** SHUT'LINE; end; end; ! ASCII((LDEV'LINE MOD 100),-10,KERM'JCW(7)); end; << SET SEND >> --- 5225,5231 ---- SHUT'LINE; end; end; ! ASCII(LDEV'LINE,-10,KERM'JCW(7)); end; << SET SEND >> *************** *** 5382,5388 **** begin HELP(SETV, RECEIVEV'1, FIXRECV); READ'USER(FALSE); ! SCANIT(QMARKV); if CTLY then go to SET'EXIT; end; --- 5452,5458 ---- begin HELP(SETV, RECEIVEV'1, FIXRECV); READ'USER(FALSE); ! SCANIT(ONV); if CTLY then go to SET'EXIT; end;