XEMU v0.8.1 is released. xemu is an open-source, cross-platform application that emulates the hardware of the original Xbox game console, allowing users to play their Xbox games on Windows, macOS, and Linux systems. This project is focused on making significant forward progress in terms of features, performance, stability, and user experience in Xbox emulation. This project is an active fork of the XQEMU project, which is based on the very popular and highly actively maintained QEMU full system emulator project.
XEMU Changelog:
* nv2a/psh: Handle 3D textures in BUMPENVMAP[_LUM] modes
* nv2a/gl: Use snake case for line width ranges
* nv2a/vk,gl: Fix a couple 64b shift/printing bugs
* nv2a/gl: Rebase line width feature
* meson: Replace hardcoded glslang include path with subproject query
* scripts/archive-source.sh: Archive subprojects
* meson: Add subprojects .gitignore
* meson: Pass VK_USE_PLATFORM_WIN32_KHR when building volk
* nv2a/vk: Fix missing display surface addr in debug marker
* meson: Move volk, SPIRV-Reflect to main meson.build
* meson: Convert VulkanMemoryAllocator submodule to a subproject
* meson: Convert SPIRV-Reflect submodule to a subproject
* meson: Convert volk submodule to a subproject
* scripts/gen-license.py: Support subprojects
* nv2a/vk: Use unsigned types for clear scissor calculation for now
* thirdparty: Bump VulkanMemoryAllocator version
* nv2a/vk: Drop unused vertex_buffer_inline field
* nv2a/vk: Copy remapped vert data after pre-draw
* meson: Bump glslang subproject version
* nv2a/vk: Load 16b float depth textures as unorm to match surface w/a
* nv2a/vk: VK_CHECK call to vkBindImageMemory
* nv2a/vk: Fix external memory handle type on Windows
* nv2a/vk,gl: Handle case where pline_offset == 0
* nv2a/vk: Report dirty if no pipeline is bound
* nv2a/vk: Move display GL compat after line_offset adjust
* nv2a/vk: Add regs control_{0,3}, setupraster to shader dirty test
* nv2a/vk: Move reg dirty clear into create_pipeline
* nv2a/vk: Drop pipeline merge stat
* nv2a/vk: Drop display update early-out
* nv2a/vk: Add command buffer region debug markers
* nv2a/gl: Fix bind_shaders dgroup
* nv2a/vk: Run full dirty texture check
* nv2a/vk: Process pending surface upload just in time for display
* ui: Add menubar backend selection
* nv2a/vk: Add missing math.h include
* nv2a/vk: Add pvideo support
* n2va/vk: Key textures on sampler state for now
* nv2a/vk: Fix create_pipeline debug marker inbalance
* nv2a/vk: Make pgraph_vk_insert_debug_marker format strings
* nv2a/vk: Clear in separate renderpass for now
* nv2a/vk: Ensure queries do not include clears
* nv2a/vk: Fix reports
* nv2a/vk: Fixup unaligned attribute data in inline buffer
* nv2a/vk: Always bind fragment shader in draw pipeline
* nv2a/vk: Only bind clear fragment shader on partial color clear
* nv2a/psh: Handle rect tex on project3d
* nv2a/psh: Drop rect_tex assertion
* nv2a/psh: Normalize coords at sample time
* nv2a: Normalize unnormalized texture coordinates in shader
* nv2a/glsl: Add swizzled attr check
* nv2a/vk: Fix clear scissor ymin
* nv2a/vk: Fix scissor overflow
* nv2a/vk: Fix mipmap filtering for _LOD0 min filters
* nv2a/vk: Flush/barrier on texture upload
* nv2a/vk: Minor cleanup
* nv2a/vk: Fix compute pipeline finalize
* nv2a/vk: Only clear stencil on images with stencil aspect
* nv2a/vk: Disable memory trimmer for now
* meson: Define some VMA debug options for convenience
* nv2a/vk: Make main buffers dedicated
* nv2a/vk: Include result code in device/instance creation error messages
* nv2a/vk: Add texture finalize checks
* nv2a/vk: Simplify zeta to texture, add barrier
* nv2a/vk: Don't release textures until after draw completes
* nv2a/vk: Fixup depth transition stages
* nv2a: Fix nv2a_dbg_renderdoc_init on Windows
* nv2a/vk: Always use staging image for surface upload
* nv2a/vk: Specify local_size_{y,z} = 1 in compute shader
* nv2a/vk: Specify set in compute shader layout
* nv2a/vk: Create surface if one not currently bound
* nv2a/vk: Relax invalid surface compat check
* nv2a/vk: Ensure clear rect never extends beyond surface
* nv2a/vk: Ensure pack buffer offsets meet minStorageBufferOffsetAlignment
* nv2a/vk: Ensure pg->clearing set before pgraph_vk_surface_update
* nv2a/vk: Only include uniform attr definition when necessary
* nv2a/glsl: Fix project2d usampler lookup
* nv2a/glsl: Ensure sampler type matches texture dimensionality
* nv2a/vk: Add compute pipeline cache, scale workgroups
* nv2a/vk: Fix missing scale in d32_sfloat_s8_uint pack
* nv2a/vk: Add vertex memory offset fixme
* nv2a/vk: Fix swapped texture filters
* nv2a/vk: Fix compute descriptor pool size
* nv2a/glsl: Initialize vars
* nv2a/vk: Omit pipeline fragment shader when no color binding
* nv2a/vk: Tighten renderpass dependencies
* nv2a/vk: Tighten a few layout transitions
* nv2a/vk: Clear render_passes on finalization
* nv2a/vk: Change display renderpass loadOp to don't care
* nv2a/vk: Enable synchronization validation
* nv2a/vk: Finish when queue is empty
* nv2a/vk: Add assert_on_validation_msg option
* nv2a/vk: Add debug_shaders option
* nv2a/vk: Target glslang to SPV 1.6
* nv2a/vk: Fix integer format border color
* nv2a/vk: Fix shadowmap readback in frag shader
* nv2a/vk: Download any dirty surfaces covering vertex buffers
* nv2a/vk: Move overlapping surface download logic to function
* nv2a/vk: Use additional descriptor sets in compute ops
* nv2a/vk: Add debug helper function for inserting markers
* n2va/vk: Assert instead of exit() on validation error
* nv2a/vk: Finalize more display state
* nv2a/vk: Finalize, simplify render passes
* nv2a/vk: Use correct min,mag texture filters
* nv2a/vk: Don't call vkCmdBindVertexBuffers if 0 bindings
* nv2a/vk: Ensure border color type matches format type
* nv2a/vk: Use textureLod in psh_append_shadowmap
* nv2a/vk: Drop fragment shader when only depth attachment is cleared
* nv2a/vk: Finalize clear shaders
* nv2a/vk: Fix renderer debug messenger registration
* nv2a/vk: Fix display dimensions
* nv2a/vk: Add barrier after compute to staging buffer copy
* nv2a/vk: Flush vertex ram buffer, insert barrier
* nv2a/vk: Insert barrier after staging buffer copies
* nv2a/vk: Fix finish queue submission semaphore wait stage
* nv2a/vk: Ensure error message is always set on instance failure
* nv2a/vk: Fallback to UBO if maxPushConstantsSize is insufficient
* meson: Fix VMA options
* nv2a: Block renderer finalization on display present
* nv2a: Handle renderer init errors more gracefully
* nv2a/gl: Rename some functions for clarity
* nv2a: Merge renderer init, init_thread methods
* nv2a: Add note about downloading dirty surfaces during flush
* nv2a: Support switching renderers at runtime
* nv2a/vk: Release report queue nodes at finalize
* nv2a/vk: Release renderer state at finalize
* nv2a/vk: Always provide early_context_init
* nv2a/vk: Sync RAM buffer during renderer init
* nv2a/vk: Ensure texture bindings exist before dirty check
* nv2a/gl: Make sure vulkan is not set on ShaderState
* nv2a/gl: Ensure shader_binding exists before dirty check
* nv2a/gl: Improve renderer teardown
* nv2a/vk: Fix snode->geometry init
* nv2a/vk: Clear bindings before tearing down cache
* nv2a/vk: Fix shader cache node init flag
* nv2a/vk: Fix GArray free
* n2va/vk: Drop debug message
* nv2a: Wrap nv2a_vm_state_change direct renderer calls
* nv2a: Wrap pfifo direct renderer calls
* meson: Move VMA options into meson config
* nv2a/vk: Remove extraneous VK_NO_PROTOTYPES defn
* meson: Vendor glslang
* scripts/gen-license.py: Fix version detect
* meson: Add -DVK_NO_PROTOTYPES compile args on volk
* debian/control: Drop vendored deps
* archive-source.sh: Fix path to nv2a_vsh_cpu
* nv2a: Add Vulkan renderer
* ci: Add package alias for old Windows release name
* ci: Strip Windows release executables
* ci: Add missing arch var to WindowsPdb job matrix
* ci: Bump Windows build container
* ui: Fix update org, add Windows arch tag to update
* ubuntu-win64-cross: Update glslang
* ubuntu-win64-cross: Update vulkan-headers
* ubuntu-win64-cross: Update spirv-tools
* ubuntu-win64-cross: Update spirv-headers
* ubuntu-win64-cross: Update sdl2
* ci: Add Windows arch tag to Release job
* ci: Bump Windows build container
* ci: Enable Windows aarch64 builds
* meson.build: Link with crypt32 on Windows for httplib
* configure: Don't use -no-pie flag with LLVM
* ui/xemu-net.c: Include qemu/sockets.h for inet_aton
* qemu-io-cmds.c: Implement clock_gettime for WIN32
* meson.build: Don't try to link pthreads on Windows
* qemu/compiler.h: Drop gcc_struct attribute in QEMU_PACKED
Download: XEMU v0.8.1
Source: Here
2025-01-01
Tags:
Console,
Official_Build,
XBox,
XEMU
Random Related Topic
0 Comments
Post a Comment