diff --git a/companion/src/firmwares/opentx/simulator/CMakeLists.txt b/companion/src/firmwares/opentx/simulator/CMakeLists.txt index cf8d2e51d..a6992f5a7 100644 --- a/companion/src/firmwares/opentx/simulator/CMakeLists.txt +++ b/companion/src/firmwares/opentx/simulator/CMakeLists.txt @@ -3,22 +3,22 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}) set(RADIO_SRC_DIRECTORY ${PROJECT_SOURCE_DIR}/../../radio/src) -add_custom_target( about_lbm_9x +add_custom_target(about_lbm_9x make lbm PCB=9X WORKING_DIRECTORY ${RADIO_SRC_DIRECTORY} ) -add_custom_target( about_lbm_taranis +add_custom_target(about_lbm_taranis make lbm PCB=TARANIS WORKING_DIRECTORY ${RADIO_SRC_DIRECTORY} ) -add_custom_target( trans +add_custom_target(trans make tra WORKING_DIRECTORY ${RADIO_SRC_DIRECTORY} ) -add_custom_target( lua_exports +add_custom_target(lua_exports make PCB=TARANIS lua_exports.inc WORKING_DIRECTORY ${RADIO_SRC_DIRECTORY} ) @@ -69,6 +69,7 @@ add_library(opentx-9xr${SUFFIX}-simulator SHARED ${OPENTX_SRC_FILES}) add_library(opentx-9x128${SUFFIX}-simulator SHARED ${OPENTX_SRC_FILES}) add_library(opentx-9xr128${SUFFIX}-simulator SHARED ${OPENTX_SRC_FILES}) add_library(opentx-gruvin9x${SUFFIX}-simulator SHARED ${OPENTX_SRC_FILES}) +add_library(opentx-mega2560${SUFFIX}-simulator SHARED ${OPENTX_SRC_FILES}) add_library(opentx-sky9x${SUFFIX}-simulator SHARED ${OPENTX_SRC_FILES}) add_library(opentx-taranis${SUFFIX}-simulator SHARED ${OPENTX_SRC_FILES}) add_library(opentx-taranisplus${SUFFIX}-simulator SHARED ${OPENTX_SRC_FILES}) @@ -79,6 +80,7 @@ add_dependencies(opentx-9xr${SUFFIX}-simulator about_lbm_9x trans) add_dependencies(opentx-9x128${SUFFIX}-simulator about_lbm_9x trans) add_dependencies(opentx-9xr128${SUFFIX}-simulator about_lbm_9x trans) add_dependencies(opentx-gruvin9x${SUFFIX}-simulator about_lbm_9x trans) +add_dependencies(opentx-mega2560${SUFFIX}-simulator about_lbm_9x trans) add_dependencies(opentx-sky9x${SUFFIX}-simulator about_lbm_9x trans) add_dependencies(opentx-taranis${SUFFIX}-simulator about_lbm_taranis trans lua_exports) add_dependencies(opentx-taranisplus${SUFFIX}-simulator about_lbm_taranis trans lua_exports) @@ -90,6 +92,7 @@ set(OPENTX_LIBRARIES opentx-9x128${SUFFIX}-simulator opentx-9xr128${SUFFIX}-simulator opentx-gruvin9x${SUFFIX}-simulator + opentx-mega2560${SUFFIX}-simulator opentx-sky9x${SUFFIX}-simulator opentx-taranis${SUFFIX}-simulator opentx-taranisplus${SUFFIX}-simulator @@ -121,6 +124,11 @@ target_include_directories(opentx-gruvin9x${SUFFIX}-simulator PRIVATE ${RADIO_SR target_compile_definitions(opentx-gruvin9x${SUFFIX}-simulator PRIVATE PCBGRUVIN9X CPUM2560 VOICE SDCARD ${COMMON_DEFINITIONS}) target_link_libraries(opentx-gruvin9x${SUFFIX}-simulator PRIVATE ${COMMON_LIBRARIES}) +# Mega2560 +target_include_directories(opentx-mega2560${SUFFIX}-simulator PRIVATE ${RADIO_SRC_DIRECTORY}/targets/mega2560) +target_compile_definitions(opentx-mega2560${SUFFIX}-simulator PRIVATE PCBMEGA2560 CPUM2560 SDCARD ROTARY_ENCODERS=2 ${COMMON_DEFINITIONS}) +target_link_libraries(opentx-mega2560${SUFFIX}-simulator PRIVATE ${COMMON_LIBRARIES}) + # Sky9x target_include_directories(opentx-sky9x${SUFFIX}-simulator PRIVATE ${RADIO_SRC_DIRECTORY}/targets/sky9x) target_compile_definitions(opentx-sky9x${SUFFIX}-simulator PRIVATE PCBSKY9X CPUARM VOICE SDCARD ${COMMON_DEFINITIONS}) diff --git a/companion/src/firmwares/opentx/simulator/opentxsimulator.cpp b/companion/src/firmwares/opentx/simulator/opentxsimulator.cpp index 19368b784..cbe475ecc 100644 --- a/companion/src/firmwares/opentx/simulator/opentxsimulator.cpp +++ b/companion/src/firmwares/opentx/simulator/opentxsimulator.cpp @@ -240,6 +240,8 @@ namespace NAMESPACE { #elif defined(PCBGRUVIN9X) #include "radio/src/targets/gruvin9x/board_gruvin9x.cpp" #include "radio/src/targets/gruvin9x/somo14d.cpp" +#elif defined(PCBMEGA2560) +#include "radio/src/targets/mega2560/board_mega2560.cpp" #else #include "radio/src/targets/stock/board_stock.cpp" #endif diff --git a/companion/src/firmwares/opentx/simulator/opentxsimulator.h b/companion/src/firmwares/opentx/simulator/opentxsimulator.h index fd705881e..4d34329f7 100644 --- a/companion/src/firmwares/opentx/simulator/opentxsimulator.h +++ b/companion/src/firmwares/opentx/simulator/opentxsimulator.h @@ -39,6 +39,10 @@ #define FLAVOUR "gruvin9x" #define NAMESPACE Gruvin9X #define EEPROM_VARIANT 0 +#elif defined(PCBMEGA2560) + #define FLAVOUR "mega2560" + #define NAMESPACE Mega2560 + #define EEPROM_VARIANT 0 #elif defined(PCB9XR) && defined(CPUM128) #define FLAVOUR "9xr128" #define NAMESPACE M128XR diff --git a/radio/src/targets/mega2560/board_mega2560.h b/radio/src/targets/mega2560/board_mega2560.h index dbfcaa215..6b07d0138 100644 --- a/radio/src/targets/mega2560/board_mega2560.h +++ b/radio/src/targets/mega2560/board_mega2560.h @@ -91,9 +91,9 @@ #define SD_IS_HC() (0) #define SD_GET_SPEED() (0) #if !defined(SIMU) -bool sdMounted(); -void sdMountPoll(); -void sdPoll10ms(); +bool sdMounted(void); +void sdMountPoll(void); +void sdPoll10ms(void); #endif // Keyboard driver diff --git a/radio/src/targets/simu/simpgmspace.cpp b/radio/src/targets/simu/simpgmspace.cpp index 67f1e7be0..fcd0c1249 100644 --- a/radio/src/targets/simu/simpgmspace.cpp +++ b/radio/src/targets/simu/simpgmspace.cpp @@ -55,7 +55,7 @@ #include #endif -volatile uint8_t pina=0xff, pinb=0xff, pinc=0xff, pind, pine=0xff, pinf=0xff, ping=0xff, pinh=0xff, pinj=0xff, pinl=0; +volatile uint8_t pina=0xff, pinb=0xff, pinc=0xff, pind, pine=0xff, pinf=0xff, ping=0xff, pinh=0xff, pinj=0, pinl=0; uint8_t portb, portc, porth=0, dummyport; uint16_t dummyport16; const char *eepromFile = NULL; @@ -141,6 +141,7 @@ sem_t *eeprom_write_sem; void simuSetKey(uint8_t key, bool state) { + // TRACE("simuSetKey(%d, %d)", key, state); switch (key) { KEY_CASE(KEY_MENU, GPIO_BUTTON_MENU, PIN_BUTTON_MENU) KEY_CASE(KEY_EXIT, GPIO_BUTTON_EXIT, PIN_BUTTON_EXIT) @@ -184,7 +185,7 @@ void simuSetTrim(uint8_t trim, bool state) // TODO use a better numbering to allow google tests to work on Taranis void simuSetSwitch(uint8_t swtch, int8_t state) { - // TRACE("swtch=%d state=%d", swtch, state); + // TRACE("simuSetSwitch(%d, %d)", swtch, state); switch (swtch) { #if defined(PCBTARANIS) && defined(REV9E) SWITCH_3_CASE(0, GPIO_PIN_SW_A_L, GPIO_PIN_SW_A_H, PIN_SW_A_L, PIN_SW_A_H)