Commit History

  1. fix: pass display layer context to arrow sprite loading⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    cb094bb
  2. fix: replace all inline asm push+call with naked bridges⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    934d6af
  3. fix: correct SpriteRegion params from hook data + pass gfx_resource⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    5724790
  4. fix: PCLandscape param 4 is display, not wrapper⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    f2fe683
  5. fix: set g_GameSession loading flag during construction⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    b1c961f
  6. debug: heap-allocate PCLandscape output buffers, add toggle⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    29e5d17
  7. debug: fix PCLandscape param order, defer sound_available, add logging⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    dfe2f8e
  8. fix: correct display vtable call param counts — root cause of crash⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    93f1a62
  9. fix: set DDGame params before exposing via wrapper, restore full ctor⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    57a95a3
  10. debug: isolate crash to InitGameState accessing uninitialized fields⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    46b6be9
  11. debug: add milestone logging, identify LoadWeaponSprites message pump⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    5b74587
  12. fix: correct usercall conventions for all DDGame sub-functions⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    7c53fdb
  13. fix: correct GfxHandler vtable (0x66B280 not 0x664308), fix display read⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    7b04333
  14. feat: complete remaining DDGame constructor sections⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    b8f3061
  15. feat: add shadow DDGame field comparison for incremental testing⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    50cce26
  16. fix: revert to original DDGame constructor, fix GfxHandler__LoadDir⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    8c52b4b
  17. feat: wire create_ddgame() into game_session, trap original⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    2e91cbf
  18. feat: add arrow sprites, DisplayGfx, CoordList, weapon sprites⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    ac31270
  19. feat: create_ddgame() with bridges for first 60% of constructor⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    9a6b43f
  20. feat: replace DDGame__Constructor with Rust create_ddgame()⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    49ff7ed
  21. docs: add DDGame constructor implementation plan⁠

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

  1. docs: add DDGame constructor port design spec⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    d2350ac
  2. chore: re-enable scheme hooks after engine speed fix⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    a356f52
  3. refactor: use own EXTENDED_OPTIONS_DEFAULTS constant instead of ROM⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    c817312
  4. chore: remove unused EXTENDED_OPTIONS_DEFAULTS import from scheme hooks⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    060f2de
  5. fix: correct EXTENDED_OPTIONS_DEFAULTS and read from ROM at runtime⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    b8e4ca1
  6. feat: add CTaskCrate struct, raw field debug UI, new task fields⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    2835c9a
  7. refactor: call DSSound play functions directly instead of via vtable⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    6cbc730
  8. refactor: add typed fields for sound dispatch, remove pointer arithmetic⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    3f54e7c
  9. feat: convert sound dispatch helpers and fix ActiveSoundEntry fields⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    cbd02f2
  10. chore: remove debug logging from DSSound, fix unused import⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    8c437b9
  11. fix: correct play_sound param order and descriptor state⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    08bd011
  12. feat: replace DSSound slots 3, 4 (play_sound, play_sound_pooled) — 24/24⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    f25f79c
  13. feat: replace DSSound slot 0 (destructor) with Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    b7c455f
  14. feat: replace DSSound slots 2, 5 (set_volume_params, set_pan)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    06e639d
  15. feat: replace DSSound slot 5 (set_pan) with Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    b28d619
  16. feat: replace DSSound slots 7, 8 (set_master_volume, set_channel_volume)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    2516121
  17. fix: correct slot 9 return value, enable slots 1, 9, 10, 11⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    886847c
  18. fix: SpeechSlotTable off-by-one, add DSSound channel dump hotkey⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    5ce5ac6
  19. fix: correct SpeechSlotTable off-by-one, add sub_destructor (slot 14)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    cf29bed
  20. feat: replace DSSound vtable slots 1, 11, 14 (update_channels, release_finished, sub_destructor)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    e84dbd5
  21. feat: replace DSSound vtable slots 9 (is_channel_playing) and 10 (stop_channel)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    0976585
  22. feat: pure Rust DDGameWrapper__LoadSpeechWAV, typed struct fields⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    085ae61
  23. chore: update Cargo.lock for hound and windows crate additions⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    8d85984
  24. fix: invert load_wav return values to match original (1=success, 0=fail)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    610bc8a
  25. fix: correct off-by-one in DSSound slot indexing⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    f354a25
  26. refactor: move log_line to openwa-core for shared logging⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    ff1ae87
  27. feat: replace 12/24 DSSound vtable slots with Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    0bcdcfa
  28. feat: define DSSoundVtable (24 slots) and patch is_slot_loaded to Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    e2abf8d
  29. feat: pure Rust DSSound::new() and typed COM init via windows crate⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    32368d0