Floppy resources compared with the reference CD
The comparison browser shows every floppy resource whose decoded bytes are absent from the September 1994 CD, with original downloads, CD counterparts and readable differences. The complete entry inventory accounts for every resource, including shared content. Comparison data retains the source hashes and correspondence evidence.
Both retained floppy installations contain 3,460 identical decoded archive entries, totalling 23,421,008 bytes. The archived installation has patched executables, but its DID.DAT differs from the clean floppy archive only in two trailer bytes. Those bytes belong to the install-time hardware fingerprint; the preceding archive body is copied from prebuilt disk data, not regenerated. See archive assembly and the original launcher check. It supplies no additional archive resources.
3,376 floppy entries have byte-identical decoded content somewhere in the CD archive. The remaining 84 entries, totalling 154,591 bytes, have been extracted under extracted/floppy_1993_11_loose/resources/. Of these, 69 have identified changed or renamed CD counterparts; 15 are waypoint authoring sources without an identified CD source counterpart.
| Extracted family | Entries | What differs |
|---|---|---|
| Mission scripts | 27 | Flak coverage, messages, aircraft selection and target coordinates |
| Compiled actor/waypoint programs | 11 | Actor placement, flight routes, attacks and additional surface units |
| Waypoint source files | 25 | 11 earlier versions of retained sources; 14 additional source files |
| Presentation programs | 9 | Floppy game flow and counterparts of the eight CD presentation programs |
| Other text | 11 | Two scenery authoring tables, eight translated mission-map fragments and one unnamed waypoint source |
| Scenery definition | 1 | One parameter-stream word in ss/test.ssd |
There are no floppy-only model, bitmap, animation, palette, sprite, texture or music payloads in these archives: their decoded content is already present on CD. The 15 missing source resources likewise do not establish 15 missing playable missions. The compiled versions of all 14 named route sources remain on CD; the unnamed source contains briefing text also retained on CD.
Waypoint authoring material absent from CD
All 14 named source files have byte-identical compiled counterparts in the CD archive. Their comparison-browser entries link to those programs in the existing route viewer.
| Floppy candidate filename | Contents |
|---|---|
waytxt/mis_101.way |
Yugoslavia aircraft route and three combat air patrol groups |
waytxt/mis_102.way |
Yugoslavia raid and two patrol groups |
waytxt/mis_103.way |
Nine routes, including F-22 raids, patrols and an F-117 raid |
waytxt/mis_104.way |
Ten routes, including Eurofighter attacks and multiple patrols |
waytxt/mis_201.way |
Fourteen routes with MiGs, allied strike aircraft and AWACS |
waytxt/mis_202.way |
Eleven routes, including strike groups, a refueller and AWACS |
waytxt/mis_203.way |
Fourteen routes, including F-117 strikes and defensive groups |
waytxt/mis_204.way |
Thirteen routes; another strike/patrol arrangement |
waytxt/mis_501.way |
Single Libya F-16 patrol |
waytxt/miss1111.way |
Mixed aircraft, refuellers, SAMs and fleets; player-route and briefing annotations |
waytxt/miss8888.way |
bom_test: radio announcements around bombing passes, GBU10/MK82/BLU109 drop instructions and a time-warp prompt |
waytxt/nev_8888.way |
Ship routes and a placeholder briefing: visiting granny, Kwik Save, the post office and taking everything back to granny |
waytxt/refuel.way |
Four aircraft patrol routes around the same Colombia area |
waytxt/timtest1.way |
A player point and a three-aircraft F-22 route |
The fifteenth source, identifier a3508451, remains under its identifier-based extraction path. It includes a Colombia map header and route, followed by the French OPERATION BRAS DROIT briefing describing support for bombers in Serbia. That briefing and its English waypoint annotations also occur in the CD's French mission 850 map text. The mismatched map/story context and unrecovered filename are retained without assigning it to a new campaign mission.
Numbered filenames and other hash matches remain candidates, not verified original filenames. Completing the mis_101/mis_102/mis_501 series recovered three names not directly mentioned in retained text. The compiled counterparts are identified independently with each archive's filename hash and native actor-record format.
Mission and route revisions
The 27 changed mission scripts are 501, 502, 505, 507, 513, 517, 804, 821, 822, 825, 830, 902, 923, 924, 926, 927, 928, 929, 930, 943, 946, 947, 961, 962, 970, 982 and 983. The browser provides the complete differences; examples include:
- The CD adds or moves flak areas in numerous missions, including 502, 505, 804 and several Tour of Duty missions.
- Mission 830's third ground target moves from 134,64 to 133,64.
- Mission 513 changes the
planevalue from 3 to 2; mission 517 changes it from 3 to 1 and slightly moves the start position. - Missions 507, 822, 825, 982 and 983 gain radio messages. Mission 943 loses an instruction to withhold fire; mission 970's message loses the words identifying the contacts as hostile.
- Other changes include spelling, spacing and DOS end-of-file handling. A differing payload does not always imply differing mission rules.
Compiled route programs change in 501, 504, 505, 510, 822, 825, 842, 848, 901, 982 and 983. The corresponding 11 retained text sources change too. Decoded actor records expose these changes without interpreting unknown operands:
- Mission 501 lowers an aircraft's initial/commanded altitude from 8,000 to 6,000 and removes another aircraft group.
- Mission 504 expands an aircraft route. Mission 510 moves a group and raises its altitude from 4,500 to 15,000.
- Missions 505, 822, 825, 842, 848 and 983 gain a surface-unit record.
- Mission 901 changes the ground-attack instruction sequence; mission 982 moves a refueller and its route.
In french/, german/, italian/ and spanish/, the CD versions of miss825.way and miss848.way retain the translated briefing prose but remove trailing English waypoint annotation blocks. These eight files are text fragments, rather than the complete source/compiled route programs.
Presentation programs
The floppy launcher uses demo.par; the reference CD uses tfx.par. The floppy name does not mean that this is a limited demonstration: it contains the main game/campaign flow. Its presentation references use the unprefixed filenames below.
| Floppy | Reference CD | Comparison of decoded presentation instructions |
|---|---|---|
intro.par |
cdintro.par |
Same instructions and artwork |
fwsintro.par |
cdfwsint.par |
Same instructions and artwork |
yugmid1.par |
cdyugmid.par |
Same instructions and artwork |
busted1.par |
cdbusted.par |
CD appends the three prison stills |
death1.par |
cddeath1.par |
CD adds the UN exterior animation |
colintro.par |
cdcolint.par |
Text and presentation-setting revisions |
somintro.par |
cdsomint.par |
Text and presentation-setting revisions |
yugintro.par |
cdyugint.par |
CD adds a still and revises text, layout and timing |
All nine binary programs are preserved, including the three whose decoded comparison views are unchanged. Saved parser graphs contain pointer/padding/editor bytes, so binary inequality alone does not establish extra scenes. The readable comparison omits those bookkeeping bytes, retains opaque non-visual payloads and does not claim complete behavioural equivalence. Original bytes remain authoritative.
The existing presentation player continues to show the reference CD programs. The comparison browser displays the floppy programs' decoded instructions and text; common artwork remains available in the existing media browser. These are still 320×200, 256-colour presentations, not a separate high-resolution format.
Scenery authoring differences
The floppy ss/ssinfo.fn lists 919 model names; the CD appends F117 and F22, bringing its count to 921. The corresponding models are CD additions, rather than missing floppy shapes. ss/ssinfo.h gains three part-index enumeration declarations for the QQQEFA, QQF_117A and Q_22 model families.
In ss/test.ssd, one word in parameter 0's stream changes from 0x1200 to 0x0f00. The original and decoded programs are preserved; no flight-model or geometry change is inferred from that word alone.
Loose files and provenance
The sweep also checks all 19 loose files beneath TUNES, MISSIONS, WAYBIN and WAYTXT in the two installations:
- The six intro music files decode to the same resources already in both archives.
- The archived installation's loose
MISSIONS/MISS830.MISdecodes to the CD version, rather than the version in its floppy DID.DAT. That installation therefore mixes resource revisions outside its archive. - Nine unique loose payloads are absent from either archive. They are retained under the delta extraction's
loose/directory, with their original installation paths recorded. They include0.LIB,0.YUG,1.YUG, aWAYBIN/COLfile andUNCFILESmission-list bookkeeping. Their presence in a long-used installation does not prove they shipped with the floppy release. Identical emptyCOLpayloads already represented on CD are referenced instead.
Saved games, user configuration, GRAB_*.LBM screenshots, backups and executables remain in their original installations; they are not promoted into the shipped-resource comparison. Executable patch lineage is documented separately. The incomplete disk-1 image duplicates the loose set's DISKA.DAT; its distinct installer is retained as media, rather than counted as another full resource set.
Reproduction and verification
Run from the research root:
python3 tools/compare_floppy_resources.py
python3 tools/check_floppy_resources.py
The comparison decodes every DID entry from both floppy installations and the reference CD, checks the CD extraction against its archive, and uses SHA-256 plus byte equality to identify shared payloads across the complete archive. It resolves filename hashes using each archive's own directory/extension tables: .par and .dir exchange extension codes between floppy and CD, so raw identifiers alone are insufficient for pairing files. Known parser counterparts are paired through their game-flow references.
The delta manifest stores all 3,460 entry indices, offsets, stored/decoded hashes and content paths. Shared content paths point into the existing CD extraction; the other paths point to the 84 extracted floppy files. The second floppy resource set is checked independently before sharing this extraction. The checker reopens the source archives and verifies every manifest payload and loose-file extraction. Original media and installations are read-only inputs.