Commit Graph

8262 Commits

Author SHA1 Message Date
Henrik Rydgård
168573e711 Merge pull request #8740 from unknownbrackets/ir-vfpu
More VFPU comments, implement vmscl
2016-05-15 10:08:22 +02:00
Unknown W. Brackets
e140d36818 ir-jit: Oops, fix matrix scale + tranpose. 2016-05-15 00:59:17 -07:00
Henrik Rydgård
205419a72e Merge pull request #8741 from unknownbrackets/ir-alu
IR the remaining ALU ops, correct div by zero
2016-05-15 09:43:41 +02:00
Unknown W. Brackets
c606f64f71 jit-ir: Add div/divu instructions. 2016-05-14 19:23:52 -07:00
Unknown W. Brackets
6413b44434 jit-ir: Enable IR for madd(u)/msub(u). 2016-05-14 19:23:51 -07:00
Unknown W. Brackets
a05ae2a0a6 Correct divide by zero HI/LO values a bit.
Interpreter is now correct, but it's probably not all that important to
get right in jit.
2016-05-14 19:23:50 -07:00
Unknown W. Brackets
4ac773e8b4 jit-ir: Implement bit reverse instruction. 2016-05-14 18:21:42 -07:00
Unknown W. Brackets
8a3dce3b8b jit-ir: Comment most of the vfpu ops. 2016-05-14 17:35:04 -07:00
Unknown W. Brackets
e1dbcd724e jit-ir: Oops, correct vtfm for transposed case.
The ones that are aligned are here in this case.  Fixes crash in Crisis
Core.
2016-05-14 16:20:39 -07:00
Unknown W. Brackets
01d63a1a9d jit-ir: Implement vmscl. 2016-05-14 16:20:21 -07:00
Unknown W. Brackets
2e097b8996 Oops, typos. 2016-05-14 14:28:05 -07:00
Unknown W. Brackets
d5d77b41f9 jit-ir: Properly flip vtfm simd cases.
Disable the broken one and add clearer comments.
2016-05-14 14:23:18 -07:00
Unknown W. Brackets
7c9f368d63 jit-ir: Add some descriptions of mnemonics.
Sometimes I forget what vhdp etc. meant, let's make the VFPU code a bit
more accessible.
2016-05-14 14:21:53 -07:00
Henrik Rydgård
8f430e9631 Merge pull request #8736 from unknownbrackets/ir-clear
Clear emuhacks on IR block destroy and save state
2016-05-14 18:51:39 +02:00
Unknown W. Brackets
1f28d802a3 FreeBSD buildfix.
We need Common to have the right _M_SSE define.  Also, let's not define
SSE4 until we need it, since we might need ifs.
2016-05-14 09:06:56 -07:00
Unknown W. Brackets
e37777648e jit-ir: Restore emuhacks before saving state.
Let's just ask jit to do this, not its block cache directly.
2016-05-14 08:59:44 -07:00
Unknown W. Brackets
b74df87db0 jit-ir: Clear emuhacks on block destroy. 2016-05-14 08:40:53 -07:00
Henrik Rydgard
0541fe36df Symbian buildfix, fix for fpu test 2016-05-14 15:26:43 +02:00
Henrik Rydgard
b612806ee4 Remove accidentally added file 2016-05-14 14:32:43 +02:00
Henrik Rydgard
64eda6a4ec IR: Split Syscall into Syscall and ExitToPC, so we can put ApplyRoundingMode in between. 2016-05-14 14:32:22 +02:00
Henrik Rydgard
91bc3c31a5 Warning fixes 2016-05-14 14:01:27 +02:00
Henrik Rydgard
7a7c3b9b9f More VFPU, vmmul thoughts 2016-05-14 14:00:01 +02:00
Unknown W. Brackets
efc8a8e353 Hack to make Symbian build. 2016-05-13 23:56:17 -07:00
Henrik Rydgard
b7091a8f5d Simplifications and fixes 2016-05-13 21:02:23 +02:00
Henrik Rydgard
5923013d65 Simple workaround for timing issue with coreState after syscall.
Also fixes off by one in ForceCheck.
2016-05-13 20:21:19 +02:00
Henrik Rydgard
5b2504120d Optimize some common prefixes 2016-05-13 20:15:20 +02:00
Henrik Rydgard
91a6cf5e44 Add a couple more passes (2-op, optimize f<->v fp moves) 2016-05-13 20:14:03 +02:00
Henrik Rydgard
f636b2a315 Minor build and other fixes 2016-05-13 19:31:27 +02:00
Unknown W. Brackets
066b0b7fdf jit-ir: Optimize out beql; break; sequences.
These are often used following divs, and are harmless.  Things get a bit
easier if we just never compile them.
2016-05-13 07:59:39 -07:00
Unknown W. Brackets
7b43e0e59d jit-ir: Add nan/inf compares.
Without this, Gods Eater Burst crashes before going in game.
2016-05-12 22:53:21 -07:00
Unknown W. Brackets
9e3572dc63 jit-ir: Improve vidt to handle more cases. 2016-05-12 22:40:26 -07:00
Unknown W. Brackets
f52120353b jit-ir: Apply prefixes for vector init ops.
Without this, Gods Eater Burst is horribly broken.
2016-05-12 22:29:31 -07:00
Unknown W. Brackets
c11c0465de jir-ir: Correct vftm SIMD regs. 2016-05-12 21:29:58 -07:00
Unknown W. Brackets
1ddb2fbfb9 jit-ir: Fix non-SSE Vec4Scale. 2016-05-12 21:02:56 -07:00
Unknown W. Brackets
57b3dbff7e jit-ir: Avoid flushing on a few Vec4 ops. 2016-05-12 21:01:46 -07:00
Unknown W. Brackets
a8126ca132 jit-ir: Add some missing CONDITIONAL_DISABLEs. 2016-05-12 20:56:47 -07:00
Unknown W. Brackets
29ed8d2201 jit-ir: ExitToReg doesn't write to registers. 2016-05-12 18:34:27 -07:00
Unknown W. Brackets
9f183c97ba jit-ir: Prevent reading ahead for each reg write. 2016-05-12 18:30:55 -07:00
Unknown W. Brackets
d06c6c080c jit-ir: Expand unused regs to regular GPRs. 2016-05-12 18:30:55 -07:00
Unknown W. Brackets
99468c6fc1 jit-ir: Optimize out unused temp regs.
This way, if constants have made the temp obsolete (common with ins, for
example), it won't even get set anymore.
2016-05-12 18:30:53 -07:00
Henrik Rydgard
7268abec61 IR: vcmp, vcmov, vhdp 2016-05-12 22:35:31 +02:00
Henrik Rydgard
1851458628 Bugfixes 2016-05-12 20:28:59 +02:00
Henrik Rydgard
c69a8c07dc Forgot this 2016-05-12 20:20:59 +02:00
Henrik Rydgard
850d0abc91 IR: More VFPU. Support normal fp compares. 2016-05-12 20:16:15 +02:00
Henrik Rydgard
182674cddf IR: SIMD another matrix orientation. Fix various issues. 2016-05-12 13:10:26 +02:00
Henrik Rydgard
cb251ea93f Crashfix in savestate (hmmmm...) 2016-05-12 12:18:12 +02:00
Henrik Rydgard
2cbfb192c4 IR: Lots more VFPU support, some with SIMD 2016-05-12 12:17:25 +02:00
Henrik Rydgard
219548b8e2 Prefix prep 2016-05-11 00:16:07 +02:00
Henrik Rydgard
b3dd36982f Prefix prep 2016-05-10 23:14:26 +02:00
Henrik Rydgard
db1d1ff9fd IR: Merge the FPU and VFPU instruction sets, no reason to keep them apart 2016-05-10 22:55:27 +02:00
Henrik Rydgard
45efcda6b1 IR: Some more VFPU 2016-05-10 21:50:08 +02:00
Henrik Rydgard
558bb197c7 More VFPU 2016-05-09 23:47:56 +02:00
Henrik Rydgard
a5d5c5ce2b Do the voffset remapping before the IR. This will let us easily add some virtual VFPU registers for the IR to the end, plus it's slightly faster. 2016-05-09 22:40:59 +02:00
Henrik Rydgard
28087a6088 IRFrontend shouldn't know about IRBlock 2016-05-09 20:18:22 +02:00
Henrik Rydgard
e711a47a75 Complete the separation of the IR compiler frontend from the "Jit" 2016-05-09 20:05:06 +02:00
Henrik Rydgard
e806c369b2 Separate the IR frontend from the IR "Jit" 2016-05-09 19:57:18 +02:00
Henrik Rydgard
6e44e97ffa Refactor prep: Split JitInterface into MIPSFrontendInterface and JitInterface 2016-05-09 19:41:39 +02:00
Henrik Rydgard
f50617d679 Skip const flush on set float constant 2016-05-09 18:47:53 +02:00
Unknown W. Brackets
eb6551d72a jit-ir: Correct downcount handling.
Oops, was wrong - already accounted for delay slots.  Clear so we don't
double count when emitting a syscall.

Fixes FF4 utility msg flickering.
2016-05-09 01:13:53 -07:00
Unknown W. Brackets
ccb8f8d77e jit-ir: Fix replacement hooks. 2016-05-09 00:36:38 -07:00
Unknown W. Brackets
f6d245f3c4 jit-ir: Remove redundant simplify pass.
This is just doing the same thing as the const folding pass, really.
2016-05-09 00:13:01 -07:00
Unknown W. Brackets
f638477b9a jit-ir: Add the rest to PropagateConstants.
Just for completeness.
2016-05-08 22:17:39 -07:00
Unknown W. Brackets
7ce923d01f jit-ir: Fix SetConstV.
Oops.
2016-05-08 22:11:53 -07:00
Unknown W. Brackets
6bd31ecb27 jit-ir: Flush consts better for a few f/v ops. 2016-05-08 21:37:46 -07:00
Unknown W. Brackets
5221a02db4 jit-ir: Propagate constants for shifts.
This might optimize away an IRTEMP_0 in such cases.
2016-05-08 19:11:58 -07:00
Unknown W. Brackets
a1b4b5170c jit-ir: Propagate constants even for overlaps. 2016-05-08 19:05:39 -07:00
Unknown W. Brackets
a22ff68e9e jit-ir: Skip flushing when updating PC. 2016-05-08 18:49:00 -07:00
Unknown W. Brackets
d09f3a22a8 jit-ir: Propagate single-op constants. 2016-05-08 16:21:17 -07:00
Unknown W. Brackets
0d7f151167 jit-ir: Add a utility func for applying passes. 2016-05-08 16:08:35 -07:00
Unknown W. Brackets
d19174b52b jit-ir: Skip const flush on downcount op.
This allows discarding more unused constants.
2016-05-08 14:56:43 -07:00
Henrik Rydgard
c7e4658b6d More constant propagation 2016-05-08 23:25:47 +02:00
Henrik Rydgard
d4480d50fd jit-ir: Less instructions cause flushing in constant propagation. 2016-05-08 23:25:08 +02:00
Unknown W. Brackets
5dbac165f4 Qt, gcc, and Symbian buildfixes. 2016-05-08 14:10:07 -07:00
Henrik Rydgard
4e52f613f1 Additional fixes and buildfixes 2016-05-08 22:23:51 +02:00
Henrik Rydgard
f8659b8e1e Move the IR interpreter out into its own file. Rename it in the UI. First CMake and Android fixes. 2016-05-08 22:06:13 +02:00
Henrik Rydgard
492ea5fac4 Address a bunch of comments, thanks for the review 2016-05-08 21:38:03 +02:00
Henrik Rydgard
3eb5480ade Initial VFPU 2016-05-08 13:32:22 +02:00
Henrik Rydgard
98113edbd4 More simplify pass 2016-05-08 11:29:11 +02:00
Henrik Rydgard
14df39d7c9 Fix IRTEMP clash bug. Add more cases to the constant propagation pass. 2016-05-08 10:36:37 +02:00
Henrik Rydgard
aae32bd929 ir-jit: Re-enable mult. Fix bvf/bvt 2016-05-08 02:47:19 +02:00
Henrik Rydgard
46e839b2b2 ir-jit: Fix bugs in rounding 2016-05-08 02:26:36 +02:00
Henrik Rydgard
e750987052 ir-jit: Fix bug in ext 2016-05-08 02:09:01 +02:00
Henrik Rydgard
7d4774db4c Fix wsbw 2016-05-08 02:08:25 +02:00
Henrik Rydgard
1a2edc67d0 Add support for float store/load 2016-05-08 02:03:11 +02:00
Henrik Rydgard
ce8aae5ed1 Make the IRJit core selectable in developer tools 2016-05-08 01:43:27 +02:00
Henrik Rydgard
09969c0156 Use the regcache in a new (incomplete) pass, PropagateConstants. 2016-05-08 01:06:07 +02:00
Henrik Rydgard
a33f8b68c6 ir-jit: Get rid of the regcache. Should be replaced with optimization passes. 2016-05-07 23:12:53 +02:00
Henrik Rydgard
750d520cc7 Initial work on mult and friends. Fix another bug. 2016-05-07 22:27:58 +02:00
Henrik Rydgard
3c5510e5a3 Disable debug file logging, fix issue with replacement functions, etc 2016-05-07 21:35:12 +02:00
Henrik Rydgard
38b7d89dfb Fix a performance issue in CallSyscall 2016-05-07 21:34:27 +02:00
Henrik Rydgard
12edfcea5a Enough to run cpu_alu.prx. 2016-05-07 21:00:30 +02:00
Henrik Rydgard
4acf85aa06 It's kind of starting to run 2016-05-07 17:37:19 +02:00
Henrik Rydgard
d399c4a470 Initial commit for IRJit 2016-05-07 13:58:29 +02:00
Henrik Rydgard
49a6a2f6cf Minor refactor - let's not access a global when we don't need to 2016-05-06 21:22:36 +02:00
Unknown W. Brackets
9280bb3eda Merge pull request #8715 from unknownbrackets/tex-replace
Initial texture replacement support
2016-05-01 09:58:16 -07:00
Unknown W. Brackets
2e1986d0c8 Fix a few reorder warnings. 2016-05-01 09:50:03 -07:00
Henrik Rydgård
b6d7aab8dc Merge pull request #8716 from hrydgard/remove-preprocessor-hacks
Remove preprocessor hacks around the JITs
2016-05-01 18:47:59 +02:00
Henrik Rydgard
ccce19e14a Fix accidentally truncated comment. 2016-05-01 18:47:32 +02:00
Unknown W. Brackets
994d2dd85e Skip video in replacement saving by default. 2016-05-01 08:58:14 -07:00
Unknown W. Brackets
c20075b0e0 Pass video info to texture replacements. 2016-05-01 08:54:43 -07:00
Unknown W. Brackets
f5b93bc6f0 Remove global num videos hack. 2016-05-01 08:53:48 -07:00
Unknown W. Brackets
329be68f57 Fix error when disabled.
We want to return a reference here, so let's always return.
2016-05-01 08:04:15 -07:00
Henrik Rydgård
e91fc59bbe Merge pull request #8693 from sum2012/pmp-video
Temporarily disable PMP video for non-windows
2016-05-01 11:49:55 +02:00
Henrik Rydgard
ffe4c266ef Add CodeBlockCommon base class to remove further arch-specificity in JitBlockCache
Remove unused ArmThunk.
2016-05-01 11:40:00 +02:00
Henrik Rydgard
8b450c8034 Merge NativeJit.cpp/h with JitCommon.cpp/h 2016-05-01 11:39:59 +02:00
Henrik Rydgard
5aadce59a2 Move architecture-specific code out of JitBlockCache 2016-05-01 11:39:58 +02:00
Henrik Rydgard
a5be0976bd Remove preprocessor hacks to choose JIT implementation.
Opens up for having multiple JIT implementations available at runtime,
which could be use for experimenting with new JIT compiler types or for
unit testing one JIT on another architecture.

Very few of the newly virtual calls are on any sort of critical path so
hopefully there will not be a performance loss.
2016-05-01 11:39:53 +02:00
Henrik Rydgard
106a7d6a3b Remove more unused code (advanceCallback) 2016-05-01 11:35:16 +02:00
Henrik Rydgard
4645473dab Remove unused code 2016-05-01 11:35:16 +02:00
Unknown W. Brackets
450554450f Attempt to buildfix Symbian. 2016-05-01 00:48:11 -07:00
Unknown W. Brackets
cd6f36a439 Correct handling of 8 bit and no-alpha PNGs. 2016-05-01 00:30:54 -07:00
Unknown W. Brackets
f26c0328da Check alpha when loading replaced textures. 2016-05-01 00:30:53 -07:00
Unknown W. Brackets
c4b27525e0 Disable texture replacement on Qt. 2016-05-01 00:30:52 -07:00
Unknown W. Brackets
bed82da352 Make ini case insensitive. 2016-05-01 00:30:51 -07:00
Unknown W. Brackets
223f95f28c Allow a short alias for video frames, etc. 2016-05-01 00:30:51 -07:00
Unknown W. Brackets
e1fd6b6f21 Account for scaleFactor when saving clipped PNG. 2016-05-01 00:30:50 -07:00
Unknown W. Brackets
7a4af06cee Save new textures into a separate path.
This way you can tell which ones you've done already.
2016-05-01 00:30:49 -07:00
Unknown W. Brackets
f536182b37 Cache texture replacement lookup info.
This way we can avoid hitting the disk where possible.  We could even
preload.
2016-05-01 00:30:48 -07:00
Unknown W. Brackets
9ffc717de1 Properly save 16-bit textures for replacements. 2016-05-01 00:30:47 -07:00
Unknown W. Brackets
149de4147a Skip replacements for PPGe textures. 2016-05-01 00:30:47 -07:00
Unknown W. Brackets
c1a8edfedf Replace textures from PNGs. 2016-05-01 00:30:46 -07:00
Unknown W. Brackets
6d0c7a9faf Skip gaps in texture replacement hashing.
This should hopefully provide the least duplicates possible.
2016-05-01 00:30:45 -07:00
Unknown W. Brackets
120cd0fb7e Don't convert pixels we're not going to use anyway. 2016-05-01 00:30:44 -07:00
Unknown W. Brackets
0c357c0ea3 Pass w/h in for replacement lookup.
So we can scale the w/h properly.
2016-05-01 00:30:44 -07:00
Unknown W. Brackets
f039259a1a Use a same-everywhere quick hash for now. 2016-05-01 00:30:43 -07:00
Unknown W. Brackets
4f3bac1b0a Actually load the texture replacement ini file. 2016-05-01 00:30:42 -07:00
Unknown W. Brackets
59ada74deb Allow hashes to be ignored explicitly.
Still need the actual ini hookup.
2016-05-01 00:30:42 -07:00
Unknown W. Brackets
d6e5df6f21 Save individual mip levels. 2016-05-01 00:30:41 -07:00
Unknown W. Brackets
565653c77b Save and load textures using full key.
Of course, need this, not just the hash.
2016-05-01 00:30:40 -07:00
Unknown W. Brackets
9039dd606f Move TextureReplacer to Core.
Probably makes more sense here after all.
2016-05-01 00:30:40 -07:00
Unknown W. Brackets
c4e98433b8 Add config to save or load replaced textures. 2016-04-30 14:05:03 -07:00
Unknown W. Brackets
bc03aa11f2 Log module id as hex, clearer. 2016-04-18 20:19:27 -07:00
Unknown W. Brackets
5a74826372 Use new logging in utility module load/unload. 2016-04-18 20:17:49 -07:00
Unknown W. Brackets
f9ba0d7321 Correct dependency handling when loading modules.
Should help #8700.
2016-04-18 20:08:27 -07:00
sum2012
5e20ba1811 Temporarily disable PMP video for non-windows 2016-04-13 20:06:51 +08:00
Henrik Rydgard
7cb6192005 Rename the TransformPipeline files to DrawEngine, and GLES_GPU to GPU_GLES 2016-04-10 10:31:42 +02:00
Henrik Rydgard
e611915a52 Rename some GPU classes and enums to fix some consistency issues between the backends. 2016-04-10 10:21:48 +02:00
Henrik Rydgard
4197148dc4 Add some paranoid checks hoping to fix crashes reported in Google Play developer console. 2016-04-09 18:27:35 +02:00
Henrik Rydgard
774539dea8 Add more error checking in net resolve. 2016-04-09 18:27:35 +02:00
Henrik Rydgard
727058fc27 Remove an entry from GPUStats that didn't really belong. 2016-04-02 11:06:05 +02:00
Henrik Rydgard
ad0da06f65 Forgot to remove these from the debug string. 2016-04-02 10:36:51 +02:00
Henrik Rydgard
5ef608fa50 GPU stats: Have each backend format its own string. 2016-03-31 10:17:02 +02:00
Henrik Rydgard
004c8b0fca Make debug stats more compact. 2016-03-31 09:47:25 +02:00
Unknown W. Brackets
3593a7963e Cleanup and clarify texture swizzling funcs. 2016-03-26 21:55:32 -07:00
Henrik Rydgård
e8758c1ea0 Merge pull request #8652 from unknownbrackets/savestates
Fix some old savestates
2016-03-21 17:05:58 +01:00
Unknown W. Brackets
2461a849f9 Correct some warnings reported by clang. 2016-03-20 23:13:28 -07:00
Unknown W. Brackets
3976e840a1 Fix some old savestates. 2016-03-20 23:03:48 -07:00
Unknown W. Brackets
ef1dc583a2 Fix various minor warnings. 2016-03-20 14:17:51 -07:00
Henrik Rydgård
2b46ae59a0 Merge pull request #8601 from hrydgard/vulkan
Vulkan rendering backend. Early Work-In-Progress
2016-03-20 21:08:58 +01:00
Henrik Rydgard
29bc07eb0a SoftGPU with Vulkan runs but displays black 2016-03-20 20:04:49 +01:00
Henrik Rydgard
f7113bb2e3 Use separate pushbuffers for UBO/Index/Vertex. This will make decoding directly into the pushbuffers easier, plus other benefits later.
(For example, we'll often be able to avoid rebinding the vertex and
index buffers at new offsets by just keep counting upwards between draws,
if the vertex format is the same but other state changed)
2016-03-20 19:31:02 +01:00
Unknown W. Brackets
add506a0d3 Cleanup differences in aniso handling.
Some places were not handling it as a power of two.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
e45c24b75f Show how much pushbuffer space is used each frame.
Optimizing this number (by avoiding redundant UBO uploads etc) will probably help performance.
2016-03-20 19:31:02 +01:00
Unknown W. Brackets
0b7e43d05c Allow the graphicsContext to be overridden.
This is useful when coming from, for example, headless.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
01e3fbae95 Fix clearing bug, add FIFO_RELAXED flag, etc 2016-03-20 19:30:11 +01:00
Henrik Rydgard
4063f7e0db Fill out GPU_Vulkan.cpp with what's mostly a copy of GLES_GPU.cpp 2016-03-20 19:30:11 +01:00
Henrik Rydgard
2a449f78bb More vulkan fixing 2016-03-20 19:25:30 +01:00
Henrik Rydgard
c64064024d Initial vulkan code.
This was squashed from nine commits but using old versions of Vulkan.
2016-03-20 19:18:35 +01:00
Henrik Rydgård
b3402ef1fb Merge pull request #8560 from unknownbrackets/prescale-uv
Enable UV prescaling by default
2016-03-20 18:10:19 +01:00
Henrik Rydgård
538d801f17 Merge pull request #8588 from sum2012/net-minor
Add sceNetIfhandle staff
2016-03-20 18:07:24 +01:00
Henrik Rydgard
92c6810954 Not using a GL config chooser seems to be the way to go, really, and was the way we used before the EGL attempt. 2016-03-17 22:22:57 +01:00
Henrik Rydgard
b137bf1af4 Oops 2016-03-13 18:42:26 +01:00
Henrik Rydgard
c8457d39ed Fix a bunch of compiler warnings, delete some unused code 2016-03-13 15:17:31 +01:00
Henrik Rydgard
b94572e3ba Assorted cleanup 2016-03-13 15:17:31 +01:00
Henrik Rydgard
3924d8bdea Fix bug in ZIP file extraction breaking the Mega Drops homebrew, and others.
Was rounding file sizes up to the nearest 128k...
2016-03-09 17:02:15 +01:00
Unknown W. Brackets
da03b80c97 Standardize on just one mutex implementation. 2016-03-06 14:49:15 -08:00
Henrik Rydgård
301571359c Buildfix 2016-03-06 15:21:16 +01:00
Henrik Rydgard
d4e432dadd Fix issue with lazy loading directory entries. Fixes #8613. 2016-03-06 14:28:14 +01:00
Henrik Rydgard
082d839965 Fix minor issues in ISOFileSystem 2016-03-06 14:28:10 +01:00
Unknown W. Brackets
ef566a3adf SaveState: Clean up some constant usage. 2016-02-28 18:21:57 -08:00
Henrik Rydgard
cef0a6311d ISOFileSystem: Remove the "restrictTree" functionality which is now obsolete with lazy directory loading. 2016-02-29 01:13:57 +01:00
Henrik Rydgard
6f9755d498 ISOFileSystem: Lazily load directory information as needed. Should speed up game icon loading a bit. 2016-02-28 12:02:01 +01:00
Henrik Rydgard
0b95c4bbd1 ISOFileSystem: Move the level into the tree nodes 2016-02-28 11:51:15 +01:00
Henrik Rydgard
afc8736b9a ISOFileSystem: Move the startsector and dirsize information into the tree nodes 2016-02-28 11:46:21 +01:00
Henrik Rydgard
0458c7a590 ISOFileSystem coding style cleanup to reduce future diffs 2016-02-28 11:39:57 +01:00
sum2012
1df833cc16 Small fix and change log format 2016-02-21 13:18:03 +08:00
sum2012
5894e8f18f Add save status support 2016-02-21 07:33:06 +08:00
Henrik Rydgard
6ef779402a Update PPGE atlas (font used for in-game save dialogs etc) 2016-02-15 19:24:39 +01:00
Henrik Rydgard
e954768a84 sceAtrac: Work-around crash with older versions of FFMPEG when free-ing.
Better leaking than dead, although there has to be a better way.
2016-02-14 17:19:32 +01:00
Henrik Rydgard
eb3706c20a Fix version parsing for upgrade checker for short versions like "1.2" 2016-02-14 16:24:33 +01:00
sum2012
29f24a600e Add sceNetIfhandle staff
Used in Yu-Gi-Oh 5Ds Tag Force 4
2016-02-13 20:27:07 +08:00
Unknown W. Brackets
8bea240c25 Atrac: Specify endianness for reset info. 2016-02-10 21:02:41 -08:00
zhyk
fa6fe85dc3 Fix audio lag in Qt without SDL. 2016-02-10 23:34:38 +08:00
Henrik Rydgard
d60f5ba285 Fix minor memory leak in JIT block cache 2016-02-10 15:43:36 +01:00
Henrik Rydgard
35b6c7341b Fix a bunch of memory leaks, after enabling file+line-number memory leak tracking for the MS Debug CRT.
Few of these were serious, most were on-exit, but good to have a cleaner memory report after running.
2016-02-10 15:36:10 +01:00
Unknown W. Brackets
0ea8cc9753 Minor const cleanup. 2016-02-07 14:07:21 -08:00
Unknown W. Brackets
19ec8c9502 Enable UV prescaling by default.
Fixes #4583.  It's been relatively stable since #8283.
2016-02-07 14:05:53 -08:00
Henrik Rydgård
6accac3b33 Merge pull request #8556 from unknownbrackets/diskcache
Correct recovery of locked disk cache files
2016-02-07 11:42:57 +01:00
Henrik Rydgård
eb72f16701 Merge pull request #8559 from unknownbrackets/savestate
Limit savestate screenshots to top left of screen
2016-02-07 11:42:37 +01:00
Henrik Rydgård
329d58e3db Merge pull request #8557 from unknownbrackets/hle-minor
Handle floats and sign extension in HLE logs
2016-02-07 11:42:29 +01:00
Unknown W. Brackets
76ed1e10c4 Limit savestate screenshots to top left of screen.
Sometimes framebuffers have extra stuff outside, we don't need that in the
screenshot.  Fixes #8552.
2016-02-07 00:04:12 -08:00
Unknown W. Brackets
0e85225e29 Bring back the depth range hack. 2016-02-06 20:28:45 -08:00
Unknown W. Brackets
e75af43f0a Handle floats and sign extension in HLE logs.
In some cases, we were previously logging sign-extended error codes.  This
handles that better using type_traits.
2016-02-06 19:53:56 -08:00
Unknown W. Brackets
0517d3721c Correct recovery of locked disk cache files.
We were keeping the index when creating a new file, rather than clearing
it.  Additionally, flush before all reads - in case of overlap.
2016-02-06 19:49:33 -08:00
Henrik Rydgard
b68f2deca8 Set the reverb type when loading a savestate. May help #8528 2016-01-31 11:20:26 +01:00
Henrik Rydgård
f14dcb15db Merge pull request #8532 from unknownbrackets/armjit-linking
armjit: Fix block exit safety writes
2016-01-31 10:09:07 +01:00
Henrik Rydgård
dc407023fb Merge pull request #8533 from unknownbrackets/diskcache
Lock the HTTP diskcache while in use
2016-01-31 10:06:51 +01:00
Unknown W. Brackets
666f1898c6 Fix crash loading old savestates.
Oops.  Forgot that this could be saved as -1 when loading an old
savestate, and then resaving it.

Fixes #8531.
2016-01-30 21:39:25 -08:00
Unknown W. Brackets
288a5c7aab Lock the diskcache while in use.
This prevents it from being corrupted due to a crash.
2016-01-30 20:50:37 -08:00
Unknown W. Brackets
eebe3e7bce armjit: Fix block exit safety writes.
This ensures we don't link to invalid blocks, fixes BKPTs on relinking,
and fixes BKPTs when relinking a prelinked block.

Should help #8524.
2016-01-30 20:44:57 -08:00
daniel229
9385fed5d2 Enable extra ram support for Saints Row 2 alpha 2016-01-30 10:07:00 +08:00
Henrik Rydgård
194e9eddec Merge pull request #8503 from unknownbrackets/hle-minor
Minor logging adjustments, not used yet
2016-01-27 12:29:43 +01:00
Unknown W. Brackets
65a5c92c7e Io: Change some logging flags.
Not used yet, just prep work.
2016-01-24 22:52:19 -08:00
Unknown W. Brackets
3a64388eee Support 64-bit args/return in new HLE logging.
Pulls in a new header, unfortunately, but this is a mostly clean way to do
it.
2016-01-24 22:22:23 -08:00
Unknown W. Brackets
f1896abf74 Atrac: Move buffer offset only if needed.
Hmm, need to manage this buffer smarter, though, when streaming.  Right
now it's only getting it right enough to ask for the right amount of data,
really...

Fixes #8498.
2016-01-24 09:09:07 -08:00
sum2012
bbeaf67cd6 Support port offset by @ANR2ME
Useful of adhoc of non-windows
2016-01-24 16:52:39 +08:00
daniel229
d032c3895b Replace function in Omerta Chinmoku No Okite The Legacy 2016-01-24 11:58:20 +08:00
daniel229
0ab6c544b7 Replace function in unENDing Bloody Call 2016-01-24 11:55:56 +08:00
daniel229
80952d5e06 Replace function in ATV Offroad Fury Pro (US) demo 2016-01-24 11:53:46 +08:00
Unknown W. Brackets
9232a0cdb4 Merge branch 'font-subpixel' 2016-01-23 16:02:21 -08:00
Unknown W. Brackets
e8fb61cf43 Font: Fix clipping when x/y aren't 0.
The final X2/Y2 are relative to the glyph at x,y.
2016-01-23 16:01:25 -08:00
Unknown W. Brackets
b8a2a6647d Font: Turns out this happens a lot. 2016-01-23 15:59:47 -08:00
Henrik Rydgård
fac38ba624 Merge pull request #8491 from unknownbrackets/font-subpixel
Respect subpixel offsets in PGF rendering
2016-01-24 00:58:01 +01:00
Unknown W. Brackets
621f86c7f1 Font: Blend after swizzling to 8 bit.
This is much closer, but the values still are slightly off.
2016-01-23 15:42:42 -08:00
Unknown W. Brackets
1860180c2e Font: Implement subpixel rendering. 2016-01-23 15:37:19 -08:00
Unknown W. Brackets
9ff8d719de Add function to determine ppst title. 2016-01-23 13:06:30 -08:00
Unknown W. Brackets
6a5096e546 Save the game title in savestates, if available.
So that the UI can show them.  Old savestates still load fine, just don't
have the title.
2016-01-23 12:56:36 -08:00
Henrik Rydgard
e866d83547 Temporarily revert "Mpeg: Return errors when no audio is available."
This reverts commit c03f6c23ed.

This caused trouble as seen in #8464, but is probably right - needs other fixes though so
it will have to wait until after 1.2.0.
2016-01-23 17:08:01 +01:00
Henrik Rydgård
c306312b80 Merge pull request #8473 from unknownbrackets/hashmap
Don't trust symbol map func defines
2016-01-22 10:39:28 +01:00
Unknown W. Brackets
67450f2625 Don't trust symbol map func defines.
Unfortunately, some games dynamically load modules that all have the same
name, but different content.  This tries to detect that situation better,
by at least not using the name if the address is different.

This will also track the right sizes for hashing, making incorrect
identification of functions much less likely.

Fixes #8420.
2016-01-22 00:39:31 -08:00
Henrik Rydgård
2abf848a80 Merge pull request #8472 from unknownbrackets/mpeg-mono
Mpeg: Correctly handle mono audio in videos
2016-01-22 09:24:53 +01:00
Unknown W. Brackets
0b1102a622 Mpeg: Correctly handle mono audio in videos. 2016-01-21 23:19:03 -08:00
Unknown W. Brackets
bc48509f33 Add a bit more safety to func replacements.
In case somehow the replacement changes.
2016-01-21 22:17:25 -08:00
Henrik Rydgård
cd35684a46 Merge pull request #8454 from unknownbrackets/gpu-depth-round
Add pixel depth rounding to d3d9, gles2 and support forcing via config
2016-01-21 09:41:26 +01:00
Unknown W. Brackets
8713e532e0 arm64jit: Log if HI is set an an imm. 2016-01-20 23:26:49 -08:00
Unknown W. Brackets
79750ed1ad Add a config setting to control depth quality.
For those who want 1x PSP like behavior.
2016-01-20 22:11:00 -08:00
Henrik Rydgard
dedcc149d8 ARM64: Fix typo in mfhi and mflo instructions. May help #8383 2016-01-19 23:26:43 +01:00
Henrik Rydgård
27fac6e226 Merge pull request #8451 from unknownbrackets/volume
Add a volume configuration setting
2016-01-19 21:59:35 +01:00
Unknown W. Brackets
1b72d3a67a Atrac: Correct remaining frame count for streaming.
This makes more sense, I think this is the right value.
2016-01-18 22:05:01 -08:00
Unknown W. Brackets
600df17eb6 Atrac: Correct loop read pos with offset.
In case it doesn't loop from the start.
2016-01-18 18:11:25 -08:00
Unknown W. Brackets
3466fb1755 Atrac: Adjust loop/nonloop remaining full values.
These are tricky, but it seems like this is right.
2016-01-18 18:00:48 -08:00
Unknown W. Brackets
e2f2c1af90 Atrac: Mark the leading frame consumed on loop.
This is the frame we skip samples from.  Might need smarter logic.
2016-01-18 18:00:48 -08:00
Unknown W. Brackets
3130b7a489 Atrac: Correct stream offset after non-loop end. 2016-01-18 18:00:47 -08:00
Unknown W. Brackets
036c965cf5 Atrac: Correct stream write offset after seek. 2016-01-18 18:00:46 -08:00
Unknown W. Brackets
4c25072328 Atrac: Never ask for more bytes than filesize. 2016-01-18 18:00:46 -08:00
Unknown W. Brackets
fb831b0f48 Add a global volume config setting.
This applies to all audio, UI, game, etc.  Fixes #7749.
2016-01-17 22:47:29 -08:00
Unknown W. Brackets
0a5bf7e12c Add a means to apply volume in the resampler. 2016-01-17 22:34:48 -08:00
Unknown W. Brackets
59523f1327 Atrac: Fix logging of new atrac ID. 2016-01-17 20:10:11 -08:00
Unknown W. Brackets
516147680c Merge pull request #8182 from LunaMoo/minor_cleaning
Move "Display Rotation" and stretching options to display layout editor.
2016-01-17 14:54:39 -08:00
Unknown W. Brackets
6d6c415f2b Merge pull request #8443 from hrydgard/pseudo-shader-cache-gl-2
GL shader disk cache .. kind of
2016-01-17 14:28:05 -08:00
Henrik Rydgård
2e2904c796 Merge pull request #8442 from unknownbrackets/atrac-remaining
Atrac: Correct remaining values when looping
2016-01-17 22:40:08 +01:00
Unknown W. Brackets
face527d7e Atrac: Correct remaining values when looping.
Otherwise it was going negative, which was wrong.
2016-01-17 13:22:12 -08:00
Henrik Rydgard
b39206f922 Use the app cache directory on Android for the shader cache. 2016-01-17 22:15:23 +01:00
Unknown W. Brackets
48729b90d8 Correct buffer size when writing a video range. 2016-01-17 12:57:27 -08:00
Unknown W. Brackets
f60aef2e16 Add a more specific interface for video frames.
Since we know more about them.  No functional change yet.
2016-01-17 12:57:26 -08:00
Unknown W. Brackets
63aa4291eb Atrac: Fix savestates.
Darn, totally forgot.  This should populate acceptable values for old
streamed atrac as well.
2016-01-17 10:05:15 -08:00
Unknown W. Brackets
d5196b44f9 Minor tweaks. 2016-01-17 09:45:55 -08:00
Henrik Rydgard
3ba911bf07 Replace some calls to fopen with File::OpenCFile (utf8). 2016-01-17 15:59:20 +01:00
Henrik Rydgård
b2140d73e7 Merge pull request #8435 from unknownbrackets/atrac-stream
Calculate stream data info a bit more accurately
2016-01-17 10:30:09 +01:00
Henrik Rydgård
93490f5329 Merge pull request #8436 from unknownbrackets/atrac-lowlevel
Simplify lowlevel atrac decoding a lot
2016-01-17 10:26:59 +01:00