Files
BT411/context/wintesla-port.md
T
arcattackandClaude Opus 4.8 f914fc040a context-system: complete migration -> CLAUDE.md is now a 160-line router (zero context lost)
Full migration of the 2236-line monolithic CLAUDE.md into the progressive-context
knowledge graph (per spark-lesson / expert-seed.md), so the deep RE knowledge loads
on-demand instead of every session.

ZERO CONTEXT LOST:
- docs/PROGRESS_LOG.md = the complete old CLAUDE.md, VERBATIM (byte-identical) -- the
  lossless safety net + the "full detail" quick-lookup fallback.
- 18 context/*.md topic files (1343 lines) digest every section (§1-3 -> project-overview,
  §4 -> content-archives, §5 -> asset-formats/bgf-format, §5a -> source-completeness,
  §5b/§8 -> wintesla-port, §7/§10 -> locomotion, §10a -> build-and-run, §10b ->
  reconstruction-method, §10c -> combat-damage + reconstruction-gotchas, §10d -> subsystems,
  render notes -> rendering, gauges -> gauges-hud, MP -> multiplayer, §9 -> open-questions).
- reference/glossary.yaml (53 terms). decomp-reference.md = the offsets/ClassIDs/addresses hub.

CLAUDE.md (160 lines) = router: identity, answer/reason protocols, quick-lookup table,
evidence tiers (T0 engine-truth / T1 decompiled+verified / T2 reconstructed+runtime /
T3 guarded / T4 hypothesis), conventions + DO-NOT (the systemic bug classes), structure.
Retains the load-bearing work directives (build recipe pointer, "keep current" mandate).

Knowledge graph validates CLEAN (scratchpad/checkctx.py -- all [[links]] + quick-lookup +
docs refs resolve; [[name]] -> topic file or glossary term). docs/*.md ledgers stay as the
detailed logs; context/*.md are the curated digests that route into them.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-07 22:19:50 -05:00

50 lines
2.7 KiB
Markdown

---
id: wintesla-port
title: "The WinTesla Windows Port — the base everything builds on"
status: established
source_sections: "PROGRESS_LOG.md §5b, §8"
related_topics: [source-completeness, rendering, build-and-run, multiplayer]
key_terms: [WinTesla, L4D3D, MUNGA, RP, DPL]
---
# The WinTesla Windows Port
The `Elsewhen RP411` archive is a **working Windows port of the MUNGA engine** (VS2005,
`WinTesla.sln`). It means the hardest infrastructure is **already solved** — the bt411 build sits
on top of it. Full detail: `docs/PROGRESS_LOG.md §5b, §8`.
## What WinTesla already did (do NOT rebuild)
- **Renderer bypass: DONE** — `MUNGA_L4/L4D3D.cpp` + `DXUtils` replace libDPL / the IG board with
Direct3D9. No `libdpl.lib` in the tree. (Our from-scratch `port/` D3D9 viewer is now a
reference/sandbox, not the path.) [T1]
- **Audio: DONE** — OpenAL + libsndfile replacing the HMI "SOS" engine. [T1]
- **L4 HAL on Windows + the VS build system: DONE.** [T1]
- **Red Planet game logic: COMPLETE & buildable** — `VTV/VTVMPPR/WEAPSYS/...`. RP is at/near playable. [T1]
- **Multiplayer: the DOS `NETNUB` driver is already replaced by a 3446-line WinSock2 TCP
reimplementation** (`MUNGA_L4/L4NET.CPP`) + the master/replicant distributed-sim core. See
[[multiplayer]]. [T1]
## What BT still needs (the only remaining work below the game layer is NONE)
Everything below the game layer — engine, renderer, audio, HAL, build — exists and is shared. The
ONLY thing BT needs is its **game-logic source**, which is gone (see [[source-completeness]]) → it
must be **reconstructed**, with the three anchors (BT headers + the WinTesla engine to compile
against + RP's parallel code + the binary oracle). [T2]
## Build implications
- `WinTesla.sln` is **VS2005** and hard-depends on the **legacy DirectX SDK (June 2010)** (`d3dx9`,
`dinput`, `dxerr` — all removed from the modern Windows SDK). The DXSDK is installed at
`C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\`. [T2]
- The shared engine builds GREEN to `munga_engine.lib` via CMake/MSVC Win32 (see [[build-and-run]]).
Recipe gotchas (include-path shadowing, the CAMMGR/time.h fixes, the ATL shim) are in
`docs/PROGRESS_LOG.md §8`. [T2]
## Roadmap position
Old plan ("build a libDPL shim + port the engine") is **superseded** — WinTesla did it. New plan:
reuse the WinTesla engine (shared) + reconstruct the BT game library (`BT410_L4` + game logic). The
from-scratch libDPL shim is no longer needed. Phases 4-8 (BT game layer + pod bring-up) still apply.
[T2]
## Key Relationships
- Solves: the infrastructure that [[source-completeness]] would otherwise require.
- Feeds: [[build-and-run]], [[rendering]], [[multiplayer]].