-------------------------------------------------------------------
                        MIL DRIVER for IMAGE
-------------------------------------------------------------------

MIL DRIVER 2.1
--------------

TO INSTALL THIS DRIVER:

- Be sure that you have already installed MIL. Run the INSTALL
  program on the "MIL installation" disk to install your MIL package.

- To use the IMAGE SERIES with MIL, you will need to install the MIL
  driver for IMAGE (if not done at MIL installation time). Take the
  "MIL installation" disk and run it. Choose the "install a new MIL
  driver" item. The installation program will update the \mil
  subdirectories \doc and \library\... to install the required files.

TO COMPILE AND RUN THE MIL EXAMPLES:

- To use the IMAGE SERIES with MIL, you will need to install the IM_SHELL
  users kit 3.4 package (or later), which comes with your IMAGE SERIES board
  (this is the native low level library used by MIL HOST to communicate with
  the IMAGE SERIES). In addition to linking with the MIL driver library,
  You will need to link with the IMAGE SERIES libraries (imdrv.lib,fpu.lib,
  ls.lib and im.lib) and, if required, associated DLL's.

- Be sure that the IM-SHELL (resident software) of your IMAGE SERIES
  hardware was loaded (in general, it is automatically done by MIL).
  Also if you are running in single screen configuration (VGA overlaid on
  top of the IMAGE-LC display), set your keying transparency color using
  the KEY utility (in your IM-SHELL users kit) or the MIL MdispOverlayKey()
  function. See your IMAGE-SERIES manual for more details.

- You will need MILIMAGE.LIB and, if required, MILIMAGE.DLL. Both of
  these should have been installed along with the driver.

- Go to the \mil\examples directory. This directory contains everything
  you need to compile and run the MIL examples. Look in this directory
  and study the batch file and link list (mcl.bat and millib.lst) and
  make sure that they contain the new libraries for the MIL driver for
  IMAGE SERIES and IM-SHELL.

- Read the instructions in the READ.ME file in this directory to know
  how to proceed to compile the examples.


PARTICULARITIES USING MIL AND THE IMAGE-SERIES:

- See the IMAGE-SERIES dedicated section in the MIL manual.

- Function particularities:

  MsysAlloc():
               At system allocation, the user can either specify M_COMPLETE,
               M_PARTIAL or M_WINDOWS as the InitFlag parameter.

               M_COMPLETE: Will perform a complete initialization of the board
                           and download the Image Series IM-SHELL required to
                           communicate with the board.  At least one complete
                           initialization is necessary after you power-up the
                           board.

               M_PARTIAL:  Skip download the Image Series Image-Shell
                           (which can take up to 30 seconds).

               M_WINDOWS:  A Windows driver must be running in the overlay
                           buffer of your Image-1280 or Image-640. This
                           will do a special initialization for Windows
                           and skip the download the Image Series Image-Shell
                           which must be already loaded and running.

               M_DEFAULT:  Behaves same way as M_COMPLETE.

  MbufAlloc1d()
  MbufAlloc2d()
  MbufAllocColor():
  MbufChild1d():
  MbufChild2d():
  MbufChildColor():

               To maximize the use of the memory space available on the
               IMAGE-SERIES and to avoid memory organization conflicts, it is
               strongly recommended that you allocate the largest buffer(s)
               first (especially buffers those of width over 1K).

               Buffers allocated for processing (M_PROC or M_GRAB attribute)
               must start in X on a 4 pixel boundary to be processed or grabbed
               by the Image board. Child buffer must have a X size and a
               starting X offset in their parent which is a multiple of 4.

  MdigAlloc(): The data format parameter is a string giving the format or the
               name of a file that contains the format of the camera signal
               you want to grab.  This can be set to one of the following for
               monochrome cameras:

               - "M_DEFAULT"    (same as "M_RS170")
               - "M_RS170"      most common RS-170 cameras (same as "M_RS170_LOW")
               - "M_RS170_LOW"  RS-170, 512x480 int, 8 bits, 10MHz, analog
               - "M_RS170_HIGH" RS-170, 655x480 int, 8 bits, 12.5MHz, analog
               - "M_CCIR"       most common CCIR cameras (same as to "M_CCIR_LOW")
               - "M_CCIR_LOW"   CCIR, 518x574, 8 bits, 10MHz, analog
               - "M_CCIR_MED"   CCIR, 650x574, 8 bits, 12.5MHz, analog
               - "M_CCIR_HIGH"  CCIR, 765x574, 8 bits, 14.8MHz, analog
                                Need a high resolution IMAGE-ASD.
               - "M_VIDEK" Monoshot, 1280x1024 non-int, 8 bits, 10MHz, RS-422
               - "M_USER1" User defined image series SET_CAM utility (cam id=3)
               - "M_USER2" User defined image series SET_CAM utility (cam id=4)
               - "M_USER3" User defined image series SET_CAM utility (cam id=16)

               It can be set to one of the following for color cameras:

               - "M_DEFAULT"  (same as "M_NTSC")
               - "M_SUPER_VHS" most common Super VHS cameras (same as M_NTSC_YC)
               - "M_NTSC"     NTSC,       512x480 int, 3x8 bits, 10MHz, composite
               - "M_NTSC_RGB" RS-170 RGB, 512x480 int, 3x8 bits, 10MHz, separate
               - "M_NTSC_YC"  RS-170 Y/C, 512x480 int, 3x8 bits, 10MHz, Y/C
               - "M_PAL"      PAL I,      768x576 int, 3x8 bits, 14.8MHz, composite
               - "M_PAL_RGB"  PAL I RGB,  768x576 int, 3x8 bits, 14.8MHz, separate
               - "M_PAL_YC"   PAL Y/C,    768x576 int, 3x8 bits, 14.8MHz, Y/C
               - "M_USER1" User defined image series SET_CAM utility (cam id=3)
               - "M_USER2" User defined image series SET_CAM utility (cam id=4)
               - "M_USER3" User defined image series SET_CAM utility (cam id=16)

               Or it can be set to any valid camera format file name designed
               for the image series (ex: "c:\image\camera\RS170_LO.CAM").


  MdispAlloc(): The data format parameter is a string specifying resolution of
                display.  This parameter must be set to "M_DEFAULT". To select
                different resolutions, use the image series SETVID or IMLDVID
                utilities.


DRIVER SPECIFIC FUNCTIONS

  Some image specific functions are also provided to give the user
  access to hardware particularities.  The following list of
  functions are described in the "MIL and the IMAGE series platform"
  appendix.

  MisBufCondImageAttach()
  MisBufMask()
  MisDigToBufAlloc()
  MisDigToBufFree()
  MisDigIteration()

PARTICULARITIES USING MIL AND IM-SHELL CODE (native mode):

  If you want to mix MIL commands with IM-SHELL commands, see
  Image series the dedicated appendix in the MIL manual, the
  "MIL native mode manual" and the IMAGE SERIES manuals.
