degasus
3c65c5f2c5
AVIDump: Drop frames which are delayed over a savestate.
2016-11-04 18:39:50 +01:00
degasus
be29090aae
AVIDump: Add a struct for the state.
...
So AddFrame use no global state and can be threaded well.
2016-11-04 18:35:42 +01:00
degasus
dad5041737
AVIDump: Inline OSD error handling.
...
This fixes a review feedback in PR #4345 .
2016-11-04 18:03:14 +01:00
degasus
03d8efc270
AVIDump: Merge redundant variables.
...
They were always the same. We also don't scale at all.
2016-11-04 18:03:14 +01:00
degasus
112e18a5d1
AVIDump: Drop stored frame.
...
This used an invalid pointer, which was only valid within AddFrame.
This drops a feature which shall dump the last frame as it might was dropped before.
A good implementation however should "overwrite" the last frame if the time matches.
But this needs to delay every frame a bit.
2016-11-04 18:03:14 +01:00
degasus
abe9c30d3d
JitArm64: Also push/pop gpr.R(addr).
...
This fixes slowmem load instruction with update.
2016-11-02 22:38:03 +01:00
degasus
5a8c52ce3a
JitArm64: Fix srawx.
2016-11-01 11:55:06 +01:00
degasus
0a3e5a0fe8
JitArm64: srawix cleanups.
2016-10-31 23:40:09 +01:00
degasus
c69903eb42
JitArm64: CR field cleanup.
2016-10-31 23:40:09 +01:00
degasus
3405f5ac1a
JitArm64: Optimize carry behavior of srawix.
2016-10-31 23:40:09 +01:00
degasus
0d78f5926f
JitArm64: Keep carry in the host flag for all integer instructions.
2016-10-31 23:40:08 +01:00
degasus
f449541e65
JitArm64: Implement derefered carry usage.
2016-10-31 23:40:08 +01:00
degasus
4d88f5410e
JitArm64: Store carry within the host carry flag.
2016-10-31 23:40:08 +01:00
degasus
041129fb34
JitArm64: Implement mcrxr.
2016-10-29 13:36:41 +02:00
degasus
293553f317
JitArm64: Implement subfzex.
2016-10-29 13:36:39 +02:00
degasus
f1a67bb1a2
JitArm64: Implement divwx
2016-10-29 13:35:23 +02:00
degasus
a8b1347ea9
JitArm64: Implement srawx.
2016-10-29 13:34:28 +02:00
degasus
332d51858a
JitArm64: Clean LSL 0.
...
This is a no-op in the instruction set.
2016-10-27 19:19:06 +02:00
degasus
8ad98d0046
ArmEmitter: Merge AddI2R helpers.
2016-10-27 19:19:06 +02:00
degasus
694e9b4132
JitArm64: ADDI2R optimizations 2.
2016-10-27 19:19:06 +02:00
degasus
1df694626d
JitArm64: Optimize addi2r & subi2r.
2016-10-26 21:54:13 +02:00
degasus
df250b84cc
JitArm64: Avoid MOVI2R is possible.
...
Just use all kind of ADDI2R, SUBI2R, ...
They have some optimizations internally.
2016-10-26 21:54:09 +02:00
degasus
1a8a25cc93
JitArm64: Drop two DUP() usages.
...
And replace them with the aarch64 feature FMUL.
This skips one instruction in rarely used PPC instructions.
thx @ HdkR for spotting it.
2016-10-25 22:26:54 +02:00
degasus
1cc1876002
Revert "Merge pull request #4286 from shuffle2/Aestek-clean-osd"
...
This reverts commit 5c0fa4db4f , reversing
changes made to b8731eb818 .
2016-10-15 12:44:37 +02:00
degasus
b8a1611f4a
Revert "Merge pull request #4287 from shuffle2/typo-fix"
...
This reverts commit 6bff97ea30 , reversing
changes made to 5c0fa4db4f .
2016-10-15 12:33:27 +02:00
degasus
df5eff9ab7
VideoSW: Use VideoCommon frame dumping.
2016-10-11 22:32:06 +02:00
degasus
22681ad975
SyncGPU: Fix savestate.
2016-10-11 18:29:53 +02:00
degasus
9f264c0872
AVIDump: Move CoreTiming into caller.
2016-10-10 12:03:18 +02:00
degasus
64927a2f81
Renderer: Merge screenshot logic into VideoCommon.
2016-10-08 19:38:57 +02:00
degasus
21e42c68c4
Renderer: Remove write-only variable.
...
Sorry, merge failure.
2016-10-08 18:26:43 +02:00
degasus
db0509560e
AVIDump: Hard code rgba.
2016-10-08 18:16:32 +02:00
degasus
0864ef4352
VideoCommon: Add custom stride for framedumping.
2016-10-08 15:44:54 +02:00
degasus
1ef5ba0c53
D3D: Skip redundant format convertions.
2016-10-08 15:40:49 +02:00
degasus
b5a91e1dfa
Framedumps: Add finish() function to limit memory lifetime.
2016-10-08 15:39:22 +02:00
degasus
ebc617882b
VideoCommon: Drop RepeatFrameDumpFrame helper.
...
This was needed with fixed framerate dumping. As we now synchronize the frames, the last one will just get padded.
2016-10-08 15:39:21 +02:00
degasus
d078309827
ImageWriter: Don't use inplace alpha truncation.
...
This may lead to errors in the D3D backend, as we overwrite read-only memory.
2016-10-08 12:02:49 +02:00
degasus
8c999f9ee8
VideoCommon: Mark framedump variables as private.
...
And rename them to the new naming scheme.
2016-10-07 23:17:21 +02:00
degasus
e82cf46436
Vulkan: Use VideoCommon framedump helpers.
2016-10-07 23:17:16 +02:00
degasus
6b08830a95
D3D12: Use VideoCommon framedump helpers.
2016-10-07 23:15:10 +02:00
degasus
64b648f6c8
D3D: Use VideoCommon framedumping helpers.
2016-10-07 23:10:36 +02:00
degasus
a530708bb1
OGL: Use VideoCommon framedump helpers.
2016-10-07 23:09:10 +02:00
degasus
f45ddddf1c
VideoCommon: Add shared framedumping code.
2016-10-07 23:07:40 +02:00
degasus
34d733d376
OGL/Render: Drop write-only variable.
2016-10-07 21:44:52 +02:00
degasus
05eff01229
Android: Update the gradle file to use android studio 2.2 cmake.
2016-10-05 23:44:10 +02:00
degasus
6d2827ff6b
PixelShader: Drop redundant warning.
...
This warning was raised both on UID generation and on shader generation.
2016-10-04 10:13:46 +02:00
degasus
083be0832f
LightingShader: Drop xfmem usage.
...
Our shaders must only depend on the UID, not on any global state.
2016-10-04 10:13:46 +02:00
degasus
829fc8f0ad
PixelShaderGen: Drop dstAlphaMode constant in shader generation.
...
It is already stored within the UID.
2016-10-04 10:13:46 +02:00
degasus
40aa54447d
Jit64: Drop very outdated comment about idle skipping.
2016-10-04 08:31:43 +02:00
degasus
0c67297ea0
ConfigManager: Drop SkipIdle option.
...
This option is safe + deterministic, so let's always enable it.
2016-10-04 08:31:43 +02:00
degasus
12f050bb8e
Fifo: Fix SyncGPU.
2016-10-03 10:38:16 +02:00
degasus
f7e07f8f3b
MMU: Don't generate virtual memory area on 32bit builds.
...
There is no JIT, so no need for fastmem. This memory won't be used at all.
2016-10-03 10:26:23 +02:00
degasus
0de1c6c99c
MMU: Sort physical access by common access pattern.
2016-10-03 10:26:23 +02:00
degasus
d1488d0dc4
MMU: Drop force inline usage.
...
This is not needed, the compiler will do it on it's own if required.
2016-10-03 10:26:19 +02:00
degasus
4b3e388bd7
Jit64: Fix merge failure of dynamic_bat.
2016-10-03 10:15:52 +02:00
degasus
ebc47a4b36
Memmap: Drop redundant global bFakeVMEM flag.
2016-10-03 10:15:52 +02:00
degasus
732e0ff03a
VertexLoaderArm64: Mark register allocation as static const.
2016-09-26 22:19:07 +02:00
degasus
7c9bba2213
Arm64Emitter: Fix std::array initializer.
2016-09-26 22:17:25 +02:00
degasus
11bfc7fe77
JitArm64: Move memcheck check into fallback code.
...
So now each implemented slowmem instruction should check for DSI on each own.
2016-09-26 22:17:25 +02:00
degasus
39c08694a0
JitArm64: Optimize addic.
...
If simm < 0, it's faster to call MOVI2R(-simm) as only the lower bits are set.
2016-09-26 22:17:25 +02:00
degasus
1f94abea18
JitArm64: Optimize logic immediate instructions.
...
Try to use also the immediate instruction on ARM.
2016-09-26 22:17:25 +02:00
degasus
258f48572d
VertexLoaderJit: Fix out-of-bounds access for zfreeze.
...
This fixes a GCC6.1 warning.
2016-09-17 16:47:12 +02:00
degasus
735da0ed69
Fifo: Use SyncGPU timings for single core.
2016-09-17 16:25:13 +02:00
degasus
a0dcebba37
JitArm64: replace MOVI2R with MOVP2R when possible.
...
This skips the (u64) cast.
2016-09-10 11:01:18 +02:00
degasus
789e776a47
JitArm64: Fix block linking.
...
Double negation fail, sorry.
2016-09-10 11:01:18 +02:00
degasus
be763949bc
JitArm64: Drop 32bit alignment restriction of the memarea.
...
ADD() is almost as fast as MOVK(), and we already have a register for the memory location. Let's just use it.
2016-09-10 11:01:18 +02:00
degasus
a4d72ac6e3
MMU: Add small BAT comment.
2016-09-06 08:43:31 +02:00
degasus
ce5dac11a2
Boot: Update BAT lookup table on booting ELF.
2016-09-06 08:43:31 +02:00
degasus
6493ea1eb9
MMU: Coding style fixes.
2016-09-06 08:43:31 +02:00
degasus
ae1421b606
JitArm64: Rebase failure.
2016-09-06 08:43:31 +02:00
degasus
2925a5b219
Jit64: Simplify dcbz.
2016-09-06 08:43:31 +02:00
degasus
ef0dcfe558
MMU: Small fixes.
2016-09-06 08:43:31 +02:00
degasus
82bdc4ef86
PixelEngine: Delay token updates by events.
...
To still get a speedup, mark if already an event is queued.
If so, don't raise a new event.
2016-08-10 13:24:57 +02:00
degasus
a051db9792
PixelEngine: Cleanup PE Token.
...
This also affects the behavior a bit, it should now fit better to the one of the commonly more used PE Finish flag.
2016-08-10 10:07:53 +02:00
degasus
367e1b4d4c
PixelEngine: Drop write-only variables.
2016-08-10 10:07:53 +02:00
degasus
447b23e09a
JitArm64: Load memory base based on MSR.DR.
2016-08-08 20:19:57 +02:00
degasus
77cfd0d4fd
JitArm64: Fix rfi
2016-08-08 20:19:57 +02:00
degasus
85affe995e
JitCache: Do not use block 0.
...
This ID is reserved for invalid blocks. So this block can't be invalidated.
2016-08-06 14:16:13 +02:00
degasus
814f29b25b
JitCache: Implement block unlinking.
2016-08-06 11:41:39 +02:00
degasus
f9e5660106
JitCache: Implement block unlinking.
2016-07-16 09:24:10 +02:00
degasus
3b3cbc4aab
BusyLoopTest: Only run 10 times.
...
Running this test 100 times is not worth to spend 1 second.
2016-06-27 22:06:52 +02:00
degasus
d79aeaa1e9
VideoCommon: Drop GetConfigName.
...
We're past 5.0 now, so there is no need to look for old inis.
2016-06-26 12:34:59 +02:00
degasus
5f2f462067
VideoBackends: Merge ShowConfig functions.
2016-06-26 12:34:59 +02:00
degasus
7833ff25df
VideoBackends: Merge Initialize and Shutdown functions.
2016-06-26 12:34:59 +02:00
degasus
ca96302a36
PowerPC: Dedoublify CheckExternalExceptions.
2016-06-26 11:29:25 +02:00
degasus
4c5f8f9c91
CoreTiming: Drop ProcessFifoWaitEvents.
...
globalTimer is only written in Advance, so this function has no function.
2016-06-26 11:29:25 +02:00
degasus
fdbda7b7dd
Null: Create Visual Studio project file.
...
Why is this so stupid on linux.....
2016-06-25 22:40:23 +02:00
degasus
59e4882af3
nullvideo: initial release of null video backend
2016-06-25 22:40:23 +02:00
degasus
c5e8238cc7
JitArm64: Fix dispatcher with MMU.
2016-05-20 08:32:16 +02:00
degasus
8e902abca3
JitArm64: Implement DSI exception.
...
Ok, this falls back on all memory instructions, but it's a way to start.
2016-05-20 08:32:16 +02:00
degasus
5db61b4bbb
JitArm64: Fix broken block handling.
2016-05-19 19:20:44 +02:00
degasus
37e2e92e33
JitArm64: Handle ISI excepction.
2016-05-19 19:20:44 +02:00
degasus
95ebb2991f
JitArm64: Check Exceptions on mtmsr.
2016-05-19 19:20:44 +02:00
degasus
782c68cf00
JitArm64: Clean up LWZ idle skipping.
2016-05-19 19:20:44 +02:00
degasus
c04cff57da
GLExtensions: Fix OpenGL ES 3.2 handling.
2016-05-18 23:22:46 +02:00
degasus
3a452f3cc5
VideoSW: Fix XFB config.
2016-05-18 18:37:44 +02:00
degasus
fa3526962d
VideoSW: Drop Update in XFB copy.
2016-05-18 18:37:44 +02:00
degasus
637851fce0
JitArm64: optimize bclrx
...
the unconditional path is the most common, so no need to switch to far code here.
2016-05-14 00:05:55 +02:00
degasus
b6f16352e4
JitArm64: Check downcount on block linking.
...
This skips one B() call.
2016-05-14 00:04:58 +02:00
degasus
10e716c623
JitCommon: Pass jit block instead of host pointer on linking.
...
So the JIT may do more fancy stuff.
2016-05-14 00:04:58 +02:00
degasus
cf3c65fbd0
JitArm64: Use B() instead of BR() to jumo to ASM.
...
Avoid indirect jumps as good as possible. This is a noticeable speedup.
2016-05-14 00:04:58 +02:00