# Original exposure input publication The bounded offline chain is `3526320 -> 3523480 -> AnalyseLuminance_{Auto,Manual}Exposure`. `3525E70` is the separate optional blur/downsample stage, not the manual exposure shader. This evidence uses the pinned `6891f70a…` image; it adds no Native RVA, game call, process read or production rendering change. `351F8E0` stores a 64-bit value at owner+FC and another at owner+11C. Their upper halves establish **Manual EV0 at owner+100 and exposure mode0 at owner+120**. The low halves are different neighboring fields; reading their .5/1 values as EV or mode would be incorrect. Before rendering, `3526320` explicitly copies owner+100 to shadow+6FC and owner+120 to shadow+6C8. The shadow constructor's provisional mode2 therefore does not establish the final mode. `3523480` publishes these five actual compute inputs: | Input | Producer | Original initial store | Override disabled | |---|---|---:|---:| | Manual EV | shadow+6FC, from owner+100 | 0 | Same per-view EV | | Toe modifier | global5E8B918 | float bits3F80A3D7, about1.005 | 1 | | Shoulder modifier | global5E8B910 | float bits40133333, about2.3 | 1 | | Curve offset | global5E8B908 | 5 | 0 | | Curve slope | global5E8B914 | 1 | 1 | The curve branch uses byte global5E8B997, whose PE initial store is **1**. Its zero branch supplies the separate `1,1,0,1` values using readonly float1 at4DE165C. Thus neither the zero-branch constants nor the earlier deliberately synthetic probe controls `(EV0,Toe1,Shoulder2,Offset0,Slope1)` are the original initial enabled curve. Mutable initial `.data` stores prove the initial values, **not their current values after settings/debug changes**. Original compiled reflection places these inputs at cb0[6].xyzw and cb0[7].x. The independent reflection data offsets are112,116,120,124,128, with GPU constant data starting at16. The original publisher writes bytes96,100,104,108,112 of the mapped constant buffer, agreeing with the shader registers. The embedded original effect has exactly two named passes: index0 `AnalyseLuminance_AutoExposure`, index1 `AnalyseLuminance_ManualExposure`. At3525DCB the actual code tests the copied mode and passes `mode==0` in R8D to4F8D70; mode0 therefore selects the named manual pass. Dispatch has further gates. `3526320` requires `(global5E8B994 && owner+D0<2) || mode!=0`, owner+E0 enabled, the render-context+1DA8 gate and its per-view work condition. `3523480` also skips compute when global5FC8392 is enabled. A constructor default or static flag alone does not prove that a manual computation occurred. The existing successfully bound six-texel zero fallback remains a different source state from a completed manual or automatic computation. For the tool's current view, the implemented contract is its explicit default Manual/EV0 exposure source plus these original control values. `GalaxyExposureGraphics.cs` creates the original six-texel R32_FLOAT zero resource, validates and executes the actual original ManualExposure DXBC, and records `Uninitialized`, `DefaultCreated` or `ManualComputed`. Identical manual controls reuse the completed result; no repeated idle dispatch is needed. Automatic exposure must analyze that tool view's HDR scene. Reading the running game's other camera histogram would provide the wrong scene. Current game producer-ready/runtime overrides and complete automatic histogram controls remain unresolved; no game runtime histogram is claimed here. `Trace-GalaxyExposureControls.py` reproduces this bounded proof without a Ghidra rerun or full compatibility validator. It validates the four original function bodies, exact constructor stores and per-render copies, constant values, uniform reflection and actual pass names/selection. Output is `power-outer-sources/focus-ring/exposure-controls.json`. The next rendering slice adds `GalaxyOriginalExposure.InitialManualControls`, preserving the exact PE bits. The actual original CS produces texel0=1 and texel1=4.306218 for these controls, so type2 emissive rescaling is approximately0.53827727. `GalaxyExposureProbe` compares this original-control case plus five synthetic cases against the translated HLSL: maximum GPU difference0, CPU-reference difference4.77e-7. `GalaxyPowerActivityRingProbe` additionally source-links both production partials, verifies the actual six R32 zero texels, executes the packaged original CS, reads back its output, and draws nonzero range-ring pixels by binding this owned texture at t20. It verifies duplicate-control dispatch suppression, invalid explicit inputs and disposal. The old explicit scalar probe remains compatible. These controlled GPU checks do not establish a complete game exposure pipeline or final application visual parity.