function gtab_comm, itab0, fid=fid, itab=itab
;
;+
;NAME:
;       gtab_comm
;PURPOSE:
;       Extract the sequence table information for the common table.
;CALLING SEQUENCE:
;       print, gtab_comm(150)
;       print, gtab_comm(roadmap(0))
;INPUT:
;       itab0   - Table number to display
;                       (or)
;                 A structure which has the sequence table and entry table
;                 that is used for a particular image.  The index and roadmap
;                 entries can be used.
;OPTONAL INPUT:
;       fid  - The user can specify a specific table by passing the fileid
;OUTPUT:
;       returns - A string array with the information on what parameters were
;                 used in the SXT sequence table.
;OPTONAL OUTPUT:
;       itab    - The table serial number selected
;HISTORY:
;       Written Sep-91 by M.Morrison
;       21-Nov-91 (MDM) - Added "fid" and "itab" options
;			- Added "ARS Search Wid : '
;	 7-Jul-92 (MDM) - Added printing out comment lines of table load
;-
;
infil = gtab_file(itab0, ientry0, table=table, itab=itab, fid=fid, headline=headline)
;
if (infil eq '') then begin
    print, 'EXITING GTAB_COMM:
    return, ' '
end
;
barr = extract(table, 16, 68)
;
ref_sxtfmt = ['8:2', '2:8', '0:8']
ref_enable = ['Disabled', 'Enabled ', '????????']
ref_imgtyp = ['????', 'Norm', 'Dark', 'Cal ', '????']	;check and confirm
ref_res = ['F', 'H', 'Q', '?']
ref_comp = ['C', 'L', 'H', '?']
ref_shut = ['F', 'M', '?']
ref_open_closed = ['Cl', 'Op', '??']
ref_on_off = ['Off', 'On ', '???']
ref_instru = ['TFSS', 'IRU ', '????']
ref_ms_sel = ['Auto   ', 'Buff0  ', 'Buff1  ', '?????  ']
ref_slave  = ['Auto   ', '  FBA  ', '  FBB  ', '?????  ']
;
;flush_f = string(barr(9),'(z2.2)') + 'h'
;flush_q = string(barr(9+12),'(z2.2)') + 'h'
flush_f = string(mask(barr(9), 4, 4), mask(barr(9), 2, 2), mask(barr(9), 0, 2), format='(3Z1)')
flush_q = string(mask(barr(9+12), 4, 4), mask(barr(9+12), 2, 2), mask(barr(9+12), 0, 2), format='(3Z1)')
shut_f  = ref_shut(barr(10)<2)
shut_q  = ref_shut(barr(10+12)<2)
;filt_f	= '  ' + strtrim(barr(11)/16,2) + '/' + strtrim(barr(11) mod 16,2)
;filt_q	= '  ' + strtrim(barr(11+12)/16,2) + '/' + strtrim(barr(11+12) mod 16,2)
filt_f  = '  ' + gt_filtb(barr(11)/16, /short) + '/' + gt_filta(barr(11) mod 16, /short)
filt_q  = '  ' + gt_filtb(barr(11+12)/16, /short) + '/' + gt_filta(barr(11+12) mod 16, /short)
adoor_f = ref_open_closed(barr(14)<2)
adoor_q = ref_open_closed(barr(14+12)<2)
dpe_f   = string(barr(15),'(i3)')
dpe_q   = string(barr(15+12),'(i3)')
imgtyp_f= ref_imgtyp(barr(16)<4)
imgtyp_q= ref_imgtyp(barr(16+12)<4)
r_c_r_f = ref_res( barr(17) mod 4) + ref_comp( barr(17)/4 mod 4) + '-' + strtrim( (barr(17)/16 mod 4)+1, 2)
r_c_r_q = ref_res( barr(17+12) mod 4) + ref_comp( barr(17+12)/4 mod 4) + '-' + strtrim( (barr(17+12)/16 mod 4)+1, 2)
strow_f = string(fix(barr(18)),'(i3)')
strow_q = string(fix(barr(18+12)),'(i3)')
width_f = string(fix(barr(19)),'(i3)')
width_q = string(fix(barr(19+12)),'(i3)')
;
str1=''
for i=0,3 do str1 = str1 + ref_ms_sel(barr(59+2*i)<3)
str2=''
for i=0,3 do str2 = str2 + ref_slave(barr(60+2*i)<3)
;
out = strarr(48)
out( 0) = '****** Table # ' + strtrim(itab,2) + ' (File: ' + infil + ')'
out( 1) = '-------------------------------- Common Tables ------------------------------'
out( 2) = '                                                                           '
out( 3) = 'SXT Format (FFI:PFI)    : '+ ref_sxtfmt(barr(0)<2)
out( 4) = '  '
out( 5) = 'AEC:     Exposure Step  : '+ string(barr(1),'(i3)')
out( 6) = '         AECL           : '+ string(barr(2),'(i3)')
out( 7) = '         AECH0          : '+ string(barr(3),'(i3)')
out( 8) = '         AECH1          : '+ string(barr(4),'(i3)')
out( 9) = '         10% Mask       : '+ ref_enable(barr(5)<2)
out(10) = '  '
out(11) = 'ARS:                           Flare     Quiet
out(12) = '         Flush          : '+ string( flush_f, flush_q, '(2a10)')
out(13) = '         Shutter Mode   : '+ string( shut_f, shut_q, '(2a10)')
out(14) = '         Filter A/B     : '+ string( filt_f, filt_q, '(2a10)')
out(15) = '         Aspect Door    : '+ string( adoor_f, adoor_q, '(2a10)')
out(16) = '         DPE            : '+ string( dpe_f, dpe_q, '(2a10)')
out(17) = '         Image Type     : '+ string( imgtyp_f, imgtyp_q, '(2a10)')
out(18) = '         Res/Comp/#ROI  : '+ string( r_c_r_f, r_c_r_q, '(2a10)')
out(19) = '         Start Row      : '+ string( strow_f, strow_q, '(2a10)')
out(20) = '         Width          : '+ string( Width_f, Width_q, '(2a10)')
out(21) = '  '
out(22) = '         Quiet ARS      : '+ ref_enable(barr(32)<2)
out(23) = '         Quiet ARS 1/2  : '+ string(barr(33),'(i3)')
out(24) = '         Flare ARS      : '+ ref_enable(barr(34)<2)
out(25) = '         Morning Patrol : '+ ref_enable(barr(35)<2)
	nsec = long(barr(36))*16
	nmin = 0
	while (nsec gt 60) do begin & nsec = nsec-60 & nmin = nmin+1 & end
out(26) = '         QT ARS Interval: '+ string(nmin,'(i3)')+ ' minutes '+ string(nsec,'(i2)')+ ' seconds'
	nsec = long(barr(37))*16
	nmin = 0
	while (nsec gt 60) do begin & nsec = nsec-60 & nmin = nmin+1 & end
ars_aec_uat = barr(54) + fix(barr(55))*256
ars_aec_lat = barr(56) + fix(barr(57))*256

out(27) = '         FL ARS Interval: '+ string(nmin,'(i3)')+ ' minutes '+ string(nsec,'(i2)')+ ' seconds'
out(28) = '         ARS Min Sep.   : '+ string(barr(38),'(i3)')
out(29) = '         ARS Search Wid : '+ string(barr(58),'(i3)')
out(30) = '  '
out(31) = 'ART                     : '+ ref_enable(barr(39)<2)
out(32) = '         Instrument     : '+ ref_instru(barr(40)<2)
out(33) = '  '
out(34) = 'ARS/AEC  AEC            : '+ ref_on_off(barr(50)<2)
out(35) = '         Exposure Step  : '+ string(barr(41),'(i3)')+ string('ULT:  ', fix(barr(51)),'(30x,a,i3)')
out(36) = '         AECL           : '+ string(barr(42),'(i3)')+ string('LLT:  ', fix(barr(52)),'(30x,a,i3)')
out(37) = '         AECH0          : '+ string(barr(43),'(i3)')+ string('UAT:  ', ars_aec_uat,'(30x,a,i3)')
out(38) = '         AECH1          : '+ string(barr(44),'(i3)')+ string('LAT:  ', ars_aec_lat,'(30x,a,i3)')
out(39) = '         10% Mask       : '+ ref_enable(barr(45)<2)
out(40) = '         Filter Alter.  : '+ ref_on_off(barr(48)<2)
out(41) = '         Filt Alt. Lev  : '+ string(barr(49),'(i3)')

out(42) = '  '
	nsec = long(barr(46))*32
	nmin = 0
	while (nsec gt 60) do begin & nsec = nsec-60 & nmin = nmin+1 & end
out(43) = 'SXT Morn Interv: '+ string(nmin,'(i3)')+ ' minutes '+ string(nsec,'(i2)')+ ' seconds'
	nsec = long(barr(47))*32
	nmin = 0
	while (nsec gt 60) do begin & nsec = nsec-60 & nmin = nmin+1 & end
out(44) = 'SXT Even Interv: '+ string(nmin,'(i3)')+ ' minutes '+ string(nsec,'(i2)')+ ' seconds'
out(45) = '                                        FFI Mode:     0      1      2      3'
out(46) = 'PFI Buffer Select       : '+ string(barr(6),'(Z2.2)')+ 'h'+ '           M/S Select: '+ str1
out(47) = 'Patrol Buffer Select    : '+ string(barr(7),'(Z2.2)')+ 'h'+ '           Slave Buff: '+ str2
out = [headline, out(1:*)]
;
for i=0,n_elements(out)-1 do begin
    out(i) = strmid(out(i) + '                                                                  ', 0, 79)
end
return, out
end
