• v.0.9.0 9c2f71326a

    v.0.9.0 Stable

    kerem released this 2025-05-22 18:54:00 +03:00 | 863 commits to main since this release

    📅 Originally published on GitHub: Thu, 22 May 2025 16:06:31 GMT
    🏷️ Git tag created: Thu, 22 May 2025 15:54:00 GMT

    A brand new release just dropped in . As usual we have a lot of new features and bugfixes to this release making even more games reaching ingame and some of the are even playable :)

    I will let you figure out the rest , here is a short list of updates

    Core

    sceKernelAllocateDirectMemory hotfixes
    Export eboot address
    libkernel: Various filesystem fixes
    Only perform early read-write open when truncating is needed
    emulator: Fix log initialization order.
    Core: Fix module load addresses
    add scePthreadSetaffinity and emulate affinity
    Core: Memory Fixes
    libkernel: Implement sceKernelMemoryPoolBatch
    core: Introduce host call wrapper.
    kernel: Implement scePthreadGetaffinit
    Mprotect only over whole pages
    kernel: macos/linux Implement sceKernelUuidCreate
    Implement sceKernelIsStack
    Implement sceKernelMapDirectMemory2
    Proper error handling for MapMemory errors

    Libs

    Implement sceImeDialogGetPanelSize
    VideoOut event cleanup
    Implement sceKernelGetModuleInfo, sceKernelGetModuleInfoInternal, and sceKernelGetModuleList
    Update ime_dialog.h
    Implement sceKernelPwritev
    sceNet initial implementation
    SaveData fixes
    Clear stack before executing guest code
    [Libs] Stubs sceSigninDialog
    log error for videodec ,videodec2
    [Libs] sceNet
    sceKernelAddTimerEvent implementation
    equeue: Clean up timers implementation
    [Libs] Companion httpd
    SaveDataDialog: fix possible null access
    SaveData: respect install dir in param.sfo to select the game save folder
    Savedata: Fix missing uses of config based save data dir.
    Trophy deletehandle fix

    Shader recompiler

    Use GetSrc in VALU insts instead of assuming vector reg (was vcc_lo)
    lower_buffer_format_to_raw: Fix handling of format remapping
    shader_recompiler: Add lowering pass for when 64-bit float is unsupported.
    Implement IMAGE_ATOMIC_FMIN and IMAGE_ATOMIC_FMAX for 32bit floats
    shader_recompiler: Few fixes for buffer number conversions
    Implement SnormNz conversion
    shader_recompiler: Widen num_conversion bitfield
    Adding opcode IMAGE_SAMPLE_B_O
    shader_recompiler: Always mark buffers as storage buffers.
    Handle -1 as V_CMP_NE_U64 argument
    Avoid post-increment of SGPR in S_*_LOAD_DWORD
    Handle VgtStreamoutFlush EVENT
    shader_recompiler: Fix buffer type reading from step rate attribute.

    GPU

    renderer_vulkan: Restore Vulkan version to 1.3
    pp_pass: Use correct surface format.
    vk_rasterizer: Fix updating wrong color attachment when skipped by mask
    vk_presenter: Use correct format for output frame image and view
    vulkan: do not use VK_EXT_extended_dynamic_state
    vulkan: Handle incompatible depth format using null binding.
    gnm: Implement sceGnmDrawIndexIndirectMulti
    liverpool: Log more information on SetQueueReg.
    renderer_vulkan: Properly enable dualSrcBlend feature
    buffer_cache: Split updateBuffer calls into 65536 byte chunks.
    vk_instance: Enable robustImageAccess2
    fix: PM4CmdWaitRegMem memory address
    amdgpu: Handle 32-bit Unorm formats

    GUI

    multikey for kbm_gui
    qt: Delay physical device enumeration to settings open
    qt: Update save data dir open to use name from PSF

    Downloads