diff --git a/lib/dusbextreme.d b/lib/dusbextreme.d index f96e8c1..4008fed 100644 --- a/lib/dusbextreme.d +++ b/lib/dusbextreme.d @@ -7,13 +7,15 @@ enum USBEXTREME_NAME_EXT_LENGTH = 10; enum USBEXTREME_MAGIC = 0x08; enum USBEXTREME_HEADER_SIZE = usb_extreme_base.sizeof; -struct usb_extreme_base { +align(1) struct usb_extreme_base { + align(1): uint8_t[6 + USBEXTREME_ID_LENGTH + USBEXTREME_NAME_LENGTH] empty; uint8_t magic; uint8_t[10] empty2; } -struct usb_extreme_v0 { +align(1) struct usb_extreme_v0 { + align(1): char[USBEXTREME_NAME_LENGTH] name; char[USBEXTREME_ID_LENGTH] id; uint8_t n_parts; @@ -23,7 +25,8 @@ struct usb_extreme_v0 { uint8_t[USBEXTREME_NAME_EXT_LENGTH] empty2; } -struct usb_extreme_v1 { +align(1) struct usb_extreme_v1 { + align(1): char[USBEXTREME_NAME_LENGTH] name; char[USBEXTREME_ID_LENGTH] id; uint8_t n_parts;