Commit History

  1. refactor: port IMG_Decode and rename GfxResource to IMG⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    d7eb276

  1. refactor: port GfxDir resource loading system to Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    3f42fbe
  2. refactor: typed vtables, port PaletteContext__Init and GameStateStream__Init⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    4902606
  3. refactor: replace raw pointer arithmetic with typed field access in game_state_init⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    314b694
  4. fix: suppress loading dialog and focus stealing in headless mode⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    cbcd5f7
  5. fix: eliminate replay test flakiness under high concurrency⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    dae59f3

  1. refactor: propagate types and named fields in game_state_init⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    afaf5de
  2. feat: port DDGame__InitGameState (0x526500) to Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    d439705
  3. fix: detect match completion for Surrender-ending replays in headful tests⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    56e9d3b
  4. refactor: migrate all render queue commands to typed RenderMessage enum⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    12a0785
  5. refactor: propagate types and trim comments in render hook shims⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    89a37f4
  6. refactor: split render.rs, move game logic to core, type command structs⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    c75775a
  7. fix: correct stale comment on PALETTE_X4 orientation mapping⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    382f027
  8. refactor: introduce SpriteOp/SpriteFlags, rename SpriteId to KnownSpriteId⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    07389f9
  9. feat: introduce RenderMessage enum for typed render queue commands⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    6be3052

  1. feat: port RenderDrawingQueue dispatcher to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    c8f62aa
  2. refactor: type set_active_layer return + propagate PaletteContext⁠

    4a4cdc9
  3. refactor: propagate type info through display vtable.rs and friends⁠

    1b3fdc4
  4. chore: trap WA-side originals of ported DisplayGfx::Destructor⁠

    54f9e4d
  5. feat: port DisplayGfx::Destructor (slot 0) to pure Rust⁠

    c2c2c15
  6. feat: define FramePostProcessHook abstract class + ScreenshotHook vtable⁠

    f9aa4a2
  7. refactor: fix DDGameWrapper size to 0x6F10 and remove WABox⁠

    paavohtl +1: Claude Sonnet 4.6
    902aa11
  8. refactor: replace untested SpriteBank slot-33 port with panic, trap leaves⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    fb071dd
  9. feat: port DisplayGfx::GetSpriteFrameForBlit (slot 33) to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    802630e
  10. refactor: type FrameCache + Sprite/SpriteBank subframe-cache layouts⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    5c447e4
  11. feat: port slot 19 bitmap-sprite path to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    04b2ceb
  12. refactor: introduce Layer newtype, type layer_contexts and palette_ctx⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    bdfa78f
  13. refactor: extract font module, type GfxDir pointers, rename DisplayVtable⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    4f85ac3

  1. feat: port DisplayGfx::DrawTiledBitmap (slot 11) to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    48dff37
  2. feat: port DisplayGfx::DrawTextOnBitmap (slot 7) to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    f360a51
  3. feat: port DisplayGfx::SetFontPalette (slot 36) to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    b6987a4
  4. refactor: rename mis-labeled DisplayGfx slot 33 to GetSpriteFrameForBlit⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    c38e471
  5. feat: port DisplayGfx::{GetFontInfo,GetFontMetric,SetFontParam} to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    3bfaac0
  6. refactor: rename mislabeled tile-bitmap queue command and slot 11⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    29a9a26
  7. chore: trap DisplayGfx::LoadSpriteEx (slot 30) as confirmed-dead⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    fcb7fd1
  8. feat: port DisplayGfx::LoadFontExtension (slot 35) to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    e279e4d
  9. feat: port DisplayGfx::LoadFont (slot 34) to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    7f3ff37

  1. feat: port LoadSpriteByLayer (slot 37) and LoadSpriteByName to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    30d0cba
  2. feat: port DisplayGfx::LoadSprite (slot 31) and improve Sprite struct⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    43b6a0b

  1. feat: port DisplayGfx font vtable methods (slots 7-10, 36) to Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    3fc929d
  2. refactor: update openwa-dll for render module reorganization and merge hook files⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    dad7427

  1. feat: port non-8bpp blit and introduce PixelGridMut for sound FFI⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    189f2a5
  2. feat: port DisplayGfx slot 22 (draw_tiled_terrain)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    48206bf
  3. refactor: use typed pointers throughout DisplayBase and sprite cache⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    26f89c2
  4. feat: port DisplayGfx slots 4 (set_layer_color) and 6 (get_sprite_info)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    693004d

  1. refactor: eliminate DDDisplay, make DisplayBase generic, rename DDDisplayWrapper⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    88857ea
  2. fix: add 0x0F (two-byte opcode prefix) to valid prologue bytes⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    82dbe41
  3. feat: port bitmap sprite path β€” slot 19 has no fallthrough⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    49715a4
  4. feat: port DDDisplay slots 5, 23, 24 β€” layer management and palette update⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    5c0eb9d
  5. feat: port stippled and tiled blit β€” remove fallthrough in slots 19/20⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    8a23377