0
Change Device

     This command may be used to change the active device type.
     When this command is selected the user is prompted with a menu
     of all the manufacturers currently supported by PC-UPROG.

     The user may select the manufacturer by entering the number
     corresponding to that manufacturer and pressing ENTER.  The
     user will then be prompted with a menu of all the devices
     currently supported for that manufacturer.

     Select the device by entering the number corresponding to that
     device and pressing ENTER.  The device menu may occupy more
     than one page.  In this case, use the PgUp, PgDn, End, and
     Home keys to navigate through the menu.

     When the device type is changed, the active memory buffer area
     is automatically changed to accommodate larger or smaller
     devices as necessary; however, data previously stored in the
     memory buffer remains unchanged until either a device is read,
     or data is read from the disk.

     Pressing the Escape key 'ESC', at any time during the select
     device phase will return the user to the previous menu without
     affecting the currently selected device.

1
Read Device

     This command reads the contents of the socketed device into
     the memory buffer.  Note that after data has been read into
     memory, the same size or smaller device type may be selected
     without altering any data stored.

     Pressing ENTER, at 'Read device' selection, or 'R' will begin
     the read operation.  During read operation it will display the
     complete rate of device been readed.   If the operation is
     successful, the "DEVICE READ OK" message will be displayed,
     otherwise the appropriate error message will be displayed.

     WARNING:  Do not remove device until operation is complete,
               for it may damage device.

     After executing the initial read cycle, PC-UPROG may perform
     an additional verify, depending on 'Verify passes' option.

     NOTE:   See 'Device options' command for setting programming
             options.

2
Program Device

     This command programs the socketed device with the contents
     of memory buffer.

     Pressing ENTER, at 'Program device' selection, or 'P' will
     begin the program operation.  During program operation the
     counter will display the complete rate of the device been
     programmed.  If the operation is successful, the "DEVICE
     PROGRAMMED OK" message will be displayed, otherwise the error
     message will be displayed.

     WARNING:  Do not remove device until operation is complete,
               for it may damage device.

     The device will first be checked for erasure (Blank check).
     If the device is EEPROM based, then an erase cycle will be
     automatically executed.  If the device is not erased, and does
     not have an EEPROM cell, PC-UPROG will prompt "Device is not
     blank, continue programming (Y/N): [N]".  Entering 'Y' will
     over-program the device.

     The device will be programmed using the algorithm defined by
     the manufacturer.  Intelligent TM, SNAP TM, Rapid TM, Quickpulse
     TM, Quickpro TM, Page Mode TM and all other fast programming
     methods are used to keep the programming time to a minimum.
     The programming algorithm used is automatically determined by
     the manufacturer/device been chosen.

     Most devices will be verified after programming each byte,
     however, PC-UPROG will perform an additional verify to confirm
     proper programming.  If any errors are detected, they will be
     reported and the process will be aborted.  After verification,
     if the 'Program security fuse' option equals (Y)es, or (A)uto the
     security fuse of the device will be set (the 'Program security
     fuse' option is only available for devices with a security fuse).
     If option equals (Y)es means with reconform befor program, and
     if option equals (A)uto means without reconform.

     NOTE:   See 'Device options' command for setting programming
             options.

3
Verify Device

     This command verifies that the contents of the socketed device
     is the same as contents of memory buffer.

     Pressing ENTER, at 'Verify device' selection, or 'V' will begin
     the verify operation during verfying the PC-UPROG will display
     the complete rate of device been verifyed.  If the operation is
     successful, the "DEVICE VERIFIED OK" message will be displayed,
     otherwise the error message will be displayed, for memory device
     it will display the 1st. difference of memory buffer and device
     data.

     WARNING:  Do not remove device until operation is complete,
               for it may damage device.


4
Blankcheck device

     This command verifies that the socketed device is has not been
     programmed.

     Pressing ENTER, at 'Blankcheck' selection, or 'B' will begin
     the blankcheck operation during blankchecking the PC-UPROG will
     display the complete rate of device been blankchecked.  If the
     operation is successful, the "DEVICE BLANKCHECKED OK" message
     will be displayed, otherwise the appropriate error message will
     be displayed.

     NOTE:  Some devices (27CX321/2, 27CX161, 27HC641,...etc) have no
            defined unprogrammed state (unprogrammed fuses are
            floating), in which case, the blank check will always fail.

     WARNING:  Do not remove device until operation is complete,
               for it may damage device.

5
Edit data (logic)

     This command allows the user to examine and/or modify the
     contents of the JEDEC fusemap buffer.

     Pressing ENTER, at 'Edit data' selection, or 'E' will bring
     you to the JEDEC fusemap editor.

6
     By using the cursor keys any fuse may be pointed to and
     changed if desired.

Cursor control

        LeftArrow       moves cursor left one column.

        RightArrow      moves cursor right one column.

        UpArrow         moves cursor up one row.

        DownArrow       moves cursor down one row.

        PgUp            moves cursor up one page.

        PgDn            moves cursor down one page.

        Home            moves cursor to beginning of page.

        End             moves cursor to end of page.

        CtrlHome        moves cursor to beginning of buffer.

        CtrlEnd         moves cursor to end of buffer.


Function keys

        F3:Goto         goes to any JEDEC address in the fusemap
                        buffer.

        F5:Fill         fills a range of the fusemap buffer with the
                        fuse blown character (-) or fuse not blown
                        character (X).

     Some devices have fuse arrays greater than 80 character and
     therefore can not be displayed on one screen.  The following
     commands only apply to these devices.

        CtrlLeft        Shifts the fusemap buffer screen left one
                        column.

        CtrlRight       Shifts the fusemap buffer screen right one
                        column.

7
Edit data (memory)

     This command allows the user to examine and/or modify the
     contents of the memory buffer.

     Pressing ENTER, at 'Edit data' selection, or 'E' will bring
     you to the memory editor.

8
     By using the cursor keys any fuse may be pointed to and
     changed if desired.

Cursor control

        LeftArrow       moves cursor left one column.

        RightArrow      moves cursor right one column.

        UpArrow         moves cursor up one row.

        DownArrow       moves cursor down one row.

        PgUp            moves cursor up one page.

        PgDn            moves cursor down one page.

        Home            moves cursor to beginning of page.

        End             moves cursor to end of page.

        CtrlHome        moves cursor to beginning of buffer.

        CtrlEnd         moves cursor to end of buffer.


Function keys

        TAB             toggles between ASCII and HEX edit modes.

        F3:Goto         goes to any address in the memory buffer.

        F4:Search       this is an ASCII string search and may be used
                        to find any ASCII string in the memory buffer.

        F5:Fill         fills a range of the memory buffer with an
                        ASCII character or HEX digit.

        F6:Complement   performs one's complement on a range of the
                        memory buffer.

        F7:Copy         copies a block of the memory buffer to a new
                        address.

        F8:Checksum     calculates the checksum of a block of the
                        memory buffer.

9
Modify Vectors

     Allows the user to edit or create functional test vectors,
     which will be used by 'Functional test' command to verify that
     device operates as designed.  If test vectors are defined in
     JEDEC file, they will be automatically loaded when the fusemap
     is loaded.  The test vectors can be created by ABEL, PALASM,
     CUPL or other PLD development system.

     NOTE: Up to 500 test vectors may be loaded or created.

     Pressing ENTER, at 'Modify vector' selection, or 'M' will
     bring you to the vector editor.

10
     The vector buffer is arranged in rows (corresponding to vector
     number) and columns (corresponding to pin number).  Each
     vector consists of the test condition codes for each pin of
     the device.  The valid test condition codes are:

                0       Drive input low.
                1       Drive input high.
                C       Drive input low, high, low.
                F       Float input or output.
                H       Test output high.
                K       Drive input high, low, high.
                L       Test output low.
                N       Power pins and outputs not tested.
                X       Output not tested, input default level.
                Z       Test input or output for high impedance.




Vector Editor Commands & Cursor Control Keys

        F3:Goto         goes to any vector in vector buffer.

        LeftArrow       next pin.

        RightArrow      previous pin.

        DownArrow       next vector.

        UpArrow         previous vector.

        PgUp            moves cursor up one page.

        PgDn            moves cursor down one page.

        Home            moves cursor to beginning of page.

        End             moves cursor to end of page.

        CtrlHome        moves cursor to beginning of buffer.

        CtrlEnd         moves cursor to end of buffer.


11
Functional Test

     This command is used to execute the functional test vectors
     to determine if the device will operate according to the
     design.

     Pressing ENTER, at 'Functional test' selection, or 'F' will
     begin the functional test operation.  If the device passes
     the functional test, the "OPERATION PASSED." message will
     appear.  Otherwise, an error message will be displayed
     indicating the vector number and pin number where the error
     occurred.

     The functional test operation has 3 passes for each vector.
     Pass 1 sets up all input pins.  Any 0, 1, or X levels are
     presented to the device.  All device outputs are set to read
     mode.  PC-UPROG has a special method for handling the 'X'
     (don't care) level, which is incompletely defined in the JEDEC
     specification and often is a cause of vector test failures in
     other systems.

     Pass 2 applies any clocks to the device.  The vector is
     scanned from lowest pin to highest pin, and the clocks are
     output in that order.  If a multiple clock device requires a
     controlled sequence of clocks, then there should be a separate
     vector for each clock.  It is impossible for a universal
     programmer like PC-UPROG to generate simultaneous clocks on
     2 pins.  There will always be a time spacing between multiple
     clocks in a test vector.  Note that the 'C' clock is normally
     low, and the 'K' clock is normally high.

     Pass 3 verifies the outputs of the device against the test
     vector.  If there are no errors, the next vector is processed.

     Pins defined as 'X' in the vectors are set as inputs to '0'
     unless the pin is determined to be an unused output, in which
     case it is floated.  High impedance outputs are tested for
     incorrect '0' conditions, but not for low impedance '1'
     conditions.  Test simulation can also be used to verify a
     device after the fuse has been programmed, (note that AMD
     PALCE family devices disable preload when security is set).

12
Input From Disk (logic devices)

     This command loads the data from the selected file into the
     fusemap buffer.  The file to be loaded must be in the standard
     JEDEC format.  The JEDEC file is generated by any PLD
     development system, for example PALASM, ABEL, CUPL, AMAZE,
     etc.  The file contains all the data necessary to program the
     device for the desired function.  If the data file contains
     test vectors, then these will be stored in a separate buffer
     for use by the 'Modify vectors' and 'Functional test'
     commands. Up to 500 vectors may be loaded.

     Filename - this is the drive/path/filename of the file to be
     loaded.  Entering DOS wildcard characters will cause a
     directory listing to be displayed allowing the user to select
     the file to be loaded.  For example, entering *.JED will cause
     all files with the extension .JED to be displayed.

     After the filename is entered, the ENTER key may be pressed
     to begin the read operation.  If the operation is successful,
     the "OPERATION COMPLETE." message will be displayed.

13
Output To Disk (logic devices)

     This command writes the fuse pattern and test vectors to disk,
     using standard JEDEC format.

     Filename - this is the drive/path/filename of the file to
     write data to.  Entering DOS wildcard characters will cause
     a directory listing to be displayed allowing the user to
     select the file to write to.  For example, entering *.JED will
     cause all files with the extension .JED to be displayed.

     After the filename is entered, the ENTER key may be pressed
     to begin the write operation.  If the operation is successful,
     the "OPERATION COMPLETE." message will be displayed.

14
Input From Disk (memory devices)

     This command loads the data from the selected file into the
     memory buffer.  The file to be loaded must conform to one of
     the file formats supported by PC-UPROG.

     I/O translation format - specifies the format of the file to be
     loaded.  The currently supported file formats are: MOS Technology,
     Intel Hex, Motorola S (for input file the format can be S0, S1, S2,
     S3,...,S9), Tektronic Hex, HP64000ABS, Binary and Intel Ext. Hex.

     Filename - this is the drive/path/filename of the file to be loaded.
     Entering DOS wildcard characters will cause a directory listing to
     be displayed allowing the user to select the file to be loaded. For
     example, entering *.MOS will cause all files with the extension .MOS
     to be displayed.

     To buffer address - this specifies the starting address represent
     the size in hex of the memory to begin loading into memory.   This
     means that any address lower than 'To buffer address' will not be
     loaded into memory.

     Buffer input mode - specifies how the data is to be loaded into
     memory.   Entering N (Normal) specifies to load into all bytes.
     E (Even) specifies to load the data into even bytes only.   O (Odd)
     specifies to load data into odd bytes only.   0, 1, 2, 3 of quarter
     specifies to load data into one of the quarter bytes only. It allows
     user to shuffer a 16bit or 32 bit data easily.

     From file address - this specifies the starting address represent the
     size in hex of the disk file to begin loading into memory. This means
     that any addresses lower than 'From file address' will not be loaded
     into memory, for binary file only.

     File input size - this specifies the input file represent the size
     in hex to be loaded to memory buffer.   It means how many bytes from
     'From file address' will be loaded to memory buffer, for binary
     file only.

     File input mode - specifies how the data is to be loaded from disk
     file.   Entering   N (Normal) specifies to load into all bytes.
     E (Even) specifies to load the data into even bytes only.   O (Odd)
     specifies to load data into odd bytes only.   0, 1, 2, 3 of quarter
     specifies to load data into one of the quarter bytes only.  So user
     can split file easily. This is for binary file only.

     After the parameters are entered, the ENTER key may be pressed
     to begin the read operation.  If the operation is successful,
     the "OPERATION COMPLETE."  message will be displayed.

15
Output To Disk (memory devices)

     This command writes data from memory to disk using one of the
     currently supported file formats.

     I/O translation format - specifies the format of the file to be
     loaded.  The currently supported file formats are: MOS Technology,
     Intel Hex, Motorola S3, Tektronic Hex, HP64000ABS, Binary and Intel
     Ext. Hex.

     Filename - this is the drive/path/filename of the file to write data
     to. Entering DOS wildcard characters will cause a directory listing
     to be displayed allowing the user to select the file to write to.
     For example, entering *.MOS will cause all files with the extension
     .MOS to be displayed.

     From buffer address - this specifies the starting address represent
     the size in hex of memory buffer to begin writing to disk. This means
     that any addresses lower than 'From buffer address'   will not  be
     written to disk.

     Block size - this specifies the memory buffer represent the size in
     hex after 'From buffer address' to be written to disk.

     Buffer output mode - specifies how the data is to be written to the
     disk.  Entering N (Normal) specifies to write all bytes.   E (Even)
     specifies to write the even bytes only.  O (Odd) specifies to write
     the odd bytes only.   0, 1, 2, 3 of quarter specifies to write the
     one of the quarter bytes only.  It allows user to split a 16 bit or
     32 bit data into 8 bit data easily.

     After the parameters are entered, the ENTER key may be pressed
     to begin the read operation.  If the operation is successful,
     the "OPERATION COMPLETE." message will be displayed.

16
Device Options & Parameters

     This command is used to modified programming options and/or
     device specific parameters.

     Counter display - Display the counter or not while processing.

     Blank check - verifies that the device is blank, before programming.
     Some devices automatically erase, before programming, in which case,
     this parameter would not apply.

     Verify Passes - verification to be performed after programming or
     reading the device. Note that most devices will still perform program
     verification after each word is programmed.

     From address (memory devices only) - this specifies the starting
     address of device on ZIF socket for loading, programming or verifying.

     To address (memory devices only) - this specifies the ending address
     of device on ZIF socket for programming, or verifying.

     Erase All - erases the device before programming.  Not all devices
     have this feature, in which case, this parameter would not be
     displayed.

     Program Security Fuse - programs the device's security fuse after
     programming (If the device supports security fuse).  <Y> means yes,
     but it need reconform after programming and verifying, <A> means auto,
     after programming and verifying the PC-UPROG will program the security
     fuse automatically.

     CAUTION:   after the security fuse is programmed, the device may not
     be read or verified.  Not all devices have this feature, in which case,
     this parameter would not be displayed.

     Function test (logic devices only) - execute the functional test
     vectors, after programming.

     Don't care state - select default don't care condition for test
     vectors.   It can be TTL LOW or TTL HIGH, but program default is TTL
     HIGH.

     When the device option command is selected, the user will also be
     prompted with a number of device specific programming parameters,
     such as VCC, VPP, tD, PW, OPW, RETRY, etc.  The type and number of
     these parameters will vary according to the device selected.  If you
     want to modify any of these parameters please refer to manufacture's
     programming specification. For example you can easy to change the
     Intelligent algorithm to Quick Pulse algorithm by edit VCCP from 6V
     to 6.25V, VPP from 12.5V to 12.75V and PW pulse from 1.0ms to 100us
     very easily. You can verify the device with different VCC voltage by
     edit the VCC voltage in this device option parameter.  The parameter
     will not restore, it will back to origional values after re-select
     device again.

     CAUTION:   the device programming parameters in PC-UPROG are defined
     according to manufacture's specification.  You may damage the device
     on affect programming parameters.

17
Hardware test

     This command may be used periodically to verify that the unit
     is operating correctly and to calibrate the output voltages,
     or to change the I/O port base address.  When this command is
     selected, the Hardware Test menu will be displayed.

18
Verify TTL level pin drivers

     Used to verify that TTL level read and write functions are
     operating correctly.  When this command is selected, PC-UPROG
     will start testing every pin of the 40-pin DIP.  It will
     continue testing until any key is pressed.  The number of
     verify passes and pin# being tested will be continuously
     displayed.

19
Check VCC source voltage and risetime

     Use this command to calibrate the VCC source voltage.  When
     this command is selected the user will be prompted to enter
     a voltage.  Pressing ENTER should cause all 40 pins of the DIP
     to be set to the entered voltage.  A voltmeter should be
     connected between GROUND and pin 40 to verify that the voltage
     is correct.  If it is not, then the VCC DAC adjustment screw
     must be adjusted accordingly.


20
Check VPP1 source voltage and risetime

     Use this command to calibrate the VPP1 source voltage.  See
     'Check VCC source voltage and risetime' command for details.


21
Check VPP2 source voltage and risetime

     Use this command to calibrate the VPP2 source voltage.  See
     'Check VCC source voltage and risetime' command for details.

22
Pulse VCC pins with VCC DAC voltage

     Use this command to verify that the VCC pulse generator is
     operating correctly.  When this command is selected, the user
     will be prompted to enter a pulse-width and voltage level.
     Pressing ENTER will start PC-UPROG pulsing each pin, that is
     driven, of the 40-pin DIP according to the pulse-width and
     voltage level entered.  A good oscilloscope or digital scope
     should be used to verify that the pulses meet the parameters
     entered.  PC-UPROG will continue pulsing until any key is
     pressed.  The number of verify passes and pin# being pulsed
     will be continuously displayed.


23
Pulse all pins with VPP1 DAC voltage

     Use this command to verify that the VPP1 pulse generator is
     operating correctly.  See 'VCC pulse' command for details.


24
Pulse all pins with VPP2 DAC voltage

     Use this command to verify that the VPP2 pulse generator is
     operating correctly.  See 'VCC pulse' command for details.

25
Set VPP1 & VPP2 source risetimes FAST or SLOW

     Toggles the VPP1 & VPP2 source DACs risetimes between FAST
     and SLOW, VPP1 & VPP2 will always have the same risetime.
     To verify that risetime is correct, do the following:

     1.  Use 'Set GND pin 20 ON/OFF' command to select pin 20 as
         ground pin.

     2.  Connect digital oscilloscope probe to GND pin 20 and any
         other of 40 pins.

     3.  Set the trigger level of oscilloscope to 3 volts.

     4.  Set time base of oscilloscope to 200us/div (SLOW) or 10us/div
         (FAST).

     5.  Execute 'Check VPP1 or VPP2 source voltage and risetime'
         commands.

     6.  You will then be prompted to enter a voltage.  Enter  the
         maximum source voltage which is 25.0 volts.

     7.  Upon pressing ENTER the oscilloscope should have been trigger,
         and you can read the risetime of VPP1 or VPP2 source DACs.

     8.  The time from 5 volts to 25 volts should be verified at about
         40us to 60us FAST or 1.0ms to 1.4ms (SLOW).


26
Set CLK pins 2 & 3 ON/OFF

     Use this command to enable or disable the 4MHz clock driving
     pins 2 & 3.

27
Set CLK pins 18 & 19 ON/OFF

     Use this command to enable or disable the 2MHz clock driving
     pins 18 & 19.


28
Set ground pin 20 ON/OFF

     Use this command to connect or disconnect the pin 20 ground
     relay.

29
Set ground pins 11 & 30 ON/OFF

     Use this command to connect or disconnect the pin 11 & 30 ground
     relay.

30
Set ground pin 27 and VCC pin 13 ON/OFF

     Use this command to connect or disconnect the ground pin 27
     and VCC pin 13 relay.

31
Set I/O port base

     Use this command to change to I/O port base address.  When
     this command is selected, a menu of valid port base addresses
     will be displayed.  After the new port base address is
     selected, PC-UPROG will automatically verify that there is no
     I/O conflict.

32
Program security fuse

     Use this command to program security fuse of the device on ZIF
     socket.



