while (!(Endpoint_IsOUTReceived()));\r
\r
/* Read in the write destination address */\r
+ #if (FLASHEND > 0xFFFF)\r
+ uint32_t PageAddress = ((uint32_t)Endpoint_Read_16_LE() << 8);\r
+ #else\r
uint16_t PageAddress = Endpoint_Read_16_LE();\r
+ #endif\r
\r
/* Check if the command is a program page command, or a start application command */\r
- if (PageAddress == COMMAND_STARTAPPLICATION)\r
+ #if (FLASHEND > 0xFFFF)\r
+ if ((uint16_t)(PageAddress >> 8) == COMMAND_STARTAPPLICATION)\r
+ #else\r
+ if (PageAddress == COMMAND_STARTAPPLICATION) \r
+ #endif\r
{\r
RunBootloader = false;\r
}\r