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 // // 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 40 00 XSDRTDO 40, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 60 00 XSDRTDO 60, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 20 00 XSDRTDO 20, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 30 00 XSDRTDO 30, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 70 00 XSDRTDO 70, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 50 00 XSDRTDO 50, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 10 00 XSDRTDO 10, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 18 00 XSDRTDO 18, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 58 00 XSDRTDO 58, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 78 00 XSDRTDO 78, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 38 00 XSDRTDO 38, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 28 00 XSDRTDO 28, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 68 00 XSDRTDO 68, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 48 00 XSDRTDO 48, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 08 00 XSDRTDO 08, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 0C 00 XSDRTDO 0C, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 4C 00 XSDRTDO 4C, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 6C 00 XSDRTDO 6C, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 2C 00 XSDRTDO 2C, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 3C 00 XSDRTDO 3C, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 7C 00 XSDRTDO 7C, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 5C 00 XSDRTDO 5C, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 1C 00 XSDRTDO 1C, 00 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 FE 00 1F F8 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 14 00 XSDRTDO 14, 00 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 FE 00 1F 80 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 54 00 XSDRTDO 54, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 74 00 XSDRTDO 74, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 34 00 XSDRTDO 34, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 24 00 XSDRTDO 24, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 64 00 XSDRTDO 64, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 44 00 XSDRTDO 44, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 04 00 XSDRTDO 04, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 06 00 XSDRTDO 06, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 46 00 XSDRTDO 46, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 66 00 XSDRTDO 66, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 26 00 XSDRTDO 26, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 36 00 XSDRTDO 36, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 76 00 XSDRTDO 76, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 56 00 XSDRTDO 56, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 16 00 XSDRTDO 16, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 1E 00 XSDRTDO 1E, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 5E 00 XSDRTDO 5E, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 7E 00 XSDRTDO 7E, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 3E 00 XSDRTDO 3E, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 2E 00 XSDRTDO 2E, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 6E 00 XSDRTDO 6E, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 4E 00 XSDRTDO 4E, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 0E 00 XSDRTDO 0E, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 0A 00 XSDRTDO 0A, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 4A 00 XSDRTDO 4A, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 6A 00 XSDRTDO 6A, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 2A 00 XSDRTDO 2A, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 3A 00 XSDRTDO 3A, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 7A 00 XSDRTDO 7A, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 5A 00 XSDRTDO 5A, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 1A 00 XSDRTDO 1A, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 12 00 XSDRTDO 12, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 52 00 XSDRTDO 52, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 72 00 XSDRTDO 72, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 32 00 XSDRTDO 32, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 22 00 XSDRTDO 22, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 62 00 XSDRTDO 62, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 42 00 XSDRTDO 42, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 02 00 XSDRTDO 02, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 03 00 XSDRTDO 03, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 43 00 XSDRTDO 43, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 63 00 XSDRTDO 63, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 23 00 XSDRTDO 23, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 33 00 XSDRTDO 33, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 73 00 XSDRTDO 73, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 53 00 XSDRTDO 53, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 13 00 XSDRTDO 13, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 1B 00 XSDRTDO 1B, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 5B 00 XSDRTDO 5B, 00 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 FE 00 07 80 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 7B 00 XSDRTDO 7B, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 3B 00 XSDRTDO 3B, 00 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 FE 00 00 00 01 FF 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 2B 00 XSDRTDO 2B, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 6B 00 XSDRTDO 6B, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 4B 00 XSDRTDO 4B, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 0B 00 XSDRTDO 0B, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 0F 00 XSDRTDO 0F, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 4F 00 XSDRTDO 4F, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 6F 00 XSDRTDO 6F, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 2F 00 XSDRTDO 2F, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 3F 00 XSDRTDO 3F, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 7F 00 XSDRTDO 7F, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 5F 00 XSDRTDO 5F, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 1F 00 XSDRTDO 1F, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 17 00 XSDRTDO 17, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 57 00 XSDRTDO 57, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 77 00 XSDRTDO 77, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 37 00 XSDRTDO 37, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 27 00 XSDRTDO 27, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 67 00 XSDRTDO 67, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 47 00 XSDRTDO 47, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 07 00 XSDRTDO 07, 00 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 05 00 XSDRTDO 05, 00 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 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 14 01 XENDDR PAUSE_DR 08 00 00 00 07 XSDRSIZE 7 01 00 XTDOMASK 00 09 45 00 XSDRTDO 45, 00 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 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 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 FF FF FF FF FF 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 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 17 01 01 00 00 00 64 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100 02 08 F0 XSIR 8 F0 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 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 17 FD FF FF FF FF XSDRTDO FF FF FF FF FF FF FF FF 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, 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 13 00 XENDIR RUN_TEST_IDLE 17 01 01 00 00 27 10 XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000 02 08 F0 XSIR 8 F0 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 01 XSIR 8 01 08 00 00 00 20 XSDRSIZE 32 01 0F FF 8F FF XTDOMASK 0F FF 8F FF 09 00 00 00 00 F6 E5 F0 XSDRTDO 93 00 00 00 00, F6 E5 F0 93 02 08 FF XSIR 8 FF 07 00 XREPEAT 0 07 20 XREPEAT 32 12 00 XSTATE TEST_LOGIC_RESET 12 01 XSTATE RUN_TEST_IDLE 04 00 00 00 00 XRUNTEST 0 02 08 FF XSIR 8 FF 08 00 00 00 01 XSDRSIZE 1 01 00 XTDOMASK 00 09 00 00 XSDRTDO 00, 00 00 XCOMPLETE ================================================ FILE: extras/xsvf/XC2C64A/erase.svf ================================================ // Created using Xilinx Cse Software [ISE - 14.7] // Date: Tue Aug 18 17:01:14 2015 TRST OFF; ENDIR IDLE; ENDDR IDLE; STATE RESET; STATE IDLE; FREQUENCY 1E6 HZ; //Operation: Erase -p 0 TIR 0 ; HIR 0 ; TDR 0 ; HDR 0 ; TIR 0 ; HIR 0 ; HDR 0 ; TDR 0 ; //Loading device with 'idcode' instruction. SIR 8 TDI (01) SMASK (ff) ; SDR 32 TDI (00000000) SMASK (ffffffff) TDO (f6e5f093) MASK (0fff8fff) ; //Check for Read/Write Protect. SIR 8 TDI (ff) TDO (01) MASK (03) ; //Boundary Scan Chain Contents //Position 1: xc2c64a TIR 0 ; HIR 0 ; TDR 0 ; HDR 0 ; TIR 0 ; HIR 0 ; TDR 0 ; HDR 0 ; TIR 0 ; HIR 0 ; HDR 0 ; TDR 0 ; //Loading device with 'idcode' instruction. SIR 8 TDI (01) ; SDR 32 TDI (00000000) TDO (f6e5f093) ; //Check for Read/Write Protect. SIR 8 TDI (ff) TDO (01) MASK (03) ; TIR 0 ; HIR 0 ; HDR 0 ; TDR 0 ; // Loading devices with 'enable' or 'bypass' instruction. SIR 8 TDI (e8) ; // Loading devices with 'erase' or 'bypass' instruction. ENDIR IRPAUSE; SIR 8 TDI (ed) SMASK (ff) ; ENDIR IDLE; STATE IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRPAUSE; RUNTEST DRPAUSE 20 TCK; STATE IDLE; RUNTEST IDLE 100000 TCK; STATE DRPAUSE; RUNTEST DRPAUSE 5000 TCK; RUNTEST IDLE 1 TCK; // Loading devices with 'init' or 'bypass' instruction. ENDIR IRPAUSE; SIR 8 TDI (f0) SMASK (ff) ; STATE IDLE; RUNTEST IDLE 20 TCK; // Loading devices with 'init' or 'bypass' instruction. ENDIR IRPAUSE; SIR 8 TDI (f0) SMASK (ff) ; STATE IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRUPDATE IDLE; RUNTEST 800 TCK; ENDIR IDLE; // Loading devices with 'conld' or 'bypass' instruction. SIR 8 TDI (c0) ; RUNTEST 100 TCK; // Loading devices with 'conld' or 'bypass' instruction. SIR 8 TDI (c0) ; RUNTEST 100 TCK; TIR 0 ; HIR 0 ; TDR 0 ; HDR 0 ; SIR 8 TDI (ff) ; SDR 1 TDI (00) SMASK (01) ; ================================================ FILE: extras/xsvf/XC2C64A/erase.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 07 00 XREPEAT 0 07 20 XREPEAT 32 12 00 XSTATE TEST_LOGIC_RESET 12 01 XSTATE RUN_TEST_IDLE 04 00 00 00 00 XRUNTEST 0 02 08 FF XSIR 8 FF 08 00 00 00 01 XSDRSIZE 1 01 00 XTDOMASK 00 09 00 00 XSDRTDO 00 00 00 XCOMPLETE ================================================ FILE: extras/xsvf/XC2C64A/idcode.svf ================================================ // Created using Xilinx Cse Software [ISE - 14.7] // Date: Thu Jul 23 18:41:49 2015 TRST OFF; ENDIR IDLE; ENDDR IDLE; STATE RESET; STATE IDLE; FREQUENCY 1E6 HZ; //Operation: ReadIdcode -p 0 TIR 0 ; HIR 0 ; TDR 0 ; HDR 0 ; TIR 0 ; HIR 0 ; HDR 0 ; TDR 0 ; //Loading device with 'idcode' instruction. SIR 8 TDI (01) SMASK (ff) ; SDR 32 TDI (00000000) SMASK (ffffffff) TDO (f6e5f093) MASK (0fff8fff) ; //Check for Read/Write Protect. SIR 8 TDI (ff) TDO (01) MASK (03) ; //Boundary Scan Chain Contents //Position 1: xc2c64a TIR 0 ; HIR 0 ; TDR 0 ; HDR 0 ; TIR 0 ; HIR 0 ; TDR 0 ; HDR 0 ; TIR 0 ; HIR 0 ; HDR 0 ; TDR 0 ; //Loading device with 'idcode' instruction. SIR 8 TDI (01) ; SDR 32 TDI (00000000) TDO (f6e5f093) ; //Check for Read/Write Protect. SIR 8 TDI (ff) TDO (01) MASK (03) ; //Loading device with 'idcode' instruction. SIR 8 TDI (01) ; SDR 32 TDI (00000000) TDO (f6e5f093) ; TIR 0 ; HIR 0 ; HDR 0 ; TDR 0 ; TIR 0 ; HIR 0 ; TDR 0 ; HDR 0 ; SIR 8 TDI (ff) ; SDR 1 TDI (00) SMASK (01) ; ================================================ FILE: extras/xsvf/XC2C64A/idcode.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 01 XSIR 8 01 09 00 00 00 00 F6 E5 F0 XSDRTDO 93 00 00 00 00 F6 E5 F0 93 07 00 XREPEAT 0 07 20 XREPEAT 32 12 00 XSTATE TEST_LOGIC_RESET 12 01 XSTATE RUN_TEST_IDLE 04 00 00 00 00 XRUNTEST 0 02 08 FF XSIR 8 FF 08 00 00 00 01 XSDRSIZE 1 01 00 XTDOMASK 00 09 00 00 XSDRTDO 00 00 00 XCOMPLETE ================================================ FILE: extras/xsvf/XC2C64A/idcode_simpler.xsvf.txt ================================================ 12 00 XSTATE TEST_LOGIC_RESET 08 00 00 00 20 XSDRSIZE 32 01 00 00 00 00 XTDOMASK 00 00 00 00 03 00 00 00 00 XSDR 00 00 00 00 00 XCOMPLETE ================================================ FILE: extras/xsvf/XC2C64A/instruction_test.xsvf.s ================================================ ; 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 ================================================ FILE: extras/xsvf/XC9572XL/DeviceID.txt ================================================ 07 20 ...................... XREPEAT, 0x20 times 12 00 ...................... XSTATE Test-Logic-Reset 12 01 ...................... XSTATE Run-Test/Idle 04 00 00 00 00 ............. XRUNTEST 02 08 fe ................... XSIR, 8 bits, value 0xfe 08 00 00 00 20 ............. XSDRSIZE 32 bits 01 0f ff ff ff ............. XTDOMASK 09 00 00 00 00 f9 60 40 93 . XSDRTDO, TDI 00000000 TDO f9604093 02 08 ff ................... XSIR, 8 bits, value 0xff 02 08 fe ................... XSIR, 8 bits, value 0xfe 09 00 00 00 00 f9 60 40 93 : XSDRTDO, TDI 00000000 TDO f9604093 02 08 ff ................... XSIR, 8 bits, value 0xff 02 08 fe ................... XSIR, 8 bits, value 0xfe 09 00 00 00 00 f9 60 40 93 . XSDRTDO, TDI 00000000 TDO f9604093 07 00 ...................... XREPEAT, 0 times 07 20 ...................... XREPEAT, 0x20 times 12 00 ...................... XSTATE Test-Logic-Reset 12 01 ...................... XSTATE Run-Test/Idle 04 00 00 00 00 ............. XRUNTEST 02 08 ff ................... XSIR, 8 bits, value 0xff 08 00 00 00 01 ............. XSDRSIZE 1 bit 01 00 ...................... TDOMASK 0 09 00 00 ................... XSDRTDO, TDI 0, TDO 0 00 ......................... XCOMPLETE ================================================ FILE: extras/xsvf/all/idcode_simpler.xsvf.s ================================================ XSTATE TEST_LOGIC_RESET XSDRSIZE 32 XTDOMASK 00 00 00 00 XSDR 00 00 00 00 XCOMPLETE ================================================ FILE: keywords.txt ================================================ ######################################## # Syntax Coloring Map ######################################## ######################################## # Datatypes (KEYWORD1) ######################################## JTAGPort KEYWORD1 JTAGPortAVR KEYWORD1 JTAGPortArduino KEYWORD1 JTAGTAP KEYWORD1 PlayXSVF KEYWORD1 PlayXSVFJTAGArduino KEYWORD1 PlayXSVFJTAGAVR KEYWORD1 SerialComm KEYWORD1 XSVFPlayerJTAG KEYWORD1 ######################################## # Methods and Functions (KEYWORD2) ######################################## play KEYWORD2 printAvailableRAM KEYWORD2 Important KEYWORD2 ImportantBits KEYWORD2 Quit KEYWORD2 print_bytes KEYWORD2 handle_next_instruction KEYWORD2 reached_xcomplete KEYWORD2 last_dr_size_bits KEYWORD2 last_dr_size_bytes KEYWORD2 last_tdo KEYWORD2 print_last_tdo KEYWORD2 shift_td KEYWORD2 state_goto KEYWORD2 wait_time KEYWORD2 pulse_clock KEYWORD2 pulse_clock_and_read_tdo KEYWORD2 set_tms KEYWORD2 clr_tms KEYWORD2 set_tdi KEYWORD2 clr_tdi KEYWORD2 read_vref KEYWORD2 ######################################## # Constants (LITERAL1) ######################################## STATE_TEST_LOGIC_RESET LITERAL1 STATE_RUN_TEST_IDLE LITERAL1 STATE_SELECT_DR_SCAN LITERAL1 STATE_CAPTURE_DR LITERAL1 STATE_SHIFT_DR LITERAL1 STATE_EXIT1_DR LITERAL1 STATE_PAUSE_DR LITERAL1 STATE_EXIT2_DR LITERAL1 STATE_UPDATE_DR LITERAL1 STATE_SELECT_IR_SCAN LITERAL1 STATE_CAPTURE_IR LITERAL1 STATE_SHIFT_IR LITERAL1 STATE_EXIT1_IR LITERAL1 STATE_PAUSE_IR LITERAL1 STATE_EXIT2_IR LITERAL1 STATE_UPDATE_IR LITERAL1 ================================================ FILE: lib/readme.txt ================================================ This directory is intended for the project specific (private) libraries. PlatformIO will compile them to static libraries and link to executable file. The source code of each library should be placed in separate directory, like "lib/private_lib/[here are source files]". For example, see how can be organized `Foo` and `Bar` libraries: |--lib | |--Bar | | |--docs | | |--examples | | |--src | | |- Bar.c | | |- Bar.h | |--Foo | | |- Foo.c | | |- Foo.h | |- readme.txt --> THIS FILE |- platformio.ini |--src |- main.c Then in `src/main.c` you should use: #include #include // rest H/C/CPP code PlatformIO will find your libraries automatically, configure preprocessor's include paths and build them. More information about PlatformIO Library Dependency Finder - http://docs.platformio.org/page/librarymanager/ldf.html ================================================ FILE: library.properties ================================================ name=JTAG version=1.0.18 author=Marcelo Jimenez maintainer=Marcelo Jimenez sentence=A library to perform JTAG operations and play XSVF. paragraph=This library is an API to perform JTAG operations and play XSVF files. category=Device Control url=https://github.com/mrjimenez/JTAG architectures=avr,esp8266,esp32,renesas_uno ================================================ FILE: platformio.ini ================================================ ; PlatformIO Project Configuration File ; ; Build options: build flags, source filter ; Upload options: custom upload port, speed and extra flags ; Library options: dependencies, extra library storages ; Advanced options: extra scripting ; ; Please visit documentation for the other options and examples ; http://docs.platformio.org/page/projectconf.html [platformio] ;env_default = uno ;env_default = esp01 ;env_default = esp32dev ;env_default = uno, esp01, esp32dev src_dir = examples/JTAGTest lib_dir=.. [env:uno] platform = atmelavr board = uno framework = arduino build_flags = ${common.build_flags} [env:esp01] platform = espressif8266 board = esp01 framework = arduino build_flags = ${common.build_flags} [env:esp32dev] platform = espressif32 board = esp32dev framework = arduino build_flags = ${common.build_flags} [common] build_flags = -Isrc ================================================ FILE: src/ArduinoPin.cpp ================================================ #include "ArduinoPin.h" #include ArduinoPin::ArduinoPin(uint8_t pin, uint8_t mode) : m_bit(0) , m_port(0) , m_pin(pin) , m_mode(mode) { setBit(digitalPinToBitMask(pin)); setPort(digitalPinToPort(pin)); pinMode(ArduinoPin::pin(), ArduinoPin::mode()); } ArduinoInputPin::ArduinoInputPin(uint8_t pin) : ArduinoPin(pin, INPUT_PULLUP) , m_in(portInputRegister(port())) { } ArduinoOutputPin::ArduinoOutputPin(uint8_t pin) : ArduinoPin(pin, OUTPUT) , m_out(portOutputRegister(port())) { } ================================================ FILE: src/ArduinoPin.h ================================================ #ifndef ARDUINOPIN_H #define ARDUINOPIN_H #include class ArduinoPin { private: uint8_t m_bit; uint8_t m_port; void setBit(uint8_t n) { m_bit = n; } void setPort(uint8_t n) { m_port = n; } uint8_t m_pin; uint8_t m_mode; protected: uint8_t getBit() const { return m_bit; } uint8_t port() const { return m_port; } public: ArduinoPin(uint8_t pin, uint8_t mode); ~ArduinoPin() {} uint8_t pin() const { return m_pin; } uint8_t mode() const { return m_mode; } }; #ifdef ARDUINO_ARCH_AVR #define GPIO_REGISTER_TYPE uint8_t #elif defined ARDUINO_ARCH_ESP8266 #define GPIO_REGISTER_TYPE uint32_t #elif defined ARDUINO_ARCH_ESP32 #define GPIO_REGISTER_TYPE uint32_t #elif defined ARDUINO_ARCH_RENESAS #define GPIO_REGISTER_TYPE uint16_t #else #define GPIO_REGISTER_TYPE uint8_t #endif class ArduinoInputPin : public ArduinoPin { private: const volatile GPIO_REGISTER_TYPE *m_in; const volatile GPIO_REGISTER_TYPE *in() const { return m_in; } public: ArduinoInputPin(uint8_t pin); ~ArduinoInputPin() {} uint8_t read() const { return *in() & getBit(); } }; class ArduinoOutputPin : public ArduinoPin { private: volatile GPIO_REGISTER_TYPE *m_out; volatile GPIO_REGISTER_TYPE *out() const { return m_out; } public: ArduinoOutputPin(uint8_t pin); ~ArduinoOutputPin() {} void clr() const { *out() &= ~getBit(); } void set() const { *out() |= getBit(); } }; #endif // ARDUINOPIN_H ================================================ FILE: src/JTAG.h ================================================ #ifndef JTAG_H #define JTAG_H #include "PlayXSVFJTAGArduino.h" // #include "PlayXSVFJTAGAVR.h" #endif /* JTAG_H */ ================================================ FILE: src/JTAGPort.cpp ================================================ #include "JTAGPort.h" ================================================ FILE: src/JTAGPort.h ================================================ #ifndef JTAGPORT_H #define JTAGPORT_H /* * Making this class virtual makes the code bigger (18 bytes) and slower. But * it is the right thing to do if we want to reuse the code in a non-messy way. */ class JTAGPort { public: JTAGPort() {} virtual ~JTAGPort() {} virtual void pulse_clock() = 0; virtual bool pulse_clock_and_read_tdo() = 0; virtual void set_tms() = 0; virtual void clr_tms() = 0; virtual void set_tdi() = 0; virtual void clr_tdi() = 0; virtual bool read_vref() const = 0; }; #endif // JTAGPORT_H ================================================ FILE: src/JTAGPortAVR.cpp ================================================ #include "JTAGPortAVR.h" ================================================ FILE: src/JTAGPortAVR.h ================================================ #ifdef ARDUINO_ARCH_AVR #ifndef JTAGPORTAVR_H #define JTAGPORTAVR_H #include "JTAGPort.h" #include /* * This is a faster version of the JTAGPort, but requires a fixed pin * assignment. */ class JTAGPortAVR : public JTAGPort { private: enum { TMS = _BV(PINB0), // Arduino pin 8 TDI = _BV(PINB1), // Arduino pin 9 TDO = _BV(PINB2), // Arduino pin 10 TCK = _BV(PINB3), // Arduino pin 11 VREF = _BV(PINB4) // Arduino pin 12 }; // The current PORTB state. We write this only when we twiddle TCK. uint8_t m_portb; public: JTAGPortAVR() : m_portb(0) { DDRB = TMS | TDI | TCK; } ~JTAGPortAVR() {} void pulse_clock() { clr_port(TCK); delayMicroseconds(1); set_port(TCK); } bool pulse_clock_and_read_tdo() { clr_port(TCK); delayMicroseconds(1); uint8_t pinb = PINB; set_port(TCK); return pinb & TDO; } void set_tms() { set_port(TMS); } void clr_tms() { clr_port(TMS); } void set_tdi() { set_port(TDI); } void clr_tdi() { clr_port(TDI); } bool read_vref() const { return PINB & VREF; } private: void write_portb_if_tck(uint8_t pin) { if (pin == TCK) { PORTB = m_portb; } } void set_port(uint8_t pin) { m_portb |= pin; write_portb_if_tck(pin); } void clr_port(uint8_t pin) { m_portb &= ~pin; write_portb_if_tck(pin); } }; #endif // JTAGPORTAVR_H #endif // ARDUINO_ARCH_AVR ================================================ FILE: src/JTAGPortArduino.cpp ================================================ #include "JTAGPortArduino.h" JTAGPortArduino::JTAGPortArduino(uint8_t tms, uint8_t tdi, uint8_t tdo, uint8_t tck, uint8_t vref, bool vref_is_analog) : m_tms(tms) , m_tdi(tdi) , m_tdo(tdo) , m_tck(tck) , m_vref(vref) , m_vref_is_analog(vref_is_analog) { JTAGPortArduino::tck().set(); } ================================================ FILE: src/JTAGPortArduino.h ================================================ #ifndef JTAGPORTARDUINO_H #define JTAGPORTARDUINO_H #include "JTAGPort.h" #include #include "ArduinoPin.h" /* * This is a slight slower version of JTAGPort, but does not require a * particular pin assignment. */ class JTAGPortArduino : public JTAGPort { private: ArduinoOutputPin m_tms; ArduinoOutputPin m_tdi; ArduinoInputPin m_tdo; ArduinoOutputPin m_tck; ArduinoInputPin m_vref; bool m_vref_is_analog; const ArduinoOutputPin &tms() const { return m_tms; } const ArduinoOutputPin &tdi() const { return m_tdi; } const ArduinoInputPin &tdo() const { return m_tdo; } const ArduinoOutputPin &tck() const { return m_tck; } const ArduinoInputPin &vref() const { return m_vref; } bool vrefIsAnalog() const { return m_vref_is_analog; } public: JTAGPortArduino(uint8_t tms, uint8_t tdi, uint8_t tdo, uint8_t tck, uint8_t vref, bool vref_is_analog = false); ~JTAGPortArduino() {} void pulse_clock() { tck().clr(); delayMicroseconds(1); tck().set(); } bool pulse_clock_and_read_tdo() { tck().clr(); delayMicroseconds(1); uint8_t ret = tdo().read(); tck().set(); return ret; } void set_tms() { tms().set(); } void clr_tms() { tms().clr(); } void set_tdi() { tdi().set(); } void clr_tdi() { tdi().clr(); } bool read_vref() const { if (vrefIsAnalog()) { // Use 1.0 V as threshold return analogRead(vref().pin()) * 5 / 1023 > 1; } else { return vref().read(); } } }; #endif // JTAGPORTARDUINO_H ================================================ FILE: src/JTAGTAP.cpp ================================================ #include "JTAGTAP.h" /* * Low nibble : TMS == 0 * High nibble: TMS == 1 */ #define TMS_T(TMS_HIGH_STATE, TMS_LOW_STATE) \ (((TMS_HIGH_STATE) << 4) | (TMS_LOW_STATE)) static const uint8_t tms_transitions[] = { /* STATE_TEST_LOGIC_RESET */ TMS_T(STATE_TEST_LOGIC_RESET, STATE_RUN_TEST_IDLE), /* STATE_RUN_TEST_IDLE */ TMS_T(STATE_SELECT_DR_SCAN, STATE_RUN_TEST_IDLE), /* STATE_SELECT_DR_SCAN */ TMS_T(STATE_SELECT_IR_SCAN, STATE_CAPTURE_DR), /* STATE_CAPTURE_DR */ TMS_T(STATE_EXIT1_DR, STATE_SHIFT_DR), /* STATE_SHIFT_DR */ TMS_T(STATE_EXIT1_DR, STATE_SHIFT_DR), /* STATE_EXIT1_DR */ TMS_T(STATE_UPDATE_DR, STATE_PAUSE_DR), /* STATE_PAUSE_DR */ TMS_T(STATE_EXIT2_DR, STATE_PAUSE_DR), /* STATE_EXIT2_DR */ TMS_T(STATE_UPDATE_DR, STATE_SHIFT_DR), /* STATE_UPDATE_DR */ TMS_T(STATE_SELECT_DR_SCAN, STATE_RUN_TEST_IDLE), /* STATE_SELECT_IR_SCAN */ TMS_T(STATE_TEST_LOGIC_RESET, STATE_CAPTURE_IR), /* STATE_CAPTURE_IR */ TMS_T(STATE_EXIT1_IR, STATE_SHIFT_IR), /* STATE_SHIFT_IR */ TMS_T(STATE_EXIT1_IR, STATE_SHIFT_IR), /* STATE_EXIT1_IR */ TMS_T(STATE_UPDATE_IR, STATE_PAUSE_IR), /* STATE_PAUSE_IR */ TMS_T(STATE_EXIT2_IR, STATE_PAUSE_IR), /* STATE_EXIT2_IR */ TMS_T(STATE_UPDATE_IR, STATE_SHIFT_IR), /* STATE_UPDATE_IR */ TMS_T(STATE_SELECT_DR_SCAN, STATE_RUN_TEST_IDLE), }; #define BITSTR(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) \ (((uint16_t)(A) << 15) | ((uint16_t)(B) << 14) | \ ((uint16_t)(C) << 13) | ((uint16_t)(D) << 12) | \ ((uint16_t)(E) << 11) | ((uint16_t)(F) << 10) | \ ((uint16_t)(G) << 9) | ((uint16_t)(H) << 8) | ((uint16_t)(I) << 7) | \ ((uint16_t)(J) << 6) | ((uint16_t)(K) << 5) | ((uint16_t)(L) << 4) | \ ((uint16_t)(M) << 3) | ((uint16_t)(N) << 2) | ((uint16_t)(O) << 1) | \ ((uint16_t)(P) << 0)) // clang-format off /* * The index of this vector is the current state. The i-th bit tells you the * value TMS must assume in order to go to state "i". ------------------------------------------------------------------------------------------------------------ | | || F | E | D | C || B | A | 9 | 8 || 7 | 6 | 5 | 4 || 3 | 2 | 1 | 0 || HEX | ------------------------------------------------------------------------------------------------------------ | STATE_TEST_LOGIC_RESET | 0 || 0 | 0 | 0 | 0 || 0 | 0 | 0 | 0 || 0 | 0 | 0 | 0 || 0 | 0 | 0 | 1 || 0x0001 | | STATE_RUN_TEST_IDLE | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 0 | 1 || 0xFFFD | | STATE_SELECT_DR_SCAN | 2 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 0 || 0 | 0 | 0 | 0 || 0 | x | 1 | 1 || 0xFE03 | | STATE_CAPTURE_DR | 3 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 0 || x | 1 | 1 | 1 || 0xFFE7 | | STATE_SHIFT_DR | 4 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 0 || 1 | 1 | 1 | 1 || 0xFFEF | | STATE_EXIT1_DR | 5 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0 | 0 | x | 0 || 1 | 1 | 1 | 1 || 0xFF0F | | STATE_PAUSE_DR | 6 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 0 | 1 | 1 || 1 | 1 | 1 | 1 || 0xFFBF | | STATE_EXIT2_DR | 7 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || x | 0 | 0 | 0 || 1 | 1 | 1 | 1 || 0xFF0F | | STATE_UPDATE_DR | 8 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | x || 1 | 1 | 1 | 1 || 1 | 1 | 0 | 1 || 0xFEFD | | STATE_SELECT_IR_SCAN | 9 || 0 | 0 | 0 | 0 || 0 | 0 | x | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0x01FF | | STATE_CAPTURE_IR | A || 1 | 1 | 1 | 1 || 0 | x | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0xF3FF | | STATE_SHIFT_IR | B || 1 | 1 | 1 | 1 || 0 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0xF7FF | | STATE_EXIT1_IR | C || 1 | 0 | 0 | x || 0 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0x87FF | | STATE_PAUSE_IR | D || 1 | 1 | 0 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0xDFFF | | STATE_EXIT2_IR | E || 1 | x | 0 | 0 || 0 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0x87FF | | STATE_UPDATE_IR | F || x | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 0 | 1 || 0x7FFD | ------------------------------------------------------------------------------------------------------------ */ static const uint16_t tms_map[] = { /* STATE_TEST_LOGIC_RESET */ BITSTR( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 ), /* STATE_RUN_TEST_IDLE */ BITSTR( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1 ), /* STATE_SELECT_DR_SCAN */ BITSTR( 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1 ), /* STATE_CAPTURE_DR */ BITSTR( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1 ), /* STATE_SHIFT_DR */ BITSTR( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1 ), /* STATE_EXIT1_DR */ BITSTR( 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1 ), /* STATE_PAUSE_DR */ BITSTR( 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1 ), /* STATE_EXIT2_DR */ BITSTR( 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1 ), /* STATE_UPDATE_DR */ BITSTR( 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1 ), /* STATE_SELECT_IR_SCAN */ BITSTR( 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), /* STATE_CAPTURE_IR */ BITSTR( 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), /* STATE_SHIFT_IR */ BITSTR( 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), /* STATE_EXIT1_IR */ BITSTR( 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), /* STATE_PAUSE_IR */ BITSTR( 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), /* STATE_EXIT2_IR */ BITSTR( 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), /* STATE_UPDATE_IR */ BITSTR( 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1 ), }; // clang-format on JTAGTAP::JTAGTAP(SerialComm &s, JTAGPort &j) : m_serial_comm(s) , m_jtag_port(j) , m_current_state(STATE_TEST_LOGIC_RESET) { if (!jtagPort().read_vref()) { serialComm().Quit( -10, F("VREF is not present. Please, check the cable.")); } } void JTAGTAP::shift_td(uint8_t *input_data, uint8_t *output_data, uint32_t data_bits, bool must_end) { uint32_t bit_count = data_bits; uint32_t byte_count = numBytes(data_bits); serialComm().Debug(F("... shifting %lu bits (%lu bytes)"), data_bits, byte_count); serialComm().DebugBytes(F("... data: "), input_data, byte_count); for (uint32_t i = 0; i < byte_count; ++i) { uint8_t byte_out = input_data[byte_count - 1 - i]; uint8_t tdo_byte = 0; for (int j = 0; j < 8 && bit_count-- > 0; ++j) { if (bit_count == 0 && must_end) { jtagPort().set_tms(); state_ack(1); } if (byte_out & 1) { jtagPort().set_tdi(); } else { jtagPort().clr_tdi(); } byte_out >>= 1; bool tdo = jtagPort().pulse_clock_and_read_tdo(); tdo_byte |= tdo << j; } output_data[byte_count - 1 - i] = tdo_byte; } } void JTAGTAP::state_ack(bool tms) { if (tms) { setCurrentState((tms_transitions[currentState()] >> 4) & 0xf); } else { setCurrentState(tms_transitions[currentState()] & 0xf); } } void JTAGTAP::state_step(bool tms) { if (tms) { jtagPort().set_tms(); } else { jtagPort().clr_tms(); } jtagPort().pulse_clock(); state_ack(tms); } void JTAGTAP::state_goto(int state) { if (state == STATE_TEST_LOGIC_RESET) { for (int i = 0; i < 5; ++i) { state_step(true); } } else { while (currentState() != state) { state_step((tms_map[currentState()] >> state) & 1); } } } void JTAGTAP::wait_time(uint32_t microseconds) { serialComm().Debug(F("... waiting %ld microseconds"), microseconds); uint32_t until = micros() + microseconds; while (microseconds--) { jtagPort().pulse_clock(); } while (micros() < until) { jtagPort().pulse_clock(); } } ================================================ FILE: src/JTAGTAP.h ================================================ #ifndef JTAGTAP_H #define JTAGTAP_H #include "JTAGPort.h" #include "SerialComm.h" enum e_TAPState { STATE_TEST_LOGIC_RESET = 0, STATE_RUN_TEST_IDLE, // 1 STATE_SELECT_DR_SCAN, // 2 STATE_CAPTURE_DR, // 3 STATE_SHIFT_DR, // 4 STATE_EXIT1_DR, // 5 STATE_PAUSE_DR, // 6 STATE_EXIT2_DR, // 7 STATE_UPDATE_DR, // 8 STATE_SELECT_IR_SCAN, // 9 STATE_CAPTURE_IR, // 10 STATE_SHIFT_IR, // 11 STATE_EXIT1_IR, // 12 STATE_PAUSE_IR, // 13 STATE_EXIT2_IR, // 14 STATE_UPDATE_IR, // 15 }; class JTAGTAP { private: SerialComm &m_serial_comm; JTAGPort &m_jtag_port; uint8_t m_current_state; SerialComm &serialComm() { return m_serial_comm; } JTAGPort &jtagPort() { return m_jtag_port; } uint8_t currentState() const { return m_current_state; } void setCurrentState(uint8_t n) { m_current_state = n; } static uint32_t numBytes(uint32_t numBits) { return (numBits + 7) >> 3; } void state_ack(bool tms); void state_step(bool tms); public: JTAGTAP(SerialComm &s, JTAGPort &j); ~JTAGTAP() {} void shift_td(uint8_t *input_data, uint8_t *output_data, uint32_t data_bits, bool must_end); void state_goto(int state); void wait_time(uint32_t microseconds); }; #endif // JTAGTAP_H ================================================ FILE: src/PlayXSVF.cpp ================================================ #include "PlayXSVF.h" #include "SerialComm.h" #include "XSVFPlayer.h" int PlayXSVF::play() { SerialComm &s(serialComm()); XSVFPlayer &p(xsvfPlayer()); int ret = 0; uint32_t n = 0; while (true) { // p.test_code(2); ++n; if (!p.handle_next_instruction()) { ret = p.reached_xcomplete(); if (ret) { s.Important(F("********")); s.Important(F("Success!")); s.Important(F("********")); } else { s.Important(F("*****************************")); s.Important(F("Failure at instruction #%5d"), n); s.Important(F("*****************************")); } p.print_last_tdo(); break; } yield(); } s.Important(F("Processed %d instructions."), n); return ret; } void PlayXSVF::printAvailableRAM() { ::printAvailableRAM(serialComm()); } void printAvailableRAM(Stream &s) { s.print(F("Available RAM: ")); s.print(availableRAM()); s.println(F(" bytes.")); } void printAvailableRAM(SerialComm &s) { s.Important(F("Available RAM: %d bytes."), availableRAM()); } // variables created by the build process when compiling the sketch extern int __bss_end; extern void *__brkval; // function to return the amount of free RAM int availableRAM() { int freeValue; if ((int)__brkval == 0) freeValue = ((int)&freeValue) - ((int)&__bss_end); else freeValue = ((int)&freeValue) - ((int)__brkval); return freeValue; } ================================================ FILE: src/PlayXSVF.h ================================================ #ifndef PLAYXSVF_H #define PLAYXSVF_H #include // for Stream class SerialComm; class XSVFPlayer; class PlayXSVF { protected: virtual SerialComm &serialComm() = 0; virtual XSVFPlayer &xsvfPlayer() = 0; public: PlayXSVF() {} ~PlayXSVF() {} int play(); void printAvailableRAM(); }; void printAvailableRAM(Stream &s); void printAvailableRAM(SerialComm &s); int availableRAM(); #endif // PLAYXSVF_H ================================================ FILE: src/PlayXSVFJTAGAVR.cpp ================================================ #ifdef ARDUINO_ARCH_AVR #include "PlayXSVFJTAGAVR.h" PlayXSVFJTAGAVR::PlayXSVFJTAGAVR(Stream &s, int stream_buffer_size) : PlayXSVF() , m_serial_comm(s, stream_buffer_size) , m_jtag_port() , m_xsvf_player(serialComm(), jtagPort()) { } #endif // ARDUINO_ARCH_AVR ================================================ FILE: src/PlayXSVFJTAGAVR.h ================================================ #ifdef ARDUINO_ARCH_AVR #ifndef PLAYXSVFJTAGAVR_H #define PLAYXSVFJTAGAVR_H #include "JTAGPortAVR.h" #include "PlayXSVF.h" #include "SerialComm.h" #include "XSVFPlayerJTAG.h" class PlayXSVFJTAGAVR : public PlayXSVF { private: SerialComm m_serial_comm; // This JTAG tap is a bit faster, but the pins are hardwired. JTAGPortAVR m_jtag_port; XSVFPlayerJTAG m_xsvf_player; JTAGPort &jtagPort() { return m_jtag_port; } protected: XSVFPlayer &xsvfPlayer() { return m_xsvf_player; } public: PlayXSVFJTAGAVR(Stream &s, int stream_buffer_size); ~PlayXSVFJTAGAVR() {} SerialComm &serialComm() { return m_serial_comm; } }; #endif // PLAYXSVFJTAGAVR_H #endif // ARDUINO_ARCH_AVR ================================================ FILE: src/PlayXSVFJTAGArduino.cpp ================================================ #include "PlayXSVFJTAGArduino.h" PlayXSVFJTAGArduino::PlayXSVFJTAGArduino(Stream &s, int stream_buffer_size, uint8_t tms, uint8_t tdi, uint8_t tdo, uint8_t tck, uint8_t vref, bool vref_is_analog) : PlayXSVF() , m_serial_comm(s, stream_buffer_size) , m_jtag_port(tms, tdi, tdo, tck, vref, vref_is_analog) , m_xsvf_player(serialComm(), jtagPort()) { } ================================================ FILE: src/PlayXSVFJTAGArduino.h ================================================ #ifndef PLAYXSVFJTAGARDUINO_H #define PLAYXSVFJTAGARDUINO_H #include "JTAGPortArduino.h" #include "PlayXSVF.h" #include "SerialComm.h" #include "XSVFPlayerJTAG.h" class PlayXSVFJTAGArduino : public PlayXSVF { private: SerialComm m_serial_comm; // This JTAG tap is a bit slower, but you can use any arduino pin. JTAGPortArduino m_jtag_port; XSVFPlayerJTAG m_xsvf_player; JTAGPort &jtagPort() { return m_jtag_port; } protected: XSVFPlayer &xsvfPlayer() { return m_xsvf_player; } public: PlayXSVFJTAGArduino(Stream &s, int stream_buffer_size, uint8_t tms, uint8_t tdi, uint8_t tdo, uint8_t tck, uint8_t vref, bool vref_is_analog = false); ~PlayXSVFJTAGArduino() {} SerialComm &serialComm() { return m_serial_comm; } }; #endif // PLAYXSVFJTAGARDUINO_H ================================================ FILE: src/SerialComm.cpp ================================================ #include "SerialComm.h" #ifdef __AVR__ #define PLATFORM_VSNPRINTF(...) vsnprintf_P(__VA_ARGS__) #else #define PLATFORM_VSNPRINTF(...) vsnprintf(__VA_ARGS__) #endif SerialComm::SerialComm(Stream &s, int stream_buffer_size) : m_serial(s) , m_already_asked(false) , m_stream_buffer_capacity(stream_buffer_size - 1) // // Benchmark: // // send a file // of size 22846 // bytes. //, m_stream_buffer_threshold(m_stream_buffer_capacity) // 6.41 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 15 / 16) // 6.21 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 14 / 16) // 6.18 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 13 / 16) // 6.13 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 12 / 16) // 6.02 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 11 / 16) // 6.02 s , m_stream_buffer_threshold(m_stream_buffer_capacity * 10 / 16) // 6.02 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 9 / 16) // 6.02 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 8 / 16) // 6.03 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 7 / 16) // 6.03 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 6 / 16) // 6.04 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 5 / 16) // 6.06 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 4 / 16) // 6.07 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 3 / 16) // 6.11 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 2 / 16) // 6.17 s //, m_stream_buffer_threshold(m_stream_buffer_capacity * 1 / 16) // 6.37 s //, m_stream_buffer_threshold(1) // 22.81 s , m_stream_buffer_checkpoint(0) , m_stream_count(0) { if (streamBufferThreshold() == 0) { setStreamBufferThreshold(streamBufferCapacity()); } while (serial().available()) { serial().read(); } Ready(F("XSVF")); } SerialComm::~SerialComm() {} void SerialComm::ask_for_data() { if (!alreadyAsked()) { checkAndRequestData(true); setAlreadyAsked(); } } void SerialComm::Important(const __FlashStringHelper *ifsh, ...) { va_list args; va_start(args, ifsh); PLATFORM_VSNPRINTF(formatBuffer(), S_FORMAT_BUFFER_SIZE, (const char *)ifsh, args); va_end(args); serial().print(F("!")); serial().println(formatBuffer()); } void SerialComm::ImportantBits(const __FlashStringHelper *msg, const uint8_t *pb, uint32_t count_bits) { uint32_t count_bytes = (count_bits + 7) >> 3; serial().print(msg); print_bytes(pb, count_bytes); serial().print(F("/")); serial().print(count_bits); serial().println(F(" bits")); } void SerialComm::checkAndRequestData(bool force) { if (force || streamCount() % streamBufferCapacity() == streamBufferCheckpoint()) { updateCheckpoint(); int n = force ? streamBufferCapacity() : streamBufferThreshold(); snprintf(sendMsg(), sizeofSendMsg(), "S%-4d", n); serial().print(F("\r\n")); serial().println(sendMsg()); if (DEBUG) { // Print this so that an interrupted line is // still recognized by the python script. serial().print(F("D. >>> ")); } } } int SerialComm::nextByte() { // Wait for TIMEOUT milliseconds if the buffer is empty. // unsigned const int TIMEOUT = 1000; // milliseconds unsigned const int TIMEOUT = 3000; // milliseconds unsigned long end_time = millis() + TIMEOUT; while (serial().available() <= 0 && millis() < end_time) { } // Return an invalid instruction int c = -1; int n = serial().available(); if (n > 0) { c = serial().read(); incStreamCount(); checkAndRequestData(); } else { Important(F("count: %ld, threshold: %d, mod: %ld, avail: %d"), streamCount(), streamBufferThreshold(), streamCount() % streamBufferCapacity(), n); } return c; } // Not needed, left here as example. #if 0 void SerialComm::CopyToFlashBuffer(const __FlashStringHelper *ifsh) { PGM_P p = reinterpret_cast(ifsh); // Truncate message to the flash buffer size strncpy_P(flashBuffer(), p, S_FLASH_BUFFER_SIZE); // Left here as example of use of pgm_read_byte(). /* char *s = flashBuffer(); char c; uint32_t n = S_FLASH_BUFFER_SIZE; while (n-- && (c = pgm_read_byte(p++))) { *s++ = c; } if (n) { *s = 0; } else { *--s = 0; } */ } #endif #if DEBUG == 1 void SerialComm::DebugStartMessage() const { serial().print(F("D")); } void SerialComm::DebugContMessage(const __FlashStringHelper *ifsh, ...) { va_list args; va_start(args, ifsh); PLATFORM_VSNPRINTF(formatBuffer(), S_FORMAT_BUFFER_SIZE, (const char *)ifsh, args); va_end(args); serial().print(formatBuffer()); } void SerialComm::Debug(const __FlashStringHelper *ifsh, ...) { va_list args; va_start(args, ifsh); PLATFORM_VSNPRINTF(formatBuffer(), S_FORMAT_BUFFER_SIZE, (const char *)ifsh, args); va_end(args); DebugStartMessage(); serial().println(formatBuffer()); } void SerialComm::DebugBytes(const __FlashStringHelper *s, const uint8_t *b, uint8_t n) { DebugStartMessage(); serial().print(s); print_bytes(b, n); serial().println(); } #else void SerialComm::DebugStartMessage() const {} void SerialComm::DebugContMessage(const __FlashStringHelper * /*ifsh*/, ...) {} void SerialComm::Debug(const __FlashStringHelper * /*fmt*/, ...) {} void SerialComm::DebugBytes(const __FlashStringHelper * /*s*/, const uint8_t * /*b*/, uint8_t /*n*/) { } #endif void SerialComm::Ready(const __FlashStringHelper *message) const { serial().print(F("\r\nR")); serial().println(message); } void SerialComm::Quit(int error_code, const __FlashStringHelper *message) const { serial().print(F("\r\nQ")); serial().print(error_code); serial().print(F(",")); serial().println(message); } void SerialComm::print_bytes(const uint8_t *pb, uint32_t count, bool lf) { if (!count) { if (lf) { serial().println(F(" ")); } else { serial().print(F(" ")); } return; } const unsigned char *p = reinterpret_cast(pb); const char *fmt_msg = " %02X"; int fmt_msg_size = 3; while (count) { char *f = formatBuffer(); int buf_size = S_FORMAT_BUFFER_SIZE; while (count && buf_size > 6) { snprintf(f, buf_size, fmt_msg, *p); p++; f += fmt_msg_size; buf_size -= fmt_msg_size; count--; } if (count && buf_size <= 6) { serial().print(formatBuffer()); } } if (lf) { serial().println(formatBuffer()); } else { serial().print(formatBuffer()); } } ================================================ FILE: src/SerialComm.h ================================================ #ifndef SERIALCOMM_H #define SERIALCOMM_H #include #define DEBUG 0 class SerialComm { private: static const int S_FORMAT_BUFFER_SIZE = 128 + 1; Stream &m_serial; bool m_already_asked; char m_send_msg[6]; char m_format_buffer[S_FORMAT_BUFFER_SIZE]; unsigned int m_stream_buffer_capacity; unsigned int m_stream_buffer_threshold; unsigned int m_stream_buffer_checkpoint; uint32_t m_stream_count; Stream &serial() const { return m_serial; } bool alreadyAsked() const { return m_already_asked; } void setAlreadyAsked() { m_already_asked = true; } unsigned int streamBufferCapacity() const { return m_stream_buffer_capacity; } void setStreamBufferCapacity(unsigned int n) { m_stream_buffer_capacity = n; } unsigned int streamBufferThreshold() const { return m_stream_buffer_threshold; } void setStreamBufferThreshold(unsigned int n) { m_stream_buffer_threshold = n; } unsigned int streamBufferCheckpoint() const { return m_stream_buffer_checkpoint; } void updateCheckpoint() { m_stream_buffer_checkpoint += streamBufferThreshold(); m_stream_buffer_checkpoint %= streamBufferCapacity(); } void incStreamCount() { ++m_stream_count; } char *sendMsg() { return m_send_msg; } size_t sizeofSendMsg() const { return sizeof m_send_msg; } public: SerialComm(Stream &s, int stream_buffer_size); ~SerialComm(); void ask_for_data(); int nextByte(); uint32_t streamCount() const { return m_stream_count; } void Important(const __FlashStringHelper *fmt, ...); void ImportantBits(const __FlashStringHelper *msg, const uint8_t *pb, uint32_t count_bits); void Quit(int error_code, const __FlashStringHelper *message) const; void print_bytes(const uint8_t *pb, uint32_t count, bool lf = false); void DebugStartMessage() const; void DebugContMessage(const __FlashStringHelper *ifsh, ...); void Debug(const __FlashStringHelper *fmt, ...); void DebugBytes(const __FlashStringHelper *s, const uint8_t *p, uint8_t n); private: char *formatBuffer() { return m_format_buffer; } void checkAndRequestData(bool force = false); void Ready(const __FlashStringHelper *message) const; }; #endif // SERIALCOMM_H ================================================ FILE: src/XSVFPlayer.cpp ================================================ #include "XSVFPlayer.h" // clang-format off #define ERR_MSG(x,y) case x: { ret = y; break; } #define NAME_FOR(x) case x: return F(#x); #define NAME_FOR_STATE(x) case STATE_##x: return F(#x); #define DECODE(x) case x: if (decode_##x()) { return execute_##x(); } break; // clang-format on XSVFPlayer::XSVFPlayer(SerialComm &s) : m_serial_comm(s) , m_next_state(0) , m_sirsize_bits(0) , m_sirsize_bytes(0) , m_sdrsize_bits(0) , m_sdrsize_bytes(0) , m_length2_bits(0) , m_length2_bytes(0) , m_repeat(32) , m_runtest(0) , m_endir_state(STATE_RUN_TEST_IDLE) , m_enddr_state(STATE_RUN_TEST_IDLE) , m_xcomplete(false) , m_instruction_counter(0) , m_stream_sum(0) , m_error_code(ERR_NO_ERROR) { serialComm().ask_for_data(); } XSVFPlayer::~XSVFPlayer() { uint8_t checksum = (-streamSum()) & 0xFF; serialComm().Important(F("Checksum: 0x%02X/%lu."), checksum, serialComm().streamCount()); serialComm().Important(F("Sum: 0x%08lX/%lu."), streamSum(), serialComm().streamCount()); if (errorCode() == ERR_NO_ERROR && !xcomplete()) { setErrorCode(ERR_XCOMPLETE_NOT_REACHED); } serialComm().Quit(errorCode(), error_message(errorCode())); } #ifndef ARDUINO_ARCH_AVR // All bytes must pass through this function uint8_t XSVFPlayer::nextByte() { int c = serialComm().nextByte(); if (c != -1) { addStreamSum(c); } else { serialComm().Quit(ERR_SERIAL_PORT_TIMEOUT, F("Serial port timeout!")); } return static_cast(c); } #endif // ARDUINO_ARCH_AVR uint8_t XSVFPlayer::getNextByte() { uint8_t i = nextByte(); serialComm().Debug(F(". BYTE:%12u - 0x%02X"), i, i); return i; } uint16_t XSVFPlayer::getNextWord() { uint16_t i = 0; i = ((uint16_t)nextByte()) << 8; i |= ((uint16_t)nextByte()); serialComm().Debug(F(". WORD:12%u - 0x%04X"), i, i); return i; } uint32_t XSVFPlayer::getNextLong() { uint32_t i = 0; i = ((uint32_t)nextByte()) << 24; i |= ((uint32_t)nextByte()) << 16; i |= ((uint32_t)nextByte()) << 8; i |= ((uint32_t)nextByte()); serialComm().Debug(F(". DWORD:%12lu - 0x%08lX"), i, i); return i; } void XSVFPlayer::getNextBytes(uint8_t *data, uint32_t count) { serialComm().DebugStartMessage(); serialComm().DebugContMessage(F(". HEX:")); while (count--) { uint8_t c = nextByte(); serialComm().DebugContMessage(F(" %02X"), c); *data++ = c; } serialComm().DebugContMessage(F("\n")); } const __FlashStringHelper *XSVFPlayer::error_message(int error_code) { const __FlashStringHelper *ret = F("Unknown error message"); switch (error_code) { ERR_MSG(ERR_NO_ERROR, F("No error")); ERR_MSG(ERR_SERIAL_PORT_TIMEOUT, F("Serial port timeout")); ERR_MSG(ERR_VREF_NOT_PRESENT, F("VRef not present")); ERR_MSG(ERR_XCOMPLETE_NOT_REACHED, F("XCOMPLETE not reached")); ERR_MSG(ERR_DR_CHECK_FAILED, F("DR check failed")); } return ret; } void XSVFPlayer::print_last_tdo() const { serialComm().ImportantBits(F("!Last TDO:"), last_tdo(), last_dr_size_bits()); } /* * Reads the next instruction from the serial port. Also reads any * remaining instruction parameters into the instruction buffer. */ bool XSVFPlayer::handle_next_instruction() { uint8_t instruction = getNextByte(); incrementInstructionCounter(); setStringBuffer(instruction_name(instruction)); serialComm().Debug(F("%d - Handling %s(0x%02X)"), instructionCounter(), stringBuffer(), instruction); switch (instruction) { DECODE(XCOMPLETE); DECODE(XTDOMASK); DECODE(XSIR); DECODE(XSDR); DECODE(XRUNTEST); #if IMPLEMENT_XRESERVED DECODE(XRESERVED_5); DECODE(XRESERVED_6); #endif // IMPLEMENT_XRESERVED DECODE(XREPEAT); DECODE(XSDRSIZE); DECODE(XSDRTDO); #if IMPLEMENT_XSDRINC DECODE(XSETSDRMASKS); DECODE(XSDRINC); #endif // IMPLEMENT_XSDRINC DECODE(XSDRB); DECODE(XSDRC); DECODE(XSDRE); DECODE(XSDRTDOB); DECODE(XSDRTDOC); DECODE(XSDRTDOE); DECODE(XSTATE); DECODE(XENDIR); DECODE(XENDDR); DECODE(XSIR2); DECODE(XCOMMENT); DECODE(XWAIT); default: serialComm().Important( F("Unimplemented instruction: %s(0x%02X)"), stringBuffer(), instruction); break; } return false; } #ifndef ARDUINO_ARCH_AVR void XSVFPlayer::setStringBuffer(const __FlashStringHelper *s) { PGM_P p = reinterpret_cast(s); size_t n = strlen_P(p); if (n > S_STRING_BUFFER_SIZE - 1) { serialComm().Debug( F(">>>>>>>>>>>> String truncated by %d bytes."), n - S_STRING_BUFFER_SIZE + 1); } strncpy_P(m_string_buffer, p, S_STRING_BUFFER_SIZE); m_string_buffer[S_STRING_BUFFER_SIZE - 1] = 0; } #endif // ARDUINO_ARCH_AVR const __FlashStringHelper *XSVFPlayer::instruction_name(uint8_t instruction) { switch (instruction) { NAME_FOR(XCOMPLETE); NAME_FOR(XTDOMASK); NAME_FOR(XSIR); NAME_FOR(XSDR); NAME_FOR(XRUNTEST); NAME_FOR(XRESERVED_5); NAME_FOR(XRESERVED_6); NAME_FOR(XREPEAT); NAME_FOR(XSDRSIZE); NAME_FOR(XSDRTDO); NAME_FOR(XSETSDRMASKS); NAME_FOR(XSDRINC); NAME_FOR(XSDRB); NAME_FOR(XSDRC); NAME_FOR(XSDRE); NAME_FOR(XSDRTDOB); NAME_FOR(XSDRTDOC); NAME_FOR(XSDRTDOE); NAME_FOR(XSTATE); NAME_FOR(XENDIR); NAME_FOR(XENDDR); NAME_FOR(XSIR2); NAME_FOR(XCOMMENT); NAME_FOR(XWAIT); default: return F("Unknown instruction"); } } const __FlashStringHelper *XSVFPlayer::state_name(uint8_t state) { switch (state) { NAME_FOR_STATE(TEST_LOGIC_RESET); NAME_FOR_STATE(RUN_TEST_IDLE); NAME_FOR_STATE(SELECT_DR_SCAN); NAME_FOR_STATE(CAPTURE_DR); NAME_FOR_STATE(SHIFT_DR); NAME_FOR_STATE(EXIT1_DR); NAME_FOR_STATE(PAUSE_DR); NAME_FOR_STATE(EXIT2_DR); NAME_FOR_STATE(UPDATE_DR); NAME_FOR_STATE(SELECT_IR_SCAN); NAME_FOR_STATE(CAPTURE_IR); NAME_FOR_STATE(SHIFT_IR); NAME_FOR_STATE(EXIT1_IR); NAME_FOR_STATE(PAUSE_IR); NAME_FOR_STATE(EXIT2_IR); NAME_FOR_STATE(UPDATE_IR); default: return F("UNKNOWN_STATE"); } } bool XSVFPlayer::decode_XCOMPLETE() { setXcomplete(true); return true; } bool XSVFPlayer::decode_XTDOMASK() { getNextBytes(tdoMask(), sdrsizeBytes()); serialComm().DebugBytes(F("... TDO mask set to"), tdoMask(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSIR() { setSirsizeBits(getNextByte()); if (sirsizeBytes() > S_MAX_CHAIN_SIZE_BYTES) { serialComm().Important( F("Requested IR size (%d bits) is greater than the maximum " "chain" " size supported by this programmer (%d bits)."), sirsizeBits(), S_MAX_CHAIN_SIZE_BITS); return false; } getNextBytes(tdi(), sirsizeBytes()); return true; } bool XSVFPlayer::decode_XSDR() { getNextBytes(tdi(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XRUNTEST() { setRuntest(getNextLong()); serialComm().Debug(F("... runtest set to %ld"), runtest()); return true; } bool XSVFPlayer::decode_XRESERVED_5() { return true; } bool XSVFPlayer::decode_XRESERVED_6() { return true; } bool XSVFPlayer::decode_XREPEAT() { setRepeat(getNextByte()); serialComm().Debug(F("... repeat set to %d"), repeat()); return true; } bool XSVFPlayer::decode_XSDRSIZE() { setSdrSizeBits(getNextLong()); if (sdrsizeBytes() > S_MAX_CHAIN_SIZE_BYTES) { serialComm().Important( F("Requested DR size (%lu bits) is greater than the " "maximum chain" " size supported by this programmer (%d bits)."), sdrsizeBits(), S_MAX_CHAIN_SIZE_BITS); return false; } serialComm().Debug(F("... sdrsize set to %lu bits (%lu bytes)"), sdrsizeBits(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSDRTDO() { getNextBytes(tdi(), sdrsizeBytes()); getNextBytes(tdoExpected(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSETSDRMASKS() { getNextBytes(addressMask(), sdrsizeBytes()); getNextBytes(dataMask(), sdrsizeBytes()); return true; } #if IMPLEMENT_XSDRINC // bool XSVFPlayer::decode_XSDRINC() { return ; } #endif // IMPLEMENT_XSDRINC bool XSVFPlayer::decode_XSDRB() { getNextBytes(tdi(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSDRC() { getNextBytes(tdi(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSDRE() { getNextBytes(tdi(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSDRTDOB() { getNextBytes(tdi(), sdrsizeBytes()); getNextBytes(tdoExpected(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSDRTDOC() { getNextBytes(tdi(), sdrsizeBytes()); getNextBytes(tdoExpected(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSDRTDOE() { getNextBytes(tdi(), sdrsizeBytes()); getNextBytes(tdoExpected(), sdrsizeBytes()); return true; } bool XSVFPlayer::decode_XSTATE() { setNextState(getNextByte()); return true; } bool XSVFPlayer::decode_XENDIR() { bool ret = true; uint8_t s = getNextByte(); switch (s) { case 0: setEndirState(STATE_RUN_TEST_IDLE); break; case 1: setEndirState(STATE_PAUSE_IR); break; default: serialComm().Debug(F("... invalid XENDIR parameter: %d"), s); ret = false; break; } setStringBuffer(state_name(endirState())); serialComm().Debug(F("... endir state set to %s(%d)"), stringBuffer(), endirState()); return ret; } bool XSVFPlayer::decode_XENDDR() { bool ret = true; uint8_t s = getNextByte(); switch (s) { case 0: setEnddrState(STATE_RUN_TEST_IDLE); break; case 1: setEnddrState(STATE_PAUSE_DR); break; default: serialComm().Debug(F("... invalid XENDDR parameter: %d"), s); ret = false; break; } setStringBuffer(state_name(enddrState())); serialComm().Debug(F("... enddr state set to %s(%d)"), stringBuffer(), enddrState()); return ret; } bool XSVFPlayer::decode_XSIR2() { setSirsizeBits(getNextWord()); getNextBytes(tdi(), sirsizeBytes()); return true; } bool XSVFPlayer::decode_XCOMMENT() { serialComm().DebugStartMessage(); serialComm().DebugContMessage(F("XCOMMENT:")); uint8_t c; while ((c = getNextByte())) { serialComm().DebugContMessage(F("%c"), c); execute_XCOMMENT_auxiliar(c); } serialComm().DebugContMessage(F("\n")); execute_XCOMMENT_auxiliar(c); return true; } bool XSVFPlayer::decode_XWAIT() { setWaitStartState(getNextByte()); setWaitEndState(getNextByte()); setWaitTimeUsecs(getNextLong()); return true; } ================================================ FILE: src/XSVFPlayer.h ================================================ #ifndef JTAGWHISPERER_H #define JTAGWHISPERER_H #include "JTAGTAP.h" #include "SerialComm.h" #define IMPLEMENT_XSDRINC 0 class XSVFPlayer { private: SerialComm &m_serial_comm; uint8_t m_next_state; uint16_t m_sirsize_bits; uint16_t m_sirsize_bytes; uint32_t m_sdrsize_bits; uint32_t m_sdrsize_bytes; uint32_t m_length2_bits; uint32_t m_length2_bytes; uint8_t m_repeat; uint32_t m_runtest; uint8_t m_endir_state; uint8_t m_enddr_state; uint8_t m_wait_start_state; uint8_t m_wait_end_state; uint32_t m_wait_time_usecs; bool m_xcomplete; static const uint32_t S_MAX_CHAIN_SIZE_BYTES = 129; static const uint32_t S_MAX_CHAIN_SIZE_BITS = S_MAX_CHAIN_SIZE_BYTES * 8; uint8_t m_tdi[S_MAX_CHAIN_SIZE_BYTES]; uint8_t m_tdo[S_MAX_CHAIN_SIZE_BYTES]; uint8_t m_tdo_mask[S_MAX_CHAIN_SIZE_BYTES]; uint8_t m_tdo_expected[S_MAX_CHAIN_SIZE_BYTES]; uint8_t m_address_mask[S_MAX_CHAIN_SIZE_BYTES]; uint8_t m_data_mask[S_MAX_CHAIN_SIZE_BYTES]; uint16_t m_instruction_counter; uint32_t m_stream_sum; int m_error_code; // The following maximum buffer size has been tested to be an exact // value. If you change any program messages or strings, with debug // enabled you may get a ">>>>>>>>>>>> String truncated by XX bytes." // warning. Fix this buffer size accordingly. static const uint32_t S_STRING_BUFFER_SIZE = 23; char m_string_buffer[S_STRING_BUFFER_SIZE]; enum e_XSVF_Instruction { XCOMPLETE = 0, 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 }; SerialComm &serialComm() { return m_serial_comm; } SerialComm &serialComm() const { return m_serial_comm; } #ifdef ARDUINO_ARCH_AVR // All bytes must pass through this function uint8_t nextByte() { int c = serialComm().nextByte(); if (c != -1) { addStreamSum(c); } else { serialComm().Quit(ERR_SERIAL_PORT_TIMEOUT, F("Serial port timeout!")); } return static_cast(c); } #else // ARDUINO_ARCH_AVR uint8_t nextByte(); #endif // ARDUINO_ARCH_AVR // Returns the next byte from the stream. uint8_t getNextByte(); // Returns the next word from the stream. uint16_t getNextWord(); // Returns the next double word from the stream. uint32_t getNextLong(); // Stores the next count bytes from the stream into data. void getNextBytes(uint8_t *data, uint32_t count); const __FlashStringHelper *error_message(int error_code); public: enum e_Error_Code { ERR_NO_ERROR = 0, // ERR_SERIAL_PORT_TIMEOUT = -1, // ERR_VREF_NOT_PRESENT = -10, // ERR_XCOMPLETE_NOT_REACHED = -100, ERR_DR_CHECK_FAILED = -101, }; XSVFPlayer(SerialComm &s); ~XSVFPlayer(); bool reached_xcomplete() const { return xcomplete(); } uint32_t last_dr_size_bits() const { return sdrsizeBits(); } uint32_t last_dr_size_bytes() const { return sdrsizeBytes(); } const uint8_t *last_tdo() const { return m_tdo; } void print_last_tdo() const; bool handle_next_instruction(); static uint32_t numBytes(uint32_t numBits) { return (numBits + 7) >> 3; } protected: const char *stringBuffer() const { return m_string_buffer; } #ifdef ARDUINO_ARCH_AVR void setStringBuffer(const __FlashStringHelper *s) { PGM_P p = reinterpret_cast(s); size_t n = strlen_P(p); if (n > S_STRING_BUFFER_SIZE - 1) { serialComm().Debug( F(">>>>>>>>>>>> String truncated by %d bytes."), n - S_STRING_BUFFER_SIZE + 1); } strncpy_P(m_string_buffer, p, S_STRING_BUFFER_SIZE); m_string_buffer[S_STRING_BUFFER_SIZE - 1] = 0; } #else // ARDUINO_ARCH_AVR void setStringBuffer(const __FlashStringHelper *s); #endif // ARDUINO_ARCH_AVR const __FlashStringHelper *instruction_name(uint8_t instruction); const __FlashStringHelper *state_name(uint8_t state); uint8_t nextState() const { return m_next_state; } void setNextState(uint8_t n) { m_next_state = n; } uint16_t sirsizeBits() const { return m_sirsize_bits; } void setSirsizeBits(uint16_t n) { m_sirsize_bits = n; m_sirsize_bytes = numBytes(n); } uint8_t sirsizeBytes() const { return m_sirsize_bytes; } uint32_t sdrsizeBits() const { return m_sdrsize_bits; } void setSdrSizeBits(uint32_t n) { m_sdrsize_bits = n; m_sdrsize_bytes = numBytes(n); } uint32_t sdrsizeBytes() const { return m_sdrsize_bytes; } uint32_t length2Bits() const { return m_length2_bits; } void setLength2Bits(uint32_t n) { m_length2_bits = n; } uint32_t length2Bytes() const { return m_length2_bytes; } uint8_t repeat() const { return m_repeat; } void setRepeat(uint8_t n) { m_repeat = n; } uint32_t runtest() const { return m_runtest; } void setRuntest(uint32_t n) { m_runtest = n; } uint8_t endirState() const { return m_endir_state; } void setEndirState(uint8_t n) { m_endir_state = n; } uint8_t enddrState() const { return m_enddr_state; } void setEnddrState(uint8_t n) { m_enddr_state = n; } uint8_t waitStartState() const { return m_wait_start_state; } void setWaitStartState(uint8_t n) { m_wait_start_state = n; } uint8_t waitEndState() const { return m_wait_end_state; } void setWaitEndState(uint8_t n) { m_wait_end_state = n; } uint32_t waitTimeUsecs() const { return m_wait_time_usecs; } void setWaitTimeUsecs(uint32_t n) { m_wait_time_usecs = n; } bool xcomplete() const { return m_xcomplete; } void setXcomplete(bool n) { m_xcomplete = n; } uint8_t *tdi() { return m_tdi; } uint8_t *tdo() { return m_tdo; } const uint8_t *tdo() const { return m_tdo; } uint8_t *tdoMask() { return m_tdo_mask; } uint8_t *tdoExpected() { return m_tdo_expected; } uint8_t *addressMask() { return m_address_mask; } uint8_t *dataMask() { return m_data_mask; } uint16_t instructionCounter() const { return m_instruction_counter; } void incrementInstructionCounter() { ++m_instruction_counter; } uint32_t streamSum() const { return m_stream_sum; } void addStreamSum(uint8_t n) { m_stream_sum += n; } int errorCode() const { return m_error_code; } void setErrorCode(int n) { m_error_code = n; } /* * XSVF instruction decoders */ bool decode_XCOMPLETE(); bool decode_XTDOMASK(); bool decode_XSIR(); bool decode_XSDR(); bool decode_XRUNTEST(); bool decode_XRESERVED_5(); bool decode_XRESERVED_6(); bool decode_XREPEAT(); bool decode_XSDRSIZE(); bool decode_XSDRTDO(); bool decode_XSETSDRMASKS(); #if IMPLEMENT_XSDRINC bool decode_XSDRINC(); #endif // IMPLEMENT_XSDRINC bool decode_XSDRB(); bool decode_XSDRC(); bool decode_XSDRE(); bool decode_XSDRTDOB(); bool decode_XSDRTDOC(); bool decode_XSDRTDOE(); bool decode_XSTATE(); bool decode_XENDIR(); bool decode_XENDDR(); bool decode_XSIR2(); bool decode_XCOMMENT(); bool decode_XWAIT(); /* * XSVF instruction executors */ virtual bool execute_XCOMPLETE() = 0; virtual bool execute_XTDOMASK() = 0; virtual bool execute_XSIR() = 0; virtual bool execute_XSDR() = 0; virtual bool execute_XRUNTEST() = 0; virtual bool execute_XRESERVED_5() = 0; virtual bool execute_XRESERVED_6() = 0; virtual bool execute_XREPEAT() = 0; virtual bool execute_XSDRSIZE() = 0; virtual bool execute_XSDRTDO() = 0; virtual bool execute_XSETSDRMASKS() = 0; virtual bool execute_XSDRINC() = 0; virtual bool execute_XSDRB() = 0; virtual bool execute_XSDRC() = 0; virtual bool execute_XSDRE() = 0; virtual bool execute_XSDRTDOB() = 0; virtual bool execute_XSDRTDOC() = 0; virtual bool execute_XSDRTDOE() = 0; virtual bool execute_XSTATE() = 0; virtual bool execute_XENDIR() = 0; virtual bool execute_XENDDR() = 0; virtual bool execute_XSIR2() = 0; virtual bool execute_XCOMMENT() = 0; virtual void execute_XCOMMENT_auxiliar(uint8_t c) = 0; virtual bool execute_XWAIT() = 0; }; #endif // JTAGWHISPERER_H ================================================ FILE: src/XSVFPlayerJTAG.cpp ================================================ #include "XSVFPlayerJTAG.h" XSVFPlayerJTAG::XSVFPlayerJTAG(SerialComm &s, JTAGPort &j) : XSVFPlayer(s) , m_serial_comm(s) , m_jtag_tap(s, j) , m_current_state(0) { } bool XSVFPlayerJTAG::execute_XCOMPLETE() { return false; } bool XSVFPlayerJTAG::execute_XTDOMASK() { return true; } bool XSVFPlayerJTAG::execute_XSIR() { sir(); return true; } bool XSVFPlayerJTAG::execute_XSDR() { return sdr(true, true, true, true); } bool XSVFPlayerJTAG::execute_XRUNTEST() { return true; } bool XSVFPlayerJTAG::execute_XRESERVED_5() { return true; } bool XSVFPlayerJTAG::execute_XRESERVED_6() { return true; } bool XSVFPlayerJTAG::execute_XREPEAT() { return true; } bool XSVFPlayerJTAG::execute_XSDRSIZE() { return true; } bool XSVFPlayerJTAG::execute_XSDRTDO() { return sdr(true, true, true, true); } bool XSVFPlayerJTAG::execute_XSETSDRMASKS() { return true; } bool XSVFPlayerJTAG::execute_XSDRINC() { return false; } bool XSVFPlayerJTAG::execute_XSDRB() { return sdr(true, false, false, false); } bool XSVFPlayerJTAG::execute_XSDRC() { return sdr(false, false, false, false); } bool XSVFPlayerJTAG::execute_XSDRE() { return sdr(false, false, false, true); } bool XSVFPlayerJTAG::execute_XSDRTDOB() { return sdr(true, true, false, false); } bool XSVFPlayerJTAG::execute_XSDRTDOC() { return sdr(false, true, false, false); } bool XSVFPlayerJTAG::execute_XSDRTDOE() { return sdr(false, true, false, true); } bool XSVFPlayerJTAG::execute_XSTATE() { state_goto(nextState()); return true; } bool XSVFPlayerJTAG::execute_XENDIR() { return true; } bool XSVFPlayerJTAG::execute_XENDDR() { return true; } bool XSVFPlayerJTAG::execute_XSIR2() { sir(); return true; } bool XSVFPlayerJTAG::execute_XCOMMENT() { return true; } void XSVFPlayerJTAG::execute_XCOMMENT_auxiliar(uint8_t /*c*/) {} bool XSVFPlayerJTAG::execute_XWAIT() { state_goto(waitStartState()); jtagTap().wait_time(waitTimeUsecs()); state_goto(waitEndState()); return true; } void XSVFPlayerJTAG::state_goto(int state) { jtagTap().state_goto(state); setCurrentState(state); setStringBuffer(state_name(state)); serialComm().Debug(F("... current state is now %s(%d)"), stringBuffer(), state); } void XSVFPlayerJTAG::sir() { state_goto(STATE_SHIFT_IR); serialComm().Debug(F("... shifting into IR")); jtagTap().shift_td(tdi(), tdo(), sirsizeBits(), true); if (!runtest()) { state_goto(endirState()); } else { state_goto(STATE_RUN_TEST_IDLE); jtagTap().wait_time(runtest()); } } bool XSVFPlayerJTAG::sdr(bool must_begin, bool must_check, bool use_mask, bool must_end) { int attempts_left = repeat(); bool matched = false; if (must_begin) { state_goto(STATE_SHIFT_DR); } while (!matched && attempts_left-- >= 0) { serialComm().Debug(F("... shifting into DR")); jtagTap().shift_td(tdi(), tdo(), sdrsizeBits(), must_end); if (!must_check) { break; } matched = is_tdo_as_expected(use_mask); if (!matched) { // XAP058, page 14 state_goto(STATE_PAUSE_DR); state_goto(STATE_SHIFT_DR); state_goto(STATE_RUN_TEST_IDLE); jtagTap().wait_time(runtest()); // state_goto(STATE_SHIFT_DR); if (attempts_left >= 0) { serialComm().Debug(F("...... repeating: %d"), repeat() - attempts_left); } } } if (must_check && !matched) { setErrorCode(ERR_DR_CHECK_FAILED); serialComm().Important(F("DR check failed!")); } if (must_end && matched) { if (!runtest()) { state_goto(enddrState()); } else { state_goto(STATE_RUN_TEST_IDLE); jtagTap().wait_time(runtest()); } } return !must_check || (must_check && matched); } bool XSVFPlayerJTAG::is_tdo_as_expected(bool use_mask) { serialComm().DebugBytes(F("... TDO mask: "), tdoMask(), sdrsizeBytes()); serialComm().DebugBytes(F("... expecting:"), tdoExpected(), sdrsizeBytes()); serialComm().DebugBytes(F("... received: "), tdo(), sdrsizeBytes()); for (uint32_t i = 0; i < sdrsizeBytes(); ++i) { uint8_t expected = tdoExpected()[i]; uint8_t actual = tdo()[i]; if (use_mask) { expected &= tdoMask()[i]; actual &= tdoMask()[i]; } if (expected != actual) { serialComm().Debug(F("... NO MATCH!")); return false; } } serialComm().Debug(F("... match!")); return true; } void XSVFPlayerJTAG::test_code(int i) { setSirsizeBits(8); tdi()[0] = 1; while (true) { switch (i) { case 1: { state_goto(STATE_TEST_LOGIC_RESET); *((uint32_t *)tdi()) = 0x01; //*((uint32_t *)tdi()) = 0x00; //*((uint32_t *)tdi()) = 0xBF; //*((uint32_t *)tdi()) = 0xFD; sir(); // setRepeat(0); *((uint32_t *)tdoMask()) = 0xFF8FFF0F; setSdrSizeBits(0x20); *((uint32_t *)tdi()) = 0; *((uint32_t *)tdoExpected()) = 0x93F0E5F6; sdr(true, true, true, true); // uint32_t microseconds = 1000; uint32_t until = micros() + microseconds; while (micros() < until) { } break; } case 2: sdr(true, true, true, true); break; } } } ================================================ FILE: src/XSVFPlayerJTAG.h ================================================ #ifndef XSVFPLAYERJTAG_H #define XSVFPLAYERJTAG_H #include "JTAGTAP.h" #include "SerialComm.h" #include "XSVFPlayer.h" class XSVFPlayerJTAG : public XSVFPlayer { private: SerialComm &m_serial_comm; JTAGTAP m_jtag_tap; uint8_t m_current_state; SerialComm &serialComm() { return m_serial_comm; } JTAGTAP &jtagTap() { return m_jtag_tap; } uint8_t currentState() const { return m_current_state; } void setCurrentState(uint8_t n) { m_current_state = n; } void state_goto(int state); void sir(); bool sdr(bool must_begin, bool must_check, bool use_mask, bool must_end); bool is_tdo_as_expected(bool use_mask); public: XSVFPlayerJTAG(SerialComm &s, JTAGPort &j); virtual ~XSVFPlayerJTAG() {} void test_code(int i); protected: virtual bool execute_XCOMPLETE(); virtual bool execute_XTDOMASK(); virtual bool execute_XSIR(); virtual bool execute_XSDR(); virtual bool execute_XRUNTEST(); virtual bool execute_XRESERVED_5(); virtual bool execute_XRESERVED_6(); virtual bool execute_XREPEAT(); virtual bool execute_XSDRSIZE(); virtual bool execute_XSDRTDO(); virtual bool execute_XSETSDRMASKS(); virtual bool execute_XSDRINC(); virtual bool execute_XSDRB(); virtual bool execute_XSDRC(); virtual bool execute_XSDRE(); virtual bool execute_XSDRTDOB(); virtual bool execute_XSDRTDOC(); virtual bool execute_XSDRTDOE(); virtual bool execute_XSTATE(); virtual bool execute_XENDIR(); virtual bool execute_XENDDR(); virtual bool execute_XSIR2(); virtual bool execute_XCOMMENT(); virtual void execute_XCOMMENT_auxiliar(uint8_t c); virtual bool execute_XWAIT(); }; #endif // XSVFPLAYERJTAG_H