Showing preview only (401K chars total). Download the full file or copy to clipboard to get everything.
Repository: mrjimenez/JTAG
Branch: master
Commit: 1e9ff2277417
Files: 58
Total size: 382.7 KB
Directory structure:
gitextract_puf82wr0/
├── .gitignore
├── LICENSE
├── README.md
├── examples/
│ └── JTAGTest/
│ └── JTAGTest.ino
├── extras/
│ ├── python/
│ │ ├── JTAGTAP.py
│ │ ├── Uploader.py
│ │ ├── XSVFAssembler.py
│ │ ├── XSVFDecoder.py
│ │ ├── XSVFDisassembler.py
│ │ ├── XSVFParser.py
│ │ ├── asm_disasm_test.sh
│ │ └── xsvf
│ └── xsvf/
│ ├── XC2C64A/
│ │ ├── VHDL-CPLDIntro3LEDinverse.xsvf
│ │ ├── VHDL-CPLDIntro3LEDinverse.xsvf.s
│ │ ├── VHDL-CPLDIntro3LEDinverse.xsvf.txt
│ │ ├── blank_check.xsvf
│ │ ├── erase.svf
│ │ ├── erase.xsvf
│ │ ├── erase.xsvf.txt
│ │ ├── idcode.svf
│ │ ├── idcode.xsvf
│ │ ├── idcode.xsvf.txt
│ │ ├── idcode_simpler.xsvf.txt
│ │ ├── instruction_test.xsvf.s
│ │ └── light_LED.xsvf
│ ├── XC9572XL/
│ │ ├── AlternateLEDsOnButton.xsvf
│ │ ├── DeviceID.txt
│ │ ├── DeviceID.xsvf
│ │ └── ProgramButtonLED.xsvf
│ └── all/
│ ├── idcode_simpler.xsvf
│ └── idcode_simpler.xsvf.s
├── keywords.txt
├── lib/
│ └── readme.txt
├── library.properties
├── platformio.ini
└── src/
├── ArduinoPin.cpp
├── ArduinoPin.h
├── JTAG.h
├── JTAGPort.cpp
├── JTAGPort.h
├── JTAGPortAVR.cpp
├── JTAGPortAVR.h
├── JTAGPortArduino.cpp
├── JTAGPortArduino.h
├── JTAGTAP.cpp
├── JTAGTAP.h
├── PlayXSVF.cpp
├── PlayXSVF.h
├── PlayXSVFJTAGAVR.cpp
├── PlayXSVFJTAGAVR.h
├── PlayXSVFJTAGArduino.cpp
├── PlayXSVFJTAGArduino.h
├── SerialComm.cpp
├── SerialComm.h
├── XSVFPlayer.cpp
├── XSVFPlayer.h
├── XSVFPlayerJTAG.cpp
└── XSVFPlayerJTAG.h
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
#
# Some common rules
#
.*
*.o
#*.a
#*.s
*.ko
*.so
*.so.dbg
*.i
*.lst
*.symtypes
*.gz
*.bz2
*.lzma
*.xz
*.lz4
*.lzo
*.patch
core
core.*
#
# Backup files
#
*.orig
*~
\#*#
#
# python
#
*.pyc
#
# git files that we don't want to ignore even it they are dot-files
#
!.gitignore
.pioenvs
.piolibdeps
.clang_complete
.gcc-flags.json
# Arduino 2
build
================================================
FILE: LICENSE
================================================
BSD 3-Clause License
Copyright (c) 2015, Marcelo Roberto Jimenez
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
================================================
FILE: README.md
================================================
# The JTAG Library for Arduino
This library has four interesting things.
First, it is a JTAG test access point (TAP) manipulation library. The code
tries to be processor agnostic as much as possible, so that it can be used in
the future in other platforms. JTAG is a powerful interface, there are many
things that you can do besides programming devices. For example, you can do
boundary scan tests, and even debug and take complete control of some hardware.
Second, it is a XSVF file player. That way, it is possible to program CPLDs and
FPGAs through the JTAG port.
Third, there is a XSVF disassembler written in python, so that you can learn
what is happening in the XSVF file you are using to program your device.
And finally, there is a XSVF assembler, also written in python, so that you can
recompile or write your own XSVF programs yourself in a maintainable and
documented way, since the grammar supports comments.
Remember that Arduino compatible devices are usually powered with 5 Volts,
while most CPLDs and FPGAs will use a 3.3 Volts interface. In my original
project, I have used 3 voltage dividers for TCK, TMS and TDI. Each divider
consisted of one 330 Ohms resistor in series with a 180 Ohms resistor. One leg
of the 330 Ohms resistor goes to the ground, one leg of the 180 Ohms resistor
goes to the Arduino. Where two legs meet, this is where you should connect your
JTAG cable.
Those seem to be a bit low values for a voltage divider, but consider the fact
that you will most likely have around 100 Ohms impedance in your JTAG
homemade cable, and higher resistor values will most likely create reflections
on your signals that will ruin the operation of the JTAG TAP.
TDO and VREF can be tied straight to the arduino pins, but I suggest using a
100 Ohms resistor on TDO, just to be sure to make reflections low. The big
problem here is not TDO itself, but the crosstalk that can happen between TDO
and TCK in your target board. Trust me, I've been there.
Using VREF is important so that your Arduino knows your JTAG cable it is actually
connected to something. Also, VREF could be used to power buffers to convert
the Arduino signals to the right voltage level without the resistors I
mentioned before.
The pin configuration I used was this:
| Signal | Arduino pin |
|:-------|:-----------:|
| TMS | 8 |
| TDI | 9 |
| TDO | 10 |
| TCK | 11 |
| VREF | 12 |
## Before using this software
You will need:
1. An Arduino compatible board, along with some way to program it (PC with USB
and Arduino IDE or some other hardware device).
1. Python with the library pyserial installed.
1. The proper connection, be it a cable or a few loose wire jumpers.
1. A CPLD, FPGA or any other JTAG interface board to connect to. It is worth
mentioning that [Dangerous Prototypes](http://dangerousprototypes.com/)
has two very interesting CPLD boards. I have personally used a XC2C64A
breakout board. They also have a similar breakout board for the XC9572XL.
## Installing the library
This software has been tested under the Arduino IDE version 1.6.5, but should
work fine with version 1.0. The library should be unpacked to the "libraries"
directory inside your Arduino "sketches" directory.
## Compiling
One quick suggestion: in order to get the most of the USB bandwidth, it is
possible to increase the size of the receive buffer of the Arduino. I have also
changed the default compiler optimization level. I added a file called
"platform.local.txt" to the folder "~/arduino-1.6.5/hardware/arduino/avr" that
had the following:
```config
name=Arduino 256S AVR Boards
version=1.6.7
# AVR compile variables
# ---------------------
# This can be overridden in boards.txt
build.extra_flags=
# These can be overridden in platform.local.txt
compiler.c.extra_flags=-DSERIAL_BUFFER_SIZE=256 -DSERIAL_RX_BUFFER_SIZE=256 -O2
compiler.c.elf.extra_flags=
compiler.S.extra_flags=
compiler.cpp.extra_flags=-DSERIAL_BUFFER_SIZE=256 -DSERIAL_RX_BUFFER_SIZE=256 -O2
compiler.ar.extra_flags=
compiler.objcopy.eep.extra_flags=
compiler.elf2hex.extra_flags=
```
The best information about the location of the file "platform.local.txt" I
found was [here](https://github.com/arduino/Arduino/wiki/Boards-Manager-FAQ).
Another suggestion: if speed is really an issue, instead of using
"JTAGPortArduino", use "JTAGPortAVR". Take a look at PlayXSVFJTAVR.{cpp,h}.
JTAGPortAVR uses the same pin configuration I have mentioned before, but since
all the pins are on AVR's PORTB, all pins are written at once, so the JTAG port
code is more efficient.
## Using it to play XSVF
1. The example sketch "JTAGTest" has been used in all my tests. Upload it to
your Arduino board. Now you have a XSVF JTAG player.
2. Inside the folder libraries/JTAG/extras/python, there is a python script
called xsvf. It has some command line parameters, but the default ones
should be ok. You can use it to send more than one file in a sequence to
your board. For example, suppose you are in a command prompt in the
libraries/JTAG folder. Then, the following command will send the following
four XSVF files to your Arduino board:
```bash
./extras/python/xsvf extras/xsvf/XC2C64A/{idcode.xsvf,blank_check.xsvf,erase.xsvf,VHDL-CPLDIntro3LEDinverse.xsvf}
```
Help is available for the command line parameters:
```bash
$ ./extras/python/xsvf --help
usage: xsvf [-h] [-c {upload,disasm}] [-v] [-p PORT] [-b BAUD]
fileName [fileName ...]
XSVF file processor.
positional arguments:
fileName XSVF file names. (type FileType('rb'))
optional arguments:
-h, --help show this help message and exit
-c {upload,disasm}, --command {upload,disasm}
command to execute. (default=upload)
-v, --version show program's version number and exit
-p PORT, --port PORT Serial port device name (default=/dev/ttyACM0)
-b BAUD, --baud BAUD BAUD rate (type int, default=115200)
Parameters can be in a file, one per line, using @"file name"
```
1. In subfolders of the folder "extras/xsvf" you can find several XSVF files
that you can use to test your hardware. Notice that you MUST use a XSVF file
generated for your particular hardware. You can generate XSVF files with the
software "impact", which comes with the Xilinx bundle.
2. A failure in the execution of "blank_check.xsvf" means that the CPLD is not
blank. The same file should be successful after the execution of
"erase.xsvf".
## Interesting links
1. [Generating an SVF, XSVF, or STAPL File with Impact](http://www.xilinx.com/support/documentation/sw_manuals/xilinx11/pp_p_process_generate_svf_file.htm)
2. [Executing XSVF/SVF Files with Impact](http://www.xilinx.com/itp/xilinx10/isehelp/pim_p_executing_xsvf_svf.htm)
3. [A JTAG/XSVF Library for Arduino](http://eeandcs.blogspot.com.br/2015/08/jtagxsvf-library-for-arduino.html)
4. [A XSVF Assembler/Disassembler in python](http://eeandcs.blogspot.com.br/2015/09/a-xsvf-assemblerdisassembler-in-python.html)
5. [SVF on Wikipedia](https://en.wikipedia.org/wiki/Serial_Vector_Format)
6. [JTAG on Wikipedia](https://en.wikipedia.org/wiki/Joint_Test_Action_Group)
7. [fpga4fun](http://www.fpga4fun.com/JTAG.html)
8. [Rohit Dureja's JTAG Simplified](https://rohitdureja.wordpress.com/category/cpldfpga/)
9. [Nice JTAG TAP Controller State Diagram in SVF](https://de.wikipedia.org/wiki/Datei:JTAG_TAP_Controller_State_Diagram.svg)
10. YouTube video: [Como programar CPLD Xilinx con Arduino](https://youtu.be/x5eW9H1GoeA)
## Credits
I have used Xilinx [XAPP503 - SVF and XSVF File Formats for Xilinx Devices](http://www.xilinx.com/support/documentation/application_notes/xapp503.pdf),
appendix B as the reference for XSVF.
This software is actually a major rewrite of code and ideas inspired on many
other projects. As far as I could trace it:
1. [Mike Tsao's JTAGWhisperer](https://github.com/sowbug/JTAGWhisperer/).
1. [Ben's XSVF-Player](https://github.com/ben0109/XSVF-Player/).
1. [Clifford Wolf's libxsvf](http://www.clifford.at/libxsvf/). Definitely worth taking a look.
1. [Karl Hans Janke's jtagbang](http://www.khjk.org/log/2013/aug/jtagbang.html).
## About me
[My blog is here](http://eeandcs.blogspot.com.br/).
You may contact me on github.
================================================
FILE: examples/JTAGTest/JTAGTest.ino
================================================
#include <JTAG.h>
//
// The maximum size of the arduino receive buffer is 63 bytes by default.
// This number can be changed if you change the compiler flags in the
// file hardware/arduino/avr/platform.local.txt (-O2 makes it faster):
//
// compiler.c.extra_flags=-DSERIAL_BUFFER_SIZE=256 -DSERIAL_RX_BUFFER_SIZE=256
// -O2 compiler.cpp.extra_flags=-DSERIAL_BUFFER_SIZE=256
// -DSERIAL_RX_BUFFER_SIZE=256 -O2
//
#ifndef SERIAL_RX_BUFFER_SIZE
#define SERIAL_RX_BUFFER_SIZE 64
#endif /* SERIAL_RX_BUFFER_SIZE */
void setup()
{
Serial.begin(115200);
// Serial.begin(230400);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
// printAvailableRAM(Serial);
}
void loop()
{
// PlayXSVFJTAGArduino p(Serial, SERIAL_RX_BUFFER_SIZE, 2, 12, 5, 4, 0,
// true);
PlayXSVFJTAGArduino p(Serial, SERIAL_RX_BUFFER_SIZE, 8, 9, 10, 11, 12);
// PlayXSVFJTAGAVR p(Serial, SERIAL_RX_BUFFER_SIZE);
// p.printAvailableRAM();
// Currently, the PlayXSVFJTAGArduino object consumes 1042 bytes of RAM
p.play();
}
================================================
FILE: extras/python/JTAGTAP.py
================================================
#! /usr/bin/python3
# coding: utf-8
class JTAGTAP(object):
"""
"""
# JTAG TAP states
TEST_LOGIC_RESET = 0
RUN_TEST_IDLE = 1
SELECT_DR_SCAN = 2
CAPTURE_DR = 3
SHIFT_DR = 4
EXIT1_DR = 5
PAUSE_DR = 6
EXIT2_DR = 7
UPDATE_DR = 8
SELECT_IR_SCAN = 9
CAPTURE_IR = 10
SHIFT_IR = 11
EXIT1_IR = 12
PAUSE_IR = 13
EXIT2_IR = 14
UPDATE_IR = 15
_NAME = 0
_state_data = (
('TEST_LOGIC_RESET',),
('RUN_TEST_IDLE',),
('SELECT_DR_SCAN',),
('CAPTURE_DR',),
('SHIFT_DR',),
('EXIT1_DR',),
('PAUSE_DR',),
('EXIT2_DR',),
('UPDATE_DR',),
('SELECT_IR_SCAN',),
('CAPTURE_IR',),
('SHIFT_IR',),
('EXIT1_IR',),
('PAUSE_IR',),
('EXIT2_IR',),
('UPDATE_IR',),
)
@staticmethod
def state_name(n):
return JTAGTAP._state_data[n][JTAGTAP._NAME]
================================================
FILE: extras/python/Uploader.py
================================================
#! /usr/bin/python3
# coding: utf-8
import os
import string
import sys
import time
try:
import serial
except ImportError:
print("Error importing pyserial. Please check if it is installed.")
sys.exit(1)
class Uploader(object):
"""Uploads a XSVF file to the arduino board."""
# Create a translation array of printable characters
_translate_str_1 = "".join(
[(chr(x) in string.printable) and chr(x) or "." for x in range(256)]
)
_translate_str = bytes(_translate_str_1, "ascii")
@staticmethod
def add_arguments(p):
"""Adds the necessary arguments to the parser."""
p.add_argument(
"-p",
"--port",
default="/dev/ttyACM0",
help="Serial port device name" " (default=%(default)s)",
)
p.add_argument(
"-b",
"--baud",
default=115200,
type=int,
help="BAUD rate" " (type %(type)s, default=%(default)s)",
)
def __init__(self, args):
self._args = args
self._serial = serial.Serial(port=args.port, baudrate=args.baud)
# Help printing new lines
self._need_lf = False
#
self._file_size = 0
# Hashes
self._sum = 0
# To compute the elapsed time
self._start_time = 0
# Error code
self._error_code = 0
@property
def error_code(self):
return self._error_code
@error_code.setter
def error_code(self, value):
self._error_code = value
def reset_arduino(self):
"""Resets the arduino and clear any garbage on the serial port."""
self._serial.setDTR(False)
time.sleep(1)
self._serial.flushInput()
self._serial.flushOutput()
self._serial.setDTR(True)
self._start_time = 0
def print_lf(self):
if self._need_lf:
self._need_lf = False
print
def initialize_hashes(self):
self._sum = 0
def update_hashes(self, s):
for c in s:
self._sum += c
def print_hashes(self):
cksum = (-self._sum) & 0xFF
if self._args.debug > 1:
print(" Expected checksum: 0x%02X/%lu." % (cksum, self._file_size))
print(" Expected sum: 0x%08lX/%lu." % (self._sum, self._file_size))
if self._start_time > 0:
print("Elapsed time: %.02f seconds." % (time.time() - self._start_time))
def upload_one_file(self, fd):
self.reset_arduino()
self._file_size = os.fstat(fd.fileno()).st_size
bytes_written = 0
while True:
line = self._serial.readline().strip()
if not line:
continue
command = chr(line[0])
argument = line[1:].decode("ascii")
if command == "S":
num_bytes = int(argument)
xsvf_data = fd.read(num_bytes)
bytes_written += len(xsvf_data)
self.update_hashes(xsvf_data)
xsvf_data += b"\xFF" * (num_bytes - len(xsvf_data))
self._serial.write(xsvf_data)
if self._args.debug > 1:
print(
"\rSent: %8d bytes, %8d remaining"
% (bytes_written, self._file_size - bytes_written),
end="",
)
sys.stdout.flush()
self._need_lf = True
elif command == "R":
self.initialize_hashes()
if self._args.debug > 1:
print("File: %s" % os.path.realpath(fd.name))
print("Ready to send %d bytes." % self._file_size)
self._start_time = time.time()
elif command == "Q":
self.print_lf()
# Split the argument. The first field is the error code,
# the next field is the error message.
args = argument.split(",")
self.error_code = int(args[0])
if self._args.debug > 1:
print("Quit: {1:s} ({0:d}).".format(self.error_code, args[1]))
self.print_hashes()
return self.error_code == 0
elif command == "D":
if self._args.debug > 0:
self.print_lf()
print("Device:", argument)
elif command == "!":
if self._args.debug > 0:
self.print_lf()
print("IMPORTANT:", argument)
else:
self.print_lf()
print("Unrecognized line:", line.translate(Uploader._translate_str))
def upload_all_files(self, fd_list):
ok = True
for fd in fd_list:
with fd:
ok = self.upload_one_file(fd)
if not ok:
break
return ok
================================================
FILE: extras/python/XSVFAssembler.py
================================================
# !/usr/bin/python3
# coding: utf-8
#
# example:
# $ ./XSVFAssembler.py > test.xsvf
# $ ./xsvf -c disasm -n test.xsvf > test.xsvf.s
# $ ./xsvf -c asm ../xsvf/XC2C64A/idcode_simpler.xsvf.s
# $
import XSVFParser
import sys
class XSVFAssembler(object):
"""
Assembler
"""
OPCODE = 0
HANDLER = 1
def __init__(self, args):
self._args = args
self._instruction_info = {
'XCOMPLETE': (0, self.asm_xcomplete),
'XTDOMASK': (1, self.asm_xtdomask),
'XSIR': (2, self.asm_xsir),
'XSDR': (3, self.asm_xsdr),
'XRUNTEST': (4, self.asm_xruntest),
'XRESERVED_5': (5, self.asm_xreserved_5),
'XRESERVED_6': (6, self.asm_xreserved_6),
'XREPEAT': (7, self.asm_xrepeat),
'XSDRSIZE': (8, self.asm_xsdrsize),
'XSDRTDO': (9, self.asm_xsdrtdo),
'XSETSDRMASKS': (10, self.asm_xsetsdrmasks),
'XSDRINC': (11, self.asm_xsdrinc),
'XSDRB': (12, self.asm_xsdrb),
'XSDRC': (13, self.asm_xsdrc),
'XSDRE': (14, self.asm_xsdre),
'XSDRTDOB': (15, self.asm_xsdrtdob),
'XSDRTDOC': (16, self.asm_xsdrtdoc),
'XSDRTDOE': (17, self.asm_xsdrtdoe),
'XSTATE': (18, self.asm_xstate),
'XENDIR': (19, self.asm_xendir),
'XENDDR': (20, self.asm_xenddr),
'XSIR2': (21, self.asm_xsir2),
'XCOMMENT': (22, self.asm_xcomment),
'XWAIT': (23, self.asm_xwait)
}
self._state_info = {
'TEST_LOGIC_RESET': 0,
'RUN_TEST_IDLE': 1,
'SELECT_DR_SCAN': 2,
'CAPTURE_DR': 3,
'SHIFT_DR': 4,
'EXIT1_DR': 5,
'PAUSE_DR': 6,
'EXIT2_DR': 7,
'UPDATE_DR': 8,
'SELECT_IR_SCAN': 9,
'CAPTURE_IR': 10,
'SHIFT_IR': 11,
'EXIT1_IR': 12,
'PAUSE_IR': 13,
'EXIT2_IR': 14,
'UPDATE_IR': 15
}
self._arguments = []
def asm_byte_sequence(self, l):
for c in l:
if len(c) == 2:
b = int(c, base=16)
else: # len(c) == 8:
b = int(c, base=2)
sys.stdout.write(chr(b))
def asm_integer(self, s, n):
# Deal with '0x' prefixed integers
if len(s) > 2 and s[0] == '0' and (s[1] == 'x' or s[1] == 'X'):
i = int(s[2:], base=16)
else:
i = int(s)
ret = i
# Build a list of bytes
l = []
n1 = n
while n1:
j = i % 256
l.append(j)
i >>= 8
n1 -= 1
# Output the list reversed (Big Endian)
n1 = n
while n1:
j = l.pop()
sys.stdout.write(chr(j))
n1 -= 1
return ret
def asm_state(self, state):
i = self._state_info[state]
sys.stdout.write(chr(i))
def asm_xcomplete(self):
pass
def asm_xtdomask(self):
self.asm_byte_sequence(self._arguments[0])
def asm_xsir(self):
self.asm_integer(self._arguments[0], 1)
self.asm_byte_sequence(self._arguments[1])
def asm_xsdr(self):
self.asm_byte_sequence(self._arguments[0])
def asm_xruntest(self):
self.asm_integer(self._arguments[0], 4)
def asm_xreserved_5(self):
pass
def asm_xreserved_6(self):
pass
def asm_xrepeat(self):
self.asm_integer(self._arguments[0], 1)
def asm_xsdrsize(self):
self.asm_integer(self._arguments[0], 4)
def asm_xsdrtdo(self):
self.asm_byte_sequence(self._arguments[0])
self.asm_byte_sequence(self._arguments[1])
def asm_xsetsdrmasks(self):
self.asm_byte_sequence(self._arguments[0])
self.asm_byte_sequence(self._arguments[1])
def asm_xsdrinc(self):
self.asm_byte_sequence(self._arguments[0])
n = self.asm_integer(self._arguments[1], 1)
j = n
while j:
i = n - j
self.asm_byte_sequence(self._arguments[i+2])
j -= 1
def asm_xsdrb(self):
self.asm_byte_sequence(self._arguments[0])
def asm_xsdrc(self):
self.asm_byte_sequence(self._arguments[0])
def asm_xsdre(self):
self.asm_byte_sequence(self._arguments[0])
def asm_xsdrtdob(self):
self.asm_byte_sequence(self._arguments[0])
self.asm_byte_sequence(self._arguments[1])
def asm_xsdrtdoc(self):
self.asm_byte_sequence(self._arguments[0])
self.asm_byte_sequence(self._arguments[1])
def asm_xsdrtdoe(self):
self.asm_byte_sequence(self._arguments[0])
self.asm_byte_sequence(self._arguments[1])
def asm_xstate(self):
state = str(self._state_info[self._arguments[0]])
self.asm_integer(state, 1)
def asm_xendir(self):
state = self._arguments[0]
self.asm_integer('0' if state == 'RUN_TEST_IDLE' else '1', 1)
def asm_xenddr(self):
state = self._arguments[0]
self.asm_integer('0' if state == 'RUN_TEST_IDLE' else '1', 1)
def asm_xsir2(self):
self.asm_integer(self._arguments[0], 2)
self.asm_byte_sequence(self._arguments[1])
def asm_xcomment(self):
sys.stdout.write(self._arguments[0])
sys.stdout.write(chr(0))
def asm_xwait(self):
self.asm_state(self._arguments[0])
self.asm_state(self._arguments[1])
self.asm_integer(self._arguments[2], 4)
def assemble_tree(self, tree):
for l in tree:
instruction = l[0]
info = self._instruction_info[instruction]
opcode = info[self.OPCODE]
asm_funcion = info[self.HANDLER]
self._arguments = l[1:]
sys.stdout.write(chr(opcode))
asm_funcion()
return True
def assemble_one_file(self, fd):
tree = XSVFParser.xsvf_parser.parseFile(fd, parseAll=True)
return self.assemble_tree(tree)
def assemble_all_files(self, fd_list):
ok = True
for fd in fd_list:
with fd:
ok = self.assemble_one_file(fd)
if not ok:
break
return ok
def main():
a = XSVFAssembler(None)
tree = XSVFParser.xsvf_parser.parseString(
XSVFParser.xsvf_example, parseAll=True)
a.assemble_tree(tree)
sys.exit(0)
if __name__ == '__main__':
main()
================================================
FILE: extras/python/XSVFDecoder.py
================================================
#! /usr/bin/python3
# coding: utf-8
import JTAGTAP
class XSVFDecoder(object):
"""
Decoder
"""
# Instruction op codes
XCOMPLETE = 0
XTDOMASK = 1
XSIR = 2
XSDR = 3
XRUNTEST = 4
XRESERVED_5 = 5
XRESERVED_6 = 6
XREPEAT = 7
XSDRSIZE = 8
XSDRTDO = 9
XSETSDRMASKS = 10
XSDRINC = 11
XSDRB = 12
XSDRC = 13
XSDRE = 14
XSDRTDOB = 15
XSDRTDOC = 16
XSDRTDOE = 17
XSTATE = 18
XENDIR = 19
XENDDR = 20
XSIR2 = 21
XCOMMENT = 22
XWAIT = 23
@staticmethod
def num_bytes(n):
return (n + 7) >> 3
def __init__(self, args):
self._args = args
self._error_code = 0
self._iter_file = None
#
self._next_state = 0
self._sirsize_bits = 0
self._sirsize_bytes = 0
self._sdrsize_bits = 0
self._sdrsize_bytes = 0
self._length2_bits = 0
self._length2_bytes = 0
self._repeat = 0
self._runtest = 0
self._endir_state = 0
self._enddr_state = 0
self._wait_start_state = 0
self._wait_end_state = 0
self._wait_time_usecs = 0
self._xcomplete = 0
#
# uint32_t S_MAX_CHAIN_SIZE_BYTES = 40;
# uint32_t S_MAX_CHAIN_SIZE_BITS = S_MAX_CHAIN_SIZE_BYTES * 8;
self._tdi = []
self._tdo = []
self._tdo_mask = []
self._tdo_expected = []
self._address_mask = []
self._data_mask = []
self._xsdrinc_start_address = []
self._xsdrinc_num_times = 0
self._xsdrinc_data_list = []
self._comment = ""
self._instruction_counter = 0
self._current_instruction_string = ""
@property
def error_code(self):
return self._error_code
@error_code.setter
def error_code(self, value):
self._error_code = value
@property
def next_state(self):
"""The next state to go to."""
return self._next_state
@next_state.setter
def next_state(self, value):
self._next_state = value
@property
def sirsize_bits(self):
"""The number of bits of the next SIR instruction."""
return self._sirsize_bits
@sirsize_bits.setter
def sirsize_bits(self, value):
self._sirsize_bits = value
self._sirsize_bytes = XSVFDecoder.num_bytes(value)
@property
def sirsize_bytes(self):
return self._sirsize_bytes
@property
def sdrsize_bits(self):
"""The number of bits of the next XSDR instruction."""
return self._sdrsize_bits
@sdrsize_bits.setter
def sdrsize_bits(self, value):
self._sdrsize_bits = value
self._sdrsize_bytes = XSVFDecoder.num_bytes(value)
@property
def sdrsize_bytes(self):
return self._sdrsize_bytes
@property
def length2_bits(self):
"""The number of bits of the length2 parameter."""
return self._length2_bits
@length2_bits.setter
def length2_bits(self, value):
self._length2_bits = value
self._length2_bytes = XSVFDecoder.num_bytes(value)
@property
def length2_bytes(self):
return self._length2_bytes
@property
def repeat(self):
"""The number of repetitions of the XREPEAT instruction."""
return self._repeat
@repeat.setter
def repeat(self, value):
self._repeat = value
@property
def runtest(self):
"""The number of repetitions of the XRUNTEST instruction."""
return self._runtest
@runtest.setter
def runtest(self, value):
self._runtest = value
@property
def endir_state(self):
"""Final state of XENDIR instruction."""
return self._endir_state
@endir_state.setter
def endir_state(self, value):
self._endir_state = value
@property
def enddr_state(self):
"""Final state of XENDDR instruction."""
return self._enddr_state
@enddr_state.setter
def enddr_state(self, value):
self._enddr_state = value
@property
def wait_start_state(self):
"""Start state of XWAIT instruction."""
return self._wait_start_state
@wait_start_state.setter
def wait_start_state(self, value):
self._wait_start_state = value
@property
def wait_end_state(self):
"""End state of XWAIT instruction."""
return self._wait_end_state
@wait_end_state.setter
def wait_end_state(self, value):
self._wait_end_state = value
@property
def wait_time_usecs(self):
"""Duration of the XWAIT instruction in microseconds."""
return self._wait_time_usecs
@wait_time_usecs.setter
def wait_time_usecs(self, value):
self._wait_time_usecs = value
@property
def xcomplete(self):
"""True if the XCOMPLETE instruction been executed."""
return self._xcomplete
@xcomplete.setter
def xcomplete(self, value):
self._xcomplete = value
@property
def tdi(self):
"""The TDI sequence to be written"""
return self._tdi
@tdi.setter
def tdi(self, value):
self._tdi = value
@tdi.deleter
def tdi(self):
del self._tdi
@property
def tdo(self):
"""The TDO sequence to be read"""
return self._tdo
@tdo.setter
def tdo(self, value):
self._tdo = value
@tdo.deleter
def tdo(self):
del self._tdo
@property
def tdo_mask(self):
"""The TDO sequence mask"""
return self._tdo_mask
@tdo_mask.setter
def tdo_mask(self, value):
self._tdo_mask = value
@tdo_mask.deleter
def tdo_mask(self):
del self._tdo_mask
@property
def tdo_expected(self):
"""The TDO sequence to be read"""
return self._tdo_expected
@tdo_expected.setter
def tdo_expected(self, value):
self._tdo_expected = value
@tdo_expected.deleter
def tdo_expected(self):
del self._tdo_expected
@property
def address_mask(self):
"""The XSETSDRMASKS address mask"""
return self._address_mask
@address_mask.setter
def address_mask(self, value):
self._address_mask = value
@address_mask.deleter
def address_mask(self):
del self._address_mask
@property
def data_mask(self):
"""The XSETSDRMASKS data mask"""
return self._data_mask
@data_mask.setter
def data_mask(self, value):
self._data_mask = value
@data_mask.deleter
def data_mask(self):
del self._data_mask
@property
def xsdrinc_start_address(self):
"""XSDRINC start address"""
return self._xsdrinc_start_address
@xsdrinc_start_address.setter
def xsdrinc_start_address(self, value):
self._xsdrinc_start_address = value
@xsdrinc_start_address.deleter
def xsdrinc_start_address(self):
del self._xsdrinc_start_address
@property
def xsdrinc_num_times(self):
"""The length of the XSDRINC data list"""
return self._xsdrinc_num_times
@xsdrinc_num_times.setter
def xsdrinc_num_times(self, value):
self._xsdrinc_num_times = value
@xsdrinc_num_times.deleter
def xsdrinc_num_times(self):
del self._xsdrinc_num_times
@property
def xsdrinc_data_list(self):
return self._xsdrinc_data_list
@xsdrinc_data_list.setter
def xsdrinc_data_list(self, value):
self._xsdrinc_data_list = value
@xsdrinc_data_list.deleter
def xsdrinc_data_list(self):
del self._xsdrinc_data_list
@property
def comment(self):
"""The last XCOMMENT read"""
return self._comment
@comment.setter
def comment(self, value):
self._comment = value
@comment.deleter
def comment(self):
del self._comment
@property
def instruction_counter(self):
"""The number of instructions processed."""
return self._instruction_counter
@instruction_counter.setter
def instruction_counter(self, value):
self._instruction_counter = value
@property
def current_instruction_string(self):
"""A string containing the bytes of the current instruction"""
return self._current_instruction_string
@current_instruction_string.setter
def current_instruction_string(self, value):
self._current_instruction_string = value
@current_instruction_string.deleter
def current_instruction_string(self):
del self._current_instruction_string
#
# Decoders
#
def decode_xcomplete(self):
self._xcomplete = True
return True
def decode_xtdomask(self):
self.tdo_mask = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xsir(self):
self.sirsize_bits = self.get_next_byte()
self.tdi = self.get_next_bytes(self.sirsize_bytes)
return True
def decode_xsdr(self):
self.tdi = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xruntest(self):
self.runtest = self.get_next_long()
return True
def decode_xreserved_5(self):
return True
def decode_xreserved_6(self):
return True
def decode_xrepeat(self):
self.repeat = self.get_next_byte()
return True
def decode_xsdrsize(self):
self.sdrsize_bits = self.get_next_long()
return True
def decode_xsdrtdo(self):
self.tdi = self.get_next_bytes(self.sdrsize_bytes)
self.tdo_expected = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xsetsdrmasks(self):
self.address_mask = self.get_next_bytes(self.sdrsize_bytes)
self.data_mask = self.get_next_bytes(self.sdrsize_bytes)
# Count the number of bits '1' in data_mask
n = 0
for j in range(self.sdrsize_bytes):
b = self.data_mask[j]
for k in range(8):
if b & 1:
n += 1
b >>= 1
self.length2_bits = n
return True
def decode_xsdrinc(self):
self.xsdrinc_start_address = self.get_next_bytes(self.sdrsize_bytes)
self.xsdrinc_num_times = self.get_next_byte()
n = self.xsdrinc_num_times
self.xsdrinc_data_list = []
while n:
self.xsdrinc_data_list.append(
self.get_next_bytes(self.length2_bytes))
n -= 1
return True
def decode_xsdrb(self):
self.tdi = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xsdrc(self):
self.tdi = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xsdre(self):
self.tdi = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xsdrtdob(self):
self.tdi = self.get_next_bytes(self.sdrsize_bytes)
self.tdo_expected = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xsdrtdoc(self):
self.tdi = self.get_next_bytes(self.sdrsize_bytes)
self.tdo_expected = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xsdrtdoe(self):
self.tdi = self.get_next_bytes(self.sdrsize_bytes)
self.tdo_expected = self.get_next_bytes(self.sdrsize_bytes)
return True
def decode_xstate(self):
self.next_state = self.get_next_byte()
return True
def decode_xendir(self):
ret = True
s = self.get_next_byte()
if s == 0:
self.endir_state = JTAGTAP.JTAGTAP.RUN_TEST_IDLE
elif s == 1:
self.endir_state = JTAGTAP.JTAGTAP.PAUSE_IR
else:
self.error_code = -2
ret = False
print("Invalid XENDIR parameter %d" % s)
return ret
def decode_xenddr(self):
ret = True
s = self.get_next_byte()
if s == 0:
self.enddr_state = JTAGTAP.JTAGTAP.RUN_TEST_IDLE
elif s == 1:
self.enddr_state = JTAGTAP.JTAGTAP.PAUSE_DR
else:
self.error_code = -3
ret = False
print("Invalid XENDDR parameter %d" % s)
return ret
def decode_xsir2(self):
self.sirsize_bits = self.get_next_word()
self.tdi = self.get_next_bytes(self.sirsize_bytes)
return True
def decode_xcomment(self):
while True:
c = self.get_next_byte()
if not c:
break
self.comment += chr(c)
return True
def decode_xwait(self):
self.wait_start_state = self.get_next_byte()
self.wait_end_state = self.get_next_byte()
self.wait_time_usecs = self.get_next_long()
return True
#
_NAME = 0
_DECODER = 1
_instruction_data = (
('XCOMPLETE', decode_xcomplete),
('XTDOMASK', decode_xtdomask),
('XSIR', decode_xsir),
('XSDR', decode_xsdr),
('XRUNTEST', decode_xruntest),
('XRESERVED_5', decode_xreserved_5),
('XRESERVED_6', decode_xreserved_6),
('XREPEAT', decode_xrepeat),
('XSDRSIZE', decode_xsdrsize),
('XSDRTDO', decode_xsdrtdo),
('XSETSDRMASKS', decode_xsetsdrmasks),
('XSDRINC', decode_xsdrinc),
('XSDRB', decode_xsdrb),
('XSDRC', decode_xsdrc),
('XSDRE', decode_xsdre),
('XSDRTDOB', decode_xsdrtdob),
('XSDRTDOC', decode_xsdrtdoc),
('XSDRTDOE', decode_xsdrtdoe),
('XSTATE', decode_xstate),
('XENDIR', decode_xendir),
('XENDDR', decode_xenddr),
('XSIR2', decode_xsir2),
('XCOMMENT', decode_xcomment),
('XWAIT', decode_xwait),
)
@staticmethod
def instruction_name(instruction):
return XSVFDecoder._instruction_data[instruction][XSVFDecoder._NAME]
def instruction_decoder(self, instruction):
return self._instruction_data[instruction][XSVFDecoder._DECODER](self)
def instruction_handler(self, instruction):
pass
@staticmethod
def bytes_from_file(fd, chunksize=8192):
with fd:
while True:
chunk = fd.read(chunksize)
if chunk:
for b in chunk:
yield b
else:
break
def private_next_byte(self):
# return next(self._iter_file)
# return XSVFDecoder.bytes_from_file(self._current_file)
b = ord(self._current_file.read(1))
self.current_instruction_string += '{0:02X} '.format(b)
return b
def get_next_byte(self):
n = self.private_next_byte()
return n
def get_next_word(self):
n = self.private_next_byte() << 8
n |= self.private_next_byte()
return n
def get_next_long(self):
n = self.private_next_byte() << 24
n |= self.private_next_byte() << 16
n |= self.private_next_byte() << 8
n |= self.private_next_byte()
return n
def get_next_bytes(self, n):
s = []
while n:
s.append(self.private_next_byte())
n -= 1
return s
def decode_one_file(self, fd):
self._xcomplete = False
self._instruction_counter = 0
self._iter_file = iter(fd)
self._current_file = fd
while not self._xcomplete:
self.current_instruction_string = ""
instruction = self.get_next_byte()
if instruction > self.XWAIT:
print("Invalid instruction: 0x%02x" % instruction)
return False
ok = self.instruction_decoder(instruction)
if ok:
self.instruction_handler(instruction)
return True
def decode_all_files(self, fd_list):
ok = True
for fd in fd_list:
with fd:
ok = self.decode_one_file(fd)
if not ok:
break
return ok
================================================
FILE: extras/python/XSVFDisassembler.py
================================================
#! /usr/bin/python3
# coding: utf-8
#
# example:
# $ ./xsvf -c disasm ../xsvf/XC2C64A/idcode_simpler.xsvf
#
import JTAGTAP
import XSVFDecoder
class XSVFDisassembler(XSVFDecoder.XSVFDecoder):
"""
XSVF Disassembler
"""
@staticmethod
def add_arguments(p):
"""Adds the necessary arguments to the parser."""
p.add_argument(
'-n', '--no_bytes',
action='store_true',
# type=bool,
help='Do not output bytes'
' (default=%(default)s)')
def __init__(self, args):
XSVFDecoder.XSVFDecoder.__init__(self, args)
self._args = args
self._current_instruction = 0
self._instruction_handlers = (
self.disasm_xcomplete,
self.disasm_xtdomask,
self.disasm_xsir,
self.disasm_xsdr,
self.disasm_xruntest,
self.disasm_xreserved_5,
self.disasm_xreserved_6,
self.disasm_xrepeat,
self.disasm_xsdrsize,
self.disasm_xsdrtdo,
self.disasm_xsetsdrmasks,
self.disasm_xsdrinc,
self.disasm_xsdrb,
self.disasm_xsdrc,
self.disasm_xsdre,
self.disasm_xsdrtdob,
self.disasm_xsdrtdoc,
self.disasm_xsdrtdoe,
self.disasm_xstate,
self.disasm_xendir,
self.disasm_xenddr,
self.disasm_xsir2,
self.disasm_xcomment,
self.disasm_xwait,
)
@property
def current_instruction(self):
return self._current_instruction
@current_instruction.setter
def current_instruction(self, value):
self._current_instruction = value
def format_first_part(self, s):
"""
Breaks the instruction's bytes in lines of 8 bytes.
:param s: string of bytes
:return: list of 8 byte strings
"""
l = []
while s:
l.append(s[:24])
s = s[24:]
return l
def return_zeroeth(self, l):
"""
Returns the zeroeth element of the list, right whitespace stripped,
but avoid returning None if the result is empty.
"""
if l:
l_0 = l[0].rstrip()
else:
l_0 = ""
return l_0
def format_byte_list(self, l):
return ' {:s}'.format(' '.join('{0:02X}'.format(x) for x in l))
def pretty_disasm(self, pars=("",)):
l1 = self.format_first_part(self.current_instruction_string)
l2 = list(pars)
l2[0] = '{:s}{:s}'.format(
self.instruction_name(self.current_instruction),
l2[0])
while l1 or l2:
l1_0 = self.return_zeroeth(l1)
l2_0 = self.return_zeroeth(l2)
if self._args.no_bytes:
if l2_0:
print('{0:s}'.format(l2_0))
else:
if l2_0:
print('{0:<24} {1:s}'.format(l1_0, l2_0))
else:
print('{0:s}'.format(l1_0))
l1 = l1[1:]
l2 = l2[1:]
def disasm_xcomplete(self):
self.pretty_disasm()
def disasm_xtdomask(self):
p = (
'',
self.format_byte_list(self.tdo_mask)
)
self.pretty_disasm(p)
def disasm_xsir(self):
p = (
' {:d} {:s}'.format(
self.sirsize_bits,
self.format_byte_list(self.tdi).strip()),
)
self.pretty_disasm(p)
def disasm_xsdr(self):
p = (
'',
self.format_byte_list(self.tdi)
)
self.pretty_disasm(p)
def disasm_xruntest(self):
p = (
' {:d}'.format(self.runtest),
)
self.pretty_disasm(p)
def disasm_xreserved_5(self):
self.pretty_disasm()
def disasm_xreserved_6(self):
self.pretty_disasm()
def disasm_xrepeat(self):
p = (
' {:d}'.format(self.repeat),
)
self.pretty_disasm(p)
def disasm_xsdrsize(self):
p = (
' {0}'.format(self.sdrsize_bits),
)
self.pretty_disasm(p)
def disasm_xsdrtdo(self):
p = (
'',
self.format_byte_list(self.tdi) + ',',
self.format_byte_list(self.tdo_expected)
)
self.pretty_disasm(p)
def disasm_xsetsdrmasks(self):
p = (
'',
self.format_byte_list(self.address_mask) + ',',
self.format_byte_list(self.data_mask)
)
self.pretty_disasm(p)
def disasm_xsdrinc(self):
p = [
'',
self.format_byte_list(self.xsdrinc_start_address) + ',',
' {:d},'.format(self.xsdrinc_num_times)
]
n = self.xsdrinc_num_times
for l in self.xsdrinc_data_list:
s = self.format_byte_list(l)
n -= 1
# Adds a comma, unless it's the last one
if n:
s += ','
p.append(s)
self.pretty_disasm(p)
def disasm_xsdrb(self):
p = (
'',
self.format_byte_list(self.tdi)
)
self.pretty_disasm(p)
def disasm_xsdrc(self):
p = (
'',
self.format_byte_list(self.tdi)
)
self.pretty_disasm(p)
def disasm_xsdre(self):
p = (
'',
self.format_byte_list(self.tdi)
)
self.pretty_disasm(p)
def disasm_xsdrtdob(self):
p = (
'',
self.format_byte_list(self.tdi) + ',',
self.format_byte_list(self.tdo_expected)
)
self.pretty_disasm(p)
def disasm_xsdrtdoc(self):
p = (
'',
self.format_byte_list(self.tdi) + ',',
self.format_byte_list(self.tdo_expected)
)
self.pretty_disasm(p)
def disasm_xsdrtdoe(self):
p = (
'',
self.format_byte_list(self.tdi) + ',',
self.format_byte_list(self.tdo_expected)
)
self.pretty_disasm(p)
def disasm_xstate(self):
p = (
' {:s}'.format(JTAGTAP.JTAGTAP.state_name(self.next_state)),
)
self.pretty_disasm(p)
def disasm_xendir(self):
p = (
' {:s}'.format(JTAGTAP.JTAGTAP.state_name(self.endir_state)),
)
self.pretty_disasm(p)
def disasm_xenddr(self):
p = (
' {:s}'.format(JTAGTAP.JTAGTAP.state_name(self.enddr_state)),
)
self.pretty_disasm(p)
def disasm_xsir2(self):
p = (
' {:d}'.format(self.sirsize_bits),
self.format_byte_list(self.tdi)
)
self.pretty_disasm(p)
def disasm_xcomment(self):
p = (
' "{:s}"'.format(self.comment),
)
self.pretty_disasm(p)
def disasm_xwait(self):
p = (
' {:s} {:s} {:d}'.format(
JTAGTAP.JTAGTAP.state_name(self.wait_start_state),
JTAGTAP.JTAGTAP.state_name(self.wait_end_state),
self.wait_time_usecs),
)
self.pretty_disasm(p)
#
def instruction_handler(self, instruction):
self.current_instruction = instruction
self._instruction_handlers[instruction]()
def disasm_all_files(self, fd_list):
return self.decode_all_files(fd_list)
================================================
FILE: extras/python/XSVFParser.py
================================================
#! /usr/bin/python3
# coding: utf-8
# ./XSVFAssembler.py > test.xsvf
# ./xsvf -c disasm -n test.xsvf > test.xsvf.s
# ./xsvf -c asm test.xsvf.s > test2.xsvf
import pyparsing as pp
import sys
__all__ = ['parse_xsvf_file']
# Comment
asm_comment = pp.Suppress(pp.Group(';' + pp.restOfLine))
optional_asm_comment = pp.Optional(asm_comment)
xcomment_argument = pp.QuotedString(
quoteChar='"', escQuote='""', multiline=True)
# Hexadecimal integers
zero_ex = pp.Literal('0x') | pp.Literal('0X')
hex_body = pp.Word(pp.hexnums)
hex_number = pp.Combine(zero_ex + hex_body)
hex_byte = pp.Word(pp.hexnums, exact=2)
bin_byte = pp.Word('01', exact=8)
# The order is important here. We must try to match a bin_byte first, otherwise
# '01010101' becomes '01' '01' '01' '01'.
byte_number = bin_byte | hex_byte
# Byte sequences and byte sequence lists
comma = pp.Suppress(pp.Literal(','))
byte_sequence = pp.Group(pp.OneOrMore(byte_number + optional_asm_comment))
byte_sequence_list = \
byte_sequence + \
pp.ZeroOrMore(comma + optional_asm_comment +
byte_sequence)
# The order is important here. We must try to match '0x1ABCD' to hex first
# otherwise it will become '0' 'x'.
integer = hex_number | pp.Word(pp.nums)
# JTAG TAP States
test_logic_reset = pp.Keyword('TEST_LOGIC_RESET')
run_test_idle = pp.Keyword('RUN_TEST_IDLE')
select_dr_scan = pp.Keyword('SELECT_DR_SCAN')
capture_dr = pp.Keyword('CAPTURE_DR')
shift_dr = pp.Keyword('SHIFT_DR')
exit1_dr = pp.Keyword('EXIT1_DR')
pause_dr = pp.Keyword('PAUSE_DR')
exit2_dr = pp.Keyword('EXIT2_DR')
update_dr = pp.Keyword('UPDATE_DR')
select_ir_scan = pp.Keyword('SELECT_IR_SCAN')
capture_ir = pp.Keyword('CAPTURE_IR')
shift_ir = pp.Keyword('SHIFT_IR')
exit1_ir = pp.Keyword('EXIT1_IR')
pause_ir = pp.Keyword('PAUSE_IR')
exit2_ir = pp.Keyword('EXIT2_IR')
update_ir = pp.Keyword('UPDATE_IR')
state = (
test_logic_reset |
run_test_idle |
select_dr_scan |
capture_dr |
shift_dr |
exit1_dr |
pause_dr |
exit2_dr |
update_dr |
select_ir_scan |
capture_ir |
shift_ir |
exit1_ir |
pause_ir |
exit2_ir |
update_ir
)
# Instructions
xcomplete = pp.Group(pp.Keyword('XCOMPLETE'))
xtdomask = pp.Group(pp.Keyword('XTDOMASK') + optional_asm_comment +
byte_sequence)
xsir = pp.Group(pp.Keyword('XSIR') + optional_asm_comment +
integer + optional_asm_comment +
byte_sequence)
xsdr = pp.Group(pp.Keyword('XSDR') + optional_asm_comment +
byte_sequence)
xruntest = pp.Group(pp.Keyword('XRUNTEST') + optional_asm_comment +
integer)
xreserved_5 = pp.Group(pp.Keyword('XRESERVED_5'))
xreserved_6 = pp.Group(pp.Keyword('XRESERVED_6'))
xrepeat = pp.Group(pp.Keyword('XREPEAT') + optional_asm_comment +
integer)
xsdrsize = pp.Group(pp.Keyword('XSDRSIZE') + optional_asm_comment +
integer)
xsdrtdo = pp.Group(pp.Keyword('XSDRTDO') +
byte_sequence + optional_asm_comment +
comma + optional_asm_comment +
byte_sequence)
xsetsdrmasks = pp.Group(pp.Keyword('XSETSDRMASKS') + optional_asm_comment +
byte_sequence + optional_asm_comment +
comma + optional_asm_comment +
byte_sequence)
xsdrinc = pp.Group(pp.Keyword('XSDRINC') + optional_asm_comment +
byte_sequence + optional_asm_comment +
comma + optional_asm_comment +
integer + optional_asm_comment +
comma + optional_asm_comment +
byte_sequence_list)
xsdrb = pp.Group(pp.Keyword('XSDRB') + optional_asm_comment +
byte_sequence)
xsdrc = pp.Group(pp.Keyword('XSDRC') + optional_asm_comment +
byte_sequence)
xsdre = pp.Group(pp.Keyword('XSDRE') + optional_asm_comment +
byte_sequence)
xsdrtdob = pp.Group(pp.Keyword('XSDRTDOB') + optional_asm_comment +
byte_sequence + optional_asm_comment +
comma + optional_asm_comment +
byte_sequence)
xsdrtdoc = pp.Group(pp.Keyword('XSDRTDOC') + optional_asm_comment +
byte_sequence + optional_asm_comment +
comma + optional_asm_comment +
byte_sequence)
xsdrtdoe = pp.Group(pp.Keyword('XSDRTDOE') + optional_asm_comment +
byte_sequence + optional_asm_comment +
comma + optional_asm_comment +
byte_sequence)
xstate = pp.Group(pp.Keyword('XSTATE') + optional_asm_comment +
state)
xendir = pp.Group(pp.Keyword('XENDIR') + optional_asm_comment +
(run_test_idle | pause_ir))
xenddr = pp.Group(pp.Keyword('XENDDR') + optional_asm_comment +
(run_test_idle | pause_dr))
xsir2 = pp.Group(pp.Keyword('XSIR2') + optional_asm_comment +
integer + optional_asm_comment +
byte_sequence)
xcomment = pp.Group(pp.Keyword('XCOMMENT') + optional_asm_comment +
xcomment_argument)
xwait = pp.Group(pp.Keyword('XWAIT') + optional_asm_comment +
state + optional_asm_comment +
state + optional_asm_comment +
integer)
instruction = (
xcomplete |
xtdomask |
xsir |
xsdr |
xruntest |
xreserved_5 |
xreserved_6 |
xrepeat |
xsdrsize |
xsdrtdo |
xsetsdrmasks |
xsdrinc |
xsdrb |
xsdrc |
xsdre |
xsdrtdob |
xsdrtdoc |
xsdrtdoe |
xstate |
xendir |
xenddr |
xsir2 |
xcomment |
xwait
)
# Line
line = asm_comment | (instruction + optional_asm_comment)
# File
xsvf_parser = pp.OneOrMore(line)
def parse_xsvf_file(f):
return xsvf_parser.parseFile(f, parseAll=True)
xsvf_example = """
; XSVF Assembly language example file
;
; All XSVF instructions are used here
XSDRSIZE 48 ; XSDRSIZE must be set for the decoder/disassembler to work
; properly.
XTDOMASK ; Comment test
00 00 00 00 00 00
XSIR 8 00 ; Comment test
XSDR ; Comment test
00 00 00 00 00 00 ; Comment test
XRUNTEST 70
XRESERVED_5
XRESERVED_6
XREPEAT 0x20
XSDRTDO
FF FF FF FF FF FF ; Comment test
, ; Comment test
00 00 00 00 00 00 ; Comment test
XSETSDRMASKS
00 00 00 00 00 00,
FF FF FF FF FF FF
XSDRINC ; Comment test
01010101 ; Comment test in the middle of byte_squence
FF ; Comment test in the middle of byte_squence
10101010 FF 01010101 FF ; Comment test
, ; Comment test after comma
5, ; Comment test
00 00 00 00 00 00, ; Comment test
FF FF FF FF FF FF, ; Comment test
00 00 00 00 00 00, ; Comment test
FF FF FF FF FF FF, ; Comment test
00 00 00 00 00 00 ; Comment test
XSDRB
FF FF FF FF FF FF
XSDRC
FF FF FF FF FF FF
XSDRE
FF FF FF FF FF FF
XSDRTDOB
FF FF FF FF FF FF,
00 00 00 00 00 00
XSDRTDOC
FF FF FF FF FF FF,
00 00 00 00 00 00
XSDRTDOE
FF FF FF FF FF FF,
00 00 00 00 00 00
XSTATE ; Comment test
TEST_LOGIC_RESET
XSTATE RUN_TEST_IDLE
XSTATE SELECT_DR_SCAN
XSTATE CAPTURE_DR
XSTATE SHIFT_DR
XSTATE EXIT1_DR
XSTATE PAUSE_DR
XSTATE EXIT2_DR
XSTATE UPDATE_DR
XSTATE SELECT_IR_SCAN
XSTATE CAPTURE_IR
XSTATE SHIFT_IR
XSTATE EXIT1_IR
XSTATE PAUSE_IR
XSTATE EXIT2_IR
XSTATE UPDATE_IR
XENDIR RUN_TEST_IDLE
XENDIR PAUSE_IR
XENDDR RUN_TEST_IDLE
XENDDR PAUSE_DR
XSIR2 48
00 00 00 00 00 00
XCOMMENT ; Comment test
"adsf f sda asdf sdaf asdf sadf
qwer qwer qwer qwer
zxcv zvcx zxcv c" ; Comment test
; Comment test
XWAIT ; Comment test
TEST_LOGIC_RESET ; Comment test
RUN_TEST_IDLE ; Comment test
100 ; Comment test
XCOMPLETE"""
def main():
print(xsvf_parser.parseString(xsvf_example, parseAll=True))
sys.exit(0)
if __name__ == '__main__':
main()
================================================
FILE: extras/python/asm_disasm_test.sh
================================================
#! /bin/bash
./XSVFAssembler.py > test.xsvf
./xsvf -c disasm -n test.xsvf > test.xsvf.s
./xsvf -c asm test.xsvf.s > test2.xsvf
sha1sum test*.xsvf
================================================
FILE: extras/python/xsvf
================================================
#! /usr/bin/python3
# coding: utf-8
import argparse
import XSVFAssembler
import XSVFDisassembler
import sys
import Uploader
my_parser = argparse.ArgumentParser(
description='XSVF file processor.',
epilog='Parameters can be in a file, one per line, using @"file name"',
fromfile_prefix_chars='@')
my_parser.add_argument(
'-c', '--command',
type=str,
choices=['upload', 'disasm', 'asm'],
default='upload',
help='command to execute.'
' (default=%(default)s)')
my_parser.add_argument(
'fileName',
nargs='+',
type=argparse.FileType('rb'),
help='XSVF file names.'
' (type %(type)s)')
my_parser.add_argument(
'-v', '--version',
action='version',
version='%(prog)s version 1.0.0')
my_parser.add_argument(
'-d', '--debug',
default=2,
type=int,
help='Debug verbosity'
' (type %(type)s, default=%(default)s)')
def main():
error_code = -1
Uploader.Uploader.add_arguments(my_parser)
XSVFDisassembler.XSVFDisassembler.add_arguments(my_parser)
args = my_parser.parse_args()
if args.command == 'upload':
u = Uploader.Uploader(args)
u.upload_all_files(args.fileName)
error_code = u.error_code
elif args.command == 'disasm':
d = XSVFDisassembler.XSVFDisassembler(args)
error_code = d.disasm_all_files(args.fileName)
elif args.command == 'asm':
a = XSVFAssembler.XSVFAssembler(args)
error_code = a.assemble_all_files(args.fileName)
sys.exit(error_code)
if __name__ == '__main__':
main()
================================================
FILE: extras/xsvf/XC2C64A/VHDL-CPLDIntro3LEDinverse.xsvf.s
================================================
XREPEAT 0
XENDIR RUN_TEST_IDLE
XENDDR RUN_TEST_IDLE
XSTATE TEST_LOGIC_RESET
XSTATE RUN_TEST_IDLE
XSIR 8 01
XSDRSIZE 32
XTDOMASK
0F FF 8F FF
XRUNTEST 0
XSDRTDO
00 00 00 00,
F6 E5 F0 93
XSIR 8 FF
XSIR 8 01
XSDRTDO
00 00 00 00,
F6 E5 F0 93
XSIR 8 FF
XSIR 8 E8
XENDIR PAUSE_IR
XSIR 8 ED
XENDIR RUN_TEST_IDLE
XSTATE EXIT2_IR
XSTATE UPDATE_IR
XSTATE SELECT_DR_SCAN
XSTATE CAPTURE_DR
XSTATE EXIT1_DR
XSTATE PAUSE_DR
XWAIT PAUSE_DR PAUSE_DR 20
XSTATE EXIT2_DR
XSTATE UPDATE_DR
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100000
XSTATE SELECT_DR_SCAN
XSTATE CAPTURE_DR
XSTATE EXIT1_DR
XSTATE PAUSE_DR
XWAIT PAUSE_DR PAUSE_DR 5000
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 1
XENDIR PAUSE_IR
XSIR 8 F0
XSTATE EXIT2_IR
XSTATE UPDATE_IR
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20
XENDIR PAUSE_IR
XSIR 8 F0
XSTATE EXIT2_IR
XSTATE UPDATE_IR
XSTATE SELECT_DR_SCAN
XSTATE CAPTURE_DR
XSTATE EXIT1_DR
XSTATE UPDATE_DR
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800
XENDIR RUN_TEST_IDLE
XSIR 8 C0
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSIR 8 C0
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSIR 8 E8
XENDIR PAUSE_IR
XSIR 8 EA
XSDRSIZE 281
XTDOMASK
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XSDRTDO
00 03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XENDIR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 02 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7D,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 82 05 FF FF EF FF FF FF FF FF FF FF FF FF FF FF F9 9E 7F FF FF FF FF FF FF FF FF FF FF FF FF BF FF FE 81,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 83 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 C3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 C0 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 43 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 43 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 60 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 63 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 E3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 E0 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 A3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 A3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 20 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 23 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 33 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 30 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 B3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 B3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 F0 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 F3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 73 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 70 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF E2 47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 53 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 53 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 D0 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 D3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 93 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 90 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 13 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 13 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 18 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 1B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 9B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 98 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 DB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 DB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 58 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 5B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 7B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 78 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 FB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 FB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 B8 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 BB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 3B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 38 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 2B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 2B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 A8 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 AB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 EB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 E8 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 6B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 6B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 48 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 4B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 CB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 C8 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 8B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 8B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 08 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 0B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 0F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 0C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 8F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 8F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 CC F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 CF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 4F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 4C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 6F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 6F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 EC F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 EF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 AF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 AC 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 2F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 2F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 3C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 3F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 BF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 BC 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 FF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 7C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 7F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 5F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 5C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 DF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 DE E1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 9C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 9F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 1F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 1C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
00 17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSDRTDO
01 17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XENDIR PAUSE_IR
XSIR 8 F0
XSTATE EXIT2_IR
XSTATE UPDATE_IR
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20
XENDIR PAUSE_IR
XSIR 8 F0
XSTATE EXIT2_IR
XSTATE UPDATE_IR
XSTATE SELECT_DR_SCAN
XSTATE CAPTURE_DR
XSTATE EXIT1_DR
XSTATE UPDATE_DR
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800
XENDIR RUN_TEST_IDLE
XSIR 8 C0
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSIR 8 C0
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSIR 8 E8
XSIR 8 E8
XENDIR PAUSE_IR
XSIR 8 EE
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
00,
00
XENDIR RUN_TEST_IDLE
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
40,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
02 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7D
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
60,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
02 05 FF FF EF FF FF FF FF FF FF FF FF FF FF FF F9 9E 7F FF FF FF FF FF FF FF FF FF FF FF FF BF FF FE 81
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
20,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
30,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
70,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
50,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
10,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
18,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
58,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
78,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
38,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
28,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
68,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
48,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
08,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
0C,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
4C,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
6C,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
2C,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
3C,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
7C,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
5C,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
1C,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 1F F8 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF E2 47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
14,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 1F 80 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
54,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
74,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
34,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
24,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
64,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
44,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
04,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
06,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
46,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
66,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
26,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
36,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
76,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
56,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
16,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
1E,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
5E,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
7E,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
3E,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
2E,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
6E,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
4E,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
0E,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
0A,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
4A,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
6A,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
2A,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
3A,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
7A,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
5A,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
1A,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
12,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
52,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
72,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
32,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
22,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
62,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
42,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
02,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
03,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
43,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
63,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
23,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
33,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
73,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
53,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
13,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
1B,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
5B,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 07 80 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
7B,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
3B,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
2B,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
6B,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
4B,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
0B,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
0F,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
4F,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
6F,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
2F,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
3F,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
7F,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
5F,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
1F,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
17,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
57,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
77,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
37,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
02 E1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
27,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
67,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
47,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
07,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
05,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XENDDR PAUSE_DR
XSDRSIZE 7
XTDOMASK
00
XSDRTDO
45,
00
XWAIT PAUSE_DR PAUSE_DR 20
XENDDR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSDRSIZE 274
XTDOMASK
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XSDRTDO
03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSIR 8 F0
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20
XENDIR PAUSE_IR
XSIR 8 F0
XSTATE EXIT2_IR
XSTATE UPDATE_IR
XSTATE SELECT_DR_SCAN
XSTATE CAPTURE_DR
XSTATE EXIT1_DR
XSTATE UPDATE_DR
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800
XENDIR RUN_TEST_IDLE
XSIR 8 C0
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSIR 8 E8
XENDIR PAUSE_IR
XSIR 8 EA
XSDRSIZE 281
XTDOMASK
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XSDRTDO
00 17 FD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
XENDIR RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
XSIR 8 F0
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20
XENDIR PAUSE_IR
XSIR 8 F0
XSTATE EXIT2_IR
XSTATE UPDATE_IR
XSTATE SELECT_DR_SCAN
XSTATE CAPTURE_DR
XSTATE EXIT1_DR
XSTATE UPDATE_DR
XSTATE RUN_TEST_IDLE
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800
XENDIR RUN_TEST_IDLE
XSIR 8 C0
XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
XSIR 8 01
XSDRSIZE 32
XTDOMASK
0F FF 8F FF
XSDRTDO
00 00 00 00,
F6 E5 F0 93
XSIR 8 FF
XREPEAT 0
XREPEAT 32
XSTATE TEST_LOGIC_RESET
XSTATE RUN_TEST_IDLE
XRUNTEST 0
XSIR 8 FF
XSDRSIZE 1
XTDOMASK
00
XSDRTDO
00,
00
XCOMPLETE
================================================
FILE: extras/xsvf/XC2C64A/VHDL-CPLDIntro3LEDinverse.xsvf.txt
================================================
07 00 XREPEAT 0
13 00 XENDIR RUN_TEST_IDLE
14 00 XENDDR RUN_TEST_IDLE
12 00 XSTATE TEST_LOGIC_RESET
12 01 XSTATE RUN_TEST_IDLE
02 08 01 XSIR 8 01
08 00 00 00 20 XSDRSIZE 32
01 0F FF 8F FF XTDOMASK
0F FF 8F FF
04 00 00 00 00 XRUNTEST 0
09 00 00 00 00 F6 E5 F0 XSDRTDO
93 00 00 00 00,
F6 E5 F0 93
02 08 FF XSIR 8 FF
02 08 01 XSIR 8 01
09 00 00 00 00 F6 E5 F0 XSDRTDO
93 00 00 00 00,
F6 E5 F0 93
02 08 FF XSIR 8 FF
02 08 E8 XSIR 8 E8
13 01 XENDIR PAUSE_IR
02 08 ED XSIR 8 ED
13 00 XENDIR RUN_TEST_IDLE
12 0E XSTATE EXIT2_IR
12 0F XSTATE UPDATE_IR
12 02 XSTATE SELECT_DR_SCAN
12 03 XSTATE CAPTURE_DR
12 05 XSTATE EXIT1_DR
12 06 XSTATE PAUSE_DR
17 06 06 00 00 00 14 XWAIT PAUSE_DR PAUSE_DR 20
12 07 XSTATE EXIT2_DR
12 08 XSTATE UPDATE_DR
12 01 XSTATE RUN_TEST_IDLE
17 01 01 00 01 86 A0 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100000
12 02 XSTATE SELECT_DR_SCAN
12 03 XSTATE CAPTURE_DR
12 05 XSTATE EXIT1_DR
12 06 XSTATE PAUSE_DR
17 06 06 00 00 13 88 XWAIT PAUSE_DR PAUSE_DR 5000
17 01 01 00 00 00 01 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 1
13 01 XENDIR PAUSE_IR
02 08 F0 XSIR 8 F0
12 0E XSTATE EXIT2_IR
12 0F XSTATE UPDATE_IR
12 01 XSTATE RUN_TEST_IDLE
17 01 01 00 00 00 14 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20
13 01 XENDIR PAUSE_IR
02 08 F0 XSIR 8 F0
12 0E XSTATE EXIT2_IR
12 0F XSTATE UPDATE_IR
12 02 XSTATE SELECT_DR_SCAN
12 03 XSTATE CAPTURE_DR
12 05 XSTATE EXIT1_DR
12 08 XSTATE UPDATE_DR
12 01 XSTATE RUN_TEST_IDLE
17 01 01 00 00 03 20 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800
13 00 XENDIR RUN_TEST_IDLE
02 08 C0 XSIR 8 C0
17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
02 08 C0 XSIR 8 C0
17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
02 08 E8 XSIR 8 E8
13 01 XENDIR PAUSE_IR
02 08 EA XSIR 8 EA
08 00 00 01 19 XSDRSIZE 281
01 00 00 00 00 00 00 00 XTDOMASK
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00
09 00 03 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
13 00 XENDIR RUN_TEST_IDLE
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 02 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 02 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7D,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7D 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 82 05 FF FF EF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 82 05 FF FF EF FF FF FF FF FF FF FF FF FF FF FF F9 9E 7F FF FF FF FF FF FF FF FF FF FF FF FF BF FF FE 81,
FF FF F9 9E 7F FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF BF FF FE 81 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 83 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 83 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 C3 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 C3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 C0 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 C0 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 43 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 43 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 43 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 43 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 60 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 60 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 63 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 63 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 E3 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 E3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 E0 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 E0 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 A3 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 A3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 A3 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 A3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 20 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 20 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 23 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 23 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 33 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 33 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 30 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 30 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 B3 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 B3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 B3 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 B3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 F0 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 F0 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 F3 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 F3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 73 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 73 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 70 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 70 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF E2 47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF E2 47 FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 53 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 53 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 53 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 53 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 D0 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 D0 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 D3 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 D3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 93 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 93 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 90 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 90 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 13 C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 13 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 13 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 13 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 18 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 18 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 1B C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 1B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 9B F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 9B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 98 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 98 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 DB C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 DB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 DB F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 DB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 58 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 58 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 5B C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 5B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 7B F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 7B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 78 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 78 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 FB C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 FB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 FB F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 FB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 B8 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 B8 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 BB C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 BB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 3B F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 3B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 38 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 38 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 2B C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 2B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 2B F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 2B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 A8 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 A8 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 AB C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 AB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 EB F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 EB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 E8 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 E8 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 6B C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 6B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 6B F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 6B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 48 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 48 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 4B C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 4B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 CB F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 CB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 C8 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 C8 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 8B C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 8B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 8B F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 8B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 08 F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 08 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 0B C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 0B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 0F F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 0F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 0C 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 0C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 8F C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 8F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 8F F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 8F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 CC F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 CC F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 CF C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 CF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 4F F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 4F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 4C F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 4C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 6F C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 6F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 6F F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 6F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF F9 FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 EC F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 EC F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 EF C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 EF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 AF F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 AF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 AC 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 AC 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 2F C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 2F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 2F F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 2F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 3C 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 3C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 3F C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 3F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 BF F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 BF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 BC 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 BC 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 FF C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 FF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 FF F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 7C F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 7C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 7F C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 7F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 5F F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 5F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 5C 79 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 5C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 DF C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 DF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 DE E1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 DE E1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 9C F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 9C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 78 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 9F C1 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 9F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 0F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 1F F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 1F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7F 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 1C F9 FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 1C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FE 7C 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 00 17 FF FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 00 17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FF FF 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
09 01 17 FF FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 01 17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,
FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
FF FF FF FF FF FF FF FF
FF FF FF FF FF 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00
17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000
13 01 XENDIR PAUSE_IR
02 08 F0 XSIR 8 F0
12 0E XSTATE EXIT2_IR
12 0F XSTATE UPDATE_IR
12 01 XSTATE RUN_TEST_IDLE
17 01 01 00 00 00 14 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20
13 01 XENDIR PAUSE_IR
02 08 F0 XSIR 8 F0
12 0E XSTATE EXIT2_IR
12 0F XSTATE UPDATE_IR
12 02 XSTATE SELECT_DR_SCAN
12 03 XSTATE CAPTURE_DR
12 05 XSTATE EXIT1_DR
12 08 XSTATE UPDATE_DR
12 01 XSTATE RUN_TEST_IDLE
17 01 01 00 00 03 20 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800
13 00 XENDIR RUN_TEST_IDLE
02 08 C0 XSIR 8 C0
17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
02 08 C0 XSIR 8 C0
17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
02 08 E8 XSIR 8 E8
02 08 E8 XSIR 8 E8
13 01 XENDIR PAUSE_IR
02 08 EE XSIR 8 EE
14 01 XENDDR PAUSE_DR
08 00 00 00 07 XSDRSIZE 7
01 00 XTDOMASK
00
09 00 00 XSDRTDO
00,
00
13 00 XENDIR RUN_TEST_IDLE
17 06 06 00 00 00 14 XWAIT PAUSE_DR PAUSE_DR 20
14 00 XENDDR RUN_TEST_IDLE
17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100
08 00 00 01 12 XSDRSIZE 274
01 03 FF FF FF FF FF FF XTDOMASK
FF FF FF FF FF FF FF FF 03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF
FF FF FF FF
09 03 FF FF FF FF FF FF XSDRTDO
FF FF FF FF FF FF FF FF 03 FF FF FF FF FF FF FF FF FF FF FF FF FF
gitextract_puf82wr0/
├── .gitignore
├── LICENSE
├── README.md
├── examples/
│ └── JTAGTest/
│ └── JTAGTest.ino
├── extras/
│ ├── python/
│ │ ├── JTAGTAP.py
│ │ ├── Uploader.py
│ │ ├── XSVFAssembler.py
│ │ ├── XSVFDecoder.py
│ │ ├── XSVFDisassembler.py
│ │ ├── XSVFParser.py
│ │ ├── asm_disasm_test.sh
│ │ └── xsvf
│ └── xsvf/
│ ├── XC2C64A/
│ │ ├── VHDL-CPLDIntro3LEDinverse.xsvf
│ │ ├── VHDL-CPLDIntro3LEDinverse.xsvf.s
│ │ ├── VHDL-CPLDIntro3LEDinverse.xsvf.txt
│ │ ├── blank_check.xsvf
│ │ ├── erase.svf
│ │ ├── erase.xsvf
│ │ ├── erase.xsvf.txt
│ │ ├── idcode.svf
│ │ ├── idcode.xsvf
│ │ ├── idcode.xsvf.txt
│ │ ├── idcode_simpler.xsvf.txt
│ │ ├── instruction_test.xsvf.s
│ │ └── light_LED.xsvf
│ ├── XC9572XL/
│ │ ├── AlternateLEDsOnButton.xsvf
│ │ ├── DeviceID.txt
│ │ ├── DeviceID.xsvf
│ │ └── ProgramButtonLED.xsvf
│ └── all/
│ ├── idcode_simpler.xsvf
│ └── idcode_simpler.xsvf.s
├── keywords.txt
├── lib/
│ └── readme.txt
├── library.properties
├── platformio.ini
└── src/
├── ArduinoPin.cpp
├── ArduinoPin.h
├── JTAG.h
├── JTAGPort.cpp
├── JTAGPort.h
├── JTAGPortAVR.cpp
├── JTAGPortAVR.h
├── JTAGPortArduino.cpp
├── JTAGPortArduino.h
├── JTAGTAP.cpp
├── JTAGTAP.h
├── PlayXSVF.cpp
├── PlayXSVF.h
├── PlayXSVFJTAGAVR.cpp
├── PlayXSVFJTAGAVR.h
├── PlayXSVFJTAGArduino.cpp
├── PlayXSVFJTAGArduino.h
├── SerialComm.cpp
├── SerialComm.h
├── XSVFPlayer.cpp
├── XSVFPlayer.h
├── XSVFPlayerJTAG.cpp
└── XSVFPlayerJTAG.h
SYMBOL INDEX (222 symbols across 19 files)
FILE: extras/python/JTAGTAP.py
class JTAGTAP (line 4) | class JTAGTAP(object):
method state_name (line 48) | def state_name(n):
FILE: extras/python/Uploader.py
class Uploader (line 16) | class Uploader(object):
method add_arguments (line 26) | def add_arguments(p):
method __init__ (line 42) | def __init__(self, args):
method error_code (line 57) | def error_code(self):
method error_code (line 61) | def error_code(self, value):
method reset_arduino (line 64) | def reset_arduino(self):
method print_lf (line 73) | def print_lf(self):
method initialize_hashes (line 78) | def initialize_hashes(self):
method update_hashes (line 81) | def update_hashes(self, s):
method print_hashes (line 85) | def print_hashes(self):
method upload_one_file (line 93) | def upload_one_file(self, fd):
method upload_all_files (line 146) | def upload_all_files(self, fd_list):
FILE: extras/python/XSVFAssembler.py
class XSVFAssembler (line 15) | class XSVFAssembler(object):
method __init__ (line 22) | def __init__(self, args):
method asm_byte_sequence (line 70) | def asm_byte_sequence(self, l):
method asm_integer (line 78) | def asm_integer(self, s, n):
method asm_state (line 101) | def asm_state(self, state):
method asm_xcomplete (line 105) | def asm_xcomplete(self):
method asm_xtdomask (line 108) | def asm_xtdomask(self):
method asm_xsir (line 111) | def asm_xsir(self):
method asm_xsdr (line 115) | def asm_xsdr(self):
method asm_xruntest (line 118) | def asm_xruntest(self):
method asm_xreserved_5 (line 121) | def asm_xreserved_5(self):
method asm_xreserved_6 (line 124) | def asm_xreserved_6(self):
method asm_xrepeat (line 127) | def asm_xrepeat(self):
method asm_xsdrsize (line 130) | def asm_xsdrsize(self):
method asm_xsdrtdo (line 133) | def asm_xsdrtdo(self):
method asm_xsetsdrmasks (line 137) | def asm_xsetsdrmasks(self):
method asm_xsdrinc (line 141) | def asm_xsdrinc(self):
method asm_xsdrb (line 150) | def asm_xsdrb(self):
method asm_xsdrc (line 153) | def asm_xsdrc(self):
method asm_xsdre (line 156) | def asm_xsdre(self):
method asm_xsdrtdob (line 159) | def asm_xsdrtdob(self):
method asm_xsdrtdoc (line 163) | def asm_xsdrtdoc(self):
method asm_xsdrtdoe (line 167) | def asm_xsdrtdoe(self):
method asm_xstate (line 171) | def asm_xstate(self):
method asm_xendir (line 175) | def asm_xendir(self):
method asm_xenddr (line 179) | def asm_xenddr(self):
method asm_xsir2 (line 183) | def asm_xsir2(self):
method asm_xcomment (line 187) | def asm_xcomment(self):
method asm_xwait (line 191) | def asm_xwait(self):
method assemble_tree (line 196) | def assemble_tree(self, tree):
method assemble_one_file (line 207) | def assemble_one_file(self, fd):
method assemble_all_files (line 211) | def assemble_all_files(self, fd_list):
function main (line 221) | def main():
FILE: extras/python/XSVFDecoder.py
class XSVFDecoder (line 7) | class XSVFDecoder(object):
method num_bytes (line 39) | def num_bytes(n):
method __init__ (line 42) | def __init__(self, args):
method error_code (line 80) | def error_code(self):
method error_code (line 84) | def error_code(self, value):
method next_state (line 88) | def next_state(self):
method next_state (line 93) | def next_state(self, value):
method sirsize_bits (line 97) | def sirsize_bits(self):
method sirsize_bits (line 102) | def sirsize_bits(self, value):
method sirsize_bytes (line 107) | def sirsize_bytes(self):
method sdrsize_bits (line 111) | def sdrsize_bits(self):
method sdrsize_bits (line 116) | def sdrsize_bits(self, value):
method sdrsize_bytes (line 121) | def sdrsize_bytes(self):
method length2_bits (line 125) | def length2_bits(self):
method length2_bits (line 130) | def length2_bits(self, value):
method length2_bytes (line 135) | def length2_bytes(self):
method repeat (line 139) | def repeat(self):
method repeat (line 144) | def repeat(self, value):
method runtest (line 148) | def runtest(self):
method runtest (line 153) | def runtest(self, value):
method endir_state (line 157) | def endir_state(self):
method endir_state (line 162) | def endir_state(self, value):
method enddr_state (line 166) | def enddr_state(self):
method enddr_state (line 171) | def enddr_state(self, value):
method wait_start_state (line 175) | def wait_start_state(self):
method wait_start_state (line 180) | def wait_start_state(self, value):
method wait_end_state (line 184) | def wait_end_state(self):
method wait_end_state (line 189) | def wait_end_state(self, value):
method wait_time_usecs (line 193) | def wait_time_usecs(self):
method wait_time_usecs (line 198) | def wait_time_usecs(self, value):
method xcomplete (line 202) | def xcomplete(self):
method xcomplete (line 207) | def xcomplete(self, value):
method tdi (line 211) | def tdi(self):
method tdi (line 216) | def tdi(self, value):
method tdi (line 220) | def tdi(self):
method tdo (line 224) | def tdo(self):
method tdo (line 229) | def tdo(self, value):
method tdo (line 233) | def tdo(self):
method tdo_mask (line 237) | def tdo_mask(self):
method tdo_mask (line 242) | def tdo_mask(self, value):
method tdo_mask (line 246) | def tdo_mask(self):
method tdo_expected (line 250) | def tdo_expected(self):
method tdo_expected (line 255) | def tdo_expected(self, value):
method tdo_expected (line 259) | def tdo_expected(self):
method address_mask (line 263) | def address_mask(self):
method address_mask (line 268) | def address_mask(self, value):
method address_mask (line 272) | def address_mask(self):
method data_mask (line 276) | def data_mask(self):
method data_mask (line 281) | def data_mask(self, value):
method data_mask (line 285) | def data_mask(self):
method xsdrinc_start_address (line 289) | def xsdrinc_start_address(self):
method xsdrinc_start_address (line 294) | def xsdrinc_start_address(self, value):
method xsdrinc_start_address (line 298) | def xsdrinc_start_address(self):
method xsdrinc_num_times (line 302) | def xsdrinc_num_times(self):
method xsdrinc_num_times (line 307) | def xsdrinc_num_times(self, value):
method xsdrinc_num_times (line 311) | def xsdrinc_num_times(self):
method xsdrinc_data_list (line 315) | def xsdrinc_data_list(self):
method xsdrinc_data_list (line 319) | def xsdrinc_data_list(self, value):
method xsdrinc_data_list (line 323) | def xsdrinc_data_list(self):
method comment (line 327) | def comment(self):
method comment (line 332) | def comment(self, value):
method comment (line 336) | def comment(self):
method instruction_counter (line 340) | def instruction_counter(self):
method instruction_counter (line 345) | def instruction_counter(self, value):
method current_instruction_string (line 349) | def current_instruction_string(self):
method current_instruction_string (line 354) | def current_instruction_string(self, value):
method current_instruction_string (line 358) | def current_instruction_string(self):
method decode_xcomplete (line 365) | def decode_xcomplete(self):
method decode_xtdomask (line 369) | def decode_xtdomask(self):
method decode_xsir (line 373) | def decode_xsir(self):
method decode_xsdr (line 378) | def decode_xsdr(self):
method decode_xruntest (line 382) | def decode_xruntest(self):
method decode_xreserved_5 (line 386) | def decode_xreserved_5(self):
method decode_xreserved_6 (line 389) | def decode_xreserved_6(self):
method decode_xrepeat (line 392) | def decode_xrepeat(self):
method decode_xsdrsize (line 396) | def decode_xsdrsize(self):
method decode_xsdrtdo (line 400) | def decode_xsdrtdo(self):
method decode_xsetsdrmasks (line 405) | def decode_xsetsdrmasks(self):
method decode_xsdrinc (line 419) | def decode_xsdrinc(self):
method decode_xsdrb (line 430) | def decode_xsdrb(self):
method decode_xsdrc (line 434) | def decode_xsdrc(self):
method decode_xsdre (line 438) | def decode_xsdre(self):
method decode_xsdrtdob (line 442) | def decode_xsdrtdob(self):
method decode_xsdrtdoc (line 447) | def decode_xsdrtdoc(self):
method decode_xsdrtdoe (line 452) | def decode_xsdrtdoe(self):
method decode_xstate (line 457) | def decode_xstate(self):
method decode_xendir (line 461) | def decode_xendir(self):
method decode_xenddr (line 474) | def decode_xenddr(self):
method decode_xsir2 (line 487) | def decode_xsir2(self):
method decode_xcomment (line 492) | def decode_xcomment(self):
method decode_xwait (line 500) | def decode_xwait(self):
method instruction_name (line 537) | def instruction_name(instruction):
method instruction_decoder (line 540) | def instruction_decoder(self, instruction):
method instruction_handler (line 543) | def instruction_handler(self, instruction):
method bytes_from_file (line 547) | def bytes_from_file(fd, chunksize=8192):
method private_next_byte (line 557) | def private_next_byte(self):
method get_next_byte (line 564) | def get_next_byte(self):
method get_next_word (line 568) | def get_next_word(self):
method get_next_long (line 573) | def get_next_long(self):
method get_next_bytes (line 580) | def get_next_bytes(self, n):
method decode_one_file (line 587) | def decode_one_file(self, fd):
method decode_all_files (line 603) | def decode_all_files(self, fd_list):
FILE: extras/python/XSVFDisassembler.py
class XSVFDisassembler (line 13) | class XSVFDisassembler(XSVFDecoder.XSVFDecoder):
method add_arguments (line 18) | def add_arguments(p):
method __init__ (line 27) | def __init__(self, args):
method current_instruction (line 59) | def current_instruction(self):
method current_instruction (line 63) | def current_instruction(self, value):
method format_first_part (line 66) | def format_first_part(self, s):
method return_zeroeth (line 80) | def return_zeroeth(self, l):
method format_byte_list (line 91) | def format_byte_list(self, l):
method pretty_disasm (line 94) | def pretty_disasm(self, pars=("",)):
method disasm_xcomplete (line 114) | def disasm_xcomplete(self):
method disasm_xtdomask (line 117) | def disasm_xtdomask(self):
method disasm_xsir (line 124) | def disasm_xsir(self):
method disasm_xsdr (line 132) | def disasm_xsdr(self):
method disasm_xruntest (line 139) | def disasm_xruntest(self):
method disasm_xreserved_5 (line 145) | def disasm_xreserved_5(self):
method disasm_xreserved_6 (line 148) | def disasm_xreserved_6(self):
method disasm_xrepeat (line 151) | def disasm_xrepeat(self):
method disasm_xsdrsize (line 157) | def disasm_xsdrsize(self):
method disasm_xsdrtdo (line 163) | def disasm_xsdrtdo(self):
method disasm_xsetsdrmasks (line 171) | def disasm_xsetsdrmasks(self):
method disasm_xsdrinc (line 179) | def disasm_xsdrinc(self):
method disasm_xsdrb (line 195) | def disasm_xsdrb(self):
method disasm_xsdrc (line 202) | def disasm_xsdrc(self):
method disasm_xsdre (line 209) | def disasm_xsdre(self):
method disasm_xsdrtdob (line 216) | def disasm_xsdrtdob(self):
method disasm_xsdrtdoc (line 224) | def disasm_xsdrtdoc(self):
method disasm_xsdrtdoe (line 232) | def disasm_xsdrtdoe(self):
method disasm_xstate (line 240) | def disasm_xstate(self):
method disasm_xendir (line 246) | def disasm_xendir(self):
method disasm_xenddr (line 252) | def disasm_xenddr(self):
method disasm_xsir2 (line 258) | def disasm_xsir2(self):
method disasm_xcomment (line 265) | def disasm_xcomment(self):
method disasm_xwait (line 271) | def disasm_xwait(self):
method instruction_handler (line 281) | def instruction_handler(self, instruction):
method disasm_all_files (line 285) | def disasm_all_files(self, fd_list):
FILE: extras/python/XSVFParser.py
function parse_xsvf_file (line 177) | def parse_xsvf_file(f):
function main (line 265) | def main():
FILE: src/ArduinoPin.h
function class (line 6) | class ArduinoPin
function class (line 43) | class ArduinoInputPin : public ArduinoPin
function class (line 57) | class ArduinoOutputPin : public ArduinoPin
FILE: src/JTAGPort.h
function class (line 9) | class JTAGPort
FILE: src/JTAGPortAVR.h
function class (line 14) | class JTAGPortAVR : public JTAGPort
FILE: src/JTAGPortArduino.h
function class (line 14) | class JTAGPortArduino : public JTAGPort
FILE: src/JTAGTAP.h
type e_TAPState (line 8) | enum e_TAPState {
function class (line 27) | class JTAGTAP
FILE: src/PlayXSVF.cpp
function printAvailableRAM (line 40) | void printAvailableRAM(Stream &s)
function printAvailableRAM (line 47) | void printAvailableRAM(SerialComm &s)
function availableRAM (line 57) | int availableRAM()
FILE: src/PlayXSVF.h
function class (line 10) | class PlayXSVF
FILE: src/PlayXSVFJTAGAVR.h
function class (line 11) | class PlayXSVFJTAGAVR : public PlayXSVF
FILE: src/PlayXSVFJTAGArduino.h
function class (line 8) | class PlayXSVFJTAGArduino : public PlayXSVF
FILE: src/SerialComm.h
function class (line 9) | class SerialComm
FILE: src/XSVFPlayer.cpp
function __FlashStringHelper (line 103) | const __FlashStringHelper *XSVFPlayer::error_message(int error_code)
function __FlashStringHelper (line 187) | const __FlashStringHelper *XSVFPlayer::instruction_name(uint8_t instruct...
function __FlashStringHelper (line 219) | const __FlashStringHelper *XSVFPlayer::state_name(uint8_t state)
FILE: src/XSVFPlayer.h
function class (line 10) | class XSVFPlayer
function setStringBuffer (line 150) | void setStringBuffer(const __FlashStringHelper *s)
function setNextState (line 170) | void setNextState(uint8_t n) { m_next_state = n; }
function setSirsizeBits (line 173) | void setSirsizeBits(uint16_t n)
function setSdrSizeBits (line 181) | void setSdrSizeBits(uint32_t n)
function setLength2Bits (line 189) | void setLength2Bits(uint32_t n) { m_length2_bits = n; }
function setRepeat (line 194) | void setRepeat(uint8_t n) { m_repeat = n; }
function setRuntest (line 197) | void setRuntest(uint32_t n) { m_runtest = n; }
function setEndirState (line 200) | void setEndirState(uint8_t n) { m_endir_state = n; }
function setEnddrState (line 203) | void setEnddrState(uint8_t n) { m_enddr_state = n; }
function setWaitStartState (line 206) | void setWaitStartState(uint8_t n) { m_wait_start_state = n; }
function setWaitEndState (line 209) | void setWaitEndState(uint8_t n) { m_wait_end_state = n; }
function setWaitTimeUsecs (line 212) | void setWaitTimeUsecs(uint32_t n) { m_wait_time_usecs = n; }
function setXcomplete (line 215) | void setXcomplete(bool n) { m_xcomplete = n; }
function incrementInstructionCounter (line 227) | void incrementInstructionCounter() { ++m_instruction_counter; }
function addStreamSum (line 230) | void addStreamSum(uint8_t n) { m_stream_sum += n; }
function setErrorCode (line 233) | void setErrorCode(int n) { m_error_code = n; }
FILE: src/XSVFPlayerJTAG.h
function class (line 9) | class XSVFPlayerJTAG : public XSVFPlayer
Condensed preview — 58 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (407K chars).
[
{
"path": ".gitignore",
"chars": 351,
"preview": "#\n# Some common rules\n#\n.*\n*.o\n#*.a\n#*.s\n*.ko\n*.so\n*.so.dbg\n*.i\n*.lst\n*.symtypes\n*.gz\n*.bz2\n*.lzma\n*.xz\n*.lz4\n*.lzo\n*.pa"
},
{
"path": "LICENSE",
"chars": 1510,
"preview": "BSD 3-Clause License\n\nCopyright (c) 2015, Marcelo Roberto Jimenez\n\nRedistribution and use in source and binary forms, wi"
},
{
"path": "README.md",
"chars": 8326,
"preview": "# The JTAG Library for Arduino\n\nThis library has four interesting things.\n\nFirst, it is a JTAG test access point (TAP) m"
},
{
"path": "examples/JTAGTest/JTAGTest.ino",
"chars": 1038,
"preview": "#include <JTAG.h>\n\n//\n// The maximum size of the arduino receive buffer is 63 bytes by default.\n// This number can be ch"
},
{
"path": "extras/python/JTAGTAP.py",
"chars": 944,
"preview": "#! /usr/bin/python3\n# coding: utf-8\n\nclass JTAGTAP(object):\n \"\"\"\n\n \"\"\"\n\n # JTAG TAP states\n TEST_LOGIC_RESET"
},
{
"path": "extras/python/Uploader.py",
"chars": 4939,
"preview": "#! /usr/bin/python3\n# coding: utf-8\n\nimport os\nimport string\nimport sys\nimport time\n\ntry:\n import serial\nexcept Impor"
},
{
"path": "extras/python/XSVFAssembler.py",
"chars": 6505,
"preview": "# !/usr/bin/python3\n# coding: utf-8\n\n#\n# example:\n# $ ./XSVFAssembler.py > test.xsvf\n# $ ./xsvf -c disasm -n test.xsvf >"
},
{
"path": "extras/python/XSVFDecoder.py",
"chars": 16130,
"preview": "#! /usr/bin/python3\n# coding: utf-8\n\nimport JTAGTAP\n\n\nclass XSVFDecoder(object):\n \"\"\"\n Decoder\n \"\"\"\n\n # Inst"
},
{
"path": "extras/python/XSVFDisassembler.py",
"chars": 7461,
"preview": "#! /usr/bin/python3\n# coding: utf-8\n\n#\n# example:\n# $ ./xsvf -c disasm ../xsvf/XC2C64A/idcode_simpler.xsvf\n#\n\nimport JTA"
},
{
"path": "extras/python/XSVFParser.py",
"chars": 8143,
"preview": "#! /usr/bin/python3\n# coding: utf-8\n\n# ./XSVFAssembler.py > test.xsvf\n# ./xsvf -c disasm -n test.xsvf > test.xsvf.s\n# ./"
},
{
"path": "extras/python/asm_disasm_test.sh",
"chars": 147,
"preview": "#! /bin/bash\n./XSVFAssembler.py > test.xsvf\n./xsvf -c disasm -n test.xsvf > test.xsvf.s\n./xsvf -c asm test.xsvf.s > test"
},
{
"path": "extras/python/xsvf",
"chars": 1568,
"preview": "#! /usr/bin/python3\n# coding: utf-8\n\nimport argparse\nimport XSVFAssembler\nimport XSVFDisassembler\nimport sys\nimport Uplo"
},
{
"path": "extras/xsvf/XC2C64A/VHDL-CPLDIntro3LEDinverse.xsvf.s",
"chars": 83619,
"preview": "XREPEAT 0\nXENDIR RUN_TEST_IDLE\nXENDDR RUN_TEST_IDLE\nXSTATE TEST_LOGIC_RESET\nXSTATE RUN_TEST_IDLE\nXSIR 8 01\nXSDRSIZE 32\nX"
},
{
"path": "extras/xsvf/XC2C64A/VHDL-CPLDIntro3LEDinverse.xsvf.txt",
"chars": 180044,
"preview": "07 00 XREPEAT 0\n13 00 XENDIR RUN_TEST_IDLE\n14 00 XENDD"
},
{
"path": "extras/xsvf/XC2C64A/erase.svf",
"chars": 1769,
"preview": "// Created using Xilinx Cse Software [ISE - 14.7]\n// Date: Tue Aug 18 17:01:14 2015\n\nTRST OFF;\nENDIR IDLE;\nENDDR IDLE;\nS"
},
{
"path": "extras/xsvf/XC2C64A/erase.xsvf.txt",
"chars": 5994,
"preview": "07 00 XREPEAT 0 \n13 00 XENDIR RUN_"
},
{
"path": "extras/xsvf/XC2C64A/idcode.svf",
"chars": 994,
"preview": "// Created using Xilinx Cse Software [ISE - 14.7]\n// Date: Thu Jul 23 18:41:49 2015\n\nTRST OFF;\nENDIR IDLE;\nENDDR IDLE;\nS"
},
{
"path": "extras/xsvf/XC2C64A/idcode.xsvf.txt",
"chars": 2916,
"preview": "07 00 XREPEAT 0 \n13 00 XENDIR RUN_"
},
{
"path": "extras/xsvf/XC2C64A/idcode_simpler.xsvf.txt",
"chars": 288,
"preview": "12 00 XSTATE TEST_LOGIC_RESET\n08 00 00 00 20 XSDRSIZE 32\n01 00 00 00 00 "
},
{
"path": "extras/xsvf/XC2C64A/instruction_test.xsvf.s",
"chars": 2122,
"preview": "; XSVF Assembly language example file\n;\n; All XSVF instructions are used here\n\nXSDRSIZE 48 ; XSDRSIZE must be set for th"
},
{
"path": "extras/xsvf/XC9572XL/DeviceID.txt",
"chars": 1199,
"preview": "07 20 ...................... XREPEAT, 0x20 times\n12 00 ...................... XSTATE Test-Logic-Reset\n12 01 ............"
},
{
"path": "extras/xsvf/all/idcode_simpler.xsvf.s",
"chars": 92,
"preview": "XSTATE TEST_LOGIC_RESET\nXSDRSIZE 32\nXTDOMASK\n 00 00 00 00\nXSDR\n 00 00 00 00\nXCOMPLETE\n"
},
{
"path": "keywords.txt",
"chars": 1528,
"preview": "########################################\n# Syntax Coloring Map\n########################################\n\n###############"
},
{
"path": "lib/readme.txt",
"chars": 868,
"preview": "\nThis directory is intended for the project specific (private) libraries.\nPlatformIO will compile them to static librari"
},
{
"path": "library.properties",
"chars": 379,
"preview": "name=JTAG\nversion=1.0.18\nauthor=Marcelo Jimenez <marcelo.jimenez@gmail.com>\nmaintainer=Marcelo Jimenez <marcelo.jimenez@"
},
{
"path": "platformio.ini",
"chars": 865,
"preview": "; PlatformIO Project Configuration File\n;\n; Build options: build flags, source filter\n; Upload options: custom uploa"
},
{
"path": "src/ArduinoPin.cpp",
"chars": 501,
"preview": "#include \"ArduinoPin.h\"\n\n#include <Arduino.h>\n\nArduinoPin::ArduinoPin(uint8_t pin, uint8_t mode)\n: m_bit(0)\n, m_port(0)\n"
},
{
"path": "src/ArduinoPin.h",
"chars": 1418,
"preview": "#ifndef ARDUINOPIN_H\n#define ARDUINOPIN_H\n\n#include <inttypes.h>\n\nclass ArduinoPin\n{\nprivate:\n\tuint8_t m_bit;\n\tuint8_t m"
},
{
"path": "src/JTAG.h",
"chars": 117,
"preview": "#ifndef JTAG_H\n#define JTAG_H\n\n#include \"PlayXSVFJTAGArduino.h\"\n// #include \"PlayXSVFJTAGAVR.h\"\n\n#endif /* JTAG_H */\n"
},
{
"path": "src/JTAGPort.cpp",
"chars": 22,
"preview": "#include \"JTAGPort.h\"\n"
},
{
"path": "src/JTAGPort.h",
"chars": 527,
"preview": "#ifndef JTAGPORT_H\n#define JTAGPORT_H\n\n/*\n * Making this class virtual makes the code bigger (18 bytes) and slower. But\n"
},
{
"path": "src/JTAGPortAVR.cpp",
"chars": 25,
"preview": "#include \"JTAGPortAVR.h\"\n"
},
{
"path": "src/JTAGPortAVR.h",
"chars": 1372,
"preview": "#ifdef ARDUINO_ARCH_AVR\n\n\t#ifndef JTAGPORTAVR_H\n\t\t#define JTAGPORTAVR_H\n\n\t\t#include \"JTAGPort.h\"\n\n\t\t#include <Arduino.h>"
},
{
"path": "src/JTAGPortArduino.cpp",
"chars": 292,
"preview": "#include \"JTAGPortArduino.h\"\n\nJTAGPortArduino::JTAGPortArduino(uint8_t tms, uint8_t tdi, uint8_t tdo,\n\t\t\t\t uint8_t tck, "
},
{
"path": "src/JTAGPortArduino.h",
"chars": 1470,
"preview": "#ifndef JTAGPORTARDUINO_H\n#define JTAGPORTARDUINO_H\n\n#include \"JTAGPort.h\"\n\n#include <Arduino.h>\n\n#include \"ArduinoPin.h"
},
{
"path": "src/JTAGTAP.cpp",
"chars": 7942,
"preview": "\n#include \"JTAGTAP.h\"\n\n/*\n * Low nibble : TMS == 0\n * High nibble: TMS == 1\n */\n\n#define TMS_T(TMS_HIGH_STATE, TMS_LOW_S"
},
{
"path": "src/JTAGTAP.h",
"chars": 1287,
"preview": "\n#ifndef JTAGTAP_H\n#define JTAGTAP_H\n\n#include \"JTAGPort.h\"\n#include \"SerialComm.h\"\n\nenum e_TAPState {\n\tSTATE_TEST_LOGIC"
},
{
"path": "src/PlayXSVF.cpp",
"chars": 1369,
"preview": "\n#include \"PlayXSVF.h\"\n\n#include \"SerialComm.h\"\n#include \"XSVFPlayer.h\"\n\nint PlayXSVF::play()\n{\n\tSerialComm &s(serialCom"
},
{
"path": "src/PlayXSVF.h",
"chars": 421,
"preview": "\n#ifndef PLAYXSVF_H\n#define PLAYXSVF_H\n\n#include <Arduino.h> // for Stream\n\nclass SerialComm;\nclass XSVFPlayer;\n\nclass P"
},
{
"path": "src/PlayXSVFJTAGAVR.cpp",
"chars": 265,
"preview": "#ifdef ARDUINO_ARCH_AVR\n\n#include \"PlayXSVFJTAGAVR.h\"\n\nPlayXSVFJTAGAVR::PlayXSVFJTAGAVR(Stream &s, int stream_buffer_siz"
},
{
"path": "src/PlayXSVFJTAGAVR.h",
"chars": 684,
"preview": "#ifdef ARDUINO_ARCH_AVR\n\n#ifndef PLAYXSVFJTAGAVR_H\n#define PLAYXSVFJTAGAVR_H\n\n#include \"JTAGPortAVR.h\"\n#include \"PlayXSV"
},
{
"path": "src/PlayXSVFJTAGArduino.cpp",
"chars": 370,
"preview": "\n#include \"PlayXSVFJTAGArduino.h\"\n\nPlayXSVFJTAGArduino::PlayXSVFJTAGArduino(Stream &s, int stream_buffer_size,\n\t\t\t\t\t uin"
},
{
"path": "src/PlayXSVFJTAGArduino.h",
"chars": 776,
"preview": "#ifndef PLAYXSVFJTAGARDUINO_H\n#define PLAYXSVFJTAGARDUINO_H\n\n#include \"JTAGPortArduino.h\"\n#include \"PlayXSVF.h\"\n#include"
},
{
"path": "src/SerialComm.cpp",
"chars": 6678,
"preview": "\n#include \"SerialComm.h\"\n\n#ifdef __AVR__\n#define PLATFORM_VSNPRINTF(...) vsnprintf_P(__VA_ARGS__)\n#else\n#define PLATFORM"
},
{
"path": "src/SerialComm.h",
"chars": 2180,
"preview": "\n#ifndef SERIALCOMM_H\n#define SERIALCOMM_H\n\n#include <Arduino.h>\n\n#define DEBUG 0\n\nclass SerialComm\n{\nprivate:\n\tstatic c"
},
{
"path": "src/XSVFPlayer.cpp",
"chars": 10111,
"preview": "\n#include \"XSVFPlayer.h\"\n\n// clang-format off\n#define ERR_MSG(x,y) case x: { ret = y; break; }\n#define NAME_FOR(x) case "
},
{
"path": "src/XSVFPlayer.h",
"chars": 7809,
"preview": "\n#ifndef JTAGWHISPERER_H\n#define JTAGWHISPERER_H\n\n#include \"JTAGTAP.h\"\n#include \"SerialComm.h\"\n\n#define IMPLEMENT_XSDRIN"
},
{
"path": "src/XSVFPlayerJTAG.cpp",
"chars": 4912,
"preview": "\n#include \"XSVFPlayerJTAG.h\"\n\nXSVFPlayerJTAG::XSVFPlayerJTAG(SerialComm &s, JTAGPort &j)\n: XSVFPlayer(s)\n, m_serial_comm"
},
{
"path": "src/XSVFPlayerJTAG.h",
"chars": 1625,
"preview": "\n#ifndef XSVFPLAYERJTAG_H\n#define XSVFPLAYERJTAG_H\n\n#include \"JTAGTAP.h\"\n#include \"SerialComm.h\"\n#include \"XSVFPlayer.h\""
}
]
// ... and 9 more files (download for full content)
About this extraction
This page contains the full source code of the mrjimenez/JTAG GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 58 files (382.7 KB), approximately 142.9k tokens, and a symbol index with 222 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.