X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/f0c72df67452dc1e921ee3673a37b26cbc408c34..fef991e28b56ce3e8de86833f00b6b7e77f1e84c:/Bootloaders/CDC/BootloaderCDC.c diff --git a/Bootloaders/CDC/BootloaderCDC.c b/Bootloaders/CDC/BootloaderCDC.c index 74e406629..c7eeb929a 100644 --- a/Bootloaders/CDC/BootloaderCDC.c +++ b/Bootloaders/CDC/BootloaderCDC.c @@ -1,13 +1,13 @@ /* LUFA Library - Copyright (C) Dean Camera, 2013. + Copyright (C) Dean Camera, 2014. dean [at] fourwalledcubicle [dot] com www.lufa-lib.org */ /* - Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com) + Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com) Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted @@ -91,6 +91,10 @@ void Application_Jump_Check(void) if ((MCUSR & (1 << WDRF)) && (MagicBootKey == MAGIC_BOOT_KEY)) JumpToApplication |= true; + /* Don't run the user application if the reset vector is blank (no app loaded) */ + if (pgm_read_word_near(0) == 0xFFFF) + JumpToApplication = false; + /* If a request has been made to jump to the user application, honor it */ if (JumpToApplication) { @@ -236,9 +240,9 @@ void EVENT_USB_Device_ControlRequest(void) #if !defined(NO_BLOCK_SUPPORT) /** Reads or writes a block of EEPROM or FLASH memory to or from the appropriate CDC data endpoint, depending - * on the AVR910 protocol command issued. + * on the AVR109 protocol command issued. * - * \param[in] Command Single character AVR910 protocol command indicating what memory operation to perform + * \param[in] Command Single character AVR109 protocol command indicating what memory operation to perform */ static void ReadWriteMemoryBlock(const uint8_t Command) { @@ -402,7 +406,7 @@ static void WriteNextResponseByte(const uint8_t Response) Endpoint_Write_8(Response); } -/** Task to read in AVR910 commands from the CDC data OUT endpoint, process them, perform the required actions +/** Task to read in AVR109 commands from the CDC data OUT endpoint, process them, perform the required actions * and send the appropriate response back to the host. */ static void CDC_Task(void)