+ /* Read the next EEPROM byte into the endpoint */\r
+ WriteNextResponseByte(eeprom_read_byte((uint8_t*)(uint16_t)(CurrAddress >> 1)));\r
+\r
+ /* Increment the address counter after use */\r
+ CurrAddress += 2;\r
+ } \r
+ }\r
+ }\r
+ else\r
+ {\r
+ uint32_t PageStartAddress = CurrAddress;\r
+\r
+ if (MemoryType == 'F')\r
+ {\r
+ boot_page_erase(PageStartAddress);\r
+ boot_spm_busy_wait();\r
+ }\r
+ \r
+ while (BlockSize--)\r
+ {\r
+ if (MemoryType == 'F')\r
+ { \r
+ /* If both bytes in current word have been written, increment the address counter */\r
+ if (HighByte)\r