/** Intel HEX parser state machine state information, to track the contents of
* a HEX file streamed in as a sequence of arbitrary bytes.
*/
-struct
+static struct
{
/** Current HEX parser state machine state. */
uint8_t ParserState;
/** Checksum of the current record received so far. */
uint8_t Checksum;
/** Starting address of the last addressed FLASH page. */
- uint32_t PageStartAddress;
+ flashaddr_t PageStartAddress;
/** Current 32-bit byte extended base address in FLASH being targeted. */
- uint32_t CurrBaseAddress;
+ flashaddr_t CurrBaseAddress;
/** Current 32-bit byte address in FLASH being targeted. */
- uint32_t CurrAddress;
+ flashaddr_t CurrAddress;
} HEXParser;
/** Indicates if there is data waiting to be written to a physical page of
/** Magic bootloader key to unlock forced application start mode. */
#define MAGIC_BOOT_KEY 0xDC42
+ /* Type Defines: */
+ #if (FLASHEND > 0xFFFF)
+ typedef uint32_t flashaddr_t;
+ #else
+ typedef uint16_t flashaddr_t;
+ #endif
+
/* Enums: */
/** Intel HEX parser state machine states. */
enum HEX_Parser_States_t