Original Xbox Emulator for Windows, macOS, and Linux (Active Development)
Go to file
coldhex 0427ae8cfc mcpx: Implement APU multipass voice processing
Voice Processor (VP) multipass feature allows configuring lists of voices
that are first mixed (in order) into a designated mixbin which is then used
as a sample source when processing voices with multipass flag set to true
in NV_PAVS_VOICE_CFG_FMT. Setting correct voice order in lists is the
responsibility of the game/application and in practice is handled by the
DirectSound library. The multipass mixbin is hardcoded to 31 in
DirectSound, but hardware would allow other bins.

This implementation also adds additional info to audio debug UI to see what
the source and destination voices involved are. The info is only shown
when DSP processing is off, i.e. "VP Only" (MON_VP) is selected. This is
because storing the voice numbers requires additional digging which is
required for MON_VP anyway and therefore is free. The multipass feature
itself works fine with DSP (i.e. GP and EP) enabled, only the additional
debug info is not shown.
2025-02-15 15:01:29 -07:00
.github ci: Fix ubuntu artifact unpack 2025-02-04 18:08:08 -07:00
.gitlab/issue_templates .gitlab/issue_templates: Move suggestions into comments 2022-12-15 15:19:24 +01:00
.gitlab-ci.d .gitlab-ci.d/cirrus: Remove the wrong CPU and RAM settings from the macOS job 2024-11-27 09:23:52 +01:00
accel tcg: Reset free_temps before tcg_optimize 2025-01-06 23:07:47 -07:00
audio audio/pw: Report more accurate error when connecting to PipeWire fails 2024-10-14 17:35:24 +04:00
authz error: Drop superfluous #include "qapi/qmp/qerror.h" 2023-02-23 13:56:14 +01:00
backends core/machine: Make create_default_memdev machine a virtual method 2024-10-31 18:28:33 +01:00
block v9.2.0 release 2025-01-03 22:30:04 -07:00
bsd-user bsd-user: Set TaskState ts_tid for initial threads 2024-11-04 20:26:40 -07:00
chardev v9.2.0 release 2025-01-03 22:30:04 -07:00
common-user common-user/host/ppc: Implement safe-syscall.inc.S 2023-01-23 14:39:48 -10:00
configs i386: Disable some hardware unrelated to Xbox to trim the build 2025-01-07 18:26:26 -07:00
contrib contrib/plugins: remove Makefile for contrib/plugins 2024-11-05 09:13:51 +00:00
crypto crypto: perform runtime check for hash/hmac support in gcrypt 2024-11-05 18:37:18 +00:00
data xid: Add Xbox Controller S 2025-01-25 20:48:58 -07:00
debian debian: Add cmake to build deps 2025-01-01 23:55:16 -07:00
disas disas/riscv: enable disassembly for compressed sspush/sspopchk 2024-10-31 13:51:24 +10:00
docs docs: Document that hvf on Arm is supported 2024-11-27 09:17:15 +01:00
dump dump: make range overlap check more readable 2024-07-23 20:30:36 +02:00
ebpf ebpf: improve trace event coverage to all key operations 2024-10-28 14:37:25 +08:00
fpu target/s390x: Fix the floating-point multiply-and-add NaN rules 2024-11-18 10:54:42 +01:00
fsdev * pc: Add a description for the i8042 property 2024-10-04 19:28:37 +01:00
gdb-xml target/i386/gdbstub: Expose orig_ax 2024-10-13 10:05:51 -07:00
gdbstub license: Update deprecated SPDX tag LGPL-2.0+ to LGPL-2.0-or-later 2024-09-20 10:11:59 +03:00
host/include target/i386/hvf: fix handling of XSAVE-related CPUID bits 2024-10-31 18:28:32 +01:00
hw mcpx: Implement APU multipass voice processing 2025-02-15 15:01:29 -07:00
include mstring: Remove mstring_append_{int,char} 2025-01-07 00:52:51 -07:00
io qapi/crypto: Rename QCryptoHashAlgorithm to *Algo, and drop prefix 2024-09-10 14:02:16 +02:00
libdecnumber libdecnumber/dpd/decimal64: Fix compiler warning from Clang 15 2022-11-11 09:13:52 +01:00
licenses meson: Migrate cpp-httplib submodule to a subproject 2025-01-02 19:07:25 -07:00
linux-headers linux-headers: Update to Linux v6.12-rc5 2024-11-02 15:20:41 +08:00
linux-user linux-user: Fix strace output for s390x mmap() 2024-11-22 14:20:38 -06:00
migration v9.2.0 release 2025-01-03 22:30:04 -07:00
monitor block-backend: per-device throttling of BLOCK_IO_ERROR reports 2024-10-22 17:52:49 +02:00
nbd nbd-server: Silence server warnings on port probes 2024-11-18 09:06:17 -06:00
net v9.2.0 release 2025-01-03 22:30:04 -07:00
pc-bios pc-bios: Update the s390 bios images with the recent fixes 2024-11-18 17:14:35 +01:00
plugins plugins: eradicate qemu-plugins.symbols static file 2024-11-25 10:27:45 +00:00
po po: update Italian translation 2024-08-13 19:01:42 +02:00
python python: silence pylint raising-non-exception error 2024-11-25 11:03:14 +01:00
qapi qapi/ui: 'Document' xemu interface 2025-01-06 23:05:53 -07:00
qga qemu-ga: Avoiding freeing line prematurely 2024-11-07 12:28:20 +02:00
qobject qobject: remove return after g_assert_not_reached() 2024-09-24 13:53:35 +02:00
qom qom: allow user-creatable classes to be in modules 2024-10-31 18:28:32 +01:00
replay replay: Remove unused replay_disable_events 2024-10-03 17:26:06 +03:00
roms edk2: update submodule to edk2-stable202408.01 2024-11-13 15:58:52 +00:00
rust rust/pl011: Fix range checks for device ID accesses 2024-11-25 10:27:47 +00:00
scripts scripts/gen-license.py: Get version from glslang subproj 2025-01-26 03:48:38 -07:00
scsi configure, meson: rename targetos to host_os 2023-12-31 09:11:29 +01:00
semihosting semihosting: Restrict to TCG 2024-07-22 09:38:16 +01:00
stats meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
storage-daemon Revert "meson: Propagate gnutls dependency" 2024-07-03 18:41:26 +02:00
stubs stubs: avoid duplicate symbols in libqemuutil.a 2024-10-30 16:30:56 +01:00
subprojects meson: Bump glslang 2025-01-26 03:48:38 -07:00
system vl: Enable audio backend 2025-01-15 03:08:14 -07:00
target target/i386: Fix gen_enter_mmx arg 2025-01-06 23:05:53 -07:00
tcg tcg: Reset free_temps before tcg_optimize 2025-01-06 23:07:47 -07:00
tests nv2a: Add swizzle test and benchmark 2025-01-26 18:47:46 -07:00
thirdparty meson: Move volk, SPIRV-Reflect to main meson.build 2024-12-31 01:37:05 -07:00
tools qemu-vmsr-helper: implement --verbose/-v 2024-07-31 13:15:06 +02:00
trace trace: Don't include trace-root.h in control.c or control-target.c 2024-11-19 14:14:13 +00:00
ubuntu-win64-cross ubuntu-win64-cross: Update Vulkan headers 2025-01-26 01:56:57 -07:00
ui mcpx: Implement APU multipass voice processing 2025-02-15 15:01:29 -07:00
util meson: Migrate host os checks to use 'host_os' var 2025-01-06 23:05:53 -07:00
winpcap-loader meson: Fix loader.c file inclusion 2025-01-06 23:05:53 -07:00
.clang-format nv2a: Add Vulkan renderer 2024-12-31 01:37:05 -07:00
.dir-locals.el Add .dir-locals.el file to configure emacs coding style 2015-10-08 19:46:01 +03:00
.editorconfig .editorconfig: update the automatic mode setting for Emacs 2021-03-10 15:34:11 +00:00
.exrc qemu: add .exrc 2012-09-07 09:02:44 +03:00
.gdbinit .gdbinit: load QEMU sub-commands when gdb starts 2017-06-07 14:38:45 +01:00
.git-blame-ignore-revs metadata: add .git-blame-ignore-revs 2023-04-04 15:56:44 +01:00
.gitattributes rust: patch bilge-impl to allow compilation with 1.63.0 2024-11-05 14:18:16 +01:00
.gitignore configure: rename --enable-pypi to --enable-download, control subprojects too 2023-06-06 16:30:01 +02:00
.gitlab-ci.yml docs: Document GitLab custom CI/CD variables 2021-07-29 07:56:01 +02:00
.gitmodules meson: Migrate genconfig submodule to subproject 2025-01-06 23:05:53 -07:00
.gitpublish Add a git-publish configuration file 2018-03-05 09:03:17 +00:00
.mailmap MAINTAINERS: update email addr for Brian Cain 2024-12-03 12:26:24 +01:00
.patchew.yml scripts/checkpatch: roll diff tweaking into checkpatch itself 2021-06-25 10:08:33 +01:00
.readthedocs.yml readthodocs: fully specify a build environment 2024-01-12 13:23:48 +00:00
.travis.yml Revert "Remove the unused sh4eb target" 2024-11-04 14:16:11 +01:00
COPYING COPYING: update from FSF 2008-10-12 17:54:42 +00:00
COPYING.LIB COPYING.LIB: Synchronize the LGPL 2.1 with the version from gnu.org 2019-01-30 11:01:22 +01:00
Info.plist Info.plist: Add NSMicrophoneUsageDescription key 2025-01-15 03:05:35 -07:00
Kconfig build-sys: Add rust feature option 2024-10-07 16:41:58 +02:00
Kconfig.host hw/core: Add Enclave Image Format (EIF) related helpers 2024-10-31 18:28:32 +01:00
LICENSE tcg/LICENSE: Remove out of date claim about TCG subdirectory licensing 2019-11-11 15:11:21 +01:00
MAINTAINERS tests/qtest: drop 'fuzz-' prefix from virtio-balloon test 2024-12-03 12:26:24 +01:00
Makefile Makefile: Ignore distclean before configure error 2025-01-06 23:05:53 -07:00
QEMU_VERSION v9.2.0 release 2025-01-03 22:30:04 -07:00
README.md README: Direct users to the website for more info 2020-02-21 00:45:41 -07:00
README.rst README.rst: add the missing punctuations 2024-07-17 14:04:15 +03:00
block.c v9.2.0 release 2025-01-03 22:30:04 -07:00
blockdev-nbd.c nbd/server: CVE-2024-7409: Avoid use-after-free when closing server 2024-08-26 08:42:42 -05:00
blockdev.c v9.2.0 release 2025-01-03 22:30:04 -07:00
blockjob.c block: remove AioContext locking 2023-12-21 22:49:27 +01:00
build.sh build: Allow CFLAGS to be passed through on macos. 2025-01-14 17:13:11 -07:00
config_spec.yml xid: Add Xbox Controller S 2025-01-25 20:48:58 -07:00
configure v9.2.0 release 2025-01-03 22:30:04 -07:00
cpu-common.c cpu: ensure we don't call start_exclusive from cpu_exec 2024-11-16 08:42:25 -08:00
cpu-target.c cpu-target: don't set cpu->thread_id to bogus value 2024-06-04 10:02:39 +02:00
event-loop-base.c util/event-loop-base: Introduce options to set the thread pool size 2022-05-09 10:43:23 +01:00
get_deps.py ci: Check DLLs against /mingw64/bin instead of C:\Windows 2020-05-01 04:10:08 -07:00
gitdm.config contrib/gitdm: add group map for AMD 2023-03-22 15:08:26 +00:00
hmp-commands-info.hx hmp-commands-info.hx: Add missing info command for stats subcommand 2024-06-30 19:51:44 +03:00
hmp-commands.hx hmp/migration: Fix "migrate" command's documentation 2024-05-08 09:22:37 -03:00
iothread.c iothread: Simplify expression in qemu_in_iothread() 2024-02-13 10:59:25 +03:00
job-qmp.c qapi job: Elide redundant has_FOO in generated C 2022-12-14 20:04:47 +01:00
job.c block: remove AioContext locking 2023-12-21 22:49:27 +01:00
meson.build meson: Remove libglslang windows special dependency 2025-01-26 03:48:38 -07:00
meson_options.txt meson: Disable fdt 2025-01-09 15:48:27 -07:00
module-common.c all: Clean up includes 2016-02-04 17:41:30 +00:00
os-posix.c os-posix: Expand setrlimit() syscall compatibility 2024-06-30 19:51:44 +03:00
os-win32.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
page-target.c exec: Expose 'target_page.h' API to user emulation 2024-04-26 15:28:11 +02:00
page-vary-common.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
page-vary-target.c exec: Rename target specific page-vary.c -> page-vary-target.c 2023-10-04 11:03:54 -07:00
pythondeps.toml Require meson version 1.5.0 2024-10-07 16:41:57 +02:00
qemu-bridge-helper.c qemu-bridge-helper: relocate path to default ACL 2020-09-30 19:11:36 +02:00
qemu-edid.c qemu-edid: Restrict input parameter -d to avoid division by zero 2022-10-12 13:38:15 +02:00
qemu-img-cmds.hx docs/devel/docs: Document .hx file syntax 2024-01-15 17:12:22 +00:00
qemu-img.c block: remove AioContext locking 2023-12-21 22:49:27 +01:00
qemu-io-cmds.c v9.2.0 release 2025-01-03 22:30:04 -07:00
qemu-io.c block: remove AioContext locking 2023-12-21 22:49:27 +01:00
qemu-keymap.c qemu-keymap: Release local allocation references 2024-10-03 17:26:05 +03:00
qemu-nbd.c nbd/server: Plumb in new args to nbd_client_add() 2024-08-08 15:05:27 -05:00
qemu-options.hx chardev: finalize 'reconnect' deprecation 2024-10-28 14:37:25 +08:00
qemu.nsi license: Simplify GPL-2.0-or-later license descriptions 2024-09-20 10:11:59 +03:00
qemu.sasl sasl: remove comment about obsolete kerberos versions 2021-06-14 13:28:50 +01:00
replication.c replication: move include out of root directory 2021-05-26 14:49:46 +02:00
toml.cpp tomlplusplus: Allow using system library 2022-06-24 22:21:49 -07:00
trace-events system/dma-helpers.c: Move trace events to system/trace-events 2024-11-19 14:14:13 +00:00
version.rc .github: Make all release tags follow v<semver> convention 2022-04-29 22:03:39 -07:00
xemu-version.c nv2a: Add Vulkan renderer 2024-12-31 01:37:05 -07:00
xemu-version.h nv2a: Add Vulkan renderer 2024-12-31 01:37:05 -07:00
xemu-xbe.c xemu-xbe.c: Add memtxattrs 2023-01-23 00:30:40 -07:00
xemu-xbe.h xemu: Update copyright 2021-03-03 03:48:11 -07:00
xemu.metainfo.xml Update metainfo.xml information 2024-03-23 13:58:52 -07:00

README.md

Please visit https://xemu.app for more information.