M-29: aim sensitivity fix (BACKLOG B3 / SMALL-FIXES B4)

port/src/input.c: RMB manual-aim mouse sensitivity overshot badly at the
old MouseAimSpeed=50 default (25 px/poll saturated the aim band, so a
flick ran GE's (stick-60)/10 curve at full rate for many polls). Lower
the default to 25 and expose the band itself as Input.AimBand (int 5..40,
default 20 -> unchanged behaviour at the new speed). Port-only, config-
backed, fully reversible via ge007.ini.

port/fast3d/gfx_pc.cpp: annotate the dead D74 texture-wrap block
(SMALL-FIXES B1). The in-place correction (G_TX_CLAMP test + per-texunit
index) activates never-run code and crashes -level_09 at boot; it needs
the hoist-out-of-vertex-loop rework + per-level visual verification, not
a one-liner. Left inert with a NOTE; no behaviour change.

Verified: build green (ntsc-final); -level_09 + -level_20 crash-free for
a full ~75s capture window on a settled machine (D153: earlier back-to-
back runs crashed under build/run thrash, not a regression).
This commit is contained in:
James Dansereau committed 2026-08-30 20:49:50 -04:00
1 parent 52ec6d837c
commit 609bb732b9
2 files changed
+12 -4

No files matched your search

+7
View File
@@ -1567,6 +1567,13 @@ static void gfx_sp_tri1(uint8_t vtx1_idx, uint8_t vtx2_idx, uint8_t vtx3_idx, bo
// sub-region of the image (uls/ult offset + lrs/lrt window); GL
// would wrap at the full uploaded image size instead. Pre-wrap per
// vertex (GE/PD triangles never span more than one tile period).
// NOTE (SMALL-FIXES B1, DEFERRED): this block's guard is dead
// (`& G_TX_WRAP` == `& 0`) and its indices are OOB (`[i]` is the
// vertex, arrays are per-texunit [2]). Correcting it to
// `(cms & G_TX_CLAMP) == 0` + `[t]` activates never-run code and
// crashed -level_09 at boot (0 frames) -- needs the hoist-out-of-
// -loop rework + per-level visual verification, not an in-place
// one-liner. Left inert for now.
{
const uint32_t tw = tex_width2[i];
const uint32_t th = tex_height2[i];