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