Release Notes for PRO MATE(tm) II Command Line Interface v1.50
November 9, 2001

-----------------------------------------------------------------
Table of Contents
-----------------------------------------------------------------
* Device Support List
* Operating System Support List for v1.50
* What's New in v1.50
* What's New in v1.30
* What's New in v1.20
* Repairs and Enhancements Made in v1.50
* Repairs and Enhancements Made in v1.40
* Repairs and Enhancements Made in v1.20
* Important Notes
* Demo Programs
* Socket Support
* Installation
* Upgrading the PRO MATE II Operating System
* Command Line Interface Description
* How to Contact Microchip

------------------------------------------------------------
Device Support List
------------------------------------------------------------

Device support is dependent on the firmware version installed
in the PRO MATE II device programmer.  Refer to README.PRO for
the list of supported devices and what firmware files support
which devices.

------------------------------------------------------------
Operating System Support List for v1.50
------------------------------------------------------------
Windows 3.1x   Windows 95   Windows 98   Windows ME

------------------------------------------------------------
What's New in v1.50
------------------------------------------------------------

The PRO MATE II Command Line Interface now has a method to
specify the programming algorithm used to program flash devices
that have low voltage programming support.  The following commands
have been added:

/H      Normal (high voltage) programming
/L      Low voltage programming

In order to use these commands:
    - the selected device must have a Low Voltage Program
      configuration bit
    - PRO MATE II Operating System v5.50.20 or greater must be
      installed in the Device Programmer
    - the ICSP Socket Module must be installed to use the
      low voltage programming method

If these commands are not used when programming a flash device with
low voltage programming capability with the ICSP socket module,
then the first time a device is selected, the PRO MATE Device Programmer
will prompt the user for the desired programming method.  This will
cause a communications error if the user has any commands on the command
line other than device selection.  Using these commands will avoid this
prompt.

Example:

To use the Low Voltage Programming algorithm to program a hex file:
	procmd /1 /p16f877 /fhexcode.hex /m /l

------------------------------------------------------------
What's New in v1.30
------------------------------------------------------------
Date information added to Copyright text.

------------------------------------------------------------
What's New in v1.20
------------------------------------------------------------

The PRO MATE II Command Line Interface now has a Verify function
(/Y). If you specify a hex file on the command line, it verifies only
the contents of the hex file.  If the hex file contains the starting
and ending address for the device the command will use the full verify
as if the VFY button was pressed.  If the hex file does not contain
the first and last locations, the command will use the verify range
command and will only verify the locations contained in the hex file.
If you do not specify a hex file on the command line, it verifies
the entire device using the full verify command.

The Program function (/M) has been updated to act the same way.  If the
hex file contains the first and last location, then a full program
will occur.  If not, then the program range will be used.

It is recommended that you first download the file then use the /M
command to program the entire part.  This is especially important when
trying to re-program a flash part because the full program command will
first erase the device prior to programming.  The program range command
does not erase the device first.

Examples:

To verify against a known good hex file:
	procmd /1 /p16f84 /fhexcode.hex /y
Or
	procmd /1 /p16f84 /fhexcode.hex
	procmd /1 /p16f84 /y

To explicitly perform a verification after a program:
	procmd /1 /p16f84 /fhexcode.hex /m /y
Or
	procmd /1 /p16f84 /fhexcode.hex
	procmd /1 /p16f84 /m /y

PRO MATE II Command Line Interface works with firmware
v4.22.00 and above.  This is a DOS command line interface to
the PRO MATE II device programmer.  This interface is designed
for programming devices in a production environment with
limited resource PCs(80286 or better).  Any device that
can be fully specified with a hex file can be programmed
with the command line interface.  Possible uses for this
interface include:
   - Setting up a PRO MATE II for stand alone programming
   - Updating device programmer firmware
   - SQTP programming

This README is targeted to users of the command line
interface.  Refer to README.PRO for more information about
the MPLAB interface to PRO MATE II.

See README.PRO for more information on specific changes to
firmware or MPLAB DLLs.

Refer to your PRO MATE II User's Guide for instructions on
using the command line interface.

------------------------------------------------------------
Repairs and Enhancements Made in v1.50
------------------------------------------------------------
SSR 15612: PROCMD fails with an "Out of Memory" error on
initialization of the PIC18C601/801.

------------------------------------------------------------
Repairs and Enhancements Made in v1.40
------------------------------------------------------------
SSR 15306: Configuration bits and ID locations for PIC18CXXX
devices are not programmed correctly.

------------------------------------------------------------
Repairs and Enhancements Made in v1.20
------------------------------------------------------------

When trying to program devices where the ID locations are
located immediately after program memory, if ID locations
were specified in the hex file and the hex file and program
command were specified together on the command line,
programming errors would result.

------------------------------------------------------------
Important Notes
------------------------------------------------------------

After installing a socket module, it is good practice to do
a blank check on a known blank device to verify that the
socket module is seated properly.  To perform a blank check
in stand alone mode, select the desired device type, insert
a blank device, and select Vfy (Verify).  If the device reads
back blank, the message "Device Erased" will appear.

If a "Ready for Download" message appears on LCD at normal power-up,
the PRO MATE II operating system has been erased and must be reinstalled.
See your PRO MATE II User's Guide for instructions on upgrading the
firmware/operating system.

------------------------------------------------------------
Demo Programs
------------------------------------------------------------

sqtp1.bat  An example .bat file that shows a SQTP file used
           to program several devices.

sqtp2.bat  An example .bat file that shows a SQTP file used
           to program several devices.  Command line arguments
           are used.

count2.bat An example program that takes a count between 1-9999
           on the command line and programs that many devices.
           Also verbose error messages.

count3.bat An example program that takes a count between 1-9999
           on the command line and programs that many devices.
           The user is queried for options. Also verbose error
           messages.

------------------------------------------------------------
Socket Support
------------------------------------------------------------

Refer to README.PRO for the list of devices supported by
each socket module and hardware limitations for in-circuit
programming.

------------------------------------------------------------
Installation
------------------------------------------------------------

If you have installed MPLAB, place the PROCMD.EXE file in the
MPLAB directory (Program Files->Mplab) and run from there, as
there will already be installed the proper device file
(MPLAB.DEV).  If you have not installed MPLAB, create a
directory, move the PROCMD.EXE and MPLAB.DEV to that directory,
and run PROCMD.EXE from there.

------------------------------------------------------------
Upgrading the PRO MATE II Operating System
------------------------------------------------------------

If PRO MATE II did not recognize your socket module (i.e.,
socket not supported), you may need to update the firmware.
You can obtain the latest PRO MATE II firmware from our website
(www.microchip.com). Once you have the firmware, you will need
to download this file to the PRO MATE II.

1. Turn the power off on the PRO MATE II; i.e., power switch on back
   to the "OFF" position.

2. While holding down the F1 and F3 keys, turn the power back on;
   i.e., power switch on back in the "ON" position.

3. You should get the following messages on the PRO MATE II LCD:
   "Clearing RAM Now....." and "Ready for Download...."
   If you do not, repeat the previous steps.

4. Download the firmware file using PROCMD as follows:

   PROCMD /<number> /d<filename>

  where <number> = 1, 2, 3 or 4, depending on the COM port you are
  using, and <filename> is the name of the firmware file.

Once the download is done, PRO MATE II will automatically re-start,
as if from power-on.

------------------------------------------------------------
Command Line Interface Description
------------------------------------------------------------

The following commands are available in the command line
interface.

COMMAND      SYNTAX       VALID VALUES            REQUIRED?
-----------------------------------------------------------
Baud Rate    /b<baud>     9600,19200(default)     No

Download     /d<filename> any valid filename      No
 Firmware

Target Hex   /f<filename> any valid filename      No
 File

Normal(high) /h                                   No*
 Voltage
 Program

Low Voltage  /l                                   No*
 Program

Program      /m                                   No

Vdd Min      /n<voltage>  specified in mVm must   No
                          be within device spec,
                          125mV resolution

Device       /p<partname> e.g 16C54A, 24AA01      Yes, unless
                                                  downloading
                                                  firmware

Quiet mode   /q                                   No

Enable Safe  /r                                   No
 Mode

SQTP file    /s<filename> any valid filename      No

Vpp          /v<voltage>  specified in mV, must   No
                          be within device spec,
                          125mV resolution

Vdd Max      /x<voltage>  specified in mV, must   No
                          be within device spec,
                          125mV resolution

COMM port    /<number>    1, 2, 3, or 4           Yes

Verify       /y                                   No

Help         /?                                   No


* Use of one of these commands is recommended if programming
  flash devices with the ICSP Socket Module.

Command line parameters are not order dependent and are not
case sensitive.  If no parameters are specified, the help
screen will be printed.

Checks will be made to ensure that valid values for command
line options are specified.  Voltages must be specified in
millivolts, and will be checked to see if they are given in
125 mV steps.  Note that PRO MATE II supports a voltage step
of 125 mV, but PRO MATE only supports a 250 mV step.

The interface is flexible, allowing a user the options of
simply setting up the device programmer, programming a
device with the currently loaded contents of the device
programmer, or completely specifying the contents of a device
to be programmed.  Some examples of using the command line
interface are as follows:


COMMAND LINE
   OPERATION PERFORMED
------------------------------------------------------------
PROCMD /?
   Help screen displayed.

PROCMD /1 /DPF50013.HEX
   Firmware file PF50013.HEX downloaded to PRO MATE II on COM1.

PROCMD /1 /P16C54A
   PRO MATE II on COM1 set to a PIC16C54A.

PROCMD /1 /P16C54A /R
   PRO MATE II on COM1 set to a PIC16C54A, PRO MATE II set to
   safe mode.

PROCMD /1 /P16C54A /N4500 /X5500 /FPROGRAM.HEX
   PRO MATE II on COM1 set to a PIC16C54A, Vdd Min set to 4.5v,
   Vdd Max set to 5.5v.  Vpp set to the device's default
   value.  File PROGRAM.HEX sent to the PRO MATE II.

PROCMD /1 /P16C54A /N4500 /X5500 /FPROGRAM.HEX /M
   PRO MATE II on COM1 set to a PIC16C54A, Vdd Min set to 4.5v,
   Vdd Max set to 5.5v.  Vpp set to the device's default
   value.  File PROGRAM.HEX sent to the PRO MATE II.  Device
   programmed with specified voltages.  Only the addresses
   specified in PROGRAM.HEX are programmed.

PROCMD /2 /P16C61 /FVOLTS.HEX
   PRO MATE on COM2 set to a PIC16C61, hex file VOLTS.HEX
   sent to the PRO MATE II, voltages set to devices default
   values.

PROCMD /2 /P16C61 /FVOLTS.HEX /SSQTP.NUM /M
   PRO MATE II on COM2 set to a PIC16C61, hex file VOLTS.HEX
   sent to the PRO MATE II, voltages are set to the device's
   default values, and one entry from the SQTP file
   SQTP.NUM is sent.  All of the device's program memory
   is programmed, with blank values in the locations not
   specified by VOLTS.HEX and SQTP.NUM.  Any other device
   areas specified by VOLTS.HEX are programmed.  If
   programming is successful, the SQTP entry is marked
   as used.

PROCMD /2 /P16CR83 /FDATAMEM.HEX /M
   PRO MATE II on COM2 is set to a PIC16CR83, the file
   DATAMEM.HEX is sent to PRO MATE, voltages are set to the
   device's default values and the device is programmed.
   Only the addresses specified in DATAMEM.HEX that are for
   data memory and configuration bits are programmed.

PROCMD /3 /P17C42A /FAPPCODE.HEX /M
   PRO MATE II on COM3 is set to a PIC17C42A, the file
   APPCODE.HEX is sent to PRO MATE, voltages are set to the
   device's default values, and a device is programmed.
   Only the addresses specified in APPCODE.HEX are programmed.

PROCMD /3 /P17C42A /M
   PRO MATE II on COM3 is set to a PIC17C42A, and a device is
   programmed with the current contents of the device
   programmer at the currently selected voltage levels.

PROCMD /3 /P17C42A /SSERIAL.NUM /M
   PRO MATE II on COM3 is set to PIC17C42A, and one entry from
   the SQTP file SERIAL.NUM is sent.  A device is programmed
   with the current contents of the device programmer
   and the serial number at the currently selected voltages.
   If programming is successful, the entry is marked as used.

PROCMD /2 /P16CR83 /FDATAMEM.HEX /Y
   PRO MATE II on COM2 is set to a PIC16CR83, voltages are set to
   the device's default values. The device is verified against
   the contents of DATAMEM.HEX.

PROCMD /2 /P16CR83 /FDATAMEM.HEX /M /Y
   PRO MATE II on COM2 is set to a PIC16CR83, the file
   DATAMEM.HEX is sent to PRO MATE, voltages are set to the
   device's default values and the device is programmed.
   Only the addresses specified in DATAMEM.HEX that are for
   data memory and configuration bits are programmed. After
   programming, the device is verified against the contents
   of DATAMEM.HEX.

   Note: The Verify (/M) operation implicitly performs a Verify
   when it completes the programming portion of the operation.
   Specifying a Verify (/Y) in the above manner effectively
   causes two Verify operations to be performed.

Notes:

The communication port must always be specified, except for help.

If downloading firmware, only the communications port and
the /d option can be specified.

If not downloading firmware, a device must be specified.

It is not necessary to send the hex file every time a device
is programmed.  In a production environment, it would be
beneficial to use one command line execution to transfer
the hex file and set up any voltages, and then use
subsequent command line executions to program or program
with SQTP numbers.

If a hex file is specified, only the locations specified in
the hex file are programmed.  If an SQTP file is also
specified, then all of the device is programmed.

If a hex file is not specified, the entire contents of the
PRO MATE II device programmer are programmed into the device.

All values not specified in the hex file are set to blank
(erased) values.

SQTP information is only sent to the device programmer if
the device is programmed.

SQTP lines are marked as used only if programming is
successful.

Any other parameters specified with /? are ignored.


The following errorlevel values are returned:

ERROR DESCRIPTION            POSSIBLE CAUSE
LEVEL
------------------------------------------------------------
0    Operation Successful    Function proceeded with no errors.

1    PRO MATE II not found   Could not establish communication
                             with PRO MATE II.
                             Possible causes are:
                             1.)  PRO MATE II serial cable not
                                  attached
                             2.)  PRO MATE II not powered up
                             3.)  PRO MATE II not connected to
                                  the selected communications
                                  port.

2    Wrong socket module     The selected device is not
                             supported by the socket module
                             currently installed in PRO MATE.

3    File not found          A specific firmware, program
                             memory, or SQTP file was not
                             found.

4    Illegal device          The specified device is either
     specified               not supported by PRO MATE II or is
                             not supported by the command
                             line interface to PRO MATE II.
                             HCS devices and Smart Serial
                             EEPROMs are not supported by the
                             command line interface.

5    Illegal voltage         A specified voltage is outside
     specified               of the valid range for the
                             selected device, Vdd Max is less
                             than Vdd Min, or a specified
                             voltage is not an even multiple
                             of 125mV( for 125 mV steps).

6    Program/verification    An unspecified error was found
     error                   while programming the device.
                             Usually, a specific error
                             informing the user what area
                             of memory failed will be returned.

7    Download firmware must  Downloading firmware cannot be
     be done independently   combined with any other operation
                             other than selecting the
                             communications port, which is
                             required.

8    Illegal parameter       An invalid command line parameter
                             was encountered.

9    Illegal hex file        An invalid hex record record was
                             found, or the file is not in
                             valid INHX8M or INHX32 format.

10   Illegal SQTP file       An invalid record was found in
                             the SQTP file, or the file is not
                             a file in the INHX8M format.

11   No command on command   No command line parameters were
     line.                   found.

12   No communications port  The desired communications port
     specified               must be specified with the
                             /# option.

13   Invalid communications  The selected communications port
     port specified          could not be found or initialized.

14   No device specified     Unless downloading firmware,
                             the target device must be specified
                             with the /p option.

15   Device file not found   The file MPLAB.DVS must be located
                             in the same directory as the PRO
                             MATE command line interface
                             executable.  This file is installed
                             with the PRO MATE II installation.

16   Out of Memory           There was not enough memory
                             available on the PC to allocate
                             buffers for the device's memory.

17   Invalid device files    The device file that was located
                             is of an incompatible version.
                             Reinstall the application.

18   Incompatible firmware   The version of firmware currently
     version                 in the PRO MATE II Device Programmer
                             is not compatible with the
                             software.  Download the version
                             of firmware that was installed
                             with the software, or obtain the

19   Device not supported    The version of firmware currently
     by firmware             in the PRO MATE II Device Programmer
                             does not support the selected
                             device.  Download the version of
                             firmware that was installed with
                             the software, or obtain the latest
                             version from the Microchip BBS
                             or web site.

20   Communications error    An error occurred while
                             communicating with the PRO MATE II
                             Device Programmer.  Verify that
                             the Device Programmer is powered
                             on and all serial connections are
                             firm.

21   No command line         The selected device is not
     support                 supported by the command line
                             version.  These devices must be
                             programmed by the full interface
                             version.  Examples of these
                             devices are the security devices
                             and smart serials.

22   No SQTP number          There are no available SQTP
     available               numbers in the specified file.

23   Cannot mark SQTP line   The SQTP line just read cannot be
     as used                 marked as used. Be sure the file
                             is not read only.

24   Programming error       A programming or verification
     - program memory        error occurred when programming
                             the device's program memory.

25   Programming error       A programming or verification
     - data memory           error occurred when programming
                             the device's data memory.

26   Programming error       A programming or verification
     - configuration bits    error occurred when programming
                             the device's configuration bits.

27   Programming error       A programming or verification
     - IDs                   error occurred when programming
                             the device's IDs.

28   Parity error            A parity error occurred during
                             programming or verifying.  This
                             often occurs when overprogramming
                             a parity device.  If using a
                             windowed device, erase  the device
                             and reprogram.

29   Help shown              If the help screen is shown, no
                             other commands are processed.

30   Missing file            A command line parameter requiring
     specification           a file specification did not
                             specify a file.

32   Programming algorithm   The current Device Programmer
     select error - not      Operating System does not support
     supported by OS         High and Low Voltage Programming
                             selection.  Download Operating
                             System v5.50.20 or greater to the
                             Device Programmer.

33   Programming algorithm   The selected device must be a flash
     select error - not      device that supports the low
     supported by device     voltage programming algorithm.
                             Omit this parameter from the
                             command line.

34   ICSP Socket Module      The ICSP Socket Module is required
     Required                to use the Low Voltage programming
                             algorithm.

35   Incorrect Operating     The current Device Programmer
     System                  Operating System does not support
                             the selected device.  See the
                             PRO MATE II README file (README.PRO)
                             for the required operating systems,
                             and download the correct one to
                             the Device Programmer.

36   Internal error          This error should never be seen.
                             It can occur as a result of
                             erroneous communication between
                             the device programmer and the PC.

------------------------------------------------------------
How to Contact Microchip
------------------------------------------------------------

On-Line Support
---------------
Microchip provides on-line support on the Microchip World
Wide Web (WWW) site.  The web site is used by Microchip as a
means to make files and information easily available to
customers. To view the site, the user must have access to
the Internet and a web browser, such as Netscape or
Microsoft Explorer. Files are also available for FTP
download from our FTP site.

Connecting to the Microchip Internet Web Site
---------------------------------------------
The Microchip web site is available by using your favorite
Internet browser to attach to:

	www.microchip.com

The file transfer site is available by using an FTP service
to connect to:

	ftp://ftp.microchip.com

The web site and file transfer site provide a variety of
services. Users may download files for the latest
Development Tools, Data Sheets, Application Notes, User's
Guides, Articles and Sample Programs. A variety of Microchip
specific business information is also available, including
listings of Microchip sales offices, distributors and
factory representatives. Other data available for
consideration is:

	* Latest Microchip Press Releases

	* Technical Support Section with Frequently Asked
          Questions

	* Design Tips

	* Device Errata

	* Job Postings

	* Microchip Consultant Program Member Listing

	* Links to other useful web sites related to
	  Microchip Products

 	* Conferences for products, Development Systems,
	  technical information and more

	* Listing of seminars and events

Systems Information and Upgrade Hot Line
----------------------------------------
The Systems Information and Upgrade Line provides system
users a listing of the latest versions of all of Microchip's
development systems software products. Plus, this line
provides information on how customers can receive any
currently available upgrade kits.The Hot Line Numbers are:

	1-800-755-2345 for U.S. and most of Canada, and

	1-480-792-7302 for the rest of the world.





