Gundam Wing: Endless Duel (SNES) Static Recompilation
Version: 1.0.0
Platform: Native 64-bit Windows 10 and Windows 11
Executable: Launcher.exe
ROM: Required externally; not included

Version 1.0.0 release summary
-----------------------------

- Initial production release of the Gundam Wing: Endless Duel SNES static
  recompilation and native Windows launcher.
- The supported Japan NTSC cartridge executes through ahead-of-time native
  S-CPU, S-SMP and S-DSP authority. No general-purpose SNES CPU or SPC700
  interpreter, runtime opcode decoder, JIT, dynamic recompiler, runtime
  learning system or emulator fallback is present.
- Graphics, audio, menus, fights and player actions are generated live from
  machine state and input; they are not prerecorded.
- The required unheadered ROM is 2,097,152 bytes with SHA-256
  dd94308d822636c6ddf73c5e2644c84f2eb8fb4d9201150fc5f37d44d6f423f1.

Static-core summary
-------------------

- The production S-CPU index routes 39,306 exact PBR:PC:E:M:X context records
  through 511 exact CPU-page groups and 303 ahead-of-time native templates.
- Exact-key frozen-parameter compaction factors 39,003 repeated instruction
  bodies while preserving every source-byte guard, diagnostic label, finite
  successor set, interrupt/return route and fail-closed path. It reduced the
  Visual Studio Release static library from 23,106,614 to 3,851,300 bytes and
  Launcher.exe from 9,935,360 to 5,646,336 bytes. Deterministic reconstruction
  and pre/post gameplay framebuffer, machine-state and PCM equivalence pass.
- The audio driver contains 1,663 exact-PC SPC700/S-SMP bodies in 16 shards
  and a project-owned scheduled 32-phase S-DSP implementation.
- The renderer implements the source-reached SNES PPU Modes 0 and 1 together
  with target-required backgrounds, objects, windows, color math, DMA/HDMA and
  raster timing.
- Unknown execution or hardware states fail closed and produce detailed
  diagnostics instead of selecting an emulator fallback.

Version 1.0.0 frontend features
--------------------------------

- Native Win32 launcher, menus, toolbar and keyboard-accessible dialogs.
- Portable Release build with the Visual C++ runtime and SDL3 statically
  linked; no separate SDL DLL is required.
- Windowed and full-screen presentation with optional integer scaling.
- Natural NTSC frame lock follows the static core's 21,477,270 / 357,366
  presentation ratio, approximately 60.0988 FPS, and is enabled by default.
- Optional live title-bar FPS display, disabled by default.
- F8 captures the game frame in windowed mode and the complete presented
  screen while full screen is active.
- Separate Player 1 and Player 2 keyboard or SDL3 gamepad selection and
  rebinding, with opposing-direction filtering and one input snapshot per
  emulated frame. The Controller Bindings window begins on the player selector,
  followed by the keyboard/gamepad method selector.
- Full Screen When Playing, Auto-Run, Pause on Focus Loss, integer scaling,
  FPS display, NTSC lock, current snapshot slot, first-run Welcome state,
  audio settings and both players' bindings persist in settings.ini.
- Escape switches between gameplay and the launcher without resetting the
  static machine.
- Welcome, About/error, Snapshot and Audio windows restore focus to the
  previous valid control after closing. The resizable Welcome layout is
  constrained to the monitor work area and supports Tab, Shift+Tab, Enter and
  Escape.
- Five full-machine snapshot slots include S-CPU, scheduler, DMA, PPU, both
  input ports, S-SMP, S-DSP, ARAM and rendered-frame state. Files are versioned,
  integrity checked and replaced atomically. Press 1 to save and 2 to load the
  selected slot; F2/F3 open the detailed Save/Load windows.
- The clean release includes Rom and Screenshots instruction folders. Captured
  images are written only when requested; Saves and Logs are created only when
  the application has corresponding data to write.
- Fail-closed errors produce a detailed text log in the Logs folder and a
  readable Close-button window.

Frontend audio
--------------

The static core executes the game's 1,663 exact-PC SPC700/S-SMP bodies and its
scheduled 32-phase S-DSP, producing native 32,000 Hz signed 16-bit stereo PCM.
The frontend does not substitute streamed music, captured audio, an emulator
APU or a host synthesizer.

Completed DSP batches enter a bounded frontend FIFO and a DirectSound circular
buffer. The selected output rate is 48,000 Hz by default, using Hermite
resampling. Audio Settings includes output enable/device, volume, optional
0-40 ms forced latency, output rate, Hermite/linear/nearest resampling, safety
buffer, bounded drift correction, tolerance, maximum rate adjustment, averaging,
integral correction, underrun recovery/threshold/realignment, clear-on-pause
and resume fade. Forced latency is disabled and set to 0 ms by default.

Version 1.0.0 validation
------------------------

- Clean Visual Studio 2022 x64 Release build and ROM-free CTest suite.
- Settings round-trip covers all General, Audio, Player 1 and Player 2 values,
  including invalid-value clamping and shortcut-conflict recovery.
- Static-core focused coverage for S-CPU, S-SMP, S-DSP, PPU Modes 0/1,
  DMA/HDMA, timing, input and snapshots.
- Live Story and Versus gameplay, two-player input, attacks, special-move
  paths, snapshots, screenshots and audio output exercised during development.
- Representative title, menu and fight screenshots compared in windowed and
  full-screen presentation during final testing.

Release package
---------------

The Windows package contains Launcher.exe, README.txt, VERSION.txt,
THIRD-PARTY-NOTICES.txt, SDL-LICENSE.txt and SNES9X-LICENSE.txt, plus Rom and
Screenshots instruction folders. It does not contain the game ROM, settings,
snapshots, captured screenshots, logs or development evidence.

Keyboard shortcuts
------------------

Escape  Play or pause; switch between the game and launcher
1       Save the current snapshot slot
2       Load the current snapshot slot
F1      Welcome and shortcut help
F2      Save Snapshot window
F3      Load Snapshot window
F4      Settings
F5      Controller Bindings
F6      Audio Settings
F7      Run the selected ROM
F8      Capture a screenshot
