Commit Graph

8366 Commits

Author SHA1 Message Date
Pierre Bourdon
2c10ca4e46 Rewrite the linear sample rate conversion algorithm to make it less hacky and to support arbitrarly big ratios 2012-12-18 17:38:41 +01:00
Pierre Bourdon
1cecbaedce Fix MixAdd with volume. The previous volume formula completely failed with volumes >= 1.0 (0x8000). Fixes Tomb Raider Legends (GC) music. 2012-12-18 07:01:22 +01:00
Pierre Bourdon
faaaa97c9e Added a utility function to dump an AX PB for debugging 2012-12-18 07:00:24 +01:00
Pierre Bourdon
1abbfd4b15 Remove some useless 'inline' attributes from the AX HLE voice mixing functions 2012-12-18 07:00:04 +01:00
Pierre Bourdon
70b3980f46 Fix AX HLE command 12 arguments: takes 4 u16, not 1 2012-12-18 06:58:47 +01:00
Pierre Bourdon
ed59f8ff1d Remove UCode_AX_ADPCM.h, now useless (incorporated into UCode_AX_Voice.h) 2012-12-18 05:55:40 +01:00
Pierre Bourdon
3ca77cf077 Fix samples clamping and interlacing in the OUTPUT command. Shouldn't have assumed previous AX HLE was doing something right. 2012-12-01 00:54:25 +01:00
Pierre Bourdon
04b1ee0016 Implemented command 01 (download data and mix to MAIN/AUXA/AUXB with volume control). Fixes missing weapon sounds in Metroid Prime 2. 2012-11-28 15:22:02 +01:00
Pierre Bourdon
4cf2856284 Improve savestates support in AX and AXWii 2012-11-28 03:31:46 +01:00
Pierre Bourdon
f11a40f858 Command 13 should upload only AUXA LRS, not MAIN LRS + AUXA LRS. Fixes more GC EA games sound/music (including FIFA 06, Madden 08). 2012-11-28 01:48:27 +01:00
Pierre Bourdon
1a129abe0d AUX return data should be mixed to main buffers, not AUX buffers. Fixes a regression introduced by r954c55e35afb, now EA games sound works again. 2012-11-27 21:48:59 +01:00
Pierre Bourdon
9270b62830 Rewrite MixAUXSamples to make it more clean 2012-11-27 20:36:34 +01:00
Pierre Bourdon
2120f536d5 Implement command 07 in GC AX (download data to main LR and reset main surround) 2012-11-27 20:36:14 +01:00
Pierre Bourdon
9b1a66245e Fix an AUX mixing issue introduced when implementing AXWii. Now FIFA 06 sounds great with AX HLE. 2012-11-27 00:03:40 +01:00
Pierre Bourdon
706939e632 Implement command 10, used by FIFA 06 and linked to AUXB mixing. Sound still broken in that game. 2012-11-27 00:03:02 +01:00
Pierre Bourdon
fb1ecd90b0 Implemented command 13 in GC AX, used in some EA games (FIFA 06 now has broken sound, which is still better than no sound) 2012-11-26 23:34:18 +01:00
Pierre Bourdon
9d85052a66 Implement Wiimote audio output in AXWii. Not very useful yet as no sound is currently being mixed to the wiimote channels. 2012-11-20 11:34:49 +01:00
Pierre Bourdon
affdf08fd6 Real fix for the crashes on Windows with AXWii 2012-11-20 09:49:27 +01:00
Pierre Bourdon
e858835c7e Fixing the hack fix (I can't multiply 32x32) 2012-11-20 04:26:07 +01:00
Pierre Bourdon
0d3c3f6339 Fix a crash in AXWii with SRC ratio > 4 (which I thought was impossible, but AXWii changed the SRC algorithm) 2012-11-20 04:18:48 +01:00
Pierre Bourdon
321e3a8421 Add global volume handling for AUX mixing and L/R output in AXWii 2012-11-20 03:32:29 +01:00
Pierre Bourdon
ae85159a94 Add surround sound support to GC AX HLE 2012-11-20 03:22:24 +01:00
Pierre Bourdon
954c55e35a New AXWii now working properly in some games I tested 2012-11-20 03:13:55 +01:00
Pierre Bourdon
e750bed2a9 Rename NewAX -> AX and remove the old code. Time to work on AXWii. 2012-11-19 22:03:56 +01:00
Pierre Bourdon
4f88fee560 Added a small TODO list of things missing in NewAX 2012-11-19 20:25:57 +01:00
Pierre Bourdon
3541d33c25 Support both versions of the mixer_control bitfield. Fixes Skies of Arcadia music being muted (and sounds being mixed only on the left audio channel), this time without a hack. 2012-11-19 20:10:37 +01:00
Pierre Bourdon
c8b2ba1bc6 Implement the MORE command (0D) used to read more commands from the CPU 2012-11-16 07:51:19 +01:00
Pierre Bourdon
5a2d8661d7 Add comments explaining how the voice processing works 2012-11-15 16:57:33 +01:00
Pierre Bourdon
aa90f799b7 Re-implementation of the AX voice mixing algorithm. Now with 100% less WTF. 2012-11-15 16:30:05 +01:00
Pierre Bourdon
531cc6aaf3 Fixed AUXB_NOWRITE command number and implemented UPLOAD_LRS command (06) 2012-11-14 18:08:29 +01:00
Pierre Bourdon
f84f15c5bf Oops, forgot a memset which removed all AUX effects 2012-11-14 18:03:55 +01:00
Pierre Bourdon
a630357c9e Add AUX mixing support as well as a send&return effect implementation 2012-11-14 17:55:16 +01:00
Pierre Bourdon
61c1fab2c6 Fix Windows support again: std::thread can't take a member pointer with StdThread.h from Common 2012-11-14 12:13:19 +01:00
Pierre Bourdon
db46ccd175 More accurate mixing buffers initialization using parameters from command 00 2012-11-14 12:08:41 +01:00
Pierre Bourdon
24d430eba0 Add NewAX to the VC++ project files 2012-11-14 11:32:57 +01:00
Pierre Bourdon
6a1241c03e Make a hack optional to fix 48KHz output mode with NewAX 2012-11-14 11:25:27 +01:00
Pierre Bourdon
0b275c20af Added output support to NewAX. Now working fine with Tales of Symphonia. 2012-11-14 11:20:54 +01:00
Pierre Bourdon
18f3630af5 PBs processing is now done, just need the output to be able to test 2012-11-14 06:53:36 +01:00
Pierre Bourdon
7535c6d903 Parse the AX command list in the AX thread 2012-11-14 06:15:55 +01:00
Pierre Bourdon
9e813502ac Create a new thread for AX and make it handle the command lists 2012-11-14 05:33:04 +01:00
Pierre Bourdon
3195916744 Basic infrastructure for the new AX HLE, currently not doing anything besides answering mails 2012-11-14 05:08:04 +01:00
Pierre Bourdon
e4d18e3a8b Bound the iteration on the PB list when processing updates.
Fixes freezes introduced in 3.0-807 with DSPHLE on some AX games.

Apparently logic doesn't apply inside the HW/DSPHLE/UCodes directory.
2012-11-13 16:50:42 +01:00
Pierre Bourdon
764cd455b3 Revert "fix Snow Leopard compatibility"
This change broke compilation on some OSX 10.7 configurations.

This reverts commit b2e2e49fe4.
2012-11-13 10:22:56 +01:00
Pierre Bourdon
16060290c2 Fix missing notes in musics with DSPHLE.
Tales of Symphonia and Skies of Arcadia Legends now have working musics with
DSPHLE. Some other games with the same symptoms (missing instruments) should
probably be fixed by that change too.
2012-11-13 09:37:44 +01:00
rog
8eb6f9002e Fixes interpreter when not recording or playing back a movie. 2012-11-12 20:20:34 -05:00
parlane
ab03e9446a From now on, use http://dolphin-emu.org/ , http://forums.dolphin-emu.org/ and http://wiki.dolphin-emu.org/ to access our website. 2012-11-12 01:48:51 +00:00
Rog
e8c0fea16e Retain dsp JIT setting when switching to HLE. Fixes issue 5691. 2012-11-09 12:08:56 -05:00
skidau
f1f212b51b Removed the patches for Wave Race as they are no longer needed.
Fixes issue 3921.
2012-11-04 20:58:07 +11:00
NeoBrainX
6f21f5eb34 Video_Software: Implement texture preloading 2012-11-03 15:41:41 +01:00
Pierre Bourdon
d13163380d Bye mamario, you won't be missed 2012-11-02 02:48:55 +01:00