C Common Declarations to communicate between User_Open_Init/Param and
C User_Open

	Include '($XABDef)'
	Include '($XABKeyDef)'
	Include '($XABProDef)'
	Include '($XABDatDef)'
	Include '($FABDef)'
	Include '($RABDef)'
	Include '($PSLDef)'

	Integer  Status,   Status_Value		! 1=new, 2=old, 3=unknown
	Integer  LogNames, LogNames_Value	!

	Integer  Prot				! protection flag
	Integer  *2        Prot_Value		!            mask
	Integer  	   Prot_Active		!            active

	Integer  DupKeys,  DupKeys_Value	! duplicate key

	Record /XABProDef1/ LUNXABPro(128)
	Record /XABDatDef/  LUNXABDat(128)

	Integer  *4        LUNFab(128)		! LUN FAB Pointers
	Integer  *4        Unit			! Logical unit

	Integer  *4	   User_Open_Status_Value
						! Last status returned by
						!  User_Open

	Character *256	   ESA_Name		! Resultant file name
	Integer  *4        ESA_Name_L		!  Length of above

	Integer  *4        What_Happened	! What happened on last open
						!  0 = failed
						!  1 = Open
						!  2 = Create

	Common /User_Open_Common1/
	1	Status,   Status_Value,
	2	LogNames, LogNames_Value,
	3	Prot,     Prot_Active,
	4	DupKeys,  DupKeys_Value,
	5	LUNXABPro,LUNFAB,
	6	Unit,     User_Open_Status_Value,
	7	ESA_Name,ESA_Name_L, What_Happened,
	8	LUNXABDat

	Common /User_Open_Common2/
	1	Prot_Value

C created two common blocks to satisfy alignment requirements of Fortran
C High Performance Option.  Also: changed constants of 100 to 128 to 
C create harmonic alignment vibrations to assist in ascension of VNEWS
C to angelic heights.  As Jesus said when invited to a Celestial 
C Jazz Joint, "I've risen, and I can't get down."
C jms/910620 (very early in the morning)
