7401 Commits

Author SHA1 Message Date
Unknown W. Brackets
e94fd3d4bd arm64: Fix div/divu remainders.
Erp, I transposed the args when I pasted them.
2015-06-28 16:52:49 -07:00
Unknown W. Brackets
81b923f1dc arm64: Correct movz/movn. Weren't right after all. 2015-06-28 16:49:28 -07:00
Unknown W. Brackets
4d7a948717 arm64: Fix a dump mistake with rounding modes. 2015-06-28 16:35:46 -07:00
Unknown W. Brackets
b6612edf67 arm64: Use a cached rounding func for cvt.w.s.
This is much faster for this particular instruction, although not all
games even use it.
2015-06-28 12:40:29 -07:00
Unknown W. Brackets
1c163e4817 arm64: Avoid an ORR for c.ueq.
This is about 15% faster for this single, uncommon instruction on A57.
2015-06-28 10:52:17 -07:00
Unknown W. Brackets
febe435946 arm64: Use FP load/stores for non-reg pointers. 2015-06-28 10:45:44 -07:00
Unknown W. Brackets
909e4b9bd8 Switch lo and hi so that low comes first.
This way we can treat it as a single 64-bit value.
2015-06-28 10:42:19 -07:00
Unknown W. Brackets
213ad4bcc9 arm64: Cleanup branch code a tiny bit.
Want to make it clear that we can't kill W0 at this point (delay slots.)
2015-06-28 09:28:54 -07:00
Unknown W. Brackets
0978aa4d5e arm64: Use msub for div/divu remainder.
Not really much faster, but less instructions at least.
2015-06-28 09:05:39 -07:00
Unknown W. Brackets
0a5b1c030b arm64: Implement ext and ins. 2015-06-28 08:45:17 -07:00
Unknown W. Brackets
daddb73f22 arm64: Implement nor. 2015-06-28 00:41:04 -07:00
Unknown W. Brackets
11a851a139 arm64: Enable movz/movn. 2015-06-28 00:41:04 -07:00
Unknown W. Brackets
223e55a453 arm64: Undisable clz/clo, they work.
Also, avoid a temp in clo.  It's the tiniest bit faster on A57, though
we'll see how it works out elsewhere.  A bit clearer without the temp
imho.
2015-06-28 00:41:03 -07:00
Unknown W. Brackets
81bc8107cf arm64: Use UBFX, not LSR, for slti sign check.
This is about 22% faster on the A57 (for just this one instruction, so not
a huge impact overall.)  Makes sense that it would be since not arith.
2015-06-28 00:41:03 -07:00
Unknown W. Brackets
fedbe645e0 arm64: Use all immediate compares in safemem.
Ah, this is better.
2015-06-27 00:22:09 -07:00
Unknown W. Brackets
3c29ec2051 arm64: Optimize codesize in safemem path a bit.
Will only be used for scratchpad, I think.
2015-06-27 00:22:04 -07:00
Unknown W. Brackets
fbd4db0fc4 arm64: Add a safemem path.
This is probably not optimal but at least it works.
2015-06-27 00:22:04 -07:00
Unknown W. Brackets
b3aa6d89e9 Fix UBFX encoding (thanks SonicAdvance1.) 2015-06-26 21:27:03 -07:00
Unknown W. Brackets
7f812071a7 Oops, move Screenshot.cpp in MSVC project. 2015-06-14 09:21:54 -07:00
Unknown W. Brackets
0c0a5741b8 Fix another dumb mistake in video swizzling. 2015-06-14 09:21:13 -07:00
Henrik Rydgard
23004409bd Add another missing check for VRAM address before swizzling media 2015-06-14 14:03:45 +02:00
Henrik Rydgard
e848247f88 ARM64: Also save FP registers around the JIT dispatcher loop 2015-06-14 13:03:46 +02:00
Henrik Rydgard
2c05334d47 ARM64: Fix bug where we didn't save the FP registers correctly in the vertex decoder.
Also port a few ops from dolphin's ARM64 emitter.
2015-06-14 12:56:44 +02:00
Henrik Rydgard
4f3d18fcb7 Only swizzle written video if actually writing to VRAM 2015-06-14 12:07:09 +02:00
Henrik Rydgard
7e55b3ec96 Fix some GCC compiler warnings about potentially uninitialized variables (compilers are getting too clever..) 2015-06-14 11:32:13 +02:00
Unknown W. Brackets
e9094872d8 Oops, don't move imgbuf so we can free it. 2015-06-13 16:29:56 -07:00
Unknown W. Brackets
401bd35691 Swizzle video texture data on write to mirrors. 2015-06-13 16:29:56 -07:00
Henrik Rydgard
b56f21e4f0 More savedata UI polish 2015-06-12 14:46:34 +02:00
Henrik Rydgard
00094e0fcc More work on savedata UI. 2015-06-12 11:40:50 +02:00
Henrik Rydgard
381e0c0fe3 Implement basic savedata UI. Not much actual functionality yet but can browse saves and states. 2015-06-11 23:59:02 +02:00
Henrik Rydgard
084aad74c3 Make GameInfoCache understand PSP savedata as a "game" type. Use it to create a basic savedata listing screen. 2015-06-11 20:22:16 +02:00
Henrik Rydgård
ee1299b8f2 Merge pull request #7778 from unknownbrackets/frame-profiler
Improve frame profiler display a bit more
2015-05-28 19:02:46 +02:00
Unknown W. Brackets
d323dd472f Account for io sync time in io statistics. 2015-05-27 20:02:09 -07:00
Jan Beich
87be57a1fa Core: report every BSD as distinct operating system
Each one has different kernel and userland. They do cross-pollinate
frequently but otherwise do not try to be compatible.
2015-05-26 15:23:19 +03:00
Jan Beich
803e02e224 Core: assume modern Unix has tm_gmtoff
Core/HLE/sceRtc.cpp:471:14: error: invalid argument type 'char *(*)(int, int)' to
      unary expression
                srcTick -= -timezone * 1000000ULL;
                           ^~~~~~~~~
Core/HLE/sceRtc.cpp:498:14: error: invalid argument type 'char *(*)(int, int)' to
      unary expression
                srcTick += -timezone * 1000000ULL;
                           ^~~~~~~~~
Core/HLE/sceRtc.cpp:1035:16: error: invalid argument type 'char *(*)(int, int)' to
      unary expression
                tz_seconds = -timezone;
                             ^~~~~~~~~
Core/HLE/sceRtc.cpp:1074:16: error: invalid argument type 'char *(*)(int, int)' to
      unary expression
                tz_seconds = -timezone;
                             ^~~~~~~~~
4 errors generated.
2015-05-26 15:20:12 +03:00
Jan Beich
57c5e7d9ac Core: drop unused <malloc.h> header 2015-05-26 15:20:12 +03:00
Jan Beich
a4eb49f009 Unbreak build with FakeJit
Core/MIPS/fake/FakeJit.cpp:141:46: error:
      unknown type name 'FakeJitBlock'; did you mean 'JitBlock'?
const u8 *FakeJit::DoFakeJit(u32 em_address, FakeJitBlock *b)
                                             ^~~~~~~~~~~~
                                             JitBlock
Core/MIPS/JitCommon/JitBlockCache.h:59:8: note:
      'JitBlock' declared here
struct JitBlock {
       ^
Core/MIPS/fake/FakeJit.cpp:141:20: error:
      out-of-line definition of 'DoFakeJit' does not match any declaration in
      'MIPSComp::FakeJit'
const u8 *FakeJit::DoFakeJit(u32 em_address, FakeJitBlock *b)
                   ^~~~~~~~~
Core/HLE/ReplaceTables.cpp:1044:29: error:
      use of undeclared identifier 'JITFUNC'
        { "fabsf", &Replace_fabsf, JITFUNC(Replace_fabsf), REPFLAG_ALLOWINLI...
                                   ^
Core/HLE/ReplaceTables.cpp:1101:27: error:
      invalid application of 'sizeof' to an incomplete type 'const
      ReplacementTableEntry []'
        for (int i = 0; i < (int)ARRAY_SIZE(entries); i++) {
                                 ^~~~~~~~~~~~~~~~~~~
native/math/../base/basictypes.h:67:30: note:
      expanded from macro 'ARRAY_SIZE'
 #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
                             ^~~
Core/HLE/ReplaceTables.cpp:1117:9: error:
      invalid application of 'sizeof' to an incomplete type 'const
      ReplacementTableEntry []'
        return ARRAY_SIZE(entries);
               ^~~~~~~~~~~~~~~~~~~
native/math/../base/basictypes.h:67:30: note:
      expanded from macro 'ARRAY_SIZE'
 #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
                             ^~~
Core/MIPS/JitCommon/JitCommon.cpp:31:2: error:
      unknown type name 'Jit'
        Jit *jit;
        ^
Core/MIPS/JitCommon/JitCommon.cpp💯21: error:
      no member named 'Asm' in 'MIPSComp::FakeJit'
        if (MIPSComp::jit->Asm().IsInSpace((u8 *)(intptr_t)addr)) {
            ~~~~~~~~~~~~~  ^
Core/MIPS/JitCommon/JitCommon.cpp:101:45: error:
      no member named 'Asm' in 'MIPSComp::FakeJit'
                *offset = addr - (uint64_t)MIPSComp::jit->Asm().GetBasePtr();
                                           ~~~~~~~~~~~~~  ^
Core/MemMap.cpp:197:57: error:
      use of undeclared identifier 'MEMVIEW32_MASK'
  ...position, view.size, base + (view.virtual_address & MEMVIEW32_MASK));
                                                             ^
2015-05-26 15:20:10 +03:00
Henrik Rydgard
6f4cea860c Split texture load profiling into decode and load/replace. Make profiler work on Android. 2015-05-24 23:45:40 +02:00
Henrik Rydgard
26624709f7 Hook up the frame profiler to a few measurements 2015-05-24 23:45:36 +02:00
Henrik Rydgard
0595a76556 Start integrating the new frame profiler 2015-05-24 23:45:36 +02:00
Henrik Rydgard
18655d14a4 Release PSP buttons when losing gameplay focus, fixes part 1 of #7758, and part 2 of #7758 on Windows only. 2015-05-21 10:49:47 +02:00
Henrik Rydgard
ee81c7f1a1 Rotate controls along with the display. Only rotates d-pad and analog stick, but easy to add more buttons if desired. 2015-05-15 18:49:54 +02:00
Henrik Rydgard
28d8ed5881 Win32: Fix a bunch of little window resizing issues 2015-05-15 18:04:05 +02:00
Henrik Rydgard
3f7830743a Implement basic screen rotation as requested in #297 . Does not work correctly in non-buffered rendering yet. 2015-05-12 21:01:15 +02:00
Henrik Rydgård
bcb7c37860 Merge pull request #7732 from Bigpet/kana_osk
kana keyboard pe->pa fix
2015-05-07 23:21:18 +02:00
Peter Tissen
35d3b25df9 kana keyboard pa->ha fix 2015-05-06 02:42:22 +02:00
Henrik Rydgård
43eaffb3b4 Merge pull request #7719 from unknownbrackets/net-minor
Fix some issues in sceNetAdhoc with old savestates
2015-04-27 18:07:41 +02:00
Unknown W. Brackets
afe52db366 Fix some issues in sceNetAdhoc with old savestates.
This was causing the PPGe dlist to be shared with the thread, causing
weirdness and a double-free on exit.
2015-04-27 07:53:19 -07:00
sum2012
aad95db070 Remove OLD_EBOOT.BIN support
Utawareru Mono Chinese version use it but this still work
2015-04-23 20:16:45 +08:00
daniel229
af9e04dc97 Replace framebuffer download in Youkoso Hitsuji-Mura Portable 2015-04-20 16:36:07 +08:00