        subroutine DBDUMP
      include 'SIZE.INC'
      include 'UNITS.INC'
      integer IBUFF(VARIEC), RECDAT(FILDAT), HRECS
      integer M,I,L,IT
      HRECS = FILDAT/VARIEC
      if (FILDAT-VARIEC*HRECS.ne.0) HRECS = HRECS+1
      M = 0
      do 110 I = 1, HRECS
         read (RANUNT(MACHNO),rec=I) IBUFF
         do 100 L = 1, VARIEC
            M = M+1
            if (M.gt.FILDAT) go to 120
            RECDAT(M) = IBUFF(L)
100      continue
110   continue
120   continue
      write (PRINTR(MACHNO),5000) RECDAT(27),RECDAT(28),RECDAT(29),
     &   RECDAT(30),RECDAT(32),RECDAT(28),RECDAT(28)
5000  format (//' This implementation of EXAMS has ',I3,' ENVIRONMENT','
     &al segments'/' defined with ',I3,' interconnections, and can',' ex
     &amine'/' the behavior of ',I3,' CHEMICALs simultaneously.','  Up t
     &o'/1X,I3,' transformation pathways can be specified in the',' PROD
     &UCT Chemistry'/' descriptors, and up to ',I3,' pulse load',' event
     &s in the LOADings descriptors.'/' Each ecosystem can include ',I3,
     &' advective and ',I3/' dispersive transport pathways.')
      write (PRINTR(MACHNO),5010) RECDAT(13),RECDAT(14),RECDAT(49)
5010  format (' Each record in the database contains ',I3,' REAL variabl
     &es,'/1X,I3,' INTEGER variables, or ',I4,' Characters.')
      write (PRINTR(MACHNO),5020) RECDAT(1),RECDAT(2)
5020  format (//' The HELP database begins with record ',I5/' and occupi
     &es ',I5,' records.')
      write (PRINTR(MACHNO),5030) RECDAT(3),RECDAT(4)
5030  format (//' The text describing the HELP keywords begins'/' with r
     &ecord ',I5,' and occupies ',I5,' records.')
      write (PRINTR(MACHNO),5040) RECDAT(5),RECDAT(6)
5040  format (//' The names and descriptors for the input data',' names 
     &begin '/' with record ',I5,' and occupy ',I5,' records.')
      write (PRINTR(MACHNO),5050) RECDAT(7),RECDAT(8)
5050  format (//' The HELP command text describing the input data',' nam
     &es'/' begins at record ',I5,' and occupies ',I5,' records.')
      write (PRINTR(MACHNO),5060) RECDAT(9),RECDAT(10)
5060  format (//' The Chemical data begins at record ',I5/' and occupies
     & ',I5,' records.')
      write (PRINTR(MACHNO),5070) RECDAT(17)
5070  format (/' Each of the ',I5,' entries in the CHEMICAL database con
     &tains:'/)
      write (PRINTR(MACHNO),5080) RECDAT(15),RECDAT(16),RECDAT(54),
     &   RECDAT(19),RECDAT(20),RECDAT(50),RECDAT(18)
5080  format (10X,' REAL records               - ',I5/10X,' INTEGER reco
     &rds            - ',I5/10X,' CHARACTER records          - ',I5/10X,
     &' REAL variables             - ',I5/10X,' INTEGER variables       
     &   - ',I5/10X,' CHARACTERS                 - ',I5//' of which the 
     &first ',I5,' are READONLY entries.')
      write (PRINTR(MACHNO),5090) RECDAT(11),RECDAT(12)
5090  format (//' The Environmental database begins at record ',I5/' and
     & occupies ',I5,' records.')
      write (PRINTR(MACHNO),5100) RECDAT(23)
5100  format (/' Each of the ',I5,' entries in the ENVIRONMENTAL databas
     &e contains:'/)
      write (PRINTR(MACHNO),5080) RECDAT(21),RECDAT(22),RECDAT(55),
     &   RECDAT(25),RECDAT(26),RECDAT(51),RECDAT(24)
      write (PRINTR(MACHNO),5110) RECDAT(45),RECDAT(46)
5110  format (//' The Chemical LOADs database begins at record ',I5/' an
     &d occupies ',I5,' records.')
      write (PRINTR(MACHNO),5120) RECDAT(35)
5120  format (/' Each of the ',I5,' entries in the LOADINGS database con
     &tains:'/)
      write (PRINTR(MACHNO),5080) RECDAT(33),RECDAT(34),RECDAT(56),
     &   RECDAT(37),RECDAT(38),RECDAT(52),RECDAT(36)
      write (PRINTR(MACHNO),5130) RECDAT(47),RECDAT(48)
5130  format (//' The PRODUCT Chemistry database begins at record ',I5/'
     & and occupies ',I5,' records.')
      write (PRINTR(MACHNO),5140) RECDAT(41)
5140  format (/' Each of the ',I5,' entries in the PRODUCT database cont
     &ains:'/)
      write (PRINTR(MACHNO),5080) RECDAT(39),RECDAT(40),RECDAT(57),
     &   RECDAT(43),RECDAT(44),RECDAT(53),RECDAT(42)
      IT = 0
      do 130 I = 2, 12, 2
         IT = IT+RECDAT(I)
130   continue
      IT = IT+RECDAT(46)+RECDAT(48)+1
      write (PRINTR(MACHNO),5150) IT
5150  format (//' This file (EXAMDAF) requires ',I5,' records.')
      write (PRINTR(MACHNO),5160)
5160  format ('1'/'   Definition of EXAMS File Control Data Record'/' ==
     &==================================================='/' These pages
     & provide a list of the definition of each'/' element of the header
     & record(s) of the database file.'/' The specifics apply only to th
     &e case described. '//' Element Contents      Description'/' ======
     &= ======== ======================'//)
      write (PRINTR(MACHNO),5170) RECDAT(1)
5170  format (/'   01',6X,I5,' Starting record number of the online assi
     &stance'/16X,' database.')
      write (PRINTR(MACHNO),5180) RECDAT(2)
5180  format (/'   02',6X,I5,' Number of records in the online assistanc
     &e'/16X,' database.')
      write (PRINTR(MACHNO),5190) RECDAT(3)
5190  format (/'   03',6X,I5,' Starting record number of the HELP keywor
     &d'/16X,' descriptions (Element 1 + Element 2).')
      write (PRINTR(MACHNO),5200) RECDAT(4)
5200  format (/'   04',6X,I5,' Number of records in keyword HELP databas
     &e.')
      write (PRINTR(MACHNO),5210) RECDAT(5)
5210  format (/'   05',6X,I5,' Starting record number of the input data 
     &names'/16X,' database. (Element 3 + Element 4).')
      write (PRINTR(MACHNO),5220) RECDAT(6)
5220  format (/'   06',6X,I5,' Number of records in this database.')
      write (PRINTR(MACHNO),5230) RECDAT(7)
5230  format (/'   07',6X,I5,' Starting record number of the description
     &s'/16X,' of the input data names (Element 5 + Element 6).')
      write (PRINTR(MACHNO),5240) RECDAT(8)
5240  format (/'   08',6X,I5,' Number of records in this database.')
      write (PRINTR(MACHNO),5250) RECDAT(9)
5250  format (/'   09',6X,I5,' Starting record number of the Chemical da
     &tabase.'/16X,' (Element 7 + Element 8).')
      write (PRINTR(MACHNO),5260) RECDAT(10)
5260  format (/'   10',6X,I5,' Number of records in the Chemical databas
     &e.'/16X,' (Elements (15 + 16 + 54) * Element 17).')
      write (PRINTR(MACHNO),5270) RECDAT(11)
5270  format (/'   11',6X,I5,' Starting record number of the Environment
     &al'/16X,' database. (Element 9 + Element 10).')
      write (PRINTR(MACHNO),5280) RECDAT(12)
5280  format (/'   12',6X,I5,' Number of records in the Environmental da
     &tabase.'/16X,' (Elements (21 + 22 + 55) * Element 23).')
      write (PRINTR(MACHNO),5290) RECDAT(13)
5290  format (/'   13',6X,I5,' VARREC - number of REAL values per physic
     &al record.')
      write (PRINTR(MACHNO),5300) RECDAT(14)
5300  format (/'   14',6X,I5,' VARIEC - number of INTEGER values per phy
     &sical record.')
      write (PRINTR(MACHNO),5310) RECDAT(15)
5310  format (/'   15',6X,I5,' Number  of REAL records per logical recor
     &d'/16X,' for each entry in the Chemical database.'/16X,' (Element 
     &19 / Element 13).')
      write (PRINTR(MACHNO),5320) RECDAT(16)
5320  format (/'   16',6X,I5,' Number of INTEGER records per logical rec
     &ord'/16X,' for each entry in the Chemical database.'/16X,' (Elemen
     &t 20 / Element 14).')
      write (PRINTR(MACHNO),5330) RECDAT(17)
5330  format (/'   17',6X,I5,' Number of entries in the Chemical databas
     &e.'/16X,' (User defined in Subroutine DATAIN.)')
      write (PRINTR(MACHNO),5340) RECDAT(18)
5340  format (/'   18',6X,I5,' Number of READONLY entries in the Chemica
     &l'/16X,' database. (User defined in Subroutine DATAIN.)')
      write (PRINTR(MACHNO),5350) RECDAT(19)
5350  format (/'   19',6X,I5,' Number of REAL variables per Chemical dat
     &abase entry.')
      write (PRINTR(MACHNO),5360) RECDAT(20)
5360  format (/'   20',6X,I5,' Number of INTEGER variables per Chemical 
     &entry.')
      write (PRINTR(MACHNO),5370) RECDAT(21)
5370  format (/'   21',6X,I5,' Number of REAL records per logical record
     & (ecosystem)'/16X,' for each entry in the Environmental database.'
     &/16X,' (Element 25 / Element 13).')
      write (PRINTR(MACHNO),5380) RECDAT(22)
5380  format (/'   22',6X,I5,' Number of INTEGER records per logical rec
     &ord'/16X,' for each entry in the Environmental database.'/16X,' (E
     &lement 26 / Element 14).')
      write (PRINTR(MACHNO),5390) RECDAT(23)
5390  format (/'   23',6X,I5,' Number of entries in the Environmental da
     &tabase.'/16X,' (User defined in Subroutine DATAIN.)')
      write (PRINTR(MACHNO),5400) RECDAT(24)
5400  format (/'   24',6X,I5,' Number of READONLY entries in the Environ
     &mental'/16X,' database. (User defined in Subroutine DATAIN.)')
      write (PRINTR(MACHNO),5410) RECDAT(25)
5410  format (/'   25',6X,I5,' Number of REAL variables per ecosystem.')
      write (PRINTR(MACHNO),5420) RECDAT(26)
5420  format (/'   26',6X,I5,' Number of INTEGER variables per ecosystem
     &.')
      write (PRINTR(MACHNO),5430) RECDAT(27)
5430  format (/'   27',6X,I5,' NPX - maximum number of segments in aquat
     &ic ecosystem models.')
      write (PRINTR(MACHNO),5440) RECDAT(28)
5440  format (/'   28',6X,I5,' NCON - number of interconnections.')
      write (PRINTR(MACHNO),5450) RECDAT(29)
5450  format (/'   29',6X,I5,' NCHEM - number of simultaneous chemicals.
     &')
      write (PRINTR(MACHNO),5460) RECDAT(30)
5460  format (/'   30',6X,I5,' NTRAN - number of transformation pathways
     &.')
      write (PRINTR(MACHNO),5470) RECDAT(31)
5470  format (/'   31',6X,I5,' MAXDAT - number of data blocks that can b
     &e loaded'/16X,' into the environmental descriptors.')
      write (PRINTR(MACHNO),5480) RECDAT(32)
5480  format (/'   32',6X,I5,' MAXMAS - maximum number of allochthonous 
     &chemical'/16X,' pulse load events.')
      write (PRINTR(MACHNO),5490) RECDAT(33)
5490  format (/'   33',6X,I5,' Number of REAL records per logical record
     &'/16X,' for each entry in the LOADS database.'/16X,' (Element 37 /
     & Element 13).')
      write (PRINTR(MACHNO),5500) RECDAT(34)
5500  format (/'   34',6X,I5,' Number of INTEGER records per logical rec
     &ord'/16X,' for each entry in the LOADS database.'/16X,' (Element 3
     &8 / Element 14).')
      write (PRINTR(MACHNO),5510) RECDAT(35)
5510  format (/'   35',6X,I5,' Number of entries in the LOADS database.'
     &   /16X,' (User defined in Subroutine DATAIN.)')
      write (PRINTR(MACHNO),5520) RECDAT(36)
5520  format (/'   36',6X,I5,' Number of READONLY entries in the LOADS d
     &atabase.'/16X,' (User defined in Subroutine DATAIN.)')
      write (PRINTR(MACHNO),5530) RECDAT(37)
5530  format (/'   37',6X,I5,' Number of REAL variables per LOAD logical
     & entry.')
      write (PRINTR(MACHNO),5540) RECDAT(38)
5540  format (/'   38',6X,I5,' Number of INTEGER variables per LOAD logi
     &cal entry.')
      write (PRINTR(MACHNO),5550) RECDAT(39)
5550  format (/'   39',6X,I5,' Number of REAL records per logical record
     &'/16X,' for each entry in the PRODUCT database.'/16X,' (Element 43
     & / Element 13).')
      write (PRINTR(MACHNO),5560) RECDAT(40)
5560  format (/'   40',6X,I5,' Number of INTEGER records per logical rec
     &ord'/16X,' for each entry in the PRODUCT database.'/16X,' (Element
     & 44 / Element 14).')
      write (PRINTR(MACHNO),5570) RECDAT(41)
5570  format (/'   41',6X,I5,' Number of entries in the PRODUCT database
     &.'/16X,' (User defined in Subroutine DATAIN.)')
      write (PRINTR(MACHNO),5580) RECDAT(42)
5580  format (/'   42',6X,I5,' Number of READONLY entries in the PRODUCT
     & database.'/16X,' (User defined in Subroutine DATAIN.)')
      write (PRINTR(MACHNO),5590) RECDAT(43)
5590  format (/'   43',6X,I5,' Number of REAL variables per logical entr
     &y.')
      write (PRINTR(MACHNO),5600) RECDAT(44)
5600  format (/'   44',6X,I5,' Number of INTEGER variables per logical e
     &ntry.')
      write (PRINTR(MACHNO),5610) RECDAT(45)
5610  format (/'   45',6X,I5,' Starting record number of the LOADS datab
     &ase.'/16X,' (Element 11 + Element 12).')
      write (PRINTR(MACHNO),5620) RECDAT(46)
5620  format (/'   46',6X,I5,' Number of records in the LOADS database.'
     &   /16X,' (Elements (33 + 34 + 56) * Element 35).')
      write (PRINTR(MACHNO),5630) RECDAT(47)
5630  format (/'   47',6X,I5,' Starting record number of the PRODUCT dat
     &abase.'/16X,' (Element 45 + Element 46).')
      write (PRINTR(MACHNO),5640) RECDAT(48)
5640  format (/'   48',6X,I5,' Number of records in the PRODUCT database
     &.'/16X,' (Element(39 + 40 + 57) * Element 41).')
      write (PRINTR(MACHNO),5650) RECDAT(49)
5650  format (/'   49',6X,I5,' VARCEC - Number of characters (bytes) per
     & physical record.')
      write (PRINTR(MACHNO),5660) RECDAT(50)
5660  format (/'   50',6X,I5,' Number of characters per CHEMICAL entry.'
     &   )
      write (PRINTR(MACHNO),5670) RECDAT(51)
5670  format (/'   51',6X,I5,' Number of characters per ENVIRONMENTAL en
     &try.')
      write (PRINTR(MACHNO),5680) RECDAT(52)
5680  format (/'   52',6X,I5,' Number of characters per LOAD entry.')
      write (PRINTR(MACHNO),5690) RECDAT(53)
5690  format (/'   53',6X,I5,' Number of characters per PRODUCTS entry.'
     &   )
      write (PRINTR(MACHNO),5700) RECDAT(54)
5700  format (/'   54',6X,I5,' Number of character records per CHEMICAL 
     &database.'/16X,' (Element 50 / VARCEC)')
      write (PRINTR(MACHNO),5710) RECDAT(55)
5710  format (/'   55',6X,I5,' Number of character records per ENVIRONME
     &NTAL database.'/16X,' (Element 51 / VARCEC)')
      write (PRINTR(MACHNO),5720) RECDAT(56)
5720  format (/'   56',6X,I5,' Number of character records per LOADings 
     &database.'/16X,' (Element 52 / VARCEC)')
      write (PRINTR(MACHNO),5730) RECDAT(57)
5730  format (/'   57',6X,I5,' Number of character records per PRODUCT d
     &atabase.'/16X,' (Element 53 / VARCEC)')
      return
      end
