Files
uv-k5-v3-emulator/work/run-emulator.ps1
mckero 2667e046e8 Emulator: multiboot slots from the page, flash controller, portable tests
flash controller: store ACR/OPTKEYR instead of swallowing them, which is what stopped the factory bootloader from starting

slots over the firmware's own serial protocol (0x0720 family); uvk5_socket/uvk5_testenv so a fresh checkout skips instead of failing; web UI slot table and Multiboot button; quick start, CONTRIBUTING, and stop tracking firmware images and radio dumps
2026-10-01 14:54:34 +08:00

27 lines
1.1 KiB
PowerShell

# Start the emulated radio with the f4hwn 5.9.0.CN firmware (Windows build).
#
# powershell -File work\run-emulator.ps1
#
# QEMU here is a native Windows build made with MSYS2, so it needs the MSYS2
# mingw64 DLLs on PATH. QMP is TCP: a Windows QEMU has no unix sockets, which is
# the one thing about this project that really was Linux-only.
param(
[string]$Kernel = "$PSScriptRoot\f4hwn\EGZUMER+F4HWN-v5.9.0.CN.elf",
[string]$Flash = "$PSScriptRoot\..\assets\flash.img",
[string]$Serial = "$PSScriptRoot\serial.log",
[int]$QmpPort = 4444,
[int]$GdbPort = 1234
)
$ErrorActionPreference = 'Stop'
$env:PATH = 'F:\msys64\mingw64\bin;' + $env:PATH
$qemu = 'F:\dsh-build\qemu-7.2.0\build\qemu-system-arm.exe'
Write-Host "kernel : $Kernel"
Write-Host "flash : $Flash"
Write-Host "QMP : tcp:127.0.0.1:$QmpPort GDB: tcp::$GdbPort serial: $Serial"
& $qemu -M "uv-k5-v3,flash-image=$Flash" -kernel $Kernel `
-display none -monitor none `
-serial "file:$Serial" `
-qmp "tcp:127.0.0.1:$QmpPort,server=on,wait=off" `
-gdb "tcp::$GdbPort"