Deploy: RP loops (no single-shot) + confirm DOSBox needs no bundled DLLs

- net-boot/loop_rp.bat: GO.BAT-style netnub loop for RP (mirror of loop.bat,
  retargeted to rpl4opt). deploy/net_rp.conf.tmpl now calls it instead of the
  single-shot netnub + DOS pause -- the deployable runs in a loop until the
  supervisor kills DOSBox (per operator: no single-shot in the product).
- DLL closure resolved: dosbox-x.exe is a 182MB STATIC build -- import table is
  only Windows system DLLs, delay-import table empty, libpng/SDL/zlib embedded.
  Nothing to bundle; wpcap.dll comes from the Npcap install. package.ps1's "no
  DLLs" case is now informational, and the plan/README note the static build.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Cyd
2026-07-10 12:06:49 -05:00
co-authored by Claude Opus 4.8
parent 9df87f2c01
commit e65ff3f8d7
5 changed files with 33 additions and 16 deletions
+4 -1
View File
@@ -50,9 +50,12 @@ Copy-Item $podLaunch $root
# DOSBox-X + its DLLs
$dbDir = Join-Path $Emu 'src\src'
Copy-Item (Join-Path $dbDir 'dosbox-x.exe') $root
# The build is statically linked (imports only Windows system DLLs; empty
# delay-import table). No MinGW/SDL DLLs to bundle. wpcap.dll is provided by the
# Npcap install. Copy any DLLs that DO sit beside the exe, just in case.
$dlls = Get-ChildItem (Join-Path $dbDir '*.dll') -ErrorAction SilentlyContinue
if ($dlls) { $dlls | ForEach-Object { Copy-Item $_.FullName $root } ; Log "copied $($dlls.Count) DLL(s) beside dosbox-x.exe" }
else { Warn "no DLLs beside dosbox-x.exe -- verify the MinGW/SDL runtime DLLs the build needs are present" }
else { Log "no DLLs beside dosbox-x.exe (static build -- only Windows system DLLs + Npcap's wpcap needed)" }
# conf templates + configure.ps1
Copy-Item (Join-Path $Emu 'deploy\net_loop.conf.tmpl') $root