# Reference installation: file walkthrough

The normal-game reference is [installs/deluxe_dnk](../installs/deluxe_dnk/), Personal Companion retail 3.42. Other Worlds has its own reference at [installs/other_worlds_download](../installs/other_worlds_download/).

The initial first-run snapshot had **78 files**, totalling **1,085,643 bytes**, after its first run. Later playtesting has added/changed runtime state; the decoded current saves are in the [resource browser](resources/index.html). The original installer produced 73 files: first launch converted fourteen JPEGs to VGA files, moved resources into subdirectories and created five runtime files. All remaining original files are unchanged after accounting for those directory moves. The [file inventory](install-files.json) records the inspected paths, sizes, hashes, roles and changes from the original extraction.

## Programs and the launch sequence

| File | Role |
| --- | --- |
| `CORNCOB.BAT` | The intended entry point. Runs the menu, then alternates between the flight engine and returning menu. Passes up to nine command-line arguments through to the menu. |
| `MOAG.EXE` | Menu/front-end program: title launch, duty roster, training setup, theatre selection, pilot records, settings, music and preparation of the next flight. Its embedded version is 3.42. |
| `3.EXE` | The flight/on-foot simulation, software renderer, input, weapons, collisions and other real-time gameplay. Reads the prepared command/settings/world files and invokes the helpers below. |
| `CCTITLE.EXE` | Opening title/credits program, using bitmap artwork, animated sprite pieces, the two introductory story panels and `DESTINY3.ROL`. |
| `RIMG.EXE` | Draws the compressed `IMG/3D*.IMG` cockpit and help graphics into EGA video memory. It explicitly requires BIOS mode 10h. [Native helper capture](install-file-previews/rimg.png). |
| `TOWER.EXE` | Tower/intelligence screen helper. Reads `TOWERS.DAT` and references `STARTLOC.DAT`; handles the mission-information/start-location interface. |
| `ISCORE.EXE` | Score/report display helper. Reads shared `MOAG.CFG` state and contains pilot, current score, total score and high-score display labels. Presence of the helper does not prove every edition exposes every reporting option. |
| `SRATS.EXE` | Standalone starfield/effect animation, also requiring BIOS mode 10h. Invoked by the flight engine. It supplies the [experimental-aircraft ascent and Earth-saved ending](mission-rules.md#ending-experimental-aircraft-and-srats). [Native helper capture](install-file-previews/srats.png). |
| `SOADL.EXE` | Small AdLib sound-effect helper/driver, with `3.ADL` as its register-definition file. Separate from the larger music driver in `MOAGDATA`. |
| `JVCC.EXE` | First-run JPEG converter. Its own usage text says it converts 256-colour JFIF/JPEG files into VGA files suitable for 256PAINT. The manual credits the Independent JPEG Group. |

The batch flow is explicit:

```text
MOAG -_-       → menus and preparation
3 -s           → flight/gameplay
MOAG -_- -r    → return to menus and process the result
               → repeat
```

Exit status exactly 137 from the menu ends the batch loop. Other helper programs are launched from inside the executable code. This is a collection of cooperating DOS programs rather than one executable containing every screen.

Direct launches are possible with the appropriate arguments or graphics context; see the [verified commands and launch tests](direct-launches.md).

## Theatre definitions: DEF/

Each normal theatre has a binary world definition and readable tower/briefing text:

| Files | Contents |
| --- | --- |
| `MORNING.CCT`, `MORNING.TWR` | **Atkinsville (easy)**, the dawn theatre. The text includes Insult to Injury, Unlucky Ufo, Baka Bomb and Heart of +. |
| `WASTELND.CCT`, `WASTELND.TWR` | **Wasteland (medium)**, described as the devastated remains of Virginia. Mission text starts with Cuckoo's Nest. |
| `DUSK.CCT`, `DUSK.TWR` | **Dusk (medium)**, with missions requiring precise flying. First briefing: Thread of death. |
| `WHTSANDS.CCT`, `WHTSANDS.TWR` | **White Sands Testing Ground**, practice targets and the experimental aircraft/high-altitude assignment. |
| `DEFTOWER.TWR` | Short default/empty tower-description template. |

The `.CCT` files contain binary world/object state; their records are fully decoded in the [format notes](resource-formats.md). The `.TWR` files are ordinary text, including theatre descriptions, mission briefings and starting-coordinate directives such as `Sxyth ...`. These texts already expose quite a lot of the mission design without disassembling the engine.

## Cockpit and help graphics: IMG/

The eleven files are `3D.IMG`, `3D2.IMG` through `3D10.IMG`, and `3D13.IMG`.

They are compact run-length encoded screen masks used by `RIMG.EXE`, **not floppy images or 3D model files**. The helper expands repeated and literal byte runs into EGA video memory. Running it in a private mode-10h DOSBox session draws the cockpit, instruments and view-frame linework. `3D.IMG` is the cockpit instrument panel, including the diagonal line already present in the source. The numbered images are help pages, not other cockpits: takeoff, instruments, controls, warnings and on-foot play. See the [checked help-screen transcriptions](help-screens.md), including the earlier editions' longer wording and first-run welcome page.

## VGA artwork and palettes: VGA/

There are **26 image files and three palettes**. Most outcome/story illustrations began as JPEG files and were expanded by `JVCC.EXE` on first launch. Title pieces and sprites were supplied directly as VGA files. These are the game's 2D artwork, not its in-flight polygon models.

| Files | Use or identified subject |
| --- | --- |
| `TLOGOGR.VGA`, `BLOGOGR.VGA` | Two logo components referenced by the title program. |
| `HC6NEW.VGA`, `TCLOUD5S.VGA`, `FLASH.VGA`, `TNAMBC.VGA` | Additional title-sequence artwork and effect pieces; all are explicitly loaded by `CCTITLE.EXE`. |
| `SSFLAK1.VGA`, `SSFLAK2.VGA`, `SSFLAK3.VGA` | Three flak/AA sprite pieces used by the title animation. |
| `SKLA1.VGA` through `SKLA4.VGA` | Four KLA sprite pieces used by the title animation. |
| `CAR5CJ.VGA` | Introductory peaceful-1938 story panel. |
| `CAP1CJ.VGA` | Introductory alien-attack story panel. |
| `PCORS3A.VGA` | Safe return/landing at the airstrip. |
| `RV4A.VGA` | Rescue-squad pickup. |
| `CRSH2A.VGA` | Crash landing; different captions cover recoverable and unrecoverable aircraft. |
| `EXPL4A.VGA` | Fatal impact/explosion. |
| `FLYBY2.VGA` | Return after too many flybys and a poor landing. |
| `PRISBAR4.VGA` | Stockade outcome for destroying friendly forces. |
| `CORP2BS.VGA` | Dead-pilot illustration shared by falling, shell-fragment, KLA, crater and other fatal outcomes. |
| `TOILET2A.VGA` | Capture and a lifetime of cleaning alien toilets. |
| `S_DRUNK1.VGA`, `S_DRUNK2.VGA` | Drunken/missing-pilot artwork. `PICT.DAT` explicitly uses the second for being found in a local establishment without knowing where the aircraft went. |
| `SEARTHJ.VGA` | Saving Earth/victory illustration. |
| `SKY.PAL`, `GRADSKY.PAL`, `HC6.PAL` | Three 768-byte RGB palette tables associated with the title artwork. |

The subject mappings above mostly come directly from the image filenames and captions in `PICT.DAT` and `TPICT.DAT`. The four less descriptive title filenames are deliberately left with their confirmed title-program role rather than guessed visual subjects.

## Presentation, help and font data

| File | Contents |
| --- | --- |
| `PICT.DAT` | Readable outcome/presentation script, with 15 form-feed-separated entries. Specifies image filenames, numeric layout/style parameters and captions. Several outcomes share one illustration. |
| `TPICT.DAT` | Two opening story panels: peaceful August 1938, then the invasion and eleven years of resistance. Contains image references, text and placement/colour fields; these numbers are not caption timings. |
| `MOAG.INF` | Context-sensitive menu help and promotional pages. Uses form feeds and inline formatting/hotkey markup. It also retains sections labelled OLD/NEW SHAREWARE VERSION. |
| `MEDAL.FNC` | Sixteen custom text-mode glyph records, 17 bytes each: sixteen bitmap bytes plus a character code. Used for medals/insignia in the text interface. The loader checks that its size is a multiple of 17. |

## Music and sound data

| File | Contents |
| --- | --- |
| `DESTINY3.ROL` | AdLib Visual Composer music sequence explicitly referenced by the title program. |
| `RIDINGT.ROL`, `DREAMSO2.ROL` | Other AdLib music sequences. Both are listed in the menu playlist. |
| `ROLFILES.TXT` | Plain-text playlist containing `ridingt.rol` and `dreamso2.rol`. |
| `CCMUSIC.BNK` | AdLib instrument bank used to give the ROL note/event sequences their instrument sounds. |
| `3.ADL` | Twelve text blocks of hexadecimal AdLib register/value definitions for the sound-effect system, separated by `ff` lines. Playable auditions and native sound examples are described in [audio-rendering.md](audio-rendering.md). |
| `MOAGDATA` | Bundled AdLib music-driver code, obfuscated by XOR with `0xA5`. `MOAG.EXE` contains the decoding loop and temporary `DRVR.EXE` filename. Decoded data includes the `SOUND-DRIVER-AD-LIB` signature and Ad Lib Inc. driver V1.51 identification. It is not a general resource pack. |

The actual XOR instruction is at `MOAG.EXE` file offset `0x1b823`. The music file types are recognisable standard AdLib formats; the in-flight effects use their separate register-definition system.

## Configuration and generated state (initial snapshot)

These five files were created after the original extraction:

| File/directory | Purpose/current state |
| --- | --- |
| `3.CMD` | Menu-to-flight argument file. Currently contains `-w3`, `-l5`, `-m2`, `-n6` and `-iy{k`. These are game options, not shell commands. |
| `3D.CFG` | Flight-side configuration file. Empty in this inspected state. |
| `MOAG.CFG` | Binary shared/menu-session state; also read by the score helper. Currently 1,580 bytes. |
| `PILOT.HSC` | Persistent high-score tables. Currently 5,040 bytes and all zero. This is separate from the named-pilot record file `PILOT.SCR` seen in your old install. |
| `TOWERS.DAT` | Generated current briefing/intelligence text. Presently describes a training scenario with a flying saucer, missile/AAA/vehicle sites and fuel dumps. |
| `THT/` | Empty directory, ready for per-pilot saved theatre files. Later saved `.THT` files are now decoded in the map browser, including their embedded pilot/statistics record; see [state-formats.md](state-formats.md). |

The program also refers to transient files such as `3UNIV.DAT` and `STARTLOC.DAT`, and creates `PILOT.SCR` when needed for named-pilot state. They were absent in that snapshot; later `STARTLOC.DAT` and pilot/theatre saves have been inspected. The initial inventory is retained as a historical extraction record.

## Documentation and the boss screen

| File | Purpose |
| --- | --- |
| `CORNCOB.DOC` | Main manual: controls, flight, on-foot play, weapons, enemy types, progression and credits. Plain text despite the `.DOC` extension. |
| `ORDER.FRM` | Printable $20 Other Worlds Campaign order form, with hardware/game-preference questions. |
| `BOSS.TXT` | F1 boss-screen text: mostly blank lines followed by a fake `C:\>` prompt. The manual explicitly invites editing it. |

The manual also directly identifies the implementation as **assembler and C**, credits Kevin Stokes and additional programming by George Welch, names the **Spontaneous Assembly** library, and credits the Independent JPEG Group. Those are contemporary primary-source development clues rather than deductions from executable signatures.
