+ /* Wait until the command has been sent by the host */\r
+ while (!(Endpoint_IsOUTReceived()));\r
+ \r
+ /* Read in the write destination address */\r
+ uint16_t PageAddress = Endpoint_Read_Word_LE();\r
+ \r
+ /* Check if the command is a program page command, or a start application command */\r
+ if (PageAddress == TEENSY_STARTAPPLICATION)\r
+ {\r
+ RunBootloader = false;\r
+ }\r
+ else\r
+ {\r
+ /* Erase the given FLASH page, ready to be programmed */\r
+ boot_page_erase(PageAddress);\r
+ boot_spm_busy_wait();\r