CarlKenner
fb370110dc
Fix horribly broken accelerometer emulation.
...
It now emulates the least significant bits.
And it no longer treats maximum acceleration in one direction as being in the opposite direction.
2015-01-30 12:38:21 +10:30
skidau
855ad6f1d3
Fixed an overflow bug in Jit64.
2015-01-30 13:00:23 +11:00
skidau
a42fb80f6a
Added a hash key finder.
...
Fixed the memcard and AGP path parsing in Windows (the code is expecting '/' to be used as the DIR_SEP).
2015-01-30 13:00:23 +11:00
skidau
b92eb03d26
Merge pull request #1973 from degasus/master
...
OpcodeDecoder: Calculate decoding time for vertices
2015-01-30 12:58:52 +11:00
skidau
83a9f1b850
Merge pull request #1972 from lioncash/ref
...
EXI_DeviceAGP: Pass string by reference
2015-01-30 12:58:26 +11:00
degasus
20628b6e5d
OpcodeDecoder: Calculate decoding time for vertices
2015-01-29 19:55:28 +01:00
Ryan Houdek
a2b872b9da
Merge pull request #1983 from Sonicadvance1/remove_comment
...
Remove an old outdated comment that makes no sense.
2015-01-29 09:51:16 -06:00
Ryan Houdek
9b4a896353
Remove an old outdated comment that makes no sense.
...
This comment was left over from a long time ago. It is no longer true.
2015-01-29 09:40:22 -06:00
Ryan Houdek
631c8a981e
[AArch64] Minor performance improvements to paired stores.
...
We can combine these two ST1 calls in to a single ST1 call.
Saves a few cycles in paired stores
2015-01-29 06:07:00 -06:00
Ryan Houdek
235f6c2445
[AArch64] Don't flush VFP register to stack when not needed.
2015-01-29 06:07:00 -06:00
Ryan Houdek
c8c062fa96
[AArch64] Add support for MMIO loads.
...
Should give a small performance benefit.
2015-01-29 06:06:54 -06:00
Ryan Houdek
1c388b6c37
Fix clang on x86_64.
...
If we are compiling in the CRC32 hash, clang has an issue with casting a s32 to a u64.
Change our lens argument to a unsigned integer to fix the issue.
2015-01-29 01:55:20 -06:00
Ryan Houdek
8c53b88cc3
[AArch64] Implement a way to call lambdas in the emitter
2015-01-29 01:50:11 -06:00
Rohit Nirmal
5203c4ef7b
Silence -Wunused-variable warning.
2015-01-28 18:09:07 +00:00
Lioncash
cf156d4d37
InputConfigDiag: Fit buttons to their text
...
Fixes slight sizing issues on high DPI displays.
2015-01-28 13:07:17 -05:00
Markus Wick
109fa8c2c8
Merge pull request #1800 from randomstuff/jit-register
...
Add support of more JIT-compiled code for profiling
2015-01-28 13:23:32 +01:00
Gabriel Corona
c3777bbd69
JitRegister: TrampolineCache
2015-01-28 10:41:45 +01:00
Gabriel Corona
329834f653
JitRegister: JitAsm
2015-01-28 10:41:03 +01:00
Gabriel Corona
3c14930a0a
JitRegister: JitAsmCommon
...
Allows profiling/debugging tools to know about JITed code.
2015-01-28 10:40:05 +01:00
Gabriel Corona
a4adfe194a
JitRegister: overload Register with a [start,end) variant
2015-01-28 09:50:19 +01:00
Gabriel Corona
a957f93532
Use printf-like format in JitRegister::Register
...
The API is cleaner (no more magic default parameter) and more
extensible like this.
2015-01-28 09:47:08 +01:00
Markus Wick
eedc7bb582
Merge pull request #1975 from Tilka/fix_warning
...
CoreTiming: fix warning
2015-01-28 09:33:39 +01:00
Tillmann Karras
257deb7886
CoreTiming: fix warning
2015-01-28 08:27:14 +01:00
magumagu
0030ad9ecf
Fix D3D regression from PR1948.
...
Make sure we don't have a texture bound as both an ShaderResourceView and
a RenderTargetView; this causes rendering glitches.
This isn't really the right place to do this... but I'm not sure
how the code should be structured.
2015-01-27 18:25:35 -08:00
Markus Wick
beaa9905a6
Merge pull request #1966 from magumagu/unify-efb-encode
...
Unify EFB encoding shader generation
2015-01-27 23:14:18 +01:00
Markus Wick
da31314775
Merge pull request #1970 from magumagu/d3d-cleanup
...
D3D: delete unnecessary code.
2015-01-27 22:26:46 +01:00
Lioncash
7dc5bc622f
EXI_DeviceAGP: Pass string by reference
2015-01-27 10:15:27 -05:00
Markus Wick
43605f8716
Merge pull request #1948 from magumagu/remove-efb-cache
...
Remove EFB to RAM cache, and simplify code.
2015-01-27 09:42:15 +01:00
Markus Wick
8eda3ca844
Merge pull request #1956 from Tilka/vertex_loader_jit
...
VertexLoader: clean up and fix some problems
2015-01-27 09:15:09 +01:00
skidau
c20ef8bb8c
Merge pull request #1919 from skidau/AGP
...
Added support for AGP. Original patch by GreyRogue.
2015-01-27 13:25:14 +11:00
skidau
61c04de7ee
Added the ability to map gamepad buttons to hotkeys.
2015-01-27 12:24:47 +11:00
Tillmann Karras
3dbd6cd384
VertexLoaderX64: save XMM0 if the ABI requires it
2015-01-26 22:24:06 +01:00
Tillmann Karras
8416a86b6d
VertexLoaderBase: fix crash on invalid formats
2015-01-26 22:24:06 +01:00
Tillmann Karras
66f28707e7
VertexLoader: small clean up
2015-01-26 22:24:06 +01:00
magumagu
897b678d24
D3D: delete unnecessary code.
2015-01-26 10:58:32 -08:00
JosJuice
521ccd7b44
VolumeWiiCrypted: Decryption optimization
...
The block doesn't have to be read if it already is in m_pBuffer.
2015-01-26 15:59:25 +01:00
Ryan Houdek
7df55d220f
Merge pull request #1967 from Sonicadvance1/Android_settings
...
[Android] Change some configuration options.
2015-01-26 05:30:35 -06:00
Markus Wick
53a9df10f9
Merge pull request #1817 from Armada651/custom-anaglyph
...
PostProcessing: Add support for user-supplied anaglyph shaders.
2015-01-26 11:08:29 +01:00
magumagu
9dbb9bf3b5
Make sure EFB2RAM buffer is wide enough for new coordinate system.
2015-01-25 23:32:32 -08:00
magumagu
b56025e6eb
Don't use boolean negation.
2015-01-25 23:28:59 -08:00
magumagu
33259c272b
Remove some debugging junk.
2015-01-25 23:11:36 -08:00
magumagu
cb05730127
Use linear sampling in ScaleByHalf mode.
2015-01-25 23:05:23 -08:00
magumagu
92189823f3
Fix RGBA8 encoding.
2015-01-25 22:53:30 -08:00
Ryan Houdek
983c7f4f21
[Android] Select the AArch64 recompiler core by default if shown to support ARMv8.
2015-01-26 00:50:25 -06:00
magumagu
1ee09ced0a
Fix OpenGL coordinate computation.
2015-01-25 21:38:30 -08:00
magumagu
cb5d3fce4f
Fix stupid mistake.
2015-01-25 21:20:25 -08:00
Ryan Houdek
5ba1319abb
Merge pull request #1953 from Sonicadvance1/AArch64_fix_paired_loadstores
...
[AArch64] Fix all of the paired store instructions.
2015-01-25 23:07:44 -06:00
Ryan Houdek
c340a324bc
Merge pull request #1947 from Sonicadvance1/AArch64_tu_tl_merge
...
[AArch64] Implement TU/TL merging.
2015-01-25 23:07:32 -06:00
magumagu
b0b99b6922
Fix shader so it's possible to use with D3D Map().
...
Well, that's not strictly true, but trying to memcpy between two buffers
using different row lengths and different strides is at minimum extremely
unintuitive.
2015-01-25 19:57:09 -08:00
magumagu
6c1bdfe04c
More work.
2015-01-25 19:57:07 -08:00
Rohit Nirmal
51b27c5481
Fix building with PCH disabled.
2015-01-25 21:40:31 -06:00
Pierre Bourdon
1e809d9c11
Revert "Merge pull request #1903 from RisingFog/libav"
...
This reverts commit 34079a0037
, reversing
changes made to 3274df7158
.
2015-01-26 02:35:29 +01:00
skidau
34079a0037
Merge pull request #1903 from RisingFog/libav
...
Use ffmpeg for Windows Video Dumping instead of VFW
2015-01-26 12:03:44 +11:00
Ryan Houdek
3274df7158
Merge pull request #1961 from Sonicadvance1/AArch64_game_fixes
...
[AArch64] Fix a load of games.
2015-01-25 18:26:42 -06:00
Ryan Houdek
b1fc18cbaa
Merge pull request #1958 from Sonicadvance1/Rearchitect_asmcommon
...
Rearchitect a bit of our AsmCommon routines.
2015-01-25 18:26:17 -06:00
Ryan Houdek
d291148016
[AArch64] Implement TU/TL merging.
...
Basically stolen from the x86 recompiler. Works well on AArch64 as well!
2015-01-25 18:05:33 -06:00
magumagu
ef75f3005d
WIP.
2015-01-25 15:49:35 -08:00
Ryan Houdek
f24c466e7e
[AArch64] Fix AArch64 instruction encoding.
2015-01-25 17:26:18 -06:00
Jules Blok
5c4ee2f71e
PostProcessing: Move default pixel shader to PostProcessingShaderConfiguration.
...
Reduces code complexity and fixes a bug where the shader is not properly invalidated.
2015-01-25 23:08:49 +01:00
Ryan Houdek
98fe869e39
Merge pull request #1962 from rohit-n/build-pch
...
Fix building with PCH disabled.
2015-01-25 15:38:20 -06:00
Jules Blok
fc46d460f9
VideoConfigDiag: Allow anaglyph shader to be turned off.
...
Also hard-code the default shader.
2015-01-25 22:27:17 +01:00
Jules Blok
262c3b19ec
PostProcessing: Add support for user-supplied anaglyph shaders.
...
There are lots of different anaglyph glasses out there and there may be even more creative uses for stereoscopic post-processing shaders.
2015-01-25 22:07:03 +01:00
Rohit Nirmal
d10b4d9b8b
Fix building with PCH disabled.
2015-01-25 11:34:22 -06:00
Pierre Bourdon
a93433a860
Merge pull request #1960 from phire/zfreeze-buffer-underrun
...
Fix a buffer underrun in CalculateZSlope.
2015-01-25 18:18:49 +01:00
Ryan Houdek
e4e08b0596
[AArch64] Make sure to load the full destination register on float instructions.
...
With the float instructions that only affect the lower 64bits of the destination register, we need to make sure to load the full 128bit register.
This ensures that we aren't saving garbage in to the top 64bits.
2015-01-25 03:17:46 -06:00
Ryan Houdek
2483f7b359
[AArch64] Fix addcx.
2015-01-25 03:17:14 -06:00
Ryan Houdek
6791a808b6
[AArch64] Fix addzex.
2015-01-25 03:16:57 -06:00
Ryan Houdek
84b90ad1c6
[AArch64] Fix cmp
2015-01-25 03:16:29 -06:00
Scott Mansell
61215e7180
Fix a buffer underrun in CalculateZSlope.
2015-01-25 20:31:20 +13:00
skidau
0aef1d27aa
Merge pull request #1933 from magumagu/intellisense-error-fix
...
Fix Intellisense error spam on Visual Studio.
2015-01-25 15:44:30 +11:00
skidau
d7a8752228
Merge pull request #1920 from CarlKenner/fix3dxfb
...
Fix 3D XFB
2015-01-25 15:44:06 +11:00
Ryan Houdek
12b9ada268
Rearchitect a bit of our AsmCommon routines.
...
JitCommon is becoming a cluster of x86 specific things and things that are common to multiple recompilers.
This overlap is beginning to cause us issues.
Begin by breaking out the common ASM arrays to have their own file and move the x86 specific routines to their own folder.
2015-01-24 20:06:15 -06:00
Benjamin Przybocki
4f324ad742
Clean Up
2015-01-24 17:10:21 -06:00
Lioncash
9cdfe889af
Coding style cleanup from the zfreeze merge
2015-01-24 15:16:48 -05:00
Markus Wick
ae514cb0f2
Merge pull request #1955 from degasus/master
...
TexCache: Rewrite the texID generation for paletted textures
2015-01-24 15:37:25 +01:00
degasus
51990fcdfa
TexCache: Rewrite the texID generation for paletted textures
...
This changes the behavior if both texture are available. The old code did
try to load the modfied texID, the new code tries the unmodified texID first.
2015-01-24 13:58:20 +01:00
Markus Wick
4f6d0049a7
Merge pull request #1951 from Sonicadvance1/Remove_old_defines
...
Remove an old GLES define that I missed.
2015-01-24 13:38:26 +01:00
Tony Wasserka
43036af944
Merge pull request #1812 from phire/real_zfreeze
...
Add proper zfreeze support.
2015-01-24 13:29:57 +01:00
Ryan Houdek
93f3816eae
[AArch64] Fix all of the paired store instructions.
...
These had some minor errors in them that I discovered with the hardware test and Viewtiful Joe.
All work as they should now.
2015-01-23 23:18:49 -06:00
Dolphin Bot
4e9497cdb8
Merge pull request #1057 from phire/IsMMIOAddress2
...
Further improvements to IsMMIOAddress (Includes tests!)
2015-01-24 05:55:35 +01:00
Scott Mansell
fe28d1476a
Make the IsMMIOAddress function easier to read, add tests.
...
This also makes IsMMIOAddress more restrictive.
2015-01-24 17:24:40 +13:00
Ryan Houdek
088b6b2ec3
Merge pull request #1081 from phire/jitil-float-mem-opts
...
JitIL Float load/store optimizations.
2015-01-23 21:47:03 -06:00
Scott Mansell
5c34766809
Propagate elf loading failure up.
...
Also fix mistake in error message.
2015-01-24 16:28:34 +13:00
magumagu
3aa3002010
Fix Intellisense error spam on Visual Studio.
...
Intellisense doesn't like defines in PCH files, and it doesn't like the deleted
constructor for BitField. (I think it's being overly strict about the
"must have no non-default constructors" rule for classes in unions.)
2015-01-23 19:15:25 -08:00
Scott Mansell
3106b20fbe
JITIL: Improve address calulation for float loads/stores.
...
For floating loads with a known address, this eliminates the pattern of:
mov r12d, 80001014
mov rdx, r12d
mov rdx, dword ptr [rbp+rdx]
and generates a nice simple:
mov rdx, dword ptr [rbp+00001014]
2015-01-24 16:08:50 +13:00
Scott Mansell
75815b9b0d
Added a comment to document an issue with the codegen.
2015-01-24 16:08:26 +13:00
Scott Mansell
b7d4ff679a
IsWiiElf: Optimise inner loop.
...
Instead of swaping each word of the elf code section(s) looking
for a match to our pattern, we swap the pattern just once (at
compile time) and test against our swapped pattern.
2015-01-24 15:41:32 +13:00
Scott Mansell
2bf052d8b9
ElfReader: Clean up elf loader code.
...
* Don't claim to support any features we don't, like relocation
* Actually zero-out BSS sections, as memory might not be already
zeroed.
* Deleted commented out code.
* Removed GetPointer, updated to more modern interface methods.
* Updated pointer types style from "u32 *x" to "u32* x"
2015-01-24 15:41:32 +13:00
Scott Mansell
1e5762b163
BootUp: Clean up elf BootUp code.
...
* The file already exsists, otherwise we wouldn't have gotten
this far in the boot.
* We have already checked if it's a Wii or GameCube elf,
besides, it's too late to change our minds now anyway.
* On Wii - Don't call EmulatedBS2, it can never succeed as
it knows nothing about booting elfs. Just call the
SetupWiiMemory directly if needed.
* On GameCube - We still call EmulatedBS2_GC, but we stop
it from running Apploader, which might boot something
unexpected from the default iso or DVD root folder.
2015-01-24 15:41:28 +13:00
Scott Mansell
2642c3f73b
BootElf: Use unique_ptr<u8 []> instead of vectors.
2015-01-24 15:32:38 +13:00
Scott Mansell
14baf038e7
Stop doing nastly shit to OpenGL stream buffers.
...
Instead we keep the loaded vertices in CPU memory.
2015-01-24 14:41:51 +13:00
skidau
f1a4b98d36
Merge pull request #1879 from magumagu/idle-exception-check
...
For idle loops, perform an exception check before CoreTiming::Advance.
2015-01-24 12:28:44 +11:00
skidau
7dafad5a8b
On DCBZ, mask the memory address to ensure that the address is within physical memory. The AGP disc DCBZ's against an out of bounds physical address.
2015-01-24 12:19:33 +11:00
skidau
8a561b57c3
Added EEPROM saving to file.
2015-01-24 12:15:48 +11:00
skidau
a7299a7fff
Added support for AGP. Original patch by GreyRogue.
2015-01-24 12:13:23 +11:00
skidau
18cee2dcc7
Added second parameter for the eject disc via StopMotor DI command. The AGP disc expects the disc to still be readable after sending an eject command.
2015-01-24 12:13:23 +11:00
Ryan Houdek
189528171b
Remove an old GLES define that I missed.
2015-01-23 14:30:23 -06:00
magumagu
6659c15bed
Remove EFB to RAM cache, and simplify code.
2015-01-23 10:48:15 -08:00
Scott Mansell
5510c86b81
Move Zfreeze code out individual backends into videoCommon
...
Also:
* Implement support for per-vertex PosMatrixIndex
* Only update zslope constant once when zfreeze is activated.
* Added a bunch of comments.
2015-01-24 03:22:27 +13:00
skidau
0b1d8fae1b
Merge pull request #1926 from skidau/emu-wiimote-speaker-adpcm-sample-rate
...
Fixed the emulated wiimote speaker's ADPCM sample rate. Patch by hk.konpie
2015-01-23 12:31:20 +11:00