Hi, David,
I did not try to do this. But I want to share some of my past experience in this kind of troubleshooting.
1. The order of decryption and compression may make difference. Also the checksum or CRC may contribute to the difference.
2. I don't know if it worth the time and effort, but try generate .3w file from your apps and corresponding XYZware and compare the result and sometime can help you find out if you are on the right direction.
3. I think old .3w file are just just a base64 encoded gcode file. Only new version .3w file are AES-encrypting ZIP-ed gcode.
4. I'm not sure if I misunderstood your previous post (#31). If I understand it correctly, this may be something you need.
I guess this is what you are after:
"uploadGCodeText" = "XYZ_@3D:4";
"latestBlockSent" = "XYZ_@3D:90”;
Just need to find out how big each block is.
"prefix" = "XYZ_@3D:";
//"disconnect" = "XYZ_@3D_S10_X";
//"connect" = "XYZ_@3D_S10_0";
//"start print" = "XYZ_@3D_S10_1";
//"test case" = "XYZ_@3D_S10_2";
//"uploadFirmwareBinary" = "XYZ_@3D_S10_3";
//"uploadGCodeText" = "XYZ_@3D_S10_4";
//"extruder Temperature" = "XYZ_@3D_S10_101";
//"get standard info" = "XYZ_@3D_S10_102";
//"get advanced info" = "XYZ_@3D_S10_103";
"disconnect" = "XYZ_@3D:-1";
"connect" = "XYZ_@3D:0";
"startOnlinePrint" = "XYZ_@3D:1";
"test print" = "XYZ_@3D:2";
"injectManualCommand" = "XYZ_@3D:2";
"uploadFirmwareBinary" = "XYZ_@3D:3";
"uploadGCodeText" = "XYZ_@3D:4";
"latestBlockSent" = "XYZ_@3D:90";
"uploadBinaryDidFinish" = "XYZ_@3D:91";
"uploadGCodeDidFinish" = "XYZ_@3D:92";
"machineLife" = "XYZ_@3D:5";
"read eeprom A" = "XYZ_@3D:6";
"read eeprom B" = "XYZ_@3D:7";
"machine status" = "XYZ_@3D:8";
"printer status" = "XYZ_@3D:8"; // same as machine status
"get standard info" = "XYZ_@3D:201";
"get advanced info" = "XYZ_@3D:202";
//example "XYZ_@3D:101,1"
//example "XYZ_@3D:101,2"
//example "XYZ_@3D:103,2"
"extruder on" = "XYZ_@3D:101";
"extruder off" = "XYZ_@3D:102";
"extruder Temperature" = "XYZ_@3D:103";
http://www.soliforum.com/topic/6279/xyz … 0-hacking/
(Da Vinci 1.0, Jr. 1.0 RAMPS, miniMaker) X4, (Creality CR-10S, CR-10 mini, Ender-3) X4, Anycubic MEGA X4, Anycubic Chrion X1, ADMILAB Gantry X2 (MonoPrice Maker Select V2, Plus, Ultimate)X4--Select mini X1, Anycubic photon X4, Wanhao duplicate D7 X1.
iNSTONE Inventor Pro X2, CTC Dual X2, ANET-A8, Hictop 3DP-11, Solidoodle Press, FLSUN I3 2017X1