carol: fix control board request struct

This commit is contained in:
2023-03-30 03:55:40 -04:00
parent 301a0e0ce7
commit 8c97dc09c0
3 changed files with 95 additions and 44 deletions

View File

@ -7,15 +7,22 @@
struct controlbd_config {
bool enable;
};
enum controlbd_cmd {
CONTROLBD_CMD_UNK_11 = 0x11
CONTROLBD_CMD_UNK_10 = 0x10,
CONTROLBD_CMD_UNK_7C = 0x7C,
CONTROLBD_CMD_UNK_30 = 0x30,
CONTROLBD_CMD_UNK_F0 = 0xF0,
};
struct controlbd_req {
uint8_t sync; // First byte is the sync
uint8_t cmd; // Command byte
uint8_t data[256]; // Request body goes here
uint8_t checksum; // Final byte is all bytes added, except the sync
uint8_t data_length; // Size of the data including command byte
uint8_t sync; // Sync byte, always 0xE0
uint8_t dest; // command destination id?
uint8_t src; // command source id?
uint8_t data_len; // length of the proceeding data bytes
uint8_t cmd; // might be the command byte?
uint8_t data[255]; // rest of the data, len = data_len - 1
uint8_t checksum; // final byte is all bytes (excluding sync) added
};
HRESULT controlbd_hook_init(const struct controlbd_config *cfg);