generic MCU support in vsprog

-s option:
    This option is used to define a target series. It's handled by "s" script. Example:
        -savr8, -sstm32, -slpc1000

-c option:
    This option is used to define a target chip. It's handled by "c" script. Example:
        -catmega128, -clpc1766

-t option:
    This option is used to define the value of a target area. It's handled by 't" script. Format of the value of different target chip is different. Example:
        -tu0x0000000008000000:0x00, -tl0xC0

    Supported target areas:
        u: fuse area
        l: lock area
        f: flash area
        e: eeprom area, AT91SAM3 uses 'e' to define the 2nd flash panel.
        c: calibration area

-F option:
    This option is used to define the frequency of the programming interface. Some interfaces like JTAG has a frequency feature. It's handled by "F" script. Normally, the frequency is in Khz. Example:
        -F9000

-m option:
    This option is used to define the mode of the target or interface. Different target can has different modes, for example, S51 support can be operated both at BYTE mode and PAGE mode. It's handled by "m" script. Example:
        -mb, -mp, -mi

-x option:
    This option is used to define a address to execute after programming. It's handled by "x" script. Example:
        -x0x08002000

-C option:
    This option is used to define the com port. It's handled by "C" script. It has 4 formats. '_' is not necessary after a numeric parameter and next parameter is non-numeric. handshake and extra is not supported now, use both 'N' for it. And for Versaloon dongle(with USB_TO_USART support), there is a specific COM port named "usbtocomm".
    Format1: port_baudrate_datalength_parity_stop_handshake_extra, Example:
        -CCOM4_115200_8N1NN, -C/dev/ttyACM0_921600_8E1NN
    Format2: port_baudrate_datalength_parity_stop, Example:
        -CCOM4_115200_8N1, -C/dev/ttyACM0_921600_8E1
    Format3: port_baudrate, Example:
        -CCOM4_115200, -C/dev/ttyACM0_921600
    Format4: port, Example:
        -CCOM4, -C/dev/ttyACM0

-J option:
    This option is used to define the JTAG daisy chain position of the target. It's handled by "J" script and is only valid for JTAG interface. Format: -J "UNITS_BEFORE UNITS_AFTER BITS_BEFORE BITS_AFTER". Example:
        -J "1 0 4 0"

-K option:
    This option is used to define the kernel frequency. Different target has different meanings for this option. It's handled by "K" script. Example:
        -K60

-W option:
    This option is used to define the wait state of the target. Different target has different meanings for this option. It's handled by "W" script. Example:
        -W1

-A option:
    This option is used to enable auto adjust feature of the programming algorithm. Some target can use a optimized setting to perform operation. It's handled by "A" script. Example:
        -A

-I option:
    This option is used to define the input file. It's handled by "I" script. Segment offset and address offset can be defined after the file name, using '@', format is @SEG,ADDR. Currently, supported file format/extension is hex/bin/svf. It's supported by all targets, so it will not be referred in target help documents. Example:
        -Ihexfile.hex, -Ibinfile.bin@2,0, -Isvffile.svf

-O option:
    This option is used to define the output file. It's handled by "O" script. Segment offset and address offset can be defined after the file name, using '@', format is @SEG,ADDR. Currently, supported file format/extension is hex/bin. It's supported by almost all targets, so it will not be referred in target help documents. Example:
        -Ohexfile.hex, -Obinfile.bin@2,0

-o option:
    This command is used to define the operation to be performed on the target. Supported operations are 'e' for erase; 'w' for write; 'v' for verify; and 'r' for read. Follow the operation is the target area to perform the operation. Example:
        -oe, -owfel, -ovfel, -orc

Restrictions:
    1. Same input files defined by -I option can not meanwhile be defined by -O option.

xml configure files:
    Such files are located under src/config directory. Vsprog will search these files in order:
        1. same directory as vsprog executable
        2. /usr/share/vsprog/config
        3. /usr/local/share/vsprog/config
        4. /etc/vsprog/config
        5. current_directory/config