Documentation for “Zerocat Chipflasher” as of Wed, 27 Jul 2022 12:09:29 +0200
Repository: git://zerocat.org/zerocat/projects/chipflasher
Version: v0.6.9-632-7d693973
Branch: flashrom-interface

../../firmware2/src/serprog.spin.txt.html

Propeller Spin/PASM Compiler 'OpenSpin' (c)2012-2016 Parallax Inc. DBA Parallax Semiconductor.
Version 1.00.78
Compiling...
../../firmware2/src/serprog.spin
|-pins.spin
|-error.spin
  |-pins.spin
  |-ledstat.spin
    |-pins.spin
    |-time.spin
|-ledstat.spin
  |-pins.spin
  |-time.spin
|-serprog-com.spin
  |-pins.spin
  |-ASCII.spin
  |-time.spin
  |-ledstat.spin
    |-pins.spin
    |-time.spin
  |-FullDuplexSerial.spin
|-serprog-SPI-PASM.spin
  |-pins.spin
|-time.spin
Done.
Program size is 5276 bytes
TYPE: 43   VALUE: 00000006 (00000000)   NAME: S_ACK
TYPE: 43   VALUE: 00000015 (00000000)   NAME: S_NAK
TYPE: 43   VALUE: 00000000 (00000000)   NAME: S_CMD_NOP
TYPE: 43   VALUE: 00000001 (00000000)   NAME: S_CMD_Q_IFACE
TYPE: 43   VALUE: 00000002 (00000000)   NAME: S_CMD_Q_CMDMAP
TYPE: 43   VALUE: 00000003 (00000000)   NAME: S_CMD_Q_PGMNAME
TYPE: 43   VALUE: 00000004 (00000000)   NAME: S_CMD_Q_SERBUF
TYPE: 43   VALUE: 00000005 (00000000)   NAME: S_CMD_Q_BUSTYPE
TYPE: 43   VALUE: 00000006 (00000000)   NAME: S_CMD_Q_CHIPSIZE
TYPE: 43   VALUE: 00000007 (00000000)   NAME: S_CMD_Q_OPBUF
TYPE: 43   VALUE: 00000008 (00000000)   NAME: S_CMD_Q_WRNMAXLEN
TYPE: 43   VALUE: 00000009 (00000000)   NAME: S_CMD_R_BYTE
TYPE: 43   VALUE: 0000000A (00000000)   NAME: S_CMD_R_NBYTES
TYPE: 43   VALUE: 0000000B (00000000)   NAME: S_CMD_O_INIT
TYPE: 43   VALUE: 0000000C (00000000)   NAME: S_CMD_O_WRITEB
TYPE: 43   VALUE: 0000000D (00000000)   NAME: S_CMD_O_WRITEN
TYPE: 43   VALUE: 0000000E (00000000)   NAME: S_CMD_O_DELAY
TYPE: 43   VALUE: 0000000F (00000000)   NAME: S_CMD_O_EXEC
TYPE: 43   VALUE: 00000010 (00000000)   NAME: S_CMD_SYNCNOP
TYPE: 43   VALUE: 00000011 (00000000)   NAME: S_CMD_Q_RDNMAXLEN
TYPE: 43   VALUE: 00000012 (00000000)   NAME: S_CMD_S_BUSTYPE
TYPE: 43   VALUE: 00000013 (00000000)   NAME: S_CMD_O_SPIOP
TYPE: 43   VALUE: 00000014 (00000000)   NAME: S_CMD_S_SPI_FREQ
TYPE: 43   VALUE: 00000015 (00000000)   NAME: S_CMD_S_PIN_STATE
TYPE: 43   VALUE: 00000000 (00000000)   NAME: BUSTYPE_PARALLEL
TYPE: 43   VALUE: 00000001 (00000000)   NAME: BUSTYPE_LPC
TYPE: 43   VALUE: 00000002 (00000000)   NAME: BUSTYPE_FWH
TYPE: 43   VALUE: 00000003 (00000000)   NAME: BUSTYPE_SPI
TYPE: 43   VALUE: 00000001 (00000000)   NAME: SP_VERSION
TYPE: 43   VALUE: 00000010 (00000000)   NAME: SIZE_SBUF
TYPE: 43   VALUE: 0000012C (00000000)   NAME: SIZE_OPBUF
TYPE: 43   VALUE: 00000100 (00000000)   NAME: SIZE_NWRITE
TYPE: 43   VALUE: 00001000 (00000000)   NAME: SIZE_NREAD
TYPE: 43   VALUE: 00000004 (00000000)   NAME: SIZE_PREFETCH
TYPE: 43   VALUE: 0000004D (00000000)   NAME: SIZE_OPBUF_LONG
TYPE: 43   VALUE: 00000043 (00000000)   NAME: SIZE_INBUF_LONG
TYPE: 43   VALUE: 004C4B40 (00000000)   NAME: SPI_FREQ
TYPE: 43   VALUE: 00000001 (00000000)   NAME: WIP
TYPE: 43   VALUE: 00000014 (00000000)   NAME: RX_TIMEOUT_MS
TYPE: 43   VALUE: 00000003 (00000000)   NAME: MAX_ADDR_LEN
TYPE: 43   VALUE: 00000001 (00000000)   NAME: JEDEC_WRSR
TYPE: 43   VALUE: 00000004 (00000000)   NAME: JEDEC_WRDI
TYPE: 43   VALUE: 00000005 (00000000)   NAME: JEDEC_RDSR
TYPE: 43   VALUE: 00000006 (00000000)   NAME: JEDEC_WREN
TYPE: 43   VALUE: 00C22015 (00000000)   NAME: TEST_ID1
TYPE: 43   VALUE: 00C22014 (00000000)   NAME: TEST_ID2
TYPE: 43   VALUE: 00C22013 (00000000)   NAME: TEST_ID3
TYPE: 43   VALUE: 00C22012 (00000000)   NAME: TEST_ID4
TYPE: 43   VALUE: 00C22010 (00000000)   NAME: TEST_ID5
TYPE: 43   VALUE: 00C22012 (00000000)   NAME: TEST_ID
TYPE: 53   VALUE: 00000001 (00000004)   NAME: START
TYPE: 53   VALUE: 00000202 (00000005)   NAME: PARSE_CTRL
TYPE: 53   VALUE: 00000103 (00000005)   NAME: PARSE_SPIOP
TYPE: 53   VALUE: 00000204 (00000005)   NAME: REPLYNLE
TYPE: 53   VALUE: 00000105 (00000005)   NAME: FETCHNLE
TYPE: 4F   VALUE: 00000006 (00000000)   NAME: PINS
TYPE: 4F   VALUE: 00000107 (00000000)   NAME: ERROR
TYPE: 4F   VALUE: 00000208 (00000000)   NAME: LEDSTAT
TYPE: 4F   VALUE: 00000309 (00000000)   NAME: PCCOM
TYPE: 4F   VALUE: 0000040A (00000000)   NAME: SPI
TYPE: 4F   VALUE: 0000050B (00000000)   NAME: TIME
TYPE: 51   VALUE: 00000000 (00000000)   NAME: PIN_CEN^A
TYPE: 51   VALUE: 00000001 (00000000)   NAME: PIN_CEN_1^A
TYPE: 51   VALUE: 00000002 (00000000)   NAME: PIN_MOSI^A
TYPE: 51   VALUE: 00000003 (00000000)   NAME: PIN_WPN^A
TYPE: 51   VALUE: 00000004 (00000000)   NAME: PIN_SCLK3^A
TYPE: 51   VALUE: 00000005 (00000000)   NAME: PIN_SCLK2^A
TYPE: 51   VALUE: 00000006 (00000000)   NAME: PIN_SCLK1^A
TYPE: 51   VALUE: 00000007 (00000000)   NAME: PIN_SCLK0^A
TYPE: 51   VALUE: 00000008 (00000000)   NAME: PIN_MISO^A
TYPE: 51   VALUE: 00000009 (00000000)   NAME: PIN_PLUGTESTN^A
TYPE: 51   VALUE: 0000000A (00000000)   NAME: PIN_PNP^A
TYPE: 51   VALUE: 0000000C (00000000)   NAME: PIN_HOLDN^A
TYPE: 51   VALUE: 0000000D (00000000)   NAME: LED_YELLOW^A
TYPE: 51   VALUE: 0000000E (00000000)   NAME: LED_ORANGE^A
TYPE: 51   VALUE: 0000000F (00000000)   NAME: LED_GREEN^A
TYPE: 51   VALUE: 00000010 (00000000)   NAME: RST_DISABLE^A
TYPE: 51   VALUE: 0000001F (00000000)   NAME: PIN_RX^A
TYPE: 51   VALUE: 0000001E (00000000)   NAME: PIN_TX^A
TYPE: 51   VALUE: 00002000 (00000000)   NAME: BIT_LED_YELLOW^A
TYPE: 51   VALUE: 00004000 (00000000)   NAME: BIT_LED_ORANGE^A
TYPE: 51   VALUE: 00008000 (00000000)   NAME: BIT_LED_GREEN^A
TYPE: 51   VALUE: 00000400 (00000000)   NAME: BIT_PNP^A
TYPE: 51   VALUE: 00000010 (00000000)   NAME: BIT_SCLK3^A
TYPE: 51   VALUE: 00000020 (00000000)   NAME: BIT_SCLK2^A
TYPE: 51   VALUE: 00000040 (00000000)   NAME: BIT_SCLK1^A
TYPE: 51   VALUE: 00000080 (00000000)   NAME: BIT_SCLK0^A
TYPE: 51   VALUE: 00000008 (00000000)   NAME: BIT_WPN^A
TYPE: 51   VALUE: 00000100 (00000000)   NAME: BIT_MISO^A
TYPE: 51   VALUE: 00000001 (00000000)   NAME: BIT_CEN^A
TYPE: 51   VALUE: 00000002 (00000000)   NAME: BIT_CEN_1^A
TYPE: 51   VALUE: 00001000 (00000000)   NAME: BIT_HOLDN^A
TYPE: 51   VALUE: 00000004 (00000000)   NAME: BIT_MOSI^A
TYPE: 51   VALUE: 00000200 (00000000)   NAME: BIT_PLUGTESTN^A
TYPE: 51   VALUE: 00000003 (00000000)   NAME: MASK_CEN_AVAIL^A
TYPE: 51   VALUE: 000000F0 (00000000)   NAME: MASK_SCLK_AVAIL^A
TYPE: 51   VALUE: 000011FF (00000000)   NAME: MASK_SPI_BUS_AVAIL^A
TYPE: 51   VALUE: 000000F0 (00000000)   NAME: MASK_SCLK_ACTIVE^A
TYPE: 50   VALUE: 00000101 (00000000)   NAME: HIGH^A
TYPE: 50   VALUE: 00000102 (00000000)   NAME: LOW^A
TYPE: 51   VALUE: 00000001 (00000000)   NAME: ERR_RST^B
TYPE: 51   VALUE: 00000002 (00000000)   NAME: ERR_CANCEL^B
TYPE: 51   VALUE: 00000003 (00000000)   NAME: ERR_SUCCESS^B
TYPE: 51   VALUE: 00000004 (00000000)   NAME: ERR_HANDSHAKE^B
TYPE: 51   VALUE: 00000005 (00000000)   NAME: ERR_TIMEOUT^B
TYPE: 51   VALUE: 00000006 (00000000)   NAME: ERR_JOB^B
TYPE: 51   VALUE: 00000007 (00000000)   NAME: ERR_TX^B
TYPE: 51   VALUE: 00000008 (00000000)   NAME: ERR_CODE^B
TYPE: 51   VALUE: 00000009 (00000000)   NAME: ERR_NOCOG^B
TYPE: 50   VALUE: 00000101 (00000000)   NAME: STATUS^B
TYPE: 51   VALUE: FFFFFFFF (00000000)   NAME: P_ON^C
TYPE: 51   VALUE: 00000000 (00000000)   NAME: P_OFF^C
TYPE: 51   VALUE: 00000001 (00000000)   NAME: P_1^C
TYPE: 51   VALUE: 00000002 (00000000)   NAME: P_2^C
TYPE: 51   VALUE: 00000003 (00000000)   NAME: P_3^C
TYPE: 51   VALUE: 00000004 (00000000)   NAME: P_4^C
TYPE: 51   VALUE: 00000005 (00000000)   NAME: P_5^C
TYPE: 51   VALUE: 00000006 (00000000)   NAME: P_MAX^C
TYPE: 51   VALUE: 000F4240 (00000000)   NAME: CYCLE_TIME^C
TYPE: 51   VALUE: 000003E8 (00000000)   NAME: LOOP_TIME^C
TYPE: 51   VALUE: 00000053 (00000000)   NAME: PHASE_INIT^C
TYPE: 51   VALUE: 000003E4 (00000000)   NAME: CYCLE_INIT^C
TYPE: 51   VALUE: 00000000 (00000000)   NAME: TSTAMPERROR^C
TYPE: 50   VALUE: 00000001 (00000000)   NAME: START^C
TYPE: 50   VALUE: 00000002 (00000000)   NAME: STOP^C
TYPE: 50   VALUE: 00000103 (00000000)   NAME: CHECK^C
TYPE: 50   VALUE: 00000104 (00000000)   NAME: SET_D1^C
TYPE: 50   VALUE: 00000105 (00000000)   NAME: SET_D2^C
TYPE: 50   VALUE: 00000106 (00000000)   NAME: SET_D3^C
TYPE: 50   VALUE: 00000007 (00000000)   NAME: SET^C
TYPE: 50   VALUE: 00000008 (00000000)   NAME: CLR^C
TYPE: 50   VALUE: 00000009 (00000000)   NAME: GET_D1^C
TYPE: 50   VALUE: 0000000A (00000000)   NAME: GET_D2^C
TYPE: 50   VALUE: 0000000B (00000000)   NAME: GET_D3^C
TYPE: 51   VALUE: 00000000 (00000000)   NAME: FDS_MODE^D
TYPE: 51   VALUE: 0000E100 (00000000)   NAME: PC_BAUDRATE^D
TYPE: 51   VALUE: 00000014 (00000000)   NAME: STACKSIZE^D
TYPE: 50   VALUE: 00000001 (00000000)   NAME: START^D
TYPE: 50   VALUE: 00000002 (00000000)   NAME: STOP^D
TYPE: 50   VALUE: 00000003 (00000000)   NAME: RXFLUSH^D
TYPE: 50   VALUE: 00000004 (00000000)   NAME: RX^D
TYPE: 50   VALUE: 00000105 (00000000)   NAME: RXTIME^D
TYPE: 50   VALUE: 00000106 (00000000)   NAME: TX^D
TYPE: 50   VALUE: 00000107 (00000000)   NAME: DEC^D
TYPE: 50   VALUE: 00000208 (00000000)   NAME: HEX^D
TYPE: 50   VALUE: 00000109 (00000000)   NAME: STR^D
TYPE: 51   VALUE: 0000001E (00000000)   NAME: PIN_TX^D
TYPE: 51   VALUE: 0000001F (00000000)   NAME: PIN_RX^D
TYPE: 51   VALUE: 00000032 (00000000)   NAME: FDS_STOP^D
TYPE: 51   VALUE: 00000000 (00000000)   NAME: FUNCID__READY^E
TYPE: 51   VALUE: 00000001 (00000000)   NAME: FUNCID__INIT1^E
TYPE: 51   VALUE: 00000002 (00000000)   NAME: FUNCID__POWERON^E
TYPE: 51   VALUE: 00000003 (00000000)   NAME: FUNCID__POWEROFF^E
TYPE: 51   VALUE: 00000004 (00000000)   NAME: FUNCID__LO_CEN^E
TYPE: 51   VALUE: 00000005 (00000000)   NAME: FUNCID__HI_CEN^E
TYPE: 51   VALUE: 00000006 (00000000)   NAME: FUNCID__LO_WPN^E
TYPE: 51   VALUE: 00000007 (00000000)   NAME: FUNCID__HI_WPN^E
TYPE: 51   VALUE: 00000008 (00000000)   NAME: FUNCID__READ^E
TYPE: 51   VALUE: 00000009 (00000000)   NAME: FUNCID__WRITE^E
TYPE: 51   VALUE: 0000000A (00000000)   NAME: FUNCID__SETSPIFRQ^E
TYPE: 51   VALUE: 0000001E (00000000)   NAME: POWERUP_SPI^E
TYPE: 51   VALUE: 00000019 (00000000)   NAME: POWERUP_SPILINES^E
TYPE: 51   VALUE: 00000064 (00000000)   NAME: POWERUP_OFFTIME^E
TYPE: 50   VALUE: 00000001 (00000000)   NAME: GO^E
TYPE: 50   VALUE: 00000102 (00000000)   NAME: SET_SPIFREQ^E
TYPE: 50   VALUE: 00000003 (00000000)   NAME: INIT^E
TYPE: 50   VALUE: 00000004 (00000000)   NAME: POWER_ON^E
TYPE: 50   VALUE: 00000005 (00000000)   NAME: POWER_OFF^E
TYPE: 50   VALUE: 00000006 (00000000)   NAME: CHIP_ENABLE^E
TYPE: 50   VALUE: 00000007 (00000000)   NAME: CHIP_DISABLE^E
TYPE: 50   VALUE: 00000008 (00000000)   NAME: WPN_LOW^E
TYPE: 50   VALUE: 00000009 (00000000)   NAME: WPN_HIGH^E
TYPE: 50   VALUE: 0000020A (00000000)   NAME: IN^E
TYPE: 50   VALUE: 0000020B (00000000)   NAME: OUT^E
TYPE: 51   VALUE: 0000000A (00000000)   NAME: SPI_PNP^E
TYPE: 51   VALUE: 00000000 (00000000)   NAME: SPI_CEN^E
TYPE: 51   VALUE: 00000001 (00000000)   NAME: SPI_CEN_1^E
TYPE: 51   VALUE: 00000008 (00000000)   NAME: SPI_MISO^E
TYPE: 51   VALUE: 00000002 (00000000)   NAME: SPI_MOSI^E
TYPE: 51   VALUE: 00000003 (00000000)   NAME: SPI_WPN^E
TYPE: 51   VALUE: 0000000C (00000000)   NAME: SPI_HOLDN^E
TYPE: 51   VALUE: 00000007 (00000000)   NAME: SPI_SCLK0^E
TYPE: 51   VALUE: 00000006 (00000000)   NAME: SPI_SCLK1^E
TYPE: 51   VALUE: 00000005 (00000000)   NAME: SPI_SCLK2^E
TYPE: 51   VALUE: 00000004 (00000000)   NAME: SPI_SCLK3^E
TYPE: 51   VALUE: 00000007 (00000000)   NAME: CTRA_APIN^E
TYPE: 51   VALUE: 00000009 (00000000)   NAME: CTRA_BPIN^E
TYPE: 51   VALUE: 00000006 (00000000)   NAME: CTRB_APIN^E
TYPE: 51   VALUE: 00000009 (00000000)   NAME: CTRB_BPIN^E
TYPE: 51   VALUE: 00000003 (00000000)   NAME: BITMASK_CEN^E
TYPE: 51   VALUE: 000000F0 (00000000)   NAME: BITMASK_SCLK^E
TYPE: 51   VALUE: 000000F0 (00000000)   NAME: BITMASK_SCLK_ENABLED^E
TYPE: 51   VALUE: 000000C0 (00000000)   NAME: BITMASK_SCLK_ENABLED_HF^E
TYPE: 51   VALUE: 000011FF (00000000)   NAME: BITMASK_SPI^E
TYPE: 51   VALUE: 0000017D (00000000)   NAME: SPIN_OVERHEAD^F
TYPE: 51   VALUE: 00000032 (00000000)   NAME: FDS_STOP^F
TYPE: 51   VALUE: 00000064 (00000000)   NAME: TCOOL_LINE^F
TYPE: 51   VALUE: 000004B0 (00000000)   NAME: TCOOL_BLOCK^F
TYPE: 50   VALUE: 00000101 (00000000)   NAME: SLEEP^F
TYPE: 50   VALUE: 00000102 (00000000)   NAME: SLEEP_MS^F
TYPE: 50   VALUE: 00000203 (00000000)   NAME: WAIT^F
TYPE: 50   VALUE: 00000204 (00000000)   NAME: WAIT_MS^F
TYPE: 4A   VALUE: 00000030 (00000000)   NAME: DEVNAME
TYPE: 48   VALUE: 00000040 (00000010)   NAME: CMDMAP
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: ERRCODE
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: OPBUF
TYPE: 4E   VALUE: 00000138 (00000000)   NAME: INBUF
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: POPBUF
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: PINBUF
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: ERRCODE
TYPE: 4E   VALUE: 0000000C (00000000)   NAME: C
TYPE: 4E   VALUE: 00000010 (00000000)   NAME: N
TYPE: 4E   VALUE: 00000014 (00000000)   NAME: X
TYPE: 4E   VALUE: 00000018 (00000000)   NAME: P
TYPE: 4E   VALUE: 0000001C (00000000)   NAME: V
TYPE: 4E   VALUE: 00000020 (00000000)   NAME: IRD
TYPE: 4E   VALUE: 00000024 (00000000)   NAME: IWR
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: PINBUF
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: ERRCODE
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: C
TYPE: 4E   VALUE: 0000000C (00000000)   NAME: N
TYPE: 4E   VALUE: 00000010 (00000000)   NAME: INLEN
TYPE: 4E   VALUE: 00000014 (00000000)   NAME: OUTLEN
TYPE: 4E   VALUE: 00000018 (00000000)   NAME: V
TYPE: 4E   VALUE: 0000001C (00000000)   NAME: ADDR
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: N
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: L
TYPE: 4E   VALUE: 0000000C (00000000)   NAME: X
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: N
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: R
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: X

Distilled longs: 318

OBJ bytes: 6104

_CLKMODE: 00
_CLKFREQ: 00B71B00

0000- A0 01 8C 14 B0 08 06 06 60 00 40 02 A2 00 1C 00   ........`.@.....
0010- 2F 04 18 00 7D 08 04 00 96 08 04 00 24 14 00 00   /...}.......$...
0020- B0 08 00 00 BC 09 50 00 DC 08 A0 00 60 0E 88 01   ......P.....`...
0030- 44 14 A0 01 5A 65 72 6F 63 61 74 21 00 00 00 00   D...Zerocat!....
0040- 00 00 00 00 BF FF 3F 00 00 00 00 00 00 00 00 00   ......?.........
0050- 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
0060- 00 00 00 00 01 06 0A 01 01 06 0A 03 01 3A 98 96   .............:..
0070- 80 06 0A 02 67 35 38 4D 1A CF 81 38 35 38 43 1A   ....g58M...858C.
0080- 01 06 09 01 00 67 CF 81 38 05 02 61 01 35 06 08   .....g..8..a.5..
0090- 04 01 06 0A 05 67 35 38 4D 1A CF 81 38 35 38 43   .....g58M...858C
00A0- 1A 01 06 09 02 32 37 21 61 35 CE 24 80 CD 20 01   .....27!a5.$.. .
00B0- 36 06 08 04 00 06 09 04 6D 01 34 06 08 04 39 04   6.......m.4...9.
00C0- 2B 6C 35 0D 80 6D 38 09 0D 80 6F 38 0A 0D 80 71   +l5..m8...o8...q
00D0- 38 0E 0D 80 73 38 0C 0D 80 9F 38 0D 0D 80 CB 37   8...s8....8....7
00E0- 23 0D 81 1B 36 0D 82 25 37 00 0D 82 2D 37 02 0D   #...6..%7...-7..
00F0- 82 3F 37 01 0D 82 48 38 05 0D 82 51 37 03 0D 82   .?7...H8...Q7...
0100- 5A 38 11 0D 82 62 37 21 0D 82 6B 37 22 0D 82 7D   Z8...b7!..k7"..}
0110- 38 12 0D 82 87 38 14 0D 82 9B 38 15 0D 82 D4 38   8....8....8....8
0120- 13 0D 82 ED 38 0B 0D 82 F9 37 22 61 37 02 14 04   ....8....7"a7...
0130- 83 00 0C 01 38 06 06 09 06 0C 01 38 15 06 09 06   ....8......8....
0140- 0C 01 38 15 06 09 06 0C 39 01 2C CC 24 ED 38 05   ..8.....9.,.$.8.
0150- FE 0A 1F 6C 64 CE 24 AE 91 37 01 08 0D 00 06 09   ...ld.$..7......
0160- 04 7D 7C 64 CE 24 AE 91 09 73 01 38 06 06 09 06   .}|d.$...s.8....
0170- 04 06 01 38 15 06 09 06 0C 39 01 2C CC 24 ED 38   ...8.....9.,.$.8
0180- 05 FE 0A 1F 6C 64 CE 24 AE 91 37 01 08 0D 00 06   ....ld.$..7.....
0190- 09 04 7D 7C 64 CE 24 AE 91 09 73 01 38 06 06 09   ..}|d.$...s.8...
01A0- 06 04 06 01 38 15 06 09 06 0C CC 24 79 6C 64 7A   ....8......$yldz
01B0- AE 91 35 71 35 75 00 06 09 04 7D 7C 64 7A AE 91   ..5q5u....}|dz..
01C0- 7C 74 E3 72 4A 37 02 35 37 03 76 06 69 39 01 2C   |t.rJ7.57.v.i9.,
01D0- CC 24 ED 37 22 70 EC FE 0A 1E 78 CD 24 37 21 70   .$.7"p....x.$7!p
01E0- EC 08 0D 00 06 09 04 7D 7C 64 CE 24 AE 91 09 73   .......}|d.$...s
01F0- 01 38 06 06 09 06 04 06 01 38 15 06 09 06 0C CC   .8.......8......
0200- 20 CC 24 F9 0A 80 F9 39 02 F9 64 CE 20 AE 90 38    .$....9..d. ..8
0210- 0C 0D 17 38 0D 0D 80 5B 38 0E 0D 80 B9 01 38 15   ...8...[8.....8.
0220- 06 09 06 37 02 14 04 80 D7 0C 35 75 37 03 71 64   ...7......5u7.qd
0230- CE 20 AE 90 70 E3 76 4A 37 62 37 03 35 72 06 6F   . ..p.vJ7b7.5r.o
0240- 64 CE 20 AE 90 7D 01 06 0A 09 01 06 0A 06 01 37   d. ..}.........7
0250- 00 36 37 22 E3 06 0A 0B 01 74 36 38 17 E3 06 0A   .67".....t68....
0260- 0B 01 7C 36 37 22 E3 06 0A 0B 01 06 0A 07 01 06   ..|67"..........
0270- 0A 08 0C 35 71 35 7D 64 CE 20 AE 90 7C E3 72 4A   ...5q5}d. ..|.rJ
0280- 37 02 35 37 03 7E 06 6F 35 75 37 03 7D 64 CE 20   7.57.~.o5u7.}d. 
0290- AE 90 7C E3 76 4A 37 62 37 03 35 7E 06 6F 01 06   ..|.vJ7b7.5~.o..
02A0- 0A 09 01 06 0A 06 01 37 00 36 37 22 E3 06 0A 0B   .......7.67"....
02B0- 01 74 36 38 17 E3 06 0A 0B 70 08 11 64 CE 20 AE   .t68.....p..d. .
02C0- 90 7D 01 7C 36 37 22 E3 06 0A 0B 09 6F 01 06 0A   .}.|67".....o...
02D0- 07 01 06 0A 08 0C 35 75 35 71 64 CE 20 AE 90 70   ......5u5qd. ..p
02E0- E3 76 4A 37 02 35 38 18 72 06 6F 35 C0 3A 0F 42   .vJ7.58.r.o5.:.B
02F0- 40 F6 74 F4 39 01 7D E4 3F 91 EC 23 0C 04 FE FF   @.t.9.}.?..#....
0300- 35 CE 24 80 CD 20 01 38 06 06 09 06 0C 01 38 06   5.$.. .8......8.
0310- 06 09 06 01 37 00 36 05 04 0C 01 38 06 06 09 06   ....7.6....8....
0320- 35 71 01 87 40 70 90 06 09 06 35 37 24 72 02 72   5q..@p....57$r.r
0330- 0C 01 38 06 06 09 06 01 37 21 37 07 05 04 0C 01   ..8.....7!7.....
0340- 38 06 06 09 06 01 37 00 37 03 05 04 0C 01 38 06   8.....7.7.....8.
0350- 06 09 06 01 37 21 F3 06 09 06 0C 01 38 15 06 09   ....7!......8...
0360- 06 01 38 06 06 09 06 0C 01 38 06 06 09 06 01 37   ..8......8.....7
0370- 21 37 0B 05 04 0C 01 38 06 06 09 06 35 71 01 C7   !7.....8....5q..
0380- 30 70 90 06 09 06 35 37 23 72 02 72 0C 01 38 06   0p....57#r.r..8.
0390- 06 09 06 01 37 00 39 01 2C 05 04 0C 00 06 09 04   ....7.9.,.......
03A0- 37 21 F3 E8 0A 08 01 38 06 06 09 06 04 06 01 38   7!.....8.......8
03B0- 15 06 09 06 0C 00 37 01 05 05 75 74 3B 02 62 5A   ......7...ut;.bZ
03C0- 00 FE 0A 08 3B 02 62 5A 00 75 04 14 74 3A 98 96   ....;.bZ.u..t:..
03D0- 80 FE 0A 07 3A 98 96 80 75 04 05 3A 4C 4B 40 75   ....:...u..:LK@u
03E0- 00 74 06 0A 02 75 01 38 06 06 09 06 01 37 01 74   .t...u.8.....7.t
03F0- 05 04 0C 00 06 09 04 FF 0A 0C 01 06 0A 05 01 38   ...............8
0400- 06 06 09 06 04 0A 01 06 0A 04 01 38 06 06 09 06   ...........8....
0410- 0C 00 68 05 03 62 80 37 21 FB 0A 05 37 02 14 04   ..h..b.7!...7...
0420- 11 0C 35 CE 24 80 CD 20 01 38 06 06 09 06 0C 04   ..5.$.. .8......
0430- FC 7D 32 37 21 61 00 06 09 04 35 E3 71 00 06 09   .}27!a....5.q...
0440- 04 37 02 E3 72 4A 00 06 09 04 37 03 E3 72 4A 35   .7..rJ....7..rJ5
0450- 6D 37 21 70 EC 08 16 00 38 14 06 09 05 7A 80 34   m7!p....8....z.4
0460- FC 0A 03 38 05 33 78 64 6E AE 91 09 6A 35 6D 64   ...8.3xdn...j5md
0470- 6E AE 90 35 E3 75 64 6E AE 90 37 02 E3 76 4A 64   n..5.udn..7..vJd
0480- 6E AE 90 37 03 E3 76 4A 64 6E AE 90 35 E3 69 70   n..7..vJdn..5.ip
0490- 37 01 FE 0A 19 64 6E AE 90 37 03 E3 7D 64 6E AE   7....dn..7..}dn.
04A0- 90 37 02 E3 7E 4A 64 6E AE 90 35 E3 7E 4A 39 08   .7..~Jdn..5.~J9.
04B0- 7C 68 35 0D 80 7E 36 0D 80 92 37 00 0D 80 BB 37   |h5..~6...7....7
04C0- 21 0D 80 F6 37 01 0D 81 26 38 05 0D 81 42 38 06   !...7...&8...B8.
04D0- 0D 81 69 38 15 0D 81 85 38 1D 0D 81 80 38 50 0D   ..i8....8....8P.
04E0- 81 A6 38 5A 0D 81 FF 38 60 0D 82 37 38 62 0D 82   ..8Z...8`..78b..
04F0- 32 38 C7 0D 82 2D 37 04 0D 82 48 38 52 0D 82 43   28...-7...H8R..C
0500- 38 81 0D 82 3E 38 C4 0D 82 39 38 D7 0D 82 34 38   8...>8...98...48
0510- D8 0D 82 2F 38 DB 0D 82 2A 38 AB 0D 82 4E 38 AD   .../8...*8...N8.
0520- 0D 82 75 38 90 0D 82 F7 38 9F 0D 83 27 01 38 15   ..u8....8...'.8.
0530- 06 09 06 0C 01 06 0A 06 01 35 36 37 22 E3 06 0A   .........567"...
0540- 0B 01 06 0A 07 01 38 06 06 09 06 0C 64 6E AE 90   ......8.....dn..
0550- 79 01 06 0A 09 01 06 0A 06 01 36 36 37 22 E3 06   y.........667"..
0560- 0A 0B 01 78 36 37 22 E3 06 0A 0B 01 06 0A 07 01   ...x67".........
0570- 06 0A 08 01 38 06 06 09 06 0C 01 06 0A 09 01 06   ....8...........
0580- 0A 06 01 37 00 36 37 22 E3 06 0A 0B 01 7C 36 38   ...7.67".....|68
0590- 17 E3 06 0A 0B 70 37 01 ED 08 10 64 6E AE 90 79   .....p7....dn..y
05A0- 01 78 36 37 22 E3 06 0A 0B 09 70 01 06 0A 07 01   .x67".....p.....
05B0- 06 0A 08 01 38 06 06 09 06 0C 01 38 06 06 09 06   ....8......8....
05C0- 01 06 0A 06 01 37 21 36 37 22 E3 06 0A 0B 01 7C   .....7!67".....|
05D0- 36 38 17 E3 06 0A 0B 74 08 10 00 37 02 37 27 06   68.....t...7.7'.
05E0- 0A 0A 79 01 78 06 09 06 09 70 01 06 0A 07 0C 01   ..y.x....p......
05F0- 06 0A 09 01 06 0A 06 01 37 01 36 37 22 E3 06 0A   ........7.67"...
0600- 0B 01 06 0A 07 01 06 0A 08 01 38 06 06 09 06 0C   ..........8.....
0610- 01 38 06 06 09 06 01 06 0A 06 01 38 05 36 37 22   .8.........8.67"
0620- E3 06 0A 0B 74 08 10 00 37 02 37 27 06 0A 0A 79   ....t...7.7'...y
0630- 01 78 06 09 06 09 70 01 06 0A 07 0C 01 06 0A 09   .x....p.........
0640- 01 06 0A 06 01 38 06 36 37 22 E3 06 0A 0B 01 06   .....8.67"......
0650- 0A 07 01 06 0A 08 01 38 06 06 09 06 0C 01 38 06   .......8......8.
0660- 06 09 06 01 06 0A 06 01 68 36 37 22 E3 06 0A 0B   ........h67"....
0670- 74 08 10 00 37 02 37 27 06 0A 0A 79 01 78 06 09   t...7.7'...y.x..
0680- 06 09 70 01 06 0A 07 0C 39 06 E1 70 36 0D 0B 37   ..p.....9..p6..7
0690- 01 0D 28 01 38 15 06 09 06 0C 01 06 0A 09 01 06   ..(.8...........
06A0- 0A 06 01 38 50 36 37 22 E3 06 0A 0B 01 06 0A 07   ...8P67"........
06B0- 01 06 0A 08 01 38 06 06 09 06 0C 01 06 0A 09 01   .....8..........
06C0- 06 0A 06 01 38 50 36 37 22 E3 06 0A 0B 01 7C 36   ....8P67".....|6
06D0- 38 17 E3 06 0A 0B 01 06 0A 07 01 06 0A 08 01 38   8..............8
06E0- 06 06 09 06 0C 0C 01 38 06 06 09 06 01 06 0A 06   .......8........
06F0- 01 68 36 37 22 E3 06 0A 0B 01 7C 36 38 17 E3 06   .h67".....|68...
0700- 0A 0B 01 35 36 37 22 E3 06 0A 0B 74 08 10 00 37   ...567"....t...7
0710- 02 37 27 06 0A 0A 79 01 78 06 09 06 09 70 01 06   .7'...y.x....p..
0720- 0A 07 0C 01 06 0A 09 01 06 0A 06 01 68 36 37 22   ............h67"
0730- E3 06 0A 0B 01 06 0A 07 01 06 0A 08 01 38 06 06   .............8..
0740- 09 06 0C 01 06 0A 09 01 06 0A 06 01 68 36 37 22   ............h67"
0750- E3 06 0A 0B 01 7C 36 38 17 E3 06 0A 0B 01 06 0A   .....|68........
0760- 07 01 06 0A 08 01 38 06 06 09 06 0C 01 38 06 06   ......8......8..
0770- 09 06 01 06 0A 06 01 38 AB 36 37 22 E3 06 0A 0B   .......8.67"....
0780- 74 08 10 00 37 02 37 27 06 0A 0A 79 01 78 06 09   t...7.7'...y.x..
0790- 06 09 70 01 06 0A 07 0C 39 08 1A 70 37 00 0D 0B   ..p.....9..p7...
07A0- 38 05 0D 37 01 38 15 06 09 06 0C 64 6E AE 90 35   8..7.8.....dn..5
07B0- E3 79 64 6E AE 90 37 02 E3 7A 4A 01 06 0A 09 01   .ydn..7..zJ.....
07C0- 06 0A 06 01 78 36 37 23 E3 06 0A 0B 01 06 0A 07   ....x67#........
07D0- 01 06 0A 08 01 38 06 06 09 06 0C 64 6E AE 90 35   .....8.....dn..5
07E0- E3 79 64 6E AE 90 37 02 E3 7A 4A 01 06 0A 09 01   .ydn..7..zJ.....
07F0- 06 0A 06 01 38 AD 36 37 22 E3 06 0A 0B 01 7C 36   ....8.67".....|6
0800- 38 17 E3 06 0A 0B 01 78 36 37 23 E3 06 0A 0B 01   8......x67#.....
0810- 06 0A 07 01 06 0A 08 01 38 06 06 09 06 0C 0C 01   ........8.......
0820- 38 06 06 09 06 01 06 0A 06 01 38 90 36 37 22 E3   8.........8.67".
0830- 06 0A 0B 01 7C 36 38 17 E3 06 0A 0B 74 08 10 00   ....|68.....t...
0840- 37 02 37 27 06 0A 0A 79 01 78 06 09 06 09 70 01   7.7'...y.x....p.
0850- 06 0A 07 0C 01 38 06 06 09 06 01 06 0A 06 01 38   .....8.........8
0860- 9F 36 37 22 E3 06 0A 0B 74 08 10 00 37 02 37 27   .67"....t...7.7'
0870- 06 0A 0A 79 01 78 06 09 06 09 70 01 06 0A 07 0C   ...y.x....p.....
0880- 32 66 3E 35 6D 01 68 6C E2 37 27 E8 06 09 06 37   2f>5m.hl.7'....7
0890- 02 35 64 37 21 E3 6E 06 6C 32 66 3E 35 69 00 06   .5d7!.n.l2f>5i..
08A0- 09 04 68 E3 62 4A 37 02 35 64 37 02 F4 6A 06 6E   ..h.bJ7.5d7..j.n
08B0- 32 00 00 00 2C 00 02 02 10 00 00 00 74 0B 00 00   2...,.......t...
08C0- 0C 01 00 00 38 29 64 36 0D 0D 37 00 0D 0C 64 37   ....8)d6..7...d7
08D0- 21 ED 38 06 E5 61 0C 34 61 0C 35 61 0C 32 00 00   !.8..a.4a.5a.2..
08E0- C0 00 0A 05 3C 00 00 00 58 00 00 00 6B 00 00 00   ....<...X...k...
08F0- 70 00 00 00 76 00 00 00 7D 00 00 00 8D 00 00 00   p...v...}.......
0900- 9D 00 00 00 AE 00 00 00 48 0B 54 00 C0 00 54 00   ........H.T...T.
0910- 68 0B 54 00 E0 00 54 00 B0 02 A4 00 00 37 24 38   h.T...T......7$8
0920- 1E 35 39 E1 00 06 0E 01 36 EC 8A 50 80 35 FA 0B   .59.....6..P.5..
0930- 02 04 69 01 06 0E 03 32 88 50 0A 0E 01 38 32 3F   ..i....2.P...82?
0940- 91 06 0C 04 8A 50 98 36 ED 21 32 01 06 0E 03 32   .....P.6.!2....2
0950- 00 06 0E 06 61 32 00 64 06 0E 05 61 32 01 34 06   ....a2.d...a2.4.
0960- 0D 06 01 64 06 0E 07 01 35 06 0D 06 32 01 34 06   ...d....5...2.4.
0970- 0D 06 01 64 06 0E 0A 01 35 06 0D 06 32 01 34 06   ...d....5...2.4.
0980- 0D 06 01 64 68 06 0E 0B 01 35 06 0D 06 32 01 34   ...dh....5...2.4
0990- 06 0D 06 00 64 06 0E 08 61 01 35 06 0D 06 32 00   ....d...a.5...2.
09A0- 20 00 03 00 0C 00 00 00 17 00 00 00 64 37 24 FA    ...........d7$.
09B0- 64 37 26 F9 F0 61 32 64 38 0D FC 61 32 00 00 00   d7&..a2d8..a2...
09C0- D0 01 11 02 50 00 04 00 63 00 00 00 74 00 00 00   ....P...c...t...
09D0- 82 00 00 00 88 00 00 00 8E 00 00 00 94 00 00 00   ................
09E0- A1 00 00 00 AE 00 00 00 B5 00 00 00 BC 00 00 00   ................
09F0- C3 00 00 00 D2 00 00 00 DA 00 00 00 E2 00 00 00   ................
0A00- EA 00 24 00 68 0A 50 00 88 0A 50 00 00 00 00 00   ..$.h.P...P.....
0A10- 01 05 02 37 03 43 15 28 36 EC 87 4C 35 92 80 35   ...7.C.(6..L5..5
0A20- FA 65 32 87 4C 35 90 35 FA 0A 08 87 4C 35 92 98   .e2.L5.5....L5..
0A30- 36 ED 21 32 01 05 07 01 64 3F 91 06 12 04 01 05   6.!2....d?......
0A40- 08 32 64 87 4D 35 91 32 64 87 4E 35 91 32 64 87   .2d.M5.2d.N5.2d.
0A50- 4F 35 91 32 01 34 05 04 01 34 05 05 01 34 05 06   O5.2.4...4...4..
0A60- 32 01 35 05 04 01 35 05 05 01 35 05 06 32 87 4D   2.5...5...5..2.M
0A70- 35 92 90 61 32 87 4E 35 92 90 61 32 87 4F 35 92   5..a2.N5..a2.O5.
0A80- 90 61 32 37 23 38 0D 3E D4 18 37 23 38 0D 3E D6   .a27#8.>..7#8.>.
0A90- 1C 32 64 35 FB 37 23 3D B4 32 64 35 FB 38 0E 3D   .2d5.7#=.2d5.8.=
0AA0- B4 32 64 35 FB 38 0D 3D B4 32 01 05 0C 35 CD 24   .2d5.8.=.2...5.$
0AB0- 35 69 3F 91 65 87 4D 35 92 90 6D 87 4E 35 92 90   5i?.e.M5..m.N5..
0AC0- 71 87 4F 35 92 90 75 6C 35 FA 7A 48 70 35 FA 7E   q.O5..ul5.zHp5.~
0AD0- 48 74 35 FA CE 20 48 68 35 FC 0A 34 38 53 69 CC   Ht5.. Hh5..48Si.
0AE0- 24 35 FC 0A 1A 39 03 E4 CD 24 6C 36 E3 36 ED 79   $5...9...$l6.6.y
0AF0- 70 36 E3 36 ED 7D 74 36 E3 36 ED CD 20 04 11 78   p6.6.}t6.6.. ..x
0B00- 35 FA 7A 4C 7C 35 FA 7E 4C CC 20 35 FA CE 20 4C   5.zL|5.~L. 5.. L
0B10- 39 01 6D 6C 34 0D 0A 36 38 06 0E 0A 01 35 05 0D   9.ml4..68....5..
0B20- 0C 01 34 05 0D 0C 01 78 36 E8 05 0D 0C 39 01 8A   ..4....x6....9..
0B30- 70 34 0D 0A 36 38 06 0E 0A 01 35 05 0E 0C 01 34   p4..68....5....4
0B40- 05 0E 0C 01 7C 36 E8 05 0E 0C 39 01 B4 74 34 0D   ....|6....9..t4.
0B50- 0E 37 60 0D 0F 36 38 06 0E 12 01 35 05 0F 0C 01   .7`..68....5....
0B60- 34 05 0F 0C 01 38 09 3D 92 05 0F 0C 01 CC 20 36   4....8.=...... 6
0B70- E8 05 0F 0C 6A 3E CE 24 3E 64 35 ED 35 C0 3A 0F   ....j>.$>d5.5.:.
0B80- 42 40 F6 39 03 E8 F4 EC 23 04 FF 26 32 00 00 00   B@.9....#..&2...
0B90- D4 02 0D 00 88 01 00 00 AD 01 00 00 C3 01 00 00   ................
0BA0- CD 01 00 00 E0 01 04 00 FD 01 00 00 09 02 00 00   ................
0BB0- 2A 02 00 00 39 02 00 00 49 02 08 00 95 02 00 00   *...9...I.......
0BC0- BD 02 00 00 F0 AB BC A0 10 AA FC 80 55 AC BC 08   ............U...
0BD0- 01 B4 FC A0 56 B4 BC 2C 04 AA FC 80 55 AC BC 08   ....V..,....U...
0BE0- 01 C0 FC A0 56 C0 BC 2C 04 AA FC 80 55 B0 BC 08   ....V..,....U...
0BF0- 04 AA FC 80 55 B2 BC 08 04 AA FC 80 55 B6 BC 08   ....U.......U...
0C00- 5B C2 BC A0 10 C2 FC 80 04 B0 7C 62 02 B0 7C 61   [.........|b..|a
0C10- 60 E8 9B 68 60 EC AB 68 33 CA FC A0 65 BE BC 5C   `..h`..h3...e..\
0C20- 01 B0 7C 62 F2 B5 3C 61 16 00 64 5C 09 BA FC A0   ..|b..<a..d\....
0C30- 59 BC BC A0 01 BC FC 28 F1 BD BC 80 59 BC BC 80   Y......(....Y...
0C40- 65 BE BC 5C 5E AA BC A0 F1 AB BC 84 00 AA 7C C1   e..\^.........|.
0C50- 1F 00 4C 5C F2 B5 3C 61 01 B8 FC 30 1E BA FC E4   ..L\..<a...0....
0C60- 17 B8 FC 28 FF B8 FC 60 01 B0 7C 62 FF B8 D4 6C   ...(...`..|b...l
0C70- F0 AD BC 08 5B AC BC 80 56 B8 3C 00 5B AC BC 84   ....[...V.<.[...
0C80- 01 AC FC 80 0F AC FC 60 F0 AD 3C 08 16 00 7C 5C   .......`..<...|\
0C90- 5F CA BC 5C F0 AB BC A0 08 AA FC 80 55 AC BC 08   _..\........U...
0CA0- 04 AA FC 80 55 AE BC 08 57 AC 3C 86 33 00 68 5C   ....U...W.<.3.h\
0CB0- 61 AE BC 80 57 C4 BC 00 61 AE BC 84 01 AE FC 80   a...W...a.......
0CC0- 0F AE FC 60 55 AE 3C 08 00 C5 FC 68 02 C4 FC 2C   ...`U.<....h...,
0CD0- 01 C4 FC 68 0B C6 FC A0 F1 C9 BC A0 04 B0 7C 62   ...h..........|b
0CE0- 02 B0 7C 61 01 C4 E0 6C 01 C4 FC 29 60 E8 AB 70   ..|a...l...)`..p
0CF0- 60 EC 97 74 59 C8 BC 80 5F CA BC 5C 64 AA BC A0   `..tY..._..\d...
0D00- F1 AB BC 84 00 AA 7C C1 4D 00 4C 5C 46 C6 FC E4   ......|.M.L\F...
0D10- 33 00 7C 5C 00 00 00 00 01 05 02 43 35 37 01 1A   3.|\.......C57..
0D20- 53 67 37 21 1E 35 C0 70 F6 5D 8B 24 C9 20 34 C7   Sg7!.5.p.].$. 4.
0D30- 34 43 28 36 EC 87 81 84 35 92 80 61 32 87 81 84   4C(6....5..a2...
0D40- 35 90 0A 09 87 81 84 35 92 98 36 ED 21 43 35 38   5......5..6.!C58
0D50- 09 1A 32 00 05 04 35 FE 0A 02 04 77 32 62 3E 44   ..2...5....w2b>D
0D60- 40 FB 0A 0B 44 98 24 61 44 36 EC 37 23 E8 45 32   @...D.$aD6.7#.E2
0D70- 3F 91 69 00 05 04 62 80 35 FE 3F 91 68 ED 35 C0   ?.i...b.5.?.h.5.
0D80- 39 03 E8 F6 F6 64 FA F2 0B 02 04 67 32 00 05 04   9....d.....g2...
0D90- 62 80 35 F9 0A 02 04 75 32 4C 48 36 EC 37 23 E8   b.5....u2LH6.7#.
0DA0- FB 0B 02 04 74 64 48 99 34 48 36 EC 37 23 E8 49   ....tdH.4H6.7#.I
0DB0- 58 37 02 E8 0A 03 01 05 06 32 64 16 61 60 08 08   X7.......2d.a`..
0DC0- 01 66 AE 80 05 07 09 78 32 66 AE A0 61 60 08 08   .f.....x2f..a`..
0DD0- 01 66 A6 80 05 07 09 78 32 64 37 1E FC 6D 64 35   .f.....x2d7..md5
0DE0- F9 0A 0A 64 6C EC E9 65 01 38 2D 05 07 3B 3B 9A   ...dl..e.8-..;;.
0DF0- CA 00 69 38 0A 08 2D 64 68 FE 0A 16 01 64 68 F6   ..i8..-dh....dh.
0E00- 38 30 EC 6C 68 36 FC F4 EC 05 07 68 66 57 62 1C   80.lh6.....hfWb.
0E10- 04 0C 60 68 36 FC F2 0A 05 01 38 30 05 07 38 0A   ..`h6.....80..8.
0E20- 6A 56 09 53 32 37 02 68 ED 37 00 E3 66 43 68 08   jV.S27.h.7..fCh.
0E30- 1B 01 35 39 02 B8 37 01 66 C1 37 23 E8 38 30 38   ..59..7.f.7#.808
0E40- 39 12 38 41 38 46 12 0F 05 07 09 65 32 37 04 68   9.8A8F.....e27.h
0E50- ED 66 43 68 08 0D 01 36 66 C1 36 E8 38 30 EC 05   .fCh...6f.6.80..
0E60- 07 09 73 32 C4 05 0C 01 00 05 00 00 0A 05 00 00   ..s2............
0E70- 13 05 00 00 23 05 00 00 38 05 00 00 49 05 00 00   ....#...8...I...
0E80- 58 05 00 00 67 05 00 00 76 05 00 00 85 05 00 00   X...g...v.......
0E90- A7 05 00 00 C4 05 18 00 F0 6B BE A0 35 67 BE 08   .........k..5g..
0EA0- 01 66 7E EC 08 66 7E 86 C4 2E EA 5C 09 66 7E 86   .f~..f~....\.f~.
0EB0- 4B 86 E9 5C 04 66 7E 86 1C 3C E8 5C 05 66 7E 86   K..\.f~..<.\.f~.
0EC0- 1F 42 E8 5C 06 66 7E 86 19 36 E8 5C 07 66 7E 86   .B.\.f~..6.\.f~.
0ED0- 16 30 E8 5C 02 66 7E 86 22 66 E8 5C 03 66 7E 86   .0.\.f~."f.\.f~.
0EE0- 34 76 E8 5C 01 66 7E 86 3C 94 E8 5C 01 00 7C 5C   4v.\.f~.<..\..|\
0EF0- 26 E9 BF 68 35 31 3E 08 00 00 7C 5C 26 E9 BF 64   &..h51>...|\&..d
0F00- 35 31 3E 08 00 00 7C 5C 21 ED BF 68 35 31 3E 08   51>...|\!..h51>.
0F10- 00 00 7C 5C 21 ED BF 64 35 31 3E 08 00 00 7C 5C   ..|\!..d51>...|\
0F20- 35 6D BE A0 04 6C FE 80 36 69 BE 08 22 ED 3F 62   5m...l..6i..".?b
0F30- 2C 00 54 5C 22 E9 BF 64 22 ED BF 68 F1 75 BE A0   ,.T\"..d"..h.u..
0F40- 19 75 BE 80 00 74 7E F8 29 69 3E 86 1C ED 97 68   .u...t~.)i>....h
0F50- 1D ED AB 68 F1 75 BE A0 1A 75 BE 80 00 74 7E F8   ...h.u...u...t~.
0F60- 35 31 3E 08 00 00 7C 5C 1F ED BF 64 22 ED BF 64   51>...|\...d"..d
0F70- 22 E9 BF 68 F1 75 BE A0 1B 75 BE 80 00 74 7E F8   "..h.u...u...t~.
0F80- 35 31 3E 08 00 00 7C 5C 2B F9 BF A0 2C FB BF A0   51>...|\+...,...
0F90- 2A F1 BF A0 2A F3 BF A0 2D F5 BF A0 00 00 00 00   *...*...-.......
0FA0- 00 00 00 00 00 00 00 00 2E F7 BF A0 1E ED BF 64   ...............d
0FB0- 1F E9 BF 64 25 E9 BF 68 20 E9 BF 64 35 31 3E 08   ...d%..h ..d51>.
0FC0- 00 00 7C 5C 35 6D BE A0 04 6C FE 80 36 69 BE 08   ..|\5m...l..6i..
0FD0- 04 6C FE 80 36 73 BE 08 04 6C FE 80 36 6F BE 08   .l..6s...l..6o..
0FE0- 29 69 3E 85 80 6E 7E 86 98 00 48 5C 5E 00 60 5C   )i>..n~...H\^.`\
0FF0- 37 73 3E 62 23 E9 BF 7C 20 E9 BF 68 20 E9 BF 64   7s>b#..| ..h ..d
1000- 01 6E FE 2A 56 00 54 5C 35 31 3E 08 C3 00 7C 5C   .n.*V.T\51>...|\
1010- 28 69 3E 86 63 00 54 5C FF 72 7E 85 00 72 7E 86   (i>.c.T\.r~..r~.
1020- 85 00 6C 5C 80 72 7E 62 23 E9 BF 7C 20 E9 BF 68   ..l\.r~b#..| ..h
1030- 20 E9 BF 64 40 72 7E 62 23 E9 BF 7C 20 E9 BF 68    ..d@r~b#..| ..h
1040- 20 E9 BF 64 20 72 7E 62 23 E9 BF 7C 20 E9 BF 68    ..d r~b#..| ..h
1050- 20 E9 BF 64 10 72 7E 62 23 E9 BF 7C 20 E9 BF 68    ..d.r~b#..| ..h
1060- 20 E9 BF 64 08 72 7E 62 23 E9 BF 7C 20 E9 BF 68    ..d.r~b#..| ..h
1070- 20 E9 BF 64 04 72 7E 62 23 E9 BF 7C 20 E9 BF 68    ..d.r~b#..| ..h
1080- 20 E9 BF 64 02 72 7E 62 23 E9 BF 7C 20 E9 BF 68    ..d.r~b#..| ..h
1090- 20 E9 BF 64 01 72 7E 62 23 E9 BF 7C 20 E9 BF 68    ..d.r~b#..| ..h
10A0- 20 E9 BF 64 35 31 3E 08 C3 00 7C 5C 23 E9 BF 7C    ..d51>...|\#..|
10B0- 20 E9 BF 68 20 E9 BF 64 20 E9 BF 68 20 E9 BF 64    ..h ..d ..h ..d
10C0- 20 E9 BF 68 20 E9 BF 64 20 E9 BF 68 20 E9 BF 64    ..h ..d ..h ..d
10D0- 20 E9 BF 68 20 E9 BF 64 20 E9 BF 68 20 E9 BF 64    ..h ..d ..h ..d
10E0- 20 E9 BF 68 20 E9 BF 64 20 E9 BF 68 20 E9 BF 64    ..h ..d ..h ..d
10F0- 35 31 3E 08 C3 00 7C 5C FF 72 7E 85 00 72 7E 86   51>...|\.r~..r~.
1100- B5 00 6C 5C 80 72 7E 62 23 E9 BF 7C 20 E9 BF 68   ..l\.r~b#..| ..h
1110- 2F F1 BF A0 30 F3 BF A0 40 72 7E 62 20 E9 BF 64   /...0...@r~b ..d
1120- 23 E9 BF 7C 20 72 7E 62 23 E9 BF 7C 10 72 7E 62   #..| r~b#..|.r~b
1130- 23 E9 BF 7C 08 72 7E 62 23 E9 BF 7C 04 72 7E 62   #..|.r~b#..|.r~b
1140- 23 E9 BF 7C 02 72 7E 62 23 E9 BF 7C 01 72 7E 62   #..|.r~b#..|.r~b
1150- 23 E9 BF 7C 20 E9 BF 68 2A F1 BF A0 2A F3 BF A0   #..| ..h*...*...
1160- 20 E9 BF 64 35 31 3E 08 C3 00 7C 5C 23 E9 BF 7C    ..d51>...|\#..|
1170- 20 E9 BF 68 31 F1 BF A0 32 F3 BF A0 20 E9 BF 64    ..h1...2... ..d
1180- 00 00 00 00 00 00 00 00 20 E9 BF 68 2A F1 BF A0   ........ ..h*...
1190- 2A F3 BF A0 20 E9 BF 64 20 E9 BF 68 20 E9 BF 64   *... ..d ..h ..d
11A0- 35 31 3E 08 00 00 7C 5C 35 6D BE A0 04 6C FE 80   51>...|\5m...l..
11B0- 36 69 BE 08 04 6C FE 80 36 71 BE 08 04 6C FE 80   6i...l..6q...l..
11C0- 36 6F BE 08 29 69 3E 85 08 70 7E 86 FC 00 48 5C   6o..)i>..p~...H\
11D0- D8 00 60 5C F2 49 3E 61 01 72 FE 34 20 E9 BF 68   ..`\.I>a.r.4 ..h
11E0- 20 E9 BF 64 CF 70 FE E4 37 73 BE 60 36 73 3E 08    ..d.p..7s.`6s>.
11F0- 35 31 3E 08 17 01 7C 5C F2 49 3E 61 01 72 FE 34   51>...|\.I>a.r.4
1200- 20 E9 BF 68 20 E9 BF 64 F2 49 3E 61 01 72 FE 34    ..h ..d.I>a.r.4
1210- 20 E9 BF 68 20 E9 BF 64 F2 49 3E 61 01 72 FE 34    ..h ..d.I>a.r.4
1220- 20 E9 BF 68 20 E9 BF 64 F2 49 3E 61 01 72 FE 34    ..h ..d.I>a.r.4
1230- 20 E9 BF 68 20 E9 BF 64 F2 49 3E 61 01 72 FE 34    ..h ..d.I>a.r.4
1240- 20 E9 BF 68 20 E9 BF 64 F2 49 3E 61 01 72 FE 34    ..h ..d.I>a.r.4
1250- 20 E9 BF 68 20 E9 BF 64 F2 49 3E 61 01 72 FE 34    ..h ..d.I>a.r.4
1260- 20 E9 BF 68 20 E9 BF 64 F2 49 3E 61 01 72 FE 34    ..h ..d.I>a.r.4
1270- 20 E9 BF 68 20 E9 BF 64 37 73 BE 60 36 73 3E 08    ..h ..d7s.`6s>.
1280- 35 31 3E 08 17 01 7C 5C F2 49 3E 61 01 72 FE 34   51>...|\.I>a.r.4
1290- 20 E9 BF 68 2F F1 BF A0 30 F3 BF A0 20 E9 BF 64    ..h/...0... ..d
12A0- F2 49 3E 61 01 72 FE 34 F2 49 3E 61 01 72 FE 34   .I>a.r.4.I>a.r.4
12B0- F2 49 3E 61 01 72 FE 34 F2 49 3E 61 01 72 FE 34   .I>a.r.4.I>a.r.4
12C0- F2 49 3E 61 01 72 FE 34 F2 49 3E 61 01 72 FE 34   .I>a.r.4.I>a.r.4
12D0- F2 49 3E 61 20 E9 BF 68 01 72 FE 34 2A F1 BF A0   .I>a ..h.r.4*...
12E0- 2A F3 BF A0 20 E9 BF 64 37 73 BE 60 36 73 3E 08   *... ..d7s.`6s>.
12F0- 35 31 3E 08 00 00 7C 5C 00 00 00 00 30 75 00 00   51>...|\....0u..
1300- A8 61 00 00 A0 86 01 00 FC 10 00 00 CC 10 00 00   .a..............
1310- FF 15 00 00 FF 11 00 00 F0 00 00 00 03 00 00 00   ................
1320- 00 04 00 00 04 00 00 00 00 01 00 00 00 10 00 00   ................
1330- 08 00 00 00 40 4B 4C 00 80 96 98 00 00 5A 62 02   ....@KL......Zb.
1340- 09 12 00 0A 00 00 00 00 00 00 00 00 00 00 00 10   ................
1350- 00 00 00 10 07 12 00 0A 06 12 00 0A 09 0E 00 0F   ................
1360- 09 0C 00 0F 35 35 D9 08 34 C7 34 4B 2C 32 40 FF   ....55..4.4K,2@.
1370- 0A 02 64 45 44 61 32 36 35 D9 08 35 D8 08 35 FC   ..dEDa265..5..5.
1380- 0B 02 04 77 35 41 32 44 36 D9 08 37 00 35 D9 08   ...w5A2D6..7.5..
1390- 35 D8 08 35 FC 0B 02 04 77 34 41 32 37 21 35 D9   5..5....w4A27!5.
13A0- 08 35 D8 08 35 FC 0B 02 04 77 35 41 32 37 01 35   .5..5....w5A27.5
13B0- D9 08 35 D8 08 35 FC 0B 02 04 77 32 38 05 35 D9   ..5..5....w28.5.
13C0- 08 35 D8 08 35 FC 0B 02 04 77 32 38 06 35 D9 08   .5..5....w28.5..
13D0- 35 D8 08 35 FC 0B 02 04 77 32 37 22 35 D9 08 35   5..5....w27"5..5
13E0- D8 08 35 FC 0B 02 04 77 32 68 37 21 D9 08 64 37   ..5....w2h7!..d7
13F0- 00 D9 08 44 36 D9 08 37 02 35 D9 08 35 D8 08 35   ...D6..7.5..5..5
1400- FC 0B 02 04 77 37 21 D8 08 61 32 68 37 21 D9 08   ....w7!..a2h7!..
1410- 64 37 00 D9 08 44 36 D9 08 38 09 35 D9 08 35 D8   d7...D6..8.5..5.
1420- 08 35 FC 0B 02 04 77 32 20 00 03 00 0C 00 00 00   .5....w2 .......
1430- 15 00 00 00 64 3D D4 1C 64 3D D6 1C 32 64 3D D4   ....d=..d=..2d=.
1440- 18 64 3D D6 1C 32 00 00 48 00 05 00 14 00 00 00   .d=..2..H.......
1450- 21 00 00 00 32 00 00 00 3A 00 00 00 35 C0 64 F4   !...2...:...5.d.
1460- 39 01 7D E4 3F 91 EC 23 32 35 C0 39 03 E8 F6 64   9.}.?..#25.9...d
1470- F4 39 01 7D E4 3F 91 EC 23 32 35 C0 64 F4 68 EC   .9.}.?..#25.d.h.
1480- 23 32 35 C0 39 03 E8 F6 64 F4 68 EC 23 32 00 00   #25.9...d.h.#2..
1490- B6 53 5F 41 43 4B 10 06 00 00 00 53 5F 4E 41 4B   .S_ACK.....S_NAK
14A0- 10 15 00 00 00 53 5F 43 4D 44 5F 4E 4F 50 10 00   .....S_CMD_NOP..
14B0- 00 00 00 53 5F 43 4D 44 5F 51 5F 49 46 41 43 45   ...S_CMD_Q_IFACE
14C0- 10 01 00 00 00 53 5F 43 4D 44 5F 51 5F 43 4D 44   .....S_CMD_Q_CMD
14D0- 4D 41 50 10 02 00 00 00 53 5F 43 4D 44 5F 51 5F   MAP.....S_CMD_Q_
14E0- 50 47 4D 4E 41 4D 45 10 03 00 00 00 53 5F 43 4D   PGMNAME.....S_CM
14F0- 44 5F 51 5F 53 45 52 42 55 46 10 04 00 00 00 53   D_Q_SERBUF.....S
1500- 5F 43 4D 44 5F 51 5F 42 55 53 54 59 50 45 10 05   _CMD_Q_BUSTYPE..
1510- 00 00 00 53 5F 43 4D 44 5F 51 5F 43 48 49 50 53   ...S_CMD_Q_CHIPS
1520- 49 5A 45 10 06 00 00 00 53 5F 43 4D 44 5F 51 5F   IZE.....S_CMD_Q_
1530- 4F 50 42 55 46 10 07 00 00 00 53 5F 43 4D 44 5F   OPBUF.....S_CMD_
1540- 51 5F 57 52 4E 4D 41 58 4C 45 4E 10 08 00 00 00   Q_WRNMAXLEN.....
1550- 53 5F 43 4D 44 5F 52 5F 42 59 54 45 10 09 00 00   S_CMD_R_BYTE....
1560- 00 53 5F 43 4D 44 5F 52 5F 4E 42 59 54 45 53 10   .S_CMD_R_NBYTES.
1570- 0A 00 00 00 53 5F 43 4D 44 5F 4F 5F 49 4E 49 54   ....S_CMD_O_INIT
1580- 10 0B 00 00 00 53 5F 43 4D 44 5F 4F 5F 57 52 49   .....S_CMD_O_WRI
1590- 54 45 42 10 0C 00 00 00 53 5F 43 4D 44 5F 4F 5F   TEB.....S_CMD_O_
15A0- 57 52 49 54 45 4E 10 0D 00 00 00 53 5F 43 4D 44   WRITEN.....S_CMD
15B0- 5F 4F 5F 44 45 4C 41 59 10 0E 00 00 00 53 5F 43   _O_DELAY.....S_C
15C0- 4D 44 5F 4F 5F 45 58 45 43 10 0F 00 00 00 53 5F   MD_O_EXEC.....S_
15D0- 43 4D 44 5F 53 59 4E 43 4E 4F 50 10 10 00 00 00   CMD_SYNCNOP.....
15E0- 53 5F 43 4D 44 5F 51 5F 52 44 4E 4D 41 58 4C 45   S_CMD_Q_RDNMAXLE
15F0- 4E 10 11 00 00 00 53 5F 43 4D 44 5F 53 5F 42 55   N.....S_CMD_S_BU
1600- 53 54 59 50 45 10 12 00 00 00 53 5F 43 4D 44 5F   STYPE.....S_CMD_
1610- 4F 5F 53 50 49 4F 50 10 13 00 00 00 53 5F 43 4D   O_SPIOP.....S_CM
1620- 44 5F 53 5F 53 50 49 5F 46 52 45 51 10 14 00 00   D_S_SPI_FREQ....
1630- 00 53 5F 43 4D 44 5F 53 5F 50 49 4E 5F 53 54 41   .S_CMD_S_PIN_STA
1640- 54 45 10 15 00 00 00 42 55 53 54 59 50 45 5F 50   TE.....BUSTYPE_P
1650- 41 52 41 4C 4C 45 4C 10 00 00 00 00 42 55 53 54   ARALLEL.....BUST
1660- 59 50 45 5F 4C 50 43 10 01 00 00 00 42 55 53 54   YPE_LPC.....BUST
1670- 59 50 45 5F 46 57 48 10 02 00 00 00 42 55 53 54   YPE_FWH.....BUST
1680- 59 50 45 5F 53 50 49 10 03 00 00 00 53 50 5F 56   YPE_SPI.....SP_V
1690- 45 52 53 49 4F 4E 10 01 00 00 00 53 49 5A 45 5F   ERSION.....SIZE_
16A0- 53 42 55 46 10 10 00 00 00 53 49 5A 45 5F 4F 50   SBUF.....SIZE_OP
16B0- 42 55 46 10 2C 01 00 00 53 49 5A 45 5F 4E 57 52   BUF.,...SIZE_NWR
16C0- 49 54 45 10 00 01 00 00 53 49 5A 45 5F 4E 52 45   ITE.....SIZE_NRE
16D0- 41 44 10 00 10 00 00 53 49 5A 45 5F 50 52 45 46   AD.....SIZE_PREF
16E0- 45 54 43 48 10 04 00 00 00 53 49 5A 45 5F 4F 50   ETCH.....SIZE_OP
16F0- 42 55 46 5F 4C 4F 4E 47 10 4D 00 00 00 53 49 5A   BUF_LONG.M...SIZ
1700- 45 5F 49 4E 42 55 46 5F 4C 4F 4E 47 10 43 00 00   E_INBUF_LONG.C..
1710- 00 53 50 49 5F 46 52 45 51 10 40 4B 4C 00 57 49   .SPI_FREQ.@KL.WI
1720- 50 10 01 00 00 00 52 58 5F 54 49 4D 45 4F 55 54   P.....RX_TIMEOUT
1730- 5F 4D 53 10 14 00 00 00 4D 41 58 5F 41 44 44 52   _MS.....MAX_ADDR
1740- 5F 4C 45 4E 10 03 00 00 00 4A 45 44 45 43 5F 57   _LEN.....JEDEC_W
1750- 52 53 52 10 01 00 00 00 4A 45 44 45 43 5F 57 52   RSR.....JEDEC_WR
1760- 44 49 10 04 00 00 00 4A 45 44 45 43 5F 52 44 53   DI.....JEDEC_RDS
1770- 52 10 05 00 00 00 4A 45 44 45 43 5F 57 52 45 4E   R.....JEDEC_WREN
1780- 10 06 00 00 00 54 45 53 54 5F 49 44 31 10 15 20   .....TEST_ID1.. 
1790- C2 00 54 45 53 54 5F 49 44 32 10 14 20 C2 00 54   ..TEST_ID2.. ..T
17A0- 45 53 54 5F 49 44 33 10 13 20 C2 00 54 45 53 54   EST_ID3.. ..TEST
17B0- 5F 49 44 34 10 12 20 C2 00 54 45 53 54 5F 49 44   _ID4.. ..TEST_ID
17C0- 35 10 10 20 C2 00 54 45 53 54 5F 49 44 10 12 20   5.. ..TEST_ID.. 
17D0- C2 00 53 54 41 52 54 00                           ..START.

______________________________________________________________________________
********************************************************* File starts here ***
Zerocat Chipflasher --- Flash free firmware, kick the Management Engine.

Copyright (C) 2020, 2021, 2022  Kai Mertens 

File serprog.spin --- Serial communication with the flashrom utility.

This file is part of Zerocat Chipflasher.

See end of file for terms of use.

******************************************************************************


# Protocol

Copied from Flashrom's Documentation.
See flashrom source tree for copyright and license infos.

    -----8<------------------------------------------------------------>8-----

    Serial Flasher Protocol Specification - version 1 (0x01 return value == 1)

    Command And Answer Sequence - all commands give an answer.
    PC: COMMAND(8bit) <parameters determined by opcode>
    DEV: ACK/NAK(8bit) <OPTIONAL RETURN BYTES (only if ACK)> / nothing
    Command 0x10 (SYNCNOP) has a special return of NAK+ACK for synchronization.

    ACK = 0x06
    NAK = 0x15

    All multibyte values are little-endian. Addresses and lengths are 24-bit.

    COMMAND Description                     Parameters                      Return Value
    0x00    NOP                             none                            ACK
    0x01    Query programmer iface version  none                            ACK + 16bit version (nonzero)
    0x02    Query supported commands bitmap none                            ACK + 32 bytes (256 bits) of supported cmds flags
    0x03    Query programmer name           none                            ACK + 16 bytes string (null padding) / NAK
    0x04    Query serial buffer size        none                            ACK + 16bit size / NAK
    0x05    Query supported bustypes        none                            ACK + 8-bit flags (as per flashrom) / NAK
    0x06    Query connected address lines   none                            ACK + 8bit line count / NAK
    0x07    Query operation buffer size     none                            ACK + 16bit size / NAK
    0x08    Query maximum write-n length    none                            ACK + 24bit length (0==2^24) / NAK
    0x09    Read byte                       24-bit addr                     ACK + BYTE / NAK
    0x0A    Read n bytes                    24-bit addr + 24-bit length     ACK + length bytes / NAK
    0x0B    Initialize operation buffer     none                            ACK / NAK
    0x0C    Write to opbuf: Write byte      24-bit addr + 8-bit byte        ACK / NAK (NOTE: takes 5 bytes in opbuf)
    0x0D    Write to opbuf: Write n         24-bit length + 24-bit addr +   ACK / NAK (NOTE: takes 7+n bytes in opbuf)
                                             + length bytes of data
    0x0E    Write to opbuf: delay           32-bit usecs                    ACK / NAK (NOTE: takes 5 bytes in opbuf)
    0x0F    Execute operation buffer        none                            ACK / NAK
    0x10    Sync NOP                        none                            NAK + ACK (for synchronization)
    0x11    Query maximum read-n length     none                            ACK + 24-bit length (0==2^24) / NAK
    0x12    Set used bustype                8-bit flags (as with 0x05)      ACK / NAK
    0x13    Perform SPI operation           24-bit slen + 24-bit rlen       ACK + rlen bytes of data / NAK
                                             + slen bytes of data
    0x14    Set SPI clock frequency in Hz   32-bit requested frequency      ACK + 32-bit set frequency / NAK
    0x15    Toggle flash chip pin drivers   8-bit (0 disable, else enable)  ACK / NAK
    0x??    unimplemented command - invalid.

    Additional information of the above commands:
            About unimplemented commands / startup sequence:
                    Only commands allowed to be used without checking anything are 0x00,0x10 and 0x01 (NOP,SYNCNOP,Q_IFACE).
                    If 0x01 doesn't return 1, dont do anything if you dont support a newer protocol.
                    Then, check support for any other opcode (except 0x02) by using 0x02 (Q_CMDMAP).
            0x02 (Q_CMDMAP):
                    The map's bits are mapped as follows:
                    cmd 0 support: byte 0 bit 0
                    cmd 1 support: byte 0 bit 1
                    cmd 7 support: byte 0 bit 7
                    cmd 8 support: byte 1 bit 0, and so on.
            0x04 (Q_SERBUF):
                    If the programmer has a guaranteed working flow control,
                    it should return a big bogus value - eg 0xFFFF.
            0x05 (Q_BUSTYPE):
                    The bit's are defined as follows:
                    bit 0: PARALLEL, bit 1: LPC, bit 2: FWH, bit 3: SPI.
            0x06 (Q_CHIPSIZE):
                    Only applicable to parallel programmers.
                    An LPC/FWH/SPI-programmer can report this as not supported in the command bitmap.
            0x08 (Q_WRNMAXLEN):
                    If a programmer reports a bigger maximum write-n length than the serial buffer size,
                    it is assumed that the programmer can process the data fast enough to take in the
                    reported maximum write-n without problems.
            0x0F (O_EXEC):
                    Execute operation buffer will also clear it, regardless of the return value.
            0x11 (Q_RDNMAXLEN):
                    If this command is not supported, assume return of 0 (2^24).
            0x12 (S_BUSTYPE):
                    Set's the used bustype if the programmer can support more than one flash protocol.
                    Sending a byte with more than 1 bit set will make the programmer decide among them
                    on it's own. Bit values as with Q_BUSTYPE.
            0x13 (O_SPIOP):
                    Send and receive bytes via SPI.
                    Maximum slen is Q_WRNMAXLEN in case Q_BUSTYPE returns SPI only or S_BUSTYPE was used
                    to set SPI exclusively before. Same for rlen and Q_RDNMAXLEN.
                    This operation is immediate, meaning it doesn't use the operation buffer.
            0x14 (S_SPI_FREQ):
                    Set the SPI clock frequency. The 32-bit value indicates the
                    requested frequency in Hertz. Value 0 is reserved and should
                    be NAKed by the programmer. The requested frequency should be
                    mapped by the programmer software to a supported frequency
                    lower than the one requested. If there is no lower frequency
                    available the lowest possible should be used. The value
                    chosen is sent back in the reply with an ACK.
            0x15 (S_CMD_S_PIN_STATE):
                    Sets the state of the pin drivers connected to the flash chip. Disabling them allows other
                    devices (e.g. a mainboard's chipset) to access the chip. This way the serprog controller can
                    remain attached to the flash chip even when the board is running. The user is responsible to
                    NOT connect VCC and other permanently externally driven signals to the programmer as needed.
                    If the value is 0, then the drivers should be disabled, otherwise they should be enabled.
            About mandatory commands:
                    The only truly mandatory commands for any device are 0x00, 0x01, 0x02 and 0x10,
                    but one can't really do anything with these commands.
                    Support for the following commands is necessary for flashrom to operate properly:
                    S_CMD_Q_SERBUF, S_CMD_Q_OPBUF, S_CMD_Q_WRNMAXLEN, S_CMD_R_BYTE,
                    S_CMD_R_NBYTES, S_CMD_O_INIT, S_CMD_O_WRITEB, S_CMD_O_WRITEN,
                    S_CMD_O_DELAY, S_CMD_O_EXEC.
                    In addition, support for these commands is recommended:
                    S_CMD_Q_PGMNAME, S_CMD_Q_BUSTYPE, S_CMD_Q_CHIPSIZE (if parallel).

    See also serprog.h.

    -----8<------------------------------------------------------------>8-----


# Object Summary

Object "../../firmware2/src/serprog" Interface:

PUB  start : 

Program:  1315 Longs
Variable: 104 Longs


# Objects

Load pin configuration.
Load error codes.
Load ledstat object.
Load RS232 communication object.
Load SPI communication object.
Load time object.


# Constants

Serprog Control Codes

ENUM t_BUSTYPE
  BUSTYPE_PARALLEL
  BUSTYPE_LPC
  BUSTYPE_FWH
  BUSTYPE_SPI

SP Initialization Process

Misc

JEDEC SPI Commands (Selection)

Chip Test IDs


# Variables



# Functions

_____________
PUB  start : 

Start and stop program.
Return error code.


# PASM/Data

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

  Named registers, initialized




******************************************************************************
Terms of Use:

Zerocat Chipflasher is free software: you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

Zerocat Chipflasher is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License along
with Zerocat Chipflasher.  If not, see <http://www.gnu.org/licenses/>.

************************************************************** End of File ***