Sticker Plotter · dokumentace

Evidenční mapa protokolu

Stav: capture-required

Otevřít zdrojový Markdown ↓

Evidenční mapa protokolu CFL-605RT

Výsledek

Ovladač 1.60 potvrzuje minimální spoolovací proud pro omezený řez: IN;, explicitní profil (SP, VS, ZF, ZO), absolutní pohyby PU/PD + PA a epilog PUSP0;. Hloubkový rozbor uzavřel dřívější mezery obsahu: pro CFLJJ.PCD je tlakový příkaz ZF (řízeno klíčem CUTTING, E38), driver souřadnice nezaokrouhluje (E39), zápisová cesta je jednosměrná (E29) a softwarové stropy jsou rychlost 50 cm/s a tlak 5000 g (E20/E22).

Transport: rozbor mpmserv_1.dll vyloučil delegaci legacy monitoru (E36). Aktuální ovladač 5.12.3 má dvě potvrzené pro řez relevantní app-vrstvové cesty: CDeviceEtherData používá TCP/8002 pro konfiguraci a TCP/11110 pro data; CDeviceIDCut používá TCP/48153 a rámec Register_Cutdata_Binary (E40, E41). Samostatný CDeviceEtherMdl otevírá TCP/50002; jeho role je neověřená (E42). Tyto endpointy neurčují životní cyklus ani první bajt legacy RAW TCP/11110. Tyto body zůstávají otevřené pro síťový záznam legacy cesty (Q01, Q02).

Stav má právě jednu z hodnot:

  • potvrzeno: primární zdroj nebo cílová modelová větev vlastnost uvádí přímo;
  • odvozeno: závěr skládá více potvrzených faktů;
  • rozpor: primární zdroje uvádějí různé hodnoty pro stejnou implementační otázku;
  • neověřeno: chybí důkaz potřebný pro implementaci.

Zdroje S01 až S06 definuje internet-research.md. D01 je inventura driver-1.60.md. D02 je cílená static-analysis.md. D03 je porovnání driver-current.md.

ID Vlastnost Hodnota Stav Důkaz Dopad Podmínka uzavření
E01 Síťový port 11110 potvrzeno S02, PDF str. 30 Pevný cílový port POC. Uzavřeno volbou portu 11110 v S02 na PDF str. 30. Další podmínka pro omezený POC není potřebná.
E02 Transport RAW TCP potvrzeno S02 vybírá Raw; S06 definuje RAW systémového monitoru jako TCP POC nepotřebuje UDP ani LPR. Uzavřeno volbou Raw v S02 a popisem TCP v S06. Další podmínka pro omezený POC není potřebná.
E03 Oficiální síťová cesta CFL-605RT: síťové plotrování pouze přes FineCut potvrzeno S03, PDF str. 1 Veřejná podpora nepotvrzuje vlastní odesílatel. Uzavřeno tabulkou kompatibility S03 na PDF str. 1. Další podmínka pro omezený POC není potřebná.
E04 Počet spojení na úlohu Legacy systémová cesta: nepopsán. tcpmon.dll není v podkladech. Cesty 5.12.3 se nepřenášejí na legacy RAW. neověřeno (legacy) D02, Q01; D03 Sender pro legacy RAW používá pracovní hypotézu, ne ověřený model spojení. Dvojice Q01: jedna úloha a dvě bezprostřední úlohy. Záznam určí počet spojení a FIN/RST legacy cesty.
E05 První bajt a předehra legacy RAW Legacy MPMSERV_1.dll před vlastním zápisem nečte, ale neobsluhuje systémový RAW monitor. CDeviceEtherData a CDeviceIDCut jsou jiné app-vrstvové cesty. neověřeno (legacy) D02, D03, Q02 Legacy RAW encoder nesmí odvozovat předehru z DeviceIO. Capture Q02 určí první klientský bajt a případný rámec legacy proudu.
E06 Rámování proudu IN; a epilog obsahují ;. Profilové a geometrické mnemoniky ovladač řetězí bez mezer a bez vloženého středníku. potvrzeno D02, Q03–Q07 Encoder nesmí vkládat nepodložené oddělovače. Uzavřeno dosažitelnými větvemi Q03 až Q07 v D02. Další podmínka pro omezený POC není potřebná.
E07 Rozpoznání konce dat strojem CLOSE TIME 3 až 30 s spouští následné operace po době bez dalších dat. potvrzeno S01, PDF str. 88 Jde o strojový časovač, ne důkaz ukončení TCP. Uzavřeno popisem CLOSE TIME v S01 na PDF str. 88. Další podmínka pro omezený POC není potřebná.
E08 Epilog spoolovací úlohy Omezená větev MODEL=11 emituje PUSP0; a flush. potvrzeno D02, Q03, DrvSendPage 0x6a909a9c Uzavírá obsah proudu, ne socket. Uzavřeno větví DrvSendPage na 0x6a909a9c v D02. Další podmínka pro omezený POC není potřebná.
E09 MGL dialekt CFL-605RT přijímá pouze MGL-IIc3. potvrzeno S01, PDF str. 37 a 170 Encoder cílí jediný dialekt. Uzavřeno specifikací MGL-IIc3 v S01 na PDF str. 37 a 170. Další podmínka pro omezený POC není potřebná.
E10 Vztah k veřejným jazykům MGL-IIc3 je proprietární příkaz kompatibilní s HP-GL a CAM-GLII Mode 2. potvrzeno S05, archivovaný řádek 504 Podobnost není důkaz konkrétního příkazu. Uzavřeno primárním popisem S05 na archivovaném řádku 504. Další podmínka pro omezený POC není potřebná.
E11 Minimální geometrické příkazy Model 11 používá PU, PD, PA a volitelně PR. potvrzeno D02, Q04, 0x6a911f38 Uzavírá minimální absolutní geometrii. Uzavřeno dosažitelnou větví modelu 11 na 0x6a911f38 v D02. Další podmínka pro omezený POC není potřebná.
E12 Proprietární příkazy Omezená první větev nepotřebuje !PG0;, ;JE; ani jiné nalezené rozšíření. odvozeno D02, Q03 a omezení první úlohy POC je nesmí emitovat. Uzavřeno tokem Q03 v D02 a omezením na model 11 bez posunu stránky. Další podmínka pro omezený POC není potřebná.
E13 Jednotka souřadnic Přepínatelně 0,025 mm nebo 0,010 mm; panelový výchozí stav je 0,025 mm. potvrzeno S01, PDF str. 99 a 170 Profil musí jednotku uvést explicitně. Uzavřeno hodnotami v S01 na PDF str. 99 a 170. Další podmínka pro omezený POC není potřebná.
E14 Příkazový počátek Stroj podporuje vlevo dole nebo střed; tiskový ovladač vyžaduje vlevo dole. potvrzeno S01, PDF str. 36; S02, PDF str. 5 POC vyžaduje vlevo dole. Uzavřeno volbami počátku v S01 na PDF str. 36 a požadavkem S02 na PDF str. 5. Další podmínka pro omezený POC není potřebná.
E15 Orientace os Bez rotace je x_cmd=x_gdi, y_cmd=page_height-y_gdi; přímý host v soustavě vlevo dole použije kladné X doprava a Y nahoru. potvrzeno D02, Q05, 0x6a911f38 POC musí zakázat rotaci. Uzavřeno transformací Q05 na 0x6a911f38 v D02. Další podmínka pro omezený POC není potřebná.
E16 Výběr nástroje SPn vybírá logický slot. potvrzeno D02, Q06; S01 Profil musí uvést slot. Uzavřeno serializací Q06 v D02 a příkazem SP v S01. Další podmínka pro omezený POC není potřebná.
E17 Mapa SP Sloty 1 až 6 jsou panelově konfigurovatelné; S01 uvádí tovární mapu. potvrzeno D02, Q06; S01, manuál str. 3-10 Obsluha musí potvrdit aktuální mapu. Uzavřeno Q06 v D02 a panelovým PEN ASSIGN v S01 na manuálové str. 3-10. Další podmínka pro omezený POC není potřebná; obsluha musí před řezem potvrdit mapu panelu.
E18 Zdvih a spuštění nástroje PU nastaví pohyb bez řezu, PD pohyb s řezem. potvrzeno D02, Q04, 0x6a911f38 Uzavírá převod kontury. Uzavřeno větvemi PU a PD Q04 na 0x6a911f38 v D02. Další podmínka pro omezený POC není potřebná.
E19 Příkazy rychlosti Model 11 emituje VS; ZA v profilové větvi neemituje. potvrzeno D02, Q07; S01 potvrzuje sémantiku obou příkazů POC nastaví jen rychlost při řezu a zdvižený pohyb ponechá panelu. Uzavřeno emisí Q07 v D02 a sémantikou v S01. Další podmínka pro omezený POC není potřebná.
E20 Rozsah rychlosti Spor vyřešen: MMKPLT při serializaci neclampuje (jen !=0 a delta-suprese); softwarový strop vynucuje MMK_UI a pro model 11 je to 0–50 cm/s, pro ostatní modely 0–40. Stroj fyzicky 0,2 až 30 cm/s. potvrzeno D02, Q07; MMK_UI.dll 0x6a912fe1 (model 11 → mov eax,0x32 = 50) vs. 0x6a912fb9 (jiné → 0x28 = 40) přes UDM_SETRANGE; S01 pro fyzický limit UI hodnota 50 je softwarový strop, ne strojní. Uzavřeno konstantami 0x32/0x28 v MMK_UI. Omezený POC drží celé 1 až 30 cm/s podle fyzického limitu S01; software vyšší hodnotu nezakáže.
E21 Příkazy tlaku Model 11 emituje variantu podle příznaku řezacího režimu; pro CFLJJ.PCD je to ZF (viz E38). potvrzeno D02, Q07; disassembly 0x6a914617 Profil emituje doloženou variantu. Uzavřeno vazbou na E38: CUTTING=1 vede na ZF. Další podmínka pro omezený POC není potřebná.
E22 Rozsah tlaku Oprava a vyřešení: softwarový strop MMK_UI je 0–5000 g, ne 10000 jako uváděla dřívější poznámka. MMKPLT při serializaci neclampuje. Fyzický rozsah závisí na nástroji a končí na 1000 nebo 1500 g. potvrzeno D02, Q07; MMK_UI.dll 0x6a912ff5 (mov r15d,0x1388 = 5000) přes UDM_SETRANGE; S01 pro fyzický limit Profil validuje konkrétní nástroj, ne softwarový strop 5000. Uzavřeno konstantou 0x1388 v MMK_UI. Omezený POC odmítá tlak nad fyzickým limitem zvoleného nástroje (např. 1000/1500 g), ne až na 5000.
E23 Offset ostří ZO používá mm; fyzicky 0,00 až 2,50 mm v kroku 0,05 mm. potvrzeno D02, Q07; S01 Profil může hodnotu validovat před odesláním. Uzavřeno formátem ZO v Q07 v D02 a rozsahem v S01. Další podmínka pro omezený POC není potřebná.
E24 Serializace profilu SP, volitelně VS, FS/ZF, ZO se dvěma desetinnými místy; nula příkaz vynechá. potvrzeno D02, Q07, 0x6a9143b4 a 0x6a914264 Uzavírá omezený profil POC. Uzavřeno profilovou větví 0x6a9143b4 a formátovačem 0x6a914264 v D02. Další podmínka pro omezený POC není potřebná.
E25 Počet průchodů stroje Stroj podporuje 2 až 9 průchodů a FineCut je může řídit také. potvrzeno S01, PDF str. 80–81 POC použije jeden hostitelský průchod. Uzavřeno schopností stroje v S01 na PDF str. 80–81. Další podmínka pro jednopróchodový POC není potřebná.
E26 Hostitelská realizace průchodů Neanalyzována; třída D. neověřeno D02, hranice rozsahu Neblokuje první jednopróchodový řez. Q08 uzavře dvojice spoolovacích záznamů stejné kontury s jedním a dvěma hostitelskými průchody při SORTING=OFF; rozdíl musí určit opakování geometrie nebo samostatný příkaz.
E27 Pořadí kontur Stroj může řadit bloky; SORTING je výchozí OFF. potvrzeno S01, PDF str. 82 POC vyžaduje SORTING=OFF. Uzavřeno chováním SORTING v S01 na PDF str. 82. Další podmínka pro omezený POC není potřebná.
E28 Dotaz plochy OH MMKPLT žádný status dotaz (OH/OS/OA/OI/!) neemituje a žádnou odpověď neparsuje — tokeny v kódu nejsou. Přesný formát OH proto z binárky doložit nelze; POC jej nepoužije. neověřeno D02: MMKPLT bez status-opkódů, bez ReadPrinter; S01, manuál str. 3-30 Třída D. Q09 pro OH uzavře obousměrný záznam přesného požadavku a surové odpovědi CFL. Omezený POC dotaz neposílá.
E29 Stavové odpovědi RAW TCP Zápisová cesta legacy ovladače je staticky doloženě jednosměrná: MMKPLT importuje WritePrinter/WriteFile, ne ReadPrinter; vlastní MPMSERV_1.dll ReadPort vrací nula bajtů. Stav jde jen out-of-band (SNMP / Event Mail). Aktuální ovladač 5.12.3 čte status samostatnou metodou (getDeviceStatus), ne v rámci odeslání dat. potvrzeno (jednosměrnost zápisu); neověřeno (formát odpovědi) D02 (import tabulka MMKPLT, MPMSERV_1.dll ReadPort); D03 (readData/getDeviceStatus oddělené od sendData); S06 (SNMP oddělený) POC nesmí záviset na odpovědi po datovém socketu. Jednosměrnost potvrzena. Formát případné app-vrstvové odpovědi uzavře jen síťový záznam.
E30 Registrační značky Stroj podporuje Type 1, Type 2 a Square a 1 až 4 body TP1–TP4. potvrzeno S01, PDF str. 124–125 Neblokuje samostatný první řez. Uzavřeno typy a body značek v S01 na PDF str. 124–125. Další podmínka pro samostatný POC není potřebná.
E31 Korekce čtyř bodů TP1–TP4 korigují náklon a měřítko; rotace je při detekci vypnutá. potvrzeno S01, PDF str. 124 Důležité pro pozdější print-and-cut. Uzavřeno modelem korekce v S01 na PDF str. 124. Další podmínka pro samostatný POC není potřebná.
E32 Spuštění detekce značek z hosta MMKPLT neemituje žádný mnemonik čtení značek (žádný TP/mark-read opkód). Detekci provádí senzor stroje; host jen nastaví režim přes UI (dialog 608 „Recognize register mark", [RegMark] 0/1). Emitovaný příkaz z hosta staticky neexistuje. neověřeno (emitovaný příkaz); odvozeno (řízeno UI flagem + senzorem stroje) D02: MMKPLT bez TP/mark opkódů; MMK_UI dialog 608 Neblokuje samostatný první řez. Q10 uzavřou spoolovací záznamy stejného plata z FineCut pro detekci jednoho a čtyř bodů; artefakt musí přiřadit rozměry, pořadí TP a příkazy k oběma režimům.
E33 Provozní stav stroje Přijatá data se řežou v režimu REMOTE; výchozí start je LOCAL. potvrzeno S01, manuál str. 1-20 a 3-2 Pilot musí potvrdit REMOTE. Uzavřeno stavy LOCAL a REMOTE v S01 na manuálových str. 1-20 a 3-2. Další podmínka pro omezený POC není potřebná.
E34 Generátor proudu MMKPLT.dll je vektorový generátor MGL pro CFL. potvrzeno D01; D02 Statická analýza cílila správný modul. Uzavřeno vazbou INF a tokem generátoru v D01 a D02. Další podmínka pro omezený POC není potřebná.
E35 Modelová konfigurace MODEL=11, CUTTING=1, PENNOMAX=6, PAGEINIT=IN;, COMMAND MGL-IIc=1. potvrzeno D01; CFLJJ.PCD SHA-256 15e8fe9037d518f09dee5f12e928def5f3deb04da662731e58cb905ccd723d51 Určuje omezenou modelovou větev. Uzavřeno obsahem hashovaného CFLJJ.PCD v D01. Další podmínka pro omezený POC není potřebná.
E36 Delegace legacy monitoru Delegace MPMSERV_1.dll na systémový monitor je architektonicky vyloučená: modul nemá Winsock importy, ani LoadLibrary/GetProcAddress, a všech 194 nepřímých volání míří do vlastní IAT. OpenPortEx=NULL tedy není skrytá delegace. RAW cesta na 11110 běží výhradně přes systémový tcpmon.dll, který v podkladech není. potvrzeno (neexistence delegace) D02: mpmserv_1.dll import/export parse, žádný ws2_32/dynamická resoluce; S06 pro systémový monitor Legacy transport = oddělený systémový monitor. Uzavřeno rozborem mpmserv_1.dll. Bajtový protokol systémového monitoru uzavře jen capture nebo rozbor tcpmon.dll mimo tyto podklady.
E40 CDeviceEtherData v 5.12.3 TCP/8002: netconfig:inf:GigaBitEther?; případně netconfig:set:RIP IP:. Následuje TCP/11110 pro data. potvrzeno (8002, 11110) D03: prtMdcDeviceIO cílené funkce 0x1800082d0, 0x180005c80, 0x1800043d0, 0x1800017e0 Popisuje pouze moderní CDeviceEtherData. Uzavřeno pro tuto cestu.
E41 CDeviceIDCut v 5.12.3 TCP/48153 → Register_Cutdata_Binary?<id>?<name>?<Base64>\n → True\n. potvrzeno D03: unitDeviceIOCtrl IDCutIOCtrl::sendCutData 0x180016470, Base64 0x18001b7d0; prtMdcDeviceIO výběr typu 0x200 Řezová data jsou app-vrstvově rámovaná. Nejde o legacy RAW MGL. Přenos na legacy RAW není platný.
E42 CDeviceEtherMdl v 5.12.3 Samostatná funkce 0x180004420 po konfiguraci otevírá TCP/50002 (0xC352). potvrzeno (50002); neověřeno (role) D03: prtMdcDeviceIO 0x180004420; RTTI CDeviceEtherMdl Nejde o CDeviceEtherData. Síťový záznam nebo další rozbor určí roli portu.
E37 Pořadí a kardinalita proudu Jeden list emituje právě jednou IN; na začátku, poté tělo v pořadí profil → geometrie a právě jednou PUSP0; na konci; profil předchází prvnímu PD. odvozeno E35 PAGEINIT=IN;; E08 epilog DrvSendPage; D02 tabulka DRVFN 0x6a92fe50 a pořadí DDI DrvStartDoc→DrvStartPage→kreslení→DrvSendPage z winddi.h Určuje kostru payloadu jednoho listu. Uzavřeno pro platný řez kontraktem DDI, PAGEINIT a epilogem; poloha profilového bloku je host řízená a musí předcházet prvnímu PD. Bajtovou identitu těla vůči původnímu ovladači uzavře až capture Q02.
E38 Volba FS vs. ZF Vyřešeno bajtovým řetězcem: pro CFLJJ.PCD driver emituje ZF, ne FS. Příznak [pdev+0xa70]+0x104 neřídí klíč COMMAND, ale PCD klíč CUTTING. V CFLJJ.PCD je CUTTING=1 → +0x104=1 → větev jne ponechá ZF. FS by padlo jen při CUTTING=0 nebo chybějícím klíči (default +0x104=0). potvrzeno D02, Q07; parser MMKPLT.dll: keyword tabulka 0x6a92a6b0 (CUTTING→handler 0x6a926e80, add rcx,0x104), setter atoi 0x6a9264b8, default-nula 0x6a925f82; emise 0x6a914617–0x6a91463b; COMMAND handler 0x6a926e98 cílí +0x118, ne +0x104 Určuje bajtovou identitu tlakového příkazu. Uzavřeno kompletním byte-chainem CUTTING→+0x104→ZF. Další podmínka není potřebná.
E39 Kvantování souřadnic Ovladač neprovádí žádné zaokrouhlení mm → jednotka: geometrie 0x6a911f38 počítá jen celočíselně a serializer 0x6a9051e0 volá msvcrt!_ltoa (báze 10) na už celé číslo. MulDiv je na dráze rozlišení/DPI, ne per-vertex. Zaokrouhlení je tedy plně na hostovi. potvrzeno D02, Q05; disassembly 0x6a911f38 (celočíselné sub), 0x6a9051e0 (_ltoa, IAT 0x6a901488); jediné MulDiv na 0x6a91ac8a mimo per-vertex Host volí pravidlo; driver žádné nevnucuje. Uzavřeno: driver nezaokrouhluje. Host stanoví a zdokumentuje vlastní pravidlo (např. round-half-up). Bajtovou shodu s původním ovladačem pro konkrétní bod potvrdí až capture.

Minimální specifikace omezeného protokolu

Tato specifikace popisuje jediný list, jeden hostitelský průchod, absolutní geometrii, nulovou rotaci a žádné registrační značky. Neznámá hodnota je výslovně neověřeno; žádná taková hodnota nemá skrytou výchozí volbu.

1. Navázání TCP spojení

  • Syntaxe: spojení TCP na IPv4 adresu plotru a port 11110.
  • Jednotka a rozsah: port je přesně 11110. Počet spojení, ukončení a opětovné použití socketu legacy systémové cesty zůstávají neověřeno.
  • Důkaz: S02 vybírá Raw a 11110. S06 potvrzuje TCP systémového monitoru. D02 dokládá, že vlastní MPMSERV_1.dll tuto cestu nerealizuje ani nedeleguje (E36).
  • Jistota: vysoká pro cílový port; nízká pro životní cyklus legacy cesty.

2. Případný handshake

  • Syntaxe: předehra legacy RAW cesty je neověřeno.
  • Jednotka a rozsah: Neznámý je první bajt i případné app-vrstvové rámování legacy proudu. Budoucí test používá pro první klientský bajt observační deadline 35 s; tato hodnota není timeout Windows.
  • Důkaz: D02 dokládá nulové čtení jen ve vlastní cestě MPMSERV_1.dll. D03 dokládá odlišné rámce CDeviceEtherData a CDeviceIDCut.
  • Rozhodovací hranice: Dva běhy musí odeslat tentýž předem hashovaný RAW payload. Tichý server A neodešle nic. Server B po accept provede pouze shutdown(SHUT_WR) a dál čte. Q02 se pro omezený POC uzavře jen tehdy, když A i B do 35 s odešlou bajtově shodný stream začínající IN;. Každý jiný výsledek ponechá Q02 otevřenou a vyžádá skutečný síťový záznam nebo doloženou konkrétní odpověď.
  • Omezení pozorování: Mock server vidí síťový provoz a časování, nikoli interní volání recv. Ticho do deadline nedokazuje absenci čtení. Rámce 5.12.3 nejsou totožné s legacy MGL proudem.
  • Jistota: nízká; bajtová identita legacy proudu čeká na capture.

3. Začátek úlohy

  • Syntaxe: ASCII IN;.
  • Jednotka a rozsah: žádná; povolená je přesně tato tříbajtová modelová inicializace.
  • Důkaz: CFLJJ.PCD, PAGEINIT=IN;, SHA-256 15e8fe9037d518f09dee5f12e928def5f3deb04da662731e58cb905ccd723d51.
  • Jistota: vysoká jako začátek spoolovacího payloadu; zda jde o první síťové bajty, je neověřeno.

4. Nastavení jednotek a souřadnic

  • Syntaxe: absolutně PAx,y; relativně PRdx,dy. x, y, dx a dy jsou podepsaná desítková celá čísla bez mezery.
  • Jednotka: explicitní panelový profil gdp_unit_mm musí být 0.025 nebo 0.010 mm. Pro vstup v soustavě vlevo dole platí x_cmd=x_mm/gdp_unit_mm, y_cmd=y_mm/gdp_unit_mm po hostitelském kvantování.
  • Rozsah: odvozeně pro 610 × 510 mm: 0…24400, 0…20400 při 0,025 mm; 0…61000, 0…51000 při 0,010 mm. POC nepoužije záporný absolutní bod ani rotaci.
  • Důkaz: D02, Q05, MMKPLT.dll 0x6a911f38; S01 pro jednotku a plochu; S02 pro počátek vlevo dole.
  • Jistota: vysoká pro syntaxi, osy a jednotky; střední pro odvozené numerické meze.

5. Výběr nástroje a profilové hodnoty

  • Syntaxe: SPn, volitelně VSv, pro CFLJJ.PCD tlak jako ZFf (ne FSf; E38), a volitelně ZOo.oo. Ovladač je řetězí bez mezery a bez vloženého středníku, například SP1VS10ZF100ZO0.30.
  • Jednotky: n je logický panelový slot; v je celé cm/s; f je celé g; o.oo je mm se dvěma desetinnými místy (_fcvt(...,2,...)). Pořadí polí v 28bajtovém profilovém recordu: SP na +0x04, VS na +0x0c, ZF/FS na +0x0e, AS na +0x10, ZO na +0x14 (float).
  • Rozsah: n=1…6; softwarový strop rychlosti modelu 11 je 50 cm/s, pro omezený POC ale v=1…30 podle fyzického limitu stroje; softwarový strop tlaku je 5000 g (E22), POC drží fyzický limit nástroje, například swivel 30…1000 g a tangenciální nůž nebo roller 500…1500 g; offset 0.00…2.50 mm po 0,05 mm. Nulová hodnota příkaz vynechá a ponechá prioritu panelu.
  • Důkaz: D02, Q06–Q07, MMKPLT.dll 0x6a9143b4 a 0x6a914264; parser CUTTING (E38); clampy MMK_UI (E20/E22); S01 pro fyzické rozsahy.
  • Jistota: vysoká pro serializaci i volbu ZF. Desetinná rychlost je pro tento POC neověřeno a nesmí se emitovat; AS (akcelerace v řezacím režimu) je volitelná a POC ji ponechá panelu.

6. Pohyb bez řezu

  • Syntaxe: PUPAx,y pro absolutní bod; další absolutní bod bez řezu používá stejný tvar.
  • Jednotka a rozsah: podle bodu 4.
  • Důkaz: D02, Q04, MMKPLT.dll 0x6a911f38, řetězce PU 0x6a901c44 a PA 0x6a901c50.
  • Jistota: vysoká.

7. Pohyb s řezem

  • Syntaxe: PDPAx,y pro absolutní řezný bod. Relativní větev je PDPRdx,dy, ale omezený POC ji nepoužije.
  • Jednotka a rozsah: podle bodu 4.
  • Důkaz: D02, Q04, MMKPLT.dll 0x6a911f38, řetězce PD 0x6a901c4c, PA 0x6a901c50 a PR 0x6a901c54.
  • Jistota: vysoká.

8. Průchody a pořadí kontur

  • Syntaxe: žádný hostitelský příkaz není pro více průchodů doložen. POC pošle každou konturu právě jednou v pořadí hosta.
  • Jednotka a rozsah: právě jeden průchod; panelové SORTING=OFF.
  • Důkaz: S01 potvrzuje možnosti stroje; D02 klasifikuje hostitelskou realizaci jako třídu D bez další analýzy.
  • Jistota: vysoká pro omezení POC; vlastní víceprůchodový protokol je neověřeno.

9. Ukončení úlohy

  • Syntaxe: ASCII PUSP0;, potom flush spoolovacího bufferu.
  • Jednotka a rozsah: žádná; platí pro model 11 bez rozšířeného posunu a podávání stránky.
  • Důkaz: D02, Q03, MMKPLT.dll DrvSendPage 0x6a909a9c, řetězec 0x6a901908, délka 6, následný flush 0x6a90533c(...,9).
  • Jistota: vysoká pro poslední bajty payloadu; okamžik ukončení TCP je neověřeno.

10. Odpovědi a chyby zařízení

  • Syntaxe: neověřeno; omezený POC neposílá OH ani jiný stavový dotaz.
  • Jednotka a rozsah: odpověď, timeout a chybový rámec jsou neověřeno.
  • Důkaz: D02 dokládá, že vlastní ReadPort na 0x180002468 vrací nula bajtů. Tento callback nepatří prokázaně do ručně zvolené systémové RAW cesty. Kontrolní TCP EOF plánovaný pro Q02 není odpověď plotru a neurčuje její bajtový formát.
  • Jistota: vysoká pro vlastní callback; nízká pro zařízení přes RAW TCP.

11. Pořadí a kardinalita proudu

  • Syntaxe: IN;
    <profil>
    <geometrie>
    PUSP0;. Profil je jeden řetězec z bodu 5; geometrie je posloupnost bloků z bodů 6 a 7.
  • Kardinalita: IN; právě jednou na začátku listu; profilový řetězec právě jednou před první geometrií; PUSP0; právě jednou na konci. Jeden list je jeden hostitelský průchod.
  • Pořadí: profil musí předcházet prvnímu PD, aby řez použil zvolený nástroj a hodnoty. Mezi profilem a geometrií ovladač nevkládá oddělovač; pouze IN; a PUSP0; končí středníkem.
  • Důkaz: PAGEINIT=IN; vkládá IN; na začátek listu (E35); PUSP0; je epilog DrvSendPage (E08); pořadí kroků úlohy odpovídá kontraktu DDI DrvStartDoc→DrvStartPage→kreslení→DrvSendPage→DrvEndDoc z winddi.h, který dokládá tabulka DRVFN v D02. Poloha profilového bloku uvnitř těla je host řízená; její bajtová shoda s původním ovladačem je neověřeno do capture Q02.
  • Jistota: vysoká pro IN; na začátku a PUSP0; na konci; střední pro polohu profilového bloku uvnitř těla.

Implementační hranice

Specifikace je úplná pro obsah omezeného MGL payloadu jednoho listu, který stroj přijme jako platný řez: rámec IN; … PUSP0;, profil (SP, VS, ZF, ZO), absolutní geometrii a jejich pořadí. Po hloubkovém rozboru zůstávají otevřené už jen dva body legacy transportu; body bajtové identity obsahu jsou z velké části uzavřené.

  • Transport: přesné bajtové rámování a počet spojení legacy systémové cesty RAW TCP/11110 (E04; Q01) a bajtová identita jejího prvního proudu (E05; Q02) jsou neověřeno. CDeviceEtherData a CDeviceIDCut tyto body nedokládají. Delegace legacy monitoru je vyloučena (E36).
  • Bajtová identita obsahu (uzavřeno, neblokuje řez): volba FS/ZF je vyřešena na ZF (E38, potvrzeno), kvantování driver neprovádí (E39, potvrzeno — host volí pravidlo), pořadí a kardinalita jsou doloženy (E37). Zbývá jen bajtová poloha profilového bloku vůči původnímu ovladači, kterou potvrdí capture; pro platný řez není potřebná.

Encoder pro platný řez lze na základě této specifikace sestavit hned. RAW TCP odesílatel je pracovní hypotéza, dokud capture Q01 a Q02 nepopíše legacy přenos. App-vrstvové cesty 5.12.3 nejsou jeho náhradou. Další nejmenší krok určuje open-questions.md.