      integer sstopen
      integer sstxy

      integer ok,ix,iy
      real*8 t,latitude,longitude,lat0,lon0
      character filename*64
      character number*32
      character region*4

      write (6,101) ' Enter name of file to read: '
  101 format (a,$)
      read (5,100) filename
  100 format (a)

      write (6,100) ' Enter the two- or three-digit region code '
      write (6,101) ' (na, nae, sa, ag, io, nep, sep, nwp, swp): '
      read (5,100) region
      if (region(1:3).eq.'na ') then
          lat0 = 72.509765625
          lon0 = 261.826171875
          write (6,100) ' Western North Atlantic'
         endif
      if (region(1:3).eq.'nae') then
          lat0 = 72.509765625
          lon0 = 313.505859375
          write (6,100) ' Eastern North Atlantic and Mediterranean'
         endif
      if (region(1:3).eq.'sa ') then
          lat0 = 23.291015625
          lon0 = 290.654296875
          write (6,100) ' South Atlantic'
         endif
      if (region(1:3).eq.'ag ') then
          lat0 = 23.291015625
          lon0 = 335.654296875
          write (6,100) ' Agulhas Region'
         endif
      if (region(1:3).eq.'io ') then
          lat0 = 30.322265625
          lon0 = 31.904296875
          write (6,100) ' Indian Ocean'
         endif
      if (region(1:3).eq.'nep') then
          lat0 = 68.994140625
          lon0 = 171.474609375
          write (6,100) ' Northeastern Pacific'
         endif
      if (region(1:3).eq.'sep') then
          lat0 = 23.291015625
          lon0 = 201.005859375
          write (6,100) ' Southeastern Pacific'
         endif
      if (region(1:3).eq.'nwp') then
          lat0 = 68.994140625
          lon0 = 115.224609375
          write (6,100) ' Northwestern Pacific'
         endif
      if (region(1:3).eq.'swp') then
          lat0 = 23.291015625
          lon0 = 111.005859375
          write (6,100) ' Southwestern Pacific'
         endif

      ok = sstopen (filename)
      if (ok .ne. 0) then
   10      write (6,101) ' Enter latitude (Q to quit): '
           read (5,100) number
           if (number(1:1).eq.'Q'.or.number(1:1).eq.'q') go to 20
           read (number,105) latitude
  105      format (G)
           write (6,101) ' Enter longitude: '
           read (5,100) number
           if (number(1:1).eq.'Q'.or.number(1:1).eq.'q') go to 20
           read (number,105) longitude
           iy = nint((lat0  - latitude)/0.1757812)
           ix = nint((longitude - lon0)/0.1757812)
           ok = sstxy (ix,iy,t)
           if (ok .eq. 0) then
                write (6,211) latitude,longitude,ix,iy,'(invalid)'
             else
                if (t .le. -99.0) then
                     write (6,211) latitude,longitude,ix,iy,'(missing)'
  211                format (2f12.6,2x,'(',i4,',',i4,')',2x,a)
                  else
                     write (6,210) latitude,longitude,ix,iy,t
  210                format (2f12.6,2x,'(',i4,',',i4,')',2x,f6.2)
                  endif
             endif
           go to 10
   20      call sstclose
        else
           write (6,100) ' (Failed)'
        endif
      end
