- return cmd_opchar_replong(cmd_io, param, values[0], 0, 16);
+ value = v[0] << 16 | v[1] << 8 | v[2];
+ return cmd_opchar_replong(cmd_io, param, value, 0, 16);
+ }
+ case 32: {
+ uint32_t value;
+ ret = sscanf(param[2], "%i", &value);
+ if (ret == EOF || ret == 0)
+ return -CMDERR_BADPAR;
+
+ char v[4] = { (value >> 24) & 0xff, (value >> 16) & 0xff, (value >> 8) & 0xff, (value >> 0) & 0xff };
+
+ ret = port->set(port, &v, sizeof(v));
+ if (ret == FAILURE)
+ return -CMDERR_WRPERM;
+ value = v[0] << 24 | v[1] << 16 | v[2] << 8 | v[3];
+ return cmd_opchar_replong(cmd_io, param, value, 0, 16);