Commit Graph

16616 Commits

Author SHA1 Message Date
Lioncash 2906f64e13 Merge pull request #2073 from Sonicadvance1/android_fix_formatchanges
[Android] Fix ignore format changes option.
2015-02-18 21:17:46 -05:00
kamiyo e864521182 High Quality Resampler, using FIR filter
For more information:
https://docs.google.com/document/d/1tBEgsJh7QiwNwepXI0eobfK3U8LkJButSyeuFt1degM/edit?usp=sharing

removed: SSE includes (not used)

added: 16bit -> float -> 16bit functions
added: linear interpolator and high-quality (windowed-sinc) interpolator functions (including Resampler class)
added: dithering

changed: renamed variables and reformatted a few things to fit with style guide (braces, #include->const)
changed: use s16, u16, s32, u32 etc
changed: store samples and do all computations as floats
changed: volume from 0 - 255
2015-02-18 21:13:45 -05:00
Markus Wick 1a3bc8f286 Merge pull request #2001 from mimimi085181/multiple-texture-cache-entries
Allow multiple texture cache entries for textures at the same address
2015-02-19 01:08:07 +01:00
mimimi085181 2f8e0c9bb9 Allow multiple texture cache entries for textures at the same address
This is the same trick which is used for Metroid's fonts/texts, but for all textures. If 2 different textures at the same address are loaded during the same frame, create a 2nd entry instead of overwriting the existing one. If the entry was overwritten in this case, there wouldn't be any caching, which results in a big performance drop.

The restriction to textures, which are loaded during the same frame, prevents creating lots of textures when textures are used in the regular way. This restriction is new. Overwriting textures, instead of creating new ones is faster, if the old ones are unlikely to be used again.

Since this would break efb copies, don't do it for efb copies.

Castlevania 3 goes from 80 fps to 115 fps for me.

There might be games that need a higher texture cache accuracy with this, but those games should also see a performance boost from this PR.

Some games, which use paletted textures, which are not efb copies, might be faster now. And also not require a higher texture cache accuracy anymore. (similar sitation as PR https://github.com/dolphin-emu/dolphin/pull/1916)
2015-02-18 23:54:40 +01:00
magumagu dfac2ca055 Merge pull request #2072 from Sonicadvance1/fix_inst_table_mulli
Fix mulli's flags in the instruction tables.
2015-02-18 14:44:09 -08:00
Ryan Houdek 09e8adb199 [Android] Fix ignore format changes option.
This option was inversed, so it was always set to the opposite of what was wanted.
2015-02-18 16:27:37 -06:00
Ryan Houdek 19f8524304 Fix mulli's flags in the instruction tables.
It doesn't set RC, so this flag is incorrect.
2015-02-18 16:26:12 -06:00
Ryan Houdek 0567b28ba1 [Android] Fix building unit tests. 2015-02-18 16:24:30 -06:00
shuffle2 861d341f4c Merge pull request #2063 from shuffle2/libusb-vcxproj
make libusb vcxproj use standard dolphin template and don't compile strerror.c.
2015-02-18 13:53:09 -08:00
Shawn Hoffman f91e8e9423 make libusb vcxproj use standard dolphin template and don't compile strerror.c. 2015-02-18 13:29:39 -08:00
Shawn Hoffman 8645f33034 Revert "Externals: add Dolphin-specific patches to libusb"
This reverts commit 7a305bef86.
2015-02-18 13:23:37 -08:00
Markus Wick 86226cb2b9 Merge pull request #1979 from Mullin/head
Use clock_gettime instead of gettimeofday, it's more efficiency on low power system
2015-02-18 21:54:16 +01:00
Mullin 797fc14414 Use clock_gettime instead of gettimeofday, it's more effiency on low power system
Add def for mac(They don't support clock_gettime)

Fix my mistake

Fix my mistake 2
2015-02-18 21:44:58 +01:00
Pierre Bourdon 8cc6e5cff9 Merge pull request #1854 from JosJuice/read-disc-after-delay
DVDInterface: Read disc after delay, not before
2015-02-18 20:35:07 +00:00
Pierre Bourdon 042fcbcbca Merge pull request #2067 from magumagu/cputhread-assert
Disable an IsCPUThread() assert in Release builds.
2015-02-18 16:22:23 +00:00
Pierre Bourdon 96041a5aca Merge pull request #2068 from mimimi085181/hash-fix
GetCRC32: Fix the hash for the last byte(s)
2015-02-18 13:43:06 +00:00
mimimi085181 f6c9b8243e GetCRC32: Fix the hash for the last byte(s)
This fixes issue 8227
https://code.google.com/p/dolphin-emu/issues/detail?id=8227
2015-02-18 14:26:28 +01:00
Ryan Houdek ef2fba2e85 Merge pull request #2070 from lioncash/unused
PowerPC: Remove unused enum values
2015-02-17 23:42:46 -06:00
Lioncash 78d917b0b3 PowerPC: Remove unused enum values 2015-02-18 00:37:32 -05:00
Lioncash 373b1d9915 Merge pull request #2069 from lioncash/docs
PowerPC: Document the instruction table flags
2015-02-18 00:26:42 -05:00
Lioncash 0b3a2ae4ca PowerPC: Document the instruction table flags
Should make it easier for newcomers to get up to speed.
2015-02-18 00:17:51 -05:00
Buddybenj 265a21a565 Replace Country Names With No-Intro Names 2015-02-17 18:50:10 -06:00
Ryan Houdek 127e742992 Merge pull request #2046 from Mullin/Fix-unsigned/signed-stores
[ARMv7] Fix unsigned/signed stores
2015-02-17 14:38:36 -06:00
Mullin 39aa2432a6 Fix signed/unsigned stores 2015-02-17 21:29:01 +01:00
Fiora 53bf21e15a Merge pull request #2066 from lpereira/regcache-with-variadic-tpl
Jit64: Use variadic templates for RegCache locking
2015-02-17 08:53:07 -08:00
Lioncash 39e121e551 Merge pull request #2064 from magcius/fix-tilt
WiimoteEmu: Add back the calibrated accel data to the EEPROM
2015-02-17 11:14:09 -05:00
JosJuice 3ac0977bc6 DVDInterface: Read disc after delay, not before 2015-02-17 14:57:36 +01:00
Leandro Pereira 1162c5344b Jit64: Use variadic templates for RegCache locking 2015-02-17 10:01:42 -02:00
Ryan Houdek 3aa605236d Merge pull request #2041 from Sonicadvance1/AArch64_vertex_loader
[AArch64] Vertex loader and things
2015-02-17 00:51:51 -06:00
Ryan Houdek ed008c3a69 [AArch64] Change the vertex loader over to using unscaled loadstores.
In nearly all direct loadstore cases we can use unscaled loadstores.
Still have a fallback in case we hit a situation that we /can't/ do a unscaled loadstore.
2015-02-16 22:03:09 -06:00
Ryan Houdek 120df4c688 [AArch64] Implement loadstore unscaled. 2015-02-16 22:00:43 -06:00
magumagu 77a0bfdd8f Merge pull request #2055 from magumagu/fakevmem-code
Allow executing code out of FakeVMEM.
2015-02-16 19:13:14 -08:00
magumagu cce503c879 Disable an IsCPUThread() assert in Release builds.
IsCPUThread is extremely slow at the moment, and this code runs
frequently.
2015-02-16 19:07:42 -08:00
Jasper St. Pierre e53268be1b WiimoteEmu: Add back the calibrated accel data to the EEPROM
It seems that games actually read this to determine how to act, which
isn't particularly strange. I was imagining it was more for the
Wiimote's internal normalization, but I was wrong.
2015-02-16 15:16:23 -08:00
Ryan Houdek 2ebe57ed3f Convert our vertex loader unit test to the new RunVertices arguments arrangement. 2015-02-16 16:51:39 -06:00
Ryan Houdek f54a0d3ff4 [AArch64] Minor floating point loadstore improvements.
These use the Vector x Element FMUL instruction to improve speeds slightly.
Should give ~3cycle improvement per quantized loadstore done.
2015-02-16 16:51:39 -06:00
Ryan Houdek b4b03641b3 [AArch64] Implement vertex loader recompiler.
Shows a noticeable reduction in time spent in the vertex loader.
2015-02-16 16:51:32 -06:00
magumagu f316265973 Fix the addresses of MMIO registers.
MMIO registers are located at 0x0C000000 and 0x0D000000, not 0xCC000000.
The 0xCC000000 addresses are just an artifact of address translation.
2015-02-15 18:29:37 -08:00
magumagu 5b6a947e8f Merge pull request #2035 from magumagu/remove-bat-option
Remove the BAT checkbox/setting/implementation.
2015-02-15 17:27:18 -08:00
Pierre Bourdon 0148deb78c Merge pull request #2061 from phire/make-things-better
Cleanup DotProduct function to make it more readable.
2015-02-16 00:57:07 +00:00
Scott Mansell 43dfec07c9 Cleanup DotProduct function to make it more readable. 2015-02-16 13:53:58 +13:00
Scott Mansell 7add7b685f Remove unneeded spaces from code.
Line now matches the style of the rest of the function.
2015-02-16 12:59:45 +13:00
Lioncash 16a6392308 Merge pull request #2054 from lioncash/disable
DolphinWX: Change Enable(false) calls into Disable() where possible
2015-02-15 13:26:44 -05:00
Markus Wick f38b3ace38 Merge pull request #2038 from magumagu/disable-thread-safety-checks
Disable thread safety assertions added in PR1987.
2015-02-15 10:33:19 +01:00
skidau d601657c99 Merge pull request #2045 from greyrogue/master
Add Datel AGP save commands for SRAM/FRAM.  Improve EEPROM.
2015-02-15 12:57:58 +11:00
Pierre Bourdon b7916f9655 Merge pull request #2057 from lioncash/busy
DolphinWX: Remove unnecessary wxBeginBusyCursor and wxEndBusyCursor calls
2015-02-15 01:54:59 +00:00
greyrogue 2d4aa2a195 Add save commands for SRAM/FRAM. Improve EEPROM.
Handle possible endian file read issues at file access time instead of
using Swap64 on every access.
Code comments and clean up.
2015-02-14 20:36:26 -05:00
skidau 72e8e78ec8 Merge pull request #2037 from magumagu/illegal-inst-handling
Improve illegal instruction handling.
2015-02-15 12:34:08 +11:00
skidau 32d8f887fe Merge pull request #2032 from mathieui/update-libusb-externals
Update the libusb in externals to 1.0.19 (latest)
2015-02-15 12:32:10 +11:00
Lioncash 537ad96ece DolphinWX: Remove unnecessary wxBeginBusyCursor and wxEndBusyCursor calls
The UI greys all buttons when shutting down, so it's sufficient as a visual cue
2015-02-14 19:43:59 -05:00