Documentation for “Zerocat Chipflasher” as of Tue, 03 Jun 2025 18:34:33 +0200
 
      Repository: git://zerocat.org/zerocat/projects/chipflasher
 
      Version: v2.0.2
 
      Branch: flashrom-interface
 
    
Propeller Spin/PASM Compiler 'OpenSpin' (c)2012-2016 Parallax Inc. DBA Parallax Semiconductor.
Version 1.00.78
Compiling...
../../firmware2/src/FullDuplexSerial.spin
Done.
Program size is 736 bytes
TYPE: 53   VALUE: 00000401 (00000004)   NAME: START
TYPE: 53   VALUE: 00000002 (00000004)   NAME: STOP
TYPE: 53   VALUE: 00000003 (00000004)   NAME: RXFLUSH
TYPE: 53   VALUE: 00000004 (00000004)   NAME: RXCHECK
TYPE: 53   VALUE: 00000105 (00000004)   NAME: RXTIME
TYPE: 53   VALUE: 00000006 (00000004)   NAME: RX
TYPE: 53   VALUE: 00000107 (00000004)   NAME: TX
TYPE: 53   VALUE: 00000108 (00000004)   NAME: STR
TYPE: 53   VALUE: 00000109 (00000004)   NAME: WBUF
TYPE: 53   VALUE: 0000010A (00000004)   NAME: DEC
TYPE: 53   VALUE: 0000020B (00000004)   NAME: HEX
TYPE: 53   VALUE: 0000020C (00000004)   NAME: BIN
TYPE: 47   VALUE: 00000000 (00000000)   NAME: RX_HEAD
TYPE: 47   VALUE: 00000004 (00000000)   NAME: RX_TAIL
TYPE: 47   VALUE: 00000008 (00000000)   NAME: TX_HEAD
TYPE: 47   VALUE: 0000000C (00000000)   NAME: TX_TAIL
TYPE: 47   VALUE: 00000010 (00000000)   NAME: RX_PIN
TYPE: 47   VALUE: 00000014 (00000000)   NAME: TX_PIN
TYPE: 47   VALUE: 00000018 (00000000)   NAME: RXTX_MODE
TYPE: 47   VALUE: 0000001C (00000000)   NAME: BIT_TICKS
TYPE: 47   VALUE: 00000020 (00000000)   NAME: BUFFER_PTR
TYPE: 45   VALUE: 00000000 (00000000)   NAME: RX_BUFFER
TYPE: 45   VALUE: 00000010 (00000000)   NAME: TX_BUFFER
TYPE: 45   VALUE: 00000020 (00000000)   NAME: COG
TYPE: 4A   VALUE: 00000034 (00000000)   NAME: ENTRY
TYPE: 4A   VALUE: 0000008C (00000058)   NAME: RECEIVE
TYPE: 4A   VALUE: 000000AC (00000078)   NAME: BIT^C^A^A^A
TYPE: 4A   VALUE: 000000B0 (0000007c)   NAME: WAIT^C^A^A^A
TYPE: 4A   VALUE: 00000100 (000000cc)   NAME: TRANSMIT
TYPE: 4A   VALUE: 0000014C (00000118)   NAME: BIT^D^A^A^A
TYPE: 4A   VALUE: 00000168 (00000134)   NAME: WAIT^D^A^A^A
TYPE: 4B   VALUE: 00000184 (00000150)   NAME: T1
TYPE: 4B   VALUE: 00000184 (00000154)   NAME: T2
TYPE: 4B   VALUE: 00000184 (00000158)   NAME: T3
TYPE: 4B   VALUE: 00000184 (0000015c)   NAME: RXTXMODE
TYPE: 4B   VALUE: 00000184 (00000160)   NAME: BITTICKS
TYPE: 4B   VALUE: 00000184 (00000164)   NAME: RXMASK
TYPE: 4B   VALUE: 00000184 (00000168)   NAME: RXBUFF
TYPE: 4B   VALUE: 00000184 (0000016c)   NAME: RXDATA
TYPE: 4B   VALUE: 00000184 (00000170)   NAME: RXBITS
TYPE: 4B   VALUE: 00000184 (00000174)   NAME: RXCNT
TYPE: 4B   VALUE: 00000184 (00000178)   NAME: RXCODE
TYPE: 4B   VALUE: 00000184 (0000017c)   NAME: TXMASK
TYPE: 4B   VALUE: 00000184 (00000180)   NAME: TXBUFF
TYPE: 4B   VALUE: 00000184 (00000184)   NAME: TXDATA
TYPE: 4B   VALUE: 00000184 (00000188)   NAME: TXBITS
TYPE: 4B   VALUE: 00000184 (0000018c)   NAME: TXCNT
TYPE: 4B   VALUE: 00000184 (00000190)   NAME: TXCODE
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: RXPIN
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: TXPIN
TYPE: 4E   VALUE: 0000000C (00000000)   NAME: MODE
TYPE: 4E   VALUE: 00000010 (00000000)   NAME: BAUDRATE
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: OKAY
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: RXBYTE
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: MS
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: RXBYTE
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: T
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: RXBYTE
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: TXBYTE
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: STRINGPTR
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: STRLENGTH
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: BUFPTR
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: N
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: VALUE
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: I
TYPE: 4E   VALUE: 0000000C (00000000)   NAME: X
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: VALUE
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: DIGITS
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: VALUE
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: DIGITS
Distilled longs: 0
OBJ bytes: 786
_CLKMODE: 00
_CLKFREQ: 00B71B00
0000- 48 00 D0 02 D0 02 0D 00 84 01 00 00 AA 01 00 00   H...............
0010- BE 01 00 00 C8 01 00 00 DB 01 04 00 F8 01 00 00   ................
0020- 04 02 00 00 25 02 00 00 34 02 00 00 44 02 08 00   ....%...4...D...
0030- 90 02 00 00 B8 02 00 00 F0 A9 BC A0 10 A8 FC 80   ................
0040- 54 AA BC 08 01 B2 FC A0 55 B2 BC 2C 04 A8 FC 80   T.......U..,....
0050- 54 AA BC 08 01 BE FC A0 55 BE BC 2C 04 A8 FC 80   T.......U..,....
0060- 54 AE BC 08 04 A8 FC 80 54 B0 BC 08 04 A8 FC 80   T.......T.......
0070- 54 B4 BC 08 5A C0 BC A0 10 C0 FC 80 04 AE 7C 62   T...Z.........|b
0080- 02 AE 7C 61 5F E8 9B 68 5F EC AB 68 33 C8 FC A0   ..|a_..h_..h3...
0090- 64 BC BC 5C 01 AE 7C 62 F2 B3 3C 61 16 00 64 5C   d..\..|b..<a..d\
00A0- 09 B8 FC A0 58 BA BC A0 01 BA FC 28 F1 BB BC 80   ....X......(....
00B0- 58 BA BC 80 64 BC BC 5C 5D A8 BC A0 F1 A9 BC 84   X...d..\].......
00C0- 00 A8 7C C1 1F 00 4C 5C F2 B3 3C 61 01 B6 FC 30   ..|...L\..<a...0
00D0- 1E B8 FC E4 17 B6 FC 28 FF B6 FC 60 01 AE 7C 62   .......(...`..|b
00E0- FF B6 D4 6C F0 AB BC 08 5A AA BC 80 55 B6 3C 00   ...l....Z...U.<.
00F0- 5A AA BC 84 01 AA FC 80 0F AA FC 60 F0 AB 3C 08   Z..........`..<.
0100- 16 00 7C 5C 5E C8 BC 5C F0 A9 BC A0 08 A8 FC 80   ..|\^..\........
0110- 54 AA BC 08 04 A8 FC 80 54 AC BC 08 56 AA 3C 86   T.......T...V.<.
0120- 33 00 68 5C 60 AC BC 80 56 C2 BC 00 60 AC BC 84   3.h\`...V...`...
0130- 01 AC FC 80 0F AC FC 60 54 AC 3C 08 00 C3 FC 68   .......`T.<....h
0140- 02 C2 FC 2C 01 C2 FC 68 0B C4 FC A0 F1 C7 BC A0   ...,...h........
0150- 04 AE 7C 62 02 AE 7C 61 01 C2 E0 6C 01 C2 FC 29   ..|b..|a...l...)
0160- 5F E8 AB 70 5F EC 97 74 58 C6 BC 80 5E C8 BC 5C   _..p_..tX...^..\
0170- 63 A8 BC A0 F1 A9 BC 84 00 A8 7C C1 4D 00 4C 5C   c.........|.M.L\
0180- 46 C4 FC E4 33 00 7C 5C 01 05 02 43 35 37 01 1A   F...3.|\...C57..
0190- 53 67 37 21 1E 35 C0 70 F6 5D 8B 24 C9 20 34 C7   Sg7!.5.p.].$. 4.
01A0- 34 43 28 36 EC 8B 44 35 92 80 35 FA 61 32 8B 44   4C(6..D5..5.a2.D
01B0- 35 90 0A 08 8B 44 35 92 98 36 ED 21 43 35 38 09   5....D5..6.!C58.
01C0- 1A 32 00 05 04 35 FE 0A 02 04 77 32 62 3E 44 40   .2...5....w2b>D@
01D0- FB 0A 0B 44 98 24 61 44 36 EC 37 23 E8 45 32 3F   ...D.$aD6.7#.E2?
01E0- 91 69 00 05 04 62 80 35 FE 3F 91 68 ED 35 C0 39   .i...b.5.?.h.5.9
01F0- 03 E8 F6 F6 64 FA F2 0B 02 04 67 32 00 05 04 62   ....d.....g2...b
0200- 80 35 F9 0A 02 04 75 32 4C 48 36 EC 37 23 E8 FB   .5....u2LH6.7#..
0210- 0B 02 04 74 64 48 99 34 48 36 EC 37 23 E8 49 58   ...tdH.4H6.7#.IX
0220- 37 02 E8 0A 03 01 05 06 32 64 16 61 60 08 08 01   7.......2d.a`...
0230- 66 AE 80 05 07 09 78 32 66 AE A0 61 60 08 08 01   f.....x2f..a`...
0240- 66 A6 80 05 07 09 78 32 64 37 1E FC 6D 64 35 F9   f.....x2d7..md5.
0250- 0A 0A 64 6C EC E9 65 01 38 2D 05 07 3B 3B 9A CA   ..dl..e.8-..;;..
0260- 00 69 38 0A 08 2D 64 68 FE 0A 16 01 64 68 F6 38   .i8..-dh....dh.8
0270- 30 EC 6C 68 36 FC F4 EC 05 07 68 66 57 62 1C 04   0.lh6.....hfWb..
0280- 0C 60 68 36 FC F2 0A 05 01 38 30 05 07 38 0A 6A   .`h6.....80..8.j
0290- 56 09 53 32 37 02 68 ED 37 00 E3 66 43 68 08 1B   V.S27.h.7..fCh..
02A0- 01 35 39 02 B3 37 01 66 C1 37 23 E8 38 30 38 39   .59..7.f.7#.8089
02B0- 12 38 41 38 46 12 0F 05 07 09 65 32 37 04 68 ED   .8A8F.....e27.h.
02C0- 66 43 68 08 0D 01 36 66 C1 36 E8 38 30 EC 05 07   fCh...6f.6.80...
02D0- 09 73 32 00 C3 53 54 41 52 54 04 53 54 4F 50 00   .s2..START.STOP.
02E0- 52 58 46 4C 55 53 48 00 52 58 43 48 45 43 4B 00   RXFLUSH.RXCHECK.
02F0- 52 58 54 49 4D 45 01 52 58 00 54 58 01 53 54 52   RXTIME.RX.TX.STR
0300- 01 57 42 55 46 01 44 45 43 01 48 45 58 02 42 49   .WBUF.DEC.HEX.BI
0310- 4E 02                                             N.
********************************************
*  Full-Duplex Serial Driver v1.2          *
*  Author: Chip Gracey, Jeff Martin        *
*  Copyright (c) 2006-2009 Parallax, Inc.  *
*  See end of file for terms of use.       *
********************************************
Changes, introduced for Zerocat Chipflasher:
* Fix memory access to cog flag, remove initialized data.
* New: PUB wbuf(bufptr) : n
* PUB str(stringptr) -> PUB str(stringptr) : strlength
Object "../../firmware2/src/FullDuplexSerial" Interface:
PUB  start(rxpin, txpin, mode, baudrate) : 
PUB  stop
PUB  rxflush
PUB  rxcheck : 
PUB  rxtime(ms) : 
PUB  rx : 
PUB  tx(txbyte)
PUB  str(stringptr) : 
PUB  wbuf(bufptr) : 
PUB  dec(value)
PUB  hex(value, digits)
PUB  bin(value, digits)
Program:  180 Longs
Variable: 18 Longs
___________________________________________
PUB  start(rxpin, txpin, mode, baudrate) : 
 Start serial driver - starts a cog
 returns false if no cog available
 mode bit 0 = invert rx
 mode bit 1 = invert tx
 mode bit 2 = open-drain/source tx
 mode bit 3 = ignore tx echo on rx
_________
PUB  stop
 Stop serial driver - frees a cog
____________
PUB  rxflush
 Flush receive buffer
_______________
PUB  rxcheck : 
 Check if byte received (never waits)
 returns -1 if no byte received, $00..$FF if byte
__________________
PUB  rxtime(ms) : 
 Wait ms milliseconds for a byte to be received
 returns -1 if no byte received, $00..$FF if byte
__________
PUB  rx : 
 Receive byte (may wait for byte)
 returns $00..$FF
_______________
PUB  tx(txbyte)
 Send byte (may wait for room in buffer)
______________________
PUB  str(stringptr) : 
 Send string
____________________
PUB  wbuf(bufptr) : 
 Send buffer content, first two bytes (word) specifies length of data queue
_______________
PUB  dec(value)
 Print a decimal number
_______________________
PUB  hex(value, digits)
 Print a hexadecimal number
_______________________
PUB  bin(value, digits)
 Print a binary number
******************************************************************************
                        TERMS OF USE: MIT License
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
******************************************************************************