Files
TeslaRel410/BORLAND/BC45/LIB/STARTUP/BUILDC0.BAT
T
CydandClaude Fable 5 63312e07f9 source410: literal 4.10 source reconstruction + BC++ 4.52 fleet toolchain archived
- 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>
2026-07-19 07:33:26 -05:00

72 lines
2.3 KiB
Batchfile

@echo off
if not "%TASM%"=="" goto skip
set tasm=tasm
:skip
if not %3.==. goto noobjdir
set objdir=.
goto objdirset
:noobjdir
set objdir=%3
:objdirset
if not %2.==. goto noc0dir
set c0dir=.
goto c0dirset
:noc0dir
set c0dir=%2
:c0dirset
if %1.==clib. goto clib
if %1.==winlib. goto winlib
if %1.==dpmi16. goto dpmi16
goto error
:clib
echo Building DOS startups
cd %c0dir%
%TASM% /M /MX /Q /T /D__TINY__ c0, %objdir%\c0t
%TASM% /M /MX /Q /T /D__SMALL__ c0, %objdir%\c0s
%TASM% /M /MX /Q /T /D__COMPACT__ c0, %objdir%\c0c
%TASM% /M /MX /Q /T /D__MEDIUM__ c0, %objdir%\c0m
%TASM% /M /MX /Q /T /D__LARGE__ c0, %objdir%\c0l
%TASM% /M /MX /Q /T /D__HUGE__ c0, %objdir%\c0h
%TASM% /M /MX /Q /T /D__TINY__ /D_DSSTACK_ c0, %objdir%\c0ft
%TASM% /M /MX /Q /T /D__SMALL__ /D_DSSTACK_ c0, %objdir%\c0fs
%TASM% /M /MX /Q /T /D__COMPACT__ /D_DSSTACK_ c0, %objdir%\c0fc
%TASM% /M /MX /Q /T /D__MEDIUM__ /D_DSSTACK_ c0, %objdir%\c0fm
%TASM% /M /MX /Q /T /D__LARGE__ /D_DSSTACK_ c0, %objdir%\c0fl
%TASM% /M /MX /Q /T /D__HUGE__ c0, %objdir%\c0fh
if not %c0dir%==. cd ..
goto exit
:winlib
echo Building Windows startups
cd %c0dir%
%TASM% /M /MX /Q /T /D__SMALL__ /D__WINDOWS__ c0w, %objdir%\c0ws
%TASM% /M /MX /Q /T /D__COMPACT__ /D__WINDOWS__ c0w, %objdir%\c0wc
%TASM% /M /MX /Q /T /D__MEDIUM__ /D__WINDOWS__ c0w, %objdir%\c0wm
%TASM% /M /MX /Q /T /D__LARGE__ /D__WINDOWS__ c0w, %objdir%\c0wl
%TASM% /M /MX /Q /T /D__SMALL__ /D__WINDOWS__ c0d, %objdir%\c0ds
%TASM% /M /MX /Q /T /D__COMPACT__ /D__WINDOWS__ c0d, %objdir%\c0dc
%TASM% /M /MX /Q /T /D__MEDIUM__ /D__WINDOWS__ c0d, %objdir%\c0dm
%TASM% /M /MX /Q /T /D__LARGE__ /D__WINDOWS__ c0d, %objdir%\c0dl
if not %c0dir%==. cd ..
goto exit
:dpmi16
echo Building DPMI16 startup
cd %c0dir%
%TASM% /M /MX /Q /T /D__LARGE__ /D__WINDOWS__ /D__DPMI16__ c0w, %objdir%\c0x
if not %c0dir%==. cd ..
goto exit
:error
echo BUILD-C0.BAT
echo Usage: build-c0 libtype [srcdir [objdir]]
echo libtype clib (DOS) or winlib (Windows) or dpmi16 (DPMI16)
echo srcdir source subdirectory (default is ".")
echo objdir object subdirectory relative to srcdir (default is ".")
echo Example: build-c0 clib startup ..\lib
echo This batch file builds the C startup module (or modules) for
echo DOS or Windows. All memory models are built.
:exit