home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
modcomp
/
uftini.
< prev
next >
Wrap
Text File
|
2020-01-01
|
6KB
|
165 lines
SUBROUTINE UFTINI
C
C ****************************************************************
C
C KERMIT for the MODCOMP MAXIV operating system
C
C Compliments of:
C
C SETPOINT, Inc.
C 10245 Brecksville Rd.
C Brecksville, Ohio 44141
C
C
C KERMIT is a copyrighted protocol of Columbia Univ. The authors
C of this version hereby grant permission to copy this software
C provided that it is not used for an explicitly commercial
C purpose and that proper credit be given. SETPOINT, Inc. makes
C no warranty whatsoever regarding the accuracy of this package
C and will assume no liability resulting from it's use.
C
C ****************************************************************
C
C Abstract: Initialize the UFTs required for the MAX IV Kermit
C package.
C
C MODIFICATION HISTORY
C
C BY DATE REASON PROGRAMS AFFECTED
C
C ****************************************************************
C
C Author: Rick Burke Version: A.0 Date: Aug-86
C
C Calling Parameters: None
C
C ****************************************************************
C
C Messages generated by this module : None
C
C ****************************************************************
C
C Subroutines called directly : BLDUFT, REWIND
C
C ****************************************************************
C
C Files referenced : None
C
C ****************************************************************
C
C Local variable definitions :
C
C DEV1 - Logical device to which KE2 is assigned
C DEV2 - Logical device to which KE4 is assigned
C HANOPT - Handler options word from TASS4
C LDEVST - Logical device status returned from TASS4
C LFNAM - CAN code of base value of LFN for Kermit I/O
C RECSIZ - Record size returned by TASS4
C SUCCES - Success indicator of TASS4 calls
C
C ****************************************************************
C
C Commons referenced : KER, KERPAR, and UFTTBL local commons
C
C ****************************************************************
C
C (*$END.DOCUMENT*)
C
C ****************************************************************
C * *
C * D I M E N S I O N S T A T E M E N T S *
C * *
C ****************************************************************
C
IMPLICIT INTEGER (A-Z)
C
C ****************************************************************
C * *
C * T Y P E S T A T E M E N T S *
C * *
C ****************************************************************
C
C
C ****************************************************************
C * *
C * C O M M O N S T A T E M E N T S *
C * *
C ****************************************************************
C
INCLUDE USL/KERCOM
INCLUDE USL/KERPMC
INCLUDE USL/UFTTBC
C
C ****************************************************************
C * *
C * E Q U I V A L E N C E S T A T E M E N T S *
C * *
C ****************************************************************
C
C
C ****************************************************************
C * *
C * D A T A S T A T E M E N T S *
C * *
C ****************************************************************
C
DATA LFNAM /3@KE0/
C
C ****************************************************************
C
C Code starts here :
C
CALL BLDUFT (IUFT(1,1),0,LFNAM+1,4ZA000)
CALL BLDUFT (IUFT(1,2),0,LFNAM+2,4ZE000)
CALL BLDUFT (IUFT(1,3),0,LFNAM+3,4ZC280)
CALL BLDUFT (IUFT(1,4),0,LFNAM+4,4ZD380,0,0,0,4Z8000,0,BLIN(1,1),
> 132)
CALL BLDUFT (IUFT(1,5),0,LFNAM+5,4ZA000)
CALL BLDUFT (IUFT(1,7),0,LFNAM+7,4ZA000)
CALL BLDUFT (IUFT(1,8),0,LFNAM+8,4ZA000)
CALL BLDUFT (IUFT(1,9),0,LFNAM+9,4ZA000)
CALL BLDUFT (IUFT(1,10),0,LFNAM+4,4ZD380,0,0,0,4Z8000,0,BLIN(1,2),
> 132)
C
C NOW REWIND THE DISK FILES WE WILL ACCESS
C
CALL REW4 (IUFT(1,5))
CALL REW4 (IUFT(1,8))
C
CALL WEOF4 (IUFT(1,8))
C
C-----> If the terminal I/O and Kermit I/O ports are pointing
C-----> at the I/O channel then set HOSTON = YES and defer
C-----> issuing a read to KE4 until either a SEND or
C-----> RECEIVE are issued.
C
CALL TASS4 (IUFT(1,2),SUCCES,LDEVST,RECSIZ,DEV1,HANOPT)
IF (SUCCES .NE. 1) CALL EXIT
CALL TASS4 (IUFT(1,4),SUCCES,LDEVST,RECSIZ,DEV2,HANOPT)
IF (SUCCES .NE. 1) CALL EXIT
C
C-----> Zero out the buffers we will use for Kermit data.
C
DO 10 I = 1,132
BLIN(I,1) = 0
BLIN(I,2) = 0
10 CONTINUE
IF (DEV1 .NE. DEV2) GO TO 20
C
C-----> Kermit has been activated from a remote device, so set
C-----> the HOSTON flag and don't queue an initial read.
C
HOSTON = YES
CHRCHN = 0
RETURN
20 CONTINUE
C
C-----> Kermit has been activated by a local terminal, so issue
C-----> the initial read, in anticipation of incoming data.
C
HOSTON = NO
CURCHN = 1
CALL READ4 (IUFT(1,4),BLIN(1,CURCHN),132,.FALSE.)
RETURN
END