FITS Format Errors

FITSverify tests whether a FITS file meets the requirements of Version 3.0 of the FITS Standard.
It will test for any of the following error or warning conditions:

     - Mandatory keyword not present or out of order
     - Mandatory keyword has wrong datatype or illegal value
     - END header keyword is not present
     - Sum of table column widths is inconsistent with NAXIS1 value
     - BLANK keyword present in image with floating-point datatype
     - TNULLn keyword present for floating-point binary table column
     - Bit column has non-zero fill bits or is not left adjusted 
     - ASCII TABLE column contains illegal value inconsistent with TFORMn
     - Address to a variable length array not within the data heap 
     - Extraneous bytes in the FITS file following the last HDU    
     - Mandatory keyword values not expressed in fixed format
     - Mandatory keyword duplicated elsewhere in the header
     - Header contains illegal ASCII character (not ASCII 32 - 126)
     - Keyword name contains illegal character
     - Keyword value field has illegal format
     - Value and comment fields not separated by a slash character
     - END keyword not filled with blanks in columns 9 - 80
     - Reserved keyword with wrong datatype or illegal value
     - XTENSION keyword in the primary array
     - Column related keyword (TFIELDS, TTYPEn,TFORMn, etc.) in an image
     - SIMPLE, EXTEND, or BLOCKED keyword in any extension
     - BSCALE, BZERO, BUNIT, BLANK, DATAMAX, DATAMIN keywords in a table
     - Table WCS keywords (TCTYPn, TCRPXn, TCRVLn, etc.) in an image
     - TDIMn or THEAP keyword in an ASCII table 
     - TBCOLn keyword in a Binary table
     - THEAP keyword in a binary table that has PCOUNT = 0 
     - XTENSION, TFORMn, TDISPn or TDIMn value contains leading space(s)
     - WCSAXES keyword appears after other WCS keywords
     - Index of any WCS keyword (CRPIXn, CRVALn, etc.) greater than 
       value of WCSNAXES
     - Index of any table column descriptor keyword (TTYPEn, TFORMn,
       etc.) greater than value of TFIELDS
     - TSCALn or TZEROn present for an ASCII, logical, or Bit column
     - TDISPn value is inconsistent with the column datatype 
     - Length of a variable length array greater than the maximum 
       length as given by the TFORMn keyword
     - ASCII table floating-point column value does not have decimal point(*)
     - ASCII table numeric column value has embedded space character
     - Logical column contains illegal value not equal to 'T', 'F', or 0
     - Character string column contains non-ASCII text character
     - Header fill bytes not all blanks
     - Data fill bytes not all blanks in ASCII tables or all zeros 
       in any other type of HDU 
     - Gaps between defined ASCII table columns contain characters with
       ASCII value > 127
     - SIMPLE = F
     - Presence of deprecated keywords BLOCKED or EPOCH
     - 2 HDUs have identical EXTNAME, EXTVER, and EXTLEVEL values
     - BSCALE or TSCALn value = 0.
     - BLANK OR TNULLn value exceeds the legal range
     - TFORMn has 'rAw' format and r is not a multiple of w
     - DATE = 'dd/mm/yy' and yy is less than 10 (Y2K problem??)
     - Index of any WCS keyword (CRPIXn, CRVALn, etc.) greater than
       value of NAXIS, if the WCSAXES keyword is not present
     - Duplicated keyword (except COMMENT, HISTORY, blank, etc.)
     - Column name (TTYPEn) does not exist or contains characters 
       other than letter, digit and underscore
     - Binary table has PCOUNT > 0, but no variable-length array columns
     - Calculated checksum inconsistent with CHECKSUM or DATASUM keyword