:name: RISC-V platform with a verilated UART
:description: This script runs Zephyr using a verilated UART.

$name?="LiteUART"

using sysbus
mach create $name
machine LoadPlatformDescription @platforms/cpus/verilated/litex_vexriscv_verilated_liteuart.repl

$bin?=@https://dl.antmicro.com/projects/renode/zephyr--verilated_liteuart--shell.elf-s_864780-63c7e83fb01451ac6683434997f6f03c6a8f9079
$uartLinux?=@https://dl.antmicro.com/projects/renode/libVliteuart-Linux-x86_64-12746432362.so-s_2065816-334df4b5201438167096c12cd6d59715b43426e0
$uartWindows?=@https://dl.antmicro.com/projects/renode/libVliteuart-Windows-x86_64-12746432362.dll-s_3236379-b1132516fb39f2484697e1aeca9836bb5559313e
$uartMacOS?=@https://dl.antmicro.com/projects/renode/libVliteuart-macOS-x86_64-12746432362.dylib-s_219216-2682b8ed05e2290ebf173f01aa8908a3cb8624fe

showAnalyzer uart

uart SimulationFilePathLinux $uartLinux
uart SimulationFilePathWindows $uartWindows
# uart SimulationFilePathMacOS $uartMacOS

macro reset
"""
    sysbus LoadELF $bin
"""

runMacro $reset

