Newer AS7 integration binary, with ASF detection fixes and newer image assets.
[pub/USBasp.git] / Bootloaders / MassStorage / BootloaderMassStorage.h
index 34297d4..fc084dc 100644 (file)
@@ -1,13 +1,13 @@
 /*
              LUFA Library
-     Copyright (C) Dean Camera, 2013.
+     Copyright (C) Dean Camera, 2015.
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
-  Copyright 2013  Dean Camera (dean [at] fourwalledcubicle [dot] com)
+  Copyright 2015  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
                #include <string.h>
 
                #include "Descriptors.h"
+               #include "Config/AppConfig.h"
 
                #include "Lib/SCSI.h"
 
                #include <LUFA/Drivers/Board/LEDs.h>
                #include <LUFA/Drivers/USB/USB.h>
+               #include <LUFA/Platform/Platform.h>
 
        /* Preprocessor Checks: */
                #if !defined(__OPTIMIZE_SIZE__)
-                       #error This bootloader requires that it be optimize for size, not speed, to fit into the target device. Change optimization settings and try again.
+                       #error This bootloader requires that it be optimized for size, not speed, to fit into the target device. Change optimization settings and try again.
                #endif
 
        /* Macros: */
                /** LED mask for the library LED driver, to indicate that the USB interface is busy. */
                #define LEDMASK_USB_BUSY          LEDS_LED2
 
+               /** Magic bootloader key to unlock forced application start mode. */
+               #define MAGIC_BOOT_KEY             0xDC42
+
+       /* Global Variables: */
+               extern bool RunBootloader;
+
        /* Function Prototypes: */
                int main(void) AUX_BOOT_SECTION;
 
-               static void SetupHardware(void) AUX_BOOT_SECTION;
-
                void Application_Jump_Check(void) ATTR_INIT_SECTION(3);
 
                void EVENT_USB_Device_Connect(void) AUX_BOOT_SECTION;
@@ -85,5 +91,9 @@
 
                bool CALLBACK_MS_Device_SCSICommandReceived(USB_ClassInfo_MS_Device_t* const MSInterfaceInfo) AUX_BOOT_SECTION;
 
+               #if defined(INCLUDE_FROM_BOOTLOADER_MASSSTORAGE_C)
+                       static void SetupHardware(void) AUX_BOOT_SECTION;
+               #endif
+
 #endif