Documentation for “Zerocat Chipflasher” as of Sat, 18 Jun 2022 21:45:47 +0200
Repository: git://zerocat.org/zerocat/projects/chipflasher
Version: v0.6.9
Branch: master

../../firmware2/src/linespec.spin.txt.html

Propeller Spin/PASM Compiler 'OpenSpin' (c)2012-2016 Parallax Inc. DBA Parallax Semiconductor.
Version 1.00.78
Compiling...
../../firmware2/src/linespec.spin
|-blocksizes.spin
Done.
Program size is 348 bytes
TYPE: 43   VALUE: 00000002 (00000000)   NAME: ARRAY_LINESPEC
TYPE: 43   VALUE: 0000000C (00000000)   NAME: BYTES_PER_LINESPEC_RECORD
TYPE: 43   VALUE: 00000000 (00000000)   NAME: LINESPEC_PAYLOAD
TYPE: 43   VALUE: 00000001 (00000000)   NAME: LINESPEC_TYPE
TYPE: 43   VALUE: 00000002 (00000000)   NAME: LINESPEC_MODE0XFF
TYPE: 43   VALUE: 00000003 (00000000)   NAME: LINESPEC_TYPENAME
TYPE: 43   VALUE: 00000000 (00000000)   NAME: TYPE_SREC
TYPE: 43   VALUE: 00000001 (00000000)   NAME: TYPE_HEXD
TYPE: 43   VALUE: 00000080 (00000000)   NAME: MODE_SPLIT
TYPE: 43   VALUE: 00000040 (00000000)   NAME: MODE_STRIP
TYPE: 43   VALUE: 0000003F (00000000)   NAME: MODE_INLINE
TYPE: 43   VALUE: 00000000 (00000000)   NAME: MODE_HEXD
TYPE: 43   VALUE: 000000D0 (00000000)   NAME: MODE_SREC
TYPE: 43   VALUE: 00000208 (00000000)   NAME: BUFSIZE_LINE
TYPE: 43   VALUE: 00000100 (00000000)   NAME: BUFSIZE_PAYLOAD
TYPE: 43   VALUE: 0000000F (00000000)   NAME: FRAMESIZE_HEADLINE
TYPE: 43   VALUE: 00000010 (00000000)   NAME: FRAMESIZE_SREC
TYPE: 43   VALUE: 0000000E (00000000)   NAME: FRAMESIZE_HEXD
TYPE: 43   VALUE: 000001F9 (00000000)   NAME: SIZE_HEADSTRING
TYPE: 43   VALUE: 00000010 (00000000)   NAME: BASESIZE_PAYLOAD
TYPE: 43   VALUE: 00000010 (00000000)   NAME: MAXSIZE_PAYLOAD_HEXD
TYPE: 43   VALUE: 00000010 (00000000)   NAME: DEFAULT_PAYLOAD_HEXD
TYPE: 43   VALUE: 000000FC (00000000)   NAME: MAXSIZE_PAYLOAD_SREC
TYPE: 43   VALUE: 00000040 (00000000)   NAME: DEFAULT_PAYLOAD_SREC
TYPE: 53   VALUE: 00000001 (00000004)   NAME: INIT
TYPE: 53   VALUE: 00000002 (00000004)   NAME: TOGGLE_INDEX
TYPE: 53   VALUE: 00000003 (00000004)   NAME: GET_TYPE
TYPE: 53   VALUE: 00000004 (00000004)   NAME: GET_MODE0XFF
TYPE: 53   VALUE: 00000105 (00000004)   NAME: SET_MODE0XFF
TYPE: 53   VALUE: 00000206 (00000004)   NAME: TRIM_PAYLOAD_MOTS
TYPE: 53   VALUE: 00000107 (00000004)   NAME: GET_PAYLOAD
TYPE: 53   VALUE: 00000008 (00000004)   NAME: GETPTR_TYPENAME
TYPE: 53   VALUE: 00000009 (00000004)   NAME: INC_PAYLOAD
TYPE: 53   VALUE: 0000000A (00000004)   NAME: GETPTR_HEADSTR_PREFIX
TYPE: 53   VALUE: 0000010B (00000005)   NAME: SET_PAYLOAD
TYPE: 4F   VALUE: 0000000C (00000000)   NAME: BS
TYPE: 51   VALUE: 00000001 (00000000)   NAME: SIZE_1^A
TYPE: 51   VALUE: 00000002 (00000000)   NAME: SIZE_2^A
TYPE: 51   VALUE: 00000004 (00000000)   NAME: SIZE_4^A
TYPE: 51   VALUE: 00000008 (00000000)   NAME: SIZE_8^A
TYPE: 51   VALUE: 00000010 (00000000)   NAME: SIZE_16^A
TYPE: 51   VALUE: 00000020 (00000000)   NAME: SIZE_32^A
TYPE: 51   VALUE: 00000040 (00000000)   NAME: SIZE_64^A
TYPE: 51   VALUE: 00000100 (00000000)   NAME: SIZE_256^A
TYPE: 51   VALUE: 00000200 (00000000)   NAME: SIZE_512^A
TYPE: 51   VALUE: 00000400 (00000000)   NAME: SIZE_1K^A
TYPE: 51   VALUE: 00001000 (00000000)   NAME: SIZE_4K^A
TYPE: 51   VALUE: 00004000 (00000000)   NAME: SIZE_16K^A
TYPE: 51   VALUE: 00008000 (00000000)   NAME: SIZE_32K^A
TYPE: 51   VALUE: 00010000 (00000000)   NAME: SIZE_64K^A
TYPE: 51   VALUE: 00080000 (00000000)   NAME: SIZE_4MBIT^A
TYPE: 51   VALUE: 00100000 (00000000)   NAME: SIZE_8MBIT^A
TYPE: 51   VALUE: 00200000 (00000000)   NAME: SIZE_16MBIT^A
TYPE: 51   VALUE: 00400000 (00000000)   NAME: SIZE_32MBIT^A
TYPE: 51   VALUE: 00800000 (00000000)   NAME: SIZE_64MBIT^A
TYPE: 51   VALUE: 01000000 (00000000)   NAME: SIZE_128MBIT^A
TYPE: 51   VALUE: 02000000 (00000000)   NAME: SIZE_256MBIT^A
TYPE: 51   VALUE: 00000100 (00000000)   NAME: SIZE_PAGE^A
TYPE: 51   VALUE: 00001000 (00000000)   NAME: SIZE_SECTOR^A
TYPE: 51   VALUE: 00010000 (00000000)   NAME: SIZE_BLOCK^A
TYPE: 50   VALUE: 00000001 (00000000)   NAME: INIT^A
TYPE: 45   VALUE: 00000000 (00000000)   NAME: I_LINESPEC
TYPE: 48   VALUE: 00000034 (00000000)   NAME: HEADSTR_PREFIX
TYPE: 48   VALUE: 00000064 (00000030)   NAME: LINESPEC
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: R
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: R
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: MODE
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: LOAD
TYPE: 4E   VALUE: 00000008 (00000000)   NAME: ADDR
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: TRIMMED
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: ADDR
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: R
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: PTR_TYPENAME
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: PAYLOAD
TYPE: 4E   VALUE: 00000000 (00000000)   NAME: P
TYPE: 4E   VALUE: 00000004 (00000000)   NAME: PAYLOAD

Distilled longs: 0

OBJ bytes: 943

_CLKMODE: 00
_CLKFREQ: 00B71B00

0000- 04 00 4C 01 40 01 0C 01 7C 00 00 00 80 00 00 00   ..L.@...|.......
0010- 85 00 00 00 92 00 00 00 A0 00 00 00 AE 00 00 00   ................
0020- C9 00 00 00 DC 00 00 00 E9 00 04 00 2E 01 00 00   ................
0030- 32 01 00 00 40 01 04 00 5A 65 72 6F 63 61 74 20   2...@...Zerocat 
0040- 43 68 69 70 66 6C 61 73 68 65 72 20 28 68 74 74   Chipflasher (htt
0050- 70 3A 2F 2F 77 77 77 2E 7A 65 72 6F 63 61 74 2E   p://www.zerocat.
0060- 6F 72 67 29 20 7C 20 00 40 00 D0 53 2D 52 65 63   org) | .@..S-Rec
0070- 6F 72 64 00 10 01 00 48 65 78 2D 44 75 6D 70 00   ord....Hex-Dump.
0080- 35 89 00 32 36 8A 00 4B 32 87 64 88 00 38 0C F4   5..26..K2.d..8..
0090- EC 36 EC 80 61 32 87 64 88 00 38 0C F4 EC 37 00   .6..a2.d..8...7.
00A0- EC 80 61 32 64 87 64 88 00 38 0C F4 EC 37 00 EC   ..a2d.d..8...7..
00B0- 81 32 64 61 68 37 77 E8 0A 06 38 FA 62 45 04 0C   .2dah7w...8.bE..
00C0- 68 3A FF 00 00 E8 0A 04 38 FB 62 45 32 87 64 88   h:......8.bE2.d.
00D0- 00 38 0C F4 EC 35 EC 80 61 00 60 64 05 06 61 32   .8...5..a.`d..a2
00E0- 87 64 88 00 38 0C F4 EC 37 21 EC 61 32 00 35 05   .d..8...7!.a2.5.
00F0- 07 65 39 01 2D 00 05 03 35 0D 04 36 0D 1A 0C 39   .e9.-...5..6...9
0100- 01 13 64 38 FC 0D 0A 01 64 36 E3 38 FC E5 05 0B   ..d8....d6.8....
0110- 0C 01 37 03 05 0B 0C 0C 39 01 2C 64 37 03 0D 0A   ..7.....9.,d7...
0120- 01 64 36 E3 37 03 E5 05 0B 0C 01 37 03 05 0B 0C   .d6.7......7....
0130- 0C 32 87 34 61 32 64 87 64 88 00 38 0C F4 EC 35   .2.4a2d.d..8...5
0140- EC 81 32 00 0C 00 02 00 08 00 00 00 32 00 00 00   ..2.........2...
0150- 07 41 52 52 41 59 5F 4C 49 4E 45 53 50 45 43 10   .ARRAY_LINESPEC.
0160- 02 00 00 00 42 59 54 45 53 5F 50 45 52 5F 4C 49   ....BYTES_PER_LI
0170- 4E 45 53 50 45 43 5F 52 45 43 4F 52 44 10 0C 00   NESPEC_RECORD...
0180- 00 00 4C 49 4E 45 53 50 45 43 5F 50 41 59 4C 4F   ..LINESPEC_PAYLO
0190- 41 44 10 00 00 00 00 4C 49 4E 45 53 50 45 43 5F   AD.....LINESPEC_
01A0- 54 59 50 45 10 01 00 00 00 4C 49 4E 45 53 50 45   TYPE.....LINESPE
01B0- 43 5F 4D 4F 44 45 30 58 46 46 10 02 00 00 00 4C   C_MODE0XFF.....L
01C0- 49 4E 45 53 50 45 43 5F 54 59 50 45 4E 41 4D 45   INESPEC_TYPENAME
01D0- 10 03 00 00 00 54 59 50 45 5F 53 52 45 43 10 00   .....TYPE_SREC..
01E0- 00 00 00 54 59 50 45 5F 48 45 58 44 10 01 00 00   ...TYPE_HEXD....
01F0- 00 4D 4F 44 45 5F 53 50 4C 49 54 10 80 00 00 00   .MODE_SPLIT.....
0200- 4D 4F 44 45 5F 53 54 52 49 50 10 40 00 00 00 4D   MODE_STRIP.@...M
0210- 4F 44 45 5F 49 4E 4C 49 4E 45 10 3F 00 00 00 4D   ODE_INLINE.?...M
0220- 4F 44 45 5F 48 45 58 44 10 00 00 00 00 4D 4F 44   ODE_HEXD.....MOD
0230- 45 5F 53 52 45 43 10 D0 00 00 00 42 55 46 53 49   E_SREC.....BUFSI
0240- 5A 45 5F 4C 49 4E 45 10 08 02 00 00 42 55 46 53   ZE_LINE.....BUFS
0250- 49 5A 45 5F 50 41 59 4C 4F 41 44 10 00 01 00 00   IZE_PAYLOAD.....
0260- 46 52 41 4D 45 53 49 5A 45 5F 48 45 41 44 4C 49   FRAMESIZE_HEADLI
0270- 4E 45 10 0F 00 00 00 46 52 41 4D 45 53 49 5A 45   NE.....FRAMESIZE
0280- 5F 53 52 45 43 10 10 00 00 00 46 52 41 4D 45 53   _SREC.....FRAMES
0290- 49 5A 45 5F 48 45 58 44 10 0E 00 00 00 53 49 5A   IZE_HEXD.....SIZ
02A0- 45 5F 48 45 41 44 53 54 52 49 4E 47 10 F9 01 00   E_HEADSTRING....
02B0- 00 42 41 53 45 53 49 5A 45 5F 50 41 59 4C 4F 41   .BASESIZE_PAYLOA
02C0- 44 10 10 00 00 00 4D 41 58 53 49 5A 45 5F 50 41   D.....MAXSIZE_PA
02D0- 59 4C 4F 41 44 5F 48 45 58 44 10 10 00 00 00 44   YLOAD_HEXD.....D
02E0- 45 46 41 55 4C 54 5F 50 41 59 4C 4F 41 44 5F 48   EFAULT_PAYLOAD_H
02F0- 45 58 44 10 10 00 00 00 4D 41 58 53 49 5A 45 5F   EXD.....MAXSIZE_
0300- 50 41 59 4C 4F 41 44 5F 53 52 45 43 10 FC 00 00   PAYLOAD_SREC....
0310- 00 44 45 46 41 55 4C 54 5F 50 41 59 4C 4F 41 44   .DEFAULT_PAYLOAD
0320- 5F 53 52 45 43 10 40 00 00 00 49 4E 49 54 00 54   _SREC.@...INIT.T
0330- 4F 47 47 4C 45 5F 49 4E 44 45 58 00 47 45 54 5F   OGGLE_INDEX.GET_
0340- 54 59 50 45 00 47 45 54 5F 4D 4F 44 45 30 58 46   TYPE.GET_MODE0XF
0350- 46 00 53 45 54 5F 4D 4F 44 45 30 58 46 46 01 54   F.SET_MODE0XFF.T
0360- 52 49 4D 5F 50 41 59 4C 4F 41 44 5F 4D 4F 54 53   RIM_PAYLOAD_MOTS
0370- 02 47 45 54 5F 50 41 59 4C 4F 41 44 01 47 45 54   .GET_PAYLOAD.GET
0380- 50 54 52 5F 54 59 50 45 4E 41 4D 45 00 49 4E 43   PTR_TYPENAME.INC
0390- 5F 50 41 59 4C 4F 41 44 00 47 45 54 50 54 52 5F   _PAYLOAD.GETPTR_
03A0- 48 45 41 44 53 54 52 5F 50 52 45 46 49 58 00      HEADSTR_PREFIX.

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

Copyright (C) 2020  Kai Mertens 

File linespec.spin --- i/o line specifications

This file is part of Zerocat Chipflasher.

See end of file for terms of use.

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

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

PUB  init
PUB  toggle_index
PUB  get_type : 
PUB  get_mode0xff : 
PUB  set_mode0xff(mode)
PUB  trim_payload_MotS(load, addr) : 
PUB  get_payload(addr) : 
PUB  getptr_typename : 
PUB  inc_payload
PUB  getptr_HEADSTR_PREFIX : 

Program:  83 Longs
Variable: 1 Longs

CON Block:
Struct LINESPEC (See DAT Block)
ENUM TYPE_type
Mode Bits
Mode Bit: Split Line into Lines of Data and $FF
Mode Bit: Strip Line of Pure $FF Data
Mode Flags: Inline $FF Runlength
Default Mode Settings for Hexdump Line
Default Mode Settings for Motorola-S Line
Buffer Sizes
Frame Sizes
Payload Sizes

_________
PUB  init

Initialize Variables.

_________________
PUB  toggle_index

Toggle index, thus switch between Motorola and Hexdump Line Format.

________________
PUB  get_type : 

Return type of active LINESPEC record.

____________________
PUB  get_mode0xff : 

Return mode_0xff of active LINESPEC record.

_______________________
PUB  set_mode0xff(mode)

Set mode_0xff of active LINESPEC record.

_____________________________________
PUB  trim_payload_MotS(load, addr) : 


_________________________
PUB  get_payload(addr) : 

Return payload of active LINESPEC record.

_______________________
PUB  getptr_typename : 

Return pointer to start of LINESPEC name string.

________________
PUB  inc_payload


_____________________________
PUB  getptr_HEADSTR_PREFIX : 

Return address of string HEADSTR_PREFIX.

DAT Block:
String HEADSTR_PREFIX
Struct LINESPEC: Line Specifications

******************************************************************************
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 ***