- manifest410.py: monotone-DP TU labeling (data-cluster affinity + CLASSMAP seeds + recon @addr soft votes) replaces naive fill; BT region = 917 fn / ~230 KB, extents match every independently-known TU boundary. - source-completeness: ROUTE A CLOSED (Nick holds no further assets); toolchain = BC++ 4.52 PROVEN by CW32.LIB byte-match, archived at TeslaRel410/BORLAND; OPT.MAK = the shipped binary's exact recipe; extender corrected to Borland PowerPack DPMI32 (was "Phar Lap TNT"); "all BT headers survive" corrected (17/36 bt-side; mech.hpp etc. reconstruction-only); engine gaps enumerated (vdata.hpp first, back-dated from BT412). - phases/phase-03: rounds 1-3 of the source410 campaign - 6/10 surviving originals compile clean under BC4.52; console wire IDs recovered from the binary ctors (Killed=9 Damaged=10 ScoreUpdate=13 DWH=15 [T1], TeamScore guessed 12 [T4] - answers the TeslaSuite console-port spec's open item); round-3 finding: MECH.HPP is the capstone grown with the mech TU reconstructions, BTREG.CPP green = the header-family milestone. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
136 lines
6.9 KiB
Markdown
136 lines
6.9 KiB
Markdown
# BT 4.10 source manifest — measured from BTL4OPT.EXE
|
|
|
|
Generated by `tools/manifest410.py`. Census = the surviving makefiles (BT.MAK 36 TUs, BTL4.MAK 13 TUs + btl4.obj, in LINK ORDER). Attribution = Fail() assert strings resolved via section_dump [T1 anchors] + CLASSMAP seed addresses [T1] + a monotone-in-link-order DP over data-section cluster affinity and recon @addr citations [T3 for unanchored boundaries]. A `—` row = TU NOT LOCALIZED: its code is contained inside an adjacent row's range (no anchor evidence yet); 8 such TUs survive as full .cpp anyway. `bt_l4/btl4.cpp` links at the image BOTTOM with the startup OBJ and is not part of this region.
|
|
|
|
Totals: **6267 functions** in the image; BT-side: **482 funcs / 153 KB** (bt.lib) + **435 funcs / 76 KB** (btl4.lib+main); boundary-uncertain: 0; unattributed (outside any anchor span): 5148.
|
|
|
|
`recon @addr hits` = binary function addresses cited in `game/reconstructed/` — a proxy for how much of the TU is already semantically decoded (not a completeness claim).
|
|
|
|
## bt.lib (link order)
|
|
|
|
| TU | survives | funcs | KB | addr range | assert-anchored | DP-inferred | max assert line | recon @addr hits |
|
|
|---|---|---|---|---|---|---|---|---|
|
|
| bt/btmssn.cpp | full | 3 | 0.4 | 49b54c-49b6d8 | 1 | 1 | 0 | 3 |
|
|
| bt/messmgr.cpp | — | 31 | 3.3 | 49b6d8-49c40c | 0 | 30 | 0 | 12 |
|
|
| bt/mechdmg.cpp | — | 20 | 6.5 | 49c40c-49de14 | 0 | 20 | 0 | 20 |
|
|
| bt/dmgtable.cpp | — | 34 | 6.0 | 49de14-49f624 | 0 | 32 | 0 | 16 |
|
|
| bt/mech.cpp | — | 42 | 22.5 | 49f624-4a5028 | 1 | 39 | 0 | 29 |
|
|
| bt/mech2.cpp | — | 12 | 15.1 | 4a5028-4a8cc0 | 4 | 8 | 1650 | 10 |
|
|
| bt/mech3.cpp | — | 3 | 9.2 | 4a8cc0-4ab188 | 0 | 3 | 0 | 3 |
|
|
| bt/mech4.cpp | — | 17 | 5.8 | 4ab188-4ac8c0 | 0 | 17 | 0 | 17 |
|
|
| bt/mechsub.cpp | — | 14 | 2.1 | 4ac8c0-4ad124 | 0 | 14 | 0 | 3 |
|
|
| bt/mechtech.cpp | — | 15 | 1.6 | 4ad124-4ad760 | 0 | 15 | 0 | 8 |
|
|
| bt/heat.cpp | partial(TCP) | 56 | 9.1 | 4ad760-4afbe0 | 1 | 55 | 0 | 54 |
|
|
| bt/mechmppr.cpp | — | 18 | 3.4 | 4afbe0-4b099c | 3 | 14 | 602 | 18 |
|
|
| bt/powersub.cpp | — | 30 | 4.6 | 4b099c-4b1c18 | 1 | 28 | 626 | 29 |
|
|
| bt/sensor.cpp | — | 11 | 2.6 | 4b1c18-4b2660 | 0 | 11 | 0 | 11 |
|
|
| bt/gnrator.cpp | partial(TCP) | — | — | — | — | — | — | 0 |
|
|
| bt/gyro.cpp | — | 15 | 13.4 | 4b2660-4b5bf8 | 0 | 14 | 0 | 15 |
|
|
| bt/torso.cpp | — | 10 | 6.9 | 4b5bf8-4b77bc | 0 | 9 | 0 | 10 |
|
|
| bt/hud.cpp | — | 21 | 4.7 | 4b77bc-4b8a8c | 0 | 21 | 0 | 21 |
|
|
| bt/myomers.cpp | — | 11 | 2.8 | 4b8a8c-4b95ec | 0 | 10 | 0 | 11 |
|
|
| bt/mechweap.cpp | — | 16 | 3.6 | 4b95ec-4ba45c | 1 | 14 | 0 | 16 |
|
|
| bt/emitter.cpp | partial(TCP) | 18 | 5.0 | 4ba478-4bb888 | 0 | 18 | 0 | 17 |
|
|
| bt/ppc.cpp | full | — | — | — | — | — | — | 0 |
|
|
| bt/projweap.cpp | partial(TCP) | 30 | 8.8 | 4bb888-4bdb94 | 0 | 29 | 0 | 28 |
|
|
| bt/mislanch.cpp | — | — | — | — | — | — | — | 0 |
|
|
| bt/ammobin.cpp | partial(TCP) | 7 | 1.5 | 4bdb94-4be1bc | 0 | 7 | 0 | 2 |
|
|
| bt/gauss.cpp | full | — | — | — | — | — | — | 0 |
|
|
| bt/projtile.cpp | partial(TCP) | 4 | 1.5 | 4be1bc-4be7c4 | 0 | 4 | 0 | 4 |
|
|
| bt/misthrst.cpp | — | 2 | 0.8 | 4be7c4-4beae4 | 0 | 2 | 0 | 2 |
|
|
| bt/seeker.cpp | — | 3 | 1.1 | 4beae4-4bef4c | 0 | 3 | 0 | 3 |
|
|
| bt/missile.cpp | partial(TCP) | 8 | 3.9 | 4bef4c-4bfee0 | 0 | 7 | 0 | 6 |
|
|
| bt/btplayer.cpp | — | 19 | 5.3 | 4bfee0-4c1408 | 3 | 15 | 662 | 12 |
|
|
| bt/btteam.cpp | full | — | — | — | — | — | — | 0 |
|
|
| bt/btdirect.cpp | — | 12 | 1.5 | 4c1408-4c19fc | 0 | 12 | 0 | 5 |
|
|
| bt/btreg.cpp | full | — | — | — | — | — | — | 0 |
|
|
| bt/btcnsl.cpp | full | — | — | — | — | — | — | 0 |
|
|
| bt/bttool.cpp | full | — | — | — | — | — | — | 0 |
|
|
|
|
## btl4.lib + main (link order)
|
|
|
|
| TU | survives | funcs | KB | addr range | assert-anchored | DP-inferred | max assert line | recon @addr hits |
|
|
|---|---|---|---|---|---|---|---|---|
|
|
| bt_l4/btl4mode.cpp | full | — | — | — | — | — | — | 0 |
|
|
| bt_l4/btl4rdr.cpp | — | 36 | 5.4 | 4c19fc-4c2f94 | 2 | 33 | 1032 | 16 |
|
|
| bt_l4/btl4gaug.cpp | — | 130 | 14.0 | 4c2f94-4c6798 | 1 | 128 | 1674 | 86 |
|
|
| bt_l4/btl4gau2.cpp | — | 77 | 13.1 | 4c6798-4c9bd0 | 0 | 76 | 0 | 50 |
|
|
| bt_l4/btl4gau3.cpp | — | 46 | 8.7 | 4c9bd0-4cbea0 | 0 | 46 | 0 | 39 |
|
|
| bt_l4/btl4grnd.cpp | — | 13 | 1.4 | 4cbea0-4cc40c | 0 | 13 | 0 | 6 |
|
|
| bt_l4/btl4galm.cpp | — | — | — | — | — | — | — | 0 |
|
|
| bt_l4/btl4vid.cpp | — | 20 | 19.8 | 4cc40c-4d133c | 3 | 16 | 3065 | 10 |
|
|
| bt_l4/btl4mppr.cpp | — | 54 | 6.2 | 4d133c-4d2be0 | 0 | 53 | 0 | 45 |
|
|
| bt_l4/btl4arnd.cpp | full | — | — | — | — | — | — | 0 |
|
|
| bt_l4/btl4mssn.cpp | — | 4 | 2.2 | 4d2be0-4d34c4 | 1 | 3 | 451 | 3 |
|
|
| bt_l4/btl4app.cpp | — | 12 | 1.7 | 4d34c4-4d3b74 | 1 | 10 | 400 | 12 |
|
|
| bt_l4/btl4pb.cpp | — | 43 | 4.0 | 4d3b74-4d4b58 | 0 | 42 | 0 | 13 |
|
|
| bt_l4/btl4.cpp | — | — | — | — | — | — | — | 0 |
|
|
|
|
## Engine/other TUs seen in the image (context only — their source survives)
|
|
|
|
| TU | funcs | KB |
|
|
|---|---|---|
|
|
| bt/mechweap.hpp | 1 | 0.0 |
|
|
| munga/app.cpp | 12 | 0.7 |
|
|
| munga/appmgr.cpp | 1 | 0.4 |
|
|
| munga/audcmp.cpp | 10 | 5.4 |
|
|
| munga/audio.cpp | 1 | 0.0 |
|
|
| munga/audloc.cpp | 1 | 0.4 |
|
|
| munga/audlvl.cpp | 1 | 0.4 |
|
|
| munga/audmidi.cpp | 2 | 0.1 |
|
|
| munga/audseq.cpp | 2 | 0.9 |
|
|
| munga/audsrc.cpp | 3 | 1.7 |
|
|
| munga/audwthr.cpp | 6 | 1.9 |
|
|
| munga/audwthr.hpp | 13 | 6.2 |
|
|
| munga/boxsolid.cpp | 1 | 0.0 |
|
|
| munga/caminst.cpp | 1 | 0.9 |
|
|
| munga/cammgr.cpp | 1 | 0.2 |
|
|
| munga/cmpnnt.cpp | 1 | 0.0 |
|
|
| munga/controls.cpp | 3 | 0.1 |
|
|
| munga/cstr.cpp | 1 | 0.1 |
|
|
| munga/event.cpp | 2 | 0.1 |
|
|
| munga/explode.cpp | 1 | 0.3 |
|
|
| munga/filestrm.hpp | 2 | 0.1 |
|
|
| munga/gaugalrm.cpp | 2 | 0.1 |
|
|
| munga/gauge.cpp | 2 | 0.1 |
|
|
| munga/gaugrend.cpp | 6 | 2.6 |
|
|
| munga/graph2d.cpp | 20 | 0.7 |
|
|
| munga/hash.cpp | 2 | 0.1 |
|
|
| munga/heap.cpp | 1 | 0.5 |
|
|
| munga/host.cpp | 1 | 0.1 |
|
|
| munga/hostmgr.cpp | 3 | 0.1 |
|
|
| munga/icom.cpp | 1 | 0.0 |
|
|
| munga/interest.cpp | 7 | 1.0 |
|
|
| munga/intorgn.cpp | 3 | 0.1 |
|
|
| munga/iterator.cpp | 6 | 0.2 |
|
|
| munga/lamp.cpp | 1 | 0.0 |
|
|
| munga/memstrm.cpp | 1 | 0.2 |
|
|
| munga/network.cpp | 4 | 0.7 |
|
|
| munga/objstrm.cpp | 3 | 0.4 |
|
|
| munga/player.cpp | 1 | 0.0 |
|
|
| munga/registry.cpp | 2 | 0.1 |
|
|
| munga/renderer.cpp | 3 | 0.1 |
|
|
| munga/scalar.cpp | 1 | 0.1 |
|
|
| munga/sfeskt.cpp | 1 | 0.0 |
|
|
| munga/socket.cpp | 3 | 0.1 |
|
|
| munga/spooler.cpp | 1 | 0.1 |
|
|
| munga/srtskt.cpp | 4 | 0.1 |
|
|
| munga/table.cpp | 3 | 0.1 |
|
|
| munga/tree.cpp | 3 | 0.1 |
|
|
| munga/vchain.cpp | 3 | 0.1 |
|
|
| munga/watcher.cpp | 3 | 1.0 |
|
|
| munga/watcher.hpp | 5 | 0.8 |
|
|
| munga_l4/l4app.cpp | 2 | 0.5 |
|
|
| munga_l4/l4audhdw.cpp | 2 | 0.1 |
|
|
| munga_l4/l4audio.cpp | 2 | 0.4 |
|
|
| munga_l4/l4audlvl.cpp | 1 | 0.4 |
|
|
| munga_l4/l4audres.cpp | 1 | 1.2 |
|
|
| munga_l4/l4audrnd.cpp | 2 | 1.1 |
|
|
| munga_l4/l4audwtr.cpp | 1 | 0.6 |
|
|
| munga_l4/l4ctrl.cpp | 2 | 0.6 |
|
|
| munga_l4/l4gauge.cpp | 1 | 0.0 |
|
|
| munga_l4/l4net.cpp | 11 | 7.1 |
|
|
| munga_l4/l4splr.cpp | 2 | 0.1 |
|
|
| munga_l4/l4video.cpp | 8 | 14.9 |
|
|
| munga_l4/l4vidrnd.cpp | 5 | 0.7 |
|