diff --git a/bootloader.c b/bootloader.c index 9f0c5d9..b7c1c16 100644 --- a/bootloader.c +++ b/bootloader.c @@ -240,14 +240,14 @@ __attribute__((always_inline)) static inline void synthesize_block(uint32_t bloc for (int i = 0; i < 32; i++) USB_EP1_IN(i * 2) = ((uint16_t*)INFO_UF2)[i]; } else if (block == 66 && piece == 1) { - for (int i = 0; i < (sizeof(INFO_UF2) - 64 + 1 / 2); i++) + for (int i = 0; i < (sizeof(INFO_UF2) - 64 + 1) / 2; i++) USB_EP1_IN(i * 2) = ((uint16_t*)INFO_UF2)[32 + i]; - for (int i = (sizeof(INFO_UF2) + 1 / 2); i < 32; i++) + for (int i = (sizeof(INFO_UF2) - 64 + 1) / 2; i < 32; i++) USB_EP1_IN(i * 2) = 0; } else if (block == 67 && piece == 0) { - for (int i = 0; i < (sizeof(INDEX_HTM) + 1 / 2); i++) + for (int i = 0; i < (sizeof(INDEX_HTM) + 1) / 2; i++) USB_EP1_IN(i * 2) = ((uint16_t*)INDEX_HTM)[i]; - for (int i = (sizeof(INDEX_HTM) + 1 / 2); i < 32; i++) + for (int i = (sizeof(INDEX_HTM) + 1) / 2; i < 32; i++) USB_EP1_IN(i * 2) = 0; } else { for (int i = 0; i < 32; i++)