Matt Borgerson
14a95ddb7f
nvnet: Move nvnet_dump_ring_descriptors down
2025-06-19 01:56:05 -07:00
Matt Borgerson
86cda64f70
nvnet: Fix register stringification
2025-06-19 01:56:05 -07:00
Matt Borgerson
59cec6599d
nvnet: Move NetClientInfo handlers up
2025-06-18 01:32:27 -07:00
Matt Borgerson
2e8a08b5e5
nvnet: Fix spacing in NvNetState
2025-06-18 01:32:27 -07:00
Matt Borgerson
5e4d7a1dba
nvnet: Fix nvnet_phy_reg_* trace addr/value size
2025-06-18 01:32:27 -07:00
Matt Borgerson
4e5a1fa157
nvnet: Copyright update
2025-06-18 01:32:27 -07:00
Matt Borgerson
c0fa7e9ec4
nvnet: Rename mii reg traces to nvnet_phy_reg_{read,write}
2025-06-18 01:32:27 -07:00
Matt Borgerson
3eff7dd7fe
nvnet: Run clang-format
2025-06-18 01:32:27 -07:00
Matt Borgerson
bd7a6d7b31
nvnet: Make phy registers 16b
2025-06-18 01:32:27 -07:00
Matt Borgerson
3649593c73
nvnet: Factor out phy register read/write from mdio
2025-06-18 01:32:27 -07:00
Matt Borgerson
f640a9969a
nvnet: Rename mdio addr/data registers
2025-06-18 01:32:27 -07:00
Matt Borgerson
04bd92df40
nvnet: Migrate ring size shifts to GET_MASK macro
2025-06-18 01:32:27 -07:00
Matt Borgerson
f4ab3ab830
nvnet: Format the register list
2025-06-18 01:32:27 -07:00
Matt Borgerson
144d3049a9
nvnet: Drop more useless comments
2025-06-18 01:32:27 -07:00
Matt Borgerson
e180a11d04
nvnet: Simplify register stringification
2025-06-18 01:32:27 -07:00
Matt Borgerson
8d2ea10ef0
nvnet: Use QEMU_PACKED macro
2025-06-18 01:32:27 -07:00
Matt Borgerson
936730bb98
nvnet: Drop dead code
2025-06-18 01:32:27 -07:00
Matt Borgerson
1fd4cc7dd4
nvnet: Simplify debug macro
2025-06-18 01:32:27 -07:00
Matt Borgerson
bf76e3f666
nvnet: Eliminate redundant declarations
2025-06-18 01:32:27 -07:00
Matt Borgerson
361809d623
nvnet: Use OBJECT_DECLARE_SIMPLE_TYPE
2025-06-18 01:32:27 -07:00
Matt Borgerson
6fc9925dc9
nvnet: Drop custom packet hexdump
2025-06-18 01:32:27 -07:00
Matt Borgerson
c9f794c277
nvnet: Use is_broadcast_ether_addr
2025-06-18 01:32:27 -07:00
Matt Borgerson
1312b7e683
nvnet: Drop some useless comments
2025-06-18 01:32:27 -07:00
Matt Borgerson
62b8e789f4
nvnet: Move NVNET_DEVICE macro up
2025-06-18 01:32:27 -07:00
Matt Borgerson
92bc16f015
nvnet: Reorganize for more prototype elimination
2025-06-18 01:32:27 -07:00
Matt Borgerson
ea6d2fc050
nvnet: Drop some useless protos
2025-06-18 01:32:27 -07:00
Matt Borgerson
12127b469d
nvnet: Clean up mii read and write handling
2025-06-18 01:32:27 -07:00
Matt Borgerson
bc4dbcf4bb
nvnet: Fix mii inuse/write bits
2025-06-18 01:32:27 -07:00
Matt Borgerson
928be451d9
nvnet: Drop unnecessary comment
2025-06-18 01:32:27 -07:00
Matt Borgerson
2027d5bc67
nvnet: Use hw/net/mii.h
...
hw/net/mii.h provides common definitions for MII.
2025-06-18 01:32:27 -07:00
Matt Borgerson
e02e41ccaa
nvnet: Move to hw/xbox/mcpx/nvnet
2025-06-03 19:36:08 -07:00
Matt Borgerson
ba297f3b69
mcpx: Move APU components to hw/xbox/mcpx/apu
2025-06-03 19:36:08 -07:00
Matt Borgerson
395d136364
mcpx: Cleanup monitor
2025-06-03 19:36:08 -07:00
Matt Borgerson
829ec66757
mcpx: Rename {dsp->gp_ep}.c,h for clarity
2025-06-03 19:36:08 -07:00
Matt Borgerson
2f99d04730
mcpx: Minor cleanup
2025-06-03 19:36:08 -07:00
Matt Borgerson
979499ffe5
mcpx: Move SGE handles to VP struct
2025-06-03 19:36:08 -07:00
Matt Borgerson
04273de749
mcpx: Move DSP state structs to dsp.h
2025-06-03 19:36:08 -07:00
Matt Borgerson
7ab7f65cdf
mcpx: Reorder functions, drop some protos
2025-06-03 19:36:08 -07:00
Matt Borgerson
068a623c54
mcpx: Move VP state struct to vp.h
2025-06-03 19:36:08 -07:00
Matt Borgerson
ba6f7f360e
mcpx: Move VP files into vp/
2025-06-03 19:36:08 -07:00
Matt Borgerson
2321dbfeb6
mcpx: Split some VP structs out to vp.h
2025-06-03 19:36:08 -07:00
Matt Borgerson
8ee8732aad
mcpx: Drop some redundant protos
2025-06-03 19:36:08 -07:00
Matt Borgerson
9bdeb2d793
mcpx: Add inline keyword to float conversion helpers
2025-06-03 19:36:08 -07:00
Matt Borgerson
bf9985e7bf
mcpx: Move DSP functions to dsp.c
2025-06-03 19:36:08 -07:00
Matt Borgerson
2d5c4fa34d
mcpx: Move VP functions to vp.c
2025-06-03 19:36:08 -07:00
Matt Borgerson
bee1cb6006
mcpx: Move debug functions to debug.c
2025-06-03 19:36:08 -07:00
Matt Borgerson
eb88acf4c0
mcpx: Move some definitions to apu_int.h
2025-06-03 19:36:08 -07:00
Matt Borgerson
26c451fc36
mcpx: Process voices concurrently
2025-06-03 01:54:09 -07:00
Matt Borgerson
344f7da132
mcpx: Support 3D voice HRTF filtering
2025-05-31 17:16:54 -07:00
Matt Borgerson
05b1f2c13d
mcpx: Define a constant for 3D voice count
2025-05-31 17:16:54 -07:00
Matt Borgerson
57cdee770e
mcpx/dsp: Fix some formatting/spelling nits
2025-03-31 12:40:31 -07:00
Matt Borgerson
9439f605a8
mcpx/dsp: Drop redundant value/address assertions
2025-03-31 12:40:31 -07:00
Matt Borgerson
e08011b772
mcpx/dsp: Rename *.inl -> *.c.inc
2025-03-31 12:40:31 -07:00
Matt Borgerson
4b81c28901
mcpx/dsp: Migrate some DPRINTFs to trace events
2025-03-31 12:40:31 -07:00
Matt Borgerson
31d8237ee3
mcpx/dsp: Remove dsp56k_execute_one_disasm_instruction
2025-03-31 12:40:31 -07:00
Matt Borgerson
8dafd513b9
mcpx/dsp: Move some debug functions out to debug.c
2025-03-31 12:40:31 -07:00
Matt Borgerson
d18125994c
mcpx/dsp: Drop some dead code
2025-03-31 12:40:31 -07:00
Matt Borgerson
f8cbcbadaa
mcpx/dsp: Move dma reg defs to a header
2025-03-31 12:40:31 -07:00
Matt Borgerson
c68cdd9479
mcpx/dsp: Fix minor header issues
2025-03-31 12:40:31 -07:00
Matt Borgerson
31c491a702
mcpx/dsp: Move cpu reg defs to a header
2025-03-31 12:40:31 -07:00
Matt Borgerson
5ba2ef790c
mcpx/dsp: Factor out debug bits to a header
2025-03-31 12:40:31 -07:00
Matt Borgerson
148f04e1c7
mcpx/dsp: Replace printf -> DPRINTF
2025-03-31 12:40:31 -07:00
Matt Borgerson
115456f255
mcpx/dsp: Bring back disassembly
2025-03-31 12:40:31 -07:00
Matt Borgerson
89f98947f6
mcpx/dsp: Fix dprintf use
2025-03-31 12:40:31 -07:00
Matt Borgerson
9af3c1a005
mcpx/dsp: Add missing copyright
2025-03-31 12:40:31 -07:00
Matt Borgerson
bf51af891d
mcpx/dsp: Move to a library
2025-03-31 12:40:31 -07:00
Matt Borgerson
312bd94573
mcpx: Move voice_list_regs to apu.c
2025-03-27 23:33:40 -07:00
Matt Borgerson
a830cc4526
xbox: Disable clang-format for deliberately aligned reg defs
2025-03-27 23:33:40 -07:00
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
Matt Borgerson
281f42c5e1
mcpx: Fix variable shadowing
2025-01-07 00:52:51 -07:00
Matt Borgerson
85f84be04d
mcpx: Narrow variable def scopes, fix shadowing
2025-01-07 00:52:51 -07:00
Matt Borgerson
0e50741c28
ui,xbox: Copyright updates on changed files
2025-01-06 23:06:21 -07:00
Matt Borgerson
f4ef9f6309
mcpx: Rename dev to parent_obj, use QOM casts
2025-01-06 23:05:53 -07:00
Matt Borgerson
008d848582
mcpx: Use new bql_[un]lock functions
2025-01-06 23:05:53 -07:00
Matt Borgerson
08d4c3611b
mcpx: Update headers
2025-01-06 23:05:53 -07:00
Matt Borgerson
81a6985bb0
mcpx: Use new fifo8_pop_buf api
2025-01-06 23:05:53 -07:00
Matt Borgerson
6cce59135b
mcpx: Use Resettable interface
2025-01-06 23:05:53 -07:00
Matt Borgerson
212988421f
mcpx: Remove set but not used count variable
2024-12-29 18:42:12 -07:00
Matt Borgerson
b135dd14ea
nv2a, mcpx: Drop minimum_version_id_old from vmsd
2023-01-23 00:30:40 -07:00
Matt Borgerson
a198f22981
include: Drop various qemu-common.h imports
2023-01-23 00:30:40 -07:00
Erik Abair
4fd15c00f3
mcpx: Print actual error on OpenAudioDevice fail
2022-07-13 13:41:30 -07:00
Matt Borgerson
9c06980275
ui: Redesign user interface
...
Introduces a new user interface that looks much nicer, is easier to
navigate with controllers, provides more context to users, and is
scalable. Some additional features are included.
* Adds 'popup menu' with actions that can be used easily from controller
* Adds 'main menu', unifying other configuration dialogs
* Adds port-forwarding user interface
* Adds screenshot feature
* Adds volume control feature
* Adds gamepad auto-bind option
* Adds vsync configuration option
* Adds auto UI scaling
* Adds preferred window size selection
* Adds AV pack selection
* Exposes some existing config items in GUI
2022-05-07 16:09:34 -07:00
Matt Borgerson
d14cdbc7ba
config: Migrate to genconfig system
2022-04-24 21:15:57 -07:00
Antonio Abbatangelo
2218cdea67
nv2a/mcpx: fix freezing on loadvm failure
2022-02-22 14:40:26 -07:00
Matt Borgerson
d40a1c578d
mcpx: Start using tracing infrastructure for logging
2022-02-01 23:34:53 -07:00
Matt Borgerson
fdd7875051
sdl: Print out SDL_GetError message when subsystem init fails
2021-06-15 22:12:34 -07:00
Matt Borgerson
11a680301a
apu: Use new 'q' prefix for atomics
2021-04-18 23:41:28 -07:00
Matt Borgerson
db5a8c7755
apu: Use bool type for state change callback running parameter
2021-04-18 23:41:28 -07:00
Matt Borgerson
609aee0bbe
build: Convert xemu Makefiles to meson
2021-04-18 23:41:28 -07:00
Matt Borgerson
d62b3f4467
mcpx/apu: Leave voice active at EOL if persist set
2021-03-07 23:54:27 -07:00
wutno
f36a0d629c
xbox: Update PCI device header revisions to match Xbox 1.0 retail
2021-03-03 13:43:42 -07:00
Matt Borgerson
66f2e9decd
mcpx: Fixup compiler warnings in DSP code
2021-01-03 16:14:47 -07:00
Matt Borgerson
416e12c3b3
mcpx: Enable APU pipeline
2021-01-03 16:14:47 -07:00