Ryan Houdek
3bc5505272
Merge pull request #2814 from Sonicadvance1/aarch64_faster_fastmem
...
[AArch64] Banish slowmem operations to farcode.
2015-08-14 12:03:46 -05:00
Ryan Houdek
f76a30c9fd
Merge pull request #2845 from degasus/arm
...
JitArm64: Implement dcbt
2015-08-14 12:03:25 -05:00
degasus
715802d5aa
JitArm64: Move all pointers into the map
...
And cleanup all of the old code for sharing and generating this pointers.
2015-08-14 11:24:11 -05:00
degasus
878f919f63
JitArm64: Fastmem: fixup map & lookup
2015-08-14 11:24:03 -05:00
flacs
62c2991260
Merge pull request #2847 from dolphin-emu/revert-2841-andn
...
Revert "Jit64: use BMI1's ANDN for andcx"
2015-08-14 18:15:38 +02:00
flacs
9ef349181e
Revert "Jit64: use BMI1's ANDN for andcx"
2015-08-14 18:10:07 +02:00
flacs
dae6fdc211
Merge pull request #2846 from delroth/new-zelda-hle
...
Reimplement Zelda HLE
2015-08-14 16:53:20 +02:00
Pierre Bourdon
86c28bfac6
Bump save state version.
2015-08-14 16:17:28 +02:00
Pierre Bourdon
2d5d203be8
ZeldaHLE: Add UCode version for Pikmin 1 PAL.
2015-08-14 16:01:36 +02:00
Pierre Bourdon
18d0f15885
ZeldaHLE: Fix the AFC remaining samples logic on looping.
2015-08-14 16:01:36 +02:00
Pierre Bourdon
9105a76eb1
ZeldaHLE: Comment on the differences between FSA/ZTP UCodes.
2015-08-14 16:01:36 +02:00
Pierre Bourdon
fcbed7483d
ZeldaHLE: Properly read remaining AFC samples when a whole frame is available.
2015-08-14 16:01:36 +02:00
Pierre Bourdon
a602466e4f
ZeldaHLE: Implement patterns 2/3 automatic regeneration.
2015-08-14 16:01:35 +02:00
Pierre Bourdon
dd1cb88e9a
ZeldaHLE: Add new UCode version for Pikmin 1/2 New Play Control
2015-08-14 16:01:35 +02:00
Pierre Bourdon
c6c0f69c6b
ZeldaHLE: really fix the constant pattern variable step computation.
...
This time tested by comparing pattern indexes across LLE and HLE with the same
inputs. Matches on the 3-4 test cases I made.
2015-08-14 16:01:35 +02:00
Pierre Bourdon
fddb3f0d3c
ZeldaHLE: fix the constant pattern variable step computation.
2015-08-14 16:01:35 +02:00
Pierre Bourdon
090723167f
ZeldaHLE: Implement constant patterns with variable step (sample source 0A).
2015-08-14 16:01:35 +02:00
Pierre Bourdon
fbe727b0bb
ZeldaHLE: Support GBA crypto through command 0C. Reuses the pre-existing GBA crypto code from the separate UCode.
2015-08-14 16:01:35 +02:00
Pierre Bourdon
0b1af50316
ZeldaHLE: Initial support for command 0C in both styles implemented by the light protocol. Logs, but doesn't crash anymore.
2015-08-14 16:01:35 +02:00
Pierre Bourdon
32fcd8ec7c
ZeldaHLE: Special case Cmd03 NOP handling to make it clear it shouldn't ever happen on light protocol UCodes.
2015-08-14 16:01:34 +02:00
Pierre Bourdon
bbfa238657
ZeldaHLE: Document that the crashy commands are not actually crashy on light protocol, just never used.
2015-08-14 16:01:34 +02:00
Pierre Bourdon
25430e7923
ZeldaHLE: Add a flag to disable Cmd0D on older UCodes.
...
Shouldn't really matter -- these NOP commands aren't really used, but since it
reads an argument it's probably better to explicitly NOP it for safety.
2015-08-14 16:01:34 +02:00
Pierre Bourdon
8526a4131c
ZeldaHLE: Properly implement light command 03.
...
On at least one version (AC/Pikmin 1 NTSC) it doesn't even send a sync mail and
just reloops to the dispatcher.
2015-08-14 16:01:34 +02:00
Pierre Bourdon
7f7e036a02
ZeldaHLE: Add a missing game to the list of games to look at.
2015-08-14 16:01:34 +02:00
Pierre Bourdon
cdb1022696
Zelda HLE: Add support for the ZTP Wii UCode.
2015-08-14 16:01:34 +02:00
Pierre Bourdon
5f61ab3e21
Zelda HLE: Update the CRC to games mapping (documentation only).
2015-08-14 16:01:33 +02:00
Pierre Bourdon
addb5cb887
Zelda HLE: Support the per-frame sync protocol used by SMS.
...
Didn't test if SMS sounds right (travelling with no headphones \o/) but the
waveform looks ok and the mails are flowing as expected.
2015-08-14 16:01:33 +02:00
Pierre Bourdon
89037781e0
Zelda HLE: Make the implementation less strict for recoverable errors.
...
It kind of sucks that we don't emulate some behaviors properly, but there is
very little ROI for some of these features and I'm not going to spend time
implementing them any time soon. Making the PanicAlerts optional allows for
more testing of the core features on more games while "just" breaking less
important features like reverb.
2015-08-14 16:01:33 +02:00
Pierre Bourdon
837b8041c0
Zelda HLE: Only alert for mixing into back buffers for recent UCode versions.
...
On older versions there is no such concept of a "back buffer" since positional
audio is not supported. These buffers are just used for temp mixing, and while
it would be really nice if we could support more of that inter-buffer mixing
(TODO :) ) it does not warrant a PanicAlert at this time.
2015-08-14 16:01:33 +02:00
Pierre Bourdon
840a4157b0
Zelda HLE: Properly implement LQ AFC decoding.
...
Typos and stupid mistakes + untested code = dirty Git history.
2015-08-14 16:01:33 +02:00
Pierre Bourdon
82689677d9
Zelda HLE: Implement LQ AFC decoding (samples source 0005).
2015-08-14 16:01:33 +02:00
Pierre Bourdon
b3a327f02b
Zelda HLE: Implement sample source 3.
...
"Square" wave at a 0.25 duty cycle (25% up 75% down).
2015-08-14 16:01:32 +02:00
Pierre Bourdon
3c2b22bc09
Zelda HLE: Add basic support for Luigi's Mansion.
...
Fails ingame because it mixes to some buffers that are considered the back
buffers for Dolby games. That check might need to be less restrictive for games
that don't use Dolby mixing.
2015-08-14 16:01:32 +02:00
Pierre Bourdon
a0c318454d
Zelda HLE: Log the UCode version being used (CRC/flags).
...
Also tidy up the versions list a bit.
2015-08-14 16:01:32 +02:00
Pierre Bourdon
2e72c11025
Zelda HLE: Add support for the Pikmin 1 NTSC version of the UCode.
2015-08-14 16:01:32 +02:00
Pierre Bourdon
a8810e8778
Zelda HLE: Add support for the Zelda: FSA UCode.
2015-08-14 16:01:32 +02:00
Pierre Bourdon
01ab40fc6e
Zelda HLE: NTSC IPL provides the volume stepping explicitly.
...
Support that through a new behavior flag. Now the only remaining known bug in
the NTSC IPL is the reverb not fading out.
2015-08-14 16:01:32 +02:00
Pierre Bourdon
43882f3e6e
Zelda HLE: Handle the smaller VPBs used by the NTSC IPL.
...
Damn you, Nintendo.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
1807c113b5
Zelda HLE: Support both NTSC and PAL IPL.
...
Add a flag for UCodes that only have four non-Dolby mixing destinations
(instead of the standard six destinations).
NTSC IPL is still hopelessly broken.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
4ace79024d
Zelda HLE: Add a missing mixing buffer used by GC IPL.
...
Not completely sure what it's used for yet, but TWW has references to it so
I'll get to it at some point.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
8c85a8c8d9
Zelda HLE: Fix reverb in the GC IPL.
...
Adds a missing destination buffer, and support post-filtering.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
13ea54628d
Zelda HLE: Add support for the light protocol.
...
Used by a few titles (Luigi's Mansion, Animal Crossing) as well as the GameCube
IPL/BIOS.
Note that the IPL does not work yet because it mixes to unknown buffers.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
c033395e28
Zelda HLE: Introduce behavior flags to handle UCode version differences.
...
MAKE_DOLBY_LOUDER solves some of the volume issues that were happening in Zelda
Twilight Princess and SMG1.
2015-08-14 16:01:31 +02:00
Pierre Bourdon
8b9b9f033a
Zelda HLE: Fix and genericize PCM ARAM loading functions.
...
Now also handles PCM16, and works for longer sounds. SMG1 main menu outputs
some sensible audio now, though volume seems slightly off.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
0dc5a925b0
Zelda HLE: Add initial support for Wii DAC and SMG1.
...
SMG1 boots but quickly PanicAlerts due to an unimplemented sample source.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
ea1ac5f596
Zelda HLE: Add save state support.
...
Also fix an inconsistency in the spelling of "coeffs".
2015-08-14 16:01:30 +02:00
Pierre Bourdon
bfff0a72df
Zelda HLE: Implement sample sources 4, 7, 11 and 12.
...
Just 4 different versions of the same sample source, using a different constant
pattern uploaded to the DSP during command 01.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
6c61ee6278
Zelda HLE: Initial support for Zelda Twilight Princess (GC)
...
Very close to the TWW version of the UCode, haven't determined any differences
yet (but I'm sure that will come soon). Works well enough to reach ingame
without any errors other than a few volume issues.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
b672788548
Zelda HLE: Skip command words that are not commands.
...
Zelda Twilight Princess (GC) seems to push null words into the command buffer.
The command handler in the UCode ignores initial command mails that do not have
the MSB set.
2015-08-14 16:01:30 +02:00
Pierre Bourdon
9944731516
Zelda HLE: Add reverb emulation.
2015-08-14 16:01:29 +02:00