# 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."* ## Cockpit display hardware — the VDB (VWE video splitter board) Each cockpit drives **seven displays**. The **main** out-the-window view comes straight off the Division VPX card's VGA output. The other six — **five monochrome + one color** instrument/secondary displays — are fanned out by a VWE-designed ISA card, the **VDB (Video Distribution Board)**, also called the **"LBE4 video splitter board"** in the driver source. The VDB taps the PC's basic (Cirrus Logic) VGA output off the **feature connector** via ribbon cable and divides that single 640×480×16 framebuffer to the six monitors by dividing the pixel clock. The driver (`CODE/RP/MUNGA_L4/L4SVGA16.ASM` and `L4VB16.CPP`, class `SVGA16`) shows its ISA register map, credited in a source comment to **"Adam's port decoder design"** — **Adam G.**, a VWE hardware engineer: - `0x300 / 0x308 / 0x310` — three palette register groups (VGA-DAC-style: write-address / data / pixel-mask / read-address), one per display group so the mono and color displays get their own color maps. - `0x31A` — write enables the splitter's high-color clock divider (`VWE_HC_ON`); `0x319` — write disables it (`VWE_HC_OFF`). The board is **write-only** — the game never reads it; it loads palettes and flips the clock divider on with a single `out`, then renders the combined framebuffer normally and the VDB splits it passively in hardware. An emulated VDB device (I/O 0x300–0x31A) in the DOSBox-X fork records the palette contents and clock state so this six-display encoding can be decoded later; see `emulator/` and `emulator/RIO-NOTES.md`. ## 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. These scenes have been restored and can be viewed in a browser — see [restoration/](restoration/). ### 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.