	.MACRO	FHDO2$	OFFSET
	.MCALL	DEF$I,OFFSET,DEFIN$
;
; HEADER AREA OFFSETS
;
	DEF$I	0
	OFFSET	H.IDOF,1	; IDENT AREA OFFSET IN WORDS.
	OFFSET	H.MPOF,1	; MAP AREA OFFSET IN WORDS.
	OFFSET  H.ACOF,1	; ACCESS CONTROL LIST OFFSET IN WORDS.
	OFFSET  H.RSOF,1	; RESERVED AREA OFFSET IN WORDS.
	OFFSET  H.FSEG,2	; FILE SEGMENT NUMBER.
	OFFSET  H.FLEV,2	; STRUCTURE LEVEL AND VERSION.
	OFFSET	H.FNUM,2	; FILE NUMBER
	OFFSET	H.FSEQ,2	; FILE SEQUENCE NUMBER
	OFFSET	H.FRVN,2	; RELATIVE VOLUME NUMBER.
	OFFSET	H.EFNU,2	; EXTENSION FILE NUMBER.
	OFFSET	H.EFSQ,2	; EXTENSION FILE SEQUENCE NUMBER.
	OFFSET	H.ERVN,2	; EXTENSION RELATIVE VOLUME NUMBER.
	OFFSET	H.UFAT,32.	; RECORD MANAGER ATTRIBUTES AREA.
	OFFSET	H.FCHA		; FILE CHARACTERISTICS (2 WORDS).
	OFFSET	H.UCHA		; USER CONTROLLED CHARACTERISTICS (OLD SYMBOL)
	OFFSET	,1		; ALLOCATE ONE BYTE.
	OFFSET	H.SCHA		; SYSTEM CONTROLLED CHARACTERISTICS (OLD SYMBOL)
	OFFSET	,3		; ALLOCATE THREE BYTES.
;
; BIT DEFINTIONS FOR USER CONTROLLED CHARACTERISTICS (WORD RELATIVE)
;
	DEFIN$	UC.CON,200	; FILE IS LOGICALLY CONTIGUOUS IF SET
	DEFIN$	UC.DLK,100	; DEACCESS LOCK SET IF BIT IS SET
	DEFIN$	UC.CNB,40	; KEEP FILE AS CONTIGUOUS AS POSSIBLE
	DEFIN$	UC.WCK,20	; VERIFY ALL WRITE OPERATIONS
	DEFIN$	UC.RCK,10	; VERIFY ALL READ OPERATIONS
	DEFIN$	UC.WBK,4	; FILE MAY BE WRITE-BACK CACHED
	DEFIN$	UC.NBK,2	; FILE IS NOT TO BE BACKED UP
;
; BIT DEFINITIONS FOR SYSTEM CONTROLLED CHARACTERISTICS (BYTE RELATIVE)
;
	DEFIN$	SC.SPL,20	; INTERMEDIATE SPOOL FILE
	DEFIN$	SC.DIR,40	; FILE IS A DIRECTORY FILE.
	DEFIN$	SC.BAD,100	; BAD DATA BLOCK IN FILE IF SET
	DEFIN$	SC.MDL,200	; MARKED FOR DELETE IF SET
	OFFSET	H.RPRO,2	; RECORD PROTECTION.
	OFFSET	H.USE,1		; NUMBER OF MAP AREA WORDS IN USE.
	OFFSET	H.PRIV,1	; ACCESSOR PRIVELEGE LEVEL.
	OFFSET	H.FOWN		; OWNER OF FILE CONSISTING OF:
	OFFSET	H.PROG,2	; MEMBER NUMBER
	OFFSET	H.PROJ,2	; GROUP NUMBER
	OFFSET	H.FPRO,2	; FILE PROTECTION CODE
;
; FILE PROTECTION BITS
;
	DEFIN$	FP.RDV,1	; READ ACCESS ALLOWED IF CLEAR
	DEFIN$	FP.WRV,2	; WRITE ACCESS ALLOWED IF CLEAR
	DEFIN$	FP.EXE,4	; EXECUTE ACCESS ALLOWED IF CLEAR
	DEFIN$	FP.DEL,10	; DELETE ALLOWED IF CLEAR
	OFFSET	H.BFNU,2	; BACK LINK POINTER - FILE NUMBER
	OFFSET	H.BFSQ,2	; BACK LINK SEQUENCE NUMBER
	OFFSET	H.BRVN,2	; BACK LINK RVN
	OFFSET	H.SEMK,4	; SECURITY MASK.
	OFFSET	S.HDHD		; SIZE IN BYTES OF HEADER AREA.

;
; IDENT AREA OFFSETS
;
	DEF$I	0
	OFFSET	I.FNAM,20.	; FILE NAME, TYPE AND VERSION (ASCII).
	OFFSET	I.RVNO,2	; REVISION NUMBER
	OFFSET	I.CRDT,8.	; CREATION DATE AND TIME
	OFFSET	I.RVDT,8.	; REVISION DATE AND TIME
	OFFSET	I.EXDT,8.	; EXPIRATION DATE AND TIME
	OFFSET	I.BKDT,8.	; DATE AND TIME OF LAST BACKUP.
	OFFSET	I.ULAB,80.	; USER LABEL AREA.
	OFFSET	S.IDHD		; SIZE IN BYTES OF IDENT AREA
;
; MAP AREA OFFSET
;
	DEF$I	0
	OFFSET	S.MPHD		; SIZE IN BYTES OF THE MAP AREA
;
; CHECKSUM FOR FILE HEADER
;
	DEFIN$	H.CKSM,510.	; SUM OF WORDS 0-255.
	.IF	DIF,<OFFSET>,<DEF$N>
	.MACRO	FHDO2$	ARG1
	.ENDM	FHDO2$
	.ENDC
	.ENDM	FHDO2$
