From 75c2755ff2961eca43b73ccb27e97463ff9752a9 Mon Sep 17 00:00:00 2001 From: Jeff Epler Date: Tue, 26 Aug 2025 11:53:48 -0500 Subject: [PATCH] WIP --- src/pico/CMakeLists.txt | 2 -- src/pico/dvhstx_shim.cpp | 8 ++++++++ src/pico/dvhstx_shim.h | 12 ++++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 src/pico/dvhstx_shim.cpp create mode 100644 src/pico/dvhstx_shim.h diff --git a/src/pico/CMakeLists.txt b/src/pico/CMakeLists.txt index b5ff001e..e78efb8b 100644 --- a/src/pico/CMakeLists.txt +++ b/src/pico/CMakeLists.txt @@ -41,10 +41,8 @@ target_compile_definitions(common_pico INTERFACE target_link_libraries(common_pico INTERFACE pico_stdlib pico_multicore) if (USE_HSTX) - set(PIMORONI_PICO_PATH ${CMAKE_CURRENT_LIST_DIR}/../../3rdparty/pimoroni-pico) target_sources(common_pico INTERFACE ${CMAKE_CURRENT_LIST_DIR}/dvhstx_shim.cpp) - include(${PIMORONI_PICO_PATH}/pimoroni_pico_import.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../../3rdparty/dvhstx/drivers/dvhstx/dvhstx.cmake) target_link_libraries(common_pico INTERFACE dvhstx) target_compile_definitions(common_pico INTERFACE USE_HSTX=1) diff --git a/src/pico/dvhstx_shim.cpp b/src/pico/dvhstx_shim.cpp new file mode 100644 index 00000000..9dce6bdc --- /dev/null +++ b/src/pico/dvhstx_shim.cpp @@ -0,0 +1,8 @@ +#include "dvhstx.hpp" +#include "dvhstx_shim.h" + +static pimoroni::DVHSTX display; +void hstx_setup(line_fun_t gen_line) { + display.set_callback(gen_line, &display); + display.init(640, 240, pimoroni::DVHSTX::MODE_LINE_CALLBACK_RGB565, {HSTX_CKP, HSTX_D0P, HSTX_D1P, HSTX_D2P}); +} diff --git a/src/pico/dvhstx_shim.h b/src/pico/dvhstx_shim.h new file mode 100644 index 00000000..155f837f --- /dev/null +++ b/src/pico/dvhstx_shim.h @@ -0,0 +1,12 @@ +#pragma once + +#if defined(__cplusplus) +extern "C" { +#endif + +typedef void(*line_fun_t)(void *cb_data, int line_num, uint32_t *data); +void hstx_setup(line_fun_t gen_line); + +#if defined(__cplusplus) +} +#endif