diff --git a/Firmware/Dcodes.cpp b/Firmware/Dcodes.cpp index 9de93f770..e1b38ad46 100644 --- a/Firmware/Dcodes.cpp +++ b/Firmware/Dcodes.cpp @@ -26,6 +26,7 @@ void print_hex_byte(uint8_t val) // debug range address type (fits all SRAM/PROGMEM/XFLASH memory ranges) #if defined(DEBUG_DCODE6) || defined(DEBUG_DCODES) #include "xflash.h" +#include "xflash_layout.h" #define DADDR_SIZE 32 typedef uint32_t daddr_t; // XFLASH requires 24 bits @@ -427,7 +428,7 @@ void dcode_5() */ void dcode_6() { - dcode_core(0x0, 0x40000, dcode_mem_t::xflash, 6, _N("XFLASH")); + dcode_core(0x0, XFLASH_SIZE, dcode_mem_t::xflash, 6, _N("XFLASH")); } #endif diff --git a/Firmware/language.c b/Firmware/language.c index 01a396523..9a1113b96 100644 --- a/Firmware/language.c +++ b/Firmware/language.c @@ -9,6 +9,7 @@ #ifdef XFLASH #include "xflash.h" +#include "xflash_layout.h" #endif //XFLASH // Currently active language selection. @@ -110,7 +111,7 @@ uint8_t lang_get_count() #ifdef XFLASH XFLASH_SPI_ENTER(); uint8_t count = 2; //count = 1+n (primary + secondary + all in xflash) - uint32_t addr = 0x00000; //start of xflash + uint32_t addr = LANG_OFFSET; lang_table_header_t header; //table header structure while (1) { @@ -143,7 +144,7 @@ uint8_t lang_get_header(uint8_t lang, lang_table_header_t* header, uint32_t* off return (header->magic == LANG_MAGIC)?1:0; //return 1 if magic valid } XFLASH_SPI_ENTER(); - uint32_t addr = 0x00000; //start of xflash + uint32_t addr = LANG_OFFSET; lang--; while (1) { @@ -176,7 +177,7 @@ uint16_t lang_get_code(uint8_t lang) return pgm_read_word(((uint32_t*)(ui + 10))); //return lang code from progmem } XFLASH_SPI_ENTER(); - uint32_t addr = 0x00000; //start of xflash + uint32_t addr = LANG_OFFSET; lang_table_header_t header; //table header structure lang--; while (1) diff --git a/Firmware/xflash_layout.h b/Firmware/xflash_layout.h new file mode 100644 index 000000000..39b5f26c4 --- /dev/null +++ b/Firmware/xflash_layout.h @@ -0,0 +1,8 @@ +// XFLASH memory layout +#pragma once +#include +#include "config.h" + +#define XFLASH_SIZE 0x40000ul // size of XFLASH +#define LANG_OFFSET 0x0 // offset for language data +#define LANG_SIZE XFLASH_SIZE