diff --git a/HISTORY.md b/HISTORY.md new file mode 100644 index 0000000..1d46c3f --- /dev/null +++ b/HISTORY.md @@ -0,0 +1,156 @@ +# Historical Notes — the "Glaze" Developer Drive (sda4) + +Alongside this release tree, a dump of a developer's hard drive was recovered +(kept locally as `sda4/`, excluded from this repository by `.gitignore` due to +size and mixed provenance — ~20,000 files, ~403 MB). This document records +what was found on it, because it fills in most of the story around the code +in this repository. + +## The machine + +The drive is the boot disk of a workstation named **Glaze** belonging to +**Dave**, a Virtual World Entertainment developer (his working directories are +`BTDAVE`, `RPDAVE`, `STDAVE`, `HPDAVE`). File dates show the machine in active +use from mid-1994 to at least September 1999. + +- **OS:** Novell DOS 7 (the same OS the pod machines ran), with a boot menu + selecting Windows NT client networking, Personal NetWare, none, or a + minimal configuration. +- **Editor:** Brief, with a heavily customized macro setup. +- **Source control:** PVCS tools are installed (`PVCS/`), but no version + archives are on the drive — the repository lived on a server. +- **Tools:** Deluxe Paint, PKZip, Norton utilities, KA9Q NOS and NCSA + Telnet for TCP/IP, LightWave and SGI image files in transit through + `TEMP/` and `CONVERT/` (the art conversion pipeline workspace). + +## Pod lab infrastructure (VGL_LABS) + +`VGL_LABS/` holds the office pod lab's deployment system ("VGL" = Virtual +Geographic League, VWE's fiction). Pods booted via `BOOTPOD.BAT`, pulled +game builds from the server share **`\\vgl_code\podbay`**, and each developer +had a named update script: Chris, Gabe, Edo, Joanna, Jordan, Milo, Kiwi, +Shroom, Splotch, Bernoulli, and Golden (the golden/release build, default +game BT). The boot configuration documents the pod peripherals: Thrustmaster +controls, a 640x480x16 gauge display, a plasma display on COM2, intercom, +and SVGA-or-NTSC main video output. + +Dave's machine could itself boot as a pod — its `AUTOEXEC.BAT` ends by +calling `c:\vgl_labs\thispod\bootpod.bat`. + +## Division Ltd. material + +The drive contains far more from **Division Ltd.** (the UK VR company that +supplied the main-display graphics hardware and the dVS/DPL libraries) than +the compiled SDK in this repository: + +- **`DPL3/` and `DPL3RLS/`** — the DPL library in C source form, and under + `DPL3/VRENDER/` the **renderer source itself**: C and Intel **i860 + assembly**, with a `PXPL5SUP/` directory (Pixel-Planes 5 support — the + UNC research architecture Division's pixel-pipeline hardware descended + from), scan-converter/DMA-engine/texture-engine code, and design notes + (`DMA.TXT` describes the tile-based frame rendering loop). +- **`VREND/`** — dated renderer drops from October 1995 through June 1996, + showing Division shipping VWE renderer updates roughly monthly. +- **`DVSTOOLS/`** — the full BGF geometry tool suite (`BGF*.EXE`, `GLOMM`, + `IMG2VTX`, …). +- **`BIN/PHILS/`** — a Division engineer's personal toolkit that came along + with the SDK/support drops: i860 cross-tools (`ASMPP5`, `NM860`, + `RUN860.BAT`, `ISERVER`), Division format converters (PAZ/VIZ/BIZ/SVT/MAZ), + Pegasus Mail, Division office admin docs, and internal Division email from + June 1993 (via `division.demon.co.uk`, discussing SIGGRAPH datasheets). + The `dave@division.com` appearing in that email is a different, + coincidental Dave. +- **`PROBLEMS/FLICKER/`** — a minimal repro case for a rendering bug, with + the conclusion: *"The problem disappeared when the same geometry was built + without smoothing."* + +## The shipped games, in runnable form + +`BTLIVE/`, `BTRAVINE/`, `RPLIVE/`, and `RPDAVE/` are complete, runnable game +installs — including the compiled executables this repository lacks: +`NETNUB.EXE`, `BTL4TOOL.EXE`, `BTL4OPT.EXE`, `MECHBLD.EXE`, the 32-bit DOS +runtime (`32RTM`/`DOS4GW`), and HMI audio drivers, alongside all resources. + +`BTRAVINE/` is late-era work on the Ravine arena (present in this repo as the +`RAV`/`RAV1` environments), and its build log names the mech roster being +compiled — Avatar, Black Hawk, Loki — confirming that this repo's `BT` vs +`BT3025` content split is a Clan-era vs 3025-era roster split. + +## Unreleased projects + +The most historically significant material on the drive: + +### Star Trek prototype (`STDAVE/`) +A working Division scene (`TREK.SCN`) running on the Tesla renderer: layered +starfield splines, an **Enterprise-D model** (`EPRISED.VGF`), and **Klingon +ship models and textures** (`KLNGN*.VGF`, `KLNG1–6.TGA`). A VWE Star Trek pod +experience that never shipped. + +### Hull Pressure (`HPDAVE/`, August 1995) +A **submarine game** prototype: sharks, submarines, Atlantis geometry, fish +schools, and sea-movement splines, preserved both loose and in `HPDAVE.ZIP`. + +### Renegade Legion (`RL/`) +Models for a pod adaptation of **FASA's Renegade Legion** space-combat +property (a natural companion license to BattleTech): the Cheetah, Penetrator, +Spiculum, and Cingulum ship classes, plus space stations, shield generators, +and cargo/medic/gunboat transports. + +### Starship Troopers → DisneyQuest "Invasion!" (`TEMP/STARSH~1.DOC`, January 1997) +A complete design document for a 4-player location-based **Starship Troopers** +attraction, written by **FASA Interactive** for **WDI (Walt Disney +Imagineering)** — "Optics system and IG are as specified by WDI." Players are +colonists driving a 4-legged converted mining crawler (one driver with a +force-feedback yoke, three gunners with force-feedback joysticks, hull +electrification device) into a bug nest to kill the brain bug, escorted by +computer-controlled power-armored troopers. This pitch evolved — with the +licensed bugs replaced by original aliens — into **"Invasion! An +ExtraTERRORestrial Alien Encounter" at DisneyQuest**, which kept the same +driver-plus-three-gunners walker-vehicle design. + +### Early Division demos (August 1994) +Batch files at the drive root fly Division demo scenes — `RAPTOR`, `THOR`, +`ROCKY`, `MULES`, an F-15, a jeep-tank — using Division's `FLYK.EXE` scene +flyer. These predate the Tesla games' completion and show the DPL evaluation +period. + +## Can the games be rebuilt from this repository? + +Short answer: **not as it stands.** Cross-referencing the makefiles against +the surviving sources: + +- **BattleTech:** 33 of the 49 objects `BT.MAK`/`BTL4.MAK` build have **no + source file** in the tree — including the core of the game: `MECH.CPP` + through `MECH4.CPP`, `MECHSUB`, `MECHDMG`, `DMGTABLE`, `BTPLAYER`, `HUD`, + `TORSO`, `GYRO`, `MYOMERS`, `SENSOR`, and nearly the whole BT_L4 pod app + layer. Only the weapons (PPC, Gauss, missiles), teams, missions, and + console survive. +- **Red Planet:** 22 of 29 objects are missing sources — including `VTV.CPP` + (the player vehicle), `RPPLAYER`, `WEAPSYS`, all pickups, and the RPL4 app + layer. +- For every missing module the **header** survives, but not the + implementation. No compiled `.obj` substitutes exist anywhere (repo or + drive), and the drive's ZIP archives contain no source. +- Also missing: `make.cfg` (included by every makefile) and the makefiles + for the MUNGA/MUNGA_L4 libraries themselves — both reconstructable from + the surviving `OPT.MAK`/`D0`–`D3S.MAK` configuration makefiles. + +What **could** plausibly be rebuilt: the **MUNGA engine library** (the RP +tree's copy is complete — 351 files, all sources present, with compiled +objects in `RP/MUNGA/opt/` to verify against), MUNGA_L4, and NetNub. All +third-party dependencies are present as binaries (`LIBDPL.LIB`, +`WATTCPLG.LIB`, SOS libraries, `C0X32.OBJ`). The toolchain (Borland C++ 5.0 ++ TASM32) is not included but is obtainable, and builds would run under +DOSBox or a VM. A rebuilt game would still need Division VPX hardware (or a +shim for the `VREND*.BTL` renderer module interface) to display anything. + +This release tree appears to be a deliberately partial cut; the full source +lived on the `\\vgl_code` server and in PVCS. The realistic preservation +paths are: + +1. **Find more media** — anything from the `vgl_code` server, PVCS archive + directories, or other developers' drives. +2. **Preserve the compiled builds** — `BTLIVE/`/`RPLIVE/` on the Glaze drive + are complete installs and need no compilation. +3. **Reimplement the missing modules** against the surviving headers — every + interface is documented, but this is a rewrite project, not a build. diff --git a/README.md b/README.md index 0963e6f..61a36a4 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,14 @@ two games that ran on the **Tesla**-generation simulator cockpits built by This repository is an archival snapshot. The tree is preserved byte-for-byte as found (see `.gitattributes` — no line-ending conversion is applied). +See [HISTORY.md](HISTORY.md) for findings from a recovered VWE developer hard +drive that accompanies this tree (excluded from the repo), including Division +renderer source, runnable game builds, unreleased prototypes (Star Trek, +Hull Pressure, Renegade Legion, and the Starship Troopers pitch that became +DisneyQuest's "Invasion!"), and an analysis of whether these games can be +rebuilt from the sources in this repository (summary: the engine can, the +games cannot — most game-logic sources are absent from this cut). + ## Target hardware Each Tesla cockpit was driven by a server-class **Pentium Pro** machine running