Commit graph

8274 commits

Author SHA1 Message Date
Pierre Bourdon
cf69e7ca8a Merge branch 'gx-optimization'
This branch reduces the number of useless state flushes in the video
emulation layer by checking whether a BP/XF change will have an effect
or not. Greatly reduces the number of GL calls per frame.

Thanks to degasus for his help!
2012-05-24 21:49:37 +02:00
NeoBrainX
4131ca8d38 Merge branch 'hires-tex-improvements' 2012-05-22 08:14:49 +02:00
Pierre Bourdon
fee2d83f68 Fix a data endianness problem introduced by r7cccb4baa724. 2012-05-20 22:16:21 +02:00
Pierre Bourdon
c95baf614d Avoid changing video state on useless BP writes
When a game writes the same value that was already configured to a BP
register, Dolphin previously flushed the GPU pipeline and reconfigured
the internal video state (calling SetScissor/SetLineWidth/SetDepthMode).

Some of these useless writes still need to perform actions, for example
writes to the EFB copy trigger or the texture preload registers (which
need to reload the texture from memory).
2012-05-20 20:56:03 +02:00
Pierre Bourdon
7cccb4baa7 Check if data was modified in LoadIndexedXF too 2012-05-19 10:54:40 +02:00
Pierre Bourdon
b8d4d013f6 Compute the comparison size properly (transferSize is in u32, not in u8) 2012-05-18 23:27:02 +02:00
Pierre Bourdon
5a77cae2e3 Check if BP and XF changes actually change values before flushing 2012-05-18 23:13:53 +02:00
Matthew Parlane
1bc5f41e40 Fixes issue 5428. Thanks delroth. 2012-05-18 17:57:28 +12:00
Pierre Bourdon
c83f87dfc4 Moved the _FILE_OFFSET_BITS=64 definition before the dependency checks. Fixes compilation on Linux x86. 2012-05-17 00:11:55 +02:00
skidau
5a8ad92302 Changed a JMP that needed to be a far JMP in JITIL. 2012-05-15 09:32:21 +10:00
NeoBrainX
54aeec7a8f Dump the redundant "save textures" function. Use TextureCache's dumping feature instead. 2012-05-13 17:48:23 +02:00
NeoBrainX
72e83140f0 TextureCacheBase: Remove the texture size limit for custom textures. Only the GPU restrictions for maximum texture size remain. 2012-05-13 17:43:14 +02:00
NeoBrainX
41d37ab0a0 TextureCacheBase: Support loading custom mipmaps. 2012-05-13 17:42:22 +02:00
NeoBrainX
a5e68ab10e TextureCacheBase: Support dumping individual mipmaps. 2012-05-13 17:41:04 +02:00
NeoBrainX
a8ad59ee3e TextureCacheBase: Move texture dumping to a helper function. 2012-05-13 17:41:03 +02:00
NeoBrainX
3ecc5e879c TextureCacheBase: Move custom texture loading to a helper function 2012-05-13 17:41:03 +02:00
skidau
b27f471488 Invalidated the JIT cache when the dcbst instruction is used. 2012-05-13 21:07:03 +10:00
skidau
48bf5c739d Changed the block linker to work on physical addresses. Checked whether the code has changed before invalidating it. Fixes the cut-scenes in Tales of Graces.
Fixes issue 2933.
2012-05-12 21:43:39 +10:00
Pierre Bourdon
f567782b47 Implement a better heuristic to detect whether an ELF is for GC or Wii 2012-05-12 01:48:56 +02:00
Pierre Bourdon
04bde406d3 Fix DVD root path for Wii games. Now Wii games can be booted using extracted files instead of a disc image. 2012-05-11 22:19:57 +02:00
skidau
ec0ddb476e Fixed texture encoding in DX11. Thanks to wordmanwords for the patch. 2012-05-06 10:51:38 +10:00
skidau
1587cb3738 Fixed texture encoding. Fixes the interaction with objects in Another Code R. Thanks to wordmanwords for the patch.
Fixes issue 5405.
2012-05-05 11:21:05 +10:00
Pierre Bourdon
77f47866df Add Wii DVD integrity checking to Dolphin
This allows users to easily check whether their Wii dump is corrupted or not
using the Dolphin properties window. Right click on a game, Properties,
Filesystem tab, then right click on the game partition and select "Check
partition integrity".

This may have some false negatives due to the unused clusters heuristic (see
the comment in VolumeWiiCrypted.cpp). False positives are unlikely.
2012-05-04 16:27:42 +02:00
orphis
6254edcfbc Add the missing *.wbfs extension to the file picker. 2012-05-03 22:27:06 +00:00
skidau
0e812cb187 JIT32 fix.
Added wbfs to the File Open list.
2012-05-04 07:00:30 +10:00
skidau
7885e63deb Added wbfs support. Thanks to lordlyhobo for the patch. Fixes issue 859. 2012-05-04 00:09:01 +10:00
skidau
a1b3eaffb7 Reverted the ES changes from r0fc390b55226. Fixes the crash that occurred when loading a channel from the sysmenu. 2012-05-03 23:32:32 +10:00
skidau
e5d527340d Optimised the JIT path. 2012-05-03 23:17:15 +10:00
skidau
d7f468a781 Applied the "Hide cursor" fix to the Pause button. 2012-05-03 20:57:22 +10:00
Glenn Rice
86f2cc60f2 Merge branch 'linux-fixes' 2012-05-02 18:26:20 -05:00
Glenn Rice
614a994150 Instead of ignoring various subdirectories of the Binary directory, just
ignore that directory.
2012-05-02 15:48:14 -05:00
Glenn Rice
40640217f1 Fix hide mouse cursor on linux.
Fix emulator window position when rendering to main on linux.
Allow building against wxWidgets 2.9.3 on linux.
2012-05-02 14:40:40 -05:00
Billiard26
1974938c5a Fix DirectInput D-Pad handling. 2012-05-02 06:31:38 +00:00
Pierre Bourdon
beb4204bbb Include libavutil/mathematics.h explictly in AVIDump.cpp. Fixes issue #5266. 2012-05-02 07:29:15 +02:00
Pierre Bourdon
5e2d692cec Lock the DSP thread on its own core when using "Lock threads to cores" and "LLE on Thread". Greatly improves DSPLLE performance on Linux with >= 3 cores CPUs. 2012-05-02 07:19:14 +02:00
skidau
f28e0cff15 Merge branch 'ARAM' of https://code.google.com/p/dolphin-emu into ARAM
* 'ARAM' of https://code.google.com/p/dolphin-emu:
  Fixed ARAM DMA overflow situations.  Fixes issue 4952.

Conflicts:
	Source/Core/Core/Src/HW/DSP.cpp
2012-05-01 22:22:39 +10:00
skidau
1b15cd0b60 Added preliminary support for ARAM memory map mode "4".
Fixes issue 3410.
2012-05-01 22:05:48 +10:00
skidau
2540fe0606 Fixed ARAM DMA overflow situations. Fixes issue 4952. 2012-05-01 21:31:21 +10:00
skidau
30d6d22816 Merge Conflicts:
Source/Core/Core/Src/PowerPC/PowerPC.cpp
2012-05-01 21:00:57 +10:00
skidau
d015f0926a Fixed a typo and some far jumps in the JIT. 2012-05-01 20:52:35 +10:00
skidau
d557c913e8 Reset the performance counters at the start of the each block. 2012-05-01 20:42:01 +10:00
skidau
389823a749 Changed the performance monitor check to a compile time check instead of run-time. 2012-05-01 20:42:00 +10:00
skidau
cdace9d776 Added preliminary support for the Gekko CPU Performance Monitor. Fixes Harry Potter and the Prisoner of Azkaban. 2012-05-01 20:42:00 +10:00
skidau
75fbbcae40 Merge branch 'JIT-Exceptions'
* JIT-Exceptions:
  JitIL code cleanup
  Changed the JIT code to make the FPU exception timing more accurate.  The exception is now triggered at the first FP instruction instead of the start of the block. Rearranged the JIT exception code for a tiny speed-up.  Only external exceptions are checked at the end of the block.  All other exceptions are checked at the time they occur.

Fixes issue 5382.

Conflicts:
	Source/Core/Core/Src/PowerPC/Jit64/Jit_LoadStore.cpp
2012-05-01 20:35:12 +10:00
skidau
05040379e9 JitIL code cleanup 2012-05-01 20:26:05 +10:00
skidau
15d3c45159 Reset the performance counters at the start of the each block. 2012-04-29 00:10:20 +10:00
skidau
853d12b42c Changed the performance monitor check to a compile time check instead of run-time. 2012-04-28 22:47:55 +10:00
skidau
103e73030f Added preliminary support for the Gekko CPU Performance Monitor. Fixes Harry Potter and the Prisoner of Azkaban. 2012-04-28 20:42:45 +10:00
skidau
330f63df80 Corrected the file offset within the FST of virtual disks (used by the DVD Root path function). 2012-04-28 11:21:55 +10:00
skidau
8878ae5fc3 Merge branch 'AudioStreaming'
* AudioStreaming:
  Reset the stream playing flag on init.
  force VolumeDirectory to align files to 32KB (only streaming audio files really need to be aligned...)
  Removed the DTK Music option.  It is now always enabled.
  Added the response for audio streaming disc offset requests.  Generate an AI interrupt at the end of the audio streaming loop.  Fixes Pac-man Fever and the background music in Eternal Darkness.
  Fixed the erroneous looping in audio streaming games like Eternal Darkness and Zoids: Battle Legends.  Thanks for the tip, tueidj.
2012-04-23 22:40:58 +10:00