feat(e10): SIC e10 part marker client, pattern generator and eDNC simulator
Groundwork for replacing a Telesis pinstamp with a SIC Marking e10 while
keeping the existing eDNC/MarkTelesis operator workflow. MarkTelesis has a
hardcoded marker-type enum and eDNC is serial-only, so the plan is a
translator that impersonates a Telesis controller on a COM port. These are
the pieces that translator will be built from, all verified against a real
e10 (a P63, firmware "E10 P63 (20140924)").
scripts/e10-client.py
e10-V6 protocol client. Marking path and file transfer both use the BINARY
protocol: the text protocol uses space as its delimiter, so it cannot carry
a field cleared to a single space nor the space runs in real marked text,
and it has no checksum. Includes fault decoding against the manual's fig 1,
and a guard that refuses to overflow a variable's declared buffer.
scripts/make-e10-pattern.py
Builds marking files with DECLARED variables. The controller's own protocol
cannot create one: NEWFILE/INSERTTEXTLINE/SAVEFILE writes the reference but
leaves the variable count at zero, and SETVAR then fails. Template-based,
copying through byte-for-byte everything the format notes do not explain.
scripts/simulate-ednc.py
Parses a part program, substitutes tokens and emits the byte-exact frames
MarkTelesis would send, then translates them for the e10 and can drive one.
The wire format came from disassembling MarkTelesis.exe rather than from a
capture: frame builder at 0x401cf0, and the type letters at their call
sites. Note there is no station ID, unlike the Backup470 dialect.
scripts/fake-telesis.py
Answers as a Telesis controller so MarkTelesis will hold a conversation
long enough to be recorded, with switches to force NAK and timeout paths.
reference/e10/
52-file snapshot off the bench controller, used as the corpus for reversing
the MARK_V5.0 format and for testing without hardware. ConfigCtrl is
excluded and gitignored - it stores the supervisor password in cleartext.
GE part programs are excluded for the same reason.
Three hardware findings worth knowing:
- The controller TRUNCATES SILENTLY to a variable's declared buffer size
while SETVAR still answers ok, and GETVAR echoes the full value back so
it cannot detect this. Guarded client-side against the size in the file.
- It refuses to mark when a referenced variable is unset, which makes an
unset field fail loudly rather than marking the previous part's data.
- Setting variables does not modify the stored file, so backups will not
churn on every marked part.
This commit is contained in:
BIN
reference/e10/snapshot-2026-08-27/AROBAS.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/AROBAS.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/C151TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/C151TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/C151ZATEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/C151ZATEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/C153DTEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/C153DTEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/C153TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/C153TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/C153ZA_TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/C153ZA_TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/C303TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/C303TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/CE.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/CE.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/DIAMETR1.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/DIAMETR1.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/DOLLAR.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/DOLLAR.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/EURO.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/EURO.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/FLECHE.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/FLECHE.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I111DTEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I111DTEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I111STEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I111STEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I113DTEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I113DTEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I113STEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I113STEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I141TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I141TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I141_ATEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I141_ATEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I52TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I52TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I61HATEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I61HATEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I61STEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I61STEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I81-ATEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I81-ATEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/I81TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/I81TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/MIRE.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/MIRE.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/NEW.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/NEW.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/NF.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/NF.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/P122TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/P122TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/P122_40TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/P122_40TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/P62TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/P62TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/PHONE.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/PHONE.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/POWER.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/POWER.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/RECYCLAG.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/RECYCLAG.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/ROUND.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/ROUND.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/RROUND.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/RROUND.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/RU.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/RU.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/SAVE_ACC_1.kind7
Normal file
BIN
reference/e10/snapshot-2026-08-27/SAVE_ACC_1.kind7
Normal file
Binary file not shown.
5
reference/e10/snapshot-2026-08-27/SENSINTE1.scribblelogo
Normal file
5
reference/e10/snapshot-2026-08-27/SENSINTE1.scribblelogo
Normal file
@@ -0,0 +1,5 @@
|
||||
зз##0>
|
||||
M^n~
|
||||
<EFBFBD><10>Ќ#Й0У>ЬMв^жnз~ж<>в<EFBFBD>ЬЌУЙЙУЌЬ<D08C>в<EFBFBD>ж~зnж^вMЬ>У0Й#Ќ<19><10>
|
||||
~n^M
|
||||
>0##н"ИЙ"нн
|
||||
BIN
reference/e10/snapshot-2026-08-27/SIC.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/SIC.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/SQUARE.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/SQUARE.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/STAR.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/STAR.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TENSION.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/TENSION.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TERRE.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/TERRE.scribblelogo
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TEST.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/TEST.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TESTP120.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/TESTP120.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TEST_DB1.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/TEST_DB1.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TEST_DB2.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/TEST_DB2.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TEST_DB3.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/TEST_DB3.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TEST_RU.marking
Normal file
BIN
reference/e10/snapshot-2026-08-27/TEST_RU.marking
Normal file
Binary file not shown.
BIN
reference/e10/snapshot-2026-08-27/TRIANGLE.scribblelogo
Normal file
BIN
reference/e10/snapshot-2026-08-27/TRIANGLE.scribblelogo
Normal file
Binary file not shown.
Reference in New Issue
Block a user