cmake_minimum_required(VERSION 3.13)

set(PICO_BOARD pico2 CACHE STRING "Board type")

include(pico_sdk_import.cmake)

project(rp2350_8504x_emulator C CXX ASM)
set(CMAKE_C_STANDARD 11)

pico_sdk_init()

add_executable(rp2350_8504x_emulator
    src/main.c
    src/bus.c
    src/sweep_delay.c
    src/settings.c
    src/cli.c
)

pico_generate_pio_header(rp2350_8504x_emulator ${CMAKE_CURRENT_LIST_DIR}/src/testset.pio)

target_include_directories(rp2350_8504x_emulator PRIVATE src)

target_link_libraries(rp2350_8504x_emulator
    pico_stdlib
    pico_bootrom
    hardware_pio
    hardware_dma
    hardware_flash
    hardware_watchdog
)

# Serial control UI and debug output on USB CDC only
pico_enable_stdio_usb(rp2350_8504x_emulator 1)
pico_enable_stdio_uart(rp2350_8504x_emulator 0)

pico_add_extra_outputs(rp2350_8504x_emulator)
