Port BitGrid__BlitSpriteRect (0x4F6910) — the core sprite/bitmap
blitting function used for both rendering and collision mask
construction. Hooked via MinHook with fallthrough to original for
unsupported modes.
Sprite blit module (sprite_blit.rs):
- Direct copy (mode 0) and color-table/transparency (mode 1)
- 8 orientation modes (mirror X/Y/XY, 90° rotations)
- Destination clip rect support
- GIF test image loader with transparent index normalization
18 snapshot tests captured from WA's native function verify
pixel-perfect output. All 15 headless replay tests pass (simulation
checksums match), confirming correctness for collision masks.
Also ports DDDisplay::is_sprite_loaded (slot 32) and
DDDisplay::draw_via_callback (slot 21), bringing ported DDDisplay
methods to 13 of 38. Splits DisplayBase _buf_008 into named
sprite_array_0/1/2 fields.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>