Availability:
     Level T    , 'J'

  Quick Help:
     Display / Modify CAP, J[ParmValue],[ParmId],[ParmArrayBytes],[ParmByteArrayOffset]

  Description:
    This command modifies and displays the Controller Adaptive Parameters (CAP).

  Input Parameters:

    0 - New CAP Parameter Value.
    
        If this parameter is entered, the CAP Adaptive Parameter specified by Parameter 1
        will be set equal to the value of this parameter. If this parameter is not entered
        the current value of the CAP parameter specified by Parameter 1 will be displayed.
        If this parameter is entered it will be interpreted as follows based on the value
        entered for Parameter 1.
    

          If Parameter 1 is equal to 0, Parameter 0 contains a new CAP Validation Key value.
          
            Type:    Unsigned 4-byte hexadecimal value
          
            Range:   0 to FFFFFFFF hex
          
            Default: None
          
          If Parameter 1 is equal to 1, Parameter 0 contains a new HDA Serial Number value.
          
            Type:    Quote-delimited 8 character ASCII string
          
            Range:   Any 8 printable ASCII characters
          
            Default: None
          
          If Parameter 1 is equal to 2, Parameter 0 contains a new PCBA Serial Number value.
          
            Type:    Quote-delimited 12 character ASCII string
          
            Range:   Any 12 printable ASCII characters
          
            Default: None
          
          If Parameter 1 is equal to 3, Parameter 0 contains a new PCBA Part Number value.
          
            Type:    Quote-delimited 10 character ASCII string
          
            Range:   Any 10 printable ASCII characters
          
            Default: None
          
          If Parameter 1 is equal to 4, Parameter 0 contains a new Head Count value.
          
            Type:    Unsigned 1-byte  hexadecimal value
          
            Range:   0 to FF hex
          
            Default: None
          
          If Parameter 1 is equal to 5, Parameter 0 contains a new Node Name Validation
          Key value.
          
            Type:    Unsigned 1-byte hexadecimal value
          
            Range:   0 to FF hex
          
            Default: None
          
          If Parameter 1 is equal to 6, Parameter 0 contains a new Node Name value.
          
            Type:    Unsigned 8-byte hexadecimal value
          
            Range:   0000000000000000 to FFFFFFFFFFFFFFFF hex
          
            Default: None
          
          If Parameter 1 is equal to 7, Parameter 0 contains a new Product Family ID value.
          
            Type:    Unsigned 1-byte hexadecimal value
          
            Range:   0 to FF hex
          
            Default: None
          
          If Parameter 1 is equal to 8, Parameter 0 contains a new Product Family
          Member ID value.
          
            Type:    Unsigned 1-byte hexadecimal value
          
            Range:   0 to FF hex
          
            Default: None
          
          If Parameter 1 is equal to 9, Parameter 0 contains a new PCBA Build Code value.
          
            Type:    Quote-delimited 6 character ASCII string
          
            Range:   Any 6 printable ASCII characters
          
            Default: None
          
          If Parameter 1 is equal to A hex, Parameter 0 contains a new ASIC Information value.
          
            Type:    Unsigned 140-byte hexadecimal value
          
            Range:   Minimum 140-byte hex value to maximum 140-byte hex value
          
            Default: None
          
          If Parameter 1 is equal to B hex, Parameter 0 contains a new Firmware Key value.
          
            Type:    Unsigned 14-byte hexadecimal value
          
            Range:   Minimum 14-byte hex value to maximum 14-byte hex value
          
            Default: None
          
          If Parameter 1 is equal to C hex, Parameter 0 contains a new Firmware Key
          Checksum value.
          
            Type:    Unsigned 2-byte hexadecimal value
          
            Range:   0000 to FFFF hex
          
            Default: None
          
          If Parameter 1 is equal to D hex, Parameter 0 contains a new Date of Manufacture
          value.
          
            Type:    Quote-delimited 6 character ASCII string
          
            Range:   Any 6 printable ASCII characters
          
            Default: None
          
          If Parameter 1 is equal to E hex, Parameter 0 contains a new Destroked Buf Size
          Index value.
          
            Type:    Unsigned 1-byte hexadecimal value
          
            Range:   00 to FF hex
          
            Default: None
          
          If Parameter 1 is equal to F hex, Parameter 0 contains a new Final Manufacturing
          Operation value.
          
            Type:    Quote-delimited 4 character ASCII string
          
            Range:   Any 4 printable ASCII characters
          
            Default: None
          
          If Parameter 1 is equal to 10 hex, Parameter 0 contains a new Final Manufacturing
          Error Code value.
          
            Type:    Unsigned decimal value
          
            Range:   0 to 999999999 decimal
          
            Default: None
          
          If Parameter 1 is equal to 11 hex, Parameter 0 contains a new System Area Prep
          State value.
          
            Type:    Unsigned 1-byte hexadecimal value
          
            Range:   00 to FF hex
          
            Default: None
          
          If Parameter 1 is equal to 12 hex, Parameter 0 contains a new SPT Auto Run
          Delay value.
          
            Type:    Unsigned 1-byte hexadecimal value
          
            Range:   00 to FF hex
          
            Default: None
          
          If Parameter 1 is equal to 13 hex, Parameter 0 contains a new value for the
          ReservedBytesOrZGSByteForMBCfg CAP bytes.
          
            Type:     Unsigned 1 byte hexadecimal value
          
            Range:   For each byte 0 to FF hex.
          
            Default: None
          
          If Parameter 1 is equal to 13 hex, Parameter 0 contains a new value for the
          Reserved CAP bytes.
          
            Type:    Unsigned array of 27 hexadecimal byte values for 256 byte CAP
                     Unsigned array of  1 hexadecimal byte value for 512 byte CAP
          
            Range: For each byte 0 to FF hex.
          
             Default: None
          
          If Parameter 1 is equal to 14 hex, Parameter 0 contains a new CAP Checksum value.
          
            Type:    Unsigned 2-byte hexadecimal value
          
            Range:   0 to FFFF hex
          
            Default: None
          
          If Parameter 1 is equal to 15 hex, Parameter 0 contains a new External Model
          Number value. The Internal Model Number is only valid for the 512-byte CAP.
          
            Type:    Quote-delimited 40 character ASCII string
          
            Range:   Any 40 printable ASCII characters
          
            Default: None
          
          If Parameter 1 is equal to 16 hex, Parameter 0 contains a new Internal Model
          Number value. The Internal Model Number is only valid for the 512-byte CAP.
          
            Type:    Quote-delimited 40 character ASCII string
          
            Range:   Any 40 printable ASCII characters
          
            Default: None
          
          If Parameter 1 is equal to 17 hex, Parameter 0 contains a new CAP IDEMA Capacity
          value. The CAP IDEMA Capacity is only valid for the 512-byte CAP.
          
            Type:    Unsigned 4-byte hexadecimal value
          
            Range:   0 to FFFFFFFF hex
          
            Default: None
          
           If Parameter 1 is equal to 18 hex, Parameter 0 contains a new value for the
           Reserved CAP bytes.
          
            Type:     Unsigned array of 27 hexadecimal byte values for 256 byte CAP
                     Unsigned array of  1 hexadecimal byte value for 512 byte CAP
                     Depending on the type of CAP i.e. 512 byte or 256 byte, the value of CAP_RESERVED_BYTES
                     in the CAP data structure changes in cap.h - hence the mentioning of two sizes above.
          
            Range: For each byte 0 to FF hex.
          
            Default: None
          
    1 - CAP Parameter ID (P1).
    
        This parameter specifies the ID of the CAP parameter whose value is to be displayed
        and / or modified. If this parameter is not entered the current value of all CAP
        parameters will be displayed. If this parameter is entered and Parameter 0 is not
        entered, only the value of the CAP parameter specified by this parameter will be
        displayed. If both this parameter and Parameter 0 are entered, the CAP parameter
        specified by this parameter will be set equal to the value specified by Parameter 0.
    
          00 = Validation Key
          01 = HDA Serial Number
          02 = PCBA Serial Number
          03 = PCBA Part Number
          04 = Head Count
          05 = Node Name Validation Key
          06 = Node Name
          07 = Product Family ID
          08 = Product Family Member ID
          09 = PCBA Build Code
          0A = ASIC Information
          0B = Firmware Key
          0C = Firmware Key Checksum
          0D = Date of Manufacture
          0E = Destroked Buf Size Index
          0F = Final Mfg Op
          10 = Final Mfg Error Code
          11 = System Area Prep State
          12 = SPT Auto Run Delay
          13 = Reserved Bytes
          14 = Checksum
          15 = External Model Number
          16 = Internal Model Number
          17 = IDEMA Capacity
          18 = Reserved Bytes 1
          15 = Reserved Bytes 1
            15 = External Model Number
          16 = Internal Model Number
          17 = IDEMA Capacity
          18 = Reserved Bytes 1
          
          Type:    Unsigned 1-byte value
    
          Range:   0 to 0xFF
    
          Default: None
    
    2 - Parameter Array Bytes.
    
        This parameter specifies the number of valid bytes specified by Parameter 0.
        It is only used when modifying a CAP parameter that is a byte array. If
        Parameters 2 and 3 are both equal to 0, it is assumed that all bytes of the
        specified byte array parameter are to be modified. If Parameter 2 is equal
        to 0 and Parameter 3 is not equal to 0, it is assumed that the remaining
        bytes in the specified byte array parameter are to be modified.
    
          Type:    Unsigned 4-byte value
    
          Range:   0 to 0xFFFFFFFF
    
          Default: 0
    
    3 - Parameter Byte Array Offset.
    
        This parameter is the byte offset from the start of the parameter in the CAP
        to the first byte to be modified. It is only used when modifying a CAP parameter
        that is a byte array.
    
          Type:    Unsigned 4-byte value
    
          Range:   0 to 0xFFFFFFFF
    
          Default: 0
    
  Output Data:

    If an error occurred, the following information will be displayed.
    
          "DiagError aaaaaaaa"
    
       where
    
          aaaaaaaa is the Diagnostic Error Code
    
    If no error occurred, the following is an example of the CAP data that will be displayed.

    
    For the 256-byte CAP the following information will be displayed.
    
     CAP:
    
       (P1=00) Validation Key: FFFFFFFF
       (P1=01) HDA Serial Number: 6SY0099N
       (P1=02) PCBA Serial Number: 00008831DMU1
       (P1=03) PCBA Part Number: Invalid
       (P1=04) Head Count: 01
       (P1=05) Node Name Validation Key: FF
       (P1=06) Node Name: FF FF FF FF FF FF FF FF
       (P1=07) Product Family ID: 2D
       (P1=08) Product Family Member ID: 09
       (P1=09) PCBA Build Code: Invalid
       (P1=0A) ASIC Info:
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF
       (P1=0B) Firmware Key: FF FF FF FF FF FF FF FF FF FF FF FF FF FF
       (P1=0C) Firmware Key Checksum: FFFF
       (P1=0D) Date of Manufacture: 10122007
       (P1=0E) Destroked Buffer Size: FF
       (P1=0F) Final Mfg Op: Invalid
       (P1=10) Final Mfg Erc: Undefined
       (P1=11) System Area Prep State: FF
       (P1=12) SPT Auto Run Delay: 00
       (P1=13) Reserved:
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF
       (P1=14) Checksum: FFFF
    
    For the 512-byte CAP the following information will be displayed.
    
     CAP:
    
       (P1=00) Validation Key: FFFFFFFF
       (P1=01) HDA Serial Number: 6SY0099N
       (P1=02) PCBA Serial Number: 00008831DMU1
       (P1=03) PCBA Part Number: Invalid
       (P1=04) Head Count: 01
       (P1=05) Node Name Validation Key: FF
       (P1=06) Node Name: FF FF FF FF FF FF FF FF
       (P1=07) Product Family ID: 2D
       (P1=08) Product Family Member ID: 09
       (P1=09) PCBA Build Code: Invalid
       (P1=0A) ASIC Info:
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF
       (P1=0B) Firmware Key: FF FF FF FF FF FF FF FF FF FF FF FF FF FF
       (P1=0C) Firmware Key Checksum: FFFF
       (P1=0D) Date of Manufacture: 10122007
       (P1=0E) Destroked Buffer Size: FF
       (P1=0F) Final Mfg Op: Invalid
       (P1=10) Final Mfg Erc: Undefined
       (P1=11) System Area Prep State: FF
       (P1=12) SPT Auto Run Delay: 00
       (P1=13) Reserved:
                 FF
       (P1=14) Checksum: FFFF
       (P1=15) External Model Number: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
       (P1=16) Internal Model Number: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
       (P1=17) IDEMA Capacity: FFFFFFFF
       (P1=18) Reserved1:
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
                 FF FF FF FF FF FF
    
  Examples:
    Example #1:
    To display the value of all CAP parameters

       F3 T>J

    Example #2:
    To display the value of CAP parameters 1 (HDA Serial Number)

       F3 T>J,1

    Example #3:
    To set the CAP Validation Key to 0

       F3 T>J0,0

    Example #4:
    To set the CAP HDA Serial Number to ABCDEFGH

       F3 T>J"ABCDEFGH",1

    Example #5:
    To set the CAP PCBA Serial Number to abcdefghijkl

       F3 T>J"abcdefghijkl",2

    Example #6:
    To set the CAP PCBA Part Number to MNOPQRSTUV

       F3 T>J"MNOPQRSTUV",3

    Example #7:
    To set the CAP Head Count to 2

       F3 T>J2,4

    Example #8:
    To set the CAP Node Name Validation Key to 5A

       F3 T>J5A,5

    Example #9:
    To set the CAP Node Name to 00 11 22 33 44 55 66 77

       F3 T>J0011223344556677,6

    Example #10:
    To set the CAP Product Family ID to C8

       F3 T>JC8,7

    Example #11:
    To set the CAP Product Family Member ID to 23

       F3 T>J23,8

    Example #12:
    To set the CAP PCBA Build Code to 23

       F3 T>J"mnopqr",9

    Example #13:
    To set the CAP ASIC Information to 00 01 02 ... 8B

       F3 T>J000102...8B,A

    Example #14:
    To set the CAP Firmware Key to 00 01 02 ... 0D

       F3 T>J000102...0D,B

    Example #15:
    To set the CAP Firmware Key Checksum to F0E1

       F3 T>JF0E1,C

    Example #16:
    To set the CAP Date of Manufacture to AaBbCc

       F3 T>J"AaBbCc",D

    Example #17:
    To set the CAP Destroked Buf Size Index to 87

       F3 T>J87,E

    Example #18:
    To set the CAP Final Manufacturing Operation to "Done"

       F3 T>J"Done",F

    Example #19:
    To set the CAP Final Manufacturing Error Code to 9876

       F3 T>J9876,10

    Example #20:
    To set the CAP System Area Prep State to 54

       F3 T>J54,11

    Example #21:
    To set the CAP SPT Auto Run Delay to 62

       F3 T>J62,12

    Example #22:
    To set the CAP Reserved Bytes to 00 11 22 ... 1A

       F3 T>J000102...1A,13

    Example #23:
    To set the CAP Checksum to 9ABC

       F3 T>J9ABC,14

    Example #24:
    To set bytes 10 to 13 of the CAP ASIC Information to 00 11 22 33

       F3 T>J00112233,A,4,10

  Revision History:

    0011.0000   Initial revision.  This command was previously a subcommand of the
                Level 2 and 7 'I' (Display / Modify Adaptives) command.
    0011.0001   Modified to support both the 256 byte CAP and the 512 byte CAP. The
                512 byte CAP contains the External Model Number, Internal Model Number
                and IDEMA Capacity.