NAME:
  showsrc
 PURPOSE:   (one line only)
  Show image with source lists and astrometric references overlain.
 DESCRIPTION:
 CATEGORY:
  CCD data processing
 CALLING SEQUENCE:
  showsrc,image,srclist,reflist
 INPUTS:
  imname - String, file name of image to be read (FITS format assumed)
             You can also provide the actual image to display.
 OPTIONAL INPUT PARAMETERS:
  srclist - String, name of FITS file containing the source list.  (Optional)
  reflist - String, name of raw file containing the reference list. (Optional)
 KEYWORD INPUT PARAMETERS:
  BINFAC - integer binning factor to use for display.  Default is the
              smallest binning needed so that the binned image fits on
              the display, but defaults to 1 for the Z buffer.
  LOWSIG - low end of the image stretch range in units of sigma of the sky
              background noise.  The min will be this many sigma below sky.
              The default is -3 sigma (you must provide a signed number).
  HISIG  - high end of the image stretch range in units of sigma of the sky
              background noise.  The max will be this many sigma above sky.
              The default is 5 sigma.
  NEGATIVE - Flag, if set will invert the display range (ie., a negative)
  WINDOWNUM - direct graphics window number to use for display, default=7
  OUTFILE - Name of file to save a screen shot of display image (PNG format).
  FORCESTRETCH - Flag, if set will set the stretch to a specific DN range
                   as given by LOWVAL and HIVAL.  In this case LOWVAL and
                   HIVAL are also input keywords.
  SRCMAGLIM - faint magnitude limit of the source file to plot.  Default=99
                 Note that this is using the instrumental magnitudes found
                 in the source file.
 OUTPUTS:
 KEYWORD OUTPUT PARAMETERS:
    These keywords are pure output if FORCESTRETCH is not set.  If it
      is set then these carry the stretch values and must be provided.
  LOWVAL - scaling value for the lower boundery of the image stretch
  HIVAL  - scaling value for the upper boundery of the image stretch
 COMMON BLOCKS:
 SIDE EFFECTS:
 RESTRICTIONS:
 PROCEDURE:
 MODIFICATION HISTORY:
  Written by Marc W. Buie, Lowell Observatory, 2007/11/06
  2008/10/31, MWB, changed to use rdref
  2009/06/23, MWB, added LOWSIG and HISIG keywords
  2009/12/18, MWB, fixed bug, new keywords weren't connected to anything.
                     Also add option to input actual array to show.
  2009/12/21, MWB, added FORCESTRETCH, LOWVAL, and HIVAL output keywords
  2010/01/11, MWB, fixed a bug with the BINFAC default value.  Also added
                     the SRCMAGLIM keyword.
  2011/01/16, MWB, added UINT as valid image input type.
  2012/09/28, MWB, added lowclip/hiclip to sky scaling call for display
  2016/04/16, MWB, modified to use new rdsource.pro routine
  2016/11/22, MWB, allow byte input images
  2017/07/13, AMZ, added support for use of Z buffer
  2019/12/19, MWB, fixed a bug on the overlain plot scale (very subtle)