-
Notifications
You must be signed in to change notification settings - Fork 0
Captive DOSBox X Startup
This is the repeatable procedure for testing Captive with the player's original DOS files. It deliberately runs the authentic CAPTIVE.BAT 1 chain. Do not launch CAPPO.EXE directly.
From the OpenCaptive repository:
tools/run_captive_dosbox_x.sh /path/to/original/captive
The directory must contain the original CAPTIVE.BAT and its accompanying files. OpenCaptive must not create replacement planets, routes, landing points, droids or dungeon data when those files are missing.
In DOSBox-X:
- Choose 1 for VGA.
- Click inside the game viewport so it owns keyboard and mouse focus.
- Let the original intro finish.
- Use Ctrl+F10 only to release or recapture the DOSBox-X mouse.
If an old DOSBox-X quit warning remains above the game, dismiss it before sending game keys. A warning window captures the keyboard and makes the game look frozen.
| Control | Original action |
|---|---|
| Keypad 7 | ORBIT; begin travel to the selected planet |
| Keypad 9 | LAND; valid only after arrival in orbit |
| Keypad 8 / 2 | Move forward / backward |
| Keypad 4 / 6 | Turn left / right |
| Keypad 1 / 3 | Original space-navigation zoom controls |
| On-screen arrows | Same original navigation actions |
The blinking green point identifies the destination planet. After arrival, the white circle identifies the landing point. FLIGHT PATH SET only confirms that the route was selected; it does not prove arrival. Wait for the original in-orbit state before pressing LAND. If the landed view contains only water, the selected point was wrong.
The current real-data DOSBox-X gate proves:
original intro -> Mission 0001 holomap -> target selection -> FLIGHT PATH SET
It does not yet claim:
ARRIVED AT DESTINATION -> NOW IN ORBIT -> LANDING SUCCESSFUL -> dungeon view
Those states require changed original runtime memory and matching original VGA output. Static reference images, generated maps and direct memory writes are not accepted as proof.
tools/verify_captive_navigation.sh /path/to/original/captive build
tools/verify_captive_target_route.sh /path/to/original/captive build
Direct debugger queue injection is not used as parity evidence: it is not
equivalent to a real keyboard event.
The diagnostics use original emulator data and are not the normal interactive launch path. A debugger session must be closed before starting a fresh manual test.