Queue multiple DAP commands provided in a multiple packets.  
More...
Queue multiple DAP commands provided in a multiple packets. 
Queues multiple DAP commands provided in multiple packets. Queuing starts with the first packet that includes DAP_QueueCommands command and continues with all subsequent packets that also include this command. Queued commands execute when a packet without DAP_QueueCommands command is received. Packet size and count limitation for requests and responses needs to respected.
The command is similar to DAP_ExecuteCommands on a packet level but queues multiple packets before processing them.
DAP_QueueCommands Request: 
| BYTE | BYTE **|+++++++++++++++++++|
> 0x7E | NumCmd | Command Requests  |   First queued packet
|******|********|+++++++++++++++++++|
 .
 .
 .
| BYTE | BYTE **|+++++++++++++++++++|
> 0x7E | NumCmd | Command Requests  |   Last queued packet
|******|********|+++++++++++++++++++|
- > Command Request (any command except DAP_QueueCommands) 
 Queued commands are executed before this command
- NumCmd: Number of commands to queue (single packet)
- Commands Requests: Concatenated command requests (single packet)
DAP_QueueCommands Response: 
| BYTE | BYTE **|+++++++++++++++++++|
< 0x7F | NumCmd | Command Responses |
|******|********|+++++++++++++++++++|
 .
 .
 .
| BYTE | BYTE **|+++++++++++++++++++|
< 0x7F | NumCmd | Command Responses |
|******|********|+++++++++++++++++++|
- < Command Response (first non DAP_QueueCommands command)
- NumCmd: Number of commands executed (single packet)
- Commands Responses: Concatenated command responses (single packet)
Example: 
Queue DAP_SWJ_Pins and DAP_Delay in first packet. 
Queue DAP_SWJ_Pins in second packet. 
Queue DAP_Delay in third packet. 
Send DAP_SWJ_Pins in fourth packet which executes queued commands and command in the last packet.
Request: 
| BYTE | BYTE | BYTE | BYTE ******| BYTE ******| WORD ****| BYTE | SHORT |
> 0x7E | 0x02 | 0x10 | Pin Output | Pin Select | Pin Wait | 0x09 | Delay |
|******|******|******|************|************|**********|******|*******|
  Queue|NumCmd| DAP_SWJ_Pins                              | DAP_Delay    |
   
| BYTE | BYTE | BYTE | BYTE ******| BYTE ******| WORD ****|
> 0x7E | 0x01 | 0x10 | Pin Output | Pin Select | Pin Wait |
|******|******|******|************|************|**********|
  Queue|NumCmd| DAP_SWJ_Pins                              |
   
| BYTE | BYTE | BYTE | SHORT |
> 0x7E | 0x01 | 0x09 | Delay |
|******|******|******|*******|
  Queue|NumCmd| DAP_Delay    |
   
| BYTE | BYTE ******| BYTE ******| WORD ****|
> 0x10 | Pin Output | Pin Select | Pin Wait |
|******|************|************|**********|
  DAP_SWJ_Pins                              |
Response: 
| BYTE | BYTE | BYTE | BYTE *****| BYTE | BYTE **|
< 0x7F | 0x02 | 0x10 | Pin Input | 0x09 | Status |
|******|******|******|***********|******|********|
       |NumCmd| DAP_SWJ_Pins     | DAP_Delay     |
 
| BYTE | BYTE | BYTE | BYTE *****|
< 0x7F | 0x01 | 0x10 | Pin Input |
|******|******|******|***********|
       |NumCmd| DAP_SWJ_Pins     |
  
| BYTE | BYTE | BYTE | BYTE **|
< 0x7F | 0x01 | 0x09 | Status |
|******|******|******|********|
       |NumCmd| DAP_Delay     |
  
| BYTE | BYTE *****|
< 0x10 | Pin Input |
|******|***********|
  DAP_SWJ_Pins     |