mirror of
https://github.com/Cesarus85/ringfall-mjolnir-vr.git
synced 2026-10-27 00:00:42 +01:00
compress_real_vector3d_to_int32 (544) and _clamp (512) are now written and measure size exact, relocations exact 38/38 address-for-address, 181/181 and 164/164 instructions, differing only by one transposition. NOT exact, no credit claimed. Recovered from January's bytes: 11/11/10-bit fields with 1023.5f/511.5f scales and 0x7ff/0x3ff masks; pack ((k << 11) | j) << 11 | i; a SELF-REFERENCING round-trip copy through one local (&v2 in, *result back into v2); the assert message goes through the global temporary with a format that is exactly 36 bytes including NUL, which is what pins 0x%x%x%x rather than a spaced form. The clamp twin folds PIN into the same multiply. Two spellings bracket the target: one local gives the correct sub esp,0x10 frame but an interleaved copy (10 insns off), while a separate decompressed local gives the correct grouped aliasing-safe copy but a 12-byte-too-large frame (2 bytes off). January needs both. The one-local form is landed because a frame-size mismatch is structural under the campaign's frame-layout law, so the byte-closer variant is the wrong reconstruction. Copy-schedule variants measured inert: named pointer, inner-scoped pointer, declaration order, and combinations. Naming the packed value regresses to 528 bytes. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>