- BORLAND/: Borland C++ 4.52 (chosen over 4.5 by byte-match: CODE/RP/CW32.LIB
is identical to 4.52's install lib). BCC32/TLINK32/TLIB/MAKE run natively on
Win11; CODE/BT/OPT.MAK is the shipped BTL4OPT.EXE's exact flag recipe
(extender = Borland PowerPack DPMI32, not Phar Lap TNT).
- restoration/source410/: the literal 1995-form reconstruction of the missing
BT game source (never mixed into CODE/). Round 1-3 state:
* 6 of 10 surviving original TUs COMPILE CLEAN under the period toolchain
(BTMSSN, BTCNSL, BTSCNRL, BTTEAM, BTL4MODE, BTL4ARND) - first builds
since 1996.
* BT_L4/BTL4APP.CPP pilot reconstruction: 12/12 functions, Fail() lands on
its binary-recorded line 400 exactly.
* BT/BTCNSL.HPP: console wire IDs recovered from the binary's ctors
(Killed=9, Damaged=10, ScoreUpdate=13, DeathWithoutHonor=15 [T1];
TeamScore=12 flagged [T4]).
* MUNGA/: 8 engine-header backfills back-dated from the BT412 WinTesla tree
(VDATA numbering decomp-verified; AUDREND's OpenAL-era virtual removed -
the period compiler is the drift detector).
* Tooling: backdate.py (WinTesla->1995 header transform), compile410.sh
(per-TU verification sweep under authentic OPT.MAK flags).
* README: corrected roadmap - 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>
94 lines
2.9 KiB
Plaintext
94 lines
2.9 KiB
Plaintext
<<[H]
|
|
##QUERY_PASSED_PARAM [[OldClient]]
|
|
##QUERY_WIND_CLIENT [[Client]]
|
|
##--BEGIN-- Client != ""
|
|
##: GetIncludeFile(\\"[[Client]]") [[ClientIncludeFile]]
|
|
##^BOF
|
|
##? \\"#include [[ClientIncludeFile]]" [[FoundInclude]]
|
|
##--BEGIN-- FoundInclude == FALSE
|
|
##^BOF
|
|
## ? "#pragma hdrstop" [[PragmaFound]]
|
|
##--BEGIN-- PragmaFound == TRUE
|
|
##^BOL
|
|
##^2
|
|
#include [[ClientIncludeFile]]
|
|
##--END-- PragmaFound == TRUE
|
|
##--BEGIN-- PragmaFound == FALSE
|
|
## ? "#include"
|
|
##: ^BOL
|
|
##: ^1
|
|
#include [[ClientIncludeFile]]
|
|
##--END-- PragmaFound == FALSE
|
|
##--END-- FoundInclude == FALSE
|
|
##QUERY_BASE_NAME [[BaseName]]
|
|
##QUERY_WIND_CLIENT [[Client]]
|
|
##"" [[ClientBase]]
|
|
##--BEGIN-- (BaseName == "TMDIFrame") || (BaseName == "TDecoratedMDIFrame")
|
|
##: <<*Client QUERY_BASE_NAME ClientBase
|
|
##(Client != "TMDIClient") && (ClientBase != "TMDIClient")
|
|
##: QUERY_CLASS_NAME [[ClassName]]
|
|
##: %\\"The class [[ClassName]]'s client can only be a TMDIClient type class. "
|
|
##*
|
|
##QUERY_CLASS_NAME [[ClassName]]
|
|
##FALSE [[ClientReplace]]
|
|
##--BEGIN-- ? \\"[[ClassName]] ("
|
|
##: YPos() [[ConstructorLine]]
|
|
##: \\"*new [[OldClient]]" [[MDIFrameClient]]
|
|
##: ? MDIFrameClient [[FoundIt]]
|
|
##: --BEGIN-- FoundIt
|
|
##: (YPos() == ConstructorLine) ClientReplace
|
|
##ClientReplace == FALSE
|
|
##: %\\"Unable to find client instantiation in constructor. "
|
|
##*
|
|
##: ^BOL
|
|
##: ? MDIFrameClient,"),",0 ClientReplace
|
|
##ClientReplace == FALSE
|
|
##: %\\"Unable to find client instantiation in constructor. "
|
|
##*
|
|
##: QUERY_WIND_CLIENT [[Client]]
|
|
##: \\QUERY_WIND_CLIENT_PARAM [[ClientParam]]
|
|
##: InsertText(\\"*new [[Client]][[ClientParam]]")
|
|
##*
|
|
##: --END-- FoundIt
|
|
##--END-- ? \\"[[ClassName]] ("
|
|
##--END-- (BaseName == "TMDIFrame") || (BaseName == "TDecoratedMDIFrame")
|
|
##--END-- Client != ""
|
|
>>[H]
|
|
|
|
|
|
<<[CPP]
|
|
##QUERY_BASE_NAME [[BaseName]]
|
|
##(BaseName == "TMDIFrame") || (BaseName == "TDecoratedMDIFrame")
|
|
##: Exit()
|
|
##*
|
|
##QUERY_PASSED_PARAM [[OldClient]]
|
|
##--BEGIN-- QUERY_CLASS_NAME [[ClassName]]
|
|
##\\"[[ClassName]]::[[ClassName]] (" [[FindClass]]
|
|
##^BOF
|
|
##? FindClass [[Search]]
|
|
##Search == FALSE
|
|
##: QUERY_FILE_CPP [[FileName]]
|
|
##: %\\"Unable to locate class constructor in [[FileName]]. "
|
|
##*
|
|
##^BOL
|
|
##^1
|
|
##YPos() [[BaseConstructorLine]]
|
|
##--BEGIN-- ? OldClient,") :",0 [[ClientReplace]]
|
|
##ClientReplace == FALSE
|
|
##: %\\"Unable to find client instantiation in base constructor. "
|
|
##*
|
|
##--BEGIN-- ClientReplace
|
|
##YPos() != BaseConstructorLine
|
|
##: %\\"Unable to find client instantiation in base constructor. "
|
|
##*
|
|
##QUERY_WIND_CLIENT [[Client]]
|
|
##\\QUERY_WIND_CLIENT_PARAM [[ClientParam]]
|
|
##: InsertText(\\"[[Client]][[ClientParam]]")
|
|
##*
|
|
##^BOL
|
|
##^^
|
|
##--END-- ClientReplace
|
|
##--END-- ? OldClient,") :",0 [[ClientReplace]]
|
|
##--END-- QUERY_CLASS_NAME [[ClassName]]
|
|
>>[CPP]
|