Commit graph

8660 commits

Author SHA1 Message Date
Jake 84ae643692 Fix msvc debug build 2018-06-03 16:37:37 +04:00
Megamouse 9dea602496 Discord: add some stuff 2018-06-03 13:28:12 +04:00
Dravonic 400079a006 Parallel shader cache loading (#4677)
* Parallel shader cache loading
2018-06-01 19:49:29 +03:00
kd-11 87b510d5bf vulkan improvements
- Remove deprecated device layers
- Reimplement overlays resource management using real heap instead of using first_vertex hack
2018-05-31 11:22:40 +03:00
kd-11 9f9e1b5fe0 overlay; Fix leak 2018-05-31 11:22:40 +03:00
Nekotekina b0ee369135 Rewrite LLVM compilation progress dialog
Use a single dialog
2018-05-30 20:35:35 +03:00
Nekotekina a2253e840f SPU LLVM: fix *QBI instructions (UB)
Improve codegen at the cost of unnecessary shuffle, use u64[2]
2018-05-30 20:35:35 +03:00
Nekotekina 37577714fa SPU LLVM: emulate PSHUFB
For targets without SSSE3 support
2018-05-30 20:35:35 +03:00
Nekotekina 759370ea1b SPU: rewrite FSM/FSMH/FSMB instructions
Remove lookup tables
2018-05-30 20:35:35 +03:00
Nekotekina 55e9d437a9 Fix warning (ignored attributes) 2018-05-30 20:35:35 +03:00
Nekotekina bdf6545571 SPU: rewrite spu_interpreter::SHUFB
Use ASMJIT to generate SSSE3+ code at runtime
Remove static SSSE3 code from spu_interpreter
2018-05-30 20:35:35 +03:00
Nekotekina bebb1bdeda Extend ppu_decoder/spu_decoder templates
Automatically dereference pointers
2018-05-30 20:35:35 +03:00
Nekotekina 944e89058e SPU: improve SHUFB 2018-05-30 20:35:35 +03:00
Megamouse c5709f71b3 Qt: Add performance overlay options to the emu tab in the settings dialog 2018-05-30 21:31:45 +04:00
Megamouse cc50d503ef Qt: Add a gui tab to the settings dialog
this is mainly to make place in the emulator tab
2018-05-30 21:31:45 +04:00
kd-11 cf2cb7978b facepalm 2018-05-30 13:30:23 +03:00
kd-11 f543fb0243 vk/gl: Fix flush synchronization to be kinder to weaker CPUs but not harm higher end CPUs 2018-05-30 13:30:23 +03:00
kd-11 6362942928 rsx: Avoid semaphore acquire deadlock 2018-05-30 13:30:23 +03:00
VelocityRa c8d8a81ccd overlays: Performance Overlay 2018-05-30 12:35:41 +03:00
VelocityRa c2e17d04e1 overlays: Font improvements
* Support for using arbitrary firmware fonts
* Support for specifying font extension in `font` constructor (useful for most firmware fonts that use .TTF)
2018-05-30 12:35:41 +03:00
VelocityRa 33b01d9306 overlays: Allow for non-interactable UI components
* Also fix a few warnings in overlay_controls
2018-05-30 12:35:41 +03:00
eladash 4576a31f47 fix memory mapping alignment 2018-05-30 00:34:38 +04:00
eladash 8826948c43 cellgcm: implement cellGcmTerminate 2018-05-29 19:57:28 +03:00
eladash 23b380eb41 allow deallocations to unmap rsx mapped memory 2018-05-29 19:57:28 +03:00
eladash ce98c962f8 cellgcm: use offset table to get the corresponding address to io address 2018-05-29 19:57:28 +03:00
eladash c2b2dee56d cellgcm/sys_rsx: fix multiple io maps at the same effective address and vice verse
from hw testing, as long as the io address is valid, it returns CELL_OK, even when it doesn't make much sense
2018-05-29 19:57:28 +03:00
eladash 97515a0941 sys_rsx/cellgcm: return EINVAL if the io map requast's size is 0 2018-05-29 19:57:28 +03:00
eladash 0a7902d313 sys_rsx: fix mem_handle id 2018-05-29 19:57:28 +03:00
eladash 8eab9fe36c sys_rsx: fix unused pointer dereferencing 2018-05-29 19:57:28 +03:00
kd-11 d48f391b41 lv2: Ease the pain of lower end CPUs
- Avoid busy waiting in usleep code as much as possible, instead yield
- Also avoid busy_wait for SPU concurrency choker
2018-05-29 13:54:30 +03:00
kd-11 83f9be2524 rsx: Promote FIFO optimizations outside of strict mode
- The benefits of FIFO optimizations are huge in some cases.
  The optimizations also do not break any tested applications so no need to disable with strict mode
- A debug option is provided to disable this behaviour for testing
2018-05-29 13:54:30 +03:00
kd-11 be13a776f4 lv2: Reimplement sys_timer_usleep
- Matches ps3 accuracy for all tested values with few exceptions
- Do not enter the host OS kernel if waiting for less than 500us to avoid scheduler issues
2018-05-29 13:54:30 +03:00
kd-11 2adb2ebb00 overlays: Avoid race condition on remove-on-update views
- Improves cleanup code to consist of 2 parts, remove then dispose. Remove
  does not deallocate the item until dispose is called on it, allowing the
  backends to first deallocate external references.
- Caller is responsible for managing list locking and tracking disposable list
  of items when external references have been cleaned up before using
  dispose method.
2018-05-29 13:54:30 +03:00
kd-11 0fc67aa2f6 gl: fix wcb regression
- Partial framebuffers and blit targets are possible!
2018-05-24 10:36:04 +03:00
kd-11 493d4e8613 fixup - Improve invalidated region checks for performance 2018-05-24 10:36:04 +03:00
kd-11 b030d1900c rsx: Fixup - fix broken memory protection fail caused by region respec
- Some applications will alternate memory between framebuffer and texture data
2018-05-24 10:36:04 +03:00
kd-11 f38f61d110 vk: Clean up memory allocation and fix GPUOpen VMA for Radeon 2018-05-23 19:07:08 +03:00
kd-11 92b5a705d8 fixup - locking 2018-05-23 19:07:08 +03:00
kd-11 b957eac6e8 rsx: Avoid calling any blocking callbacks from threads that are not rsx::thread
- Defers on_notity_memory_unmapped to only run from within rsx context
- Avoids passive_lock + writer_lock deadlock
2018-05-23 19:07:08 +03:00
kd-11 d2bf04796f Optimized cached write-through
- Allows grabbing an unsynchronized memory block if overwriting contents
anyway
- Allows flushing only specified range of memory
2018-05-23 19:07:08 +03:00
kd-11 f8d999b384 fixup - range check 2018-05-23 19:07:08 +03:00
kd-11 fbf6581249 rsx: Fix segmented memory access for rsx::super_ptr 2018-05-23 19:07:08 +03:00
kd-11 d283200e13 vk: Do not do extension test if in a fast context (enum only) 2018-05-23 19:07:08 +03:00
kd-11 3f14bc6961 rsx: Silence some meaningless error 2018-05-23 19:07:08 +03:00
kd-11 f2a3167193 rsx: Lower format compatibility severity since it confuses some people 2018-05-23 19:07:08 +03:00
kd-11 8fcd5c1e5a rsx: Texture cache fixes
1. rsx: Rework section synchronization using the new memory mirrors
2. rsx: Tweaks
    - Simplify peeking into the current rsx::thread instance.
      Use a simple rsx::get_current_renderer instead of asking fxm for the same
    - Fix global rsx super memory shm block management
3. rsx: Improve memory validation. test_framebuffer() and
tag_framebuffer() are simplified due to mirror support
4. rsx: Only write back confirmed memory range to avoid overapproximation errors in blit engine
5. rsx: Explicitly mark clobbered flushable sections as dirty to have them
removed
6. rsx: Cumulative fixes
    - Reimplement rsx::buffered_section management routines
    - blit engine subsections are not hit-tested against confirmed/committed memory range
      Not all applications are 'honest' about region bounds, making the real cpu range useless for blit ops
2018-05-23 19:07:08 +03:00
pauls-gh f8a0be8c3e Performance enhancement - Vulkan memory allocator (#4635)
* Incorporates the vulkan memory allocator from the AMD GPUOpen project
2018-05-23 17:02:35 +03:00
Nekotekina c5d8d50908 Move SPU LLVM log file 2018-05-23 15:36:29 +03:00
Nekotekina 3e580afe21 SPU: remove passive lock (fixup) 2018-05-23 15:36:29 +03:00
scribam 2270b8d15c vulkan: link with vulkan-1.lib instead of VKstatic.1.lib 2018-05-23 13:54:27 +03:00
Megamouse b230b0df0d Qt: Workaround for yet another hidden column resize 2018-05-22 16:27:33 +01:00
Megamouse 62efe6e5be Qt: set smaller default log frame height 2018-05-22 16:27:33 +01:00
Megamouse 7c031c2330 Qt: remove redundant visibility check in FixNarrowColumns 2018-05-22 16:27:33 +01:00
Megamouse 40d2341ef1 Qt: resize game list columns by default with slight spacing 2018-05-22 16:27:33 +01:00
Megamouse f1670a9ea0 Qt: disable resizing trophy tables to contents by default 2018-05-22 16:27:33 +01:00
Megamouse 325048a134 Qt: apply header states after populating the tables 2018-05-22 16:27:33 +01:00
Megamouse bff9a06f9f Qt: simplify occasions of restoreState 2018-05-22 16:27:33 +01:00
Megamouse 31101b4828 Qt: use correct menu icon for "Play last played game" on booting RPCS3 2018-05-22 16:27:33 +01:00
Megamouse 598008868e Qt: include QButtonGroup in settings_dialog.cpp in order to fix Qt 5.11 2018-05-22 16:27:33 +01:00
Nekotekina 72574b11ff SPU: use reservation spinlocks on writes (non-TSX)
This should decrease contention by avoiding global lock
2018-05-21 21:56:14 +03:00
Nekotekina 182259e4a5 cellSaveData fix 2018-05-21 21:47:04 +03:00
kd-11 c9669818eb Facepalm
- overlays: Do not free self handle!!!!
2018-05-21 15:55:25 +03:00
Nekotekina 6fd402bcf8 Transactions: drop RDTSC usage
Use simple increment (minor optimization)
2018-05-21 00:18:37 +03:00
Nekotekina fb0f5f0c8b Fix vm::reservation_notifier 2018-05-21 00:18:37 +03:00
Nekotekina 7a6db3dd7e spu_getll_tx: diagnose loop count 2018-05-21 00:18:37 +03:00
Nekotekina 295f782b30 spu_putlluc_tx: diagnose loop count 2018-05-21 00:18:37 +03:00
Nekotekina a33f297315 Replace notifier::lock_shared() with try_lock_shared()
Also add notify_one(), try_lock() and unlock()
Move some code in cond.cpp
2018-05-21 00:18:37 +03:00
Nekotekina 8d5bbfb850 Update SPU dump: print current MFC cmd 2018-05-21 00:18:37 +03:00
Nekotekina 33a1c743a4 Transactions: move loops inside
Rewrite loops in assembler (minor optimization)
2018-05-21 00:18:37 +03:00
kd-11 f6f45b8699
Native UI refactored (#4623)
Refactor and improve native overlays
2018-05-20 23:05:00 +03:00
Megamouse 68fff54a8b cellSaveData: don't return after funcStat was successful in savedata_op
also add some missing constants
2018-05-20 23:16:11 +04:00
Megamouse c61049b76f Qt: Fix missing rows in our beloved trophy manager 2018-05-20 14:29:56 +04:00
Megamouse f8bbdc39c5 Qt: Change Trophy Manager to use item selection instead of double click 2018-05-20 14:29:56 +04:00
Megamouse 4c03348e60 Qt: Restrict trophy manager combo box size 2018-05-20 14:29:56 +04:00
Megamouse 95951c31f8 Qt: Fix obnoxious glitch where game list columns ended up with 0 width
Qt can be messy at times
2018-05-19 21:59:13 +01:00
Megamouse 67637dfaa4 Qt: Fix compat download exception 2018-05-19 21:59:13 +01:00
scribam bf2f00a163 log: add Vulkan header version 2018-05-19 10:59:10 +03:00
scribam 6c5c89a4a3 3rdparty: remove Vulkan/Vulkan-LoaderAndValidationLayers 2018-05-19 10:59:10 +03:00
Megamouse 4e8ce7fac0 Qt: Enable all play options for the last played game on StartUp
- main_window::CreateThumbnailToolbar into main_window::Init
- also moved the log message for "Recent Game Not Valid" from Error to Warning (only the common occurance)
2018-05-18 21:30:16 +01:00
Megamouse 6b3eebc907 Qt: trophy manager - fix trophy sorting by ID + handle some warnings 2018-05-18 23:17:10 +04:00
Megamouse 9269d8a370 Qt: resize initial game list headers to minimal size if necessary
we do this on showing columns already
2018-05-18 23:17:10 +04:00
Megamouse 99c52a0d0c Qt: use column names instead of numbers in gui_settings 2018-05-18 23:17:10 +04:00
Megamouse d1a9afbd67 Qt: refactor game list column initialization 2018-05-18 23:17:10 +04:00
Megamouse 2b8f96dcec Qt: refactor Get-/SetGamelistColVisibility 2018-05-18 23:17:10 +04:00
Megamouse 9c025be831 Qt: improve game list header behavior 2018-05-18 23:17:10 +04:00
Megamouse aee03114fd Qt: rsx debugger replace wrong setSectionResize command 2018-05-18 23:17:10 +04:00
Megamouse bb8e89f84a Qt: add game icons to the trophy manager
and fix some header behaviour
2018-05-18 23:17:10 +04:00
Megamouse 6f0bad34f4 Qt: remove trophy_tree_widget_item.h 2018-05-18 23:17:10 +04:00
Megamouse d275c36e0a Qt: trophy manager overhaul 2018-05-18 23:17:10 +04:00
Megamouse 4e5cceb03e TROPUSR: add GetUnlockedTrophiesCount() 2018-05-18 23:17:10 +04:00
Nekotekina 67391322f4 Transactions: touch memory only after a failure
Minor optimization
2018-05-17 22:19:26 +03:00
Nekotekina 39088e5005 SPU: Allow waiting on LR+TM events (fixup) 2018-05-17 21:21:15 +03:00
Nekotekina 7afda26c69 spu_putllc_tx: preload a little more (WIN32) 2018-05-17 18:58:08 +03:00
Nekotekina 58e4d49bb5 Fixup (endless loop) 2018-05-17 18:33:44 +03:00
scribam 8f975e2329 cmake: improve pthread inclusion 2018-05-17 18:42:44 +04:00
scribam 3dfe46fc42 cmake: use -Wno-unused-command-line-argument only with clang (gcc doesn't have this option) 2018-05-17 18:42:44 +04:00
scribam 580c8b8803 cmake: remove leftover from #4329 about X11 2018-05-17 18:42:44 +04:00
scribam 5ef1cab30b cmake: update cotire to 1.8.0 2018-05-17 18:42:44 +04:00
pauls-gh fdef77d779 Set Windows timer resolution to 0,5ms (#4579)
* Fix for https://github.com/RPCS3/rpcs3/issues/4569
(Win 10 update 1803 performance regression)
2018-05-17 15:00:22 +04:00
Megamouse 2eae06454b Qt: simplify horizontal header text alignment in the gamelist
Needs reset of the gamelist state in the settings to work properly.
Also added minor refactor
2018-05-17 14:27:45 +04:00
Megamouse 29318803a6 Qt: add sanity check to remove game (prevent nasty system flush).
and minor code refactor
2018-05-17 14:27:45 +04:00
Megamouse ff2c05da50 Qt: Use pointer to game info instead of index in game list
this should fix differences between model and view
2018-05-17 14:27:45 +04:00
Megamouse cafcac9ccd Qt: streamline custom config refresh in game list and thus ignore scroll
move l_GetItem lambda into custom_table_widget_item constructor
2018-05-17 14:27:45 +04:00
Megamouse e43afa7148 Qt: streamline game removal in game list and fix followed item selection 2018-05-17 14:27:45 +04:00
Megamouse 9a1c0e4577 Qt: merge custom context menu functions 2018-05-17 14:27:45 +04:00
Megamouse baec681c9e Qt: minor fix for compat downloader 2018-05-17 14:27:45 +04:00
Megamouse 8b54552ddf Qt: use NoEditTriggers instead of ItemIsEditable flags in the gamelist 2018-05-17 14:27:45 +04:00
Megamouse 1cff1ca03e Qt: add "Move Support" column to the gamelist and load the info from psf 2018-05-17 14:27:45 +04:00
Megamouse 3ba133f485 Qt: fix gamelist sort by adding a sort_role to custom_list_widget_item 2018-05-17 14:27:45 +04:00
Megamouse 28e19a1d14 Qt: use GameInfo's bootable instead of GUI_GameInfo's bootable member 2018-05-17 14:27:45 +04:00
Megamouse 49a4015d5d Qt: Hide firmware and path columns by default 2018-05-17 14:27:45 +04:00
Florent Castelli 253248349f Link against the top-level LLVM targets only
Dependencies are still linked through usage requirements.
2018-05-16 23:35:53 +01:00
Florent Castelli afd55da8cb Add EXCLUDE_FROM_ALL to add_subdirectory calls 2018-05-16 23:35:53 +01:00
scribam 70e2873e69 Compilation fix for GCC 8 (at least) 2018-05-17 00:53:31 +04:00
Zion Nimchuk 705525510e re-enable LLVM for travis and build AppImages with LLVM 6 2018-05-17 00:01:53 +04:00
Nekotekina 367f039523 Build transactions at runtime
Drop _xbegin family intrinsics due to bad codegen
Implemented `notifier` class, replacing vm::notify
Minor optimization: detach transactions from global mutex on TSX path
Minor optimization: don't acquire vm::passive_lock on PPU on TSX path
2018-05-16 17:31:58 +03:00
Nekotekina fd525ae1cf Implement build_function_asm
Uses ASMJIT to build function at startup
2018-05-16 15:48:35 +03:00
scribam fd8aae5725 emu: remove wait_engine files
These files are empty and do not serve any purpose currently
2018-05-16 03:56:06 +04:00
scribam 7518200c7e ps3emu_api: remove leftover files
Initial removal has been started with commit 6dd2c78b1b
2018-05-16 03:56:06 +04:00
scribam 196f985283 hle: improve cellSync2 error checks and logging 2018-05-15 22:59:34 +04:00
sftt 27004eb934 Avoid illegal available_user_memory in sys_memory (#4399)
jarveson says "the comment and minus can be completely deleted/reverted" in 17cf24d0ed
2018-05-15 17:40:45 +01:00
scribam 04ad49de4d typos 2018-05-14 21:14:39 +04:00
isJuhn fc23243d01 Fix setParam in cellHddGameCheck 2018-05-14 16:56:47 +01:00
Jan Beich 2cfb2428d2 build/cmake: pass -DNDEBUG by default like msvc
Downstream may override CMAKE_CXX_FLAGS_RELEASE in order to enforce
consistent optimization flags for every package. If -DNDEBUG is lost
RPCS3 may run slower and fall victim to assertions in bundled libs.
2018-05-14 16:01:19 +01:00
tlm-2501 21dc05265d Add description for SPU LLVM (#4558)
Not entirely sure on the wording, but some form of a description seems necessary.
2018-05-14 15:32:47 +01:00
creeperjedi 819ed801a7 Added (experimental) next to LLVM Recompiler 2018-05-14 14:41:50 +01:00
Nekotekina a46ef4f29a Increase open file limit on Linux
Add some assertions to VirtualMemory.cpp
2018-05-13 23:56:43 +03:00
Nekotekina 3c70645f0b Update SPU cache (v2)
Improve SPU analyser: filter unreachable fragments
More strict NOP/LNOP analysis
Fill block predecessors info
ASMJIT: fix assertion and improve indirect branch
2018-05-13 20:40:23 +03:00
Megamouse 84a4671a0e Qt: Use additional windows resource file for qt.conf
fixup for a39384cadd
2018-05-13 21:02:21 +04:00
Megamouse a39384cadd Qt: Create qt/plugins dir to tidy up our Visual Studio builds
see folders: bearer, imageformats, styles and platforms.
This will stay compatible with the old builds too, unless someone wisely put their plugin folders into a 'plugin' subdirectory
2018-05-13 18:39:24 +04:00
kd-11 4836a03a7d rsx: Fix build 2018-05-13 14:44:14 +03:00
kd-11 9d1f4a2538 vk: Include RADV POLARIS and RADV VEGA in the primitive restart
blacklist
2018-05-13 14:44:14 +03:00
kd-11 bff6060bd6 rsx: Improve puller state management
- Properly identify puller spin primitives
- Add a small wake delay after exiting a spin delay. Fixes desynchronization
  It seems real hw has a small delay between cell edits to commandbuffer memory at the GET address and the changes becoming visible to the DMA puller
  Simulated with a short busy_wait, large values will improve sync but degrade performance
2018-05-13 14:44:14 +03:00
kd-11 1aa44ede31 gl: Improve AMD multidraw workaround
- Reimplements the AMD workaround using an identity buffer to avoid the performance hit of doing multiple glDrawArrays for every single compiled set
- Reimplements first/count allocation using a scratch buffer to reduce allocation overhead when large number of draw calls is used
2018-05-13 14:44:14 +03:00
kd-11 eccb57d4b8 vk: AMD primitive restart bug workaround
- Emulate primitive restart with degenerate triangles
2018-05-13 14:44:14 +03:00
kd-11 b7979d3f57 rsx/vk: Improvements and minor optimizations
- Improve dirty state tracking affecting program state
- vk: Refactor out transform constants upload into a separate channel to avoid if possible
  transform data uploads are quite expensive
2018-05-13 14:44:14 +03:00
kd-11 440a31ef18 rsx: Optimizations for program management 2018-05-13 14:44:14 +03:00
kd-11 a52ea7f870 rsx: Improve fragment and vertex program usage
- Introduces a gpu program analyser step to examine shader contents before attempting compilation or cache search
  - Avoids detecting shader as being different because of unused textures having state changes
  - Adds better program size detection for vertex programs
- Improved vertex program decompiler
  - Properly support CAL type instructions
  - Support jumping over instructions marked with a termination marker with BRA/CAL class opcodes
  - Fix SRC checks and abort
  - Fix CC register initialization
  - NOTE: Even unused SRC registers have to be valid (usually referencing in.POS)
2018-05-13 14:44:14 +03:00
Jake 75b40931fc rsx: initial capture/replay functionality (#4510)
* rsx: initial capture/replay functionality
2018-05-13 12:18:05 +03:00
Nekotekina 7cb4672344 Travis: remove LLVM for now 2018-05-13 00:03:08 +03:00
Nekotekina 4c7afb6952 Opt-in set DAZ and FTZ 2018-05-13 00:03:08 +03:00
Nekotekina a77896c1b6 Update LLVM commit, use small code model 2018-05-13 00:03:08 +03:00
Nekotekina be5c18cc85 SPU Re: more precise jt generation
Improve analyser, set v1
Fix branch indirect conditional
2018-05-12 23:50:49 +03:00
Nekotekina 737db90058 Set DAZ and FTZ 2018-05-09 23:38:26 +03:00
Nekotekina 5d15d64ec8 Memory mirror support
Implemented utils::memory_release (not used)
Implemented utils::shm class (handler for shared memory)
Improved sys_mmapper syscalls
Rewritten ppu_patch function
Implemented vm::get_super_ptr (ignores memory protection)
Minimal allocation alignment increased to 0x10000
2018-05-09 23:35:34 +03:00
Nekotekina fe4c3c4d84 Implement SPU recompiler cache
Shared between ASMJIT/LLVM recompilers, compiled at startup
2018-05-09 23:35:18 +03:00
Nekotekina f5ee6fb113 Convert newlines in game title 2018-05-09 22:19:55 +03:00
Nekotekina acfe22e5bc SPU: improve jumptable detection 2018-05-09 22:19:55 +03:00
Nekotekina 8f91917e8c SPU ASMJIT: simplify patchpoints
Remove SPU thread reference from spu_recompiler_base
Disable support for far jumps in pathpoints (they were rare and unsafe)
2018-05-09 22:19:55 +03:00
Nekotekina 1ca51a023c SPU LLVM Recompiler (preview) 2018-05-09 22:19:55 +03:00
Nekotekina a975ecdc4f Use LLVM 6 2018-05-08 13:05:29 +03:00
Nekotekina 8b704588d0 Update cpu_translator 2018-05-08 13:05:29 +03:00
Nekotekina db229dffb0 PPU LLVM: minor update 2018-05-08 13:05:29 +03:00
Nekotekina 16f5167aed SPU Analyser improved
This restores some functionality removed in SPU ASMJIT v2.0
Also implements new experimental features
2018-05-08 13:05:29 +03:00
Nekotekina 767dfa271e SPU ASMJIT: internal jumptable
Allow indirect calls within current function using a jumptable
This restores some functionality removed in SPU ASMJIT 2.0
Change SPUThread::get_ch_value prototype
2018-05-08 13:05:29 +03:00
Nekotekina df453d6d4f SPU ASMJIT: allow holes in raw block data
This is preparation for further changes.
This commit shouldn't affect anything.
2018-05-08 13:05:29 +03:00
Nekotekina 2fecddcde2 SPU ASMJIT: rewrite halt instruction
Use conditional memory access to invalid address.
This approach can allow continue (for debugging);
but at the same time it doesn't add function call to recompiled code.
2018-05-08 13:05:29 +03:00
Nekotekina 4d60d85db5 SPU: fix MFC_PUTQLLUC_CMD fence trait 2018-05-08 13:05:29 +03:00
Nekotekina f4af3f2987 PPU: improve LWARX/LDARX consistency 2018-05-08 13:05:29 +03:00
Maxetto dca6f1f863 Update some lv2 syscall names (#4490) 2018-05-06 14:21:50 +04:00
scribam ff1b0d73b7 hle: make cellSubDisplayInit returns CELL_SUBDISPLAY_ERROR_ZERO_REGISTERED 2018-05-06 12:49:44 +04:00
isJuhn f27f7d50c9 Add Rich Presence option 2018-04-29 18:38:00 +01:00
kd-11 98b715d8c8 gl: Workaround for AMD driver bug 2018-04-25 19:14:36 +03:00
kd-11 ffa62918aa gl: Improve pixel transfer code and notify on AMD driver bug
- Readback does not work at all with float textures on AMD openGL
  Driver throws a bogus OUT_OF_MEMORY error regardless of amount of VRAM and system RAM available
2018-04-25 19:14:36 +03:00
kd-11 f3210a9a33 rsx: Workaround for lost memory sections
- TODO: surface_cache and texture_cache need a better method of persisting partial framebuffer resources
2018-04-25 19:14:36 +03:00
kd-11 58035697d5 rsx: Restore component mapping override for depth textures 2018-04-25 19:14:36 +03:00
kd-11 7e32e7343a vk: Reorganize handling of formats support
- Formats support is linked to the physical device and by extension the logical device derived from it
  It therefore makes no sense to track this as a separate object.
  Simplifies parameter passing and template specialization.
  Also avoids corner cases with AMD hardware (where D24S8 is not supported)
2018-04-25 19:14:36 +03:00
kd-11 291a828217 fixups 2018-04-25 19:14:36 +03:00
kd-11 40ae5e605d vk: Fix border color selection 2018-04-25 19:14:36 +03:00
kd-11 c5d1f30e82 rsx: Fix performance counters
- Detect jump-to-self type idling
2018-04-25 19:14:36 +03:00
kd-11 91a6091d26 rsx: Minor fixes
- vk: Clear dirty textures before copying 'old contents' in case the old data does not fill the new region
- rsx: Properly decode border color - seems to be in BGRA format
- vk: better approximation of border color to better choose between the presets
- vk: Individually clear color images outside render pass and without scissor
- vk: Fix renderpass selection for clear overlay pass
- vk: Include scissor region when emulating clear mask

NOTES:
- vk: Completely avoid using vkClearXXXXimage - its 'broken' on nvidia drivers
  Spec is vague about the function so its not an actual bug
  ClearAttachment is clearly defined as bypassing bound state which works correctly
- TODO: Implement memory sampling to simulate loading precleared memory if cell used memset to preinitialize the framebuffer
  Autoclear depth to 1|255 and color to 0 is hacky!
2018-04-25 19:14:36 +03:00
kd-11 da99f3cb9a rsx: Critical fixes
- texture cache: Avoid leaking memory sections
  - Avoid double ref increment on flush-always reprotection
  - Detect invalidated_resources entries in surface cache when protecting fbo memory
- vk: Copypasta bugfix, properly initialize aspect mask
2018-04-25 19:14:36 +03:00
kd-11 a42b00488d rsx: Texture fixes
- gl/vk: Fix subresource copy/blit
- gl/vk: Fix default_component_map reading
- vk: Reimplement cell readback path and improve software channel decoder
- Properly name the subresource layout field - its in blocks not bytes!
- Implement d24s8 upload from memory correctly
- Do not ignore DEPTH_FLOAT textures - they are depth textures and abide by the depth compare rules
- NOTE: Redirection of 16-bit textures is not implemented yet
2018-04-25 19:14:36 +03:00
kd-11 63d9cb37ec rsx: Framebuffer fixes
Primary:
- Fix SET_SURFACE_CLEAR channel mask - it has been wrong for all these
  years! Layout is RGBA not ARGB/BGRA like other registers

Other Fixes:
- vk: Implement subchannel clears using overla pass
- vk: Simplify and clean up state management
- gl: Fix nullptr deref in case of failed subresource copy
- vk/gl: Ignore float buffer clears as hardware seems to do
2018-04-25 19:14:36 +03:00
kd-11 9abbbb79ae rsx: Blit engine fixes
- Ignore unlocked blit sections [TODO]
- Do not attempt blit on hw if bytesize is unsupported
- gl: Implement typeless memory transfers
  Uses pbo to handle type-agnostic memory transfer
2018-04-25 19:14:36 +03:00
kd-11 bb5622401c overlays/gl: minor fixes
- fix ogl color map for overlay resources
- fix label background for save dialog
2018-04-25 19:14:36 +03:00
kd-11 6d46ac1ad6 gl: Reimplement textures
- Separate texture data from texture views
2018-04-25 19:14:36 +03:00
kd-11 cf1b700ebc rsx: Improve format mismatch detection hack 2018-04-25 19:14:36 +03:00
kd-11 c5cd758700 rsx: Workaround for G8B8 render targets
- Mainly affected are colormasks and read swizzles

NOTES:
- Writes to G write to the second and fourth component (YW)
- Writes to B write to first and third component (XZ)
- This means the actual format layout is BGBG (RGBA) making RG mapping actually GR
- Clear does not seem to have any intended effect on this format (TLOU)
2018-04-25 19:14:36 +03:00
Nekotekina bd1d4de422 Fix unnecessary cache dir 2018-04-22 00:06:49 +03:00
Nekotekina da6afb11f0 Fix game title if unset 2018-04-22 00:06:49 +03:00
Nekotekina ef0196d791 Fix warning (vm::reservation_update) 2018-04-22 00:06:49 +03:00
Nekotekina 738a7cac4f SPU ASMJIT: inline WRCH 2018-04-22 00:06:49 +03:00
Nekotekina 9516250bec SPU: fix MFC_WrTagUpdate 2018-04-22 00:06:49 +03:00
Nekotekina 2418de7e8b SPU ASMJIT: inline RDCH 2018-04-22 00:06:49 +03:00
Nekotekina 00ce814501 SPU ASMJIT: inline RCHCNT 2018-04-22 00:06:49 +03:00
Nekotekina 9ad5fc8a08 SPU: rewrite spu_channel_t 2018-04-22 00:06:49 +03:00
Nekotekina 3ffafb741c SPU ASMJIT: übertrampolines and spu_runtime
Use opt-out shared spu_runtime to save memory (Option: SPU Shared Runtime)
Implement "übertrampolines" for dispatching compiled blocks
Patch fixed branch points to use trampolines after check failure
2018-04-22 00:06:49 +03:00
Nekotekina 8ca33bcb94 SPU ASMJIT v2.0
Use X86Assembler and blocks
2018-04-22 00:06:48 +03:00
Robbie 477522210e Refactor debugger_frame into subclasses. Mostly trying to simplify
breakpoints.
2018-04-21 22:21:51 +04:00
Greg V 633004c820 Fix build with ffmpeg 4.0 2018-04-21 21:06:06 +04:00
Megamouse 8f4fa8a5b6 cellPad: check for more invalid parameters 2018-04-20 17:09:14 +04:00
Zion Nimchuk 3b24e7e685 Discord Rich Presence Integration (Thanks to @Megamouse for fixing the windows build) 2018-04-19 04:47:56 +04:00
Zion Nimchuk 3d551482a9 Remove weird whitespace from appdata
Fixes xml validation
2018-04-19 02:30:35 +04:00
TheAnig eb3dfb6bb4 Implemented sysCacheClear() (#4445) 2018-04-18 18:17:55 +04:00
Megamouse cecfc59040 Qt: implement log Repaint 2018-04-18 01:28:11 +04:00
TGEnigma 6baf675205 Fixes PPU disasm for branch opcodes 2018-04-16 19:02:06 +04:00
isJuhn da6f98f310 Fix setParam in cellGameDataCheckCreate2 2018-04-16 15:53:22 +04:00
Zion Nimchuk 2bb0387fc5 Fix appstream copypasta, thanks to @Dominator56 for pointing it out 2018-04-16 15:11:37 +04:00
Megamouse 41f4bb9016 Rename Supporter 2018-04-15 15:49:01 +01:00
Megamouse 69b5f25644 Qt: Fix vfs dialog reset and add some translations
Reset would crash the app, because a cleared item received a signal on currentItemChanged.
Also, Reset did not reset the list as one might think, but clean it and then result in wrong behaviour.
Furthermore the settings were saved, regardless of accepting the dialog or not.
2018-04-15 15:49:01 +01:00
Zion Nimchuk 78bb9a7278 Add appstream metadata for linux 2018-04-14 01:10:12 +04:00
JohnHolmesII 7303f04bc5 Minor bugfix 2018-04-10 15:06:56 +03:00
Nekotekina ea82b732a3 SPU: fix non-TSX path 2018-04-08 23:30:50 +03:00
Talkashie 64992f758d Fix typos (#4410)
* MASSIVE TYPO FIX part 1

* ANOTHER HUUUUGE TYPO FIX part 2

* thank you :hcorion: for all of your help. I could not have done this without you
2018-04-08 01:01:39 +01:00
GinkREAL 8a51af0b56 cellVdec: Do not decode next frame during end_sequence 2018-04-08 02:51:46 +04:00
Nekotekina c77b310422 Implement sys_vm_invalidate 2018-04-07 21:18:34 +03:00
Nekotekina 0797164fac SPU: fix possible livelock
The bug affects TSX path
2018-04-07 20:51:21 +03:00
Nekotekina 3681507136 Rewrite vm::reservation
Use flat virtual memory area
2018-04-07 20:51:21 +03:00
Nekotekina 2b5cf2455f SPU: improve TSX usage
Reduce transaction failure amount
Remove vm::try_to_lock
2018-04-06 21:47:54 +03:00
Nekotekina d392379c7a Use vm::passive_lock for SPU threads 2018-04-06 15:47:00 +03:00
Nekotekina e88508b679 SPU: cache barrier/fence masks 2018-04-06 15:47:00 +03:00
kd-11 568118634e vk: Squash some spec violations that went unnoticed 2018-04-05 01:06:50 +03:00
kd-11 cfd0b8a975 rsx: Fix alphakill 2018-04-05 01:06:50 +03:00
kd-11 93b2776604 rsx: Fix vertex input detection
- Properly detect inline array registers vs constant value registers
- Silence needless spam, 306E is 2D surface engiine, the assumption that y is multiplied by 306E pitch is not crazy
2018-04-05 01:06:50 +03:00
kd-11 53f2533a08 rsx: Implement proper Z-order curve in 3 dimensions
- Should fix garbage palette textures getting uploaded (LSD graphics)
2018-04-05 01:06:50 +03:00
kd-11 e291494282 rsx: Texture cache updates
- Properly implement section gather for 3d and cubemaps
  Implements render-to-3d and fixes some corner cases for render-to-cubemap
2018-04-05 01:06:50 +03:00
Zion Nimchuk b0352d6ef7 Silence some annoying terminal output 2018-04-03 03:17:52 +04:00
Zion Nimchuk 8c19ff4fb9 Make loading StyleSheets work for AppImages and if installed via make install 2018-04-03 03:17:52 +04:00
Nekotekina da9baac842 Improve save data dialog
Bug fix: don't display new data entry when not asked for
Use icon/title provided by the game for the new data entry
Display new data entry at the beginning of list when necessary
Minor cellSaveData cleanup
2018-04-02 16:27:28 +03:00
Nekotekina 0e74f2e340 Fix MMIO on SPU
Thanks Digitaldude555 for reporting the bug and @elad335 for pinging me
2018-04-01 22:39:48 +03:00
Nekotekina 402ca480cd Fix vm::check_addr usage 2018-04-01 22:39:48 +03:00
Nekotekina d871675b3b Process RawSPU MMIO in do_dma_transfer 2018-04-01 22:39:48 +03:00
Nekotekina bb0cfe383d Fix MFC_SYNC_CMD 2018-04-01 20:52:54 +03:00
scribam 717f2b0ac8 cellVdec: log error when using interlaced frame instead of throwing an exception 2018-04-01 03:36:22 +04:00
Megamouse 2bf405e36d rsx_debugger: clear command count when not used 2018-04-01 02:53:53 +04:00
Megamouse c42b25f10e rsx_debugger: use PerformJump on doubleclick instead of the mouse scroll 2018-04-01 02:53:53 +04:00
Megamouse b9318f73e6 rsx_debugger: handle show buffer per doubleclick through an event filter 2018-04-01 02:53:53 +04:00
Megamouse ff89f7ca45 Qt: add show_windowed_image to qt_utils 2018-04-01 02:53:53 +04:00
Megamouse ed7d514c31 rsx_debugger: move debugger table resize to qt_utils for reusability
maybe create a custom table class in the future
2018-04-01 02:53:53 +04:00
Megamouse d97d30ea2e rsx_debugger: save/restore table header states 2018-04-01 02:53:53 +04:00
Megamouse 4899e35fbb rsx_debugger: layout refactoring for highdpi and resizeability 2018-04-01 02:53:53 +04:00
Megamouse 92ec846375 Qt: simplify resetGeometry occurances 2018-04-01 02:53:53 +04:00
Megamouse 755ceb50a4 stub cellGem some more (#4349) 2018-04-01 02:03:37 +04:00
VelocityRa 706faa1d32 PPUTranslator: Ignore relative relocations 2018-04-01 01:32:08 +04:00
jjsat 4620fa8bd8 Return parameter error if the result of funcFixed is invalid. 2018-04-01 01:04:37 +04:00
jjsat 1dc87a0704 Corrected logic for handling number of returned save data list entries and total number of save entries. 2018-04-01 01:04:37 +04:00
jjsat bba7184090 Handle some invalid save function parameters. 2018-04-01 01:04:37 +04:00
jjsat d973337c4e Calculate save data file size more accurately and return size in savedata_get_list_item if requested. 2018-04-01 01:04:37 +04:00
Nekotekina 898637f830 Remove mfc_thread
Clear mfc_queue on reset
Improve MFC Proxy a bit
2018-03-31 21:13:12 +03:00
Nekotekina 78dbc4fb5f RawSPU: reset status register on start
Was proposed by @elad335
Implemented as atomic op
2018-03-31 20:35:30 +03:00
Nekotekina a3db2774f1 [LLVM] Fix thread limiter
Allow to apply max llvm threads setting as usual
2018-03-31 20:35:30 +03:00
Nekotekina c3a5e3f491 [LLVM Cache] Minor workaround 2018-03-31 16:51:19 +03:00
Ani 7359774c76 qt: Do not deploy Qt5Quick
We're using Qt5Qml but not Qt5Quick, therefore the extra extension can be removed
2018-03-31 02:54:59 +01:00
VelocityRa bca46e92d4 cellCamera: Implement cellCamera*NotifyEventQueue and do some refactoring 2018-03-30 20:50:31 +01:00
Jake 2c16dddd1e fix debug build 2018-03-30 13:30:04 +03:00
Jake 6d6d6fa827 dx12/vk/gl: implement use of vertex_data_base_index when calculating index 2018-03-30 13:30:04 +03:00
Megamouse 3e863f2189 remove redundant error messages in sceNpTrophy 2018-03-30 05:40:57 +04:00
Megamouse 2d68aed68f improve sceNpTrophyGetTrophyInfo and sceNpTrophyGetGameInfo 2018-03-30 05:40:57 +04:00
kd-11 ee0fe28ddc rsx: Fix copypasta 2018-03-29 13:52:11 +03:00
kd-11 7627ad04f1 rsx: Disable gamma control on WZYX textures
- Gamma is seemingly used for (D/X/A)RGB only. Data textures are unaffected
2018-03-29 13:52:11 +03:00
kd-11 f559c088a1 rsx: Dubious fix for broken B8 swizzle remap 2018-03-29 13:52:11 +03:00
pauls-gh a17025c465 Strict Rendering Mode (SRM) fix. Move old surface copy before texture upload.
Fixes the following issues on Tales of Vesperia which requires SRM.
- Blacked out scene after the sleeping dog now renders correctly
- Ghosting effect. The ghosting was most noticeable as a delay between the character rendering and the cell shading around the character. This appears to be gone with this change.
2018-03-29 11:01:58 +03:00
Megamouse 70cc2e3665 Qt: minor fixes 2018-03-28 16:01:32 +01:00
kd-11 fca6c4fb7f vk: Improve compatibility workarounds
- Disable fence reset on gcn1 - gcn3
- Enable polaris+ workarounds on linux if proprietary driver is used
2018-03-28 11:30:11 +03:00
Megamouse 05fc49506a Qt: use seperate icon sizes for game list and game grid 2018-03-27 19:40:25 +01:00
Kravickas e6cb4df877 Fix a typo in gcm_enums.cpp (#4333)
* Update gcm_enums.cpp
2018-03-27 18:43:38 +01:00
Asinine 2172e61ce5 Update settings to indicate speed differences between Interpreters and Recompilers for less confusion (#4345)
* Update settings_dialog.ui

* Qt: completely detach ppu and spu ui texts from backend.
2018-03-27 17:55:54 +01:00
kd-11 5aac8aa424 rsx: Clamp negative fog distance 2018-03-25 16:02:47 +03:00
kd-11 887ea43e39 rsx: Fix some texture cache problems
- gl/vk: Properly handle remapping temporary resources
2018-03-25 13:31:06 +03:00
kd-11 9fce5b0f7a gl: Fix leaking occlusion queries
- GL queries share the target binding (not asynchronous!)
- Discard active queries by closing them, leave closed queries alone (nothing to be done for discard op)
2018-03-25 13:31:06 +03:00
kd-11 22af70d0d0 gl: Always use indexed blend caps to avoid conflict with the state cache.
- glEnable/glDisable should not be used with GL_BLEND as the main renderer uses the indexed variant
2018-03-25 13:31:06 +03:00
kd-11 321c360dcb rsx: Overhaul rendertarget sampling/shuffles
- Reimplements render target views used for sampling
- Optimizes access using an encoded control token
- Adds proper encoding for 24-bit textures (DRGB8 -> ORGB/OBGR)
- Adds proper encoding for ABGR textures (ABGR8 -> ARGB8)
- Silence some compiler warnings as well
- TODO: Real texture views for OGL current method is a hack
2018-03-25 13:31:06 +03:00
kd-11 9bb1ed78f9 gl: Implement video-out calibration for gamma and dynamic range
- Seems to be of limited use but if it is determined to be useful, a vulkan implementation can be done
2018-03-25 13:31:06 +03:00
kd-11 9fc1740608 rsx/fp: Fragment program overhaul
- Separate TXB from TXL: They are completely different!
- Properly perform TMU emulation in the fragment shader. Implemens SRGB conversion and alphakill at the moment
- Properly perform ROP emulation in the fragment shader. Implements FRAMEBUFFER_SRGB. While support on the chip looks to be incomplete (and wierd), it does work
- Document some more bits in SHADER_CONTROL register
2018-03-25 13:31:06 +03:00
kd-11 c6a2525c9b video out: Set up video configuration options in fxm
- TODO: Actually do something with the values
2018-03-25 13:31:06 +03:00
kd-11 aeebeed0f2 vk: Fix AMD primitive restart emulation when strict mode is active
The restart emulation is there to keep the proprietary drivers from randomly crashing when using primitive restart
2018-03-25 13:31:06 +03:00
kd-11 9f416e5ce1 rsx/gl/vk: Obey channel remapping on framebuffer resources if requested 2018-03-25 13:31:06 +03:00
kd-11 27552891ad rsx/fp: Improvements
- Export some debug information in the free texture register space components zw
  Very useful when analysing renderdoc captures
- Enable shadow comparison on depth as long as compare function is active and texture is uploaded for depth read
  Some engines (UE3) read all the components in the shader and use mul/mad with the result
2018-03-25 13:31:06 +03:00
kd-11 5817f9fe3f rsx: Texture format fixes
- Implement SRGB (gamma corrected) textures (DXT1, DXT3, DXT5, RGBA8 only)
- Fix channel map decode for XY data texture formats
- Fix remap layout for X16 textures (verified with Mass Effect 3)
2018-03-25 13:31:06 +03:00
Talkashie a35bcb131e unimportant teepo fix (#4328)
* ultra teepo fix part 1

* super mega teepo fix part 2
2018-03-24 20:21:50 +04:00
eladash 63fa50080d sys_spu: dont check prio if spu group type is 0x20
it's currently unknown whats the exact relationship between the prio and the group type SYS_SPU_THREAD_GROUP_TYPE_COOPERATE_WITH_SYSTEM (0x20).
tho we do know prio'es whom less than 16 are reserved for the system.
2018-03-24 19:48:14 +04:00
eladash d27a375363 RawSPU/MFC: fix get start type proxy commands 2018-03-24 19:48:14 +04:00
eladash fad9cd6ef1 sys_spu: fix spu image loading address calculation
by calculating mem_size after nsegs has being calculated
2018-03-24 19:48:14 +04:00
Zeke Sonxx 3066a05df0 sys_crash_dump user_log_area improvements
Gets Destiny BLUS31181 to Intro
2018-03-24 17:49:18 +04:00
scribam 50446f7fef Partial compilation fixes for osx 2018-03-24 11:14:40 +00:00
Kaiwen Xu 32d38a4633 Fix git-version.h not correctly updating. 2018-03-24 00:52:11 +04:00
scribam 1ae724f739 sys_fs: returns the correct error value when the path is 0 or an empty string 2018-03-23 21:45:22 +04:00
Megamouse 50ff987850 stub sceNpScoreWaitAsync and sceNpScorePollAsync
and sceNpScoreCreateTransactionCtx
2018-03-23 20:46:24 +04:00
pauls-gh 44cddda4b4 Fix VTC source index increment 2018-03-23 12:01:30 +03:00
pauls-gh d79a544320 VTC tiling - fix source offset increment. 2018-03-23 12:01:30 +03:00
pauls-gh e5b4710471 Add end condition for VTC copy. This handles the case when depth is not a multiple of 4. 2018-03-23 12:01:30 +03:00
pauls-gh e6010ba2ca Fix code formatting 2018-03-23 12:01:30 +03:00
pauls-gh fd8d2ecbf4 Remove Volume Texture Compression (VTC) tiling for Vulkan, DX12 and ATI (OpenGL). 2018-03-23 12:01:30 +03:00
Nekotekina 78cfba158d Use lowercase for FNIDs for consistency 2018-03-22 23:24:58 +03:00
Nekotekina 2c6c8f1a25 Implement patch support for PRX
Store SHA-1 hash in ppu_module
2018-03-22 23:24:58 +03:00
Nekotekina 19944eeed0 Implement SPRX precompilation
Automatically precompile firmware modules
Add "Create LLVM Cache" menu (for games)
Reimplement jit_compiler::cpu as static method
2018-03-22 23:24:58 +03:00
Megamouse 9d961f620b rsx/Qt: add option to disable the shader compilation hint 2018-03-22 16:33:37 +04:00
Megamouse 9fcba58537 Qt: sort the game list case insensitive initially 2018-03-22 16:33:37 +04:00
Megamouse 9f1fe5775e Qt: use QString::simplified() instead of get_single_line
hopefully this works
2018-03-22 16:33:37 +04:00
Megamouse baea538c32 Qt: clean up gui_settings.h - move general functions to qt_utils.h 2018-03-22 16:33:37 +04:00
Megamouse c10e195dba Qt: move compat_status to game_compatibility.h 2018-03-22 16:33:37 +04:00
Megamouse 5492e0eae1 Qt: enable hiding on game list and optimize the game list filter 2018-03-22 16:33:37 +04:00
Megamouse 17d2124a71 visual studio: add filters for some module headers 2018-03-22 16:33:37 +04:00
scribam af89b62194 Check if the compiler supports "-march=native" 2018-03-21 14:11:05 +03:00
scribam 526228442b Use "USE_NATIVE_INSTRUCTIONS" variable instead of a specific "TRAVIS" variable 2018-03-21 14:11:05 +03:00
GeniusMage 4e2a8a3cdb Teepo fix
2D isn't always > 3D
2018-03-21 13:40:34 +03:00
eladash 252ddf8085 set logging stack mode to true by default 2018-03-20 02:49:53 +04:00
eladash fc3698f831 qt: make description of disabled AF setting a bit clearer 2018-03-20 02:49:53 +04:00
eladash 3426531e38 qt/spu: remove max dma write size setting
This wasn't really used for anything tbh
2018-03-20 02:49:53 +04:00
kd-11 92fb828d52 gl: Compat support for mesa drivers Needs CLIENT_STORAGE bit set for persistent buffers to make them useful 2018-03-20 00:11:41 +03:00
kd-11 d13584f858 rsx: fixups
gl/vk: Bump shader cache version
gl/vk: Disable anisotropic override when strict mode enabled as it is proven to alter some games negatively
gl: Clamp buffer view range to not exceed the backing buffer size. Also add assert for the same condition
2018-03-19 12:13:34 +03:00
scribam b232409cc5 Add return codes when camera handler is set to null 2018-03-16 18:16:49 +00:00
scribam da635af0d6 Make cellCameraInit returns CELL_OK when no camera is plugged in. 2018-03-16 18:16:49 +00:00
kd-11 5f047034ae rsx: Disable async count verification to avoid lockup due to zombie reports in ZCULL 2018-03-13 18:55:03 +03:00
kd-11 ffe6c9ba5a fix linux builds 2018-03-13 18:55:03 +03:00
kd-11 910fc54ee2 vk: Implement reading from cell if swap image isn't found 2018-03-13 18:55:03 +03:00
kd-11 f00d9a7c7f rssx" Halfplement alpha-to-coverage AA transparency 2018-03-13 18:55:03 +03:00
kd-11 2dce55d036 rsx: ZCULL synchronization fixes
- Track asynchronous operations in RSX core
- Add read barriers to force pending writes to finish.
  Fixes zcull delay flicker in all UE3 titles without forcing hard stall
- Increase zcull latency as all writes should be synchronized now
2018-03-13 18:55:03 +03:00
kd-11 315798b1f4 rsx: ZCULL rewrite and other improvements
- ZCULL unit emulation rewritten
- ZCULL reports are now deferred avoiding pipeline stalls
- Minor optimizations; replaced std::mutex with shared_mutex where contention is rare
- Silence unnecessary error message
- Small improvement to out of memory handling for vulkan and slightly bump vertex buffer heap
2018-03-13 18:55:03 +03:00
kd-11 dece1e01f4 rsx: Improve transform constants management
- Removes the duplicate local_transform_constants
- Resets the transform constants on every context reset
- Simplifies the code abit which should make it faster
- NOTE: Transform constants are persistent across context re-init events (VF5)
2018-03-13 18:55:03 +03:00
kd-11 a19ffba8e8 rsx: Simplify MRT blend setup; Enable separable MRT blend on vulkan and fix corner cases for GL 2018-03-13 18:55:03 +03:00
kd-11 e230867492 rsx: Properly implement raster window offsets 2018-03-13 18:55:03 +03:00
kd-11 0c8e4c0887 rsx: Improve FIFO commandlist flattening
- TODO: Alot of work is still needed to execute draw commands out of order
  Thats the only solution to games sending many draw calls with high frequency of state changes
2018-03-13 18:55:03 +03:00
kd-11 84b8a08d26 rsx: Basic performance counters 2018-03-13 18:55:03 +03:00
kd-11 2855869530 vulkan: Support APPLE
- Adds support for compilation on MAC with moltenVK. Note that vulkan does
  not work on MacOS yet. There are two main blockers:-
  1) Texture component swizzles are not supported except for
  RGBA8_UNORM->BGRA8_UNORM.
  2) There is a bug in their SPIR-V -> MSL generator.
  GLSL.std.450.xxxx functions are not implemented which breaks rpcs3
  functionality. Trying to compile a vertex shader will throw because
  unpackHalf2x16 is missing.
2018-03-13 18:55:03 +03:00
kd-11 d41b49d8b4 rsx/fp: Color output registers are always present and zero initialized
- According to NV_fragment_program spec, registers are zero initialized always
- A program even without writing to these registers will have black (0, 0, 0, 0) output
  Confirmed behaviour with MotorStorm games. Their engine uses this quirk to clear color buffers when doing depth replace
  Might be an unfixed game bug
2018-03-13 18:55:03 +03:00
kd-11 4804efc17d rsx: Clear up confusion on depth writes.
According to the NV_fragment_program spec, its not feasible to have 16-bit depth wries
 NOTE: NV_fragement_program precedes NV_fragment_program2 which is very
 close to what RSX consumes. It is hardware from that era afterall
2018-03-13 18:55:03 +03:00
kd-11 053ab585f4 gl/vk: Clean up some format casts
- TODO: Byte ordering considerations on data casts
2018-03-13 18:55:03 +03:00
kd-11 20d4c09a1c rsx/vk/gl: Enforce format matching for render target resources. Fall back to raw data copy if match fails
- Forces Bitcast of texture data if input format cannot possibly be the
  same as the existing texture format

- rsx: Other minor improvements to texture cache :-
  - remove obsolete blit engine incompatibility warning. The texture will be re-uploaded if it is indeed incompatible
  - Implement warn_once and err_once to avoid spamming the log with systemic errors
  - Track mispredicted flushes
  - Reswizzle bitcasted texture data to native layout
    TODO: Also needs reshuffle according to input remap vector
2018-03-13 18:55:03 +03:00
kd-11 68b3229756 rsx/fp: Improve rgister component gather detection
- Also avoids clobbering register data by keeping gathered bits in a temp var
2018-03-13 18:55:03 +03:00
kd-11 87741141f1 rsx/vulkan: Add post-compilation key validation and dynamically determine attachment write maks based on decompiled shader
- A new step is added between decompilation and pipeline object creation allowing for properties to be updated based on shader contents
- Allos masking off attachment writes that are unmodified in the shader
2018-03-13 18:55:03 +03:00
kd-11 705820c430 rsx: Nvidia driver compatibility workarounds
- Sanitize NaN values before they reach the driver. On nvidia (X * NaN = X)
2018-03-13 18:55:03 +03:00
kd-11 6b23e733d0 rsx/gl/vk: Improvements
- gl: Do not call makeCurrent every flip - it is already called in set_current()
- gl: Improve ring buffer behaviour; use sliding window to view buffers larger than maximum viewable hardware range
  NV hardware can only view 128M at a time
- gl/vk: Bump transform constant heap size When lots of draw calls are issued, the heap is exhaused very fast (8k per draw)
- gl: Remove CLIENT_STORAGE_BIT from ring buffers. Performance is marginally better without this flag (at least on windows)
2018-03-13 18:55:03 +03:00
kd-11 07cbf3da48 rsx/gl: Minor fixes
- Identify depth textures reaching the gpu via shader_read upload path
- Use correct timestamp counter for opengl
- inline draw_state::test_property because msvc doesnt do it for us
2018-03-13 18:55:03 +03:00
kd-11 af1b13550b rsx/vk: More optimizations
- Do not bother rechecking the dirty sampler pool for hits. Its faster to create new sampler than to search the pool
- Reserve some memory on vertex layout struct to reduce reallocation penalty
2018-03-13 18:55:03 +03:00
kd-11 8ccaabb502 vulkan: Optimize vertex data upload
- Reuse buffer views as much as possible, vkCreateBufferView is slow on NV
  Implemented as a large sliding window, reuseable until it is filled
2018-03-13 18:55:03 +03:00
kd-11 01349b8cee rsx: Texture cache fixes - Optionally attempt to merge framebuffers into an atlas if partial resources are missing - Support for data update requests to the temporary subresource handler This is useful for framebuffer feedback loops where a new copy is needed after every draw call (resource is always dirty) 2018-03-13 18:55:03 +03:00
kd-11 4487cc8e7a Remove an ugly hack pertaining to partial framebuffer-resident texture data - Its better to fill in the missing information with a wrap or clamp than to fake the texture reads in valid regions - Texture coordinate scaling is used to fill in for the cropped dimension available 2018-03-13 18:55:03 +03:00
TGEnigma cb9e6e75db Debugger improvements (#4026)
* Improve debugger
 * Added 'Step Over' functionality
 * Added special SPU pause functionality that pauses the SPU thread when the tag mask is at 0x80000000 by holding ctrl while pausing
  * Go to address dialog now evaluates expressions, including defined variables such as pc, r1, r2, etc
    * Requires QtScript to be linked with the project
  * Made the option to center shown addresses (Go to addr/pc) optional by making it an entry in the GUI ini config
  * Shown addresses now appear 'selected'
  * New keyboard shortcuts!
    - Ctrl+G -> Go to address
    - F10 -> Step Over
    - F11 -> Step (Into)
2018-03-13 16:23:12 +04:00
Nekotekina 817dfe8651 cellGameContentPermit workaround 2018-03-12 19:16:52 +03:00
Nekotekina ba54f7ae39 Improve cellGameCreateGameData error checks 2018-03-12 18:53:57 +03:00
Nekotekina f328cdbaef Fix cellGame regression 2018-03-12 11:40:12 +03:00
Nekotekina 4b1c052030 Fix crash on exit after access violation 2018-03-11 19:33:02 +03:00
Nekotekina c0a0cb98c5 Fix argv for DG category 2018-03-11 19:33:01 +03:00
Nekotekina 4fd69a09c7 Fix cellGameDataCheckCreate2 2018-03-11 19:33:01 +03:00
Nekotekina eea2c20420 Improve vfs::mount
Mount /dev_bdvd/PS3_GAME if necessary
2018-03-11 19:33:01 +03:00
Nekotekina f4d2fccdfe Improve boot dir access
Add Emu.GetDir() method
2018-03-11 19:33:01 +03:00
Nekotekina c8a6bc6e24 Relax /dev_bdvd mounting requirements
Allow some PSN games with DG category to boot
2018-03-11 19:33:01 +03:00
Jake 7bbadfd08b ppu/sys_interrupt: add stack_reset command to fix sys_interrupt stack overflowing 2018-03-09 20:30:59 +04:00
Jake 3a9428a88e rsx: Fix alpha test on VK/GL
Moving alpha test outside of fp_main. This enforces alpha test is still done even if shader asm has early return
2018-03-09 18:06:20 +03:00
Jake 7233640cf0 rsx: add vertex data base to offset and mask before translating address 2018-03-07 16:57:20 +03:00
Talkashie d4e88aa11c gui: Fix typos and clean up Engrish (#4250) 2018-03-05 18:28:10 +00:00
Jake ec0cd9f006 cellGame: Fix cellDiscGameGetBootDiscInfo return values (#4241) 2018-03-03 03:11:25 +04:00
Megamouse 8db7ef4d5a Qt: enable background images for floating dock widgets 2018-03-02 21:50:48 +04:00
Nick Renieris 504e3112dd [HLE] First steps to Playstation Move (#4083)
* [sysutil] Add Magnetometer system param

*  [ui] Add UI for Move handler

 Current options are "Null" and "Fake".

* cellGem: Improvements

* cellCamera: Improvements
2018-03-02 20:51:21 +04:00
Nekotekina f96e9b6ed7 Fix boot game crash 2018-03-01 16:28:08 +03:00
Nekotekina f056b2f4ab Improve TTY output
Use atomic variable to sync TTY size
Implement console_putc (liblv2)
Write plaintext instead of HTML
Slightly improve performance
Fix random line breaks in TTY
2018-03-01 16:28:08 +03:00
Nekotekina 445b7c0758 Optimize SPU interpreter
Made SPU decoder similar to PPU decoder
2018-03-01 16:13:35 +03:00
Nekotekina 53f8b03acc CPUTranslator: implement ICmp ops
Added operators ==, !=, >, <, >=, <=
2018-03-01 16:13:35 +03:00
Megamouse 900329a1de Qt: fix dockwidget background 2018-03-01 17:10:26 +04:00
scribam dacc9af38f Add 2-channels mode for cellAudioOutGetDeviceInfo 2018-03-01 04:20:54 +04:00
scribam 8d7620d95f Change return of function "sceNpMatching2Init" to CELL_OK 2018-03-01 01:41:42 +04:00
Megamouse 3043c73745 Fix Boot regression introduced by #4158 2018-02-28 23:44:06 +04:00
Megamouse f786c078c2 Qt: enable custom fonts for stylesheets and add random object names 2018-02-28 23:44:06 +04:00
scribam 31cee7e4c8 Make cellNetCtlGetInfo returns the correct value in disconnected mode 2018-02-28 22:25:51 +04:00
elad 6e8ccbcf17 spu/interp: optimize floating point exception checking
read once the MXCSR register and use his value to check for all exceptions
2018-02-28 21:30:33 +04:00
Megamouse 72e54e8b60 Qt: ask for cache and config removal on app remove (#4016) 2018-02-28 20:06:44 +04:00
Andrey e0f53ace19 Improve GDB debug server (#4027)
* Made GDB debugger working with IDA

* Added async interrupts support

* Report proper thread after pausing

* Support attaching debugger before running app
2018-02-28 19:31:39 +04:00
Megamouse 2444385763 Qt: simplify Boot options a bit (#4158) 2018-02-28 18:53:39 +04:00
Megamouse 6141bc5598 Fix firmware installation for vfs 2018-02-28 17:27:06 +04:00
Megamouse 9138d537c8 Qt: remove gamelist toolbar 2018-02-28 16:52:19 +04:00
scribam 05354698f0 Add callbacks for cellStorage 2018-02-28 15:58:50 +04:00
scribam 14e15b2feb Add callbacks for cellUserInfo 2018-02-28 15:58:50 +04:00
scribam 324d21d849 Add callbacks for cellPhotoImport 2018-02-28 15:58:50 +04:00
scribam aa30e865c2 Add callbacks for cellSysconf 2018-02-28 15:58:50 +04:00
scribam 0772b9c879 Add callbacks for cellCrossController 2018-02-28 15:58:50 +04:00
scribam 296052b1ff Add callbacks for cellPrint 2018-02-28 15:58:50 +04:00
scribam be834a67d1 Add callbacks for cellPhotoDecode 2018-02-28 15:58:50 +04:00
scribam b63461f599 Add callbacks for cellMusicExport 2018-02-28 15:58:50 +04:00
scribam 1fb7cc4002 Add callbacks for cellMusicDecode 2018-02-28 14:47:35 +04:00
elad b61a69c877 fix spu interpreter single stepping 2018-02-25 20:30:44 +04:00
scribam 7753ac60b0 Add CELL_GAMEUPDATE_RESULT_STATUS_* enum 2018-02-25 13:17:38 +00:00
scribam aabf3c6695 Checks for content_id in sceNpDrmVerifyUpgradeLicense and sceNpDrmVerifyUpgradeLicense2 2018-02-25 13:17:38 +00:00
zarroboogs d78b0467d8 RPCS3 0.0.5: Versioning Changes (Hotfix) (#4208)
* travis hotfix

* expose env vars for tag, hash and commit number

* bump version

* also update av version string

* remove hash from av version for master builds

* change hash encoding back to ascii
2018-02-24 19:54:58 +00:00
scribam ede76033a7 Add callbacks for cellMusic 2018-02-24 02:38:43 +04:00
Nikolay Amiantov 41bd07274f Fix quoting in cmake 2018-02-23 19:06:37 +00:00
Megamouse 5266dd6c60 Update for Qt 5.10 (#4202)
* Update Readme for Qt 5.10

* Update cmake for Qt 5.10

* Update travis to Qt 5.10.1
2018-02-23 02:08:14 +04:00
Megamouse cf1c45dfe8 Qt: use setAttribute(AA_DisableWindowContextHelpButton) instead of flags
probably needs Qt 5.10.1 to work propery
2018-02-22 00:18:14 +04:00
Megamouse ae7e275a9d sceNpTrophyGetRequiredDiskSpace: take vfs into account for trophy dir 2018-02-22 00:18:14 +04:00
Megamouse b60f29282a Qt: add translation to save manager messageboxes 2018-02-22 00:18:14 +04:00
Megamouse bda466c3bd Qt: improve VFS dialog a bit
- use normal selection instead of doubleclick
- move SaveSettings out of the tabs to reduce file access
- translate EmptyPath as well
- some other minor refactors to reduce lines of code
2018-02-22 00:18:14 +04:00
kd-11 4c6ceeff11 rsx/vk: Cleanup
- Silence some warnings, remove dprints
2018-02-21 14:59:46 +03:00
kd-11 77f2b521e1 vulkan: Swapchains reimplemented
- Adds support for abstract implementations
- Adds native windowing implementations for WIN32 and X11 as fallbacks
  when present support is lacking (headless configs)
2018-02-21 14:59:46 +03:00
Juhn 1b26ec56ed Implement _sys_qsort in sys_libc_.cpp (#4176) 2018-02-21 00:24:47 +04:00
elad 7c0fd5094e disasm: clamp spu address 2018-02-20 20:27:57 +04:00
Zion Nimchuk 77b8f3a0f9 Add an easy way for package builders to disable native cpu optimizations 2018-02-19 17:30:24 +04:00
Megamouse 95d232db4f Qt: fix gamegrid scroll
scrollafter is useless in gamegrid, because the currentIndex was reset after PopulateGameGrid, so just ignore it.
2018-02-19 01:23:40 +04:00
Robbie 00b1ff752d Add flag for rockband. Tests have shown it independent other flags. But, actual use is currently not known. 2018-02-18 04:29:41 +04:00
elad 877b296fc3 hle: return enosys on unpresented syscalls 2018-02-16 21:57:31 +04:00
kd-11 ee88e7f948 rsx/gl: Hotfix for GL format compatibility check when high precision depth buffers is enabled 2018-02-16 16:14:54 +03:00
kd-11 ebb9fc7cd9 vk/drivers: Restore polaris+ patch to disable primitive restart 2018-02-16 16:14:54 +03:00
kd-11 32f0e91893 vulkan: Improve primitive restart workaround for vega/polaris
- For some reason the hardware forgets that primitive restart is enabled and tries to actually read vertex index 65535
- Works correctly if uint32 vertex indices are used instead of uint16 for cases where primitive restart is active
2018-02-16 16:14:54 +03:00
kd-11 a8ab408f64 rsx: Account for null blit ops (memcpy)
- Do not perform extra memory tasks if no actual image copy was performed
2018-02-16 16:14:54 +03:00
kd-11 661b8b006f rsx: Add texture readback statistics to the texture cache and debug overlay 2018-02-16 16:14:54 +03:00
kd-11 1bd77c2f51 rsx: Add cache pattern checking to blit engine resources
- Feature was implemented long ago but was not functional due to bugs
2018-02-16 16:14:54 +03:00
kd-11 c191a98ec3 vulkan API fixes
- Fix for texture barriers
- vulkan: Rework texture cache handling of depth surfaces
- Support for scaled depth blit using overlay pass
- Support proper readback of D24S8 in both D32F_S8 and D24U_S8 variants
- Optimize the depth conversion routines with SSE
- vulkan: Replace slow single element copy with std::memcpy
- Check heap status before attempting blit operations
- Bump guard size on upload buffer as well
2018-02-16 16:14:54 +03:00
kd-11 3bbecd998a infinitesimal fixes 2018-02-16 16:14:54 +03:00
kd-11 3406cc9886 gl: Fix save binding state for cube textures 2018-02-16 16:14:54 +03:00
kd-11 bd297d079d rsx: Minor optimizations 2018-02-16 16:14:54 +03:00
kd-11 a5500ebfa4 rsx: Fix disjoint draw range splitting
- Fixes flickering and missing draws in R&C and other games such as Motorstorm Apocalypse and Okami HD when strict mode is disabled
2018-02-16 16:14:54 +03:00
kd-11 a64bea1286 rsx/fp: Discard shaders with undefined (non-existent) writes. On nvidia+vulkan, undefined writes autofill with blue color 2018-02-16 16:14:54 +03:00
kd-11 b67f28e00d rsx/texture_cache: Do not access non-existent components 2018-02-16 16:14:54 +03:00
kd-11 89c548b5d3 rsx: fbo fixes 2.5
- Implement flush-always behaviour to partially fix readback from a currently bound fbo
  - Without this, only the first read is correct, as more draws are added the results become 'wrong'
  - Fixes WCB and cpublit behviour
- Synchronize blit_dst surfaces to avoid data loss when gpu texture scaling is used
  - Its still faster in such cases to disable gpu texture scaling but some types cannot be disabled without force cpu blit (e.g framebuffer transfers)
- Memory management tuning
  - rsx: on-demand texture cache rescanning for unprotected sections
  - rsx: Only framebuffer resources are upscaled
  - Do not resize regular blit engine resources
  - Lazy initialize readback buffer when using opengl
  -- These measures should help minimize vram usage
2018-02-16 16:14:54 +03:00
kd-11 02e571adbc gl: Cleanup some more things
- Avoid referencing GL's null texture
- Improve texture creation helpers
- Remove useless __glcheck from GLHelpers.cpp
2018-02-16 16:14:54 +03:00
kd-11 98e50d3064 gl: Reuse framebuffer textures whenever possible 2018-02-16 16:14:54 +03:00
kd-11 f20fd217f8 rsx: Reorganize framebuffer setup code
- Fixes some fast paths for framebuffer creation and binding
2018-02-16 16:14:54 +03:00
elad 95c6ac699b hle: gpio syscalls
* add sys_gpio_get, sys_gpio_set
2018-02-12 04:29:07 +04:00
Ani 9caceeacd7 gui: Update compatibility colors
Update to the colors now used by the website
2018-02-12 01:58:14 +04:00
Ani c689a9ba8e rpcs3qt: Handle duplicate name warning
The name 'verticalLayout_29' (QVBoxLayout) is already in use, defaulting to 'verticalLayout_291'.
2018-02-12 01:58:14 +04:00
Ani 777cd9a8ae Remove redundant imports
They are already included on the related rpcs3qt files
2018-02-12 01:58:14 +04:00
Ani 6dd2c78b1b Remove unused files (ps3emu_api) 2018-02-12 01:58:14 +04:00
Nekotekina d2652aedd2 VK: add two options (workarounds)
Force FIFO present mode option is workaround for recent MESA drivers
Force primitive restart flag should also work on said drivers
2018-02-11 19:52:14 +03:00
Nekotekina fa04ff6d90 CPUTranslator: add bitcast, trunc, zext, sext 2018-02-10 15:57:01 +03:00
Nekotekina cce0ad0c35 Clean vm::ps3 namespace use 2018-02-09 17:49:37 +03:00
Nekotekina 76be7d40ac Remove PSP2 2018-02-09 15:24:46 +03:00
Nekotekina 13aa88c3c4 Game list: improve deduplication logic 2018-02-08 21:10:03 +03:00
Nekotekina 439a78d12c SPU ASMJIT: rewrite 128-bit shifts by bit
Six instructions changed to use xmm registers instead of gpr.
ROTQBII, ROTQMBII, SHLQBII look better (shifts by imm)
ROTQBI, ROTQMBI, SHLQBI changed for consistency (shifts by variable)
2018-02-08 21:10:03 +03:00
Nekotekina c7c49ab286 SPU ASMJIT: minor change to ROTH instruction
Only AVX-512 path is changed (third version).
This instruction is extremely rare.
And the code is probably not optimal.
So this commit is pretty useless.
2018-02-08 21:10:03 +03:00
Nekotekina b01e460863 PPU LLVM: rewrite AVG instructions 2018-02-08 21:10:03 +03:00
Nekotekina 93c0a0aa35 PPU LLVM: rewrite add/sub instructions
Use new patterns for saturation instructions
Avoid ZExt/SExt completely
2018-02-08 21:10:03 +03:00
Nekotekina 74834527eb SPU: rewrite ORX instruction 2018-02-08 21:10:03 +03:00
Nekotekina 9b9ac3ca62 SPU: emit VZEROUPPER
Workaround dirty AVX high state
2018-02-08 21:10:03 +03:00
Nekotekina db83113316 Initial cpu_translator impl 2018-02-08 21:10:03 +03:00
Nekotekina 17ce5d9117 Handle exceptions at game list update
Should fix #4056
2018-02-08 20:46:13 +03:00
Nekotekina e2439e962c SPU: use XOP instructions 2018-02-08 20:46:13 +03:00
Nekotekina 84103b69cf SPU: 16-bit shifts for AVX2 2018-02-08 20:46:13 +03:00
elad 5b5f2d4240 hle: add a missing check in sys_spu
check if exit code exists and the spu is stopped by a stop instruction
and optimize the way were getting the exit code
2018-02-06 04:09:07 +04:00
elad 956ae17876 spu: add a missing STOP code
should fix #2456
for whatever reason, this call accepts only an empty ouput mailbox, otherwise break
2018-02-06 04:09:07 +04:00
elad a6fb6c865d mfc: dont check for one completed command if tag update requast is 2
Instead check only for completed commads tag groups specified in the tag mask ( as real hw does )
2018-02-06 04:09:07 +04:00
TGEnigma f6b0b31e8b Fix gs_frame spawning on monitor other than the one the main window is on (#4029)
* Fix gs_frame spawning on a screen other than the one the RPCS3 window is on for multi-monitor setups

* Cleaned up code & refactored it into a utility function for reuse

* Qt: take gs_frame's framemargins into account by using showEvent
2018-02-03 19:50:48 +00:00
scribam cd9bfba790 Add sceNpMatchingInt 2018-02-03 14:07:38 +00:00
scribam 6001808174 Add callbacks for cellPhotoExport 2018-02-03 03:52:06 +00:00
TGEnigma 55821041bf core/GUI: Fix null pointer dereference 2018-02-02 11:17:12 +03:00
kd-11 e7537cded5 vk: Also discard background if window is too small in vertical axis 2018-02-02 10:07:55 +03:00
kd-11 ea8bdda9a3 rsx/gl/vk: Support for swizzled? context surfaces
- For some surfaces, dimensions are passed via the log2 bits rather than surface pitch
-- This is similar to the setup for nv406e and probably means the surfaces are padded and swizzled
2018-02-02 10:07:55 +03:00
kd-11 eeb6e29e39 vulkan: implement proper texture read barriers 2018-02-02 10:07:55 +03:00
kd-11 b9cca71c47 gl: API compliance fixes
- Do not assume texture2D when creating new textures
- Flag invalid texture cache if readonly texture is trampled by fbo memory.
  Avoids binding a stale handle to the pipeline and is rare enough that it should not hurt performance
2018-02-02 10:07:55 +03:00
scribam 2821915eae Add callbacks for cellVideoUpload 2018-02-01 17:19:52 +04:00
scribam 68143bc47c Add callbacks for cellVideoExport 2018-02-01 17:19:52 +04:00
scribam f4e5bfbdf7 Add callbacks for cellRec 2018-02-01 17:19:52 +04:00
Zion Nimchuk 70fe0cc224 Install and load icons from Icons in executable directory, fixes local builds using Icons 2018-01-31 01:01:33 +04:00
kd-11 4f7d3e5dc1 vk: Stuff
- Remove subpass dependencies; transitions are handled via exicit imagememrybarriers
- Reuse sampler objects whenever possible; create/delete cycles are not free
2018-01-30 21:16:43 +03:00
kd-11 33bcdd476c glsl/fp/vp: Avoid shader clutter
- Do not add unused subroutines in shaders unless necessary
-- makes shaders easier to read and disassembled spir-v has less clutter
- glsl: Replace switch block with lookup table
2018-01-30 21:16:43 +03:00
kd-11 2e04dceaf0 rsx: misc fixes
- Supply explicit options for spv emit allowing optimizations (not yet compiled into the backend)
- Add epsilon fix to glslcommon
- Fix shader dialog crash when using qt (race condition)
2018-01-30 21:16:43 +03:00
kd-11 648fc92184 rsx/fp/vp: Epsilon value is too large!
- Original epsilon value was 1.E-10 which nvidia linux driver could not read properly
-- Restores the original value represented in decimal notation
2018-01-30 21:16:43 +03:00
kd-11 c05d164eee gl: Implement swap control on linux 2018-01-30 21:16:43 +03:00
Juhn d37aa466ff Fix native UI save_dialog when there are no saves (#4113)
- Also implements single action list view with cancel action only
2018-01-30 16:26:00 +03:00
ZeroZero2018 cd8e97a7c6 Fix to B8 format render target swizzling (#4123) 2018-01-29 21:58:25 +03:00
isJuhn a27e2db455 Stub some functions in cellWebBrowser 2018-01-28 02:50:42 +04:00
Megamouse bb5bdb2e8c improve cellKB keyreleases and autorepeat 2018-01-27 01:57:55 +04:00
Megamouse b9c10a186d Qt/Core: implement max llvm compile threads 2018-01-26 01:57:05 +04:00
Zangetsu38 c8965564e4 vk/ogl: Fix regression for G8B8 2018-01-24 20:20:28 +03:00
Zangetsu38 a9c26b40dd hle: Stub function Unimplemented in NpSns. 2018-01-24 20:20:28 +03:00
Jake efe6a6cf53 rsx: fixed emulated primitive restart 2018-01-24 16:28:09 +00:00
Jake 2f414f96bf rsx: fix potential hang during thread close 2018-01-24 16:28:09 +00:00
Inviuz cc0d7c5985 improved hack/fix for cellsurmixer 2018-01-24 15:21:24 +00:00
kd-11 4f01794713 Minor fixes
- vulkan: Do not assume an aux frame context must exist in a well defined state as set in init_buffers() since the request might be external (via overlays path)
- gl: Do not bother waiting for idle before servicing external flip requests
- gl: Queue overlay cleanup requests to ensure only glthread attempts touching the context
- overlays: Do not compute size metrics for invalid/unsupported glyphs
2018-01-22 11:43:35 +03:00
kd-11 3d9e3a16f1 rsx/gl/vk: Fixes and optimizations
- opengl driver optimization for nvidia. On nvidia glTextureBufferRange performance is horrendous
-- Initialize texture buffer to whole buffer at startup and use absolute offsets to read data instead
-- Over 2x performance in some cases (Resogun, TNT racers)
- gl/vk: Do not flip non-existent display buffers. Fixes spec violation at boot in TNT racers demo
- whitespace fixes for sys_rsx
2018-01-22 11:43:35 +03:00
kd-11 ab17b49e15 scheduler stuff
- more threads for rsx
- better 1600
2018-01-22 11:43:35 +03:00
kd-11 fcd702c8a6 rsx: Texture format fixes
- Implement low bit decode override flags for 2-component textures
- Properly implement alot of texture remaps according to the autotest results

rsx: Do not unnecessarily shuffle WZYX->RGBA unless we have proof
- From looking at format swizzles, this is incorrect
2018-01-22 11:43:35 +03:00
kd-11 743928b379 vk/gl: Preserve clamped z precision to some extent
- Use edges of depth range to map clamped stuff

Disable range compression on regular draws vs extended range draws
- Some applications require full 0-1 usage without compromises.
-- TODO: This leaves the extended range z values to fight with regular draws in the .99 - 1.0 range
2018-01-22 11:43:35 +03:00
elad f908daf323 SPU/MFC: check for sync command before doing a list transfer
fixes #3828
2018-01-20 03:32:48 +04:00
Zion Nimchuk 49e64b9e82 install icons to /usr/share and load them from there 2018-01-19 12:44:01 +03:00
kd-11 6828fbf658 rsx/texture_cache: Remove hacks; it has been proven that in offsets are in x16 fixed point 2018-01-19 12:03:57 +03:00
kd-11 0a2992839b rsx/gl/vk: Simulate z clipping with selective depth clamp
- The scale offset matrix is fine but on real hardware the z results seem to be independent of near/far clipping distances
-- If depth falls within near/far, clamp depth value to [0,1]
2018-01-19 12:03:57 +03:00
kd-11 1a6e53ec98 overlay: Fixes
- Add fallback fonts including attempting to find glyphs in dev_flash
- Fix vulkan hang on startup if icons are not present
2018-01-19 12:03:57 +03:00
kd-11 9ec2337192 rsx: Synchronization improvements
- Always flush the primary queue and wait if not involking readback from rsx thread
-- Should fix some instances of device_lost when using WCB
-- Marked remaining case as TODO
-- TODO: optimize amount of time rsx waits for external threads trying to read
2018-01-19 12:03:57 +03:00
kd-11 cbc8bf01a1 cell/scheduler: Manage thread placement depending on cpu hardware 2018-01-19 12:03:57 +03:00
Megamouse d238791b7d RSX: properly handle disconnected pads 2018-01-18 21:18:56 +03:00
Megamouse 42f56e357c Qt: remove obsolete and faulty m_icon_color. RepaintGui does it already
also remove some unused headers
2018-01-18 21:18:56 +03:00
scribam fbac1c304a Improve cellSearch implementation 2018-01-18 18:40:57 +04:00
kd-11 71f69d1d48
rsx/overlays: Introduce 'native' HUD UI and implement some common dialogs (#4011) 2018-01-17 19:14:00 +03:00
scribam 34c49c77b2 Fix #3950 2018-01-17 15:17:06 +00:00
elad cc02ef64a5 [GUI] remove the letter v from the emu's version 2018-01-17 14:16:13 +00:00
elad ff26bf411b [GUI] add commit hash to game panel if not master
also cleaned up game id
2018-01-17 14:16:13 +00:00
Megamouse 7aa1707c2c Qt/Input: use name_string instead of hard coded strings
hopefully prevents any more need for fixups like this lol
+ tend to some warnings for rebase
2018-01-17 13:23:51 +00:00
Megamouse d6c4d8eec0 Qt/Input: enable XInput configs with disconnected devices 2018-01-17 00:43:08 +04:00
Megamouse c5755b3633 Qt: fix deadzone preview size on high dpi 2018-01-16 05:05:00 +04:00
elad 24e97b9e03 SPU: Allow writing to the WrSRR0 channel 2018-01-16 04:34:15 +04:00
elad 5848864f55 SPU: Allow reading of the RdSRR0 channel
stupid bug
2018-01-16 04:34:15 +04:00
scribam ec41483e9b Update current firmware version 2018-01-15 22:52:07 +00:00
TGEnigma 28a96f1543 Add option to disable on-disk shader cache (#4041) 2018-01-15 19:23:36 +03:00
Nekotekina 435ea8d553 Fix "cellGame: cellGameDataCheck arg validate"
Fixes #4058
2018-01-14 22:23:48 +03:00
Megamouse 14ddeb07a5 Qt: handler zero-width columns in gamelist 2018-01-14 22:23:43 +03:00
myfreeweb 15d0bdb7cf Detect Vulkan Xlib/Wayland surface support at runtime (#4048)
Detect Vulkan Xlib/Wayland surface support at runtime
2018-01-14 22:16:06 +03:00
Jake d216398596 cellGame: cellGameDataCheck arg validate 2018-01-14 20:50:55 +03:00
Jake 0477f8ed3c rsx: add log for potential source of error 2018-01-14 20:50:55 +03:00
Jake 7ca2c444cc rsx: Fix depth clipping 2018-01-14 20:50:55 +03:00
Jake c5074ba81f d3d12: fix invalid framebuffer crash and shader compile 2018-01-14 20:50:55 +03:00
Jake ac53fc54dc rsx: fix image_in arg and swizzle fix 2018-01-14 20:50:55 +03:00
Megamouse 2053de0885 handle some warnings 2018-01-13 23:38:23 +04:00
Megamouse ef6a36241e Qt: fix CurrentSelectionIconPath() 2018-01-13 23:38:23 +04:00
Megamouse fbde1818a2 Qt: fix register editor
and remove a windowhint (?)
2018-01-13 23:38:23 +04:00
Unknown 155f7a7d76 improve cellPad
fix input regression and fix input for FIFA games
fix input in NASCAR [BLUS30932]
fix port status query -> disconnected devices don't cripple following devices by decreased now_connect
2018-01-13 22:48:52 +04:00
Megamouse 9b4868f017 Input: init pads as disconnected
inlcudes simpsons "hack" as comment
2018-01-13 22:48:52 +04:00
kd-11 5959411aeb Fix windows build 2018-01-11 12:26:41 +03:00
Greg V fbceec47b8 Add support for Vulkan on Wayland
The variable VK_USE_PLATFORM_WAYLAND_KHR is actually used by the Vulkan
header, so use it here too.
2018-01-11 12:26:41 +03:00
Unknown 51a2b43d81 Qt/Input: Introduce profiles 2018-01-10 03:17:02 +04:00
Zion Nimchuk 4231ea2eb6 Also stub some similar cellGameUpdate functions 2018-01-09 04:56:06 +04:00
Zion Nimchuk 8ee0ed84e4 Better stub cellGameUpdateCheckStartAsyncEx/FinishAsyncEx, fixes PAIN 2018-01-09 04:56:06 +04:00
TGEnigma d770a42349 Fix debug build 2018-01-06 04:45:55 +04:00
Megamouse 19d181fa4c Qt: implement simple find dialog for logs (#3941) 2018-01-05 03:41:10 +04:00
Nekotekina 83b541ea9d SPU: rewrite ROTH (AVX-512) 2018-01-03 01:04:04 +03:00
Nekotekina af3e1fc580 Improve Restart function
Don't erase boot args
Should now work correctly with game launchers
2018-01-03 01:04:04 +03:00
Nekotekina 7050575fdb Add Start Threshold parameter (ALSA) 2018-01-03 01:04:04 +03:00
kd-11 ee009ec99c rsx: Robustness fixes
- Track last working state and reset to it if RSX starts to desync
-- This is especially useful when running vulkan since the renderer will easily outpace the rest of the system when merely recording draw commands
- Ignore empty sets
-- Mark empty/invalid IB sets as having 0 element counts.
2018-01-02 21:17:56 +03:00
Nekotekina 198e9dce1d Fix #4005 regression
Delay unregister EH frames (Linux)
2018-01-01 10:41:07 +03:00
VelocityRa 383c501a35 [gui] Show total number of llvm compilation dialogs
- Doesn't account for dynamic libraries loaded after the fact,
  but usually good enough since
  1) Those aren't even present in some games
  2) They usually only have about 1 or 2 fragments (dialogs) each.
2017-12-31 22:08:17 +03:00
VelocityRa 7c64c2f703 MsgDialog: Add SetMsg() for changing main text 2017-12-31 22:08:17 +03:00
lewmpk d64e79bd9f fix clang warning: logical-op-parentheses 2017-12-31 22:08:17 +03:00
VelocityRa 489ded43b1 Trophy: Return correct disk space requirements
Closes #3763
2017-12-31 22:08:17 +03:00
Nekotekina d40aaf0391 PPU: use shared jit_compiler instance
(Linux) Fix deregisterEHFrames error message
2017-12-31 22:08:17 +03:00
kd-11 1ea5e7404a rsx: Workaround for nvidia linux
- For some reason, using 1.E-x notation does not work on nvidia linux. Could be a bug in spir-v generator or the driver itself
2017-12-31 12:43:40 +03:00
kd-11 55c324e062 rsx: Invalidate surface configuration if stencil state is changed
- Stencil state afects validity of a depth/stencil surface same as depth state
2017-12-31 12:43:40 +03:00
kd-11 d496dbecad rsx: Implement depth clamping 2017-12-31 12:43:40 +03:00
kd-11 4872be9de3 rsx/vk: Synchronize access to queue submit calls
- Should prevent concurrent access on the present/graphics queue
2017-12-31 12:43:40 +03:00
kd-11 688569e5c8 gl: Remove flag test optimization as it does not work properly
- Most texture cache operations will break sampler state and the extra complexity is not worth the very small speed bump
2017-12-31 12:43:40 +03:00
Megamouse 90f825aa49 Qt: fix compat list sort (#4003) 2017-12-31 01:43:56 +00:00
Nekotekina 78f7020ce6 Warn about corrupted PARAM.SFO 2017-12-29 20:05:06 +03:00
Nekotekina a92bf39efa Trophy: check both bdvd and hdd locations 2017-12-29 20:04:40 +03:00
Nekotekina e836c33f37 cellGame: don't write empty TITLE_IDs in PARAM.SFO 2017-12-29 20:04:10 +03:00
Nekotekina f271b650da SPU: minor addition for CFLTU, CUFLT 2017-12-29 03:09:35 +03:00
Nekotekina 14929a1497 Fix game category issues
Fix cellGameDataCheckCreate2 PARAM.SFO
Fix trophy initialization for gamedata (game patch)
Implement psf::assign
Potentially fix cellGameSetParamString
2017-12-29 03:09:35 +03:00
Nekotekina e768bdc80f Remove /app_home/ dependency
Should also fix exitspawn
2017-12-27 02:51:58 +03:00
Nekotekina a605919729 Fix lv2_socket id_base 2017-12-27 02:51:58 +03:00
Nekotekina 39a3ed2d03 SPU: minor additions for AVX2+ 2017-12-27 02:51:58 +03:00
Nekotekina 0a89f1db39 Fix primary stack size 2017-12-25 21:08:15 +03:00
Ofek 3cf0fb60a4 Set lv2_socket id_base (#3983) 2017-12-25 15:47:28 +04:00
Megamouse fc2ef5529d Fix cellPadSetPortSetting (#3980)
* Don't skip setting port settings when no controller is connected
* DS4: fix error message
2017-12-24 14:47:36 +00:00
Unknown 8a3759f479 Input: evdev: add positive axis list yml to handle 0+ range sticks 2017-12-24 00:27:52 +04:00
Ofek a6208d2bd7 Reset initial seek position in MSELF files (#3977) 2017-12-23 23:18:55 +04:00
Unknown 58d8d12665 Qt/Input: fix numpad (regression) 2017-12-23 02:01:37 +04:00
kd-11 8b31a9448a vulkan: Tweaks to sampler state fallback paths
- Make all texture access on non-existent textures return 0
- If border color is closer to 0, then set alpha to 0 as well (might break some corner cases with alpha test)
- Zero initialize null sampler
2017-12-22 20:08:14 +03:00
kd-11 4819847c46 rsx: Modify semaphore_acquire timeout detection
- Take paused state into account
- Make timeout configurable
2017-12-22 20:08:14 +03:00
kd-11 d6bc6ec2c1 rsx: fix initial swizzle ordering for render target data 2017-12-22 20:08:14 +03:00
kd-11 320fb5f94c rsx/fp: Fix alphakill 2017-12-22 20:08:14 +03:00
kd-11 4a0c4259f0 c++ is hard
- Remove unnecessary const definitions
2017-12-22 20:08:14 +03:00
Unknown e9364bd87b Input: fix initial DS4 connection (regression) 2017-12-22 01:26:31 +04:00
Ani 5e04a5f21d
_sys_process_exit: Fix logging (#3963) 2017-12-21 19:48:21 +00:00
Unknown 106de04485 Input: Fix connection count
and some minor commenting
2017-12-21 18:42:53 +04:00
Unknown 8eb8755aea Input: fix evdev directions, sticks and rumble
minor style fix
2017-12-21 18:42:53 +04:00
Unknown 1b13b94095 Qt: Fix icon size actions 2017-12-21 18:42:53 +04:00
Unknown 69283accd0 Qt/Input: implement mouse button mapping / improve keyboard 2017-12-21 18:42:53 +04:00
Unknown 2dd8a1afdb Input: evdev fixes and first rumble implementation 2017-12-21 18:42:53 +04:00
Unknown 114dd2a723 Input: improve evdev settings dialog / change threshold behaviour 2017-12-21 18:42:53 +04:00
Unknown 6891371a79 Input: improve MMJOY settings dialog / change threshold behaviour 2017-12-21 18:42:53 +04:00
Nekotekina a285409f59 Fix travis 2017-12-21 00:40:28 +03:00
Nekotekina f24491de84 SPU: fixes 2017-12-20 01:21:59 +03:00
Nekotekina 83da7f9b63 PPU: remove SSSE3 dependency 2017-12-20 01:21:15 +03:00
Nekotekina 1ae8850b3f PPU: rewrite VMHRADDSHS without SSSE3 2017-12-20 00:04:09 +03:00
Nekotekina 140a581d23 PPU: redesign LVSL, LVSR instructions 2017-12-20 00:04:09 +03:00
Nekotekina d3198ddf60 SPU: reorder some instructions for better throughput 2017-12-20 00:04:09 +03:00
Nekotekina 6d34dcd75f SPU: add some AVX-512 variants 2017-12-20 00:04:09 +03:00
Nekotekina 4aee4ed6d7 SPU: remove SSSE3 dependency 2017-12-20 00:04:08 +03:00
Nekotekina 61de20a633 RSX: remove SSSE3 dependency 2017-12-20 00:04:08 +03:00
kd-11 de5dab35e0 rsx: Raise semaphore timeout duration bacause some games are very slow 2017-12-18 10:45:37 +03:00
kd-11 47060cdc5f rsx/fp: Fix typo 2017-12-18 10:45:37 +03:00
kd-11 7dd349ae8e Update FragmentProgramDecompiler.cpp 2017-12-18 10:45:37 +03:00
kd-11 4e80858bed rsx/fp: Hotfix for TEXBEM/TXPBEM 2017-12-18 10:45:37 +03:00
kd-11 e89a035e8b rsx/fp: Implement TXPBEM 2017-12-18 10:45:37 +03:00
kd-11 f7c52d3bb7 rsx/fp: Implement TEXBEM (untested) 2017-12-18 10:45:37 +03:00
kd-11 6f8dd20f03 rsx/fp: Stuff
- Implement BEM
- Add LG2 to special instructions
2017-12-18 10:45:37 +03:00
kd-11 b1a1c0251f rsx: Implement variable point size 2017-12-18 10:45:37 +03:00
kd-11 0d0821e914 rsx: Pause FIFO queue when changing ctrl registers 2017-12-18 10:45:37 +03:00
kd-11 6891323c18 rsx: framebuffer textures do not have mipmaps!
- Force mipmap count to 1 if sampling from an RTV/DSV
- TODO: Better wcb flush detection, it should be better to re-upload the texture after it has been dwnloaded if expected mipmaps are > 1
2017-12-18 10:45:37 +03:00
kd-11 71c8885678 rsx/cfg: Lower the default scaling threshold to 16x16 2017-12-18 10:45:37 +03:00
kd-11 7c7cd4153e rsx: Framebuffer setup fixes
- Sometimes square renders are done to surfaces with pitch=64 and re-uploaded with swizzle scanning
-- This setup avoids discarding targets if they are square and pitch == 64
2017-12-18 10:45:37 +03:00
kd-11 ff0f1510e5 rsx: Minor fixes
- Abort nv406e semaphore acquire if the rsx thread stalls/crashes
- Fix texture size approximation to take mipmaps into account. Fixes some games hanging with WCB
2017-12-18 10:45:37 +03:00
kd-11 3338fdb936 rsx: Fix RGB565 blits. Data is byteswapped on input
- Fixes messed up BG on retroarch glyphs
2017-12-18 10:45:37 +03:00
kd-11 6dfe32c6d2 fix linux builds 2017-12-18 10:45:37 +03:00
kd-11 95966a467e rsx: Texture cache fixes
- Handle blit resources in a more consistent way
- TODO: Handle some corner cases (piyotama)
2017-12-18 10:45:37 +03:00
kd-11 ac0022483a rsx: Implement delayed swizzle remap for blit engine resources
- Fixes remap vectors for memory copied via blit engine as it has no context
2017-12-18 10:45:37 +03:00
Zion 17bfb3beaf various memory access violation fixes (and friends) (#3930)
* various memory access violation fixes

* Another fix, for motorstorm demo

* Better stub cellGameUpdateCheckStartAsync and FinishAsync, Fixes #3934
2017-12-16 04:03:49 +04:00
scribam 6e9b064a0f Add new functions to cellSysutil 2017-12-11 01:36:22 +04:00
scribam 50f2be57f7 Spaces to tabs 2017-12-10 16:48:33 +04:00
scribam b4a97c99d8 Add const and ref for loops 2017-12-10 16:48:33 +04:00
elad335 3aefd14b3d disasm: display db[x]cyc 2017-12-10 16:19:36 +04:00
Ani 60f5929f81
Hotfix #3919 (#3920)
* Restore GIT_BRANCH
Removed by mistake on previous commit

* Fix commit count on AppVeyor builds
2017-12-08 23:53:05 +00:00
Ani 6b323d7e2e Version adjustments 2017-12-08 22:46:19 +00:00
Jake d7881c6714 ds4: fix led on bluetooth 2017-12-08 15:19:17 +04:00
Jake d0013679c0 rsx: fix image_in swizzled texture crash 2017-12-08 15:19:17 +04:00
kd-11 0b3fbf1d4c rsx: Narrow the race condition window further
- Needs aliased paging to be implemented to fix properly or a re-entrant global IO lock
2017-12-06 12:55:49 +03:00
kd-11 69eb483089 rsx: Framebuffer setup fix
- Stencil flag is meaningless if surface does not support stencil
2017-12-06 12:55:49 +03:00
kd-11 a2b4cf22b5 rsx: Reimplement invalidate_range_base_impl
- Avoid unprotecting memory until just before we have to write the data
- Avoids race conditions where the caller thread takes too long to enter the second phase and another thread accesses the "bad" memory
2017-12-06 12:55:49 +03:00
Nekotekina d8ae94df5b savedata: avoid passing vm memory to fs::file 2017-12-05 15:55:10 +03:00
Unknown 03814e8d02 Qt: implement compatibility column 2017-12-05 16:53:14 +04:00
kd-11 970d2a06e0 rsx: Properly fix DATA3F_M register alignment 2017-12-04 18:22:18 +03:00
kd-11 9853027f72 rsx/vp: Decide default return values in case of undefined attributes based on location ID
- Different default values should be returned for different attributes
2017-12-04 18:22:18 +03:00
kd-11 90c2324e47 rsx: Program cache fixes
- Reorganize storage hash vs ucode hash
- Scan for actual fragment program start in case leading NOPed code precedes the actual instructions
-- e.g FEAR2 Demo has over 32k of padding before actual program code that messes up hashes
2017-12-04 18:22:18 +03:00
kd-11 f5145943b2 d3d12: Fix fragment shader compile 2017-12-04 18:22:18 +03:00
kd-11 960f26f84e rsx:: fixes for framebuffer setup
- provide a DSV if depth and/or stencil testing is enabled
2017-12-04 18:22:18 +03:00
kd-11 cdd4fd9867 rsx/fp: Explicitly insert global functions.
- Functions such as pack/unpack ops must exist before the shared gather functions are declared
2017-12-04 18:22:18 +03:00
Nekotekina bfb3144f34 sys_net: Force AF_INET 2017-12-02 12:36:05 +03:00
Unknown 8f314c5101 Input: handle MMJOY reconnection (pad still needs to be online on start) 2017-12-01 20:28:06 +00:00
Unknown 2ec4f66427 Input: improve evdev and mmjoy stick input 2017-12-01 20:28:06 +00:00
Unknown 7165001b68 Qt: Fix SettingsDialog crash introduced by removal of groupboxes 2017-12-01 20:28:06 +00:00
Unknown c077426e95 Input: Fix filter button for evdev and DS4 2017-12-01 20:28:06 +00:00
Unknown c870bbb885 Input/MMJOY: handle Axis and POV capabilities 2017-12-01 20:28:06 +00:00
kd-11 3fbc960c44 gl/vk: Better handling of inter-format data copies
- RGBA8->RG16 does not require special instructions so the overlay pass is disabled for OGL
2017-12-01 21:00:50 +03:00
kd-11 896c8991de rsx/fp: Properly implement PK/UP instructions based on NV_fragment_program documentation 2017-12-01 21:00:50 +03:00
kd-11 bec6c1a939 gl: Implement rgba8 -> fp16 casting pass
-- Is this actually necessary? The two format are binary compatible
2017-12-01 21:00:50 +03:00
kd-11 fe9090bd39 rsx/fp: Implement register gather (only for UP(X) instructions)
- Workaround for temp register aliasing between H and R variants
- TODO: Implement temp regs as 128 bit-blocks with r/w as pack/unpack
2017-12-01 21:00:50 +03:00
kd-11 44e34064de vulkan: Do not clear non-existent surfaces 2017-12-01 21:00:50 +03:00
kd-11 a18ae0f6ac rsx/fp: Reimplement PK(X) and UP(X) opcodes. The read back values are obviously in normalized range
- Confirmed with a GOW shader which writes result of UP8 to BGRA8 output
2017-12-01 21:00:50 +03:00
kd-11 08b829dc22 rsx: wcb scaling fixes 2017-12-01 21:00:50 +03:00
kd-11 9d27ac359b gl: Minor wcb tweaks 2017-12-01 21:00:50 +03:00
kd-11 6c9c300fe0 rsx: Fix texture cache memory usage statistics 2017-12-01 21:00:50 +03:00
kd-11 17340c44cc rsx: method register fixes
- Fix VERTEX_DATA_3F_M element alignment (its 16 bytes per attribute)
- Fix DATA_2S_X interpretation type. Its signed 16-bit unnormalized (s32k) and not signed normalized (s1)
2017-12-01 21:00:50 +03:00
kd-11 90a3f3af30 rsx: Discard queue if RET is found without CALL 2017-12-01 21:00:50 +03:00
kd-11 da1e97618b rsx: Changes to surface pitch handling
- Zeta pitch is ignored by real HW for some reason
- Monitor ptch value changes as well since they may affect disabled surfaces
- TODO: Verify if MRT pitch is really taken into consideration
2017-12-01 21:00:50 +03:00
kd-11 89bc333295 vk: Compliance fixes; vkCmd state affects currently bound descriptor set! 2017-12-01 21:00:50 +03:00
kd-11 3350e7ee55 rsx: Fixes for framebuffer setup code 2017-12-01 21:00:50 +03:00
kd-11 ddebc334bf rsx: Fixes
- Discard intentionally invalidated framebuffer resources. These are created after a flush has happened, forcing reupload since contents cannot be guaranteed (strict mode only)
- Fix for blits using vulkan; dont use the copy method if formats do not match, use generic blit instead
2017-12-01 21:00:50 +03:00
kd-11 145ecb00fc rsx: Texture cache hotfixes 2017-12-01 21:00:50 +03:00
kd-11 75d0ff177d gl: Avoid null deref 2017-12-01 21:00:50 +03:00
kd-11 4d75e98647 rsx/fp: Do not apply input mods to all types of inputs
- Temp registers are confirmed to be affected
- Const registers are confirmed to be unaffected
- Varying inputs are not confirmed yet
2017-12-01 21:00:50 +03:00
kd-11 3bfdcf698d rsx: More tuning for depth/color buffer selection 2017-12-01 21:00:50 +03:00
kd-11 51891039dd rsx: improve depth/color contested memory allocation heuristics
- Needs more tests to prove correct behaviour
2017-12-01 21:00:50 +03:00
kd-11 07fe5f87ae gl: Fix face winding
- Face winding is always calculated based off the top left corner
2017-12-01 21:00:50 +03:00
kd-11 de5a4fe083 rsx: Reimplement depth <-> RGBA reinterpretation code
- Implements proper channel order for fp24-ARGB8 conversion
- Takes swizzle remap into account when reconstructing source bytes
2017-12-01 21:00:50 +03:00
kd-11 5cf2d774f3 fp32 precision on GPUs is embarassing
- Division seems to suffer from drift easily on GPUs due to limited precision
2017-12-01 21:00:50 +03:00
kd-11 ccc0383f75 vulkan: Implement overlay shader passes
- Implements vk::overlay_pass and vk::depth_convert_pass
- Also added a sanity check in RSX core for depth replace shaders
2017-12-01 21:00:50 +03:00
kd-11 680ca1d12a rsx: Zcull refactoring and vulkan implementation 2017-12-01 21:00:50 +03:00
kd-11 c926868758 vk: Dont always assume framebuffers exist
- TODO: Use temporary renderbuffers for these outputs
2017-12-01 21:00:50 +03:00
kd-11 30269e5bad rsx/gl: Use strict method of gathering the depth buffer bits
- Performance difference on modern GPUs is negligible
2017-12-01 21:00:50 +03:00
kd-11 07f61db24a rsx: Try to take the context for the surface creation into account 2017-12-01 21:00:50 +03:00
kd-11 63f261a66d rsx: Improve framebuffer check heuristics for contested memory buffers 2017-12-01 21:00:50 +03:00
kd-11 33f3a3e014 rsx: Major fixes
- Handle aliased depth + color target by disabling depth writes. This looks to be the correct way
- Add support for generic passes that cannot be done using general imaging operations. Lays the framework for tons of features and effects
- Implement RGBA->D24D8 casting. Sometimes games will split depth texture into RGBA8 then use the new RGBA8 as a depth texture directly
-- This happens alot in ps3 games and I'm not sure why. Its likely the ps3 did not sample fp values with linear filtering so this is a workaround
-- Only implemented for openGL at the moment
-- Requires a workaround for an AMD driver bug
2017-12-01 21:00:50 +03:00
kd-11 8646f51fa3 rsx: Add more validation to framebuffer setups. Game devs sometimes do crazy things 2017-12-01 21:00:50 +03:00
kd-11 0aaae000b3 rsx: Minor improvements 2017-12-01 21:00:50 +03:00
kd-11 db58cd7513 rsx: Invalidate both depth and color surfaces when binding a new surface 2017-12-01 21:00:50 +03:00
Jake d17093e65b spu: Fix interrupt jump check - also change interrupt variable to atomic bool for ease of setting/checking 2017-12-01 20:29:59 +03:00
Jake 34e01ba3d8 mfc: Fix support for list transfer stall bit with partial support for out of order execution - Also give Sync commands a size so they are properly detected by queue checks 2017-12-01 20:29:59 +03:00
Jake 8b476b5bfa spu: Recompiler Interrupt optimizations - Pigeonhole optimize for branching pattern that is used to enable and disable interrupts used in code, this should lower amount of blocks that are compiled and avoid falling out of a block - Recompiled interupt check in some cases to stay in block instead of falling out to dispatcher 2017-12-01 20:29:59 +03:00
Jake ad97780c4f spu: Implement DFCMGT for interpreter and recompiler 2017-12-01 20:29:59 +03:00
Jake 17cf24d0ed sys_memory: Lower maximum size for memory block to fake OS size - Report available memory minus another fake block that can be used for the OS 2017-12-01 20:29:59 +03:00
Zion Nimchuk c424652b43 Silence warnings in misc files (gui, psp2, mfc, mouse) 2017-11-30 18:07:19 +03:00
Zion Nimchuk 3a9ae2df9e silence warnings in RSX stuff 2017-11-30 18:07:19 +03:00
Zion Nimchuk 8276d29d4f Silence warnings in lv2/Modules 2017-11-30 18:07:19 +03:00
Zion Nimchuk b9b06143d2 Silence some warnings in some files in Utilities 2017-11-30 18:07:19 +03:00
Unknown 853c3f9e39 Qt/Input: implement blacklist to Filter Noise in pad dialog 2017-11-30 19:06:54 +04:00
Unknown c04c23f33d Input/MMJOY: use provided min and max. Move info and caps to MMJOYDevice 2017-11-30 19:06:54 +04:00
Unknown 25a1d86986 Qt/Input: Remove unsupported groupboxes from pad dialog and shorten text 2017-11-30 19:06:54 +04:00
Unknown c2379b8337 Qt/Input: disable config button when device combobox is empty 2017-11-30 19:06:54 +04:00
elad 91fd1465f2 SPU MFC: Clamp tag and size (#3803) 2017-11-29 16:28:41 +04:00
Unknown a4de495093 Qt/Input: Implement GetModifierCode to improve keyevents 2017-11-29 15:57:29 +04:00
Unknown 2cd551a222 Qt/Input: disable TabFocus while mapping buttons in order to map Tab key 2017-11-29 15:57:29 +04:00
Unknown dd4ccb059e Input: MMJOY prioritize button presses due to constant axis events 2017-11-29 15:57:29 +04:00
Unknown 5810b29298 Input: Fallback in FindKeyCode to prevent crashes on incompatible config 2017-11-29 05:09:41 +04:00
Peter Mcteague 6702c14b88 Added installation for additional packages to game boot 2017-11-28 22:22:37 +03:00
scribam 8901cc9ae6 Update Qt to 5.9.3 2017-11-28 15:22:47 +04:00
Unknown 17ff1e41a5 Input: fix MMJOY a bit 2017-11-28 10:25:22 +00:00
Unknown 782156b26f Input: fix currentText of device combobox 2017-11-28 10:25:22 +00:00
Unknown 4f5e93bd09 Input: Fix Default XInput LB 2017-11-28 10:25:22 +00:00
Megamouse 662fe8cc95 [Qt/Input] Improve pad_settings_dialog a bit (#3611)
* Input: further work on remapping Xinput and begin work on remapping DS4

* Input: Improve pad_settings_dialog a bit and begin Remapping for XInput

* Input: begin evdev remapping and change all handlers to use cfg::string

* Input: finish work on remapping evdev

and some more crap

* Input: finish work on remapping Xinput and DS4

* Input: add DS4 Colors to DS4 config

* Input: Improve DS4 deadzone scaling

Jarves made some mistakes, so I'll fix them in the follow up commit

* Input: fix Jarves fixes on DS4 deadzone

and remove unnecessary usage of toUtf8

* Input: add primitive batterychecks to XInput and DS4

* Input: add mmjoystick remapping

* Input: Fix evdev and some Vibration issues

* Input: adjust capabilities to fix stick input for games like LoS 2

also fix threshold slider minimum
also add ps button to all the handlers

* Input: Further evdev work

based on danilaml code review and own debugging:
Fixed path issue, <= 0 issue, some captures, const, axis with same codes.
Adds a map to each device that differentiates negative and positive axis mappings.
adjusted rest of the file to tabs (ListDevices and beginning of threadProc)

* Input: use 20ms vibration update time for xbox one elite controllers.

* Input: Fix return type of Clamp()

* Input: Evdev Fix

* Input: Evdev Optional GetNextButtonPress

presumably better than the other

* Input: review changes

* Input: evdev: fix wrong index in axis handling

move bindpadtodevice down to keep consistency between handlers and not get crazy

* Input: evdev: fix expensive add_device in GetNextButtonPress

* cleanup

* Input: mmjoy: fix type

* Input: evdev: final fixes

* Input: evdev: exclude unnecessary buttons while mapping Xbox 360 or DS4

* Input: add deadzone preview by passing necessary values in callback

use 0.5 of max value for threshold in pad dialog

* Input: get rid of all-uppercase variables
2017-11-28 01:31:15 +04:00
Nekotekina 695b4c1f06 Change sys_usbd_receive_event 2017-11-27 23:15:28 +03:00
Nekotekina d366823949 RSX: fix fix (406E semaphore release) 2017-11-27 23:15:28 +03:00
Unknown 917ee472d4 Qt: implement progress_dialog 2017-11-27 23:16:46 +04:00
Unknown 2f7d621fc8 Qt: remove some warnings 2017-11-27 23:16:46 +04:00
VelocityRa 754cdea435 Avoid recreating SwsContext every frame
* Applies to video decoding(`libvdec`) and post-processing(`libvpost`).
2017-11-27 22:35:40 +04:00
scribam 5f07f78c23 CMake minor improvements (#3783)
* cmake: simplify GLEW integration

* cmake: simplify ZLIB integration

* cmake: simplify ALSA detection

* cmake: check C++ compiler and flags instead of C ones

* cmake: bring consistency in Qt packages detection and remove unnecessary related "include_directories"

* cmake: harmonize coding style

* cmake: set CMAKE_INCLUDE_CURRENT_DIR to ON only when necessary
2017-11-27 22:04:55 +04:00
Unknown b22f3d7a55 Qt: change settingsdialog to horizontal layout 2017-11-27 21:35:59 +04:00
Nekotekina 1344f15efd RSX: improve nv406e::semaphore_release 2017-11-26 09:02:37 +03:00
Nekotekina f7803927d9 Fix exitspawn (autoexit option)
Fix other situations affected by this options
2017-11-26 09:02:37 +03:00
scribam 78101a9e57 cmake: remove unused link to ffmpeg libswresample 2017-11-25 14:07:11 +00:00
scribam d05071221e cmake: check if ffmpeg libswscale is present 2017-11-25 14:07:11 +00:00
Nekotekina 7d3a528871 Use Qt for error reports 2017-11-23 20:36:21 +03:00
Nekotekina 5fffef74a2 PKG installer update for DLC
Also:
1) Don't ask for overwriting. It's outdated feature.
2) Limit cancellation capabilities.
2017-11-23 18:38:05 +03:00
Nekotekina 74c248150b Log sys_fs_utime values 2017-11-23 18:38:05 +03:00
Ofek 3628a8593f Fix cellGameBootCheck for disc games (#3771)
Don't return dirName
2017-11-23 16:27:44 +04:00
Ofek 58c42ad9c0 Check sys_spu_thread_group_create's nsize (#3742)
* Check sys_spu_thread_group_create's nsize

* cellSearch callback correction
2017-11-23 02:02:23 +04:00
Megamouse fb52cbb8b2 Trophy: Save dialog state (#3729)
* Trophy: Save dialog state and add show type settings

* SaveDataManager: Save Dialog State

* SaveDataList: Minor Optimization

* Qt: Save icon size on mouseevent resizes

it's a bit slower than using the slider because it saves every single resize. But better than not saving at all for now

* SaveData: Optimize saving to settings a bit

No Saving needed there

* Qt: get rid of all-uppercase enums and namespaces

* Qt/Linux: adjust remaining DX12 tooltip

* Qt: prevent dockwidget contextmenu
2017-11-22 15:11:59 +04:00
Unknown de465cb941 Fix "Exit RPCS3 when process finishes" command line crash
Added force_boot to force boot on cmdline boot.
Load() caused a Stop() that exited the application with "Exit RPCS3 when process finishes" enabled. Now Stop is only called if the emu is not stopped
2017-11-21 03:02:47 +04:00
Jan Beich dd5791a2cc Fixes from FreeBSD package (#3765)
* Thread: unbreak on BSDs after dbc9bdfe02

Utilities/Thread.cpp:1920:2: error: unknown type name 'cpu_set_t'; did you mean 'cpusetid_t'?
        cpu_set_t cs;
        ^~~~~~~~~
        cpusetid_t
/usr/include/sys/types.h:84:22: note: 'cpusetid_t' declared here
typedef __cpusetid_t    cpusetid_t;
                        ^
Utilities/Thread.cpp:1921:2: error: use of undeclared identifier 'CPU_ZERO'
        CPU_ZERO(&cs);
        ^
Utilities/Thread.cpp:1922:2: error: use of undeclared identifier 'CPU_SET'
        CPU_SET(core, &cs);
        ^
Utilities/Thread.cpp:1923:48: error: unknown type name 'cpu_set_t'; did you mean 'cpusetid_t'?
        pthread_setaffinity_np(pthread_self(), sizeof(cpu_set_t), &cs);
                                                      ^~~~~~~~~
                                                      cpusetid_t

* JIT: use MAP_32BIT on Linux and FreeBSD

Unless RLIMIT_DATA is low enough FreeBSD by default reserves lower 2Gb
for brk(2) style heap, ignoring mmap(2) address hint requested by RPCS3.
Passing MAP_32BIT fixes the following crash

Assertion failed: ((Type == ELF::R_X86_64_32 && (Value <= UINT32_MAX)) || (Type == ELF::R_X86_64_32S && ((int64_t)Value <= INT32_MAX && (int64_t)Value >= INT32_MIN))), function resolveX86_64Relocation, file /usr/ports/devel/llvm40/work/llvm-4.0.1.src/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp, line 287.

* build: unbreak -DVULKAN_PREBUILT with system glslang on Unix

rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:4:10: fatal error: '../../../../Vulkan/glslang/SPIRV/GlslangToSpv.h' file not found
 #include "../../../../Vulkan/glslang/SPIRV/GlslangToSpv.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

rpcs3/CMakeFiles/rpcs3.dir/Emu/RSX/VK/VKCommonDecompiler.cpp.o: In function `vk::compile_glsl_to_spv(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, glsl::program_domain, std::__1::vector<unsigned int, std::__1::allocator<unsigned int> >&)':
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x50e): undefined reference to `glslang::TProgram::TProgram()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x51d): undefined reference to `glslang::TShader::TShader(EShLanguage)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x542): undefined reference to `glslang::TShader::setStrings(char const* const*, int)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x581): undefined reference to `glslang::TShader::parse(TBuiltInResource const*, int, EProfile, bool, bool, EShMessages, glslang::TShader::Includer&)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x5d6): undefined reference to `glslang::TProgram::link(EShMessages)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x5f1): undefined reference to `glslang::GlslangToSpv(glslang::TIntermediate const&, std::__1::vector<unsigned int, std::__1::allocator<unsigned int> >&, glslang::SpvOptions*)'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x5ff): undefined reference to `glslang::TShader::getInfoLog()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x61a): undefined reference to `glslang::TShader::getInfoDebugLog()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x630): undefined reference to `glslang::TShader::~TShader()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x63c): undefined reference to `glslang::TProgram::~TProgram()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x6d2): undefined reference to `glslang::TShader::~TShader()'
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x6de): undefined reference to `glslang::TProgram::~TProgram()'
rpcs3/CMakeFiles/rpcs3.dir/Emu/RSX/VK/VKCommonDecompiler.cpp.o: In function `vk::initialize_compiler_context()':
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x6f5): undefined reference to `glslang::InitializeProcess()'
rpcs3/CMakeFiles/rpcs3.dir/Emu/RSX/VK/VKCommonDecompiler.cpp.o: In function `vk::finalize_compiler_context()':
rpcs3/Emu/RSX/VK/VKCommonDecompiler.cpp:(.text+0x856): undefined reference to `glslang::FinalizeProcess()'

* build/msvc: add missing glslang include directory after 6bb3f1b4d75c

"c:\projects\rpcs3\rpcs3\VKGSRender.vcxproj" (default target) (15) ->
(ClCompile target) ->
  Emu\RSX\VK\VKCommonDecompiler.cpp(4): fatal error C1083: Cannot open include file: 'SPIRV/GlslangToSpv.h': No such file or directory [c:\projects\rpcs3\rpcs3\VKGSRender.vcxproj]
2017-11-21 01:56:25 +04:00
clienthax 86a34fbb45 Fix regressions caused by network code. (#3702)
* Stub SOCK_DGRAM_P2P to allow some games to load again.

* Add 'support' for unspec sockets
(Have only seen the youtube app using these so far)
2017-11-20 16:42:16 +03:00
kd-11 5d87ef86b5 vk: Reset renderer status whenever a window geometry event is processed 2017-11-20 15:18:57 +03:00
kd-11 df7d52b177 rsx/fp: Give abs higher prio as it invalidates any precision checks 2017-11-20 15:18:57 +03:00
kd-11 f5addbf751 rsx/fp: improve SRC modifier order
- Neg modifier is applied after clamping. Abs has not been tested/proven so precision clamp goes first now, not last
2017-11-20 15:18:57 +03:00
kd-11 a8c0dd649e rsx/fp: RE work on precision modifier bits
- Testing DS2 has revealed clamping bits in SRC1 that were not respected and left negative values reaching the framebuffer
2017-11-20 15:18:57 +03:00
kd-11 bbb3bdf008 rsx: Abort all drawing commands if no swapchain exists
- Should keep nvidia from consuming all device memory when minimized
2017-11-20 15:18:57 +03:00
kd-11 6d2dcbd164 rsx: Enable hw blit engine for local->main memory blit operations as well 2017-11-20 15:18:57 +03:00
kd-11 be6b5922dd rsx: research native texel byte order on cpu readback (WCB) [WIP] 2017-11-20 15:18:57 +03:00
Unknown 59be9dc36e Qt: move "Disable Vertex Cache" option back to gpu tab 2017-11-20 13:36:13 +03:00
Unknown 61ca9df45c Qt: Use global Appicon instead of setting it in every Dialog 2017-11-20 00:34:29 +00:00
Zion Nimchuk 12ecba7d49 Initial work on sys_usbd syscalls 2017-11-19 23:11:13 +03:00
scribam 223f17ac7e Bump CMake requirement 2017-11-16 01:41:51 +04:00
Nekotekina c435b328c7 Implement savedata delete op 2017-11-15 21:00:02 +03:00
Nekotekina 0d1cb8c878 Fix cellMsgDialog 2017-11-15 21:00:02 +03:00
Nekotekina 16d7023a92 cellSaveData fixes 2017-11-15 21:00:02 +03:00
Nekotekina 358afc045d Minor fix (cellGame) 2017-11-15 21:00:02 +03:00
Nekotekina 0fbb8b9a18 Implement _sys_prx_load_module_by_fd
Implement _sys_prx_load_module_on_memcontainer_by_fd
2017-11-15 21:00:02 +03:00
Nekotekina 9ef00b4a12 RSX: Rewrite frame limit 2017-11-15 21:00:02 +03:00
Nekotekina 9bc0ec586a Fix command line args 2017-11-15 21:00:02 +03:00
Nekotekina f4eab09557 Add supporters 2017-11-15 21:00:02 +03:00
Nekotekina f2980d57a1 ALSA audio backend fixes 2017-11-15 21:00:02 +03:00
Nekotekina dbc9bdfe02 Implement set_ideal_processor_core (linux) 2017-11-15 21:00:02 +03:00
clienthax 9e0b881b2b Fire callback in cellSearchInitialize
Allows BLJS10131 to get ingame ;)
2017-11-15 02:26:36 +04:00
clienthax 946ba3be29 Fix bug in sys_spu_thread_group_create (#3734) 2017-11-14 22:24:55 +04:00
Ani 0064976c43 Bump version to 0.0.4 2017-11-12 18:13:22 +00:00
Robbie 2c19fdf092 Fix off by one error in trophies (#3715) 2017-11-12 17:36:13 +00:00
Ofek 8fc9862614 Fix cellGameGet(Set)Param (#3690)
* Fix cellGameGet(Set)Param
2017-11-11 22:22:38 +00:00
Talkashie 55d84414ee Stub sceNpSnsFbCheckConfig (#3720) 2017-11-11 22:18:32 +04:00
Talkashie 8c0bdd71d9 Correct two typos and a couple of other nitpicky things (#3721)
Correct two typos and a couple of other nitpicky things
2017-11-11 12:56:59 +00:00
kd-11 3c9126d91f rsx: Ignore FENCE instruction as it seems like its ignored on realhw
- This is likely a compiler hint for performance reasons and not a mandate
2017-11-09 14:39:50 +03:00
kd-11 8b4836a12f rsx: Fix shader cache version check 2017-11-09 14:39:50 +03:00
kd-11 b2a7eee1ec rsx: Bump shader cache ver and fix blit engine crash
- Disables blit operations if the target will have a size of 0 in any dimension
- Bumps shader cache ver to 1.1
2017-11-09 14:39:50 +03:00
kd-11 ed21bb309f rsx: Minor fixups
- Fix texture cache blit behaviour when src has AA enabled and dst is a blit dst texture with or without AA
-- This requires handling AA resolve by removing a half downscale on multisampled axes

- Return all ones when a vertex attribute is disabled.
-- Some games forget to enable vertex attributes actually needed by the fs
2017-11-08 13:15:34 +03:00
kd-11 7b3e4f5e3d vk: Hotfix
- facepalm: Do not enable depth comparison mode if masquerading as RGBA color!
2017-11-08 13:15:34 +03:00
kd-11 30b3af0d12 vk: Cleanup, simplify renderpass management 2017-11-08 13:15:34 +03:00
kd-11 541cb4062b vk: Fix shader logging
- Do not overwrite logged programs
2017-11-08 13:15:34 +03:00
kd-11 4e9160104a rsx/vk/gl: Cleanup and refector glsl::getFunctionImpl
- Both backends now generate very similar code
2017-11-08 13:15:34 +03:00
kd-11 86fa379c78 rsx/vk: Fix unnormalized converted textures 2017-11-08 13:15:34 +03:00
kd-11 8733505d0a rsx: Minor fixes
- texture_cache: Fix internal size calculation for subresources
- vk: Delay dynamic state updates until just about to draw to ensure no flush has discarded the cb state
2017-11-08 13:15:34 +03:00
kd-11 242611aa46 gl/qt: Catch segfaults in wglDeleteContext with SEH (AMD windows driver)
- In rare cases the driver derefs a nullptr and dies, taking the emulator with it
- From testing, it seems the vram is indeed freed when this happens so its "safe" to continue
2017-11-08 13:15:34 +03:00
kd-11 baa5a261a5 rsx: Rewrite invalidate_range_impl_base in a way that makes sense. Fixes wcb hanging 2017-11-08 13:15:34 +03:00
kd-11 3730b9d1da rsx: More fixes
- Support for raster offsets in surface descriptors (looks to be unused)
- Do not tag disabled render targets when using MRT (pitch = 64)
- Add missing notify_surface_changed() call for openGL
2017-11-08 13:15:34 +03:00
kd-11 0d35363ea0 rsx: Minor optimization - dont update sampler state if texture state registers have not changed 2017-11-08 13:15:34 +03:00
kd-11 75504b3f5e rsx: Rework context handling and stop leaking the GL ccontext
- GL contexts are external handles that require manual lifecycle management
2017-11-08 13:15:34 +03:00
kd-11 4ca98e53a6 rsx: Fix for unnormalized texture access 2017-11-08 13:15:34 +03:00
kd-11 300a36d3d6 rsx: Fixes for cubemap reconstruction
- Do not abort generation if sides are missing, replace with blank surfaces instead
- Make cubemaps scale with res scaling
2017-11-08 13:15:34 +03:00
kd-11 60c7a508a7 rsx: Refactor create_subresource_view(deferred_subresource&) and implement a subresource cache
- This limits the number of times an image is copied and improves performance
2017-11-08 13:15:34 +03:00
kd-11 1fa18757fc rsx: Implement render-to-cubemap; Also simplify unnormalized samplers [WIP, DELETE SHADER CACHE, VERY SLOW]
- Enables real-time cubemap reflections
- TODO: Vulkan is broke; rsx is very slow with this feature
2017-11-08 13:15:34 +03:00
kd-11 fbb7186e66 rsx/gl: Addendum - Fix fragment shader to consume texture scale parameters 2017-11-08 13:15:34 +03:00
kd-11 0961a43997 rsx: Implement 1D<->2D image type casts 2017-11-08 13:15:34 +03:00
kd-11 7037504dcf rsx: Workaround for missing AA flags on some surfaces
- This just doesnt work right yet. It looks like AA is being used dynamically? (RDR)
- TODO: Try to locate flags to set AA if AA mode is not changed
2017-11-08 13:15:34 +03:00
kd-11 2385029eab gl: Shift code around to increase work done after memory transfer operations
- The current code is slower because memory operations are too close to their draw calls
-- This is mainly an issue with proprietary AMD drivers
2017-11-08 13:15:34 +03:00
kd-11 eed55a446c rsx: Minor optimization
- Defer resolving image copy operations to the binding step
2017-11-08 13:15:34 +03:00
kd-11 bbcb6b6851 rsx: Fbo fixes 2
- Use AA mode to predict surface compression. Compression mode is useless without AA activated
- Rewrites most image subresource fetch routines to use the new heuristic
- Fix rsx:🧵:find_tile. FEED000(X) can be substituted for (X) in the code
-- Fixes alot of failures when looking for tiled regions

rsx: Fix antialiased unnormalized coords
- scaling factors are inverse to allow proper coordinates to be computed in fs
2017-11-08 13:15:34 +03:00
kd-11 b95630d84a rsx: Minor fixups
- Optimize framebuffer memory invalidate conditions
- Fix texture sampling of AA textures (wider by 2x surfaces)
2017-11-08 13:15:34 +03:00
kd-11 af1d3c2aa6 rsx: Improve surface store resource management
- vk: Use frame testing to determine invalidated resources that can be safely deleted
2017-11-08 13:15:34 +03:00
kd-11 ec3e5c547f rsx: More fixes
- Tag surface store to help determine when contents have been invalidated
- Crop framebuffer textures if they are not the requested dimensions!
2017-11-08 13:15:34 +03:00
kd-11 963a87fed5 rsx: Critical fixes
- Remove generic throws from the rsx pipeline. Stops the rsx thread from silently dying leaving the emulator in a hung state
- Hackplement add_signed and reverse_subtract_signed blend modes
2017-11-08 13:15:34 +03:00
kd-11 173d05b54f rsx: Optimizations
- Reimplement fragment program fetch and rewrite texture upload mechanism
-- All of these steps should only be done at most once per draw call
-- Eliminates continously checking the surface store for overlapping addresses as well

addenda - critical fixes
- gl: Bind TIU before starting texture operations as they will affect the currently bound texture
- vk: Reuse sampler objects if possible
- rsx: Support for depth resampling for depth textures obtained via blit engine

vk/rsx: Minor fixes
- Fix accidental imageview dereference when using WCB if texture memory occupies FB memory
- Invalidate dirty framebuffers (strict mode only)
- Normalize line endings because VS is dumb
2017-11-08 13:15:34 +03:00
Zion Nimchuk 865bb47462 HEAD or master will no longer show up in the titlebar 2017-11-08 12:49:22 +04:00
scribam 3e7ed8a831 PPUTranslator minor changes 2017-11-08 08:34:00 +04:00
Zion Nimchuk 6782b22637 Make cellMouseGetDataList return CELL_MOUSE_ERROR_NO_DEVICE if mouse handler is set to null 2017-11-04 19:55:32 +00:00
scribam 4600094829 [RSX] Fix uninitialized value before usage 2017-11-04 01:28:53 +03:00
kd-11 daaa83b9ca rsx: Fix for framebuffer validation 2017-11-04 00:08:30 +03:00
Robbie 3288050680 Have trophy manager reject games that have invalid usr data rather than dying. 2017-11-03 21:15:43 +03:00
Robbie b8c29ae957 Make it so that TROPUSR doesn't crash on "bad" imput. 2017-11-03 21:15:43 +03:00
Robbie 47bacc0ef0 Make trophy dialog smarter and not need the silly file. Can load all games by default now. 2017-11-03 21:15:43 +03:00
Tahir Akhlaq 3d0dced4bd change CryptAcquireContextW to try CRYPT_NEWKEYSET flag if key container doesnt exist already < https://msdn.microsoft.com/en-us/library/windows/desktop/aa379886(v=vs.85).aspx > 2017-11-03 14:17:37 +03:00
kd-11 30bba09fed disable fb testing for partial framebuffer resources 2017-11-02 14:35:19 +03:00
kd-11 31b07f2c5c rsx: Tweaks
- Optimize get_surface_subresource
- Add check_program_status time to draw call setup statistics. It can slow down games significantly
2017-11-02 14:35:19 +03:00
kd-11 f7063bb57b vk: Improved handling of swap_bytes behaviour when using WCB 2017-11-02 14:35:19 +03:00
kd-11 e4ef85b6e0 rsx: Experimental; Try to calculate pixel offset using nv3062 pitch register since we know the target block is defined with 3062 registers 2017-11-02 14:35:19 +03:00
Nekotekina b7c2088489 Add supporters 2017-11-01 05:07:12 +03:00
Nekotekina 59cd0a9c7f Implement set_native_priority (posix) 2017-11-01 05:07:12 +03:00
Nekotekina af107df0b4 Fix NPDRM exitspawn 2017-11-01 05:07:12 +03:00
Nekotekina 0e7e40f2cb Fix /dev_bdvd/ for exitspawn 2017-11-01 05:07:11 +03:00
Nekotekina 0b788f5b43 Add Delete LLVM Cache option 2017-11-01 05:07:11 +03:00
scribam db5c2500c2 Update PPA urls to the latest version of Qt 2017-10-31 09:29:12 +00:00
Robbie 4aa89132d7 Implement Trophy Manager. 2017-10-29 18:48:33 +03:00
MRG95 c1f08ce58d Added breakpoint list
Added a list widget that displays all the currently active breakpoints. You can rename each one for convenience, delete them in bulk, or double click to jump to that address.
2017-10-29 16:17:05 +03:00
MRG95 09a0d046f4 Repositioned current instruction to middle
As soon as I tried the debugger, i wanted to move it to the middle almost instantly. Checked the code and found it sitting right here but commented out. Why? This is awesome.
2017-10-29 16:17:05 +03:00
Unknown 0741698f13 Qt: Fix Save Data Dialog initial size 2017-10-29 15:52:46 +03:00
kd-11 c2ac05f734 rsx: Fix for rsx thread lockup due to nested access violations when WCB is enabled 2017-10-29 15:25:17 +03:00
kd-11 f8f5f9f418 vk: Allow swapchain create to fail with an error 2017-10-29 15:25:17 +03:00
kd-11 7e6d6b45d4 nvidia facepalm 2017-10-29 15:25:17 +03:00
kd-11 361e80f7dc rsx: Tag cache blocks returned on access violation to validate data passed
to flush_all is up to date. Should prevent recursive exceptions

Partially revert Jarves' fix to invalidate cache on tile unbind. This will
need alot more work. Fixes hangs
2017-10-29 15:25:17 +03:00
kd-11 395b4bfa45 gsframe: Break waiting is emulator is stopped suddenly
- Keeps the queue from hanging the GUI
2017-10-29 15:25:17 +03:00
kd-11 ce2b790d8f rsx/qt: GsFrame improvements
- Identify minimize/restore events as separate from regular resize and do not react to them
- Enable message queue consumption after loading the shaders cache. Also hides the frame in this step
-- This fixes the 'start fullscreen' bug when running vulkan
2017-10-29 15:25:17 +03:00
Nekotekina 1ffc1e82b0 fixup 2017-10-28 23:39:10 +03:00
Nekotekina 8520ca7ef7 Audio: add Buffer Count setting 2017-10-28 23:24:08 +03:00
Nekotekina 89fba1c385 ppu_acontext draft 2017-10-28 23:24:08 +03:00
Nekotekina 00a0d37455 Add cmdline support 2017-10-28 23:24:08 +03:00
scribam dbb2251f93 [Qt] Fix uninitialised values before usage 2017-10-28 13:56:32 +03:00
kd-11 7abf755a57 rsx: Avoid false positives by early rejection. Should keep cache thashing to a minimum 2017-10-28 13:26:16 +03:00
kd-11 055f0e2e4a rsx: Export more information about affected cache sections when handling violations
- This allows for better handling of deferred flushes.
-- There's still no guarantee that cache contents will have changed between the set acquisition and following flush operation
-- Hopefully this is rare enough that it doesnt cause serious issues for now
2017-10-28 13:26:16 +03:00
kd-11 49f4da3016 rsx: Fixes
- vk: Always reopen primary command buffers. They should only be closed in flush_command_queue
- If uploading a texture and there are collisions with protected buffers, do not rebuild the cache
- Perform writes via flush before reprotecting pages that were not trampled
- Only flush no pages once
2017-10-28 13:26:16 +03:00
kd-11 bf234dc668 rsx: Implement memory tags for strict mode to validate render target memory 2017-10-28 13:26:16 +03:00
kd-11 11bd65c2b5 vulkan: Flush queue before attempting to copy texture memory! 2017-10-28 13:26:16 +03:00
Jake e0d1ac676e rsx: invalidate surface store address when tile is unbound 2017-10-28 12:46:20 +03:00
Jake 494cbac78b spu: save and restore mfc cmd after processing 2017-10-28 12:46:20 +03:00
Jake 0d46a8e786 spu: Implement readch(mfc_cmd) 2017-10-28 12:46:20 +03:00
Jake 626b9f93c4 rsx: make dmactrl get 'readonly' 2017-10-28 12:46:20 +03:00
Zangetsu38 53f9defb07 Trophy: use system language setting 2017-10-27 14:09:50 +01:00
Robbie 4bf8d1e41f Fix off by one error. Sigh. 2017-10-26 20:31:55 +01:00
Robbie 936c817bd8 Fix focus issue in trophies. 2017-10-26 20:31:55 +01:00
kd-11 9c9495621c rsx: Fix critical bug concerning transient data layout in memory 2017-10-26 00:35:45 +03:00
kd-11 d53673c6f7 rsx: Disable draw call batching when strict mode is enabled
- Minor bugs have been observed with it always enabled
2017-10-26 00:35:45 +03:00
kd-11 882e949f80 vk: Fix for infinite hanging in the access violation handler 2017-10-24 22:59:09 +03:00
kd-11 e6849a59a2 rsx: Better detection of framebuffer memory copy operations
- Still requires texture stitching to work correctly, but matching dimensions works well for now
2017-10-24 22:59:09 +03:00
kd-11 6918e265ec rsx/vk: Be a little more frugal with texture memory to avoid running out of VRAM on 1GB cards 2017-10-24 22:59:09 +03:00
kd-11 e9f293f522 rsx: Improve separate treatment of write exceptions vs read exceptions
- Optimizes search functionality and avoids thrashing valid sections
2017-10-24 22:59:09 +03:00
kd-11 5fc36d64b6 fix build 2017-10-24 22:59:09 +03:00
kd-11 95e6d78689 rsx: Workaround for 0 pitch textures.
- Should these be ignored? Needs investigation
2017-10-24 22:59:09 +03:00
kd-11 f4a666345a rsx: Even more texture cache fixes
- Fix subresource sampling
- Invalidate memory range before uploading textures to prevent hangs
2017-10-24 22:59:09 +03:00
kd-11 7a5c88a8d1 rsx: Only transfer framebuffer contents if memory contents are compatible 2017-10-24 22:59:09 +03:00
kd-11 0de0dded53 rsx: Texture fixes continued
- Fix buffer invalidate behaviour (wcb)
- Disable auto rebuild with only framebuffer storage getting rebuilt
- Fix vulkan subresource sampling
2017-10-24 22:59:09 +03:00
kd-11 5e58cf6079 rsx: Restructuring [WIP]
- Refactor invalidate memory functions into one function
- Add cached object rebuilding functionality to avoid throwing away useful memory on an invalidate
- Added debug monitoring of texture unit VRAM usage
2017-10-24 22:59:09 +03:00
Robbie b0737d1c90 Make a basic trophy notification dialog (#3204)
* Make trophy notification dialog.

* Fix bug where trophy state doesn't persist with game reboot.
2017-10-24 18:43:05 +03:00
Robbie 779ed75a19 Save manager improvements (#3631)
* Make size of manager only 60% of screen height initially at most.

* Add ability to delete/select multiple entries.

* Add ability to open up save dir and fix how it's done in
game_list_frame.

* Make delete much cleaner.
2017-10-24 18:09:38 +03:00
kd-11 96fd8556f2 Silence annoying experimental build warning
- Compiling locally on VS defines BRANCH to "" (empty $BRANCH envvar) and defines _MSC_VER. The pdb check is useless since it will never be reached
2017-10-22 00:14:40 +03:00
kd-11 8f324dfc0a vk: Enable primitive restart workaround for polaris and vega on linux as well
- Looks like it might be a hardware erratum
2017-10-22 00:14:40 +03:00
Unknown 34a6085cc0 Qt: add "clear" option to tty log contextmenu 2017-10-19 15:13:17 +01:00
Megamouse b3efa75206 [Qt] UI improvements (#3558)
* Qt: Show tooltips in description box

* Qt: implement description subscription

* Qt: add gamelist resize for ctrl-+/-/wheel (simple zoom)

* Qt: handle strict mode in gui tab

* Qt: more highdpi stuff

* Qt: remove old tooltips from settings_dialog

* Qt: conform cpublit tooltip to new subscription model
2017-10-19 14:29:48 +03:00
toccata10 b90a7dc66a evdev: add analog to dpad option (#3551)
* evdev Analog to digital option

* rewrite conditions on axis rotation

* a bit of cleanup
2017-10-19 13:41:02 +03:00
Megamouse 200557c036 [Qt] Add syntax highlighter (#3550)
* Qt: Add syntax highlighter

* Qt: add syntax highlighter to cg_disasm

The glsl part is pretty much finished.
The asm is still missing a few rules.
Colors are not yet fully decided

* Qt: add filter for syntax highlighter
2017-10-19 12:58:39 +03:00
kd-11 472cb3b1c2 gl: Check for vendor_string ATI for AMD cards. It seems AMD is still using the ATI openGL stack 2017-10-19 12:22:52 +03:00
kd-11 d8ee6a2edb add RX 550 to AMD vulkan cards with restart bug 2017-10-19 12:22:52 +03:00
kd-11 ddcacb8258 general fixes; Force u32 return type for index_count and add RX Vega to primitive restart blacklist 2017-10-19 12:22:52 +03:00
kd-11 a8e1754fa4 rsx: Allow clear_surface command for depth-only passes. Removes invalidate cache hack 2017-10-19 12:22:52 +03:00
kd-11 5db45c3699 rsx: More fixes
- Workaround for AMD glMultiDrawArrays bug
- Disable disjoint command submission when multidraw support is disabled
2017-10-19 12:22:52 +03:00
kd-11 89dcafbe41 rsx: Reimplement index buffer generation
- Emulate primitive restart in software whenever we get the chance
- Ensure PRIMITIVE_RESTART is never active when LIST topologies are active
- Reimplement TRIANGLE_FAN, POLYGON and QUAD expansion
2017-10-19 12:22:52 +03:00
kd-11 3d05e61f7e rsx/vk: Workaround for polaris primitive restart bug 2017-10-19 12:22:52 +03:00
scribam 170a95f5df Add BRANCH as a preprocessor definition taken from an environment variable 2017-10-15 18:20:02 +01:00
scribam f20e0c2898 rpcs3.vcxproj: remove unused paths in AdditionalLibraryDirectories 2017-10-15 14:23:48 +01:00
kd-11 a11d66f52d update vulkan submodules (#3600) 2017-10-15 14:37:52 +03:00
Megamouse 304a4a1b61 GUI: add some visual studio filters (#3375) 2017-10-14 19:06:20 +03:00
Henrique Jung 76b7103fed [CMake] Build LLVM from the submodule if there's no suitable version
When RPCS3 is compiled with LLVM (default option), CMake only tries to
find LLVM on the default system installation. So the OS must have a
sytstem-wide installation of LLVM of at least version 4.0, which is not
available on many GNU/Linux distributions (e.g. Ubuntu 16.04, Debian
Stretch). If CMake can not find a suitable version, it silently falls
back to compile RPCS3 without LLVM.

This patch makes CMake defaults to compile the LLVM submodule if and
only if a suitable LLVM version is not found installed on the system.
Due to a build time check on LLVM, in-tree builds will not work when
building the submodule (LLVM does not allow in-source builds). For this
reason, the instruction for building on CMake were updated.
2017-10-14 14:54:10 +03:00
kd-11 1572d01c53 qt: Add cpu blit emulation override to the debug tab 2017-10-14 14:19:14 +03:00
kd-11 86bf61ad35 rsx: Fix memory protection
- Fixes hanging when wcb is enabled
2017-10-14 14:19:14 +03:00
kd-11 479aa91368 rsx: Add a debug option to force full software emulation of blit engine 2017-10-14 14:19:14 +03:00
kd-11 eab9d06981 rsx: Texture cache fixes
- Fix src/dst framebuffer detection
- Silence some warnings
2017-10-13 15:23:48 +03:00
Zangetsu38 c63ff05e6e Fix compile VS for Optional submodule 2017-10-13 05:14:12 +03:00
scribam 0129c54ab6 Move optional.hpp as a submodule 2017-10-12 18:00:24 +03:00
kd-11 c570410e06 rsx: Stop executing broken command queues if the application fails to recover in 3 retries 2017-10-12 13:51:29 +03:00
kd-11 9af71699a4 rsx: Minor fixes
- Dont skip cb if a problem occurs, just spin on it instead to allow possibility of recovery
- Vulkan cleanup for the die_with_error helper
2017-10-12 13:51:29 +03:00
kd-11 58860614e3 rsx/qt: Implement native window hooks for win32 windows to allow communication between WndProc thread and rsx::thread
- This communication is important in communicating window events. Helps properly synchronize swapchain management on vulkan and stops nvidia crashing
- Do not block the message queue lest the driver detect window as not responding
2017-10-12 13:51:29 +03:00
Farseer e8bde583ef Remove sysutil callback 2017-10-12 04:46:10 +03:00
Nekotekina 5b19908996 Escape problematic characters in VFS
With full-width <>:"\|?*
2017-10-11 22:01:37 +03:00
Nekotekina 19f3bb8cb0 Allow shader cache dialog cancellation 2017-10-11 20:06:33 +03:00
Nekotekina ac64792d99 Optimize PPU module loading
I'm garbage 🤦
2017-10-11 20:06:33 +03:00
Nekotekina efe140bc0c Fix instruction editor a bit 2017-10-11 20:06:33 +03:00
Nekotekina df2fc13b7a Add PPU instruction stat dumper
Needs PPU Debug option to activate and PPU Interpreter
Dumps after Resume (after Pause)
Fix utils::memory_decommit, clean vm.cpp
2017-10-11 20:06:33 +03:00
kd-11 f5d450f24c vk: Better vsync mode selection (#3571) 2017-10-11 19:10:49 +03:00
yzwduck 2e5f8c0786 Rename outputs correctly when writing default values to them (#3574)
- Fix for undeclared variable errors
2017-10-11 01:50:43 +03:00
kd-11 5a03db7d2e rsx: Improve memory protection behavior when strict mode is off 2017-10-10 12:10:41 +03:00
kd-11 91ef202ee7 vulkan: Better VkResult handling 2017-10-10 12:10:41 +03:00
Zion Nimchuk 6d6b281270 Fix gentoo LLVM linking 2017-10-09 22:46:36 +01:00
Zion Nimchuk a3c49bea2c Revert "Add option to build using llvm shared libs and document other cmake options"
This reverts commit 6f33953861430882d318b6b96f7e59b06b6a4d4c.
2017-10-09 22:46:36 +01:00
kd-11 1d375cb13c vulkan: Fix window resize race condition when doing flip 2017-10-09 20:25:41 +03:00
Megamouse 20ad9a13b8 Qt: add high resolution settings to gui tab 2017-10-09 20:25:41 +03:00
kd-11 fc0f98b5db rsx: Res scaling improvements
- gl: Reintroduce the wcb hw downscaling
- rsx: Clamp scalable render target size with a config var
2017-10-09 20:25:41 +03:00
kd-11 3fe37ede97 rsx: Fixups
- gl: Remove redundant texstorage1D call
- gl: Disable the wcb scaling code as it doesnt work right yet [WIP]
- vk: Fix wcb reads
2017-10-09 20:25:41 +03:00
kd-11 55df3cdf67 vulkan: Implement vsync 2017-10-09 20:25:41 +03:00
kd-11 6e8107a5cb rsx: Implement AF override 2017-10-09 20:25:41 +03:00
kd-11 7bee4064a6 gl/wcb: Use temporary scaled image to implement bilinear filter 2017-10-09 20:25:41 +03:00
kd-11 12ab03b0b5 rsx/gl: Implement resolution scaling
rsx: Revise wpos calculation to take resolution scale into account
2017-10-09 20:25:41 +03:00
kd-11 47202d5839 rsx: Set up patch functionality for program coeffecients 2017-10-09 20:25:41 +03:00
Robbie 47b121a700 PPU Page Faults (#3309)
I guess I'll merge it and fix some issues later myself.
2017-10-08 23:37:54 +03:00
scribam d53b640bcf Change compiler requirements in cmake script to match with the values listed in the README.md file 2017-10-08 14:50:31 +03:00
Unknown 78ef467138 Qt: fix fullscreen icon 2017-10-08 13:34:46 +03:00
Unknown b7f6bd4c91 Qt: extend drag and drop to mainwindow 2017-10-08 13:34:46 +03:00
Unknown e272acd7c1 Qt: sort game_list_frame members 2017-10-08 13:34:46 +03:00
Unknown 93d2ac887d Qt: add spu and ppu debug checkboxes to debug tab 2017-10-08 13:34:46 +03:00
Megamouse a84cc1d3bb Qt: move Render_Info to emu_settings.h 2017-10-08 13:34:46 +03:00
Nekotekina cc594ad353 Add supporters 2017-10-05 19:51:37 +03:00
Nekotekina 3907dd0444 Implement SYS_NET_SO_REUSEPORT 2017-10-05 19:51:37 +03:00
Nekotekina 3d64b65813 Fix /dev/urandom typo 2017-10-05 19:51:37 +03:00
Nekotekina ab4e66a0bf Add cellVdec hack (stolen TLS) 2017-10-05 19:51:37 +03:00
Nekotekina 144f6809bf Implement CALL_FUNC 2017-10-05 19:51:37 +03:00
Nekotekina d296e6021d libbeisobmf.sprx 2017-10-05 19:51:37 +03:00
Nekotekina 45a855ef1f Fix cellKb 2017-10-05 19:51:37 +03:00
Nekotekina e5f756205c sys_net full rewrite
Implement sys_net syscalls
Clean libnet functions
Use libnet.sprx
Use libhttp.sprx
Use libssl.sprx
Use librudp.sprx
Implement sys_ss_random_number_generator
2017-10-05 19:51:37 +03:00
Talkashie 6335fa8df1 Update tooltips.json (#3529) 2017-10-05 19:34:48 +03:00
Megamouse b2605206b1 Qt: fix gamegrid regression: mismatch between entry count and grid size 2017-10-05 17:10:18 +01:00
Megamouse 0ca1f82059 [Qt] fix experimental build warning layout and smoothen gamelist scrolling (#3532)
* Qt: fix layout of "experimental build warning" for dpi scaling

and remove compiler warning in welcome_dialog.ui

* Qt: smoothen gamelist/-grid scrolling by setting singlestep value

and fix missing scroll and deselect on gamegrid

* Qt: show all bootable categories in gamegrid
2017-10-05 05:22:02 +03:00
toccata10 0c5cb4824b Add Deadzones for evdev gamepads (#3519) 2017-10-05 04:59:35 +03:00
Megamouse cf83b796e1 Qt: include debug tool colors in stylesheet (#3527)
Qt: include debug tool colors in stylesheet
2017-10-04 23:10:24 +01:00
kd-11 b338c81907 spu: Fixes (#3526)
* spu: Rewrite interpreter fast FM
- Partially implement accurate FM
- Fix FMA/FMS/FNMS by removing an optimization that does not work for INF (cmpunord)
- cmpunord does not catch all cases of an extended result/overflow
- NOTE: FM still does not handle corner cases well (e.g inf * 1.2 because SPU does not have concept of inf)
2017-10-04 20:58:06 +03:00
Megamouse 81b3e7e449 Qt: disable viewport settings on custom configs 2017-10-03 01:34:26 +03:00
scribam 425ddd13e5 [Qt] Fix repository urls to install Qt 2017-10-03 00:41:56 +03:00
Megamouse 3067c8bd27 Qt: fix tty objectname and add tty text color to stylesheet 2017-09-28 18:23:17 +03:00
jjsat 632c8872cd Respect the controller setting when returning data from cellPadGetData. 2017-09-28 12:15:54 +03:00
Megamouse 9650218bb8 Qt: fix log stacking bug when wordwrap occurs 2017-09-28 01:46:20 +03:00
Megamouse 0b51102167 Qt: add log colors to stylesheet
and silence some compiler warnings
2017-09-28 01:46:20 +03:00
Megamouse ca36d08893 Qt: use rgba lambda for default stylesheet 2017-09-28 01:46:20 +03:00
Megamouse a358384900 Qt: support thumbnail icons in stylesheets 2017-09-28 01:46:20 +03:00
Megamouse 77a75305c7 Qt: implement GetOpaqueImageArea 2017-09-28 01:46:20 +03:00
Ryan Gonzalez 85b9809b39 Fix evdev axis reversal (#3303) 2017-09-28 01:13:57 +03:00
Zion Nimchuk d36de7d54f AppVeyor git branch in title fix #2 2017-09-28 00:50:24 +03:00
Jake 2b1c757084 ds4: Fix initial connection issue and hotplug/dongle calibration detection 2017-09-24 22:03:49 +03:00
kd-11 e7db0c7d99 vk: Clamp unreleased texture metric
- TODO: Find the leaking references
2017-09-23 16:46:41 +03:00
kd-11 393e3b702f rsx: Clean up debug overlays. Add unreleased textures metric to track texture memory 2017-09-23 16:46:41 +03:00
kd-11 23ad687e7e vk: New images always should be UNDEFINED or PREINITIALIZED 2017-09-23 16:46:41 +03:00
kd-11 a04ecdbe0a vulkan: Use frameid to determine texture storage to discard 2017-09-23 16:46:41 +03:00
kd-11 9ee21af524 vulkan: Optimize memory allocation 2017-09-23 16:46:41 +03:00
kd-11 b74cdcde00 rsx: Make the 3rd texture dimension matter
- Affects cube maps and texture3D surfaces
2017-09-23 16:46:41 +03:00
kd-11 4d83d749a0 rsx: Texture cache fixes
- Update section flags when requested
- Fix nullptr dereference: cached_dest will be null if dst_is_render_target is true
2017-09-23 16:46:41 +03:00
Zion 8e66e719fa Fix branch name for AppVeyor Builds (#3472) 2017-09-22 13:26:43 +03:00
kd-11 c6e6f4afea vs/qt: Explicitly reference target output to avoid failing post-build step
- Referencing the whole build folder will err if there is any non-qt exe in the folder
2017-09-21 20:05:07 +03:00
kd-11 d0148728c6 rsx: Fixes
- Fix section scanning range for early reject
- Specify IMAGE_ASPECT_STENCIL when uploading image_from_cpu
2017-09-21 20:05:07 +03:00
kd-11 dfc564f837 gl: Check that fence is not empty before calling destroy 2017-09-21 20:05:07 +03:00
Farseer 2b0edf6cde Allow null argument
Should fix Jak 2
2017-09-21 17:31:46 +03:00
Henrique Jung daa7520d1d Deploy QT DLLs using windeployqt tool (#3432)
* Deploy QT DLLs using windeployqt tool

Replace the old mechanism that manually copy the DLLs using either CMake
or VS built-in functions. The new approach uses the windeployqt tool
provided by the QT project that automatically detect the needed DLLs and
perform the necessary copying.

This approach should be more robust if there's an upstream change on QT
project regarding DLLs usage.

* QT DLLs: do not ship RPCS3 with ANGLE and software-OpenGL

According to https://doc.qt.io/qt-5/windows-requirements.html ANGLE is
useful for applications that use OpenGL ES by removing the need to
install OpenGL drivers, redirecting OpenGL calls to DirectX instead.
RPCS does not uses OpenGL ES so it's better to just remove it from the
binary distribution.

opengl32sw.dll is a fallback mechanism when ANGLE libraries are not
available that uses a software backend for OpenGL. It's unlikely that
RPCS3 will work using software-OpenGL, so there's little point into
shipping them.

* QT DLLs: do not ship with SVG and translation files

Like the other removed QT libraries: they are not needed right now. We
can deploy them if they become useful someday.
2017-09-21 16:53:20 +03:00
kd-11 3499d089e7 rsx: Texture cache fixes and improvements
rsx: Conditional lock hack removed
vulkan - Fixes
- Remove unused texture class
- Fix native pitch calculation (WCB)
rsx: Catch hanging begin/end pairs when flushing deferred draw calls
vulkan: Register DXT compressed formats
vulkan: Register depth formats
gl: Workaround for 'texture stitching' when gathering flip surface
- TODO: Add a proper flip hack option
rsx: Fix texture memory size calculation
- DXT textures dont have real pitch. Since pitch is used to calculate memory size, make sure it always evaluates to rsx_size
rsx: Fix cpu copy detection
rsx: Validate blit dst surface and dont make assumptions about region blit order
- Also relax restrictions on memory owned by the blit engine if strict rendering is not enabled
rsx: Fix depth texture detection
rsx: Do not manually offset into dst. The overlapped range check does so automatically
rsx: Minor optimizations
rsx: Minor fixes
- Fix to detect incompatible formats when using GPU texture scaling and show message
- Better 'is_depth_texture' algorithm to eliminate false positives
2017-09-21 16:17:06 +03:00
kd-11 6b96a2022a rsx: Add support for non-projective shadow sampling
- Fixes missing shadows in persona 5

vk: Enable polygon depth bias a.k.a polygonOffset
- Fixes shadow acne in persona 5
2017-09-21 16:17:06 +03:00
kd-11 3836b40bf7 rsx: Fixups 2017-09-21 16:17:06 +03:00
kd-11 571dbfb7b1 rsx: Texture cache improvements
- Limits buffer size to min 720 in the Y axis (1024 section causes conflicts in some cases - TODO)
rsx: Fixups to allow large textures for blit operation
- Also includes checks for both leaking sections and blit regions for vulkan
hotfix for hanging when using WCB
addendum - unlock both ro and no blocks before attempting to copy memory blocks
gl: Fixups for ARB_explicit_uniform_location
- Forces glsl v 430 to make use of the extension
rsx/vk: Rework texture cache to minimize recursive access violations
- Also modifies the vulkan commandbuffer begin/end/submit mechanism
gl: Fix cached_texture_section::is_flushable to take memory protection into account
rsx: Fix blit dst offset calculation
2017-09-21 16:17:06 +03:00
kd-11 10e25eb362 rsx: Fix multidraw range splits again
rsx: Hotfix for disjoint range detection
2017-09-21 16:17:06 +03:00
kd-11 45d0e821dc gl: Minor optimizations
rsx: Texture cache - improvements to locking
rsx: Minor optimizations to get_current_vertex_program and begin-end batch flushes
rsx: Optimize texture cache storage
- Manages storage in blocks of 16MB
rsx/vk/gl: Fix swizzled texture input
gl: Hotfix for compressed texture formats
2017-09-21 16:17:06 +03:00
kd-11 e37a2a8f7d rsx: Texture cache fixes and improvments
gl/vk/rsx: Refactoring; unify texture cache code
gl: Fixups
- Removes rsx::gl::texture class and leave gl::texture intact
- Simplify texture create and upload mechanisms
- Re-enable texture uploads with the new texture cache mechanism
rsx: texture cache - check if bit region fits into dst texture before attempting to copy
gl/vk: Cleanup
- Set initial texture layout to DST_OPTIMAL since it has no data in it anyway at the start
- Move structs outside of classes to avoid clutter
2017-09-21 16:17:06 +03:00
kd-11 07c83f6e44 gl: cleanup; fix program linkage on mesa using GL_ARB_explicit_uniform_location, also make use of ARB_multidraw 2017-09-21 16:17:06 +03:00
kd-11 061824a7ec rsx: Add support for batched multidraw
gl: Fix multidraw [WIP]
rsx: Ignore vertex base when data source is generated using arithmetic
vk: Check pending flag before doing fence poke
vk/gl: Fix for inlined array and immediate draws
rsx: Collapse joined draws when batching
2017-09-21 16:17:06 +03:00
kd-11 abb56a354d rsx: Bug fixes and improvements
rsx: Try to skip unknown commands without discarding entire cb
2017-09-21 16:17:06 +03:00
kd-11 9359b8c170 rsx/fp: Shader decompiler fixes
- Requires proper 2-pass impl
rsx/fp: Catch hanging code blocks
rsx/fp: Don't pause on scaling error
2017-09-21 16:17:06 +03:00
kd-11 2d0f1f27a8 esx: Fixes to the texture cache
rsx: Blit engine improvements
- Always handle blits to and from framebuffers through the GPU
- Handle depth surfaces properly when using GL
- Check for format mismatches when blitting to the surface store [WIP]
2017-09-21 16:17:06 +03:00
kd-11 73312fc363 rsx: Several fixes and improvements
- Do not ignore non-centered pixel blitting
- Register method ac00+16
- Bump texture memory heap to account for GPU texture scaling requirements (vulkan)
- Explicit MRT location index output to better convey intent (openGL)
2017-09-21 16:17:06 +03:00
kd-11 deb590cb05 rsx/vk: Bug fixes
- Make each frame context own its own memory
- Fix GPU blit
- Fix image layout transitions in flip

vk: Improve frame-local memory usage tracking to prevent overwrites
- Also slightly bumps VRAM requirements for stream buffers to help with running out of storage
- Fixes flickering and missing graphics in some cases. Flickering is still there and needs more work
vk: Up vertex attribute heap size and increase the guard size on it
vulkan: Reorganize memory management
vulkan: blit cleanup
vulkan: blit engine improvements
- Override existing image mapping when conflicts detected
- Allow blitting of depth/stencil surfaces
2017-09-21 16:17:06 +03:00
kd-11 2033f3f7dc rsx/vk/gl: Refactoring and reimplementation of blit engine
Fix rsx offscreen-render-to-display-buffer-blit surface reads
- Also, properly scale display output height if reading from compressed tile

gl: Fix broken dst height computation
- The extra padding is only there to force power-of-2 sizes and isnt used

gl: Ignore compression scaling if output is rendered to in a renderpass

rsx/gl/vk: Cleanup for GPU texture scaling. Initial impl [WIP]
- TODO: Refactor more shared code into RSX/common
2017-09-21 16:17:06 +03:00
Nekotekina 3e3160d7ac Minor VFS fix 2017-09-21 14:34:09 +03:00
Nekotekina dd919c76b8 cellAudio: use error_code 2017-09-20 14:27:52 +03:00
Nekotekina a6a0f13264 Remove unnecessary include git-version.h 2017-09-20 14:26:42 +03:00
Nekotekina b9a0c107ab Fix library loading mode 'both' 2017-09-20 14:26:42 +03:00
Nekotekina 5c93acefd9 Try to fix some fs errors 2017-09-19 15:07:07 +03:00
Nekotekina a428dac71c sys_fs_mkdir: implement ENOENT 2017-09-19 15:07:07 +03:00
Nekotekina 3901f08fa0 Fix error on loading a library twice 2017-09-19 15:07:07 +03:00
Nekotekina 519f21db18 Exitspawn support renewal
Implemented _sys_process_exit2 syscall
Rewritten sys_game_process_exitspawn
Rewritten sys_game_process_exitspawn2
Implemented _sys_process_atexitspawn
Implemented _sys_process_at_Exitspawn
And some other changes
2017-09-19 15:07:07 +03:00
Nekotekina bc098d6b9c Rewrite _sys_strncat 2017-09-19 15:07:07 +03:00
Nekotekina 22ff8abd7d Rewrite _sys_strncpy 2017-09-19 15:07:07 +03:00
Nekotekina 871ccfd32c Rewrite _sys_strrchr 2017-09-19 15:07:07 +03:00
Nekotekina 7a79e184c5 Rewrite _sys_strchr 2017-09-19 15:07:07 +03:00
Nekotekina 0e72cc879f Rewrite _sys_strcpy 2017-09-19 15:07:07 +03:00
Nekotekina 13304bd18b Rewrite _sys_strcat 2017-09-19 15:07:07 +03:00
Nekotekina a4b824c50a Rewrite _sys_strncmp 2017-09-19 15:07:07 +03:00
Nekotekina ccc87081f3 Rewrite _sys_strcmp 2017-09-19 15:07:07 +03:00
Nekotekina 800ba9d902 Rewrite _sys_strlen 2017-09-19 15:07:07 +03:00
Nekotekina 015b9fdf8b Fix _sys_strncasecmp 2017-09-19 15:07:07 +03:00
Nekotekina 83f93202d0 Rewrite _sys_memcmp 2017-09-19 15:07:07 +03:00
Nekotekina ae2ea02377 Implemented _sys_prx_load_module_on_memcontainer 2017-09-19 15:07:07 +03:00
Nekotekina 4fe4521881 Implemented __sys_look_ctype_table
Implemented _sys_tolower, _sys_toupper
Fixed _sys_strncasecmp
2017-09-19 15:07:07 +03:00
Nekotekina b9b71ccbc1 Implemented syscall _sys_process_exit 2017-09-19 15:07:07 +03:00
Nekotekina e789b969b0 Implemented MFF_HIDDEN for VNIDs
Minor refactoring
Now possible: ```REF_FUNC(...).flag(MFF_HIDDEN);```
2017-09-19 15:07:07 +03:00
Nekotekina 837c5dddee Add <typeinfo> 2017-09-19 15:07:07 +03:00
Nekotekina 669b1385cc Move sys_process_exit 2017-09-19 15:07:07 +03:00
scribam 01ffaab3e0 Silent some compiler warnings 2017-09-19 13:21:12 +03:00
Robbie d5fb7180d0 HGA calls sys_rsx_context_attribute before calling sys_rsx_memory_allocate. This inevitably causes RPCS3 to crash. Add nullptr check to prevent this. 2017-09-18 21:24:13 +01:00
Megamouse b141b43c1c [Qt] fix graphics adapter selection and rebase for less redundancy 2017-09-17 21:05:54 +01:00
Megamouse cad91e114d Qt: add char count label to osk dialog 2017-09-17 12:39:52 +03:00
Megamouse db51779682 Qt: settings_dialog layout fix (hack) 2017-09-17 11:40:41 +03:00
Peter Mcteague c18e71ca29 Add git_branch to git-version.h, add display version info to gs_frame and add branch and version to log. (#3186)
* Added version number and branch name to gs_frame and log file. This also involved making the files that generate git-version.h , get the branch.
2017-09-16 14:54:25 +03:00
myfreeweb 07af701afe Vulkan: use pkg-config instead of checking for Linux (#3440)
Makes Vulkan optional on Linux / makes it possible on FreeBSD.
2017-09-14 21:02:09 +03:00
Nekotekina 669d953529 Implement fs::error::notempty 2017-09-14 00:23:23 +03:00
Nekotekina 22d8b57027 Improve lv2_memory object 2017-09-14 00:23:23 +03:00
Nekotekina 0e691e2c51 sys_mmapper: minor range fix 2017-09-14 00:23:23 +03:00
Nekotekina ae1e9e78db sys_fs: use g_tls_error for diagnostic
Affected syscalls:
sys_fs_open
sys_fs_opendir
sys_fs_stat
sys_fs_mkdir
sys_fs_fcntl (get free space)
2017-09-14 00:23:23 +03:00
Zion Nimchuk 4a10dcc549 Fix buffer overrun in cert loading, made it more accurate. Fixes #3408 2017-09-13 17:40:57 +03:00
Megamouse 553f67d7e3 Qt: improve gamelist refresh, fix some more scroll issues
despite earlier efforts with modelindex and so on the annoying scroll jump still surfaced sometimes, so we only scrollTo index on selected occasions from now on.
Furthermore we don't need to refresh the gamelist if no custom config has been applied, so this will only be needed on accept from now on
2017-09-11 23:17:32 +03:00
Megamouse fac8a520f0 Qt: Remove duplicate gui repaints in settings dialog
ApplyGuiOptions(true) already forces GuiStylesheetRequest and therefore RepaintGui in main_window if necessary.
We don't need GuiRepaintRequest on accept because there should be no option left that doesn't repaint immediately
2017-09-11 23:17:32 +03:00
Megamouse f0358f85fc [Qt] fix small buttons/missing icons in the toolbar (Doppelgänger) (#3413)
* Qt: use lambda for colorizedIcon in main_window and game_list_frame

* Qt: enable AA_UseHighDpiPixmaps for better looking icons

* Qt: use iconSize instead of sizehint for linux, add some comments
2017-09-10 20:46:39 +03:00
Henrique Jung 4b9fa8ec6d CMake build: copy QT DLLs files to bin directory
AppVeyor build relies on CMake to build the VS project files, which then
is used to build RPCS3, so we must tell CMake to copy Qt DLLs files the
same way VS build does.
2017-09-10 19:25:54 +03:00
Robbie 47685bef39 If the loop is never entered, then the jit is null. 2017-09-10 18:51:59 +03:00
Megamouse b11f9e0405 [Qt] add scrollbar to about dialog (#3417)
* Qt: add scrollbar to about dialog

* move contributors
2017-09-10 14:03:24 +03:00
Henrique Jung 84e7de0a78 VS build: copy Qt5WinExtras.dll to bin directory
When building RPCS3 on Visual Studio, there's some DLLs that are copied
from the local QT installation to the RPCS3's output directory using a
post-build script. However, one of these DLL was missing, which is
required for running the program on debug mode (for release versions,
the file is already present on git).

This commit just add the additional command that is needed to copy the
file.
2017-09-10 01:27:22 +01:00
scribam f39e2b999f [Qt] Delete "ui" pointer in destructor 2017-09-09 20:29:42 +01:00
Megamouse cd4b28b4d7 Qt / OpenGL: fix delete_context 2017-09-09 19:46:10 +01:00
Megamouse 2db2114a45 Qt: add Refresh button to gamepad settings, minor cleanup 2017-09-09 19:46:10 +01:00
Megamouse 4b11a62b4d Qt: fix gamepad settings layout issue 2017-09-09 19:46:10 +01:00
RipleyTom 0457f23b13 Pad Refactoring
Adds a window to setup multiple input types as once
All controllers are now handled by a single thread
[hcorion] evdev refactor
2017-09-09 00:55:03 +01:00
Peter Mcteague a6ba7ed21c Fixed a line where event->ingore() was called after break. 2017-09-09 00:33:53 +01:00
Peter Mcteague 5326912bc0 Added ignoring of keyboard shortcuts to keyboard_pad_handler
This fixes an issue where pressing keyboard shortcuts will input them to
the game.
2017-09-09 00:33:53 +01:00
Megamouse be46c82aaa [Qt] style adjustments 6
rename members and clean headers for gamelist and main window
adjust some more connects
2017-09-08 19:23:34 +01:00
Megamouse 43bae9f9d7 [Qt] style adjustments 5
rename even more members and clean headers
adjust some more connects
move some function bodies to cpp
2017-09-08 19:23:34 +01:00
Megamouse 95231c4dee [Qt] style adjustments 4
rename more members and clean headers
adjust some connects
2017-09-08 19:23:34 +01:00
Megamouse a95e01290e [Qt] style adjustments 3
rename some members and clean headers
2017-09-08 19:23:34 +01:00
Farseer 0cbbd3a5b1 Trophy fixes
Should fix Kung Fu Panda 2 Raging Blast 2
2017-09-08 20:10:57 +03:00
Zion Nimchuk d8f3354ce3 Fix some of libpng known incorrect profile spam 2017-09-08 17:23:16 +01:00
RipleyTom e4105f46de Implement _sys_prx_get_module_info 2017-09-08 00:06:53 +03:00
Megamouse 9a1ee9e984 use single line titles in gamelist and recent games menu 2017-09-07 21:26:44 +01:00
Zion Nimchuk 7c897d5019 Weird tlou fix 2017-09-06 21:44:58 +01:00
Zion Nimchuk bfe2bccc51 Implement progress bar in taskbar for non-windows platforms, Fixes #2605 2017-09-06 21:44:58 +01:00
Zion Nimchuk d2cae96e8d Add option to build using llvm shared libs and document other cmake options 2017-09-06 21:44:58 +01:00
Megamouse 8e955297ef [Qt] style adjustments 2
some more of the same
2017-09-06 17:15:38 +01:00
Megamouse 205f6a9000 [Qt] style adjustments 1
mainly move { to newline
get rid of some lines here, add some lines there
2017-09-06 17:15:38 +01:00
jjsat 4558f93f92 Convert endianess before passing buffers to setsockopt. 2017-09-06 00:14:15 +03:00
jjsat 634c411946 Fix sys_tty_write() if called with pwritelen == NULL. 2017-09-06 00:14:15 +03:00
Megamouse d4d0d35e05 game_list_frame: force single line text in list items 2017-09-05 21:44:46 +03:00
Nekotekina 83e139cd1a Improve sys_fs_ftruncate
Handle stream API lock (EBUSY)
Handle append mode
2017-09-04 02:15:29 +03:00
Nekotekina 2e510e5ca0 Fix rXml limitation
(trophies)
2017-09-04 02:15:28 +03:00
Nekotekina 1262263f5c Fix sys_event_port_connect_ipc 2017-09-04 02:15:28 +03:00
Nekotekina 9b9e2bcafb Move sys_gamepad filter 2017-09-04 02:15:28 +03:00
RipleyTom cde29aba64 multi pkg fix 2017-09-04 00:10:15 +01:00
scribam 34cf1ff7c7 Remove old wxWidgets-related references 2017-09-03 23:12:36 +01:00
Zion Nimchuk cc880b53aa Add cross-platform implementation of cellHttpUtilParseUri 2017-09-04 00:37:36 +03:00
Zion Nimchuk 8ad44dd00f Implement cellSslCertificateLoader 2017-09-04 00:37:36 +03:00
Megamouse 9440e65452 settings_dialog: minor connect simplification 2017-09-02 15:22:58 +03:00
Megamouse 5cb6815bf3 GUI: Fix Repaint on stylesheet change 2017-09-02 15:22:58 +03:00
Ofek caab400258 Various fixes (Trophy, Gcm corrections, stack alloc) (#2894)
* Fixed sys_get_random_number generating less bytes than needed, and ceiling the buffer size in 0x1000 instead of failing
* Corrected alignment check in libgcm
* Now calling callback of sceNpManagerRegisterCallback
* Fixed trophies
2017-09-02 14:43:44 +03:00
Megamouse d3f13ab8a3 fix da build 2017-09-02 12:04:22 +03:00
Talkashie ca6064b109 sys_usbd stuff (#3346)
* Create sys_usbd.cpp

* Create sys_usbd.h

* Update lv2.cpp
2017-09-02 04:21:42 +03:00
Ani e57caefd09 libad: Enable LLE load
Removes libad from ignore list.

It will only affect games that call for it, making them progress further with the Recompiler instead of dying in Unregistered Function, as there's no HLE implementation of libad.

Tested with Guitar Hero 5 [BLES00576]
2017-09-01 21:10:50 +01:00
Nekotekina 7e99f6bc5f Add supporters 2017-09-01 21:39:32 +03:00
Nekotekina a85caaee1d Set PPU stack bounds 2017-09-01 21:24:43 +03:00
Nekotekina 5b00aaf561 Fix decrypt_self usage 2017-09-01 02:10:57 +03:00
Nekotekina 05442bdb11 Protect SPU segments 2017-09-01 00:59:25 +03:00
Nekotekina 9ba3cea2b1 RawSPU: implemented read SPU_RunCntl_offs 2017-08-31 23:22:52 +03:00
Nekotekina 20d48289b8 RawSPU: implement read SPU_NPC_offs 2017-08-31 22:55:39 +03:00
Nekotekina 8f9410ceff Implemented syscall sys_event_port_connect_ipc 2017-08-31 22:10:22 +03:00
Nekotekina 3a08dd7dde RawSPU: implement Prxy_TagStatus_offs
Rollback to immediate MFC transfers
2017-08-31 22:03:47 +03:00
Nekotekina cfb858a51c Load liblv2.sprx by default 2017-08-31 21:46:58 +03:00
Nekotekina 37d7fdbcae Fix sys_raw_spu_image_load 2017-08-31 21:44:42 +03:00
Nekotekina 62c14e9437 Fix sys_raw_spu_load 2017-08-31 21:44:26 +03:00
Nekotekina 90b8346312 Implemented syscall _sys_spu_image_get_segments 2017-08-31 21:39:12 +03:00
Nekotekina 167d6a08f8 Implemented syscall _sys_spu_image_get_information 2017-08-31 21:30:13 +03:00
Nekotekina 649d68a00f +sys_spu_elf_get_segments 2017-08-31 20:38:17 +03:00
Nekotekina 8807cd06b7 +sys_spu_elf_get_information 2017-08-31 20:37:54 +03:00
Nekotekina b533d57717 sys_spu_image: minor update
Cleanup
Templates extended
2017-08-31 20:36:51 +03:00
Nekotekina 010b75251f fs::rename fixed
Added overwriting policy
sys_fs_rename improved
2017-08-30 17:14:30 +03:00
Nekotekina da3f3fd1fb Fix ipc_manager::add
Thanks to @Farseer2 for debugging
2017-08-29 21:26:31 +03:00
JayC-03 64a6fbe39f Add missing game categories
Used by some media apps, 
YouTube boots now.
2017-08-29 03:19:35 +03:00
Zion 818df50bb5 Spelling correction 2017-08-28 18:43:47 +03:00
Nekotekina f59a448f3f Copy sys_spu_segment info in SPU TG
No idea whether it fixes something or not
2017-08-27 03:00:10 +03:00
Nekotekina d98f739043 Make impossible to disable fatal errors 2017-08-27 03:00:10 +03:00
Nekotekina aa5dc5455e _sys_spu_image_import implemented
vm:var<T[]> improved (begin/end)
sys_spu_image_import rewritten
2017-08-27 03:00:10 +03:00
Ani dfc970c926 Point forums URLs to the new one
Updates forums URLs to our new forums
2017-08-27 01:27:38 +03:00
scribam cb00190c3e [Qt] Replace deprecated qSort function by std::sort 2017-08-26 22:32:40 +01:00
scribam 8fdf1b23a3 Update cell_FreeType2.cpp 2017-08-26 22:03:15 +01:00
kd-11 2e9405db4c rsx: Remove index expansion for quad strips 2017-08-26 21:53:54 +03:00
kd-11 fe5828cb47 rsx: Implement QUAD_STRIP
- QUAD_STRIP evaluates to TRIANGLE_STRIP in memory. The memory layout is identical.
- The only difference between the two modes would be the primitive_ID but that doesnt matter on RSX
- Its worth noting that results will be different between the two modes if input vertices are non-coplanar for every set of N verts
2017-08-26 21:53:54 +03:00
kd-11 e56d8db6a3 gl: Do not modify bound depth/stencil buffers bound to zcull memory
- Fixes some rare cases where zcull always fails
2017-08-26 21:53:54 +03:00
kd-11 e76b6e3f27 gl: Workaround for restrictive z range 2017-08-26 21:53:54 +03:00
kd-11 9a7ce2fd29 rsx/vp: ARL fix 2017-08-26 21:53:54 +03:00
kd-11 462b93f62c vulkan: Gracefully handle back-to-back flip request spam 2017-08-26 21:53:54 +03:00
kd-11 f71f67c4ff rsx: Make fragment state dynamic to reduce shader permutations 2017-08-26 21:53:54 +03:00
kd-11 8358bda133 gl/rsx: Fixes to zcull pixel counting 2017-08-26 21:53:54 +03:00
scribam 85199e200b [Qt] Simplify firmware libraries searching 2017-08-25 22:20:57 +03:00
RipleyTom 5681801b85 cellOskDialogLoadAsync fix
Takes into account text limit and initial text
2017-08-25 21:31:27 +03:00
Talkashie 86ef07b166 Correct typo 2017-08-25 18:42:41 +01:00
Andrew O'Neil daf3760cd4 Add PulseAudio audio backend 2017-08-24 17:43:34 +03:00
Nekotekina c1450ad616 Reenable thread_local for all platforms 2017-08-24 16:27:07 +03:00
Nekotekina 1716db14ed Fix moving disc games with arbitrary dir name 2017-08-23 21:26:18 +03:00
Nekotekina a68983b551 Ensure all log messages are displayed 2017-08-22 21:06:37 +03:00
Megamouse c7c0139788 stylesheets: add custom color to gamepad 2017-08-22 15:28:22 +03:00
Zangetsu38 37bc2b3bb9 rsx: implement pixel size 16. 2017-08-21 17:32:21 +03:00
Megamouse c85806c422 GUI: improve reset to deafult button 2017-08-21 01:05:57 +03:00
Megamouse ee98683538 stylesheets: UI Colors fixes 2017-08-21 01:05:57 +03:00
Megamouse a822d990d2 stylesheets: UI_Colors hotfix 2017-08-20 17:56:52 +03:00
Megamouse 33d3303bdf GUI: hide utilities by default 2017-08-20 17:32:30 +03:00
Megamouse 8b35df8327 misc: add build warning to log 2017-08-20 17:32:30 +03:00
Megamouse 0854ed2b51 misc: get rid of some compiler warnings 2017-08-20 17:32:30 +03:00
Megamouse 713c1a7a86 cg_disasm: fix frame by removing parent 2017-08-20 17:32:30 +03:00
Megamouse fb816a0eb9 osk: fix backspace 2017-08-20 17:32:30 +03:00
Megamouse fff62df6a2 stylesheets: make UI Colors optional 2017-08-20 16:14:32 +03:00
Zion Nimchuk e6a07e80d7 Fix evdev joystick detection 2017-08-19 20:05:33 +03:00
Zion Nimchuk bc7d728eb3 Fix linux builds giving experimental build even if not on experimental build. 2017-08-19 20:05:33 +03:00
Zion Nimchuk 66a43c35db Fix evdev controller detection, add joystick squircling 2017-08-19 20:05:33 +03:00
Robbie e9f057c91b Make removing a save fast 2017-08-19 18:17:46 +03:00
Robbie 196cdfafa6 Implement a proper save manager. 2017-08-19 18:17:46 +03:00
Nekotekina 590ca7115f Rewrite cellVideoOutConfigure 2017-08-19 17:35:04 +03:00
Jake 650db9c962 cellPad: remove unneeded & 2017-08-19 12:27:53 +03:00
Jake 5d7c454e52 rsx: Vertex Decompiler, fix sca register assignment 2017-08-19 12:27:53 +03:00
Jake 4d5f98017f d3d12: ignore 0 sized rt dma copy 2017-08-19 12:27:53 +03:00
Jake 7ecf6cb014 rsx: Ignore sending system reserved semaphores to renderer 2017-08-19 12:27:53 +03:00
Danila Malyutin 9d1aebce74 Silence some obvious warnings
Makes travis logs a bit cleaner
2017-08-18 23:09:52 +03:00
scribam dc9671c639 Add cellAtracGetSamplingRate and cellAtracMultiGetSamplingRate functions 2017-08-18 22:42:38 +03:00
scribam 93bfe8164c Move sys_gamepad files to the correct directory 2017-08-18 21:59:25 +03:00
probonopd d6329eaa1a Make it pass desktop-file-validate in Ubuntu 14.04 2017-08-18 20:57:21 +03:00
kd-11 f21a3069a5 vulkan: Don't keep invalidated objects around too long
Games like Tales of Vesperia seem to be using a random memory allocator with very low collision chance.
This means objects are very unlikely to be reused in such games leading to pile-up
2017-08-18 16:51:38 +03:00
kd-11 a8b989b51d vk: Improve window resize handling
- Be careful not to request images not available
- Request a triple buffer at all times if available to keep acquisition from locking up
2017-08-18 16:51:38 +03:00
kd-11 142bfb5250 rsx: Fix immediate indexed drawing 2017-08-18 16:51:38 +03:00
kd-11 334327df67 rsx: Add a success message on program compile completion
- Should help users wondering if rpcs3 'froze' during shader compile
2017-08-16 23:58:30 +03:00
kd-11 2400210144 vk: Reimplement access violation sync handling 2017-08-16 23:58:30 +03:00
kd-11 1b1c300aad vulkan: Restructure frame queues 2017-08-16 23:58:30 +03:00
kd-11 531b03e7af vk: Catch leaking imageview refs on resize 2017-08-16 23:58:30 +03:00
kd-11 650c1c64f1 gl: Workarounds for intel GPUs which dont seem to be truly GL4 compliant 2017-08-16 23:58:30 +03:00
kd-11 2fd4726919 rsx: Fix single vertex array input declarations 2017-08-16 23:58:30 +03:00
kd-11 b86745ee4e gl: Fix vsync; always use adaptive vsync instead of double-buffered 2017-08-16 23:58:30 +03:00
kd-11 c04aa05398 rsx: Shader pipeline fixes and improvements
- Do not set zfunc if alphakill is not enabled. This is because at the moment alphakill requires a different shader to be built

- use glsl loop-unroll friendly comparison; skip vertex input compare if either key requests it

- Minor tweaks to fp key generation
2017-08-16 23:58:30 +03:00
kd-11 3c9bab8563 ui: Move disable vertex cache to debug. Also add an option to disable zcull emulation in the debugger 2017-08-16 23:58:30 +03:00
kd-11 0dc24799f1 gui: Add delete shader cache option in the context menu 2017-08-16 23:58:30 +03:00
kd-11 6eb1786635 rsx: Clamp depth range to [0,1]
- Fixes remaining issues with Ni no Kuni
2017-08-16 23:58:30 +03:00
kd-11 bbf2a97d2e rsx: Zero-initialize the vertex register block
- Some games reference constant regs that they never initialize
2017-08-16 23:58:30 +03:00
kd-11 00c6a589a5 rsx/util: Add simple consistent hash function
rsx/vk/shaders_cache: Move vp control mask to dynamic state

rsx/vk/gl: adds a shader cache for GL. Also Separates pipeline storage for each backend

rsx: Add more texture state variables to the cache
2017-08-16 23:58:30 +03:00
kd-11 c7dca1dbef rsx/vk: Implement shaders cache and fix broken pipeline_storage comparison and hash
- Fix pipeline state storage to uniquely store each pipeline variant
- Adds a progress bar to indicate loading is taking place
2017-08-16 23:58:30 +03:00
kd-11 1da732bbf5 rsx/gl/vk: Invalidate texture regions when memory is unmapped
- Free GPU resources immediately if mappings change to avoid leaking VRAM
2017-08-16 23:58:30 +03:00
kd-11 00b0311c86 rsx/gl/vulkan: Refactoring and partial vulkan rewrite
- Updates vulkan to use GPU vertex processing
- Rewrites vulkan to buffer entire frames and present when first available to avoid stalls
- Move more state into dynamic descriptors to reduce progam cache misses; Fix render pass conflicts before texture access
- Discards incomplete cb at destruction to avoid refs to destroyed objects
- Move set_viewport to the uninterruptible block before drawing in case cb is switched before we're ready
- Manage frame contexts separately for easier async frame management
- Avoid wasteful create-destroy cycles when sampling rtts
2017-08-16 23:58:30 +03:00
kd-11 6a707f515e vk/gl: Factorize shared GLSL code
- prep vulkan for shared glsl backend
2017-08-16 23:58:30 +03:00
kd-11 c0409a819e gl: Workaround for depth/color format mismatch when using hardware blit 2017-08-16 23:58:30 +03:00
kd-11 b2b5f564a1 rsx: Add a few more depth format types to known behaviour paths 2017-08-16 23:58:30 +03:00
kd-11 d54c2dd39a gl: Move vertex processing to the GPU
- Significant gains from greatly reduced CPU work
- Also reorders command submission in end() to improve throughput

- Refactors most of the vertex buffer handling
- All vertex processing is moved GPU side
2017-08-16 23:58:30 +03:00
Megamouse e668ecd453 stylesheets: fix gamegrid font 2017-08-16 16:11:11 +01:00
Megamouse 0020359b8f stylesheets: fix color settings 2017-08-16 16:11:11 +01:00
Megamouse a0176775ff stylesheets: make toolbar styles more accessible 2017-08-16 16:11:11 +01:00
Megamouse a18fddb831 stylesheets: move white header section to default stylesheet 2017-08-16 16:11:11 +01:00
Megamouse ea462ae7d7 stylesheets: fix default not working 2017-08-16 16:11:11 +01:00
Ryan Gonzalez 6d14583f28 Better evdev joystick axis scaling (#3202)
Fix evdev scaling when the minimum value is <0
Declare a trigger as pressed as long as any value >0 is given
2017-08-15 22:14:13 +03:00
scribam 956117a74f Fix the window title when the option "show_fps_in_title" is not checked 2017-08-15 21:34:16 +03:00
scribam 0c1d4e43e4 Simplify m_show_fps assignation 2017-08-15 21:34:16 +03:00
scribam ae156801df Simplify qstr function 2017-08-15 21:34:16 +03:00
RipleyTom 844e09c40e Fix search edit context menu weird color 2017-08-15 21:14:09 +03:00
RipleyTom 81da93a302 Fix rare occurence where there is a /PS3_GAME+something directory which leads to weird behavior 2017-08-15 21:14:09 +03:00
RipleyTom e0508c6c64 unpkg fix 2017-08-15 15:58:16 +03:00
RipleyTom db9618ac2f Resets sleep timer on button press
Adds windows sleep timer reset on ds4 button input

Refactoring

Shorter version
2017-08-15 15:28:53 +03:00
RipleyTom a38182b967 Adds check for pkg signature in QT part 2017-08-15 14:30:32 +03:00
RipleyTom 474bd7beaf Adds support for multi-files pkg. 2017-08-15 14:30:32 +03:00
Talkashie d8c449aadf Update cellNetCtl.cpp 2017-08-14 18:17:46 +03:00
Talkashie 2c611ec0ba Update cellHttp.cpp 2017-08-14 18:17:46 +03:00
Nekotekina d2fb69cda3 Add build warning 2017-08-13 23:26:32 +03:00
Nekotekina 24f9f06279 Check FNID duplication 2017-08-13 21:39:08 +03:00
Nekotekina b671bb72dc Rewrite Drag&Drop classification 2017-08-13 21:39:08 +03:00
Nekotekina af11ad6253 Fix deadlock in vm::unmap 2017-08-13 21:39:08 +03:00
Nekotekina 0d9b89fb34 Update supporters 2017-08-13 21:39:08 +03:00
RipleyTom 80fee5ac1e (#3214)
Adds cpu to log.
Adds [DO NOT USE] to D3D12 selection.
2017-08-13 18:32:48 +03:00
Talkashie a909bd6edd Register missing functions in cellSysutil (#3206) 2017-08-13 00:32:00 +03:00
Megamouse eeb4d4d4de emu_settings: fix faulty custom config file creation 2017-08-12 12:53:51 +03:00
Megamouse 4c42043940 game_list_frame: add scrollAfter option to Refresh for Talkashie 2017-08-12 12:53:51 +03:00
praydog 6136abd0f8 Minor DS4 Bluetooth fix (#3140)
* Fix DS4 input not working after controller restart (bluetooth)

* Fix bad hid_free_enumeration logic

* Tabbing

* Proper way of telling DS4 to send 0x11 reports

* Dead code removal
2017-08-11 00:41:13 +03:00
scribam 98ef419abd Add sceNpTssGetDataNoLimit and sceNpTssGetDataNoLimitAsync functions 2017-08-10 15:03:54 +03:00
scribam 77354f0f90 Add _sce_net_add_name_server function 2017-08-10 15:03:54 +03:00
scribam 108f87c08f Add cellUsbdRegisterCompositeLdd, cellUsbdUnregisterCompositeLdd and cellUsbdResetDevice functions 2017-08-10 15:03:54 +03:00
scribam 08e2698b9c Add cellSearchGetContentInfoSharable function 2017-08-10 15:03:54 +03:00
scribam 6e81db7b43 Add cellVideoOutSetCopyControl function 2017-08-10 15:03:54 +03:00
scribam e9f12ae30a Stub cellAvconfExt functions 2017-08-10 15:03:54 +03:00
scribam 2f977aae18 Stub cellSysutilAvc2 functions 2017-08-10 15:03:54 +03:00
Megamouse 0e5a862d8a fix resize on boot 2017-08-10 02:53:40 +03:00
kd-11 1e46cd255b gl: Fix inconsistent state tracking 2017-08-10 00:16:20 +03:00
kd-11 e5e6af41a6 gl: Fix occlusion statistics clearing 2017-08-10 00:16:20 +03:00
kd-11 ce437eb8d2 gl: Properly initialize pipeline properties 2017-08-10 00:16:20 +03:00
kd-11 4c019c55d2 rsx/gl: Fix zcull queries and log conditional render modes
- Fixes a situation where a query readback is requested while zcull render is still active
2017-08-10 00:16:20 +03:00
Megamouse ae440a92ac use new range for combobox, remove obsolete code 2017-08-09 23:44:29 +03:00
Robbie 54d2e8bfdd Remove some warnings from Linux and fixed something from code review. 2017-08-09 22:11:28 +03:00
Robbie 3f206981d9 Finesse size of goto address. Downgrade image loading failed to warning. 2017-08-09 22:11:28 +03:00
Robbie fa7407cd42 Remove about 100 warnings from rpcs3qt code. 2017-08-09 22:11:28 +03:00
Robbie 866b9524b3 Add rpcs3 icon to save dialogs. 2017-08-09 22:11:28 +03:00
Robbie d1cde4d0a7 Perform refactoring of pads to remove the ugly pad initialization. 2017-08-09 22:11:28 +03:00
Aurora 2fcd38c2bc Reduce the zero-page size on macOS, so that PPUThread works 2017-08-08 23:20:07 +03:00
Aurora 300b34e268 Disable PIE on macOS too 2017-08-08 23:20:07 +03:00
Aurora 7e1c6a5819 Make it build on macOS with Clang 2017-08-08 23:20:07 +03:00
Nekotekina 613214cdca Improve error formatting 2017-08-08 22:17:51 +03:00
Malcolm Jestadt 009f53a267 fix segfault in boot recent list 2017-08-08 02:34:24 +03:00
Megamouse f3ad922a8f drag and dropperinno (#3037) 2017-08-06 22:29:28 +03:00
Nekotekina 7b27a8e993 Fix idm::init, fxm::init 2017-08-06 16:13:11 +03:00
kd-11 fcb7072fee Implement hardware zcull emulation
rsx/gl: Support s1 immediate values; ogl minor refactoring
2017-08-06 14:29:42 +03:00
kd-11 7ab1792ef7 rsx: Implement conditional locks 2017-08-06 14:29:42 +03:00
Jan Beich 40d305b35d Make ALSA optional 2017-08-06 02:02:57 +01:00
RipleyTom 2d7e91ba8a Yield instead of sleeping rsx thread. (#3158)
Another Yield
2017-08-06 01:46:01 +01:00
Nekotekina b05434bc6f Fix Firmware message 2017-08-05 17:07:30 +03:00
Nekotekina 7b4c044480 Relax allocations in ppu_load_exec 2017-08-04 14:33:53 +03:00
Nekotekina c14eb4e54a Implement error report stacking 2017-08-04 14:33:53 +03:00
Megamouse 930ce4af60 log_frame: fix random stack 2017-08-03 23:06:54 +03:00
Megamouse d51a986dd4 GUI: fix icon sizes and exterminate gamelist bug
recreate old icon size values
2017-08-03 23:06:54 +03:00
Jake 02845f546e Add gcm to auto lle / liblv2 2017-08-02 01:33:12 +03:00
Jake fff34a7f0f d3d12: Fix 0 sized framebuffer crashes 2017-08-02 01:33:12 +03:00
Jake 21dd715b42 sys_rsx: implement support for lle-gcm 2017-08-02 01:33:12 +03:00
Jake d9a693019b rsx/gcm: Implement rsx dma. Refactor gcm/rsx to not be as codependent 2017-08-02 01:33:12 +03:00
mp-t 607d2486ea Code review (#3114)
* Fix always-true conditions in sceNp module

* gl_render_targets: useless check on unsigned variable, possible bug

* fixed UB in crypto utility functions

* copy-paste error in vk::init_default_resources

* pass strings by const ref

* Dont copy vectors. Make sure copies are not needed because functions are used in a multi-threaded context.
2017-08-01 20:22:33 +03:00
Nekotekina 77f58326af Add supporters 2017-07-30 01:09:42 +03:00
Nekotekina bf14cbdb27 Fix _sys_lwcond_signal, _sys_lwcond_signal_all 2017-07-30 01:09:42 +03:00
Nekotekina 93db420f80 sys_lwmutex, sys_lwcond refactoring 2017-07-30 01:09:42 +03:00
Nekotekina a209d0d7fa Minor fix of sys_event_queue_receive 2017-07-30 01:09:42 +03:00
Nekotekina f564a72d03 SPU: minor optimization 2017-07-30 01:09:42 +03:00
Talkashie aeb01bd216 Update outdated firmware log message 2017-07-30 01:10:24 +03:00
Robbie f9e996e006 Rewrite memory pool to be thread safe. 2017-07-28 23:50:21 +03:00
Megamouse 4dbc546e7b GUI: add custom config indicator (#3108)
* game_list: add custom config indicator

* icon resize: get rid of duplicate call (great performance boost)

* icon resize: only save on slider release or clicks (performance)

refactoring shenanigans

* game_list: skip filtered out games in Refresh (performance)

* settings_dialog: remove unnecessary show() that caused glitches

* gs_frame: add disableMouse setting

* fix travis warnings
2017-07-28 23:03:48 +03:00
Talkashie 7ac96f7526 Fix missing newline, add periods, add tooltip for gs_resizeOnBoot (#3112)
* Update settings_dialog.cpp

* Update tooltips.json
2017-07-27 22:37:29 +01:00
kd-11 f613901eac gl/vk: Do not trust gcm buffer size to match internal rendering resolution
- Should fix games with strange scaling artifacts due to upscaling from lower resolutions
2017-07-27 14:33:30 +03:00
kd-11 4cd5624fa7 rsx/vk/gl: Refactoring - Also adds a vertex cache to openGL as well 2017-07-27 14:33:30 +03:00
kd-11 fc6891a0e3 ui: Restore 'Strict Mode Rendering' to GPU tab. Also add an option to disable the vertex cache
- Also, updates json tooltips for some options
2017-07-27 14:33:30 +03:00
kd-11 fb7ccbd7b4 vulkan: Workaround to avoid lockup due to double fault
- TODO: Ensure no page faults occur within a page-fault handler!
2017-07-27 14:33:30 +03:00
kd-11 17c399d4e8 spu: acquire_pc rewritten to be more precise in timing
- More accurate pauses may slightly reduce performance but makes it more viable
  to allow more threads to participate without stuttering
2017-07-27 14:33:30 +03:00
kd-11 dd19622823 vulkan: Texture cache rewritten - Use a map of vectors instead of a flat array 2017-07-27 14:33:30 +03:00
kd-11 46fa6e47fe rsx/vk: Vertex cache rewritten, add option to disable it as well
- Also enable SPU loop detection by default while were at it
2017-07-27 14:33:30 +03:00
Nekotekina 7fa42cfaad Fix sys_semaphore_wait (on timeout) 2017-07-26 22:35:45 +03:00
Nekotekina 5d8640109d Add supporters 2017-07-26 22:24:35 +03:00
Nekotekina d2116a187e Update tooltips 2017-07-26 21:27:34 +03:00
Nekotekina f58652e51c cellRec: fix vm::bptr 2017-07-26 21:09:00 +03:00
Nekotekina bf53035e3f IPC support for lv2 sync objects 2017-07-26 21:03:41 +03:00
Nekotekina 60c6bb9865 Restore hook static functions 2017-07-26 21:03:41 +03:00
Nekotekina 67b71c0f89 Fix sys_rwlock_wunlock 2017-07-26 21:03:41 +03:00
Nekotekina 5766fb1f31 Fix sys_rwlock_wlock 2017-07-26 21:03:41 +03:00
Ryan Gonzalez dbd69536ed Linux evdev joystick support (#2885)
* Linux evdev joystick support (#2678)

* Cleanup libevdev configure code

* evdev fixes

* Evdev joystick additions/fixes

* Error message tweak

* Fix evdev multiple joysticks (thanks @hcorion!)

* Change by-id to by-path in evdev
2017-07-26 21:03:06 +03:00
Zion Nimchuk 08f0047529 Refactor setsockopt for better cross-platform-ness 2017-07-26 20:27:07 +03:00
Zion Nimchuk 54a38aa927 Fix issue #2788 2017-07-26 20:27:07 +03:00
scribam 173cc13d01 Stub some cellSysutilAvc2 functions 2017-07-26 17:49:40 +03:00
scribam 1899f399b6 Mixed minor changes 2017-07-26 17:49:40 +03:00
scribam 4c5921a7a4 Stub some cellGameExec and cellResc functions 2017-07-26 17:49:40 +03:00
scribam be84dd73a9 Stub cellRec functions 2017-07-26 17:49:40 +03:00
Megamouse 9f3f07f3ae game_list: enable stepless icon sizes 2017-07-26 17:00:32 +03:00
Megamouse d260ccfc96 settings_dialog.ui: just LINUX things 2017-07-26 17:00:32 +03:00
Megamouse 1c3b9754aa settings_dialog: enable LLE List multiselection 2017-07-26 15:44:59 +03:00
Megamouse 37c26b77ee settings_dialog: make size consistent 2017-07-25 23:18:41 +01:00
Megamouse ff772dd28b game_list: fix sort and scroll 2017-07-25 17:37:29 +03:00
Zion Nimchuk 60e2928ec1 Fixes #3063 2017-07-25 03:42:04 +01:00
Zion Nimchuk f8e57147b0 Linux builds now link LLVM statically, fixed Qt libpng issue, moved to single AppImage 2017-07-25 02:41:05 +01:00
LambdaMan 1bef748dc4 Allow overlapping ranges in cellGcmMapEaIoAdress with coherency check (#3070)
According to Jarves, lle-gcm branch already does the same thing so we know the behaviour should be correct
2017-07-25 02:27:23 +03:00
RipleyTom b2fa0fdf53 Fix PARAM.SFO filename case (#3081)
For (get_list_item)
2017-07-24 23:53:20 +03:00
Megamouse ab198c0c5f gamelist: scroll fix (workaround) 2017-07-24 23:21:35 +03:00
Megamouse f577af452d Update Framelimiter Tooltip 2017-07-24 23:21:35 +03:00
Megamouse a7802e9377 Settings Overhaul 2017-07-24 23:21:35 +03:00
kd-11 3b03f9a010 vulkan: Avoid double flushing if a texture is externally synchronized 2017-07-24 16:52:42 +03:00
kd-11 cb194e06ce gl: Fix framebuffer validity checks 2017-07-24 16:52:42 +03:00
kd-11 a24780fe5e vulkan: Avoid cache miss whenever possible if WCB is enabled 2017-07-24 16:52:42 +03:00
kd-11 a7c28f5827 rsx: Fix remainder/iteration computations in BufferUtils 2017-07-24 16:52:42 +03:00
kd-11 425821863b vulkan; Add a weak vertex cache with single frame validity 2017-07-24 16:52:42 +03:00
kd-11 8db6555bdb lower mt upload threshold to something useful 2017-07-24 16:52:42 +03:00
kd-11 6557bf1b20 rsx: More aggressive thread scheduling for vertex processing
- Significantly helps vertex performance
- Not recommended as more threads will harm performance if the PC does not have the cores for it
2017-07-24 16:52:42 +03:00
Robbie 6648084c64 Add Q_EMITs and clean up a couple signals. 2017-07-23 19:17:39 +03:00
RipleyTom 5543441618 xinput config file 2017-07-23 18:30:24 +03:00
Robbie 0508e1e638 Log marking. Useful for knowing when time based things happen in log. 2017-07-23 17:27:16 +03:00
Nekotekina adf119e960 sys_rwlock_runlock fixed
Registered _sys_rwlock_trywlock
2017-07-23 16:01:52 +03:00
Nekotekina 2bc57fbee3 LLVM: Add error message 2017-07-23 11:03:38 +03:00
Nekotekina 42b06af577 Force recompiling liblv2.sprx 2017-07-23 11:03:38 +03:00
Nekotekina f9a69c449d PPU LLVM: minor bitcast avoidance 2017-07-23 11:03:38 +03:00
Nekotekina 3f9affd2ad Stub some SPU syscalls 2017-07-23 11:03:38 +03:00
Nekotekina 23701248f3 Set LLVM recompiler as default 2017-07-23 11:03:38 +03:00
Nekotekina c9abab6828 cellGame: minor refactoring 2017-07-23 11:03:38 +03:00
Robbie 5cc152b8dd Save Data Note (#3054)
* Split save_data_utility into two classes.

* Add entry notes to saves.

* Code review changes
2017-07-23 10:55:08 +03:00
Megamouse 9bd6d28514 gs_frame: fix event 2017-07-22 20:34:56 +03:00
Megamouse 58816e314c main_window: adjust toolbar size to prevent blurry icons 2017-07-22 20:34:56 +03:00
Megamouse e93fbc6900 Merge pull request #3 from RipleyTom/OpenGLFix
Fix openGL
2017-07-22 20:34:56 +03:00
Megamouse f8c2e198c5 gs_frame: fix the mysterious "second boot crash" 2017-07-22 20:34:56 +03:00
Megamouse f69e252c7a cg_disasm: fixerinno 2017-07-22 20:34:56 +03:00
Megamouse 96dfa9b526 Splitter fix 2017-07-22 20:09:54 +03:00
Robbie 2b24635ef7 Scroll fix 2017-07-22 20:09:54 +03:00
Jake fde6099769 rsx: Fix vertex decompiler to support 2 arg destination 2017-07-22 09:41:00 +03:00
Jake 7b3693bb29 sys_timer: Fix initial timer state 2017-07-22 09:41:00 +03:00
kd-11 df8fa74e2a vulkan hotfix (#3046)
* Rework vertex attribute binding for vulkan. Allows always providing a buffer view to the pipeline even if the game has the attribute disabled as long as it is consumed by the vertex shader.
2017-07-22 01:54:28 +03:00
scribam 9747ab61f9 Missing function names (HLE) and small fixes (#3038)
* Add sceNpScoreGetFriendsRanking and sceNpScoreGetFriendsRankingAsync functions

* Add sceNpSnsFbGetLongAccessToken function

* Add new functions for the sceNpTus module

* Add new functions for the cellSailRec module

* Stub cellCrossControllerInitialize

* Add sceNpAuth* functions for the sceNp2 module

* Remove unnecessary call to c_str()

* Add missing module id "CELL_SYSMODULE_ADEC_AT3MULTI"

* Add Turkish keyboard mapping constant

* Add cellOskDialogExtRegisterKeyboardEventHookCallbackEx function

* Update cellSubDisplay

* Update cotire version to 1.7.10

* Replace cellSubdisplay by cellSubDisplay

* Update cellSysutil.cpp with new functions stubbed
2017-07-21 18:41:11 +03:00
Nekotekina d7e72797a8 Version 0.0.3 2017-07-20 18:05:34 +03:00
Nekotekina 291ec1eeb2 SPU recompiler: minor optimization 2017-07-20 17:22:09 +03:00
Nekotekina b24eb621ae Use RTM instructions (skylake+) 2017-07-20 17:22:09 +03:00
Nekotekina 0fa148e65e Improve CPU feature check
Damn exit on SSSE3 failure
Check AVX for Intel processors
2017-07-20 17:22:09 +03:00
Talkashie 3f6b24d33a Correct typo
No classes or names or any of that poop are being changed here, only a text string.
2017-07-20 15:43:24 +03:00
Danila Malyutin 9fee2ebeb5 Enable optimizations on travis 2017-07-20 01:17:51 +03:00
kd-11 99828a8f15 spu: Clean up asmjit - avoid touching the shared db whenever possible
- Gets around the locking issues when fetching from the shared db
2017-07-19 23:28:33 +03:00
kd-11 2526626646 rsx: Surface cache bug fixes
- Properly handle data 'transfer' when recycling frame buffer images
- Clear 'recycled' surfaces before use
2017-07-19 23:28:33 +03:00
kd-11 582913dc31 spu: Simplify watchdog design (PC is purely HLE and occupies SPU code kernel space only, max 256K) 2017-07-19 23:28:33 +03:00
kd-11 94c1b74a17 fix build; restore asmjit reader_lock for now 2017-07-19 23:28:33 +03:00
kd-11 cbd1b28d0d spu: Add polling loop detection and clean up channel access contention code
- spus run a tight gpu-style kernel with no multitasking on the cores themselves
-- this does not map well to PC processor cores because they never sleep even when doing nothing
-- the poll detection hack tries to find a good place to insert a scheduler yield
-- RdDec is a good spot as it signifies the spu kernel is waiting on a timer
2017-07-19 23:28:33 +03:00
kd-11 05ffb50037 vk/rsx: Bug fixes and improvements
- Improvements to framebuffer usage; Avoid creating new resources every frame
- Handle null fragment program properly
- Collect vertex upload statistics

- vk: Pre-initialize 'unused' varying registers in the vertex shader in case it gets matched with a fs that consumes it
 -- Fixes a crash about fog_c not being declared

gl/dx12/vk: Handle null fragment program

- cleanup - use yield semantic instead of sleep(0) as yield is more cross-platform
 -- sleep(0) is a windows specific scheduler hint
2017-07-19 23:28:33 +03:00
kd-11 72e13ddeb2 spu: Implement concurrent instruction execution watchdog for wrch
- Delays threads by a predetermined amount to 'desync' spurs kernels.
  Largely reduces lock contention issues as well as making spurs kernels
  play nice with reservations
- Also reduces number of lost notifications (SPU_EVENT_LR)
2017-07-19 23:28:33 +03:00
kd-11 78f09d7645 asmjit: Minimal locking when reading, also only lock when actually writing to the db 2017-07-19 23:28:33 +03:00
kd-11 f69121116a rsx/vk: Optimize framebuffer lifetime management
- Significant gains due to avoiding aggressive create-delete cycles every frame
2017-07-19 23:28:33 +03:00
RipleyTom 0136215ef1 Minor sceNpBasicGetEvent Fix 2017-07-19 21:41:37 +03:00
Megamouse ab534ac55d main_window fixerinno
remove sinful toolbar sorcery
2017-07-19 21:16:13 +03:00
Megamouse 67bbd59924 debugger_frame fixerinno
delete zombie dialog
clear breakpoints properly
2017-07-19 21:16:13 +03:00
RipleyTom f0b1a587aa Implements deadzone for xinput 2017-07-19 20:35:12 +03:00
Megamouse ae8f858c56 settings_dialog: get rid of string duplication
use enum to dictate button id
2017-07-19 17:40:27 +03:00
Dangles91 7426eb285f Fixes for save_op_get_list_item
Only return data for dir and bind where requested. Some games like Akiba's Trip call this function but don't ask for any data back.
2017-07-18 15:22:49 +03:00
Nekotekina f91f2e3e6d Patch: add floating point support
Also count applied entries
2017-07-17 18:36:54 +03:00
Nekotekina e39ee10105 Patch system improved
SPU patch rewritten
PPU patch implemented
2017-07-17 16:49:46 +03:00
Nekotekina 2ef2f0f63b PPU LLVM: simplify module loading 2017-07-17 16:49:46 +03:00
Nekotekina e875c91121 Restore timeBeginPeriod 2017-07-17 16:49:46 +03:00
Dangles 6610abcd5f Minor changes for save data utility (#3005) 2017-07-16 19:10:45 +03:00
Megamouse aed9b31294 add system_info.h (#2985)
add system info to log
add SSSE3 Error message to main_window
2017-07-16 17:36:38 +03:00
Zion Nimchuk 6597eb27c7 Fix PIE being on by default 2017-07-16 16:59:46 +03:00
Megamouse 035a39a9a8 GUI: minor figgcess (#3010)
* emulator tab: minor layout adjustment

* tool bar: adjust size dynamically for hidpi

* gamelist tool bar: adjust size dynamically for hidpi

* gamelist search bar: adjust style

* move game_list.h into rpcs3qt

* hide game data by default
2017-07-15 21:22:24 +03:00
Learath2 9c547d5eef Fix bug with std::stof being locale-dependant (#3012) 2017-07-15 03:38:10 +03:00
Learath2 504fa5ffda Add version to install firmware dialog (#2958) 2017-07-14 18:34:05 +03:00
Megamouse ad66dbfd0b Add game window resize on boot (#3000) 2017-07-14 18:10:38 +03:00
Megamouse 0adb579736 rename controls to keyboard 2017-07-14 17:45:47 +03:00
Megamouse d4c83e5dd2 Settings: fix cameraBox 2017-07-14 17:45:47 +03:00
Megamouse 821a8c6e65 settings_dialog: add icon hints to color buttons 2017-07-14 17:20:41 +03:00
Megamouse ef60809219 move colorizedIcon to gui_settings 2017-07-14 17:20:41 +03:00
Megamouse a21ed06d27 Icons (blue): fix inconsistent colors 2017-07-14 17:20:41 +03:00
Megamouse 97f59405aa game_list_frame: repaint tool icons 2017-07-14 17:20:41 +03:00
Megamouse b586bd3b10 gui_settings: add gamelist tool icon color 2017-07-14 17:20:41 +03:00
Megamouse c617b17037 settings_dialog: add color picker for gamelist tool icons 2017-07-14 17:20:41 +03:00
Megamouse 73bbfcb246 main_window: repaint tool icons 2017-07-14 17:20:41 +03:00
Megamouse cfa7d04c49 settings_dialog: add color picker for main window tool icons 2017-07-14 17:20:41 +03:00
Megamouse fb191693d1 gui_settings: add tool icon color 2017-07-14 17:20:41 +03:00
Megamouse 743a19027a game_list_frame: add method colorizedIcons 2017-07-14 17:20:41 +03:00
Robbie ced539579e Murdering a wx zombie 2017-07-14 14:20:07 +03:00
Robbie 225af34ce9 For the Neko 2017-07-14 14:20:07 +03:00
Robbie eb80b7ec34 Small main_window refactoring. Fixed one of the guiconfig crashes too somehow. 2017-07-14 14:20:07 +03:00
Talkashie 3df960bb52 Fix various typos and capitalisation inconsistencies.
also Jarves please implement sysutils
2017-07-14 13:54:13 +03:00
Nekotekina 25fcde9507 Rearrange /dev_bdvd mounting logic
Prevent booting patches without /dev_bdvd
Prevent booting with foreign /dev_bdvd
2017-07-14 03:39:22 +03:00
Nekotekina d8abe75526 Improved sprx boot (for devs only) 2017-07-14 01:47:00 +03:00
Nekotekina 15fe8f1c51 Fix cmdline start 2017-07-14 01:47:00 +03:00
scribam ce7b55871b Add sceNp2* functions 2017-07-14 01:46:07 +03:00
scribam 9d8fa28dd9 Add sceNp* functions 2017-07-14 01:46:07 +03:00
scribam 3a3e9770f3 Add cellHttp* functions 2017-07-14 01:46:07 +03:00
scribam 2d037fa130 Remove "#pragma once" directive in a cpp file 2017-07-14 01:46:07 +03:00
Robbie ab595d2b95 Improve Save Manager (#2951)
* Add the save icons to the save data entry and manager.

* Simplify code slightly since I have an else now so no need for == false

* Move the icon to the top of the list because it looks better.  Remove redundant settitle.

* Fix size.  It's a bit forced but there wasn't any better way as far as I could see on stack overflow.

Also, add an error dialog if you have no entries.

Simplify the logic slightly for the selected since with the no data case handled, I can make more assumptions about the return value.

* save_data_utility: fix dialog sizes

* CELL_OK

* Retcon dialog to instead be error in log.

* Dangle92 and I had some fun. Everything should be good now.

* In dangle's code he disabled the icon, in mine I hide it if there is nothing. Having both isn't needed.  Yay merges resulting in doing stupid things.

* Fix leek

* Default size to zero for sanity. Shared pointer is fine handling null (tested with disgaea and renaming icon file)

* Simplifying. Thanks for review and advice all
2017-07-13 18:38:13 +03:00
Megamouse e8ba5876ce clean up some unused / redundant includes 2017-07-13 16:38:50 +03:00
Megamouse 2cd5f63284 game_list: enable deselection + fix entry selection 2017-07-13 16:38:50 +03:00
RipleyTom d410494a7d Fixes pkg overwriting files without the PKG_FILE_ENTRY_OVERWRITE flag 2017-07-13 15:43:13 +03:00
Robbie dcfe8e1abd fixz (#2996)
Patch crash regression in game grid
2017-07-13 04:05:29 +01:00
Nekotekina 7702eb2fa7 PPU: clean linkage info 2017-07-12 21:29:09 +03:00
Megamouse bb563b3eb7 minor menu fix 2017-07-12 21:00:13 +03:00
Nekotekina 4913cac24f Refresh game list after booting 2017-07-12 19:41:33 +03:00
Nekotekina 113b937263 Fix moving game dir 2017-07-12 19:35:46 +03:00
Nekotekina a5c431c2b7 _lv2prx mutex implemented 2017-07-12 19:11:51 +03:00
Nekotekina 5ba23ac4c4 sys_lwmutex_locker aux class 2017-07-12 19:09:53 +03:00
Nekotekina f7472d59aa GUI: fix recent entry duplication 2017-07-12 18:16:09 +03:00
Nekotekina 3cd4256b9e Fill game list from all locations 2017-07-12 18:16:09 +03:00
Nekotekina 08e9400870 Improve booting disc games
Store disc locations for disc games
Create /dev_hdd0/disc/ directory
Move disc games from /dev_hdd0/game/ to /disc/ automatically
Load disc game patches automatically
2017-07-12 16:38:19 +03:00
Nekotekina 420bfef214 Cleaning after PoorRequest 2017-07-12 14:07:38 +03:00
Nekotekina ae265f7586 GUI: Disable poorly designed limitations 2017-07-12 14:00:38 +03:00
Nekotekina ff53ff3bbf Force HLE for net-related libraries 2017-07-12 14:00:38 +03:00
Nekotekina 4a512694d9 Implemented _sys_memchr 2017-07-12 14:00:38 +03:00
Nekotekina 8202352452 Do not load sprx twice 2017-07-12 14:00:38 +03:00
Nekotekina 73a2a937c4 PPU LLVM: reuse loaded executables 2017-07-12 14:00:38 +03:00
Nekotekina a51f82c949 GUI: add supporters 2017-07-12 14:00:38 +03:00
Nekotekina 3278062c29 PPU: load only libsysmodule.sprx 2017-07-12 14:00:38 +03:00
Nekotekina 74f2be7307 PPU: free prx segments 2017-07-12 14:00:38 +03:00
Nekotekina 0ee454f44b vm: decommit by exec_addr 2017-07-12 14:00:38 +03:00
Nekotekina 9a38d63661 Store sys_spu_image value 2017-07-12 14:00:38 +03:00
Nekotekina bab537c7e2 PPU LLVM: unuse FP_SAT_OP 2017-07-12 14:00:38 +03:00
Robbie a426d32a36 Search for threads. 2017-07-12 04:56:07 +03:00
Robbie 9403948ce3 Disable remove custom config if no custom config exists. 2017-07-12 03:19:24 +03:00
Robbie 0405b860c6 Add $(EmulatorDir) to VFS dialog 2017-07-12 03:19:24 +03:00
Robbie 83df572604 Fix a couple crashes 2017-07-12 03:19:24 +03:00
Megamouse 67f1fa086d debugger_frame: transfer capture button from main_window menu
and clean up some unused actions in main_window.ui
2017-07-12 00:56:53 +01:00
Megamouse 06f6ac66fa debugger_frame: remove pause button
and move its functionality to run button
2017-07-12 00:56:53 +01:00
RipleyTom 34709eb399 Fix Stswi instruction 2017-07-10 18:42:02 +03:00
scribam 5c60a99cc4 Check if the pth is a valid directory before to look for icons. 2017-07-10 17:39:45 +03:00
Robbie cea0ff4598 Fix VFS default button (#2975) 2017-07-10 14:43:57 +01:00
Megamouse b7aed7bbde Dagimon super mega level
add stretchToDisplayArea to settingsdialog

fix color picker and toolbar background

settingsdialog adjustments

fix tooltips + .pup

fix adapter box
2017-07-10 16:15:57 +03:00
Megamouse 1a4e1919fc Dagimon mega level
ani fixes

add color options for toolbar and game icons
2017-07-10 16:15:57 +03:00
Megamouse 457c2d364f Dagimon ultra level
gui new design: hidpi fixes

settings_dialog fix glitch

welcome dialog hdpi adjustments

about dialog hdpi adjustments

about dialog fix size

pad dialog hdpi adjustments

settings_dialog: remove SetActiveTab
2017-07-10 16:15:57 +03:00
Megamouse c9e9fcd0a3 Dagimon champion level 2017-07-10 16:15:57 +03:00
Megamouse 9f8eb88a9f Dagimon rookie level
fix lib stuff

fix build

add slider amd searchbar

disable gamelist toolbar per default

Dagimon rookie level
2017-07-10 16:15:57 +03:00
raven02 2e47c42367 Add Stretch to Display Area option (#2961) 2017-07-08 16:06:11 +03:00
kd-11 41d921808b spu: Reimplement FCGT and FCMGT to handle corner cases (such as comparisons against infinites and denormals)
- Also optimize FMA/FMS/FNMS for recompiler
2017-07-08 14:52:16 +03:00
kd-11 9e7a42d057 rsx: Minor bug fixes
- vk: Do not select first available format when choosing a swapchain format
- gl/vk: Ignore rendering zero sized framebuffers/scissors
- fp: Re-enable range clamp on fp16 registers; fix fx12 clamping [-2, 2]
2017-07-08 14:52:16 +03:00
kd-11 d43e06c0ea rsx: Fix some fp bugs
rsx/fp: Properly fix RCP
- Input is always scalar, output is a vector

rsx/fp: Ignore forced unit for SIP and TEX instructions
2017-07-08 14:52:16 +03:00
kd-11 c788331e45 vk: Fix layout transitions 2017-07-08 14:52:16 +03:00
kd-11 3d935b64f2 rsx/gl/vk: Enable contents transfer when a new framebuffer is created and not cleared 2017-07-08 14:52:16 +03:00
kd-11 e9b8f94fb1 rsx/gl/vk: Enable frame skipping 2017-07-08 14:52:16 +03:00
kd-11 b95ffaf4dd rsx: Implement skip draw. Also, start working on MT vertex upload 2017-07-08 14:52:16 +03:00
kd-11 ab97a0a5a3 spu: dma tweaks 2017-07-08 14:52:16 +03:00
Megamouse e74d6446c8 msg_dialog_frame: hidpi fixes for osk_dialog 2017-07-07 01:53:42 +03:00
Megamouse cbb7753227 msg_dialog_frame: hidpi fixes for m_dialog
move spacings up
2017-07-07 01:53:42 +03:00
Zion Nimchuk 78fad1a372 Finalize AppImage build 2017-07-04 21:19:33 +01:00
RipleyTom d793f8ad78 Implements sys_fs_disk_free 2017-07-04 16:16:32 +03:00
Nekotekina dda274afb0 Fix Miku OP video
And break something else
2017-07-04 02:04:22 +03:00
Nekotekina f0d184f38b PPU LLVM: relocation support 2017-07-04 02:04:22 +03:00
Robbie fd1ca2f102 Change default selection button to select entry instead of cancel. 2017-07-03 23:56:55 +03:00
Robbie 458968658f Fix akiba with cell cancel 2017-07-03 23:56:55 +03:00
Martin Lindhe 2e9a543598 qt: relax dependency to qt 5.7 2017-07-03 17:32:14 +01:00
Robbie 190a59ce03 Basic Save Manager (#2924)
* The basic unstubbing.  Save entries will be listed and you can select a save.  If you select none, then it'll work as well.  WIP

* Filled out the trivial parts of the info dialog.

* Finish implementation and clean up.  No "maintain" dialog or context menu for now until the copy/delete functions are implemented.

* Fix crash

* Update cellSaveData.cpp
2017-07-01 21:42:09 +03:00
Zangetsu38 253e7a90b8 vk: add "add_signed" in blend op. 2017-06-30 18:40:40 +03:00
Megamouse fd4a153eef GUI fixes + log stacking (#2897)
* Add Stacking option to log contextmenu

Squashed commit:

[69f296af] cleanup

[4f4bf41f] use contextmenu instead

[e67036bc] use gui settings instead (+1 squashed commits)

Squashed commits:

[b3913dbe] fix backwards selection (+1 squashed commits)

Squashed commits:

[1e150f04] add stacking option (+3 squashed commit)

Squashed commit:

[be78da4f] fix scroll

[d3450c21] fix clearSelection

[e962ec9c] fix log color issue

* fix recent games related app crash

* gamelist improvements

Squashed commit:

[aa1f79c2] fix title names & con background

[d8381984] fix gamelist search

* finally fix show menu bug

* add rows to gamelist: resolutions, sound formats and parental level

* fix gamelist loadsettings
2017-06-30 15:41:40 +03:00
Inviuz 645f0e63ab REF 57 plus FREF fix
kept bothering me until i realized what was wrong with it
2017-06-30 14:24:00 +03:00
Nekotekina c087a9534a PPU LLVM: SSA reordering
Fetch indirect jump target
Flush registers earlier
2017-06-29 17:48:55 +03:00
Nekotekina da87bb6710 PPU LLVM: minor fix 2017-06-29 17:48:55 +03:00
Nekotekina 3c064439b3 PPU LLVM: new mptr/cptr format 2017-06-29 17:48:55 +03:00
Nekotekina 85f8a42bd2 PPU: MTOCRF optimization 2017-06-29 17:48:55 +03:00
Nekotekina ef55d6fa0c PPU LLVM: less trash, fix crash 2017-06-29 17:48:55 +03:00
Nekotekina aa34fa8baa PPU LLVM: some passes disabled 2017-06-29 17:48:55 +03:00
Nekotekina 2629f9be44 PPU: VREFP, VRSQRTEFP changed 2017-06-29 17:48:55 +03:00
Nekotekina fc2a45d6d6 Removed unnecessary code 2017-06-29 17:48:55 +03:00
kd-11 a69f19a9ab rsx/decompilers: Avoid std::endl like the plague. It adds extra processing overhead 2017-06-29 13:13:19 +03:00
kd-11 d7662e54cc rsx/fp: Do not swizzle shadow lookups 2017-06-29 13:13:19 +03:00
kd-11 459a7ba5a2 rsx: Avoid using push_back/emplace_back on empty STL containers
- Reckless management of STL containers causes significant slowdown
- Also reorders vertex compare steps to fail quickly on simpler checks
2017-06-29 13:13:19 +03:00
kd-11 9cb58a47cd gl: Avoid creating surface copies when strict mode is disabled. 2017-06-29 13:13:19 +03:00
kd-11 3651e67a25 vk: Fix mapping of output colors to render target ranges 2017-06-29 13:13:19 +03:00
kd-11 8a0f6f1cbc gl: Fix legacy ring buffer address alignment
- Should always return a base address aligned to the buffers alignment.
- Fixes renderdoc crashes when capturing
2017-06-29 13:13:19 +03:00
kd-11 9cbaacb13f cellVideoOut: Enable 59.94 Hz required for some games 2017-06-29 13:13:19 +03:00
kd-11 1887e2460f rsx: Use loose memory protection on textures since they're almost guaranteed to be wholly moved when changing. Speedup. 2017-06-29 13:13:19 +03:00
kd-11 6e578c4fde rsx: Initialize declared but unset varying variables to all ones 2017-06-29 13:13:19 +03:00
kd-11 47e5074dc5 rsx: Emulated index buffers are based on vertex 0 with no disjoint ranges
- Drop the 'first' argument as it is unused for now
2017-06-29 13:13:19 +03:00
kd-11 74d8619240 dx12: Fix error reporting 2017-06-29 13:13:19 +03:00
Nekotekina 89f676de75 PPU: preparations (no fixes) 2017-06-26 16:56:13 +03:00
Nekotekina 061c92ba1f PPU LLVM: Improve FlushRegisters 2017-06-26 16:56:13 +03:00
Nekotekina 8034196c25 ppu_syscall_code type added (for fmt) 2017-06-26 16:56:13 +03:00
Nekotekina f49a30bc1a PPU LLVM: disable unnecessary passes 2017-06-26 16:56:13 +03:00
Nekotekina 1196e9decc PPU LLVM: remove unnecessary code 2017-06-26 16:56:13 +03:00
Nekotekina cd4f290d3d PPU LLVM: v2, simplification (no allocas) 2017-06-26 16:56:13 +03:00
Nekotekina 45fae363c6 PPU LLVM: MFCR optimized 2017-06-26 16:56:13 +03:00
Nekotekina 9738ce0cf6 LLVM: fix cancellation 2017-06-26 16:56:13 +03:00
Nekotekina e5ae32e5f3 Fix #ifdef style 2017-06-26 16:56:13 +03:00
Inviuz 81ab6ab8b4 FREFS/weak imports and VREFS 4 and 6 2017-06-26 14:17:34 +03:00
Megamouse cfbfdd7b8a dialog fixes for multithreading (#2913)
* add appicon to msg_dialogs

* give every msg_dialog its own taskprogress

* weird little m*f* algorithm
2017-06-26 02:44:52 +03:00
Megamouse 8d0e7adb62 fix image load log message 2017-06-25 00:13:10 +03:00
Megamouse 96a893120d disable compat for non ps3 games 2017-06-25 00:13:10 +03:00
Megamouse a1c72de1eb add "Other" category
include all categories to list and filters
2017-06-25 00:13:10 +03:00
Megamouse d11bb71a17 Reenable Home and Audio/Video interactions 2017-06-25 00:13:10 +03:00
Nekotekina 6561ddae41 PPU LLVM: multithread compilation 2017-06-24 19:12:19 +03:00
Nekotekina ef21e2253f qt: Use #pragma once, Q_SIGNALS, Q_SLOTS 2017-06-24 14:25:11 +03:00
Nekotekina dd553331df qt: Remove emit 2017-06-24 14:25:11 +03:00
Nekotekina d86858da64 Fix tabs 2017-06-24 14:25:11 +03:00
Nekotekina fcefbf26c6 wxFuneral 2017-06-24 14:25:11 +03:00
Nekotekina 79a3b308d1 qt: Update about dlg 2017-06-24 14:25:11 +03:00
Robbie 5ecc7d5360 Fix issue with msgdialog not passing event back properly. 2017-06-24 13:59:07 +03:00
Nekotekina 321f50bf7b qt: Fix kb pad handler 2017-06-23 20:09:33 +03:00
Nekotekina d0b37777c3 Remove throw cpu_flag 2017-06-23 20:09:33 +03:00
Nekotekina aea094730b PPU LLVM: paradigm shift
For now, compile only one block at time
Use tail calls to move between blocks
Fully write PPU context (except CIA)

This fixes many compatibility problems
2017-06-23 20:09:33 +03:00
Nekotekina a29d7d3962 LLVM: implement STSWI, LSWI...
Fix DIVD, DIVDU, DIVW, DIVWU, MULHW
Removed __adde_get_ca in ADDE, SUBFE
2017-06-23 20:09:33 +03:00
Nekotekina 155f13ed54 Workaround booting NP games 2017-06-23 20:09:33 +03:00
Nekotekina 82a296f900 PPUOpcodes.h updated 2017-06-23 20:09:33 +03:00
Nekotekina 0890cc3e49 qt: Fix OutDir config 2017-06-23 20:09:33 +03:00
Nekotekina 0da9c8d20c qt: Fix logging 2017-06-23 20:09:33 +03:00
Megamouse 4ce8e9ba16 fix debugger o.O (#2903)
* fix debugger o.O

* minor simplification

* how did I not see this the first time
2017-06-23 15:08:38 +03:00
Megamouse 51ce8f6c20 add No Thread option 2017-06-23 02:16:14 +03:00
kd-11 72edf26fb8 rsx/gui: Add a strict mode toggle. Also reorganizes the graphics tab a bit
code cleanup
2017-06-22 23:36:15 +03:00
kd-11 d2b3cf22e3 vs: drop user files from shipped vs files 2017-06-22 23:36:15 +03:00
kd-11 28f3e9a65b vk: Move resource init/destroy to constructor and destructor 2017-06-22 23:36:15 +03:00
kd-11 17318112eb rsx: Do not sample as pcf shader if writing a vector result 2017-06-22 23:36:15 +03:00
kd-11 590bb7cbe4 rsx: Bug fixes
rsx: Give more info when ring buffer allocations fail
2017-06-22 23:36:15 +03:00
kd-11 798f90dac2 rsx/ui: Make a few settings configurable via the GUI 2017-06-22 23:36:15 +03:00
kd-11 b2e906f4cc rsx: Code cleanup. Fixes several dozen warnings
- Wrap unused parameters as comments to prevent C1400
- Fix sized variable conversions with explicit casts
2017-06-22 23:36:15 +03:00
kd-11 11317acdbe rsx: Handle non-zero base vertex better
- Vertex buffer contents treat the base vertex as vertex 0 so we do the same for indices

rsx: Fix vertex base indexing

rsx: Properly fix non-zero offset indexed rendering
2017-06-22 23:36:15 +03:00
kd-11 5c6cf77c57 rsx: Register NV4097_SET_COLOR_KEY_COLOR method. 2017-06-22 23:36:15 +03:00
kd-11 13825c9ef7 vk: Proper shutdown to avoid destroying resources still in use 2017-06-22 23:36:15 +03:00
kd-11 6013b0782e vk: Avoid constantly reinitializing the SH context when compiling SPIRV. Speedup 2017-06-22 23:36:15 +03:00
kd-11 5f180e0b30 vk: Prefer optimal formats when clearing buffers 2017-06-22 23:36:15 +03:00
kd-11 84ae1c5214 gl: Silence log spam 2017-06-22 23:36:15 +03:00
kd-11 86adc42739 rsx/gl/vk: Invert default stencil values
- Fixes stencil volume shadows in a few games. This is part of the surface invalidation workarounds
2017-06-22 23:36:15 +03:00
kd-11 30f276a49b gl: Properly emulate signed normalized wide integers
Another fix for signed normalized formats; single component vectors are swizzled
2017-06-22 23:36:15 +03:00
kd-11 98cf72e0fb rsx: Fix clip space computations 2017-06-22 23:36:15 +03:00
kd-11 75964c686f rsx/gl/vk: Fix some warnings and whitespace issues (LF vs CRLF) 2017-06-22 23:36:15 +03:00
kd-11 0cb6dee474 vk/gl: Do not sample currently bound render targets
- Create temporary copies for use with the draw call instead
2017-06-22 23:36:15 +03:00
kd-11 db1a90d828 rsx: Discard surface store contents once per frame (temp workaround)
Need to find the proper command issued to discard all surfaces
2017-06-22 23:36:15 +03:00
kd-11 110974af0b vk/gl: Fix sampling of shadow2D textures 2017-06-22 23:36:15 +03:00
kd-11 69d3d47901 gl: Fix clip-space -> depth conversion. Fixes remaining depth read issues
- Also set some default values for samplers in a cleaner way using their 'natural' float values
2017-06-22 23:36:15 +03:00
kd-11 b50d5107b3 rsx/vk/gl: Minor fixes 2017-06-22 23:36:15 +03:00
kd-11 6a9eef0382 rsx/gl/vk: Enable use of native PCF shadows 2017-06-22 23:36:15 +03:00
kd-11 5f66d0b996 rsx/wip: Fix depth surface reuse and clearing (fixes shadows) 2017-06-22 23:36:15 +03:00
kd-11 701728ecd7 rsx: Fix depth-as-rgba read in fp 2017-06-22 23:36:15 +03:00
kd-11 423fd4a388 rsx: Fix stencil initial values 2017-06-22 23:36:15 +03:00
Jan Beich 392d91b604 Improve portability for BSDs (#2813)
* sys_net: don't use fds_bits from a system header on FreeBSD

rpcs3/Emu/Cell/Modules/sys_net.cpp:137:14: error: no member named '__fds_bits' in
      'sys_net::fd_set'; did you mean 'fds_bits'?
                                if (src->fds_bits[i] & (1 << bit))
                                         ^~~~~~~~
                                         fds_bits
/usr/include/sys/select.h:75:18: note: expanded from macro 'fds_bits'
#define fds_bits        __fds_bits
                        ^
rpcs3/Emu/Cell/Modules/sys_net.h:114:13: note: 'fds_bits' declared here
                be_t<u32> fds_bits[32];
                          ^

* GUI: fallback to xdg-open on other Unices

rpcs3/Gui/GameViewer.cpp:289:26: error: use of undeclared identifier 'command'
        wxExecute(fmt::FromUTF8(command));
                                ^

* File: FreeBSD never supported copyfile(3) but sendfile(2) works fine

Utilities/File.cpp:114:10: fatal error: 'copyfile.h' file not found
#include <copyfile.h>
         ^~~~~~~~~~~~

* Thread: add signal handling for BSDs

Utilities/Thread.cpp:761:23: error: use of undeclared identifier 'REG_RAX'
static const decltype(REG_RAX) reg_table[] =
                      ^
Utilities/Thread.cpp:763:2: error: use of undeclared identifier 'REG_RAX'
        REG_RAX, REG_RCX, REG_RDX, REG_RBX, REG_RSP, REG_RBP, REG_RSI, REG_RDI,
        ^
Utilities/Thread.cpp:763:11: error: use of undeclared identifier 'REG_RCX'
        REG_RAX, REG_RCX, REG_RDX, REG_RBX, REG_RSP, REG_RBP, REG_RSI, REG_RDI,
                 ^
Utilities/Thread.cpp:763:20: error: use of undeclared identifier 'REG_RDX'
        REG_RAX, REG_RCX, REG_RDX, REG_RBX, REG_RSP, REG_RBP, REG_RSI, REG_RDI,
                          ^
Utilities/Thread.cpp:763:29: error: use of undeclared identifier 'REG_RBX'
        REG_RAX, REG_RCX, REG_RDX, REG_RBX, REG_RSP, REG_RBP, REG_RSI, REG_RDI,
                                   ^
Utilities/Thread.cpp:763:38: error: use of undeclared identifier 'REG_RSP'
        REG_RAX, REG_RCX, REG_RDX, REG_RBX, REG_RSP, REG_RBP, REG_RSI, REG_RDI,
                                            ^
Utilities/Thread.cpp:763:47: error: use of undeclared identifier 'REG_RBP'
        REG_RAX, REG_RCX, REG_RDX, REG_RBX, REG_RSP, REG_RBP, REG_RSI, REG_RDI,
                                                     ^
Utilities/Thread.cpp:763:56: error: use of undeclared identifier 'REG_RSI'
        REG_RAX, REG_RCX, REG_RDX, REG_RBX, REG_RSP, REG_RBP, REG_RSI, REG_RDI,
                                                              ^
Utilities/Thread.cpp:763:65: error: use of undeclared identifier 'REG_RDI'
        REG_RAX, REG_RCX, REG_RDX, REG_RBX, REG_RSP, REG_RBP, REG_RSI, REG_RDI,
                                                                       ^
Utilities/Thread.cpp:764:2: error: use of undeclared identifier 'REG_R8'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
        ^
Utilities/Thread.cpp:764:10: error: use of undeclared identifier 'REG_R9'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
                ^
Utilities/Thread.cpp:764:18: error: use of undeclared identifier 'REG_R10'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
                        ^
Utilities/Thread.cpp:764:27: error: use of undeclared identifier 'REG_R11'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
                                 ^
Utilities/Thread.cpp:764:36: error: use of undeclared identifier 'REG_R12'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
                                          ^
Utilities/Thread.cpp:764:45: error: use of undeclared identifier 'REG_R13'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
                                                   ^
Utilities/Thread.cpp:764:54: error: use of undeclared identifier 'REG_R14'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
                                                            ^
Utilities/Thread.cpp:764:63: error: use of undeclared identifier 'REG_R15'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
                                                                     ^
Utilities/Thread.cpp:764:72: error: use of undeclared identifier 'REG_RIP'
        REG_R8, REG_R9, REG_R10, REG_R11, REG_R12, REG_R13, REG_R14, REG_R15, REG_RIP
                                                                              ^
Utilities/Thread.cpp:792:26: error: no member named 'gregs' in '__mcontext'
                const u64 reg_value = *X64REG(context, reg - X64R_RAX);
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:804:21: error: no member named 'gregs' in '__mcontext'
                out_value = (u8)(*X64REG(context, reg - X64R_AL));
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:809:21: error: no member named 'gregs' in '__mcontext'
                out_value = (u8)(*X64REG(context, reg - X64R_AH) >> 8);
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:815:31: error: no member named 'gregs' in '__mcontext'
                const s8 imm_value = *(s8*)(RIP(context) + i_size - 1);
                                            ^~~~~~~~~~~~
Utilities/Thread.cpp:784:18: note: expanded from macro 'RIP'
#define RIP(c) (*X64REG((c), 16))
                 ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:827:33: error: no member named 'gregs' in '__mcontext'
                const s16 imm_value = *(s16*)(RIP(context) + i_size - 2);
                                              ^~~~~~~~~~~~
Utilities/Thread.cpp:784:18: note: expanded from macro 'RIP'
#define RIP(c) (*X64REG((c), 16))
                 ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:836:33: error: no member named 'gregs' in '__mcontext'
                const s32 imm_value = *(s32*)(RIP(context) + i_size - 4);
                                              ^~~~~~~~~~~~
Utilities/Thread.cpp:784:18: note: expanded from macro 'RIP'
#define RIP(c) (*X64REG((c), 16))
                 ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:846:20: error: no member named 'gregs' in '__mcontext'
                out_value = (u32)RCX(context);
                                 ^~~~~~~~~~~~
Utilities/Thread.cpp:779:18: note: expanded from macro 'RCX'
#define RCX(c) (*X64REG((c), 1))
                 ^~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:851:19: error: no member named 'gregs' in '__mcontext'
                const u32 _cf = EFLAGS(context) & 0x1;
                                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:851:19: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:852:19: error: no member named 'gregs' in '__mcontext'
                const u32 _zf = EFLAGS(context) & 0x40;
                                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:852:19: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:853:19: error: no member named 'gregs' in '__mcontext'
                const u32 _sf = EFLAGS(context) & 0x80;
                                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:853:19: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:854:19: error: no member named 'gregs' in '__mcontext'
                const u32 _of = EFLAGS(context) & 0x800;
                                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:854:19: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:855:19: error: no member named 'gregs' in '__mcontext'
                const u32 _pf = EFLAGS(context) & 0x4;
                                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:855:19: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:885:12: error: no member named 'gregs' in '__mcontext'
                case 1: *X64REG(context, reg - X64R_RAX) = value & 0xff | *X64REG(context, re...
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:885:62: error: no member named 'gregs' in '__mcontext'
  ...*X64REG(context, reg - X64R_RAX) = value & 0xff | *X64REG(context, reg - X64R_RAX) & 0xffffff...
                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:886:12: error: no member named 'gregs' in '__mcontext'
                case 2: *X64REG(context, reg - X64R_RAX) = value & 0xffff | *X64REG(context, ...
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:886:64: error: no member named 'gregs' in '__mcontext'
  ...reg - X64R_RAX) = value & 0xffff | *X64REG(context, reg - X64R_RAX) & 0xffff0000; return true;
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:887:12: error: no member named 'gregs' in '__mcontext'
                case 4: *X64REG(context, reg - X64R_RAX) = value & 0xffffffff; return true;
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:888:12: error: no member named 'gregs' in '__mcontext'
                case 8: *X64REG(context, reg - X64R_RAX) = value; return true;
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:913:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) |= 0x1; // set CF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:913:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:917:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) &= ~0x1; // clear CF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:917:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:922:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) |= 0x40; // set ZF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:922:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:926:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) &= ~0x40; // clear ZF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:926:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:931:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) |= 0x80; // set SF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:931:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:935:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) &= ~0x80; // clear SF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:935:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:940:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) |= 0x800; // set OF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:940:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:944:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) &= ~0x800; // clear OF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:944:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:953:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) |= 0x4; // set PF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:953:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:957:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) &= ~0x4; // clear PF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:957:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:962:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) |= 0x10; // set AF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:962:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:966:3: error: no member named 'gregs' in '__mcontext'
                EFLAGS(context) &= ~0x10; // clear AF
                ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:966:3: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:976:7: error: no member named 'gregs' in '__mcontext'
                if (EFLAGS(context) & 0x400 /* direction flag */)
                    ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:769:49: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                         ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:976:7: error: use of undeclared identifier 'REG_EFL'
Utilities/Thread.cpp:769:55: note: expanded from macro 'EFLAGS'
#define EFLAGS(context) ((context)->uc_mcontext.gregs[REG_EFL])
                                                      ^
Utilities/Thread.cpp:1020:25: error: no member named 'gregs' in '__mcontext'
        auto code = (const u8*)RIP(context);
                               ^~~~~~~~~~~~
Utilities/Thread.cpp:784:18: note: expanded from macro 'RIP'
#define RIP(c) (*X64REG((c), 16))
                 ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:1146:3: error: no member named 'gregs' in '__mcontext'
                RIP(context) += i_size;
                ^~~~~~~~~~~~
Utilities/Thread.cpp:784:18: note: expanded from macro 'RIP'
#define RIP(c) (*X64REG((c), 16))
                 ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:1368:47: error: no member named 'gregs' in '__mcontext'
        const bool is_writing = context->uc_mcontext.gregs[REG_ERR] & 0x2;
                                ~~~~~~~~~~~~~~~~~~~~ ^
Utilities/Thread.cpp:1368:53: error: use of undeclared identifier 'REG_ERR'
        const bool is_writing = context->uc_mcontext.gregs[REG_ERR] & 0x2;
                                                           ^
Utilities/Thread.cpp:1393:89: error: no member named 'gregs' in '__mcontext'
  ...%s location %p at %p.", cause, info->si_addr, RIP(context)));
                                                   ^~~~~~~~~~~~
Utilities/Thread.cpp:784:18: note: expanded from macro 'RIP'
#define RIP(c) (*X64REG((c), 16))
                 ^~~~~~~~~~~~~~~
Utilities/Thread.cpp:767:55: note: expanded from macro 'X64REG'
#define X64REG(context, reg) (&(context)->uc_mcontext.gregs[reg_table[reg]])
                               ~~~~~~~~~~~~~~~~~~~~~~ ^

* Thread: add explict casts for incomplete pthread_t on some platforms

Utilities/Thread.cpp:1467:17: error: no viable overloaded '='
        ctrl->m_thread = thread;
        ~~~~~~~~~~~~~~ ^ ~~~~~~
Utilities/Atomic.h:776:12: note: candidate function not viable: cannot convert argument of
      incomplete type 'pthread_t' (aka 'pthread *') to 'const atomic_t<unsigned long>' for 1st
      argument
        atomic_t& operator =(const atomic_t&) = delete;
                  ^
Utilities/Atomic.h:902:7: note: candidate function not viable: cannot convert argument of
      incomplete type 'pthread_t' (aka 'pthread *') to 'const type' (aka 'const unsigned long') for
      1st argument
        type operator =(const type& rhs)
             ^
Utilities/Thread.cpp:1656:3: error: no matching function for call to 'pthread_detach'
                pthread_detach(m_thread.raw());
                ^~~~~~~~~~~~~~
/usr/include/pthread.h:218:6: note: candidate function not viable: no known conversion from 'type'
      (aka 'unsigned long') to 'pthread_t' (aka 'pthread *') for 1st argument
int             pthread_detach(pthread_t);
                ^

* build: dlopen() maybe in libc

/usr/bin/ld: cannot find -ldl
c++: error: linker command failed with exit code 1 (use -v to see invocation)

* build: iconv() maybe available on some BSDs in libc

/usr/bin/ld: cannot find -liconv
c++: error: linker command failed with exit code 1 (use -v to see invocation)

* build: hidapi-hidraw is only built on Linux

/usr/bin/ld: cannot find -lhidapi-hidraw
c++: error: linker command failed with exit code 1 (use -v to see invocation)

* Thread: use getrusage() on more POSIX-like systems

* Qt: don't return NULL handle on other platforms

rpcs3/rpcs3qt/gs_frame.cpp:120:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^

* build: properly disable Vulkan on other platforms

In file included from rpcs3/rpcs3_app.cpp:40:
In file included from rpcs3/Emu/RSX/VK/VKGSRender.h:3:
rpcs3/Emu/RSX/VK/VKHelpers.h:1209:42: error: unknown type name 'device_queues'
                        std::vector<VkBool32> supportsPresent(device_queues);
                                                              ^
rpcs3/Emu/RSX/VK/VKHelpers.h:1211:4: error: expected member name or ';' after declaration specifiers
                        for (u32 index = 0; index < device_queues; index++)
                        ^
rpcs3/Emu/RSX/VK/VKHelpers.h:1221:4: error: expected member name or ';' after declaration specifiers
                        for (u32 i = 0; i < device_queues; i++)
                        ^
rpcs3/Emu/RSX/VK/VKHelpers.h:1256:4: error: expected member name or ';' after declaration specifiers
                        if (graphicsQueueNodeIndex != presentQueueNodeIndex)
                        ^
rpcs3/Emu/RSX/VK/VKHelpers.h:1261:4: error: expected member name or ';' after declaration specifiers
                        CHECK_RESULT(vkGetPhysicalDeviceSurfaceFormatsKHR(dev, surface, &formatCount, nullptr));
                        ^
[...]
/usr/bin/ld: cannot find -lvulkan
c++: error: linker command failed with exit code 1 (use -v to see invocation)

* build: make install/strip work by moving commands

* Qt: create surface for GL context if it wasn't ready

  #0  strlen (str=0x0) at /usr/src/lib/libc/string/strlen.c:100
  #1  0x000000000090f02e in std::__1::char_traits<char>::length (__s=0x0)
      at /usr/include/c++/v1/__string:215
  #2  std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::basic_string (__s=0x0, this=<optimized out>) at /usr/include/c++/v1/string:1547
  #3  gl::capabilities::initialize (this=0x2ba32a0 <gl::g_driver_caps>)
      at rpcs3/Emu/RSX/GL/GLHelpers.h:133
  #4  0x000000000090d3dd in gl::get_driver_caps () at rpcs3/Emu/RSX/GL/GLHelpers.cpp:56
  #5  0x00000000008fa511 in GLGSRender::on_init_thread (this=0x838d30018)
      at rpcs3/Emu/RSX/GL/GLGSRender.cpp:484
  #6  0x0000000000938f9e in rsx:🧵:on_task (this=0x838d30018)
      at rpcs3/Emu/RSX/RSXThread.cpp:334
  #7  0x0000000000abc329 in task_stack::task_type<named_thread::start_thread(std::__1::shared_ptr<void> const&)::$_10>::invoke() ()
  #8  0x0000000000abc114 in thread_ctrl::start(std::__1::shared_ptr<thread_ctrl> const&, task_stack)::$_7::__invoke(void*) ()
  #9  0x0000000801e60c35 in thread_start (curthread=0x843650a00)
      at /usr/src/lib/libthr/thread/thr_create.c:289
  #10 0x0000000000000000 in ?? ()

* build: don't abort without git metadata

-- Found Git: /usr/local/bin/git (found version "2.13.1")
fatal: Not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
CMake Warning at git-version.cmake:12 (message):
  git rev-list failed, unable to include version.

* build: non-parallel needs git-version.h earlier

rpcs3/rpcs3_version.cpp:3:10: fatal error: 'git-version.h' file not found
 #include "git-version.h"
          ^~~~~~~~~~~~~~~
1 error generated.
2017-06-22 21:03:41 +03:00
clienthax ac12fc8b44 HLE cellHttpUtilParseUri, Also initalise networking with windows. (#2879)
TODO: rewrite with <regex>
2017-06-22 20:27:12 +03:00
scribam fe67d51e5e Stub cellMsgDialogOpenSimulViewWarning 2017-06-22 20:08:21 +03:00
scribam 4d294e7a69 Stub sys_rsxaudio_ functions 2017-06-22 20:08:21 +03:00
scribam 45dc7fbac8 Stub some cellHttpAuth* functions 2017-06-22 20:08:21 +03:00
Jake 72590e2c93 cellGem: Fix headers 2017-06-21 19:28:05 +03:00
Jake d3df83a3ea Sprx: loading / reloc fixes 2017-06-21 19:28:05 +03:00
Jake 03268b0838 Trophy: return size for GetRequiredDiskSpace again 2017-06-21 19:28:05 +03:00
Jake f77e9f8bc1 kb/mouse: fix max in init 2017-06-21 19:28:05 +03:00
Nekotekina 9cc52c75e3 Fix hex_to_bytes 2017-06-18 23:47:37 +03:00
Ryan Gonzalez 907c800e87 Fix message shown when Qt 5 is missing (#2884) 2017-06-18 19:05:02 +01:00
Robbie 8c9b816c3d EmuGameDir --> EmuConfigDir.
Give QListWidget a parent to remove a slight memory leak.
2017-06-18 18:09:41 +01:00
Robbie 40d1882db9 Fix refresh by having the save occur on accept instead of during the destructor. 2017-06-18 18:09:41 +01:00
Zangetsu38 152ab8c13d Rename project rpcs3qt in rpcs3. 2017-06-18 00:30:51 +03:00
Zangetsu38 4c8cc7d5c2 Fix icon and exe name for VS.
Rename old rpcs3 project.
Restored original name for rpcs3_.rc to rpcs3.rc.
Delete old wxWidgets/setup.h & FindwxWidgets.cmake.
2017-06-18 00:30:51 +03:00
Ani fe8f6fb48a GUI: List SPRX modules only
Excludes .prx modules from being listed, which prevents user from
downloading random folders from the web that only have .prx modules and
break auto load.
2017-06-17 22:42:23 +03:00
Megamouse 31cedb6192 Reimplement debugger resize & disassembly (#2876)
* Reimplement debugger resize
fix interrupt

* add splitter to disassembly
fix debugger regression of last commit
fix gotoaddr pos

* travis sth sth

* add drag & drop to cg_disasm

* check for invalid address on set breakpoint
reenable debugger controls on Emu.IsReady()

* check for valid address more thoroughly
2017-06-16 21:35:58 +03:00
Megamouse aca5c73fb3 Fix inconsistent selection in gamelist/grid (#2871)
* use userrole instead of missingno

* fix consistent gamelist selection

* fix consistent gamegrid selection

* scroll to selection on refresh

* fix adapters not saved to config
2017-06-16 20:43:22 +03:00
Robbie f84f4ccd38 Include a VFS manipulation dialog (#2863)
* VFS Dialog
* Couple convenience changes. Refresh after dialog in case dev_hdd0 changes.  And, have add directory set which directory you're currently using as well.
2017-06-15 13:22:06 +03:00
Zion Nimchuk d6e4566418 Fix annoying cmake output. 2017-06-14 18:45:14 +01:00
Zion Nimchuk 8872421785 Add automated qt5 tech support in CMake 2017-06-14 18:45:14 +01:00
Zion Nimchuk 3f74bafa70 Disable LLVM option in PPU when RPCS3 is not built with it 2017-06-14 18:45:14 +01:00
Zion Nimchuk e1a78abfc9 Misc organizing and bug fixing 2017-06-14 18:45:14 +01:00
Jake 23d1ddbb8e Dx12/Vulk: Fix KernelBase.dll crash (#2870) 2017-06-13 11:36:42 +03:00
Megamouse 25823a1f66 Update Icons provided by Discord user rutantan (#2862)
* update Icons + remove rightclick on toolbar
* use better data icons
* use better disc icons
* Use better unknown icons
* final adjustment (hdd icons)
2017-06-12 20:23:12 +01:00
Zion Nimchuk 0c4cc34488 Implement strncasecmp and strrchr 2017-06-12 20:25:03 +03:00
Robbie 5c7a4b1405 Add ability to boot elves in command line. (#2859) 2017-06-12 16:47:26 +01:00
Megamouse a3d1f7b7b0 Grid Mode + Tool Bar (#2857)
* Grid layout

* Add Tiny Mode
fix scrolling
fix maxGamesPerRow calculation

* prime empty toolbar

* Add Search Bar, Icon Size and List Mode to ToolBar
Fix some minor glitches

* fix toolbar save and adjust default margin

* fix toolbar regression
minor simplification in Refresh

* Implement search and rename PopulateUI to PopulateGameList

* minor refactoring hehehehehehe

* Fix crash

* refresh speedboost optimizations

* Small refactoring of refresh to have default argument of false.

* add icons to toolbar

* fix scrambed order

* search for serial as well
2017-06-11 15:07:00 +01:00
kd-11 9aa632bcc1 rsx/vk: Fixes for ring buffer allocation and image clipping (#2850) 2017-06-10 23:32:17 +03:00
RipleyTom 0dd10d1457 Command line elf path fix (#2844) 2017-06-10 22:50:10 +03:00
Ani 5dd5323ad0 Revert "Grid Game Layout (#2854)" (#2856)
This reverts commit 3537671cb7.
2017-06-10 16:05:13 +01:00
Robbie 3537671cb7 Grid Game Layout (#2854)
* Grid layout

* Add Tiny Mode
fix scrolling
fix maxGamesPerRow calculation

* prime empty toolbar

* Add Search Bar, Icon Size and List Mode to ToolBar
Fix some minor glitches

* fix toolbar save and adjust default margin
2017-06-10 22:41:14 +08:00
flash-fire 511ff9d12c Fix visual studio build since vulkan changed debug library names in update. 2017-06-10 15:59:22 +03:00
Megamouse d2518caf2e GUI: Hotfix for Boot Recent (#2847)
* fix recent list
check for empty name
only change list enabled at aboutToShow
only AddRecentGame if Boot succeeded

* use stringpairlist instead of two stringlists
fix weird typo line

* fix travis
2017-06-08 19:59:07 +01:00
Areiser e5e95a31f1 Add qt5-base dependency for arch linux (#2841)
Add Qt5 dependency for arch linux and debian/ubuntu
2017-06-08 18:01:30 +01:00
kd-11 fab6951789 Fix dpi awareness error; Enable program debug information on msvc 2017-06-08 19:08:44 +03:00
kd-11 12da498001 vk: API bug fixes - Improve spec conformity
explicitly request anisotropic filtering and BC compression

clean up a leaking framebuffer handle reference when using debug overlay

Wait for device instead of queue to ensure no conflict during renderer shutdown

Clip scissor regions when doing surface clears
2017-06-08 19:08:44 +03:00
kd-11 2556484c67 fixes to project files and build scripts
cleanup
2017-06-08 19:08:44 +03:00
kd-11 860b76452f vulkan bringup on linux
cleanup: drop unused stuff
2017-06-08 19:08:44 +03:00
Megamouse 6cb7a17814 GUI: Add recent games menu (#2843)
* add recent games menu

* remove invalid paths from list

* push InvalidRecentAction into BootRecentAction

* disable actions on boot
disable clear recent on freeze recent

* fix gamelist games not booting on recent list

* minor fix for list disable error
2017-06-08 13:52:18 +01:00
Megamouse 0f433ea882 use global config as default for game config again (#2845)
this was missing as a result to the previous fix of the game configs
2017-06-07 20:12:19 +01:00
Megamouse affda37d04 fix dpi scaling (for all ?) 2017-06-07 00:01:45 +01:00
Megamouse bda945218d add dpi scaling for windows
fix welcome screen for all platforms (looks slightly different)
2017-06-07 00:01:45 +01:00
Megamouse 01ea3def54 maybe fix about dialog encoding 2017-06-07 00:01:45 +01:00
Megamouse 6ab69012e3 fix game config saving to global if empty 2017-06-07 00:01:45 +01:00
Megamouse 35c80ab9fc fix about dialog icon 2017-06-07 00:01:45 +01:00
Megamouse 8183449fb1 fix shortcuts 2017-06-07 00:01:45 +01:00
Talkashie 761b74ec59 Update game_list_frame.cpp (#2835)
Fix two typos and make message less vague
2017-06-05 18:16:05 +01:00
Robbie 6cfb184b1e RPCS3 QT (#2645)
* Fix windows build.  I made sure to do everything with a win32 prefix to not effect linux build.

* Make the window resizable instead of fixed in the corner.

* Ignore moc files and things in the debug/release folder.  I might also ignore rpcs3qt.vcxproj and its filters as they're autogenerated by importing the qt project file.  But, this helps clean out clutter for now.

* Add cmake.  This doesn't interact with the rest of rpcs3 nor the main cmake file.  That's the next thing I'm doing. I'll probably need to modify them so it'll take me time to figure out. But, this will build rpcs3qt on linux and build as is with using qt.

* The build works. I'd like to thank my friends, Google and Stackoverflow.

Setted up by importing rpcs3Qt project using Qt's visual studio plugin.

* Cleanup.  Remove all the stuff in the rpcs3qt folder as its incorporated elsewhere. Remove the rpcs3qt project file as its now built into the solution and cmake doesn't care about pro files.

* Update readme to reflect getting Qt.

* Remove wxwidgets as submodule and add zlib instead. Wxwidgets was our old way of having zlib. I also added build dependencies to rpcs3qt so you should no longer get link errors on the first clean rebuild.

* Add rpcs3_version, few GUI tweaks

* Set defaultSize to 70% of screen size

* Add the view menu (#3)

* Added the view menu with the corresponding elements. Now, the debugger/log are hidden by default. The view menu has a checkbox which you click to show/hide the dock widgets.

* Make log visible by default

* Improve UI by making it into a checkbox that's easier to use.

* fix qt build for vs2017 (seems to work fine in 2015 with plugin but needs testing by other users)

* updated readme for qt

* update appveyor for qt
- cleaned formatting for the post build command

* fix build (#6)

* fix build legit this time i promise

* [Ready] Gamepadsettings (#4)

* WIP Gamepadsettings
pushbutton Eventhandling missing

* GamepadSettings should work except for cfg Init
Some KeyInputs are missing

* Update padsettingsdialog.h

* Update padsettingsdialog.cpp (#5)

* Update padsettingsdialog.cpp

removed silly tabs

* Update padsettingsdialog.cpp

* GetKeyCode simplified

* rename pad settings to keyboard settings o.O

* rename keyboard setting to input settings

* Remvoed the QT_UI defines.

* Readded new line at end of file. Replaced define in padsettings with constant.

* GUI fixes (Settings)

* Stub the logger UI. Nothing special besides a simple stub.

* Unstub the log. I haven't tested TTY but it should work.

Only thing to do, but this is in general, is add persistent settings.

* Minor refactoring to simplify code.

* Fix image loading. I'm 90% sure it works because it loads the path as expected and that's the same format I used in my gamelist implementation for the images.

* Made game lists much more functional than it was.

* mainwindow

* gamelist

* Please forgive me for I have lambdaed.

Added the ability to toggle showing columns via a context menu.

* Fix GameList further

* sort by name on init fixed

* Created the baseline refactoring. I'm going to start working on the callbacks now.  May need to implement other classes in the process. Fun stuff, I know.

* adds InstallPkg (tested) and InstallPup (should work but makes unknown shenanigans) implementation
adds RefreshGameList
obliterates 10sec Refresh

* messages

* Rpcs3 gs frame (#16)

* Messing with project settings try to get trails of cold steel to boot.bluh

Definitely one change is needed in linker settings for RPCS3 to not crash immediately.

Can't even see how horribly botched my implementation of GSFrame is because we aren't booting lol. Something is gone awry with elf.

* remove random ! not that it matters much right now

* minor additions

* "Working" with debug mode though you have to ignore an assert reached from Qt. Qt is upset that the rsx thread is calling stuff on the UI thread despite not owning it.  However, I can't do a thing to change that atm. (The fix would be to do what the TODO says in System.cpp-- making gsframe and stuff get initialized via system call)

Crashes due to needing pad callback to be done.

* With this build in debug mode, Trails of Cold steel will get FPS. (caveat. You have to ignore when Qt throws a debug assert lol)

* Fix release mode.  Fix the Qt debug assert by using ancient occault rituals.  I want to be able to remove the blocking connects but it won't work right now without it.  It isn't perfect but it's good enough for now IMO.

* Add enters to the end of files.

* Removing target and setting source of events to be the application instead of the main window. The main window isn't the game window, and I don't really know what widget will be targetted for the game event.  Works, though, it's admittedly probably not optimal by ANY means.

* Fix comment.

* Fix libpng wit zlib.

* Move Qt GUI into RPCS3Qt. (#17)

Restore wx GUI.

* fix install-progressdialogs randomly not showing

* install-progressdialog cosmetics

* add stylesheet file loading

* apply request

* Add stylesheet to git ignore.

* XInput..

* Joystick...

* Rpcs3 qt small fixes (#20)

* Small fixes.  Have emulator stop when x button is pressed on game window.  Have emulator/application stop when the main window is closed.

* If I forget another new line ending for a file.............................................

* Add CgDisasm (#21)

* fix install-progressdialogs randomly not showing

* install-progressdialog cosmetics

* add stylesheet file loading

* apply request

* add CgDisasm
add code to disable contextmenu options
fix gamelist issue

* missing proj changes

* Add ability to open stylesheets from menu.

* Mega searcher (#23)

* add MemoryStringSearcher
set minimum Sizes for mainwindow and CgDisasm

* minor fixes

* Since the system.cpp callbacks for emulator state were unused, I removed them.  Then, I replaced them with callbacks for the Gui.

* added stylesheet options
setfocus on settings fixed
newline added

* added signals and slots for EmuRun and EmuStop

* update ui

update ui now works
added callback onReady
added EnableMenues
added ps3 commands

* added restart logic to menu

* newline

* event header removed

* Added graphic settings class. (#26)

* Added graphic settings class. First thing is to have the dock widgets and window size/location be stateful.  Minor bug with debugger frame changing size on hide/show on default setup on second load. But, otherwise, fine. Also, the GUI doesn't update to accomodate the statefulness of the widgets.  But, that'll come in time as I update this class.

* Add view debugger, logger, gamelist to settings and synchronize them.

* Separate initializing actions from connects

* Add invisible fullscreen cursor and double click event.

* Add the UI log settings.

* Add MemoryViewer (#30)

* Add Memoryviewer
Image Button crashes/not fully implemented
focus on some button annoying

minor changes for question dialogs

* GuiSettings Refactoring (#31)

* Add settings for columns shown and which one is saved

* I accidentally refactored the settings class.  Added ability to reset to default GUI.  Added statefulness to column widths.

* add gui tab

* Fix logging at startup.

* Preset settings.I think I ironed out MOST of the glitches. Will work on the rest of it soon. Should be a lot simpler as I won't have to use the so-called meta settings. Also, renamed all settings methods to CapitalCase.

* Removed dock widget controls.

* Added style sheets. Removed the option from the menu.

* Rewrite to use folder design. Much simpler! Yay! Simpler. Better, right?

* It's remarkable how tricky this is.

* Added convenience button to open up the settings folder in explorer

* Add newlines at end of file

* simplified logic. Fixed a bug.. hopefully not more bugs

* Fix the undocumented feature

* Make the dialog big enough to have entire text on title shown. If talkashie changes the font to size 1203482 I don't care lol

* Make warning messagebox instead of changing the title of the dialog.

* marking...

* Hcorion suggested changes.

* [WIP] autopause (#32)

* autopause added
needs fixing
headers do not show text

* fix compile stuff

* Add MsgDialog + edge widgets (#33)

* Add MsgDialog
needs magic

* add "Debugger" Buttons to menubar

* Adapt ds4 changes. I'm not sure if they work as I don't have a compatible controller.  But, at the same time, it's kind of silly all I had to do was remove stdguiafx to get compilation.

* [Ready] Add KernelExplorer (#36)

* KernelExplorer added

* Fix build.  Connect mainwindow to show explorer.

* qstr formatting added
hid header, fixed button size

* Taskbar Progress for install PUP/PKG (#37)

* Add Taskbar Progress for both PKG and PUP installer

* fix missing ifdefs for windows

* add mainwindow icon + thumbnail toolbar

* add game specific icons to the GSFrame

* fix icon crash

* fix appIcon's aspect ratio in SetAppIconFromPath

* Fix black borders in RGB32 icons

* rename thumbar related buttons

* EmuSettings (#35)

* Core tab done minus doing the library list.

* Graphics tab.

* Audio tab

* Input tab

* Added the other tabs

* LLE part one-- load existing libraries sorted. (I'd finish it but I'm going to look at a PR by mega)

* add search and add other libraries that aren't checked.

* Finish adding lle selecting things.

* marking my territory (#38)

fixed settingsdialog glitch and width
added groupbox to gui buttons
removed parents from layouts

* add debuggerframe + RSXDebugger (#34)

* Add Debuggerframe

* add RSXDebugger

* add RSXDebugger fo real

* RSXDebugger improved
minor adjustments

* add utf8 conversions like neko told me to
hopefully i did not utf8-ise too many things xD

* fix some variables

* maybe fix image buffers in RSXDebugger

* fixed image view (pretty sure)

* fixed image buffer (hopefully)

*  QT Opengl frame (#41)

* fix RSX Debugger headers (#40)

* fix some debugger layout issues
fix RSX Debugger headers + some comments

* add kd-11's SPU options
fix D3D12 showing on non-compatible systems
tidy up coretab

* improve D3D12 behaviour in graphicstab:
adapter selection and D3D12 render won't show on non-compatible systems
add monospace font to cgDisasm

* enable update only on visibility

* Rpcs3 qt llvm build (#42)

* LLVM pushed so mega can test

* probably is what is needed with Release LLVM

* should probably have RPCS3-Qt be using release-llvm

* include zlib the same way.

* don't talk to me about how I made this happen.

* I applied the magical treatment to debug mode too.  Though, it's entirely probably that doing it once in LLVM-release mode made this entirely redundant

* hack

* progress bar for LLVM spawns but doesn't close yet.

* fix msgDialog (#43)

fix oskDialog

* Minor bug fixzz

* fix osk and msgdialog for real (#44)

* fix msgDialog
fix oskDialog

* fix OskDialog part 2
fix MsgDialog part 2

* This bug is evil, and it should be ashamed of itself.

* Refactor YAML.  Commented out gui options that aren't added to config yet (add em back later when we merge that in)

* Fix pad stuff.

* add SaveDataUtility (#45)

* add SaveDataUtility

* fix slots

* fix slots again
fix lists not showing stuff
fix dialogs not showing
add colClicked
refactor stuff and polish some layouts

* add SaveDataDialog.h and SaveDataDialog.cpp

* tidy up mainwindow

* add callback

* fix RegisterEditor (#47)

* fix RegisterEditor

* fix other dialogs' immortality (gasp...vampires)

* remove debug leftovers

* fix InstructionEditor (#46)

* fix InstructionEditor

* fix typo

* Fix MouseClickEvents in RSXDebugger (#50)

* Fix MouseClickEvents in RSXDebugger
Fix focus on MemoryViewer and RSXDebugger
Adjust PadButtonWidth

* fix another comment

* fix debuggerframe events (#49)

* Fix pad settings bro (#48)

* Fix pad settings bro

* fix comment

* Icons and Menu-Additions (#39)

* Add Icons and iconlogic to cornerWidget and actions

* add cornerWidget toggle
fix dockwidget action state on start
remove DoSettings

* fix game removal bug
remove tableitem focus rectangle
therefore add TableItemDelegate.h

* remove grid and focus rectangle from autopausedialog

* add fullscreen checkbox to misctab
minor padsettings layout improvements

* Add show category submenu to view menu
Add gamelist filter accordingly
fix minor bug where play icon was displayed despite pause label
add boolean b_fullscreen to mainwindow for later use in GSFrame

* fix headers in autopausesettings
fix remove bug in autopausesettings
add delete keypressevent in autopausesettings
fix missing tr() and minor refactoring in gamelist

* add default Icons for play/pause/stop/restart

* Fix fullscreen start.  Some stuff was wrong with settings, just trust me.

* remove fullscreen leftovers and fix merge

* SPU stuff. (There was also a weird thing with config.h in GLGSFrame.h with an include that I removed to fix build)

* please neko's lambda fetishes (#53)

* please neko's lambda fetish in mainwindow

* please neko's lambda fetish in gamelistframe

* please neko's lambda fetish in logframe

* fix neko's lambda fetish in debuggerframe

* pleasefixdofetishsomething in Autopausesettingsdialog

* fix sth sth lambda in cg disasm

* lambda stuff in instructioneditor

* lambda kernelexplorer

* lambda-ise memoryviewer

* lambda rsxdebugger

* lambda savedatautil
this could be done even more, but the functions are not implemented

* Rpcs3 qt fixes -- shadow taskbar bug (#52)

* SShadow's bug of taskbar progress staying fixed on cancelling pkg install.

* other taskbar

* i'm still a baka

* Fix a warning

* qtQt refactoring (#54)

* fix neko's snake fetish

* File names should match headers. Are these the names I want?  Not necessarily.  But, this is much less confusing.

* i thought I committed everything with stage all.........................

* remove unused utilities

* The most important commit of them all.

* Disable legacy opengl buffers when not using opengl.

* fix code review comment

* Quick crash patch. Neko removed autopause. SO, I remove it too from emusettings/misc tab

* Merge lovely things from master (#55)

* Configuration simplified

* untrivial parts of the merge

* no need for these options anymore

* Minor change to fix column widths at startup (not sure why it doesn't work already, but adding the true makes it work so......... whatever)

* here ya go

* FIx hitting okay in settings causing graphics to messup (#57)

* fixes + msgdialog taskbarprogress (#56)

* fix ok button in taskbar
add taskicon progressbar for msgdialog
add tablewidgetitem to rsxdebugger
fix comments in save_data_utility.cpp

* fix d3d adapter default

* fix taskicon progressbar not being destroyed properly

* add last_path to filedialogs

* fix msgdialog crash on ok (#58)

* fix thread stopping in debbugerFrame (#59)

* Move Emu.init to be first.  This will fix the qt stuff seeming to ignore the virtual filesystem in the config. (VFS to be made soon maybe) (#60)

* Fix full screen opening on double RIGHT click.

* fix other instances of double click ...

* Fix locaiton of gui config. (#61)

* fix d3d bug (#62)

* fix d3d bug

* small utf8 addition

* Fix cmake for qt (#64)

* Initial CMake fix

* Fix compilation with GCC

* Get rid of awful hack

* Update cotire with qt support

* Maybe fix travis

* Emergency Hack Relief Program Activated

* Fix travis build (#65)

* make about dialog great again (#67)

and add previous additions

* Fix library sort / smart gamelist context menu (#63)

* fix library sort

* add Title to custom game config dialog

* disable options on gamelist context menu

* use namespace for category Strings

* introduce sstr

* fix some tr nonsense

* Rpcs3qt Appveyor (#68)

Fix appyveyor build!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

* possible fix for gamelist icons (#69)

add warning for appicon

* Fix clang build (#66)

Hcorion, the build savior.

* Rpcs3 qt resources (#70)

* Resource files attempt 1

* Autorcc should probably be on?

* forgot the most important file lol

* Forgot an instance of the icon in the code...

* Patch fix for clang build.

* vulkan/d3d12 combobox merge (#71)

* add vulkan adapterbox and merge with d3d12 box

* fix adapter text on other renderer

* gather render strings

* attempt fix on gamelist row height

* adjust adapter behaviour to new guideline

* Compiler of Peace.

* High critical hit rate.

* Mugi eating strawberries is savage.

* Apply KD-11 Hotfix (#73)

* Most of Ani Adjusts (#72)

* Most of the adjustments are made here.

* fix gamelist rowheight

* fix msg dialog layout and disable_cancel

* cleanup

* fix disable cancle again

* fix debuggerframe buttons and doubleclick

* Add a fun little bonus feature :) (#74)

* category filters simplyfied (#75)

* Cleaning up cmake a bit.

* fixezzzzzz (#76)

* upgrade Info Boxes

* upgrade file explorer

* refactor GetSettings and SetSettings

* second refactoring

* cleanup

* travis is a grammar nazi

* second travis shenanigans

* third travis weirdo thingy

* travis 4 mega fun

* travis 5 default to def

* finish refactoring for settings
fix gamelist headers

* hotfix msgdialog and infobox (#77)

* msgdialog fix 1

* fix zombie infobox

* Rpcs3 Qt Welcome Page (#78)

* Add a welcome dialog.

* Add enter to end of file

* i'm an idiot

* last mistake i hope

* sponsored via --> funded by

* RPCS3 does not condone piracy.

* Mega Adjusts

* Ani Adjustments and a few refactorings

* Yay

* Add Gamelist Icon Sizes (#79)

* Reverting Mega's suggestion.  If people can use alt-f4 to get around this dialog, they can probably use an emulator too.

* Fix firmware file choice dialog in QT GUI (#80)

* ani adjusts 2 + minor icon size simplifications (#81)

FPS Additions

* Update Travis to Qt 5.9 (#82)
2017-06-04 17:48:33 +03:00
Jake 195f24507b cellPad: Clear info structs before setting 2017-06-02 19:40:22 +03:00
Jake 56b21fd411 cellPadPeriphGetData impl 2017-06-02 19:40:22 +03:00
kd-11 d5df4a4616 rsx/fp/gl: Minor fixes (#2823)
* rsx/fp: expand glsl unpack instructions to vec4

* rsx/fp: Ignore BRK outside LOOP/REP

* fix string compare typo
2017-06-01 15:53:25 +03:00
kd-11 e6d55a6692 ui/vk: Reimplement vulkan GS selection; minor fixes for broken contexts on unsupported devices 2017-05-26 18:26:10 +03:00
John-Gee 63cadab042 Need to link to libatomic for objects with sizes that aren't supported natively by the CPU 2017-05-26 13:11:41 +03:00
xperia64 05b9575981 Add option to select Vulkan device (#2814) 2017-05-25 18:46:28 +03:00
kd-11 e82163bfb9 cmake: Link libllvm-4.0.so dynamically to avoid conflict with system libs (#2811)
* cmake: Link libllvm dynamically to avoid conflict with other system libs
2017-05-24 18:33:16 +03:00
Zion Nimchuk 83ffd7c9fb Add installation for linux 2017-05-22 20:53:59 +03:00
Zion Nimchuk 7f2e87580f Update .xpm based on new .ico 2017-05-22 20:53:59 +03:00
kd-11 18df292f90 rsx/fp: Better handling of flow control ops 2017-05-22 14:28:33 +03:00
kd-11 ccb23d70a5 vk: Improve flush queue sync between cell threads 2017-05-22 14:28:33 +03:00
kd-11 786bcb0d1b rsx: bugfix - avoid a divide by zero 2017-05-22 14:28:33 +03:00
kd-11 0efc3c1c6c rsx: Relax restriction on vertex register data fetch 2017-05-22 14:28:33 +03:00
kd-11 d4ddc40988 rsx: Add support for repeated data streams (broken attrib divisor?) 2017-05-22 14:28:33 +03:00
kd-11 e8b4d332eb rsx: Use faster upload path when conditions allow
Fix aligned memory access (SSE)

rsx: BufferUtils; always use optimized paths
2017-05-22 14:28:33 +03:00
Jake 674acd8431 ds4: use controller calibration values for accel/gyro 2017-05-21 18:07:43 +03:00
Jake 80fc471067 Ignore LLE savedata modules 2017-05-21 18:07:43 +03:00
Jake 4bcafb3e75 Fix C00 SPRX loading 2017-05-21 18:07:43 +03:00
Jake 7ccc5d3910 Set TrophyRequiredSize to 0 2017-05-21 18:07:43 +03:00
Nekotekina f010b5b235 Configuration simplified 2017-05-20 16:01:48 +03:00
Nekotekina d5107aab47 cfmt improved 2017-05-19 01:13:23 +03:00
Nekotekina bd8dfac713 ALSA: decrease buffer 2017-05-19 01:13:23 +03:00
Nekotekina b613fb70f1 Fix MFC_WrTagUpdate 2017-05-19 01:13:23 +03:00
Zangetsu38 43b06c2a9c Fix compilation asmjit for VS. (#2791) 2017-05-18 19:31:39 +03:00
Zion c133db6721 Update asmjit submodule (Testers wanted!) (#2782)
* Update asmjit submodule

* Add myself as a contributor 	😉
2017-05-18 14:22:45 +03:00
raven02 f54628fcfd Stub cellGcmSetWaitFlipUnsafe() (#2786) 2017-05-16 07:33:37 +08:00
Nekotekina 7ac64a6725 CELL_OK cleanup 2017-05-15 14:58:32 +03:00
Nekotekina 81c8d3f27a Added CELL_CANCEL 2017-05-15 14:37:05 +03:00
Nekotekina 88fef183a3 config.yml: Log section optimized 2017-05-15 14:37:05 +03:00
scribam 299f627321 Stub cell (#2785)
* Update cellGcmSys

* Update cellStorage

* Update cellSubdisplay

* Update sceNpTrophy
- Use error_code as return type
- Add few checks

* Update cellKey2char

* Update cellKb:
- Use error_code as return type
- Replace UNIMPLEMENTED_FUNC by .todo

* Update cellNetCtl

* Update cellSpudll

* Update cellSysutilAp

* Update cellUserInfo

* Stub sys_mempool_allocate_block (bad idea)
2017-05-15 14:30:14 +03:00
kd-11 c26607de08 gl: Strict export of diff_color and spec_color for mesa compatibility (#2779)
* gl: Strict export of diff_color and spec_color for mesa compatibility

* gl: Relax the front_diff/spec rules a little
2017-05-14 11:50:24 +03:00
shameful e93c4c42b6 fix for shader fog mode exponential2_abs (#2781)
* Update VKFragmentProgram.cpp

added missing exponent parameter

* fixed misplaced exponent in VKFragmentProgram.cpp

parameter that belonged to pow() was being passed to exp() instead, causing the shader compilation to fail

* fix for opengl fog_mode exponential2

same fix as the vulkan version

* directx fog_mode exponential2 fix

misplaced parameter

* directx fog_mode exponential2_abs fix

* vulkan fog_mode exponential2_abs fix

* opengl fog_mode exponential2 fix
2017-05-14 12:56:24 +08:00
kd-11 d24ba0da90 gl: Workaround to detect opengl driver caps for intel 2017-05-12 20:10:03 +03:00
kd-11 7460bdfb1b gl: Use strict vertex output declaration for better compatibility with mesa 2017-05-12 20:10:03 +03:00
kd-11 c5975d5f66 rsx: Vertex program output fixes 2017-05-12 20:10:03 +03:00
Nekotekina 8df95dbe39 Stub sys_fs syscalls 2017-05-11 19:05:41 +03:00
Nekotekina 75017345be cellFsGetPath implemented 2017-05-11 19:05:41 +03:00
Nekotekina 08c955d177 Remove AutoPause.cpp 2017-05-11 19:05:41 +03:00
Nekotekina 8209e6c1e3 ppu_initialize_syscalls draft 2017-05-11 19:05:41 +03:00
Nekotekina 3a5efe9809 sys_ppu_thread_register_atexit implemented 2017-05-11 19:05:41 +03:00
Nekotekina d4146e4e68 Disable /host_root/ by default 2017-05-11 19:05:41 +03:00
Nekotekina 5ffb4766b0 sys_ppu_thread_once rewritten
sys_initialize_tls moved
sys_interrupt_thread_disestablish moved
2017-05-11 19:05:41 +03:00
kd-11 450d45354c rsx: Enable GPU texture scaling by default 2017-05-10 21:50:14 +03:00
kd-11 df7b466656 spu: Speed hacks - Do not starve PPU threads
optionally hint to the OS scheduler to give less attention to SPUs

ui: Add speed 'hacks' as configurable options
2017-05-10 21:50:14 +03:00
kd-11 4b5a30f53d vulkan: Do not bother with cache checks if buffer sync is not managed
introduce pause intrin
2017-05-10 21:50:14 +03:00
kd-11 0ec88bb65d vulkan: Mark of critical code from allowing cb split in exception handler
vk: Shader loads are sacred
2017-05-10 21:50:14 +03:00
kd-11 3b27b3c182 vk: Buffer sync timing tweaks
vulkan: more sync timing fixes
2017-05-10 21:50:14 +03:00
kd-11 e1a75deb25 rsx: Refactor image scaling code; Scale downloaded surfaces with vulkan 2017-05-10 21:50:14 +03:00
kd-11 c7db322873 vulkan: Use non-blocking list of lists (WIP)
whitespace fix only

facepalm
2017-05-10 21:50:14 +03:00
kd-11 b78c6f7127 clear up a spec misunderstanding 2017-05-10 21:50:14 +03:00
kd-11 2b19031206 vulkan: Use a parallel cb for texture cache ops; bug fixes
vk: More surface fixes and debug stuff

vk: Crude thread sync implementation to prevent cb desync crashes due to resource usage

fix build

more fixes

vulkan: Do not flush command queue if address cannot be flushed

vk: More fixes for accuracy. Needs optimizations

vk: Batch all flush-to-buffer operations in the non-critical path
- More work is needed to make queue submission asynchronous
2017-05-10 21:50:14 +03:00
kd-11 fd754a4ddc vulkan: Start work on buffer synchronization
addendum - fix build

vulkan: separate cached section lifetime management

bug fixes
2017-05-10 21:50:14 +03:00
Nekotekina b1e8eefad0 cellFs fixes
cellFsAllocateFileAreaWithoutZeroFill implemented
2017-05-07 15:24:07 +03:00
Nekotekina e8d76ede14 sys_fs_fsync fix 2017-05-05 00:11:57 +03:00
Nekotekina e2478902c9 Update supporters 2017-05-05 00:11:57 +03:00
Jake b9ebf595e6 XInput vibrate support 2017-05-04 23:35:09 +03:00
Jake 6bb32e4e80 DS4 Support. Supports sixaxis and vibrate 2017-05-04 23:35:09 +03:00
Jake 6d7419be0e Add hidapi submodule, build updates / readme 2017-05-04 23:35:09 +03:00
scribam e33c01131e Update sceNpSns (#2732) 2017-05-01 21:35:49 +03:00
Nekotekina 2845617053 Hide cursor in GSFrame
Implements #2054
2017-04-30 21:10:27 +03:00
Nekotekina 95c6278863 Organize cellDaisy 2017-04-30 21:10:27 +03:00
Nekotekina eba44261c7 Preserve original function names 2017-04-30 21:10:27 +03:00
Nekotekina b349100d9d Stack overflow detection
Added a gap between stack allocations
PPU callstack improved
2017-04-30 21:10:27 +03:00
Wilfried Rabouin 7ab210432e PPU interpreter (precise): SAT bit implemented (#2736) 2017-04-30 21:05:50 +03:00
Pierre Vezien f40dcbfa30 Stub sceNp functions to return an offline status until further developement is done. 2017-04-30 18:21:34 +03:00
scribam 84ba7c3e73 Stub cellFiber module (#2704) 2017-04-29 02:44:42 +03:00
Jake ff366f4e4e Partially implement cellPadGetDataExtra 2017-04-29 01:26:03 +03:00
Jake 5f470b316a Fix cellPadGetData button reports 2017-04-29 01:26:03 +03:00
Jake c8252d2b28 Fix cellGameContentErrorDialog freeze 2017-04-29 01:26:03 +03:00
Jake ac58953276 Fix typo/spacing from userclip 2017-04-29 01:26:03 +03:00
Jake f064a26382 Settings Fix 2017-04-29 01:26:03 +03:00
Jake 16d7eb4f55 [Crypto] Edat cleanup 2017-04-29 01:26:03 +03:00
Nekotekina 5f26c2fc8f REG_FUNC+ macro improved
This includes REG_FNID, REG_VAR, REG_VNID
Allows to specify alternative function name
2017-04-26 23:38:24 +03:00
Nekotekina f6383f6e06 cellAudioAdd2chData fixed
cellAudioAdd6chData fixed
Speculatively.
2017-04-26 23:05:49 +03:00
Nekotekina 8055d83da2 sys_fs_fget_block_size improved 2017-04-26 20:31:39 +03:00
Nekotekina b0a83cdb56 sys_fs_lsn_get_cda_size stub 2017-04-26 20:26:29 +03:00
Nekotekina 3f5951c9f8 sys_fs_fcntl update 2017-04-26 16:10:26 +03:00
Nekotekina c3c442ccb1 cellFsGetFreeSize implemented 2017-04-26 02:27:35 +03:00
Nekotekina a95a63a58a sys_fs_lsn_lock implemented 2017-04-26 02:27:35 +03:00
Nekotekina 1bbb76fa20 sys_fs_test implemented 2017-04-26 02:27:35 +03:00
Nekotekina f42b830ce9 fs::statfs implemented 2017-04-26 02:27:35 +03:00
Nekotekina 256dfc5729 sys_fs_fsync implemented
sys_fs_fdatasync implemented as equal function
2017-04-26 02:27:34 +03:00
Nekotekina 19fd8c109e cellFsSdataOpenByFd fixed 2017-04-26 02:27:34 +03:00
Nekotekina 634f353ed4 Fix module initialization 2017-04-26 02:27:34 +03:00
Nekotekina d7c3d1ce12 sys_fs: 0xc0000006 stub 2017-04-26 02:27:34 +03:00
Nekotekina a626bbf635 PPU Debug fix 2017-04-26 02:27:34 +03:00
Nekotekina 0f95736c36 cellFsGetDirectoryEntries rewritten 2017-04-26 02:27:34 +03:00
Nekotekina d05b6135c6 Use libfs.sprx (LLE) 2017-04-26 02:27:34 +03:00
Jake 60ce85f840 [Render] Userclip for d12/vk/ogl (#2719) 2017-04-25 18:32:39 +08:00
scribam 8b2473251d Stub new modules
- cellGamePs1Emu
- cellSysconfPs1emu
- sysBdMediaId (which included sys_get_bd_media_id)
- sysConsoleId (which included sys_get_console_id)
- sysPs2Disc
2017-04-23 16:02:57 +03:00
raven02 24fc1027ea vk: add source alpha saturate blend factor (#2724) 2017-04-22 22:35:36 +08:00
Nekotekina 463e18f893 Disable SPUJIT.log (opt-in) 2017-04-20 00:52:31 +03:00
Nekotekina f7cb1aea64 Fix Lib Loading 2017-04-20 00:52:11 +03:00
Nekotekina 9b43203111 offset32(): pointer-to-member arithmetic 2017-04-20 00:17:16 +03:00
Megamouse ff5295de32 Lib Loader Radiobutton (#2689) 2017-04-20 00:16:55 +03:00
scribam 8060cf9b19 Add cellRtcAlarm module (#2703) 2017-04-19 21:24:52 +03:00
scribam ba9fdfa802 Add cellFsAccess function 2017-04-19 03:42:44 +03:00
scribam df8a0517dc Add FT_Done_Library function 2017-04-19 03:42:44 +03:00
scribam d27c3eee24 Add FTFaceH_GetMaxVerticalAdvance function 2017-04-19 03:42:44 +03:00
Ryan Gonzalez e447f071ce Misc compile fixes 2017-04-18 22:37:17 +03:00
Nicolas Werner cc12302dd4 Fix crash on linux when opening the settings dialog in debug mode
D3D12 is not in the list of supported renderes on platforms other than windows.
Deleting an item, that can't be found, triggers an assert in debug builds, so let's
avoid that.
2017-04-18 21:37:17 +03:00
scribam 30eb680c9d Check variable before to execute remove, in GLGSRender::on_exit (#2682) 2017-04-18 00:30:34 +03:00
Nekotekina f0f8f50e12 Error filtering updated 2017-04-16 17:44:20 +03:00
Nekotekina 4ceaab10a5 _mxr000 hack moved 2017-04-16 17:44:20 +03:00
Nekotekina 402df68235 sys_spu_image loading rewritten 2017-04-16 17:44:20 +03:00
Nekotekina db1b012a26 SPU fix 2017-04-16 17:44:20 +03:00
Nekotekina b1f1a5885b PPU LLVM improved 2017-04-16 17:44:19 +03:00
Nekotekina 2fd58dc7e8 sys_prx updated 2017-04-16 17:44:19 +03:00
Nekotekina 7428bb3025 HLE linkage rewritten 2017-04-16 17:44:19 +03:00
Jeremiah 14f02b23c2 Properly overwrite param.sfo in savedata (#2690) 2017-04-16 01:45:50 +03:00
Ofek 617746606d Trophy fixed (#2687) 2017-04-14 13:08:17 +03:00
kd-11 65bdcaed29 spu: Check exponent bits in FMA ops (#2683) 2017-04-13 23:02:51 +03:00
Ofek a5fd7abcf7 Trophy update (#2655)
* Added checksum check to TROPHY.TRP loader

* Implemented sceNpTrophyGetGameProgress, sceNpTrophyGetGameIcon & sceNpTrophyGetTrophyIcon

* Updates to up to date APIs and tiny changes

* Code style fixes for checksum verifier, and another fix for trophy functions

* Format fix
2017-04-13 20:29:47 +03:00
Ani 94ab3ae7cf Misc (#2614)
* cellSysmodule: Register libad modules

Register libad_core, libad_async, libad_billboard_util

* Misc

sys_ss_get_console_open_psid (Called on Project Diva F 2nd),
sys_ss_get_console_id
Stub cellWebBrowserGetUsrdataOnGameExit for Professional Baseball
Spirits 2015
Fix two logs on GcmSys
2017-04-13 19:30:25 +03:00
Jeremiah 370c2ecac5 Update cellSaveDataGetListItem 2017-04-13 18:42:38 +03:00
Nekotekina af8d7b9e4e Travis fix 2017-04-12 12:58:03 +03:00
kd-11 3ce7947dd3 rsx: Throw if user attempts to use Vulkan/DX12 without driver support 2017-04-11 13:19:31 +03:00
kd-11 ac3b22902a gl: Autodetect supported OpenGL extensions
cleanup
2017-04-10 17:24:30 +03:00
raven02 9b48074389 GL: fix wireframe in Catherine (#2660) 2017-04-10 09:28:46 +08:00
scribam 9ba0a9189b Update sys_spu
- Implement sys_spu_thread_group_set_priority
- Implement sys_spu_thread_group_get_priority
2017-04-10 04:08:55 +03:00
scribam 7cd15a6202 Add functions to cellSsl 2017-04-10 03:25:45 +03:00
scribam 49ba4bbfb5 Typo 2017-04-10 02:39:52 +03:00
Nekotekina 77aa3142a9 Audio: downmix to stereo 2017-04-10 00:18:12 +03:00
Nekotekina 4c741e93c3 ALSA Audio Renderer (Linux) 2017-04-09 19:45:12 +03:00
Nekotekina dc3d38c255 PPU Analyser: TOC detection
Improved TOC detection logic
Added "PPU Debug" option
2017-04-09 00:16:53 +03:00
Nekotekina fb9b09d004 PPU disasm: print HLE index 2017-04-08 23:51:54 +03:00
Nekotekina d7c66fc949 ppu_analyse: use entry point 2017-04-08 23:51:54 +03:00
kd-11 adefd1fd63 rsx/ui: Add config toggle for GPU texture scaling/blit 2017-04-08 23:12:09 +03:00
kd-11 6d6d0e4e36 gl: Use the GPU to scale textures; use ARB_sampler_object
Improve scaling and separate sampler state from texture state

gl: Unify all texture cache objects under one structure separate by use case
gl: Texture cache fixes

- Acquire lock when finding matching textures
- Account for swizzled surfaces when deciding whether to cpu memcpy
- Handle swizzled images on the GPU
2017-04-08 23:12:09 +03:00
kd-11 d94986ff0d rsx: Set up hw accelerated blit 2017-04-08 23:12:09 +03:00
Zangetsu38 b3cb827526 Registers more functions missing.
Implement and stub cell_FreeType2.
Reorder cellRtc.
2017-04-08 22:32:59 +03:00
Nekotekina ac79654d1b Warn about libfiber.sprx
It's currently incompatible with LLVM
Also fixed breakpoint bug
2017-04-08 00:56:38 +03:00
Nekotekina 69d86e39b9 Fixed auto LLE 2017-04-08 00:56:38 +03:00
Nekotekina 49daecc4ea Update supporters 2017-04-08 00:56:38 +03:00
Nekotekina 8f0b55c2cb Update rpcs3.ico 2017-04-08 00:56:38 +03:00
Nekotekina ed7883ba07 PPU Analyser fix 2017-04-08 00:56:38 +03:00
scribam 7a1fd27ecc Update cellSpudll
- Stub cellSpudllGetImageSize
- Implement cellSpudllHandleConfigSetDefaultValues
2017-04-08 00:09:06 +03:00
scribam d160c862c7 Stub cellScreenshot module 2017-04-07 22:40:23 +03:00
scribam 4c4b353766 Stub cellVideoUpload module (#2642) 2017-04-07 19:45:38 +03:00
scribam 22ec8c4dd2 Stub cellSysconf module 2017-04-07 18:53:00 +03:00
scribam 219dba8aae Stub cellBgdl module 2017-04-07 16:36:51 +03:00
scribam 7c2af5ceae Register cellSpursRemoveSystemWorkloadForUtility
Before
! LDR: **** cellSpurs export: [0x31F5196B] at 0x13ab56c

After
! LDR: **** cellSpurs export: [cellSpursRemoveSystemWorkloadForUtility] at 0x13ab56c
2017-04-07 16:13:14 +03:00
scribam a1cc40e7b1 Add cellLibprof module (#2637) 2017-04-07 15:48:59 +03:00
ikki84 27ea4285ef Imejp: cellImeJpEnterChar (#2600) 2017-04-07 15:30:07 +03:00
Yukariin 74e806810d [WIP] Update Qt interface (#2336)
* Fix rpcs3qt Linux build

* Files clean up

* Add base MainWindow class

* Add slot stubs

* Update MainWindow::DecryptSPRXLibraries

* Add SettingsDialog base class and tab stubs

* Add CoreTab base layout

* Add compile guards

* Minor fixes

* Add GraphicsTab base layout

* Add OK button signal

* Remove QML stuff

* Fix indentation

* Add AudioTab base layout

* Add InputTab base layout

* Fix layouts

* Add MiscTab base layout

* Fix layouts

* Add NetworkingTab base layout

* Add SystemTab base layout

* Fix button layout in SettingsDialog

* Make SettingsDialog resizable

* Add base dock widget stubs

* Add very base PadSettingsDialog layout

* Add combo box entries

* Abb LogFrame base layout

* Fix indent

* Abb GameListFrame base layout

* Minor fixes

* Add AutoPauseSettingsDialog base layout
2017-04-07 01:12:15 +03:00
jjsat d8dc4f4474 Fix isdenormal() for MS VC. 2017-04-06 20:58:02 +03:00
scribam ba8aa580a1 Add few functions in cellSysutil. 2017-04-06 14:58:03 +03:00
scribam c863da278f Add cellRtc functions 2017-04-06 12:55:33 +03:00
Inviuz 22e679e23e cellSave fix plus bugfixes (#2631)
* cellSave fix plus bugfixes

allows allocation of last byte in memory block
prevents rpcs3 from crashing when closing non existent socket

* Fix overflow

* add more socket options
fix typo

prevent sys_net from operating on nullptr sockets
2017-04-05 16:08:58 +03:00
Nekotekina 65488078a4 cellSaveData workaround 2017-04-03 16:02:43 +03:00
kd-11 2d99f3556e rsx: Fix line_loop -> line_strip indexing 2017-04-03 13:50:58 +03:00
kd-11 d33bc540bc rsx/vk: Re-enable layout transitions in vulkan. Vulkan drivers take this hint seriously
- Fix enum typo
2017-04-03 13:50:58 +03:00
Jochen Schleu ce7d62968e Only pass positive values to sqrt and log2 in the fragment program. (#2624) 2017-04-03 13:17:20 +03:00
Andrey 215a9f9e11 Gdb debug server (#2542) 2017-04-02 21:10:06 +03:00
scribam b54ba47870 Stub cellHttpUtil (#2611) 2017-04-02 15:32:53 +03:00
Cornee Traas 901f503a3a Fix mounting bdvd when elf in subdirectory
Causes MGS4 to boot further
2017-04-01 19:29:49 +03:00
kd-11 0fba38f691 gl: Fix legacy clamp mode (#2612) 2017-03-30 19:37:49 +03:00
Nekotekina c4066b924b Restore GD in game viewer 2017-03-30 13:17:34 +03:00
Nekotekina 3ec156b2f2 Enable patch engine for SPU images 2017-03-30 12:04:59 +03:00
Nekotekina 78b9c64f67 Simple patch engine 2017-03-30 12:04:59 +03:00
Nekotekina 77e88741bc Alternative TLS allocation
Should fix "out of TLS memory"
2017-03-30 12:04:59 +03:00
Nekotekina 4c789faea4 RemoveGameConfig improved 2017-03-30 12:04:59 +03:00
kd-11 66835cf083 rsx: Fix mipmap count calculation 2017-03-29 23:06:17 +03:00
kd-11 ad12900397 gl: Force alignment of DXT textures 2017-03-29 23:06:17 +03:00
kd-11 909f3e9b3e rsx: Support indexed immediate draw via ArrayElement method 2017-03-29 23:06:17 +03:00
Inviuz 632287afe7 Add simple divide to get kbytes
integer division
2017-03-28 23:13:25 +03:00
Inviuz 08c9a7c184 Check for invalid arguments
Caused crash when recvfrom was using null buffer
2017-03-28 23:13:25 +03:00
Inviuz 149c08ba78 implement getSizeKB functions
bugfix in sys_net. id 0 is acceptable socket id
2017-03-28 23:13:25 +03:00
Nekotekina cec75e8567 OpenConfigFolder 2017-03-27 13:19:53 +03:00
Nekotekina c1a98f76cd OpenGameFolder simplified
Added menu separators
2017-03-27 12:44:00 +03:00
Nekotekina 6b471d50eb libmedi fix 2017-03-27 01:15:41 +03:00
Nekotekina e8984d976c _sys_sprintf implemented
_sys_printf, _sys_snprintf fixed
2017-03-27 01:15:41 +03:00
Nekotekina 8590b66b4b Fix cpu_thread pause 2017-03-27 01:15:41 +03:00
Nekotekina 37a97a71e3 vm::g_exec_addr added
s_ppu_compiled renamed
Exception handling enabled
2017-03-27 01:15:41 +03:00
Nekotekina f1f53de24b PPU analyser fix 2017-03-27 01:15:41 +03:00
Nekotekina cd9bd79639 AutoLLE: libhttp.sprx added 2017-03-27 01:15:41 +03:00
Nekotekina 4bbe1b6bf3 fs::write_file aux 2017-03-27 01:15:41 +03:00
Nekotekina 0393c7f52c fs:: handle negative seek 2017-03-27 01:15:41 +03:00
Nekotekina e12a708036 LLVM: fix for mingw 2017-03-27 01:15:41 +03:00
Megamouse 51cd98c9f4 Add "Open Game Folder" Option" (#2595) 2017-03-27 01:11:08 +03:00
kd-11 3ec1fe9ee7 rsx: Fix depth clears on z16 surfaces without stencil
remove some debug code
2017-03-26 16:22:53 +03:00
kd-11 70d3a6d840 rsx: Support more base types for immediate rendering
fix alignment
2017-03-26 16:22:53 +03:00
kd-11 ba968048c9 vk: Minor fixes to vertex counting and lower exception to notice if var does not exist 2017-03-26 16:22:53 +03:00
kd-11 79d114cc06 rsx: Support immediate mode rendering 2017-03-26 16:22:53 +03:00
Zangetsu38 0f9f787a55 Move module in correct path 2017-03-26 01:50:22 +03:00
Ani 7ae2a8840b Register HLE libmedi, cellCrossController, cellSysutilNpEula
Motorstorm Apocalypse calls for cellMediatorGetSignatureLength,
cellMediatorCreateContext, cellMediatorGetProviderUrl,
cellMediatorGetStatus

LittleBigPlanet 2 and 3 may call for 0x37E1F502 (unknown name) on
cellCrossController

Resistance 3 and Uncharted 2 may call for the functions registered
on cellSysutilNpEula
2017-03-26 01:04:39 +03:00
Ani 7d59f7e69c cellSysmodule: Register 0xF044, 0x0054, 0x005C modules
cellSysmodule: Register 0xF044 module (cellSysutilNpEula)
Found by debugging Uncharted 2 Demo (NPEA90055)
Helps in all games that register sys module configuration 'multi-player'

cellSysmodule: Register 0x0054 module (libmedi)
Found on Motorstorm Apocalypse [NPEA00315] (thanks Zangetsu for the log)

cellSysmodule: Register 0x005C module (cellCrossController)
Found on LittleBigPlanet 2 [BCES00850] (thanks Zangetsu for the log)
2017-03-26 01:04:39 +03:00
kd-11 5b0fddd3e8 gl/vk: Fix stencil ops 2017-03-25 15:07:43 +03:00
Jake f4a0ff19d5 Xinput/MMjoy: Fix connection status 2017-03-25 14:26:27 +03:00
Jake 65696bf6a3 Crypto: fix sprx/self check in npDrm and edata fixes 2017-03-25 14:26:27 +03:00
clienthax 44e62c5c92 Fixs for klics 2017-03-25 14:26:27 +03:00
Svyatoslav 620ec7ef25 PVS-Studio: fix V547 (#2543) 2017-03-25 13:27:42 +03:00
kd-11 34c2b8a55e rsx: recover from FIFO parse errors
- Validate FIFO registers before access

-- Validate the args ptr separate from the get ptr
2017-03-24 09:30:23 +03:00
kd-11 ef822d785e rsx/fp: src3 workaround 2017-03-24 09:30:23 +03:00
kd-11 f7d767d0e8 gl/vk: Fix projected coordinate lookup on a cubemap sampler 2017-03-24 09:30:23 +03:00
kd-11 8fa3f0721e fix false alphakill flags when texture fetch is optimized away 2017-03-24 09:30:23 +03:00
twdarkeh ee8fecea21 remove custom config (#2574)
Add remove custom config to right click
2017-03-23 11:27:33 +03:00
Nekotekina 3bfe17a14f PPU: HACK instruction removed
Breakpoints fixed
2017-03-22 23:23:47 +03:00
Nekotekina ddd6ebc58d LLVM: Bump obj version 2017-03-22 01:33:50 +03:00
Nekotekina 1b5c0c68dd LLVM: enable New GVN Pass 2017-03-22 01:21:19 +03:00
Nekotekina 3e6f9faf71 Use LLVM 4.0 2017-03-21 23:32:14 +03:00
Nekotekina 4fc8276f0f LLVM: fix FCTIW, FCTID 2017-03-21 20:16:41 +03:00
Nekotekina aad035c4b5 LLVM: fix FCTIWZ, FCTIDZ 2017-03-21 20:16:41 +03:00
Nekotekina c2cd0c994f LLVM: volatile load for state 2017-03-21 20:16:41 +03:00
Inviuz c729d6d65a Use sys_vm_memory_map plus add default value for sys_allocate (#2560)
for different memory map(unconfirmed) also handle default action.
Fixes unknown syscall 313 error
Issue 2510
2017-03-21 16:02:00 +03:00
scribam 5785ebb384 Update cellOvis
- Add parameters to cellOvisInitializeOverlayTable, cellOvisFixSpuSegments and cellOvisInvalidateOverlappedSegments functions
- Modify return type for cellOvisFixSpuSegments and cellOvisInvalidateOverlappedSegments functions
- Replace UNIMPLEMENTED_FUNC by cellOvis.todo
2017-03-20 16:40:44 +03:00
scribam b32ad80c23 Update PPUFunction.cpp
Source:
- http://www.psdevwiki.com/ps3/LV2_Functions_and_Syscalls
- http://www.psdevwiki.com/ps3/VSH_Exports
2017-03-19 20:12:11 +03:00
Nekotekina 2b79a3691f cellVdec: default FRC workaround 2017-03-17 20:51:06 +03:00
Nekotekina cff39ec3a9 Fix override warning 2017-03-17 20:23:21 +03:00
Nekotekina c4bdc930ca Fix UB in PPU interpreter 2017-03-17 20:23:03 +03:00
Nekotekina d45d8eb4bc Stub sys_crash_dump_set_user_log_area 2017-03-17 20:08:00 +03:00
al0xf c5e6665010 Fix async OSK loading (#2531) 2017-03-16 12:34:47 +03:00
Nekotekina 1b5a479bbd Auto LLE: cellSsl 2017-03-14 19:21:03 +03:00
Nekotekina fc92040d7f About dialog updated 2017-03-14 19:13:01 +03:00
Nekotekina b3073bbf1e Gui: TTY log fix 2017-03-14 16:29:58 +03:00
Nekotekina 63a107acbc Small fix 2017-03-14 16:12:03 +03:00
Nekotekina 07646c2124 LLVM CPU override option 2017-03-14 16:12:03 +03:00
Nekotekina b45cea1434 Opt-in LLVM logs 2017-03-14 16:12:03 +03:00
Nekotekina 3648a058d1 Auto LLE update
libdtslbrdec.sprx removed
Some encoders added
2017-03-14 16:12:03 +03:00
Nekotekina 90479eaad6 sys_lv2coredump, sys_crashdump modules 2017-03-14 16:12:03 +03:00
kd-11 1de2ceca9b rsx/vp: Fixes (#2533)
* rsx/vp: Fix rsq opcode broken in previous commit

* fix ms compiler error

* fix another possible conflict with ms d3d compiler
2017-03-14 16:05:59 +03:00
kd-11 8fc281e034 gl: Separate scale offset, fragment constants and transform constants uploads 2017-03-13 23:40:34 +03:00
kd-11 2093134420 gl: Do not attempt to re-flush an address if another thread flushes it first 2017-03-13 23:40:34 +03:00
kd-11 818dd88390 gl/vk: Ignore invalid texture uploads 2017-03-13 23:40:34 +03:00
kd-11 be4bb48476 rsx/fp: Fix some decompiler bugs 2017-03-13 23:40:34 +03:00
Nekotekina 1c8cb3b7d3 Boot messages 2017-03-13 18:03:38 +03:00
Nekotekina 1ede0f4706 Minor optimization 2017-03-13 15:02:18 +03:00
Nekotekina 78703cfe47 Use utils::memory_protect 2017-03-13 13:16:22 +03:00
Nekotekina d09dd29054 utils::memory_protect 2017-03-13 13:16:22 +03:00
kd-11 fa6114719d gl: Lower restriction on render target pitch 2017-03-13 12:44:28 +03:00
ikki84 c8b9cc9fe5 Stub cellAvconfExt
Changed "fmt::throw_exception("Unimplemented" HERE); "
into:
"UNIMPLEMENTED_FUNC(cellAvconfExt); "
"return CELL_OK;"

Allow NPEB01283 to go further in boot (pass the intro and reaches the menu)...
2017-03-13 12:19:38 +03:00
Inviuz b70a1edbc7 Mmapper with Neko's review fixes (#2503) 2017-03-12 03:15:22 +03:00
Nekotekina 14e5aa57c8 wx: UTF8 path fix 2017-03-12 00:41:48 +03:00
Nekotekina 7b65f93953 SPU ch69 2017-03-11 21:55:50 +03:00
Nekotekina d878a286bc 0.0.2 Alpha 2017-03-11 21:38:49 +03:00
Nekotekina ce35554a55 Fixes (sys_memory, sys_mmapper)
DeS
2017-03-11 21:37:18 +03:00
Nekotekina 4739eb3601 Reservation fix 2017-03-11 15:48:43 +03:00
Inviuz 40a84dd477 Handles directory creation in cellGameDataCheckCreate2 (#2488)
* Handle directory creation in cellGameDataCheckCreate2

Stops some games from displaying information about not enough memory on
hdd

* Returning CELL_OK causes some games to loop on sceNp functions

for "shaman magic"

* cellGameDataCheckCreate2 added param.sfo creating/rewriting

* fix fs::file null

and one readability change

* For debugging purposes

When fs::file problem is located will be improved

* Fixed wrong operators

* Conversion from vfs to fs

Should take care of fs::null

* Cleanup

removed some unnecessary logging

* Fix successive function calls

second call was always ending in error since it didn't create the conent
permission

* Changes according to Neko's review

* Change to use u32 value
2017-03-11 11:59:50 +03:00
Jake 309f409554 Fixes: cellMsgDialog, cellPad 2017-03-11 01:13:53 -06:00
Jake a6f8e4f6b3 Edat / Sdata: On the fly decryption for edat, fix EDAT_FLAG_0x20 decryption 2017-03-10 19:39:01 -06:00
kd-11 1fd33f611c gl: Fix texture cache bugs
Fix endianness bug
Fix r/w when real pitch is <= 64
2017-03-10 19:11:53 +03:00
Nekotekina 5e3bacbd9b New reservations
Memory system cleanup
sys_memory_get_page_attribute
2017-03-10 15:51:40 +03:00
Ani 7cdb5f3123 Add missing system languages
Adds Portuguese (BR) which was introduced in firmware 4.00 alongside
with English (UK)
Adds Turkish which was introduced in firmware 4.30
2017-03-08 19:59:34 +03:00
raven02 a168aa2df3 DX12: fix DRGB8 texture format (#2480)
* DX12: set native sampler format to BGRA8

* DX12: fix DRGB8 texture format
2017-03-07 19:34:09 +08:00
Jake 87fe93ee9a Mself / Sdata: on the fly partial decoding support (#2468) 2017-03-07 08:59:05 +08:00
kd-11 0fd888a42e vk: Fix DRGB8 format 2017-03-06 18:56:46 +03:00
kd-11 1e71285de8 gl/vk/dx12: Implement forced channel remapping
gcc fix
2017-03-06 14:34:29 +03:00
Nekotekina 9a9455a696 Fix #2462 2017-03-05 21:42:27 +03:00
Nekotekina 19a698682b Compilation fix (mingw) 2017-03-05 19:00:08 +03:00
Nekotekina 3baf79f929 ror64 added 2017-03-04 17:34:59 +03:00
Nekotekina 74d47943e9 sceNpDrmVerifyUpgradeLicense fixed 2017-03-04 17:14:51 +03:00
Nekotekina 8e4a09d9e5 cellFsSdataOpenByFd draft
LLE-compatible implementation
lv2_file::make_view implemented
2017-03-04 16:54:49 +03:00
Wilfried Rabouin 67ac8bf070 PPUInterpreter: Fix undefined behavior of left rotate functions (#2469)
* PPUInterpreter: Fix undefined behavior of rol8 and rol16 with inline assembly

* PPUInterpreter: Fix undefined behavior of rol32 and rol64

* PPUInterpreter: Change left rotate functions to inline functions and move to types.h
2017-03-04 16:41:40 +03:00
Nekotekina 48b0583866 Default LLE option 2017-03-03 01:40:27 +03:00
kd-11 b8fcbb68b0 gl/vk/cache: Fix invalidating intersecting and overlapping memory regions
whitespace fix
2017-03-01 14:00:06 +03:00
kd-11 85c0219aed vk: Fix cache range computation 2017-03-01 00:40:53 +03:00
kd-11 10e218e224 Fix linux build (travis-ci) 2017-03-01 00:40:52 +03:00
kd-11 69d044cd8d gl: Relax requirement to EXT_DSA from ARB_DSA to better support linux 2017-03-01 00:40:51 +03:00
kd-11 7062efeb3e gl: Fix a fence deadlock in fence::wait_for_signal
gl: Fix potential race condition when executing local work queue
2017-03-01 00:38:22 +03:00
kd-11 cee53fcecf gl: Ensure correct sized pbo is created upon reset 2017-03-01 00:16:55 +03:00
kd-11 ef8e92cbe3 gl: Change clear timing to immediate
gl: Handle cell write to locked RTT region

addendum: Fix buffer locking (personal 4)
2017-03-01 00:16:55 +03:00
kd-11 7c73c3b75c rsx/gl: Minor refactoring; prepare vulkan backend 2017-03-01 00:16:55 +03:00
kd-11 1e826f5ccf rsx: Minor optimization (tangible boost) 2017-03-01 00:16:55 +03:00
kd-11 96561c16ad gl: Rewrite texture cache
gl: scale downloaded RTT images
2017-03-01 00:16:55 +03:00
clienthax bd85f23ed9 Stub sys_gamepad ycon interface (#2435)
* Attempt to add sys_gamepad...

* Stub ycon methods

Signed-off-by: clienthax <clienthax@gmail.com>
2017-02-28 19:15:11 +03:00
Ani 557e1c3694 Fix cellDiscGameGetBootDiscInfo (#2430)
cellDiscGameGetBootDiscInfo is called by non-disc games for some reason.
That wasn't accounted for and therefore it would try to read PARAM.SFO
from an unmounted path and throw an access violation.

Tested with NBA Live 08 Demo NPUB90029, probably fixes similar games as
well
2017-02-28 18:42:45 +03:00
Nekotekina c785b14c18 LLVM fix 2017-02-28 17:16:32 +03:00
Nekotekina 3751d5d5c1 Fixed VFS initialization order
Fixed RAP location for SELF
Fixed custom config loading
2017-02-28 16:18:49 +03:00
Nekotekina 45bb51ded8 unpkg improved
Initial content_type parsing
Added PSP2 support
2017-02-28 16:18:48 +03:00
Jake c3b424eb11 rsx: image_in fix for clipx/y (#2440) 2017-02-28 16:21:07 +08:00
Ani 01ef9ecca4 sceNp: Fix ExitSpawn, Implement VerifyUpgradeLicense (#2428)
* sceNp: Fix ExitSpawn and ExitSpawn2

Fixes sceNpDrmProcessExitSpawn and sceNpDrmProcessExitSpawn2
functions

The problem was that first argument klicensee was missing, therefore
shifting every other argument out of place and throwing an access
violation at the end.

* Use npDrmIsAvailable on sceNpDrmProcessExitSpawn

Tries to decrypt DRM file with provided klicensee

* Implement sceNpDrmVerifyUpgradeLicense

Implements sceNpDrmVerifyUpgradeLicense / sceNpDrmVerifyUpgradeLicense2
2017-02-26 23:44:48 +03:00
Nekotekina 0eb6bf6a67 LLVM: splitting and caching 2017-02-26 20:14:18 +03:00
kd-11 9263999ad1 [rsx/vp] Improve BRB opcode implementation
fix merge issues
2017-02-26 10:17:34 +03:00
Ani 4d9b56c7f1 libnet: recvfrom() fix (#2427)
Prevents emulator crash when invalid socket is provided to the function
2017-02-25 23:27:31 +00:00
Nekotekina d0afef47f8 LLVM: block borders fixed 2017-02-25 21:30:28 +03:00
Nekotekina af53ce6f76 Stack overflow constrained 2017-02-25 19:29:31 +03:00
Nekotekina c0589cab05 Minor fix (linux) 2017-02-24 19:56:59 +03:00
Nekotekina 8369cb2af6 Complex STOP 0x0 hack 2017-02-24 16:57:09 +03:00
Nekotekina 07d49b1bd8 sys_spu_thread_send_event fix 2017-02-24 16:57:09 +03:00
Nekotekina 5c8aab7917 Disable PPU interpreter (precise) 2017-02-24 16:57:09 +03:00
georgemoralis 14093c86a9 load config.yaml settings in a new configpergame 2017-02-24 16:55:27 +03:00
georgemoralis e153df4d5b pergameconfig : create directory if not exists 2017-02-24 16:55:27 +03:00
georgemoralis 3e0c356b0b per game config.yml (#2418) 2017-02-23 18:08:52 +03:00
Ani 5fce74a2a6 Hides D3D12 renderer on not supported OSes (#2416)
Since Windows 10 is the only system supporting it there's no point in it being listed on other OSes. 
Should prevent users reporting D3D12 isn't working on their non-w10 OSes.
2017-02-22 22:27:35 +00:00
Nekotekina 7c418f7ea5 PPU: block info fix 2017-02-23 00:35:29 +03:00
Nekotekina dac72ff371 Automatic dev_* dir creation 2017-02-22 17:29:10 +03:00
Nekotekina baf22527b0 Ditch fs::get_executable_dir 2017-02-22 17:17:26 +03:00
Nekotekina 4cba60b27f Cache decrypted EBOOT.BIN 2017-02-22 15:21:30 +03:00
Nekotekina 5e539f71e6 Prefer EBOOT.BIN 2017-02-22 13:23:21 +03:00
Nekotekina 9000407a77 cpu_thread::test_state added
lv2_obj::sleep adjustment
synchronization fixes
2017-02-22 13:23:21 +03:00
Nekotekina 4b6f8d2f62 fxm::check_unlocked added 2017-02-22 12:57:39 +03:00
Nekotekina f08579d201 Log timestamp added 2017-02-22 12:56:34 +03:00
Jake 47fdaf6902 Improve cellPngDec (#2394)
* Improve cellPngDec
- ReadHeader and SetParam corrected
- Partial loading Implemented
- Interlace Support added
- Improve error handling

* Use custom exception

* Change to catch ref
2017-02-19 14:59:49 +03:00
Jake a886e28f87 Fix nv3089_image_in
- Restrict clip_x/y
- Remove double offset addition
2017-02-17 18:33:56 -06:00
Ani 65104b5909 Rough implementation of GCM_CONTEXT_DMA methods
Rough implementation of GCM_CONTEXT_DMA methods.
Fixes #1487
2017-02-17 22:35:28 +03:00
Ani 5605b4ee70 Fixes #2399
Defaults dGPU on NVIDIA Optimus systems and requests High Performance
mode on AMD systems.
2017-02-17 02:07:42 +03:00
Nekotekina 3ecba8e57f Fix #2397 2017-02-16 17:14:29 +03:00
flash-fire 0c8bda4f41 Simplify the popup menu. You can reuse the popup menu. So, no need to create/delete each time. Also, deleting stuff from a for each iterator is generally a bad idea. 2017-02-16 12:14:54 +03:00
Cornee Traas 458dbbd15d PS3UPDAT.PUP installer (#2386)
* Add PUP loader

* Add .tar loader and update .pup loader

* Add extract method + offset to TAR loader

Also adds error checking + operator bool overload

* Add firmware decryption keys to key vault

* Initial seperation of SELFDecrypter

This seperates SELFDecrypter into itself and SCEDecrypter.
SCEDecrypter contains the logic to decrypt any file with an SCE Header.
SELFDecrypter inherits from SCEDecrypter and contains the code
specifically to do with ELF. DecryptData could be deduplicated more.

* Add "Install Firmware" option to tools menu

* SCEDecrypter: put each segment in own file

Also, const-correctness, adjusted buffer size and better error handling

* More SELFDecrypter refactoring

* Compile fix

* Add messageboxes to firmware install

* Add progress bar to firmware install
2017-02-16 10:15:00 +08:00
gmoralis b4557789f8 Implemented cellDiscGameGetBootDiscInfo 2017-02-15 10:49:18 +02:00
Ani 63169d7679 Nekotekina: Fix loading nonexistent libs
Nekotekina's fix for preventing loading nonexistent libs
2017-02-15 02:47:54 +03:00
georgemoralis 5d705c0e9c fix up an issue with sceNpTrophyCreateContext (#2382) 2017-02-14 20:46:56 +03:00
Zangetsu38 682924b51a D3D12: add DXGI_FORMAT_B8G8R8A8_UNORM missing (#2385) 2017-02-15 00:29:43 +08:00
Nekotekina 598c90f376 PPU thread scheduler 2017-02-13 22:26:11 +03:00
Nekotekina e4962054a4 LLVM: add check state 2017-02-13 20:51:56 +03:00
Nekotekina 8891d85f75 Hack for 0x0 2017-02-13 18:32:54 +03:00
Nekotekina 763550c472 0x2c8..0x2fc 2017-02-13 17:50:04 +03:00
Nekotekina d2ddb9882f SPU: IRET, SN event 2017-02-13 16:29:32 +03:00
Nekotekina 64ac6a59c4 REG_FUNC simplified 2017-02-13 16:29:32 +03:00
Nekotekina acd9d6ff24 Stub some modules 2017-02-12 21:35:55 +03:00
Nekotekina f4b95c0226 PPU analyser improved 2017-02-12 21:12:08 +03:00
Nekotekina 177084b1f4 cellSysutil functions
E1EC7B6A implemented
2017-02-12 21:03:08 +03:00
Nekotekina aff0484ea2 Stub some functions 2017-02-12 02:55:09 +03:00
clienthax b407d12ed1 Make APP packages bootable - from BlackDaemon (#2368) 2017-02-11 22:11:04 +03:00
Nekotekina e8bfce4ebd decrypt_self() function
Fixed SPU self decryption
Fixed PSV debug self load
2017-02-11 21:36:48 +03:00
Nekotekina 3356a76c9b PPU fix 2017-02-11 17:17:07 +03:00
kd-11 d6159a35aa gl/vk/dx12: Fix texture scaling on unnormalized rtt access 2017-02-11 15:45:59 +03:00
raven02 0019ea28c3 GUI: not displaying _INSTALL , _DATA and _GAMEDATA in gameviewer (#2364) 2017-02-11 16:50:48 +08:00
Nekotekina e899de88ff Log empty functions 2017-02-11 02:43:31 +03:00
Nekotekina bb111d325f memory fix 2017-02-10 23:27:58 +03:00
Zangetsu38 73906f9f29 d3d12: add x1r5g5b5_z1r5g5b5 and cleanup in D3D12Formats.
Add info in BufferUtils for log.
2017-02-10 22:04:45 +03:00
Nekotekina b20d7ff48c PPU breakpoints resurrected
Now with zero overhead
2017-02-10 16:33:22 +03:00
Nekotekina 8262d56574 PPU interpreter improved 2017-02-10 16:33:22 +03:00
Nekotekina 257b9a2015 Debugger fix
Crash fixes
GUI fixes
Debug enhancements
2017-02-10 16:33:22 +03:00
magiruuvelvet ff07595519 CMake: fix linkage on Linux, missing libdl 2017-02-10 16:24:31 +03:00
georgemoralis 6023794081 Joystick support using mmsystem library on windows (#2355)
* Joystick support using mmsystem library on windows

* fixed signed/unsigned issues with axes

* joystick buttons are now configurable
2017-02-10 15:28:00 +03:00
raven02 a1189fa37a finding from @3141card on PS3 console 2017-02-08 23:33:43 +03:00
raven02 5a2a2f49ed add missing LV2 error code 2017-02-08 23:33:43 +03:00
Ani 6c372d1781 cellL10n: Small adjustements (#2320)
l10n: Partial jstrnchk
l10n: SBCSstoUTF8s
l10n: Replace fmt::throw_exception() for cellL10n.todo() and
return ConversionOK for String methods, 0 for character methods
and the character itself for specific methods;
2017-02-08 03:25:10 +03:00
Oil 1669d0fdbd Minor changes (#2352)
* More initial values for rsx method registers

* Implemented spu decrementer event

* Remove u32 cast
2017-02-07 23:59:59 +03:00
Nekotekina 47b4c649f1 PPU fixes 2017-02-07 16:37:30 +03:00
Nekotekina ead67d8e67 Minor changes
Fix psv loader
2017-02-07 16:37:30 +03:00
☠Emulator_Team☠ 8c4ba3257c Some changes (#2350)
cellSysutilAvc2: Use UNIMPLEMENTED_FUNC macro instead of fmt::throw_exception.
2017-02-07 15:28:19 +03:00
ikki84 05c4aa5017 cellMsgDialogOpen: Go further using cellMsgDialogOpen2. (#2345)
Notes:
Needs proper implementation (!)
The functions shows similarities but the bits in argument "type" may vary a little.
Comparing both functions but testing in NPJA00014 I believe it could be acceptable until it be implemented properly

Feel free to reject if it´s not allowed

Update cellMsgDialog.cpp
2017-02-07 13:00:19 +03:00
raven02 f84b2f072f D3D12: add missing logic set 2017-02-06 12:34:20 +03:00
ikki84 9b122e5449 cellMusic.cpp Change Throw Exception into UNIMPLEMENTED_FUNC
Also return CELL_OK in function until the it become properly developed.
2017-02-05 19:39:21 +03:00
Nekotekina 246b9f3182 CHECK_EMU_STATUS removal 2017-02-05 17:35:27 +03:00
Nekotekina bf6854d121 LV2_LOCK removed 2017-02-05 16:35:10 +03:00
Nekotekina eebd48e51d cellHddGameGetSizeKB w/a 2017-02-05 16:07:26 +03:00
Nekotekina 11b0b6958f sys_spu diag 2017-02-05 15:48:11 +03:00
Nekotekina cb1f30e9d2 Report fixup 2017-02-05 03:06:05 +03:00
Nekotekina ec943b38a2 sys_spu... 2017-02-05 02:26:57 +03:00
Nekotekina 68f0393cf3 sys_interrupt... 2017-02-04 20:39:04 +03:00
Nekotekina fe26db4d36 idm::last_id cleanup 2017-02-04 20:39:04 +03:00
Nekotekina e3e4decabf sys_timer... 2017-02-04 20:39:04 +03:00
Nekotekina 6537909fd2 sys_event_queue... 2017-02-04 20:39:04 +03:00
Nekotekina 26ced19e18 sys_event_flag... 2017-02-04 20:39:03 +03:00
Nekotekina 3d85a89cc9 sys_lwcond, sys_lwmutex 2017-02-04 20:39:03 +03:00
Nekotekina 16944b0c4c sys_cond, sys_mutex 2017-02-04 20:39:03 +03:00
Nekotekina c4cc3ad81e sys_rwlock... 2017-02-04 20:39:03 +03:00
Nekotekina 0674a58502 idm::check extended
idm::check_unlocked
idm::find_unlocked
idm::get_unlocked
2017-02-04 20:39:03 +03:00
O1L a809f33418 GL: try to skip incorrectly prepared FBO's. 2017-02-04 19:32:54 +03:00
O1L bf33a1827c Set default values for NV4097_SET_SURFACE_FORMAT register 2017-02-04 19:32:54 +03:00
O1L 57ef6dae91 Implemented cellGcmSetDefaultCommandBufferAndSegmentWordSize 2017-02-04 19:32:54 +03:00
Yukarin 758f1bcdee Files clean up 2017-02-03 21:15:46 +03:00
Yukarin fa6fd5980e Fix rpcs3qt Linux build 2017-02-03 21:15:46 +03:00
Robbie 3762f1e50d Make RPCS3 compatible with QT5.8 (#2330) 2017-02-03 11:20:23 +03:00
ikki84 5aaee670d1 Update ErrorCodes.h (#2332) 2017-02-03 02:10:16 +03:00
Ani 9916f0e5c5 [O1L] cellVideoOut: X8B8G8R8 fix
O1L's fix for cellVideoOut.
2017-02-02 21:15:40 +03:00
gmoralis 9eba0ac58c proper error code when file not found . This should fix issue #1923 at least bomberman works 2017-02-01 14:22:30 +03:00
Zangetsu38 13493ec051 Add Patreon link on about dialog (#2310) 2017-02-01 12:37:59 +08:00
Nekotekina 213527ca71 sys_semaphore... 2017-01-31 19:36:17 +03:00
Nekotekina dc7ac22f84 sys_ppu
LV2_LOCK removal
error_code introduction
2017-01-31 18:03:09 +03:00
Zangetsu38 bd6a7dea7e rsx: Fix error context dma 2017-01-31 14:37:31 +01:00
Nekotekina 6433eebe1e IdManager fix 2017-01-31 15:57:32 +03:00
Ani 35b7cf4c98 Misc changes (#2309)
AppVeyor: Improve artifact name
Travis: Update notification email
README: Fix forum link and remove coveralls
sceNp2: Use UNIMPLEMENTED_FUNC macro instead of fmt::throw_exception
VK: Fix pathing for linux
AboutDialog: Fix forum link
2017-01-31 01:16:47 +03:00
Nekotekina c733d03525 cellVdec mem limit 2017-01-30 01:50:20 +03:00
Nekotekina b21fce4d6f IdManager improved
lv2_obj for kernel objects
Simple lookup (vector)
Another idm API refactoring
2017-01-29 21:37:04 +03:00
Nekotekina be8d8ded3f replace high_resolution_clock 2017-01-29 19:52:19 +03:00
Nekotekina a5a2d43d7c Thread.cpp refinement
Hide thread mutex
Safe notify() method
Other refactoring
2017-01-29 19:52:19 +03:00
Zangetsu38 da878c36bd fix osk dialog (#2302) 2017-01-29 13:21:58 +08:00
Ryan Gonzalez 11e2965b5c Switch to always using a steady clock (closes #2200) 2017-01-29 03:07:08 +03:00
Nekotekina 4203f53b67 IdManager bugfixed 2017-01-28 17:59:43 +03:00
Nekotekina d4c3905355 Debug build fix 2017-01-28 15:32:45 +03:00
Nekotekina 44b2df27ea FPS counter fix 2017-01-28 03:21:11 +03:00
Nekotekina 5ee0cea672 cellAudio fix 2017-01-28 03:21:11 +03:00
Nekotekina df6607e236 Minor fixes 2017-01-28 03:21:11 +03:00
Nekotekina e32c49c12c vcxproj fix 2017-01-28 03:21:11 +03:00
Nekotekina 8693031b06 cellVdec: minor fix 2017-01-28 03:21:10 +03:00
Ryan Gonzalez b644d5b2ae Add logic_set support to VKGSRender 2017-01-28 03:20:30 +03:00
Ani 5e8852af80 sceNp: Register missing functions (#2291)
Registers missing named functions exported from sceNp on firmware 4.76
2017-01-27 20:17:34 +03:00
Zangetsu38 b6f8eface7 Register missing cellSysutil and sysPrxForUser function. 2017-01-27 17:27:22 +03:00
Cornee Traas fe23e0cc6e Un-malloc Crypto 2017-01-27 00:38:58 +03:00
Nekotekina bdca52a95d cellVdec: 2997/50 support 2017-01-26 20:01:16 +03:00
Nekotekina 33d2618e5b cellOskDialog fixes 2017-01-26 20:01:16 +03:00
Nekotekina 2bc8723824 cellVdecDecodeAu mode implemented 2017-01-26 20:01:16 +03:00
Nekotekina 4ecf05aa13 cellFsUtime implemented 2017-01-26 20:01:16 +03:00
Nekotekina 1705638e25 MFVSCR error removed 2017-01-26 20:01:16 +03:00
Nekotekina 5db0f47710 lv2_fs_object fix 2017-01-26 04:22:15 +03:00
Nekotekina ee173dc3a2 IdManager fix 2017-01-26 04:22:15 +03:00
Nekotekina 591a6c8671 IdManager improved 2017-01-25 23:29:36 +03:00
Nekotekina a06223b844 IdManager sugar 2017-01-25 04:43:12 +03:00
Nekotekina 9232ddf0ab Minor changes 2017-01-25 04:43:12 +03:00
Nekotekina 1c14d872a8 New shared_mutex
Experimental sync utils
New semaphore<>
New cond_variable
New owned_mutex
2017-01-25 00:38:07 +03:00
Nekotekina 8ad31d2559 Test 2017-01-25 00:38:07 +03:00
Ivan 46dde3f8f7 Fixes (#2279)
Fixed appveyor icon
PPUAnalyser fix
OSK dialog fix
2017-01-24 00:56:27 +03:00
O1L 8318eed068 Seems like sfunc and zfunc comparison constants used by NV4097_SET_DEPTH_FUNC and NV4097_SET_STENCIL_FUNC 2017-01-23 23:49:17 +03:00
O1L 778199ceb1 Added missing stencil op 2017-01-23 23:49:17 +03:00
O1L 6b48a72d42 GL: fixed user clip implementation 2017-01-23 23:49:17 +03:00
O1L 07a366b608 VP decompiler: fixed condition update flags using 2017-01-23 23:49:17 +03:00
Nekotekina d07ea31400 cellOskDialog fix 2017-01-23 21:25:29 +03:00
al0xf aa357b9ae8 Add OSK GUI (#2275)
* Initial commit of OSK GUI

Also handles character encoding, you can for instance input in Chinese.

* Fixes for osk gui
2017-01-23 20:14:12 +03:00
Nekotekina 78ecb115f3 LLVM: progress dialog 2017-01-22 22:44:26 +03:00
Nekotekina 6cf006b02b Linux build fix + instructions 2017-01-22 18:50:55 +03:00
Ivan fbf8231642 PKG Installer fix (#2268)
Fix homebrew pkg
2017-01-21 16:06:28 +03:00
Cornee Traas 435ef04c34 Bind SET_POLYGON_STIPPLE_PATTERN (#2259)
Causes MGS4 to boot a little bit further
2017-01-20 10:48:17 +08:00
al0xf f2ba41af46 Stub cellOsk (#2264)
* Stub cellOsk

Returns the word "rpcs3" as OSK input for now. Tested and working in
Terraria, Nier, and some homebrew. The next step would be to hook it up
to the GUI so the user can enter any text.

* Fix commit

* Fix formatting

* cellOsk improvements

* cellOsk improvements
2017-01-19 01:01:25 +03:00
kd-11 fb5df32990 rsx/vs: decode sca ops after vec ops 2016-12-15 14:36:28 +03:00
kd-11 a1e725ffeb gl: Decode dxt textures to a staging buffer 2016-12-15 14:36:28 +03:00
Viktor Ivanov 1a4b5413bd Log call to cellGameDataGetSizeKB 2016-12-05 21:47:23 +03:00
itmo153277 124f5d0097 Allow UE3 games to startup 2016-12-05 20:35:05 +03:00
Ivan 684089ba81 Relicense sceVideodec.h 2016-12-02 21:16:31 +03:00
kd-11 973bf5abdf gl: Disable overlay if required extension is not supported (#2212) 2016-10-20 11:20:45 +08:00
Yishuai Li 80a9abcfc8 fix type conflict with macOS (#2157) 2016-10-20 03:42:14 +03:00
kd-11 2c803dbe66 gl/vk: Bug fixes and improvements (#2206)
* gl: Only bind attrib textures on thread startup

* gl: Persistent mapped buffers

* gl: Fix emulated primitives in an inlined array

* gl: Do not re-update program information every draw call

* gl/vk: s1 type is signed normalized not unsigned normalized

* gl/rsx: Allow disabling of persistent buffers for debugging

gl: Large heap size is more practical

gl: Fix a bug with legacy opengl buffers

* gl/rsx: Allow emulation of unsupported attribute formats

* gl: Fix typos and remove dprints

gl: cleanup debug prints

* ui: Move the GL legacy buffer toggle to the left pane

* vk/gl: Fix cmp type, its range is [-1,1] not [0,1] SNORM_INT
2016-10-18 15:57:28 +08:00
kd-11 8454949eea gl/vk/rsx: Add a cross-platform overlay text; Minor perf improvements and rsx bugfixes (#2196)
* gl/rsx: Implement platform-agnostic text overlays

gl: Restore performance metrics using new text out helper

gl/rsx: Refactor text generation class

* vk: Enable text overlay

gl/vk: Polish overlay counters implementation

gl: Better resource shutdown for text writer

* gl: Optimization, do not rebind TIUs every frame. Speedup

* gl: Optimizations and improvements to vertex upload code

* gl/vk: Texture format swizzles

vk: Texture format fix

vk: Fix YX format swizzles

* rsx: Decode vertex texture index
2016-10-11 08:55:42 +08:00
kd-11 7a9841bb2a gl/vk/dx12: Fix depth reconstruction bug; Fix sampler parameters (#2188)
vulkan: Fix duplicated code bug

fix rebase
2016-10-04 21:51:40 +08:00
Melissa Goad 22b1400018 Revamp PFIFO command submission emulation (#2179) 2016-10-01 22:13:15 +03:00
raven02 44b8556dc6 Vulkan: fix G8B8 texture swizzle (#2181) 2016-10-01 17:02:10 +08:00
kd-11 1c9718389f gl/vk: Vertex attribute uploading and texture swizzle fixes (#2174)
* gl/vk: Properly upload vertex attributes

* vk: Fix cmp type

* vk: Remap all texture formats
2016-09-29 15:16:00 +08:00
kd-11 5430e1d310 rsx/gl/vk/dx12: Add emulated texture fetch for depth read (#2173)
* rsx/gl/vk/dx12: Add emulated texture fetch for depth read

gl/vk/dx12: Simplify reinterpretation equation

* gl: Remove unnecessary re-swizzle

* glsl: explicitly cast uint to float
2016-09-29 14:54:32 +08:00
kd-11 9abb908226 vk: Add a subpass dependancy (#2172) 2016-09-28 22:12:52 +08:00
kd-11 38562155d4 gl/vk: Flip wpos if origin != top 2016-09-28 07:22:45 +08:00
kd-11 4f74cbe510 gl: Reverse cull face when origin == top (#2161) 2016-09-27 15:34:01 +08:00
raven02 528b2d6c7b GL/Vulkan: not discard fragment when hits NEVER comparsion (#2156)
GL/Vulkan: return no operation when comparison is never
2016-09-26 21:59:38 +08:00
kd-11 7884356e90 gl/vk: Bug fixes and improvements (#2155)
* gl: Fix broken buffer reserve computation

* gl: Texture format fixes

* gl: Two sided lighting

* gl: Always update glsl output registers

* gl: Simplify vertex input declaration

* vk: Always write output registers

* vk/gl: swizzle component read on depth textures

* gl/vk: Use proper MVP matrix

gl: fix broken mvp when window_origin=top

* vk/gl: Move fragment operations block into the proxy function
2016-09-26 20:21:17 +08:00
raven02 38f35df7b6 DX12: enable alpha kill (#2158) 2016-09-26 18:38:52 +08:00
raven02 fcb853792d Typo fix (#2153) 2016-09-25 16:53:57 +08:00
Oil b72f6da853 Porting of DH's user clip implementation in gl (#2139)
* Porting of DH's user clip implementation in gl

* Tweak clang-format

* rsx: Move inline array to draw_clause structure.

* rsx: Use variant based draw commands.

* rsx: Dump DRAW_ARRAYS and DRAW_INDEX_ARRAYS.

* GL: old recompiler clean up (#2142)

* RSX texture refactor (#2144)

* gl/vk: Enable vertex texture fetch (#2127)

* gl: Enable vertex textures

* rsx: use textureLod instead of generic texture sample

* rsx: handle uploading of W32_X32_Y32_Z32

* gl: Re-enable proper shader logging

remove old logging method that overwrites single file

* gl: Declare texture_coord_scale for vertex samplers

* gl: texture remap fixes; enable remap for vertex textures

* gl: offset texture indices to base layer 16

* rsx: Fix W32_Z32_Y32_X32_FLOAT subresource layout

* vk: Enable vertex textures

* rsx: define special calls for vertex texture fetch

* gl: improved vertex texture fetch setup

* vk: Fix texture formats and component mapping

* vk: Implement vertex texture fetch functions properly

* vk/gl: proper fix for primitive restart index

revert inadvertent decompiler update

* gl: Disable filtering for vertex textures

* Hopefully fix appveyor build (#2148)

* GL/Vulkan: Bug fixes and improvements; alphakill for vulkan (#2146)

* vk: Zero-initialize some more structs

* gl: Clean up fragment program generation code

* vk: Enable alpha kill

* vk: Fix surface clear; redirect output for surface_type:b

* vk: Tie renderpass to program object to avoid incompatible passes

* vk: Properly compute descriptor pool size (#2150)

* rsx: Set default attribute format to float.

* rsx: vertex attribute size is 1 again for CMP, let backend handles this formats properties.

* rsx: Move printing function in a separate header/cpp

* Porting of DH's user clip implementation in gl
2016-09-24 18:21:41 +08:00
vlj 9ff52cf063 rsx: Move printing function in a separate header/cpp 2016-09-22 15:44:59 +02:00
vlj 8f5e94c155 rsx: Set default attribute format to float. 2016-09-22 15:44:59 +02:00
vlj 6b7ce37374 rsx: vertex attribute size is 1 again for CMP, let backend handles this formats properties. 2016-09-22 15:44:59 +02:00
kd-11 66e57ae19b vk: Properly compute descriptor pool size (#2150) 2016-09-22 16:06:57 +08:00
kd-11 0d207a6c0d GL/Vulkan: Bug fixes and improvements; alphakill for vulkan (#2146)
* vk: Zero-initialize some more structs

* gl: Clean up fragment program generation code

* vk: Enable alpha kill

* vk: Fix surface clear; redirect output for surface_type:b

* vk: Tie renderpass to program object to avoid incompatible passes
2016-09-21 21:41:29 +08:00
kd-11 867e9210d7 gl/vk: Enable vertex texture fetch (#2127)
* gl: Enable vertex textures

* rsx: use textureLod instead of generic texture sample

* rsx: handle uploading of W32_X32_Y32_Z32

* gl: Re-enable proper shader logging

remove old logging method that overwrites single file

* gl: Declare texture_coord_scale for vertex samplers

* gl: texture remap fixes; enable remap for vertex textures

* gl: offset texture indices to base layer 16

* rsx: Fix W32_Z32_Y32_X32_FLOAT subresource layout

* vk: Enable vertex textures

* rsx: define special calls for vertex texture fetch

* gl: improved vertex texture fetch setup

* vk: Fix texture formats and component mapping

* vk: Implement vertex texture fetch functions properly

* vk/gl: proper fix for primitive restart index

revert inadvertent decompiler update

* gl: Disable filtering for vertex textures
2016-09-20 22:23:56 +08:00
raven02 77f8ce503d RSX texture refactor (#2144) 2016-09-19 09:25:49 +08:00
raven02 530ea688e4 GL: old recompiler clean up (#2142) 2016-09-18 13:19:26 +08:00
vlj f87e396958 rsx: Dump DRAW_ARRAYS and DRAW_INDEX_ARRAYS. 2016-09-17 23:37:52 +02:00
vlj 8d54bcbc0d rsx: Use variant based draw commands. 2016-09-17 23:37:52 +02:00
vlj 03c86ae43b rsx: Move inline array to draw_clause structure. 2016-09-17 23:37:52 +02:00
Oil 153a2d2b40 Fixed fog and alphakill implementation in glsl (based on DH's old commits) (#2137)
* Fixed NV4097_SET_COLOR_CLEAR_VALUE

* Fixed fog and alphakill implementation in glsl (based on DH's old commits)
2016-09-14 22:47:53 +08:00
Oil e73fce2d60 Fixed NV4097_SET_COLOR_CLEAR_VALUE (#2135) 2016-09-13 02:28:34 +03:00
vlj 14205d3d1c d3d12: CMP vertex format has 4 members.
Fix 1878
2016-09-12 00:20:11 +02:00
vlj 30b804e0bc d3d12: Fix a potential race condition. 2016-09-12 00:20:10 +02:00
vlj 153f1cc50a d3d12: Always set transform constant when debug output is enabled. 2016-09-12 00:20:10 +02:00
raven02 fc3179b698 DX12: temporary disable vertex base index check (#2128) 2016-09-07 09:26:01 +08:00
raven02 d4a55f4b06 Vulkan: enable cull face again (#2124)
* Vulkan: enable cull face again

* minor fix
2016-09-06 09:43:27 +08:00
raven02 03a5b5be1a DX12: Align to multiple of 4 block for DXTC format (#2125) 2016-09-05 08:47:45 +08:00
raven02 ad39615141 Revert "RSX: fix unknown vertex base type" (#2122) 2016-09-04 18:29:21 +08:00
raven02 691d87978b RSX: fix wrong format 0x9b (#2121) 2016-09-04 15:23:43 +08:00
raven02 ebf54d6acd RSX: fix unknown vertex base type (#2120) 2016-09-04 14:36:37 +08:00
vlj 73e50b970d Remove settings UI change that accidently slipped in. 2016-08-27 15:40:41 +02:00
vlj 11858dce1a rsx: Vertex array attributes don't need to be stored outside of regs. 2016-08-27 15:40:41 +02:00
vlj a64053fd68 rsx: Remove some unused code. 2016-08-27 15:40:41 +02:00
raven02 bb66b97251 GL: minor fixes (#2105)
* Minor fixes

* temporary disable 2-sided lighting

* Disable user clip planes until they are properly handled
2016-08-27 14:12:44 +08:00
raven02 6e07e07cd0 GL: enable 2-sided lighting (#2103) 2016-08-27 00:26:23 +08:00
raven02 a270ac7f02 GL: re-use common fp/vp decompiler (#2100) 2016-08-26 22:23:23 +08:00
Vincent Lejeune 42b518cf7e rsx: use range for vertex buffer attribute. 2016-08-24 21:58:59 +02:00
raven02 5b225ad59f GL: ignore texture upload if invalid dimension found (#2097) 2016-08-24 21:19:16 +08:00
kd-11 8ebe9d7dc2 gl: Dont use hard assertions on error, driver reporting is so much better (#2094) 2016-08-24 17:31:27 +08:00
kd-11 9beb2d8ae0 vk/rsx: Bug fixes (#2092)
* vk: fix separate front and back lighting

* vk: Inlined arrays can have emulated primitives too!

* vk: Use float input attribs for better compatibility

* vk: Free resources during shutdown
2016-08-24 08:50:07 +08:00
raven02 12099b3144 RSX: fix invalid format (0x1) (#2088) 2016-08-24 02:08:05 +08:00
raven02 2aa2c1811f Vulkan : add structure type for color blend state (#2091) 2016-08-23 19:07:51 +08:00
raven02 af1ff4439d RSX: fix wrong format 0x9c (#2087) 2016-08-23 16:18:58 +08:00
raven02 51bdf1e3ed DX12: fix invalid dimension (#2086)
DX12: workaround invalid texture dimension
2016-08-23 11:06:01 +08:00
raven02 d7a899f984 Vulkan : refine 2-sided lighting approach (#2083) 2016-08-23 08:24:22 +08:00
raven02 707523c679 Vulkan: set ColorBlendState info (used by logicOp) (#2080)
* Vulkan: set ColorBlendState info (used by logicOp)

* fix attachmentCount
2016-08-22 23:14:32 +08:00
raven02 e04de77f82 Vulkan : Ignore clear if surface target is set to CELL_GCM_SURFACE_TARGET_NONE (#2081) 2016-08-21 18:18:26 +08:00
raven02 be9cebbc8f Workaround id_min/max (#2079) 2016-08-20 21:27:50 +08:00
Nekotekina c20756136a Minor diagnostic added 2016-08-18 13:29:53 +03:00
Nekotekina 066e3006bf cellGameCreateGameData fixed
cellGameDataCheck fixed
PARAM.SFO creation fixed
2016-08-17 21:59:42 +03:00
Nekotekina bbb0effe23 Minor fixes
cellSyncMutexTryLock fixed
2016-08-17 19:50:20 +03:00
Nekotekina ad174eb12c error_code implemented
Reports based on formatting system
ppu_error_code removed
arm_error_code removed
2016-08-16 18:57:44 +03:00
Nekotekina 1c33c012ad ERROR_CODE macro removed 2016-08-15 19:18:05 +03:00
Nekotekina 3c82e1a58d Silly macro removed-3 2016-08-15 18:30:33 +03:00
Nekotekina dbcb5df172 WRAP_EXPR macro removed 2016-08-15 17:11:45 +03:00
Nekotekina 84d0d396ed EXPECTS usage removed 2016-08-15 16:29:38 +03:00
Nekotekina 56b9b38c9c verify() fix 2016-08-15 14:59:19 +03:00
Nekotekina 05fb57baff VERIFY macro removed 2016-08-15 03:13:31 +03:00
Nekotekina cc46f2d7e6 LOG macro improved 2016-08-15 00:04:42 +03:00
Nekotekina 1f3433464c ENSURES usage removed 2016-08-14 22:41:01 +03:00
Nekotekina 0f87c4485d Silly macro removed-2 2016-08-14 18:19:42 +03:00
Nekotekina 5e0489dcc0 cpu_init removed 2016-08-14 18:07:34 +03:00
Nekotekina 2d512121f1 XAudio2.8+ fix 2016-08-12 23:45:02 +03:00
Nekotekina 7a2802a5e0 Silly macro removed 2016-08-12 19:31:28 +03:00
Vincent Lejeune 619d605a9e rsx: remove vertex_draw_count 2016-08-11 19:47:14 +02:00
Vincent Lejeune b8721b6475 gl: Refactor vertex_buffer.cpp 2016-08-11 19:47:14 +02:00
Vincent Lejeune a94b9d38b0 vk: refactor VKVertexBuffers. 2016-08-11 19:47:14 +02:00
Nekotekina fc56e70172 vm::ptr<char> formatting 2016-08-11 16:47:20 +03:00
Nekotekina bdeccd889f cpu_type removed, system_type added
cpu_state -> cpu_flag
vm::stack_allocator template improved
ppu_cmd type changed to enum, cmd64 type added
2016-08-09 17:14:41 +03:00
raven02 009ac37a7d XAudio : reorder versioning 2.9>2.7>2.8 (#2048) 2016-08-09 15:55:11 +08:00
kd-11 44ae306e6b vk: delay texture removal when cache is clobbered (#2045) 2016-08-09 08:47:42 +08:00
Nekotekina a7e808b35b EXCEPTION macro removed
fmt::throw_exception<> implemented
::narrow improved
Minor fixes
2016-08-08 19:19:32 +03:00
Nekotekina 46735d6b3d New bitsets (experimental) 2016-08-08 16:29:37 +03:00
Nekotekina 1a7ea2d235 fmt_unveil<> fix 2016-08-07 17:05:35 +03:00
Nekotekina 4438163da1 Gui log bugfix 2016-08-07 14:39:29 +03:00
Nekotekina b7eda71673 XAudio2.7 bug workaround 2016-08-06 18:19:38 +03:00
Nekotekina 0fcbd43db9 Specify XAudio sample rate and ch num 2016-08-06 16:21:29 +03:00
Nekotekina 4de513eb01 Increase XAudio thread priority 2016-08-06 15:40:51 +03:00
Nekotekina 7be259217a Error loading image fix 2016-08-06 13:39:05 +03:00
Nekotekina c9a789bf76 PPU LLVM fix 2016-08-06 13:39:03 +03:00
Vincent Lejeune fb47945930 rsx: Returns u32 instead of size_t for get_index_count/type_size 2016-08-06 00:25:23 +02:00
Vincent Lejeune eb1d4811de rsx: Use a "draw clause" object in rsx_state. 2016-08-05 23:33:40 +02:00
Nekotekina d646fbb94f Fmt/Log fixes 2016-08-05 20:59:25 +03:00
Vincent Lejeune 7a6f5b6ee5 rsx: Move index pointer generation in rsx::thread. 2016-08-05 17:54:44 +02:00
raven02 8ff155a2c9 Regression fix #2029 (#2030) 2016-08-05 14:38:58 +08:00
Nekotekina f7dcaa4a68 cellSysutilCheckCallback fix 2016-08-04 22:36:41 +03:00
Nekotekina 5a36c57c57 Formatting system improved
`unveil<>` renamed to `fmt_unveil<>`, now packs args to u64 imitating va_args
`bijective...` removed, `cfg::enum_entry` now uses formatting system
`fmt_class_string<>` added, providing type-specific "%s" handler function
Added `fmt::append`, removed `fmt::narrow` (too obscure)
Utilities/cfmt.h: C-style format template function (WIP)
Minor formatting fixes and cleanup
2016-08-04 21:34:00 +03:00
raven02 4dd67cdd54 texture: ignore when texture width > pitch 2016-08-04 17:54:34 +08:00
kd-11 47a9c8d731 vk/gl: bug fixes (#2018)
* vk: use null sampler for invalid/broken texture configurations

* gl: Do not consider 32_BIT_EXPORTS flag for depth writes
2016-08-04 03:33:52 +08:00
raven02 208f4c3e27 vk: front_diff_color typo fix (#2016)
* vk: typo fix

* continue in for loop
2016-08-02 23:54:49 +08:00
raven02 61c6f82f74 Regression fix #1995 (#2014) 2016-08-01 19:47:14 +08:00
Nekotekina e6bd91ada0 id_manager: embedded RTTI 2016-08-01 12:51:47 +03:00
Nekotekina e585939ac2 id_manager::id_key implemented 2016-08-01 01:35:53 +03:00
Nekotekina 3576e13e9a emucore.vcxproj fix 2016-08-01 01:35:37 +03:00
Vincent Lejeune 9e7902455d rsx: Fix warning because of unused arguments 2016-07-31 19:19:21 +02:00
Nekotekina 68cf570b58 Implemented rsx::invalid_method 2016-07-31 18:16:51 +03:00
Nekotekina 1c69eb2b73 rsx_method_t extended
rsx_methods.cpp cleanup
2016-07-31 18:16:49 +03:00
Nekotekina 6a9f3040e1 rsx_methods.cpp fix 2016-07-31 18:16:48 +03:00
Vincent Lejeune 22a89a272e Move all gcm enums into separate header/cpp. 2016-07-31 17:04:30 +02:00
Vincent Lejeune 4c46bde315 rsx: Inline rsx_state and texture constructors. 2016-07-31 16:48:09 +02:00
Nekotekina 0578430fd0 XAudio2 version priority 2016-07-30 20:25:46 +03:00
Vincent Lejeune b9f4c15ec0 vm: Add missing headers.
vm.h relies on memory (std::shared_ptr) and functionnal (std::function).
2016-07-30 18:39:26 +02:00
Vincent Lejeune 15500d4ee9 rsx: implement serialization of rsx states. 2016-07-30 18:39:26 +02:00
Vincent Lejeune 2528fc4555 Add cereal dependency 2016-07-30 18:39:26 +02:00
Nekotekina f8719c1230 PPUThread refactoring
`CallbackManager` removed, added _gcm_intr_thread for cellGcmSys
`PPUThread` renamed to `ppu_thread`, inheritance allowed
Added lightweight command queue for `ppu_thread`
Implemented call stack dump for PPU
`get_current_thread_mutex` removed
`thread_ctrl::spawn`: minor initialization fix
`thread_ctrl::wait_for` added
`named_thread`: some methods added
`cpu_thread::run` added
Some bugs fixes, including SPU channels
2016-07-30 16:35:02 +03:00
kd-11 33c59fa51b vk: optionally center/offset images when scaling (#1998) 2016-07-30 10:07:39 +08:00
Vincent Lejeune ac771f951d rsx: Copy state in capture frame call 2016-07-27 20:20:35 +02:00
Vincent Lejeune 8b12379eb3 rsx: Use bitfield template to decode values. 2016-07-27 18:38:36 +02:00
jypem 2064f1cb80 Handle error when loading game icon (#1687) 2016-07-26 14:39:12 +03:00
Lena e377199e41 Ensure the 'shaderlog' directory exists (#1986)
Should fix #1984
2016-07-26 00:15:14 +03:00
Nekotekina a8f977ed9e XAudio 2.8 test fix 2016-07-25 19:30:21 +03:00
Nekotekina 44bee7d0ba LLVM: Use small code model
Global variables modified:
__mptr: pointer to memory base addr
__cptr: pointer to function map addr

Use 32 bit pointers in function map
2016-07-25 18:26:02 +03:00
raven02 1672c93a2d Revert "Audio : allow XAudio2 to run its own thread" (#1988) 2016-07-25 09:09:14 +08:00
raven02 2a3029a62c PPU: register undocumented functions in cellSysmodule (#1987) 2016-07-25 08:43:02 +08:00
raven02 53b2e19d96 Audio : allow XAudio2 to run its own thread (#1980) 2016-07-25 08:25:02 +08:00
Nekotekina 5c9f83c3a8 PPU LLVM: New "stack" strategy
Minor pessimization: all memory accesses are volatile
Special handling of prologues and epilogues
Minor optimizing assumption for SP
2016-07-24 21:47:45 +03:00
Nekotekina 712c04b2ad PPU Analyser update
WIP, nothing changed
2016-07-24 21:06:10 +03:00
Nekotekina 39dadad534 PPU executable memory protection
Experimental commit, not improved for PRX
Also fixed minor bug in PRX loader
2016-07-24 21:06:09 +03:00
Nekotekina a026d35c97 sys_interrupt_thread_eoi fixed
thread_ctrl::interrupt improved
BIND_FUNC improved: preparations
2016-07-24 21:06:07 +03:00
Nekotekina 7ccdea7822 Removed std::enable_shared_from_this
Minor ID manager refactoring
2016-07-24 21:06:05 +03:00
kd-11 09ae45c566 vk: Conform to current spec (#1981)
* vk: define rtt images with transfer_dst set

* vk: Bind a buffer view for attribs with undefined data

* vk: Properly define renderpass clip region to fit the framebuffer

* vk: respect type bits from returned memory requirements
2016-07-25 00:28:49 +08:00
Nekotekina deeb4acbe5 Partial revert of 6ae54ae27b 2016-07-22 19:26:58 +03:00
Nekotekina 5eb98b745f cellVdec fixed (requires LLE dmux)
Basic MPEG2 support
2016-07-22 18:29:05 +03:00
kd-11 74fec275c7 gl: Clear depth surfaces before use; Vulkan cleanup (#1957)
* vk: Clean up a few trap messages

vk: silence a few compile errors

* gl: Clear new depth surfaces to max_depth

gl: use glClear to clear depth buffers
2016-07-22 07:31:58 +08:00
Nekotekina a0c0df6e9d Dynamic XAudio version detection 2016-07-21 17:46:46 +03:00
raven02 0ae8cc4467 D3D12: revert heap size back to 896M (#1960)
* D3D12: revert heap size back to 896M

* Update D3D12GSRender.h
2016-07-21 14:50:06 +08:00
raven02 f36f478281 vk: refactor compare_op (#1959) 2016-07-21 13:35:06 +08:00
Nekotekina 0227c03366 GUI logging improved
logs::listener resurrected
rpcs3 version: constexpr
2016-07-21 01:54:39 +03:00
raven02 8157e7cac8 Obsolete 3D monitor (#1955) 2016-07-20 23:45:26 +08:00
Nekotekina ae634bb87e RSX exception fix
VBlank thread management fix
2016-07-20 15:16:19 +03:00
Vincent Lejeune e9bee80f4b rsx: Use register_decoder for vertex attributes. 2016-07-19 20:28:32 +02:00
kd-11 854bc1db60 dx12: simplify constant color blend equation/algorithm checks 2016-07-19 19:20:57 +03:00
kd-11 d3837de571 dx12: Constant color/alpha blending 2016-07-19 19:20:57 +03:00
raven02 e1ff3f4674 rsx: use fragment_textures_count (#1948)
* rsx:  use fragment_textures_count

* Typo: unknow -> unknown
2016-07-19 22:50:40 +08:00
Nekotekina ceb4cb59ac Typo fix: comparaison->comparison 2016-07-19 14:17:25 +03:00
Nekotekina fc9fdca3f6 Make TLS great again
And clean System.h a bit
2016-07-19 14:06:39 +03:00
raven02 6296453ef3 D3D12: inline stencil test as GL and Vulkan backend (#1945) 2016-07-19 16:52:14 +08:00
Nekotekina 04926374f7 PKG installer fix 2016-07-18 21:28:58 +03:00
raven02 7ac9d3b679 D3D12/Vulkan : swizzle texture format G8B8 (#1931)
* D3D12: swizzle texture format G8B8

* Vulkan: swizzle texture format G8B8
2016-07-18 20:16:11 +08:00
kd-11 2e5b01faca vk: Fix vertex winding (#1934)
* vk: do not flip face winding based on shader origin

* vk: disable face culling
2016-07-17 22:55:59 +03:00
kd-11 2337bf204c vk/dx12: Enable/fix separate back and front lighting (#1927)
* vk: separate specular color

rsx: separate front color output from back color output

re-enable front-back diffuse lighting

vk: fix front face selection and actually enable face culling

* dx12: Hide constant-key blended visuals (by common use of factor, 1-factor)

* dx12: Fix 2 sided lighting when the shader does not compute both outputs

* vk/dx12: confirm that src register exists before copying for 2-sided lighting
2016-07-18 00:57:50 +08:00
Vincent Lejeune c6ed5a8e6b gl: Fix direct call to rsx::method_registers array. 2016-07-17 17:31:53 +02:00
Vincent Lejeune d97cdb9fbf rsx: Gather most rsx commands pretty printing and state modification function in a single file.
rsx_decode.h implements a "rsx_decoders" template class that is specialized for most GCM command
found in rsx command buffer. 3 static members are defined : a "decode" function that turns command
value into a more meaninfull type if applicable (for instance bool for _enabled* command, surface
formats for set_surface_format command...), a "commit_rsx_state" that modifies a given rsx_state
structure when the command is parsed, and a "dump" function used in rsx_debugger for pretty printing.
Hopefully having the 3 functions in a single place for every command will act as a self documenting
list of rsx command buffer opcode.

rsx_state is also expanded into several explicit variables instead of being stored into a u32 array.
This should makes debugging easier (Visual Studio will display the exact value of these member for instance)
as well as preparing rsx_state for serialisation/deserialisation.

The vertex array and textures opcode are not concerned atm for bisecting purpose.
2016-07-17 17:31:53 +02:00
Nekotekina 692d9dd4ae NV0039_OFFSET_IN fix 2016-07-17 15:03:13 +03:00
Nekotekina 438e057dc8 Partial commit: sys_fs 2016-07-17 02:27:52 +03:00
Nekotekina 96728a83f6 Partial commit: sys_memory, sys_mmapper 2016-07-16 14:46:01 +03:00
Nekotekina f5e65e4ad9 Partial commit: sys_tty 2016-07-16 14:45:59 +03:00
Nekotekina c95f6c8c56 Partial commit: sys_vm 2016-07-16 14:45:58 +03:00
Nekotekina 73c2115968 BEType: explicit alignment specifier 2016-07-16 14:45:57 +03:00
raven02 2085d318bb rsx: typo fix (#1921) 2016-07-15 20:19:15 +03:00
Nekotekina c77dec6d6a PPU Analyser improved
Fix for old homebrews
2016-07-15 13:42:22 +03:00
AnnieL dc34d5b350 cell: add several error (return) codes and definitions (#1914)
* cellHttp: add error codes

Adds error codes for cellHttp and cellHttps

* libDaisy: adds error codes and definitions

Adds error codes, assertations and definitions for cellDaisy.

* cellHttpUtil: add error codes

Adds error codes for cellHttpUtil.

* cellCelp8Enc: moves error codes, adds definitions

Moves error codes to cellCelp8Enc.h, adds some definitions.

* cellCelpEnc: moves error codes, adds definitions

* cellJpgEnc: adds error codes and definitions

Moves the existant error codes to cellJpgEnc.h and adds more error codes
/ definitions.

* cellVoice: moves error codes, adds definitions

Moves error codes to cellVoice.h, adds most cellVoice definitions

* Fix typos
2016-07-15 00:02:07 +03:00
AnnieL ca835ba68a cellGame: unknown category temporary fix (hack) (#1909)
All the games I've been trying to load from outside RPCS3's bin directory are returning me empty directories
```
{PPU[0x3] Thread (main_thread) [0x011223d8]} class fmt::exception thrown: cellGameBootCheck(): Unknown CATEGORY: 
```

This is a hack for when the category is empty or unknown. 
We assume it's a disk game and proceed with the emulation.
2016-07-14 23:12:26 +03:00
kd-11 ce56351554 gl: Fix fragment constants streaming (#1907) 2016-07-15 02:25:38 +08:00
raven02 d60b292ef1 Modules: savedata fix (#1910) 2016-07-15 00:28:26 +08:00
Nekotekina eb377f425c PPU LLVM: Analyser fix
ppu_branch_target removed
2016-07-14 16:27:14 +03:00
kd-11 6401eefb26 gl: reset texture scaling factor during bind
reset vertex textures as well
2016-07-13 21:01:16 +03:00
kd-11 ea6f3ff5ed gl: Properly determine front face winding 2016-07-13 21:01:16 +03:00
kd-11 97581d8635 gl: Fix primitive type checks 2016-07-13 21:01:16 +03:00
Nekotekina 0a5b518aea PPU Analyser fix 2016-07-13 02:54:34 +03:00
Nekotekina 94da0dbd4d PPU LLVM improvements
Removed interpreter dependencies
Reciprocal instructions improved
2016-07-12 17:33:13 +03:00
raven02 87e38118a5 Ignore clear if surface target is set to CELL_GCM_SURFACE_TARGET_NONE (#1898) 2016-07-12 21:52:11 +08:00
Nekotekina ba8fd825ec fs::get_data_dir implemented 2016-07-11 22:12:39 +03:00
kd-11 2c981cf940 rsx: mark register access with divider op enabled and frequency 1 (#1892) 2016-07-12 02:53:52 +08:00
Nekotekina 11f7b167ae Update Vulkan submodules
Temporarily disabled Vulkan build for Linux
2016-07-11 19:27:50 +03:00
Nekotekina 06c6c8212d Minor fixes
elf_object
Loader fix
Analyser fix
2016-07-11 16:30:11 +03:00
raven02 b89961f01d rsx: set frame limiter before rsx->flip() (#1885) 2016-07-11 21:00:04 +08:00
kd-11 59df7e7104 glsl: not all shaders write to col0 (#1884)
fix typo
2016-07-11 09:05:13 +08:00
kd-11 bbf7e6332c glsl; dump shaderlog (#1883)
fix typo
2016-07-11 01:16:31 +08:00
Lena 8c3b3f7ab4 CMake: improve compiler checks (#1847)
Moves the compiler check out of rpcs3/CMakeLists.txt and adds them
into rpcs3/cmake_modules/ConfigureCompiler.cmake
Add better compiler checks and eliminate a TODO
2016-07-10 16:15:56 +08:00
raven02 47987efb75 rsx: add default case for to_front_face() (#1879) 2016-07-10 08:33:20 +08:00
raven02 ed8ebda804 vk: add missing compare func not_equal (#1876) 2016-07-10 04:32:09 +08:00
raven02 d4da0e052d sys_net: add few socket options (#1874) 2016-07-10 02:30:56 +08:00
kd-11 6705a6ecc9 rsx: properly check for inlined array before discarding draw (#1877) 2016-07-09 22:54:44 +08:00
raven02 dfa968863a DX12: get_scissor() fix (#1868) 2016-07-09 01:00:15 +08:00
raven02 70885ada67 RSX: throw exception removal for user_command() (#1872) 2016-07-09 00:22:10 +08:00
raven02 1f4ebf1501 RSX: check vertex_draw_count 2016-07-08 16:56:12 +08:00
Vincent Lejeune 772706ca4c Factorize rsx state 2016-07-07 21:38:57 +02:00
Ivan 77594dc66c PPU LLVM: New analyser (#1858)
Minor fixes
VEX prefix support
2016-07-07 21:42:39 +03:00
GhettoGirl 758897a929 GUI: add prx library search functionality in settings dialog
Add the possibility too lookup specific libraries in the settings dialog.
2016-07-05 20:46:51 +02:00
GhettoGirl 5c4af45bf5 GUI: improve prx library selection
Sorts the libraries in the settings dialog alphabetically, so they are easier to find.
Sorts selected and unselected modules alphabetically seperatly.
2016-07-05 00:00:46 +02:00
raven02 effd379c25 Vulkan/DX12 : refactor cull face code (#1849)
* Vulkan/DX12 : refactor cull face code

1

* Add optimal build options to CMakeLists (#1841)

Provides two options when building RPCS3

    USE_SYSTEM_FFMPEG BOOL (default: OFF)
    USE_SYSTEM_LIBPNG BOOL (default: OFF)

These options lets the user select between the system provided and builtin libraries of ffmpeg and libpng to overcome possible system issues.

Also adds support for older libpng releases if the user doesn't have libpng 1.5 or higher.

* DX12: depth buffer compare should perform only if depth testing is enabled (#1848)

* GL: front face regression fix (#1854)

* GUI: Add bulk decryption of LLE modules (#1845)

Adds a new menu to "Tools" called "&Decrypt SPRX libraries" which opens a dialog to select
multiple *.sprx files, which are than decrypted all at once.
This speeds up the LLE module decryption and saves users a lot of time.

The output path is the same where the input module resides and the extension is changed
to *.prx

* vk: Avoid double-copy for vertex attributes (#1852)

* vk: Avoid double-copy for vertex attributes

fix buffer overflow

vk: Fix vertex attrib offset_in_dst for batched draw calls

* whitespace fix only
2016-07-03 10:35:51 +08:00
kd-11 a6b7c9c309 vk: Avoid double-copy for vertex attributes (#1852)
* vk: Avoid double-copy for vertex attributes

fix buffer overflow

vk: Fix vertex attrib offset_in_dst for batched draw calls

* whitespace fix only
2016-07-02 22:27:53 +08:00
Lena 85c4392b34 GUI: Add bulk decryption of LLE modules (#1845)
Adds a new menu to "Tools" called "&Decrypt SPRX libraries" which opens a dialog to select
multiple *.sprx files, which are than decrypted all at once.
This speeds up the LLE module decryption and saves users a lot of time.

The output path is the same where the input module resides and the extension is changed
to *.prx
2016-07-02 19:19:32 +08:00
raven02 c3bac7c92b GL: front face regression fix (#1854) 2016-07-01 20:47:56 +08:00
raven02 45d41267f5 DX12: depth buffer compare should perform only if depth testing is enabled (#1848) 2016-07-01 15:02:40 +08:00
Lena 869e10027d Add optimal build options to CMakeLists (#1841)
Provides two options when building RPCS3

    USE_SYSTEM_FFMPEG BOOL (default: OFF)
    USE_SYSTEM_LIBPNG BOOL (default: OFF)

These options lets the user select between the system provided and builtin libraries of ffmpeg and libpng to overcome possible system issues.

Also adds support for older libpng releases if the user doesn't have libpng 1.5 or higher.
2016-07-01 12:07:16 +08:00
raven02 246b593783 Vulkan/GL: add default case for front face in case of garbage value (#1844) 2016-06-30 12:46:25 +08:00
raven02 d22017bfca DX12: using better approximation for constant color/alpha blending (#1839)
* DX12: using better approximation for constant color/alpha blending

* typo fix

* Comment updated.
2016-06-28 20:19:04 +08:00
DH 989f954432 Added WIP vertex textures support 2016-06-28 12:58:44 +03:00
DH 4d88296485 RSX shaders cache: group programs by indexes 2016-06-28 12:54:08 +03:00
DH 086e1c34dd RSX: added hack to the nv3089::image_in
Remove it when textures cache will be implemented properly
2016-06-28 12:52:10 +03:00
DH e6c6a7fb8b RSX: added proper nv0039::buffer_notify implementation from rsx_cache branch 2016-06-28 12:48:45 +03:00
DH 32830d45ff Improved shaders cache 2016-06-27 21:53:56 +03:00
Nekotekina 0ea0c21fed LLVM: Indirect call map 2016-06-27 19:34:14 +03:00
Nekotekina 7a921cbdf9 cpu_thread compressed 2016-06-27 16:43:57 +03:00
Nekotekina 9db7de29fb Syscall analysis implemented 2016-06-27 16:43:56 +03:00
Nekotekina a19b721c26 LLVM: Added JIT.cpp
Refactoring, used -fno-rtti option
2016-06-27 16:43:53 +03:00
Nekotekina 73ea020525 PPU LLVM: Thread context argument 2016-06-27 16:43:50 +03:00
raven02 2c10348408 DX12 : add remaining constant color/alpha blending (#1834) 2016-06-27 20:40:53 +08:00
DH 67a341fded Fixed _var_base move ctor 2016-06-27 03:22:22 +03:00
DH 44879dd9f3 Implemented alpha kill and fog 2016-06-27 01:52:08 +03:00
DH 6ae54ae27b RSX: Added legacy non-array vertex attributes support (if count of elements > 1)
Fixed ps1ght games
2016-06-26 21:32:50 +03:00
DH bf8a20c4b9 Avoid using flip hack if it's possible
Also added some documentation about it
2016-06-26 21:32:49 +03:00
DH 55bc9eda9a Do not throw exception if cellDiscGame* executed
That not a critical situation, simple message in the log should be a good enough
2016-06-26 21:32:48 +03:00
DH e296f81a37 Shaders decompiler: support non 2D textures
Do not validate programs with undefined textures uniforms
Minor fix
2016-06-26 21:32:48 +03:00
raven02 d69a4173fa vk: push back border color to sampler (#1832)
* vk: push back border color to sampler

* use approximate color

* Add TODO for VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK
2016-06-26 21:25:25 +08:00
raven02 4a08e8cd0b sys_ppu_thread_create break fix (#1824) 2016-06-25 22:36:48 +08:00
raven02 7779742ac1 GL: fix few texture swizzle remap (#1823)
* GL: fix few texture swizzle remap

* GL: add texture format HILO8 & HILO_S8

* VK: add mapping for X32_FLOAT
2016-06-25 20:15:10 +08:00
raven02 091b6711ae sys_net: set other options using setockopt() (#1815)
* sys_net: set other options using setockopt()

* typo fix

* Typo fix #2
2016-06-23 09:54:46 +08:00
DH 714e07b1dc OpenGL rendered: use textures cache 2016-06-23 01:01:29 +03:00
DH 001ab05f1a Fixed LLVM & MemLeak builds 2016-06-22 23:03:46 +03:00
DH f30d71da6c OpenGL renderer: improved vertex attributes setup
Minor fixes
2016-06-22 22:46:47 +03:00
DHrpcs3 cbf880fb71 OpenGL renderer: Proper clipping implementation 2016-06-21 19:56:07 +03:00
DHrpcs3 8fd3064905 OpenGL renderer: check for gl errors in release builds.
Ignore null-sized textures
Cleanup
2016-06-21 19:56:06 +03:00
DHrpcs3 e83c387ebe OpenGL renderer: Fixed texture bias setup. 2016-06-21 19:56:05 +03:00
DHrpcs3 3b5cd4845e OpenGL renderer: use correct MVP matrix. Cleanup
Simplified gl::ring_buffer helper
2016-06-21 19:56:05 +03:00
DHrpcs3 c0487a634e Added rsx_program_decompiler to the CMakeLists 2016-06-21 19:56:04 +03:00
O1L 67fe5e1107 Fill fragment constants 2016-06-21 19:56:02 +03:00
O1L 1778113b71 Use sampler buffers in vertex shaders 2016-06-21 19:56:01 +03:00
O1L 8637754d6a Missed changes 2016-06-21 19:56:00 +03:00
O1L 083c4fc855 Try to use new shaders decompiler in OpenGL backend 2016-06-21 19:56:00 +03:00
Nekotekina 251fb86ab0 PPU LLVM: Some instructions simplified 2016-06-21 18:08:21 +03:00
Lena 5853332db7 Fixed the frame icon (#1811)
There was a tiny duplicate of the icon itself in the left upper corner.
2016-06-21 17:03:07 +03:00
Nekotekina 860926d731 File op buffer 2016-06-21 13:22:07 +03:00
Nekotekina eb889920e6 IdManager fix
Debug build fixed
Allowed get/remove with forward declarations
2016-06-21 12:23:28 +03:00
raven02 c96057296a Fix invalid map<K, T> key error (#1801) 2016-06-20 06:43:13 +08:00
Nekotekina a8bebcba55 LLVM AOT 2016-06-19 21:29:48 +03:00
Nekotekina 6fa5e2cc7c PPUAnalyser.h added 2016-06-19 20:50:21 +03:00
raven02 298c9fea22 vk: Better VRAM heap selection by memory properties (AMD) 2016-06-19 13:49:25 +08:00
raven02 244f3dfb89 DX12: set the heap size based on available vram (#1786) 2016-06-19 11:01:11 +08:00
raven02 28366d35d2 VK: add cull mode and front face (#1789) 2016-06-19 09:53:49 +08:00
raven02 f6b5f02501 Merge branch 'master' into gl-flip 2016-06-19 00:28:02 +08:00
kd-11 833c100850 vk: Properly enable window resizing 2016-06-18 15:39:07 +03:00
DHrpcs3 bc63eaea48 Added rpcs3 api (dynamic library) 2016-06-17 21:26:06 +03:00
DHrpcs3 795170635f Added dynamic_library utility 2016-06-17 21:26:05 +03:00
DHrpcs3 b52e885cde Added rpcs3 version object
Removed _PRGVER_ macros
2016-06-17 21:26:04 +03:00
raven02 079411eee8 Texture format W16_Z16_Y16_X16_FLOAT fix (#1777) 2016-06-17 09:32:07 +03:00
raven02 9f1ee5bd28 OGL: disable pixel processing test before flip 2016-06-15 21:51:51 +08:00
kd-11 3a63b62486 gl: dynamically determine texture buffer offset alignment
fix alignment issues for gpus where align < 16 is ok
2016-06-14 00:08:23 +03:00
kd-11 28a5d4d4f0 Add a workaround for a khronos spec bug 2016-06-14 00:08:23 +03:00
kd-11 6761d4a30c gl: use streaming buffers for uniform & elem buffer as well
gl: stream uniform data using stream buffer

gl: vertex streaming improvements and bugfixes

gl: add basic timing info check for profiling

gl: ebo streaming fixes and enhancements
2016-06-14 00:08:23 +03:00
kd-11 ed94626411 gl: use unsynchronized buffer streaming for attribs
fix linux build
2016-06-14 00:08:23 +03:00
kd-11 40a598b0ab gl/vk: Quickly ignore access violations outside cache range 2016-06-14 00:08:23 +03:00
raven02 ea528a1ced Write shader log in seperate directory (#1755)
Write shader log in separate directory
2016-06-13 19:53:50 +03:00
raven02 caf5894152 Vulkan: add two sided stencil/logic op/depth bounds test support (#1767)
* Vulkan: add two sided stencil support

* Vulkan: add logic op support

* Vulkan: add depth bound test support

* Drop off wrong case

* Minor fixes
2016-06-13 14:10:59 +03:00
kd-11 3956b21cb7 vk/gl/dx12: Dynamic cb flush for vulkan; fix glsl/hlsl vertex shader generation for some games; dx12: ignore fbo textures during flip if no surface target is set (#1766)
* gl/vk/dx12: Fix vertex shader code generation for buggy games

dx12: revert vsh attribute changes

* vk: dynamically flush command buffers if we exceed available resources

* dx12: do not prepare flip texture if it has not been initialized
2016-06-11 16:24:27 +03:00
kd-11 35ab3b0cd8 gl/vk/dx12: re-implement pack/unpack operations (#1764)
dx12: implement pack/unpack operations

dx12: Fix shader compilation when pack/unpack is used

dx12: pk16/up16 - relax half-float range to more realistic values
2016-06-10 14:42:48 +03:00
raven02 db27ea923d VP: add few opcodes comment for vec/sca (#1750) 2016-06-10 01:03:43 +03:00
kd-11 4260f68f85 gl/vk: Fix ub256 and s32k vertex attributes; silence some unnecessary debug errors (#1757)
* gl/vk: Sample integer attribs with integer samplers

* gl: silence useless DPRINTs where behaviour has already proven correct
2016-06-08 12:39:08 +03:00
kd-11 c4102f3b18 vk/gl: Enable alpha test in shaders (#1743) 2016-06-05 20:31:23 +03:00
raven02 9710044134 Remap color component depends on RTT or RSX memory (#1744) 2016-06-05 11:11:58 +03:00
raven02 39767b8d46 Texture bias minor fix (#1745) 2016-06-04 19:12:14 +03:00
raven02 e5a792515e GL: set texture bias (#1742) 2016-06-04 14:41:53 +03:00
raven02 8f67c910ab FP: Implement REFL and LRP (#1712) 2016-06-04 10:23:45 +03:00
kd-11 6b3c47a42a vk: change default border color to black; fix GEQUAL compare op 2016-06-03 17:07:48 +03:00
kd-11 60a7f9b3f2 vk: Fix rtt formats and component sampling
vk: Fix for rtt image sampling
2016-06-03 17:07:48 +03:00
kd-11 d22672b156 vk: Disable user clip planes
Use // for comments as requested
2016-06-03 17:07:48 +03:00
kd-11 dc970c513a gl: Respect more requested surface format configurations 2016-06-03 17:07:48 +03:00
kd-11 2bcc755fca Ignore clear if surface target is set to CELL_GCM_SURFACE_TARGET_NONE 2016-06-03 17:07:48 +03:00
Raul Tambre 92446de9d9
Change "start after boot" default value to true 2016-06-03 08:56:37 +03:00
Raul Tambre 2e5d20c315
sys_net: Use IDM, initialize networking on startup 2016-06-03 08:56:37 +03:00
Raul Tambre 31ec26a7a1
Big sys_net improvements and fixes
* Error codes are now properly handled
* Couple more functions implemented
* Support for setting certain socket information
* socketselect() handles Unix waiting behaviour on Windows
* accept() fixed
2016-06-03 08:56:37 +03:00
Raul Tambre 8d2b6f6054
Implement sceNpUtilCmpNpId
Will need a full implementation of emulated network to be "fully"
implemented.
2016-06-03 08:56:37 +03:00
Raul Tambre b073ead988
cellUserInfo: Cleanup, notify about errors 2016-06-03 08:56:37 +03:00
Raul Tambre 97083ebba4
Implement cellFsAllocateFileAreaWithoutZeroFill
And a couple minor null pointer checks in sys_fs.
2016-06-03 08:56:37 +03:00
raven02 ee645d054d GL/Vulkan: Implement DP2A (#1708) 2016-06-02 13:07:43 +03:00
raven02 df6ee9c29d DX12: fix for surface color format (#1709)
#1652
#1594
2016-05-30 00:53:28 +03:00
raven02 fc1408e643 FP: Implement texture lookup with explicit gradients (#1706) 2016-05-29 18:33:41 +03:00
raven02 214d3d0f1a GL/Vulkan: write shader program log as .glsl and .spirv (#1720)
* GL: write shader program log as .glsl

* VK: write shader program log as .spirv
2016-05-26 21:47:37 +03:00
Ivan edc92843a7 Hotfix (#1705) 2016-05-24 01:59:39 +03:00
Nekotekina 266db1336d The rest 2016-05-23 16:22:25 +03:00
Nekotekina e2d82394f6 Cell 2016-05-23 16:22:23 +03:00
Nekotekina 38c444cfa1 PSP2 2016-05-23 16:22:22 +03:00
raven02 5c52521a0a Display render on title frame (#1701)
* Display render on title frame

* Fix few typo

* fix wrong condition
2016-05-23 13:08:34 +03:00
raven02 42423588c8 Use native function for OP_CODE_PK2/UK2 and UP2/UK2 2016-05-21 22:08:34 +08:00
John ce3fdeda5e Replace math macros by function calls from cmath. (#1695) 2016-05-19 19:15:56 +03:00
Josh Pruim 805c778f91 Added confirm to delete (#1698) 2016-05-16 21:42:35 +03:00
Ivan aafcf44581 Header optimizations (#1684)
Shouldn't break anything. I hope.
2016-04-27 01:27:24 +03:00
Ivan da7472fe81 Optimizations (#1680)
* Optimizations

1) Some headers simplified for better compilation time
2) Some templates simplified for smaller executable size
3) Eliminate std::future to fix compilation for mingw64
4) PKG installation can be cancelled now
5) cellGame fixes
6) XAudio2 fix for mingw64
7) PPUInterpreter bug fixed (Clang)

* any_pod<> implemented

Aliases: any16, any32, any64
rsx::make_command fixed
2016-04-25 13:49:12 +03:00
Ivan 75fe95eeb1 GSL moved from stdafx.h (#1676)
Added GSL.h helper for correct including
2016-04-20 02:32:27 +03:00
Ivan efc8779275 SPU channel optimization (#1675) 2016-04-19 16:04:02 +03:00
Nekotekina f63ec52479 D3D12 Adapter setting fix 2016-04-16 00:45:58 +03:00
Nekotekina 6312bf5323 rpcs3.rc recreated as rpcs3_.rc
I have no idea why it didn't compile.
Also recreated without UTF-16 BOM.
2016-04-15 20:19:28 +03:00
Nekotekina f8f067ca7c Partial commit: Emu (the rest) 2016-04-15 19:22:49 +03:00
Nekotekina c7738b8b37 Partial commit: Gui 2016-04-15 19:22:46 +03:00
Nekotekina 643c15c4e9 Partial commit: ARMv7 2016-04-15 19:22:44 +03:00
Nekotekina 0c7f763889 Partial commit: Memory 2016-04-15 19:22:43 +03:00
Nekotekina b85fc50854 Partial commit: Crypto 2016-04-15 19:22:41 +03:00
Nekotekina edd0965c1a Partial commit: Audio 2016-04-15 19:22:40 +03:00
Nekotekina 766f1b2b01 Partial commit: IO 2016-04-15 19:22:39 +03:00
Nekotekina 984aa44220 Partial commit: FS 2016-04-15 19:22:38 +03:00
Nekotekina b85a68e8a1 Partial commit: RSX 2016-04-15 19:22:36 +03:00
Nekotekina 4cf41305e0 Partial commit: Cell (deletions) 2016-04-15 19:22:35 +03:00
Nekotekina c4e99dbdb2 Partial commit: Cell 2016-04-15 19:22:34 +03:00
Nekotekina 42e1d4d752 Partial commit: Syscalls 2016-04-15 19:22:30 +03:00
Nekotekina 5637c22363 Partial commit: Modules (cell) 2016-04-15 19:22:29 +03:00
Nekotekina 7e30a0f464 Partial commit: Modules 2016-04-15 19:22:25 +03:00
Nekotekina 2553e45d76 Partial commit: Loader 2016-04-15 19:22:22 +03:00
Nekotekina 5fc6f59821 Partial commit: Preview 2016-04-15 19:22:15 +03:00
Raul Tambre 7c1ab47262 Fix OpenGL crash (#1668) 2016-04-08 22:18:46 +03:00
Danila Malyutin 6b5ee57718 rXml: use pugixml in header-only mode (#1665)
Fixes compilation in VS
2016-04-08 21:17:24 +03:00
Vincent Lejeune 3a3d264cb5 rsx/common/d3d12/gl/vulkan: Set dst stride in write_vertex_array_data_to_buffer. 2016-04-07 22:17:28 +02:00
Vincent Lejeune 2ae5a7ff39 rsx/common/d3d12/gl/vulkan: Use single overload for write_index_array_data_to_buffer. 2016-04-07 22:17:28 +02:00
Vincent Lejeune 2e17ea1490 rsx/common/d3d12/vulkan: Factorise data_heap between vulkan and d3d12. 2016-04-07 22:17:28 +02:00
Vincent Lejeune cbe119b457 rsx/common: Remove MIN2/MAX2 macro. 2016-04-07 22:17:28 +02:00
Raul Tambre 5ad060f150 Vulkan/DX12: Texture format fixes
DX12 also had a couple fixes
2016-04-07 21:34:32 +03:00
Raul Tambre 1ff4f77eaf Fix jstrchk to be TODO
It's actually not implemented properly...
2016-04-07 21:34:32 +03:00
Raul Tambre a8e15ce18a Fix forced_unit for unimplemented instructions
For SCT and SCB, the forced unit is always set to FORCE_NONE before
handling of the instruction. This makes the error for unimplemented
instructions' forced unit be incorrect. This fixes that.
2016-04-07 21:34:32 +03:00
Raul Tambre 3ee56627eb DX12 texture format fixes and improvements 2016-04-07 21:34:32 +03:00
Raul Tambre cedc023922 HLE: Implement RGBA->GA support, minor fixes 2016-04-07 21:34:32 +03:00
mpm11011 b57daef75a Pugixml to replace wx/xml in rXML
Pugixml to replace wx/xml in rXML

Change reinterpret cast to static cast.

Pass name in pred by reference
2016-04-06 17:35:06 -04:00
kd-11 dab1dda903 Specify buffers to read when blitting output to backbuffer 2016-04-06 11:16:49 +03:00
kd-11 1a61ef0440 Remove deprecated features from core profile 2016-04-06 11:16:49 +03:00
kd-11 e9766f1b76 Properly handle ssa input type (non-varying)
Properly handle ssa input as local (non-varying)
2016-04-06 01:22:01 +03:00
Vincent Lejeune 99717b7902 gl: Fix vertex buffer size. 2016-04-02 18:27:49 +02:00
Vincent Lejeune bad2d7f121 gl: Move vertex setting in a separate file. 2016-04-02 18:27:49 +02:00
Vincent Lejeune d59486295d gl: Supports 1D and 3D textures. 2016-04-01 00:52:51 +02:00
Vincent Lejeune 69d08b6691 vulkan: Support cube and 1D/3D textures. 2016-03-31 23:50:14 +02:00
Vincent Lejeune c95c4c32e6 vulkan: Always map at least 1 byte. 2016-03-31 23:50:14 +02:00
Vincent Lejeune 5a3cf5d9ac rsx/common: Remove extra "-2" in get_exact_mipmap_count non compressed format. 2016-03-31 20:40:19 +02:00
Vincent Lejeune ce072f25e2 d3d12: Move sampler DescriptorHeap selection in D3D12GSRender
Avoid sampler descriptor being stored on 2 heaps inside a single draw
call. Fix somes crashes.
2016-03-31 17:56:30 +02:00
Vincent Lejeune 4c0b5bbc62 gl: Correctly upload cubemap texture. 2016-03-31 00:15:19 +02:00
Vincent Lejeune 51a6862bf4 gl: Use right texture target. 2016-03-31 00:15:17 +02:00
Vincent Lejeune b6c827b17a gl: Fix r5g6b5 format. 2016-03-31 00:12:41 +02:00
Vincent Lejeune 17c4b2387e gl: Fix unnormalized coord sampling. 2016-03-31 00:12:41 +02:00
Vincent Lejeune 91d0229bc5 rsx/common: Use an help texture_dimension_extended to handle cubemap more cleanly. 2016-03-30 22:19:29 +02:00
Vincent Lejeune b7c539ad7a rsx/common: Make get_exact_mipmap_count take compressed format into account 2016-03-30 22:19:29 +02:00
Vincent Lejeune 77674be1c1 vulkan: Fix all warnings in VKGSRender project. 2016-03-30 21:16:53 +02:00
Vincent Lejeune 70903d46e6 vulkan: Reset command buffer after framebuffer flushing.
Fix a (false positive ?) layer error report about comand being called
before vkBeginCommandBuffer has been called.
2016-03-30 21:16:53 +02:00
Vincent Lejeune f86c079acf vulkan: Do not acquireNextImage twice when no rtt is present. 2016-03-30 21:16:53 +02:00
Vincent Lejeune 38d57eb02c vulkan: Remove unneeded dirty_frame boolean. 2016-03-30 21:16:53 +02:00
Vincent Lejeune d5e44f6224 vulkan: Fix stencil aspect mask sometimes missing. 2016-03-30 21:16:53 +02:00
Zangetsu38 3fbc3a3f00 vulkan: Add instruction for Persona 4 : Arena 2016-03-30 21:16:53 +02:00
Vincent Lejeune 73233fd347 rsx/common: Use typed class for texture filters. 2016-03-30 20:03:50 +02:00
Vincent Lejeune d971c4e0f6 rsx/common: Use typed enum for max anisotropy. 2016-03-30 20:03:50 +02:00
Vincent Lejeune 7f25720bd3 rsx/common: Use a typed enum for texture wrap mode. 2016-03-30 20:03:50 +02:00
Vincent Lejeune f2c82d3cf4 rsx/common: Use a typed class for texture dimension. 2016-03-30 20:03:50 +02:00
Vincent Lejeune 08b47616b6 d3d12: Fix updated texture state 2016-03-30 18:01:54 +02:00
AnnieL 96329a6e29 Making sure the right file is included 2016-03-29 18:59:50 +01:00
AnnieL 9f257ee9f8 Slims down minidx9 to XAudio2_7
Removes minidx9 as a submodule
Slims down minidx9 to have only the files XAudio2 (2.7) needs.
The other dx9 related files weren't being used.
2016-03-29 18:51:54 +01:00
Vincent Lejeune aa3c97f918 vulkan: Only submit command buffer at flip and avoid extra sync. 2016-03-28 19:54:50 +02:00
Vincent Lejeune 7a988c73a6 Vulkan: Alloc a descriptor set at every draw call. 2016-03-28 19:54:50 +02:00
Vincent Lejeune 855d6935d9 gl: Enable core context and debug output. 2016-03-27 03:45:30 +02:00
Vincent Lejeune 21e7206f7a vulkan: Do not purge texture before flip 2016-03-26 17:46:43 +01:00
Vincent Lejeune 1b33abf287 vulkan: Clear framebuffer after flip. 2016-03-26 17:45:00 +01:00
Vincent Lejeune 9485fe2693 rsx/common/gl/d3d12/vulkan: Use exact mimap counts.
Fix invalid textures in gl backend.
2016-03-25 21:37:53 +01:00
kd-11 0327e76320 Fix quad strip triangle winding 2016-03-24 10:52:35 +03:00
kd-11 a120414d32 Set render target textures to clamp to border by default 2016-03-24 10:52:35 +03:00
Vincent Lejeune 36aace57ca vulkan: Use simpler texture object 2016-03-23 21:09:30 +01:00
Vincent Lejeune 23a0116975 gl: Expand index for quads/quad_strip/triangle_fan 2016-03-22 21:39:00 +01:00
Vincent Lejeune b00acff9dd rsx/common: Turn alignment constraints in textureUtils to multiple_of constraints. 2016-03-22 19:06:09 +01:00
Vincent Lejeune 284d2c43f9 rsx/common: Use protected instead of private for surface_store content. 2016-03-22 19:06:09 +01:00
Vincent Lejeune 4f2bda26fc vulkan: Simplify framebuffer class and release them at frame flip 2016-03-21 22:56:07 +01:00
Vincent Lejeune a14dd8ea51 vulkan: Move sampler object outside of texture. 2016-03-21 22:10:36 +01:00
Vincent Lejeune 6f9f5f7918 vulkan: Create program in program_state_cache<>::build_pipeline 2016-03-21 22:10:34 +01:00
Vincent Lejeune 34eb85683c vulkan: Remove buffer_deprecated completly.
attrib_buffer now use the simpler buffer struct.
2016-03-21 00:03:28 +01:00
AnnieL 38f93461d1 Moves glm, GSL and libpng to 3rdparty
Moves glm and GSL to 3rdparty
Moves libpng to 3rdparty
2016-03-20 22:24:21 +00:00
AnnieL 6182f5346d Moves ffmpeg and minidx9 to 3rdparty 2016-03-20 22:21:35 +00:00
AnnieL afefecf1f0 Moves GL, minidx12, OpenAL, stblib to 3rdparty
Moves GL, minidx12, OpenAL, stblib to 3rdparty

Fixes AppVeyor and CMakeLists (travis-ci.yml doesn't need any changes)

Points directories in the VS solution files to the new ones on the
externals directory

Includes stuff with the < > syntax instead of " "
2016-03-20 22:20:23 +00:00
mpm11011 617a488a0a Change size to u64 2016-03-19 21:48:56 -04:00
mpm11011 854919b5e2 Merge remote-tracking branch 'refs/remotes/RPCS3/master' 2016-03-19 13:51:44 -04:00
Vincent Lejeune 6078f25aa7 vulkan: Split get_compatible_sampler_format in two
Component mapping is not a sampler parameter.
2016-03-19 18:23:26 +01:00
Vincent Lejeune 4484e8c3f0 vulkan: Move vk_wrap_mode and max_aniso to vkFormat 2016-03-19 18:12:43 +01:00
Vincent Lejeune b6bcdade81 vulkan: Do not copy texture inside a render pass 2016-03-19 18:07:27 +01:00
mpm11011 6adf086ed1 Adding zlib to rpcs3/CMakeLists.txt
Fix zlib location in cmakelists

Potential fix to zlib include dir(s)
2016-03-19 12:47:07 -04:00
mpm11011 e7fc5228d5 MakeELF: Replaced wx streams with zlib functions 2016-03-18 23:36:08 -04:00
Vincent Lejeune e083c1471c vulkan: Fix crash at exit 2016-03-19 00:17:00 +01:00
Vincent Lejeune d9eba43360 vulkan: Do not create empty render pass.
Fix a crash with radeon crimson drivers.
2016-03-19 00:16:59 +01:00
Vincent Lejeune 24eb544046 vulkan: Move descriptor sets and layout in VKGSRender class
They're now shared between all programs.
2016-03-18 00:08:28 +01:00
Vincent Lejeune 6a1f0aed36 vulkan: Precompute all possibles render pass 2016-03-18 00:08:28 +01:00
Vincent Lejeune 6229733fbb vulkan: Use a shared pipeline layout 2016-03-17 20:03:09 +01:00
Vincent Lejeune 7e971eb032 vulkan: Fix for get_memory_mapping 2016-03-17 20:03:09 +01:00
AnnieL 212fd4b340 Adds the stb_truetype Mac OSX fix from 64cfab5
Adds the stb_truetype Mac OSX fix from 64cfab5
Removes stb_image.c from the Visual Studio Project files since it got
deleted in previous commit
2016-03-17 18:03:59 +00:00
AnnieL 659f3d856a Update stb_truetype from 0.7 to 1.09
Updates stb_truetype.h from 0.7 to 1.09
Fixes '>=' signed/unsigned mismatch at cellFont.cpp lines 328 and 333 by
making both values unsigned (u32)
2016-03-17 18:03:59 +00:00
AnnieL 8cded28c45 Updates stb_image from 1.33 to 2.10
Updates stb_image from 1.33 to 2.10 which deprecates stb_image.c and
uses only stb_image.h
2016-03-17 18:03:59 +00:00
kd-11 26738762ea vk: Indexing into mipmap lod is scalor not vector 2016-03-17 19:43:41 +03:00
AnnieL 5250911a40 Fixes #1584
When DirectX 12 is missing, the emulator thinks Vulkan = DirectX 12 because Vulkan takes DX12's place in the box (id=2), and therefore runs DX12 when Vulkan is selected, crashing the emulator with an unhandled exception.

Fixes it by translating renderer string value to the respective enum class before sending the value to config.h instead of just relying on the box's selected id -> cbox_gs_render->GetSelection()

Also changes the order of the renderers (for convinience, now DX12 is id=3) from
Null, OpenGL, DirectX 12, Vulkan
to
Null, OpenGL, Vulkan, DirectX 12
2016-03-17 10:04:03 +00:00
kd-11 15901589a5 Explicitly declare context attributes for GL canvas 2016-03-16 08:35:19 +03:00
Vincent Lejeune 61de5e8835 vulkan: Clear swapchain before usage.
Fix VkQueuePresentKHR error messages
2016-03-15 22:03:24 +01:00
Vincent Lejeune 3b3fffa962 vulkan: Remove redundant texture::create/init overloads 2016-03-15 22:03:24 +01:00
Vincent Lejeune 63ad2cce72 vulkan: Use ring allocation for uniform/index buffers by using simpler memory_block and buffer class. 2016-03-15 22:03:24 +01:00
Vincent Lejeune da2caa0881 vulkan: precompute memory type mapping. 2016-03-15 22:02:30 +01:00
kd-11 f2d5542e66 Re-enable fog parameters for vulkan 2016-03-15 22:32:32 +03:00
AnnieL 9fd244cf9c Set Write/Read Color/Depth Buffers to false by default
Since they're not working properly right now, there's no reason for them to be enabled by default.
2016-03-14 19:06:20 +00:00
Vincent Lejeune 5de70628d7 rsx/common/d3d12/gl/vulkan: Unify texture upload code. 2016-03-14 19:10:51 +01:00
kd-11 d9dbb1565a Immutable textures cannot be reused! 2016-03-14 18:14:06 +03:00
kd-11 34992d8a8f vk: Add some more blend ops 2016-03-14 18:14:06 +03:00
Nekotekina 702193a6c7 Build fixed 2016-03-13 19:39:54 +02:00
Vincent Lejeune 70a80b84d7 vulkan: Zero initialize as much structure info as possible.
This fixes a crash with nvidia driver in present call (likely because of
some uninitialized member)
2016-03-12 22:22:28 +01:00
Vincent Lejeune 8604f5a02f vulkan: Use d24_u8 or d32_u8 depending on hw support. 2016-03-12 15:56:23 +01:00
Vincent Lejeune 26ff4fd6b7 vulkan: Uses debug output setting to enable debug layers. 2016-03-12 15:23:39 +01:00
kd-11 82bc41f4ad rsx: support for more formats
rsx: support R5G5B5A1 textures
2016-03-11 18:02:29 +03:00
kd-11 cc713a0091 vk: Release dirty resources to prevent mem leak 2016-03-10 23:55:25 +03:00
kd-11 93032be4ab Move waiting for submit fence to the right place (nvidia crash) 2016-03-10 23:55:25 +03:00
kd-11 26964efa7e Support stencil formats
Fix appveyor build
2016-03-10 23:55:25 +03:00
kd-11 f0ded46753 Fix apple build by excluding vk project 2016-03-10 23:55:25 +03:00
kd-11 47d251a818 Change render target layout before clearing
Use LAYOUT_GENERAL during clear; move renderpass begin to draw call end
2016-03-10 23:55:25 +03:00
kd-11 b018c91135 Make render-targets GPU resident
Fix minor regressions that occured during merge
2016-03-10 23:55:25 +03:00
kd-11 d910d2c572 Fix vulkan swap modes for nvidia
CMakeLists edits

Check for linear tiling support for all usage attributes
2016-03-10 23:55:25 +03:00
kd-11 f384d87044 Fix build dependancies and fix gcc build
Factor out _aligned_malloc functions to WIN32 only

Attempt to fix CmakeLists error

More CMakeLists fixes (glslang)

Add OSDependent libs

Add OGLCompiler and SPIRV as well
2016-03-10 23:55:25 +03:00
kd-11 bd52bcf8d4 Fix nvidia crash (API version). Fix linux builds
Properly set up vulkan API version when creating instance

Fix gcc error about passing function result by reference

Fix alot of warnings in VKGSRender project

More fixes for gcc

Fix texture create function
2016-03-10 23:55:25 +03:00
kd-11 d58bd1c916 Exclude apple from vulkan windowing stuff as it is not supported 2016-03-10 23:55:25 +03:00
kd-11 22d49ae96a Fix build for non-WIN32 platforms
Link explicitly against vkstatic.1.lib

fix linux path for vulkan glsl compiler

Restore wxWidgets version
2016-03-10 23:55:25 +03:00
kd-11 3b6e3fb3b4 Rework vertex upload code and fix indexed renders
Rebase on current master; Refactor vertex upload code

Fix build; Minor fixes

Start preparations for merge

Fix generic indexed drawing bugs

Define WIN32_KHR only for windows

Remove linking against vulkan-1.lib
2016-03-10 23:55:25 +03:00
kd-11 d287ba44ce Add vulkan GS backend to project 2016-03-10 23:55:25 +03:00
kd-11 ee0eb70de4 Clean up invalidated resources 2016-03-09 21:11:22 +03:00
Vincent Lejeune 9e01f2817f gl: Use less costly glTexStorage2D instead of glTexImage2D. 2016-03-05 22:04:28 +01:00
Vincent Lejeune 8831bd0918 gl: Factorize code in rsx_gl_texture.cpp 2016-03-05 22:04:28 +01:00
kd-11 a880ce89d1 Checks for texture completeness, remove legacy GL_GENERATE_MIPMAP used wrongfully 2016-03-05 22:19:33 +03:00
Vincent Lejeune 4d71df70db rsx-debug: Record and display index buffer content. 2016-03-05 18:48:30 +01:00
Vincent Lejeune 1dcc6858b4 d3d12/gl: Separate fog distance and fog frag in fogc input. 2016-03-05 18:25:31 +01:00
Vincent Lejeune 52e2800fb5 rsx: Reset fog mode/param to linear/1.;
Fix After Burner Climax fog
2016-03-05 18:25:31 +01:00
kd-11 2ae687cf00 Properly compute texture size 2016-03-05 18:54:06 +03:00
Vincent Lejeune 81fcadac38 gl: Use shared surface store (updated)
Update surface cache optimization to master; minor fixes

Fix mixed EOL

Remove unused include; change null bindings to 0
2016-03-05 12:21:45 +03:00
kd-11 8d3235cd7c Properly set up fog parameters for openGL 2016-03-03 01:07:53 +03:00
kd-11 094c4057be The lod parameter is a single float value 2016-03-02 18:34:13 +03:00
Vincent Lejeune 72375d9e3d build: Add a separate project for ppu llvm recompiler
Fix some defect found by static analysis.
2016-03-02 14:53:14 +01:00
kd-11 7eb5da73fe Allow attrib padding for types that require expansion 2016-03-02 01:09:51 +03:00
Vincent Lejeune 0ed770633b gl: Add texture3d sampling function 2016-02-29 19:47:06 +01:00
Vincent Lejeune 32434dd848 rsx/common/d3d12/gl: Support for fog mode.
Fix hitman 2
2016-02-29 16:31:18 +01:00
Vincent Lejeune 9cdb74efc7 rsx/common: Add supports for quads strip
Used in Hitman 2
2016-02-27 19:38:16 +01:00
Vincent Lejeune 35db227af4 rsx/common/d3d12: Separate int type buffer from float type buffer. 2016-02-27 00:21:14 +01:00
Vincent Lejeune a6ba47265f rsx/common/gl: s32k is actually signed short unormalized.
gl fix
2016-02-27 00:21:12 +01:00
Vincent Lejeune 62246f75c8 d3d12/gl: Supports SSA in Fragment Shader. 2016-02-27 00:21:10 +01:00
Vincent Lejeune a6d8d1144c rsx/common: Supports D24X8 texture format when copying
Some app uses this type before setting proper depth surface
2016-02-27 00:21:08 +01:00
Vincent Lejeune 5ef7f8bf3e rsx/common: Fix handling of UB256 2016-02-27 00:21:06 +01:00
Vincent Lejeune a78ba8a271 d3d12: Remove depth conversion shader
It's actually not needed, raw depth data should be sampled as RGBA8.
2016-02-25 23:29:44 +01:00
Vincent Lejeune 263e5beb26 d3d12: Copy descriptors when reused instead of recreating them.
Thanks Matías N. Goldberg for the tip !
2016-02-25 23:29:43 +01:00
Vincent Lejeune 7ae680d9d1 d3d12: Avoid uploading constant buffer every draw call 2016-02-25 23:29:41 +01:00
kd-11 c5b3359c4b Remove normalization for natively normalized formats; fix cmp attribute type 2016-02-25 17:41:03 +03:00
Raul Tambre 047d59df0c Implement UTF8stoUTF16s, minor cellPngDec fixes
Need to find games to test the case, when fixed alpha isn't specified.
2016-02-25 07:58:21 +02:00
Raul Tambre 41687af077 Implement _sys_memmove 2016-02-25 07:58:21 +02:00
kd-11 974ea68cf9 Always bind null for unused shader inputs
Properly rename index offsets to improve readability
Handle indexed and other array cases
2016-02-25 02:29:35 +03:00
kd-11 8a3d15d4fe Handle swizzled CELL_GCM_B8 textures
Properly handle swizzled single-channel textures
2016-02-24 17:44:24 +03:00
Vincent Lejeune 5a14644cd4 rsx/common/d3d12/gl: Use span in vertex upload function. 2016-02-22 20:22:47 +01:00
Vincent Lejeune 79dc835378 rsx/common: Track transform constant update. 2016-02-21 21:29:44 +01:00
Vincent Lejeune 9ef24509cb d3d12: Use a shared root signature and add more slots
This allows for finer grained rebinding later.
2016-02-21 17:55:34 +01:00
Vincent Lejeune 4b54d7ece1 d3d12: Pretty printing of error messages. 2016-02-21 17:11:54 +01:00
Vincent Lejeune c0423d513d vulkan: Add relevant libs. 2016-02-19 20:03:30 +01:00
kd-11 a451bb574e Enable texture and render target caching for OpenGL 2016-02-17 16:00:23 +03:00
Vincent Lejeune 1675a82efd rsx/common/d3d12/gl: Use gsl::span in TextureUtils.cpp
* get_placed_texture_storage_size returns more accurate result (fix crash in Outrun)
* Factors lot of code and use integer type more carrefully
* Treat warning as error in TextureUtils.cpp
2016-02-16 18:08:22 +01:00
kd-11 3813c09be6 Properly handle inlined vertex data
Fix initial array offsets for dx12
2016-02-16 15:39:18 +03:00
kd-11 2230975e55 Speed up program constants upload by switching to glBufferSubData over glMapBuffer
Fix initialization for fragment constants buffer

Orphan buffers before update. Remove redundant binding
2016-02-15 12:53:55 +03:00
kd-11 7d70be42af Correctly fetch correct pitch and depth for textures from RSX
Include vertex textures too

Set correct stride for vertex texture params

Change references to gl_Position in D3D12FragmentProgramDecompiler

Revert bad commit
2016-02-15 11:15:51 +03:00
Raul Tambre 9452c6b08c Fix CMake libpng linking 2016-02-14 19:50:36 +02:00
Vincent Lejeune 837e06e85b rsx/common/d3d12: Support non default alpha function
Fix After burner climax cloud effects.
2016-02-13 17:07:12 +01:00
kd-11 843d0ed298 Fragment position is given as gl_FragCoord not gl_Position
Fix references to gl_Position in Dx12
2016-02-12 18:34:41 +03:00
Raul Tambre 1072540e3e Fix compiling 2016-02-08 19:12:30 +02:00
Raul Tambre 0c8c13b8b7 Rewrite cellPngDec to use libpng
Improvements made:
* Supports tEXt chunks
* Supports chunk information
* Supports 16-bit depth image packing (fixes #1127)
* Supports fixed alpha values
* And more.
2016-02-08 19:12:29 +02:00
Vincent Lejeune f0dc38cadd rsx/common/d3d12: Support back spec/diffuse color.
Fix green car in Outrun.
2016-02-08 17:35:52 +01:00
Vincent Lejeune 4efa2266e6 rsx/common/d3d12: Use m_texture_dirty[i] to signal texture state change and avoid unecessary bind operation. 2016-02-08 17:35:50 +01:00
Vincent Lejeune 1f7a1e4078 rsx/common/d3d12/gl: Fix lit and rsq behavior near 0 in vertex shaders. 2016-02-08 17:35:49 +01:00
kd-11 ddf5b52360 Implement rectangle textures natively on OpenGL 2016-02-07 08:57:04 +03:00
kd-11 d3405da5c4 Fix LLVM build by changing variable to appropriate type 2016-02-05 18:57:57 +03:00
kd-11 137821c866 Move program validation from link-time to draw-time to compy with spec 2016-02-04 11:19:13 +03:00
kd-11 7b889a10cc Add vertex texture buffers for VS input
Support vertex instancing in vertex shader using VertexID

Relax OpenGL requirements by removing 4.5 features

Use EXT version of TexBufferRange; Implement buffer copy using TexBuffer

Apply travis workaround by danilaml

Fix vertex upload in in case of inlined array
2016-02-03 13:38:23 +03:00
kd-11 660f491310 Rework OGL texture swizzles;
Decode textures using TextureUtils

Shut compiler up about missing return value (unsure)

Revert "Shut compiler up about missing return value (unsure)"

This reverts commit db43ba448776e6c0d6c90909b4037b6f698a545c.

Change some functions in rsx::gl::texture to static.

Replace large switch block in gl::textures::mandates_expansion with simple if tests
2016-02-01 20:11:33 +03:00
Vincent Lejeune 3d960064ef d3d12: Use unnormalized_coords info in RSXFragment 2016-01-30 22:04:36 +01:00
Vincent Lejeune f6d2409b20 rsx/common/d3d12: Support for shader window setting. 2016-01-30 21:58:12 +01:00
Vincent Lejeune 5f35f2ac7d rsx/common/d3d12: Support for texture 1d too.
They are used in after burner climax
2016-01-30 01:13:15 +01:00
Vincent Lejeune d19d9ccd0b d3d12: Fix for #1459 2016-01-29 20:18:52 +01:00
Vincent Lejeune 149fa9d750 rsx/common: Make RSXFragmentProgram key and not just pointer. 2016-01-27 23:16:06 +01:00
Vincent Lejeune 3bd2114815 rsx-debug: Dump windows origin/pixel center. 2016-01-27 22:41:19 +01:00
Vincent Lejeune acd384ae2d rsx/common: Base offset is actually correctly supported.
Outrun uses it and cars are correctly displayed.
2016-01-27 22:05:43 +01:00
Nekotekina b77666cbba cellGame fix 2016-01-27 19:39:31 +03:00
Nekotekina 128ee67bba PSF Loader simplified 2016-01-27 19:17:01 +03:00
Nekotekina 7417033d7f GLGSRender fix 2016-01-27 18:14:39 +03:00
DHrpcs3 e8a940172c fixed GameViewer crash if entry not exists
fixed psf::entry::as_string & psf::entry::value(string)
2016-01-27 18:14:38 +03:00
DHrpcs3 290bdc4566 added psf::object::get 2016-01-27 18:14:36 +03:00
DHrpcs3 220aab1fd0 Reimplemented psf loader 2016-01-27 18:14:35 +03:00
Vincent Lejeune aa450b56f1 d3d12: Make some memory helper structure uncopyable/unmovable. 2016-01-26 23:20:23 +01:00
Vincent Lejeune 6d70f3c237 d3d12: Compare mipmap/depth count when checking texture compatibility.
d3d12: Check for depth in texture cache.

Fix Resogun crash when loading a level.
2016-01-26 23:13:30 +01:00
Vincent Lejeune 6384541345 d3d12: Store vertex attributes as SRV and disable Input_layout. 2016-01-26 23:13:29 +01:00
Vincent Lejeune 3c3f92f29b rsx/common/d3d12: Support 3d textures 2016-01-26 17:56:02 +01:00
Vincent Lejeune 24255f7883 rsx/common/d3d12/gl: Add some texture info to RSXFragmentProgram 2016-01-26 17:56:01 +01:00
Vincent Lejeune b71caa94ac rsx-debug: Print number of vertex draw again. 2016-01-25 18:48:53 +01:00
Vincent Lejeune 9b8522e734 rsx/common: Div is vector over scalar division
According to investigation on Resogun.
2016-01-24 00:13:17 +01:00
Vincent Lejeune 4ce4cf5242 rsx: Add vertex input and output in RSXVertexProgram. 2016-01-22 01:24:54 +01:00
DHrpcs3 19ce0cdc09 rsx methods constants moved to rsx namespace
minor fix
2016-01-20 20:12:48 +03:00
DHrpcs3 2e58f312d5 rsx: implemented internal tasks queue (WIP) 2016-01-20 17:12:49 +03:00
DHrpcs3 7523d01e0f Code style fixes #2 2016-01-20 16:39:06 +03:00
DHrpcs3 7972cb5bdc Code style fixes #1 2016-01-20 16:23:25 +03:00
DHrpcs3 685d5d3ea3 Access violation handled by rsx::thread
gfxHandler -> rsx::g_access_violation_handler
2016-01-20 15:46:58 +03:00
Vincent Lejeune f453194e32 rsx: Fix int type not big enough
Fix glitch in After Burner Climax
2016-01-19 23:24:39 +01:00
Vincent Lejeune 440c637b1f rsx/common/d3d12: Move surface_store in common 2016-01-19 22:49:10 +01:00
Vincent Lejeune 6aac972bda d3d12/gl: Use r1 as depth output.
The "Output_from_h0" flag seems to concern color output.
There might be another flag for depth from half float value.
2016-01-19 00:45:26 +01:00
Vincent Lejeune 1ce49b60d9 rsx-debug/d3d12: Support all rtt formats. 2016-01-17 20:02:30 +01:00
Vincent Lejeune 26f329d186 d3d12: Fix dsv increment size
Typo.
2016-01-16 18:25:20 +01:00
Vincent Lejeune 5ace4438e2 d3d12: Fix texture proj
I misinterpreted "last component" from glsl doc... it's w, not z.
2016-01-16 18:25:19 +01:00
Vincent Lejeune b8e10225f9 d3d12: Use first color output for alpha discard instead of 0.
Fix Naruto 2 shader miscompilation.
2016-01-16 18:25:18 +01:00
Vincent Lejeune 224facf3ba d3d12: Never pass nullptr as render target descriptor, even if unused.
Function interface doesn't allow this.
2016-01-16 18:25:16 +01:00
Vincent Lejeune 3b4339c8e0 rsx: Use enum class for surface related regs 2016-01-15 23:44:27 +01:00
Nekotekina efe1678088 "Build Solution" fix 2016-01-14 20:41:36 +03:00
Nekotekina 2f5be3559e Hotfix 2016-01-14 20:13:41 +03:00
Nekotekina 960668ecf1 For #1355
offsetof() eliminated
OFFSET_32, SIZE_32, ALIGN_32 used
2016-01-14 19:07:27 +03:00
Nekotekina 83084467c6 For #1356 2016-01-14 19:07:26 +03:00
Nekotekina 8464ab6a23 Fixes (#1432)
/dev_bdvd/, rap file loading fix
2016-01-14 19:07:24 +03:00
raven02 74ec128e62 Use CELL_GCM_TEXTURE_CONVOLUTION_MAG for Mag 4 2016-01-14 19:00:16 +03:00
Vincent Lejeune 69272edba6 gl: Fix warnings and enable trat warning as error. 2016-01-13 23:53:11 +01:00
Nekotekina 38531459df Logging system rewritten
GUI doesn't freeze anymore
Some things simplified
2016-01-13 18:54:57 +03:00
Nekotekina b3e3c68f15 File utility improved
+ minor fixes
2016-01-13 14:12:04 +03:00
Vincent Lejeune 689dee9944 rsx/common/d3d12: Consider separate index range as a whole.
Fix Wolf of the Battlefield 3
2016-01-13 00:28:48 +01:00
Vincent Lejeune 08622a41b4 d3d12: Use CHECK_HRESULT in D3D12Utils.cpp 2016-01-11 21:17:33 +01:00
Vincent Lejeune 669a3277ff d3d12: Support mag filter 4 2016-01-11 21:17:32 +01:00
Vincent Lejeune e6bd681227 d3d12: factorize render_target code in a template class to be shared with others backends. 2016-01-11 20:47:01 +01:00
Vincent Lejeune 0c5cfdddba d3d12: Gather constant and vtx/idx heap and turn readback heap to buffer 2016-01-11 20:46:58 +01:00
Vincent Lejeune bab52c132d rsx/common/d3d12/gl: Clean ProgramStateCache
Use a_b_c format.
Use using =
Use tuple as output
Use RAII to delete program safely
Ensure const correctness.
2016-01-11 19:21:57 +01:00
DHrpcs3 8297d963bf d3d12 texture cache: align to bottom texture address 2016-01-10 23:28:30 +02:00
DHrpcs3 a17c41b4e1 nv4097::get_report: use DMA 2016-01-10 23:22:55 +02:00
Vincent Lejeune 4ef76866a5 rsx/common/d3d12/gl: Support texture lod sampling. 2016-01-10 00:16:26 +01:00
Vincent Lejeune 675ccd4510 rsx/common/d3d12/gl: Mimic divsq and rsq fragment instruction behaviour with 0.
Fix Super Puzzle Turbo HD 2 and SH3 HD
2016-01-09 23:18:05 +01:00
Vincent Lejeune 31a925b4f0 rsx: reenable frame capture
Likely commented out by accident.
2016-01-09 23:18:04 +01:00
Vincent Lejeune d153575e59 rsx/common/d3d12/gl: Support for CMP/non pow of 2 size vertex formats.
Also use class enum for base_vertex_type everywhere.
Fix Bomberman Ultra color and Cubixx HD geometry.
2016-01-09 23:18:03 +01:00
Raul Tambre 3afc62e525 Fix #1368 2016-01-08 08:39:34 +02:00
Raul Tambre f8446b227b Implement inet_ntop and CELL_NET_CTL_INFO_LINK
Also fixed the default address not being set for all cases. Also tried
to fix the Win32 version of CELL_NET_CTL_INFO_IP_ADDRESS failing the
first time around.
2016-01-08 08:39:34 +02:00
Raul Tambre 8f937bda0f Various minor logging improvements
Also changed the default connection state, because chances are, that
you're connected to Internet.
2016-01-08 08:39:33 +02:00
Vincent Lejeune e7591439f4 Add Guidelines Support Library 2016-01-08 00:59:08 +01:00
DHrpcs3 f97d791fe8 PSF loader: implemented 0x0004 entry format 2016-01-07 21:22:36 +02:00
DHrpcs3 657a6c9511 elf64 loader: fixed too small primary stack size usage 2016-01-07 18:14:15 +02:00
DHrpcs3 e9560da4e2 nv3089::image_in: use in_x/in_y & out_x/out_y 2016-01-06 13:47:05 +02:00
DHrpcs3 6406cece57 nv3089::image_in: fixed reading from tiled regions 2016-01-06 13:30:26 +02:00
DHrpcs3 f7e787958e fixed nv3089::image_in scale value 2016-01-06 13:30:25 +02:00
DHrpcs3 8912b9880e rsx: initialize vertex textures on reset 2016-01-06 13:30:25 +02:00
DHrpcs3 3ac9e0933f gl: fixed nv4097_clear_surface & front face selection
added window shader and clip plane constants to GCM.h
2016-01-06 13:30:25 +02:00
DHrpcs3 c1be0cf3bf Added missed files 2016-01-06 13:30:24 +02:00
DHrpcs3 48919330d7 rsx methods moved from rsx thread 2016-01-06 13:30:24 +02:00
DHrpcs3 ba12c489ec gl: using tiled region for read/write color buffers and flip
gl: fixed flip buffer row length
compilation fixes
2016-01-06 13:30:23 +02:00
DHrpcs3 dbccf5fbad gl: fixed multiple textures binding 2016-01-06 13:30:23 +02:00
DHrpcs3 509bbddac1 OpenGL renderer: use pitch as image row length
Fixed rsx_utils code style
2016-01-06 13:30:23 +02:00
DHrpcs3 11ccc498fd Reimplemented nv3089::image_in 2016-01-06 13:30:22 +02:00
DHrpcs3 836d14c8af rsx::pad_texture & rsx::convert_linear_swizzle moved to rsx_utils
Added rsx::convert_scale_image & rsx::clip_image to rsx_utils
2016-01-06 13:30:22 +02:00
DHrpcs3 5a4babb0fd Implemented basic tiled regions support 2016-01-06 13:30:22 +02:00
Vincent Lejeune cae2d929ab rsx/common/d3d12/gl: Implement draw inline array support 2016-01-05 00:31:47 +01:00
Vincent Lejeune f38d0e92e7 d3d12: Avoid implicit cast from int to bool in CHECK_HRESULT macro 2016-01-03 21:51:39 +01:00
Vincent Lejeune 854365e6ce d3d12: Reenable missing case for CELL_GCM_PRIMITIVE_LINE_LOOP 2016-01-03 21:51:38 +01:00
Zangetsu38 3529554c88 d3d12: Fix Super Dub 'a' Dub 2016-01-03 21:51:37 +01:00
Zangetsu38 2a1f19b776 d3d12: Fix for BIT.TRIP Runner2 2016-01-03 21:51:35 +01:00
Vincent Lejeune 324b2da3ec d3d12: Recreate RTTs if size doesn't match.
Fix Bomberman Ultra
2016-01-03 21:51:34 +01:00
Vincent Lejeune 07f6896622 d3d12: Throw if program failed to build. 2016-01-03 21:51:33 +01:00
Vincent Lejeune 8417e21e8d d3d12: Set command heap only when necessary. 2016-01-03 21:51:31 +01:00
Vincent Lejeune 02473324f4 Put XAudio and OpenAL files in separate projects. 2016-01-03 21:01:11 +01:00
Vincent Lejeune bc3065939f rsx-debug: dump anti aliasing control 2016-01-03 19:16:50 +01:00
Vincent Lejeune d1e91433ad rsx-debug: Dump anti aliasing mode. 2016-01-03 19:16:49 +01:00
Vincent Lejeune 4e7e895822 rsx-debug: Dump some more opcodes. 2016-01-03 19:16:48 +01:00
Vincent Lejeune 3586c7613a rsx/common: Fix program state cache Shader program comparaison.
Comparaison was not taking the last instruction of shader into account.
Also remove "constant masking" since it wasn't actually usefull.

Fix DBZ: Burst Limits, SH3 and likely much more games.
2016-01-02 00:47:51 +01:00
Andrew Church 5a18c3f8ea Allow a null destination pointer for cellL10n functions. 2015-12-31 19:12:32 +09:00
Andrew Church 3055de0444 cellL10n: Implement SJIS<->Unicode conversions. 2015-12-31 19:12:32 +09:00
Vincent Lejeune 5f12a4f7b5 rsx/common/d3d12/gl: Use separate vertex array/vertex register states. 2015-12-30 17:04:34 +01:00
Vincent Lejeune 082815f93e llvm: Implement trap instructions 2015-12-29 22:25:19 +01:00
Vincent Lejeune 969e2d8c57 rsx/common: Support RSX_FP_OPCODE_DIV for scb
Fix glitches in dbz
2015-12-29 17:08:01 +01:00
Vincent Lejeune 44840dbbcf d3d12: Support early return in fragment shaders. 2015-12-28 00:19:37 +01:00
Vincent Lejeune d6b2230b92 d3d12: Revert some value in get_blend_factor_alpha
fix crash in SH3
2015-12-28 00:19:35 +01:00
Chaoren Lin d917cfa43f Create config file if it doesn't exist. 2015-12-24 10:58:28 -05:00
Vincent Lejeune c4b3b967d9 d3d12: Fix warnings andnable warnings as errors. 2015-12-23 22:26:23 +01:00
Vincent Lejeune b41fcf3734 d3d12: name rtts/ds/texture for debugging purpose 2015-12-23 22:26:22 +01:00
Vincent Lejeune ecad586739 d3d12: Names PSO for debug purpose. 2015-12-23 22:26:20 +01:00
Zangetsu38 64036e0478 d3d12: fix return correct value in d3d12format 2015-12-23 22:26:19 +01:00
Vincent Lejeune 9c6539ea2d rsx/common/d3d12: Force depth to be at least 1. 2015-12-23 22:26:18 +01:00
Vincent Lejeune a97dc349b7 rsx/common: If swizzle bit is not set then there is no padding, even for dxtc textures.
Fixes some textures in dbz and after burner climax.
2015-12-23 22:26:16 +01:00
Vincent Lejeune 243bc0d06e PPU/LLVM: Use interp version of some instruction for debugging purpose. 2015-12-23 17:03:01 +01:00
Vincent Lejeune e7df81ade0 PPU/LLVM: Call fast_stop when function returns and PC corresponds 2015-12-23 17:02:56 +01:00
Vincent Lejeune 743f5f07cb llvm: Reenable debug info dump 2015-12-23 17:02:51 +01:00
Nekotekina 3ed603074c Changes done by [DH] rewritten
Added rsx_program_decompiler submodule
Added fs::dir iterator
Added fmt::match
2015-12-22 23:11:20 +03:00
DHrpcs3 3ca634138d Fixed conflict with X11
Added tmp folder to gitignore
2015-12-21 08:48:33 +02:00
DHrpcs3 d8bef46c2a Do not use global static variables in headers 2015-12-21 05:35:56 +02:00
DHrpcs3 ae83ab5436 GLTexture excluded from GLGSRender and renamed to rsx::gl::texture 2015-12-21 04:14:56 +02:00
DHrpcs3 a00111a863 Do not mix projects temporaries 2015-12-21 03:55:55 +02:00
DHrpcs3 7416fe91fc Fixed crash on start if config does not exists
Cleanup OpenGL renerer
2015-12-21 03:28:07 +02:00
Nekotekina f2df9b469a ThrowIfFailed replaced with CHECK_HRESULT macro 2015-12-20 15:41:11 +03:00
Nekotekina 4b7f9c38a6 rMsgBox eliminated 2015-12-20 15:41:10 +03:00
Nekotekina a666318b95 Error messages improved 2015-12-20 15:41:09 +03:00
Nekotekina aa811b6eef Cleanup (noexcept, unreachable)
%x formatting fixes
2015-12-20 15:41:07 +03:00
Nekotekina 321e6d3a86 fs::get_config_dir, fs::get_executable_dir 2015-12-20 15:41:06 +03:00
DHrpcs3 8a21e0fcb8 Implemented some cellSaveData functions
Implemented cellSaveDataListSave, cellSaveDataListLoad,
cellSaveDataFixedSave, cellSaveDataFixedLoad, cellSaveDataAutoSave,
cellSaveDataAutoLoad
2015-12-20 10:39:07 +02:00
DHrpcs3 408581b7bc sys_mmapper improvements
sys_mmapper_allocate_address: always set default value if aligment is 0
sys_mmapper_map_memory: don't fire exception if memory already mapped
2015-12-20 10:28:25 +02:00
DHrpcs3 416d66a438 Ignore SPU sync channels 2015-12-20 10:16:31 +02:00
Raul Tambre 5672ba887b Fix #1343 2015-12-17 13:41:36 +02:00
Vincent Lejeune 69b3828086 rsx/common: Vertex program condition swizzle should apply to cc0, not float4(0.) 2015-12-16 20:36:50 +01:00
Zangetsu38 a44c54b428 d3d12: Fix error Last commit 2015-12-16 20:36:48 +01:00
Zangetsu38 dc5a439ec9 d3d12: Code style fix for function return 2015-12-16 20:36:46 +01:00
Zangetsu38 81f05daff2 d3d12: Add more log callback for support dev 2015-12-16 20:36:45 +01:00
Vincent Lejeune 456f83671a d3d12: Add formatting abilities to unreachable macro 2015-12-16 20:36:43 +01:00
Vincent Lejeune d7b4b2fd49 d3d12: Support surface format R5G6B5 2015-12-16 20:36:41 +01:00
Vincent Lejeune 27807f3a61 d3d12: D8R8G8B8 and A8R8G8B8 are essentially the same. 2015-12-16 20:36:39 +01:00
Vincent Lejeune fcf7751008 d3d12: Fix handling of disabled texture
Fix After Burner Climax textures.
2015-12-16 20:36:38 +01:00
Vincent Lejeune 1cda2977bb common/d3d12: emulate polygon mode 2015-12-16 20:36:36 +01:00
Vincent Lejeune 6221fecf3b common/d3d12/gl: Start implementing cubemap sampling 2015-12-16 20:36:34 +01:00
Vincent Lejeune 80dc122742 common/d3d12: Clean texture upload code.
Some typos are fixed in the process
2015-12-16 20:36:32 +01:00
Vincent Lejeune 929f518ef3 rsx/d3d12/gl: Make output write backend dependent. 2015-12-16 20:36:31 +01:00
Vincent Lejeune 6fae5863cf common/d3d12/gl: Add support for textureProj 2015-12-16 20:36:29 +01:00
Jake 266504a0ac CellUser: Fix cellUserInfoGetStat for 'userid_current' 2015-12-14 19:16:15 -06:00
Jake 08d05e245d sys_mmapper: Allow 0 alignment to mapping to fix Psl1ght homebrew booting 2015-12-14 19:16:14 -06:00
Jake 6f584049a2 rsx: NV3089_image_in: Fix braid and Jet Set Radio 2015-12-14 19:16:12 -06:00
Zangetsu38 27ad98ee98 Fix for Shovel Knight 2015-12-12 23:21:24 +01:00
Nekotekina d90850e697 GLGSRender.vcxproj added 2015-12-08 20:02:33 +03:00
Nekotekina 8e4ad3dfcb Property sheets, configuration simplified
MemLeak build fixed
2015-12-08 20:02:30 +03:00
Vincent Lejeune 0e27b68ba7 System: Add a test mode that fakes running emulator. 2015-12-06 23:51:52 +01:00
Vincent Lejeune 6c01658d37 system: Do not send dbg command if dbg hook is not present. 2015-12-06 23:51:51 +01:00
Vincent Lejeune 8e451126ac llvm: Make Compiler class a module builder only class. 2015-12-06 23:51:50 +01:00
Vincent Lejeune 7ae1b51753 llvm: Remove PPULLVMRecompilerTests.cpp 2015-12-05 22:17:28 +01:00
Danila Malyutin 0d6297fef0 GUI: Fix wx assert on first right-click in game list
Don't know why it was working before.
Anyway, it seems ugly and it probably should be handled differently (the
whole function, or whole GUI ;P).
2015-12-05 19:54:23 +03:00
Danila Malyutin d01235ce2d GUI: Fix removing game from game list
Fixes #1326
2015-12-05 19:45:58 +03:00
Raul Tambre efe430733b Fix cellGcmSetTile(Info)
I didn't specifically write a test for it, but I did at some point
modify a couple samples to try and use 2048 and 2047. Anything above
2047 didn't work.
2015-12-05 14:22:51 +02:00
Nekotekina 3465106456 Shared PCH (experimental)
"Rebuild" is broken though.
2015-12-04 23:37:44 +03:00
Nekotekina 24128ba450 Optimization 2015-12-04 23:37:42 +03:00
Nekotekina 298eb46a31 AutoPauseManager, SaveDataUtility fix
Redundant stringstream removed
2015-12-04 23:37:41 +03:00
Nekotekina f245799479 Custom hashers for ID manager 2015-12-04 23:37:40 +03:00
Nekotekina 82cb8fe5bd SharedMutex improved 2015-12-04 23:37:39 +03:00
Nekotekina b18e337781 GUI fixes 2015-12-04 23:37:37 +03:00
Nekotekina f3311bb5e5 GL render crash fix 2015-12-04 23:37:36 +03:00
Nekotekina 8a1ce6ba64 MINGW64 fix 2015-12-04 23:37:35 +03:00
Nekotekina ca6783ba9a Threads improved, ID manager improved 2015-12-04 23:37:34 +03:00
Jake 52be47ca89 rsx: Style changes 2015-12-02 07:06:40 -06:00
Jake 19cf749944 rsx: fix convert_linear_swizzle converting backwards 2015-12-02 04:22:19 -06:00
Jake 178bcfc8df rsx: Improve NV3089_IMAGE_IN_SIZE and use faster loop for swizzle conversions 2015-12-02 04:22:18 -06:00
Jake 83cb137721 rsx: add missing transfer enums 2015-12-02 04:22:17 -06:00
Jake 8edf35a9e3 gl: remove incorrect/unneeded glenable enum 2015-12-02 04:22:16 -06:00
Zangetsu38 450c8245ed Fix Jet Set Radio 2015-12-01 23:18:29 +01:00
Vincent Lejeune 88d7feda5c d3d12: Support unormalized texture coordinates 2015-12-01 23:18:27 +01:00
Vincent Lejeune c9c436e6fc d3d12: In case of non supported rtt fallback to R8G8B8A8 format. 2015-12-01 22:42:36 +01:00
Vincent Lejeune f4091b1027 d3d12: Fix fragment shader accessing to gl_Position 2015-12-01 22:42:34 +01:00
Vincent Lejeune 174fb97172 d3d12: Fix for case where fragment shaders samples textures starting from non first unit. 2015-12-01 22:42:33 +01:00
Vincent Lejeune 377bdae6a9 rsx-debug: Move pretty_printing code to GCM.cpp and support transform constants and some texture opcodes 2015-11-30 19:09:45 +01:00
Vincent Lejeune 3d2386f903 rsx-debug: Display color buffer content in separate frame. 2015-11-30 19:09:44 +01:00
Vincent Lejeune a21c9f9861 rsx: Avoid mixing float4 and int4 in declaration of AddrReg. 2015-11-30 17:35:51 +01:00
Vincent Lejeune 1e9d1c1dd9 gl: Uncomment viewport setting code 2015-11-29 18:22:53 +01:00
Vincent Lejeune 399478c2cd gl: Use const and ref for loops in GLFragmentProgram.cpp 2015-11-29 18:20:43 +01:00
Vincent Lejeune c86cfef58e rsx/common: Remove getFragmentConstantOffsetsCache 2015-11-28 20:58:00 +01:00
Vincent Lejeune 7a996648bb gl: Use fill_gragment_constans_buffer 2015-11-28 20:41:30 +01:00
Danila Malyutin 8d5d545f3f Some dependency info updated 2015-11-28 00:08:38 +03:00
Vincent Lejeune a19a9b5585 d3d12: fallback to linear filter when mag filter is not known. 2015-11-26 20:21:26 +01:00
Vincent Lejeune f3dd9596cf d3d12: Use address instead of context_dma value to determine whether to write buffers
Fixed depth read test when write color buffer is enabled
2015-11-26 18:10:21 +01:00
Vincent Lejeune 115255c162 d3d12: Fallback to bilinear filtering if convolution min one is used. 2015-11-26 18:05:27 +01:00
Vincent Lejeune 984f5c6914 d3d12: Fix depth readback format 2015-11-26 18:05:26 +01:00
Vincent Lejeune fa845fa5c0 d3d12: Add support for F_X32 surface format 2015-11-26 18:05:25 +01:00
Vincent Lejeune 579096c6a8 d3d12: Discard rtt if format has changed. 2015-11-26 18:05:23 +01:00
Vincent Lejeune 7e938b2363 d3d12: Use INCR for stencil op when an unknow op is used.
Fixes shadows in Jet Set Radio.
2015-11-26 18:04:53 +01:00
Vincent Lejeune 0d2c4c24b4 d3d12: Use a single big buffer to store readback data 2015-11-25 17:54:58 +01:00
Vincent Lejeune d15300a549 rsx: Display programs associated with selected draw calls in debugger 2015-11-24 23:34:04 +01:00
Vincent Lejeune b9d8d9383a rsx/d3d12: dump program content when capturing frame 2015-11-24 23:34:03 +01:00
Vincent Lejeune 85cf918aeb rsx: Add none target to gcm pretty printing 2015-11-24 23:14:07 +01:00
Vincent Lejeune b5add0f027 rsx: better naming for draw calls 2015-11-24 23:14:05 +01:00
Vincent Lejeune b238107a99 rsx: Dump captured commands to file 2015-11-24 23:14:04 +01:00
Vincent Lejeune 5447521ce5 gl: Use uniform buffer for transform constants. 2015-11-19 20:26:14 +01:00
Vincent Lejeune 3e5f0e5c37 rsx: Add missing SCB DIVSQ opcode support
Fix a lot of gfx glitches in SH3 HD
2015-11-19 19:24:58 +01:00
Vincent Lejeune 9fdc458d69 rsx: Make SCT/SCB/TEX SRB function complete member of FragmentProgram 2015-11-19 19:24:57 +01:00
Nekotekina 4a669fd86e DX12 dependencies fix 2015-11-17 21:00:59 +03:00
Vincent Lejeune 307015382d d3d12: Support default value for stencil op
Requested by Jet Set Radio.
2015-11-16 23:32:38 +01:00
Vincent Lejeune 471e807ea2 d3d12: Fix some typo in render target code
Should bring performances back
2015-11-16 23:32:37 +01:00
Vincent Lejeune bb4b12f253 d3d12: Texcoord9 is actually stored in register 6.
Fix shadow mapping in SH3 HD.
2015-11-16 23:32:35 +01:00
Vincent Lejeune 432bca26ae d3d12: Add support for reading depth texture 2015-11-16 23:32:34 +01:00
Nekotekina 5f6caf33f0 MINGW64: Compilation fix 2015-11-16 19:12:51 +03:00
Vincent Lejeune e2d0a63b98 gl: Use factored scale offset function call 2015-11-15 22:52:39 +01:00
Vincent Lejeune 570ca1c87f d3d12: Use a_b_c style for D3D12GSRender.h members 2015-11-15 20:21:44 +01:00
Vincent Lejeune 2ac47548b0 rsx: Set registers individually
Not all games set registers up to the third subcomponent. Fixes SH 3 HD
textures.
2015-11-15 17:20:43 +01:00
Vincent Lejeune a79ffdb485 rsx/common: Fix ARL register type and write function in vtx shader 2015-11-15 17:20:41 +01:00
Vincent Lejeune daf2d3a02e rsx: Suppress cellResc function that modifies method_registers 2015-11-15 17:20:21 +01:00
Vincent Lejeune e9d9bad643 rsx: reset register after each flip
Some overlay operation are executed when a flip is requested, it may
change register states. Fix depth buffer in SH3
2015-11-15 17:20:20 +01:00
O1L f34bd724e3 SimpleIni removed 2015-11-15 13:05:25 +04:00
O1L fd13a495de Replace remained old ini-manager calls 2015-11-14 23:59:46 +04:00
Nekotekina 7dfe9415c4 PKG Installer fix 2015-11-14 20:26:42 +03:00
Nekotekina 080e503954 Compilation fix 2015-11-14 20:26:41 +03:00
Nekotekina a4db58f5f2 Added fs::file_ptr, fom::rewrite, cleanup 2015-11-14 20:26:40 +03:00
Danila Malyutin 009aa3dcb9 Fix crash on exit in some tests
It started occurring recently though the problem seems to be old.
Only KeyboardHandlerBase is the fix, the MouseHandler one is to be safe.
2015-11-14 19:34:20 +03:00
Vincent Lejeune 039e729881 d3d12: Fix scissor 2015-11-12 18:29:04 +01:00
Vincent Lejeune c152c20d70 d3d12: Fix wrong front_face_ccw value for Disgaea 3 2015-11-12 18:29:03 +01:00
Vincent Lejeune 917f08c534 d3d12: Fix depth range 2015-11-12 18:29:02 +01:00
Vincent Lejeune ae5d95d462 rsx/common: Take primitive restart index in account and turns it into -1. 2015-11-12 18:29:01 +01:00
Vincent Lejeune 925d6889a6 d3d12: Use ring buffer like rtv/dsv descriptor heap 2015-11-12 18:29:00 +01:00
Raul Tambre 5d5a4f804b Replace most returns with CHECK_ASSERTION
Also fix some Seek methods return types being unsigned, while returning
negative errors.

Added the CHECK_ASSERTION macro checks in a couple more places.

Simplified CHECK_ASSERTION macro usage.
2015-11-09 07:42:04 +02:00
Raul Tambre 9c2f48cd1d More defect fixes, added some error codes 2015-11-09 07:39:50 +02:00
Raul Tambre fac9d74344 Lots of defect fixes 2015-11-09 07:39:50 +02:00
Vincent Lejeune 660bc34157 rsx: Add gui element to enable capture frame 2015-11-08 19:34:20 +01:00
Vincent Lejeune 70b9271cd8 rsx/d3d12: Record frame buffer content per draw call. 2015-11-08 19:34:18 +01:00
Vincent Lejeune 8da7361794 rsx: Expand some rsx register disasm. 2015-11-08 19:12:27 +01:00
Vincent Lejeune 0cc4b555d1 d3d12: Comment out LLVM_BUILTIN_UNREACHABLE and display error msg in log 2015-11-07 22:52:13 +01:00
Vincent Lejeune e76abf875f d3d12: Clean rtt related code 2015-11-07 22:52:12 +01:00
Vincent Lejeune 2a9895b7f0 rsx/d3d12: Move fragment constants filling code to ProgramStateCache 2015-11-06 20:08:45 +01:00
Vincent Lejeune 2ad7051746 rsx/d3d12: Move vertex constants filling code to RSXThread 2015-11-06 20:08:41 +01:00
Vincent Lejeune 02ce78482c rsx/d3d12: Move scale offset buffer setting to RSXThread 2015-11-06 20:08:17 +01:00
Zangetsu38 61755ed017 Fix Full screen in DX12 2015-11-04 15:32:44 +01:00
Vincent Lejeune 449c41aca2 d3d12: Support size changing depth buffer 2015-10-30 18:28:27 +01:00
Vincent Lejeune 2043181501 d3d12: Suppress a warning if no rtt is bound
Rendering depth only is legal.
2015-10-30 18:10:41 +01:00
Vincent Lejeune a2f7f371dc d3d12: Add an extra varying.
This fixes shader compilation for SH3 HD.
2015-10-30 00:04:10 +01:00
Vincent Lejeune 29cde1a618 d3d12: Clean Overlay code 2015-10-30 00:04:09 +01:00
Vincent Lejeune c570d60f45 d3d12: Add newline at the end of every file 2015-10-29 19:12:46 +01:00
Vincent Lejeune 893175f511 d3d12: Include some headers in stdafx_d3d12.h to speed up compilation 2015-10-29 19:11:25 +01:00
Vincent Lejeune c197b54774 d3d12: Rename D3D12GSRender function
Match a_b_c coding style.
2015-10-29 18:48:53 +01:00
Vincent Lejeune 124d0de325 d3d12: Move storage helpers to their dedicated files. 2015-10-29 18:48:52 +01:00
Vincent Lejeune fdae12c52e d3d12: Move empty texture slot filling code to D3D12Texture. 2015-10-29 18:48:52 +01:00
Vincent Lejeune 59c549ac86 d3d12: Clean D3D12GSRender
* Use anonymous namespace
* Use a_b_c code style
* Fix static analysis warning.
2015-10-29 18:48:51 +01:00
Vincent Lejeune 1ec18bdf64 RSX/common: Clean BufferUtils code
* Add noexcept
* Use a_b_c code style
* Use anonymous namespace
2015-10-29 18:48:50 +01:00
Vincent Lejeune 42467ba40f RSX/common: Clean TextureUtils code.
* Use a_b_c code style
* Add noexcept
* Use anonymous namespace
2015-10-29 18:48:50 +01:00
Vincent Lejeune 8f84fca0f2 d3d12: Fix some unintialised value warning. 2015-10-29 18:48:49 +01:00
Vincent Lejeune 0e3ab35e32 d3d12: Fix sampler border color 2015-10-29 18:48:48 +01:00
Vincent Lejeune 119126c60c d3d12: Move enum conversion to a separate files.
* Add noexcept
* Use unreachable
* Use a_b_c style
2015-10-29 18:48:48 +01:00
Vincent Lejeune 5c42a3cbc4 d3d12: Add a unreachable function used as debug/optimisation hint 2015-10-29 18:48:47 +01:00
Vincent Lejeune 6133590903 d3d12: Rename d3d12.h to avoid conflicts 2015-10-29 18:48:46 +01:00
Vincent Lejeune 8afa6e59b2 RSX: Returns texture bias as a float, considering the stored value is a half float. 2015-10-27 01:24:04 +01:00
Vincent Lejeune 9f49232cac d3d12: Avoid copying index data and use correct index range.
This fixes Braid.
2015-10-27 01:24:04 +01:00
Vincent Lejeune bc7e30517b d3d12: Add support for primitive restart. 2015-10-27 01:24:03 +01:00
Vincent Lejeune fe902cbb13 d3d12: Use provided constants to set alignments 2015-10-27 01:24:03 +01:00
Vincent Lejeune 42f3296791 d3d12: Try to support undef vertex input 2015-10-27 01:24:02 +01:00
O1L f842c206f3 Removed unneeded config saves and misprints 2015-10-27 01:41:12 +04:00
O1L c0255208cc Old ini-manager only partially used in VFS. Global configuration used as defualt. 2015-10-27 01:09:31 +04:00
O1L e8ebb005fd Again 2015-10-25 19:06:01 +04:00
O1L c64bbcf87a Oops 2015-10-25 18:55:56 +04:00
O1L 89f14ec5ac Ported more options in new ini-manager. Use later. 2015-10-25 18:44:49 +04:00
O1L 1673ba217c Do not try to change default config, use state configs. 2015-10-24 22:48:07 +04:00
O1L a273768c4d Compilation fix 2 2015-10-24 16:18:40 +04:00
O1L bc8b71cbc1 Compilation fix 2015-10-24 15:46:31 +04:00
O1L 9d6df238d5 Use custom configurations 2015-10-24 14:38:24 +04:00
Nekotekina fd628d8345 Minor changes 2015-10-22 22:38:34 +03:00
Nekotekina d4e0da3f80 DX12 fix + rpcs3-tests project 2015-10-21 13:31:29 +03:00
Nekotekina 8cfabf0ead Fixes 2015-10-20 18:55:34 +03:00
Raul Tambre 6f8544281a Fix a savedata access violation 2015-10-20 12:34:54 +03:00
Vincent Lejeune a462b4518c d3d12: Move d3d12 files to separate solution.
It simplify solution configurations.
2015-10-17 04:15:58 +02:00
Nekotekina 77bf86eaa5 Bugfix 2015-10-16 03:25:39 +03:00
Vincent Lejeune f5bd044096 d3d12: Lower alignement constraint for vertex index 2015-10-15 17:13:43 +02:00
Vincent Lejeune a2997a1109 d3d12: Avoid an extra vertex copy 2015-10-15 17:13:43 +02:00
Vincent Lejeune b0f8611f49 Common/GL/D3D12: Fix int vector ctor in vertex shader and a compare opcode. 2015-10-15 17:13:42 +02:00
Vincent Lejeune de97d3a7aa d3d12: Zero vertex shader output. 2015-10-15 17:13:42 +02:00
Vincent Lejeune 0e98da2306 d3d12: Make descriptor heap a little more compact. 2015-10-15 17:13:40 +02:00
Vincent Lejeune 5a064be490 Fix d3d12 build. 2015-10-15 17:05:56 +02:00
Nekotekina ec0005195d RSX fix 2015-10-14 22:51:27 +03:00
Nekotekina a974ee009e vm::var improved, cleanup
Mostly vm::var initialization introduced.
Added vm::make_var function.
2015-10-14 18:17:37 +03:00
DH a443682aaf OpenGL renderer fixes
Fixed attributes loading
Fixed scale-offset matrix
Fixed attribute debug option
2015-10-14 14:34:55 +03:00
DH 4a55ba3067 OpenGL renderer improvements
Flush program cache at thread exit
Use cached locations
2015-10-14 03:16:39 +03:00
DH 37a3800597 rsx:🧵 disable all vertex data at end command
Fixed OpenGL program attributes cache flush
2015-10-14 01:49:47 +03:00
Danila Malyutin 92e90101e2 Fix clang compiling 2015-10-13 23:32:25 +03:00
DH 5de1ea3fd4 Fixed bind rsx method to range implementation 2015-10-13 22:59:25 +03:00
DH 9136cbfcf2 Fixed compilation errors 2015-10-13 22:47:17 +03:00
DH 07b3897499 Trying do not use macro for methods binding to range 2015-10-13 20:44:58 +03:00
DH 737080274a Improved NV4097_BACK_END_WRITE_SEMAPHORE_RELEASE and NV4097_TEXTURE_READ_SEMAPHORE_RELEASE commands handling 2015-10-13 20:39:36 +03:00
DH e4f6eb04e8 Added new config system
Added emulator state class
Added emulator events
Minor improvements
2015-10-13 20:32:08 +03:00
Vincent Lejeune ff01e26c5c RSX: Fix immediate vertex values 2015-10-13 14:29:38 +02:00
Vincent Lejeune 2b60de32f9 fix dbg 2015-10-13 14:29:28 +02:00
Vincent Lejeune 3449bd3842 RSX: Fix debugger disasm. 2015-10-13 14:29:12 +02:00
Vincent Lejeune fc40b0ed6b RSX: Let backend customize semaphore_*_release 2015-10-13 14:28:58 +02:00
Vincent Lejeune 426c69710c Merge branch 'master' of https://github.com/RPCS3/rpcs3 into d3d12-fix 2015-10-13 14:28:11 +02:00
Vincent Lejeune a63fdf6c45 Use files from master
- Drop smart vertex storage and use OpenGL's one instead.
2015-10-13 14:27:17 +02:00
Vincent Lejeune 4154a1026f Rename RSXThread 2015-10-13 00:04:19 +02:00
Vincent Lejeune b5127e68de Remove m_ prefix 2015-10-13 00:04:18 +02:00
Vincent Lejeune dd000caad7 Remove context_dma* 2015-10-13 00:04:18 +02:00
Vincent Lejeune 86fff9800f Remove base offset 2015-10-13 00:04:16 +02:00
Vincent Lejeune 2679e4f526 remove rsxtransformconstant 2015-10-13 00:04:16 +02:00
Vincent Lejeune 1e431edf09 Remove fragment program 2015-10-13 00:04:15 +02:00
Vincent Lejeune 67f1f0fea3 Remove fragment constants 2015-10-13 00:04:15 +02:00
Vincent Lejeune beabc88f79 Remove transform constants 2015-10-13 00:04:14 +02:00
Vincent Lejeune e086b7a522 Remove cull/front face 2015-10-13 00:04:13 +02:00
Vincent Lejeune dd1afe85ae Remove alpha func 2015-10-13 00:04:13 +02:00
Vincent Lejeune 60bccf0f10 Remove RSXVertexArray 2015-10-13 00:04:12 +02:00
Vincent Lejeune 73535e0c04 remove m_surface* 2015-10-13 00:04:12 +02:00
Vincent Lejeune 16311b36b0 Remove viewport clip 2015-10-13 00:04:11 +02:00
Vincent Lejeune 537187687d Remove blend 2015-10-13 00:04:10 +02:00
Vincent Lejeune 403f585a19 Remove color mask 2015-10-13 00:04:10 +02:00
Vincent Lejeune 8dd19d1446 Remove color target 2015-10-13 00:04:09 +02:00
Vincent Lejeune 71552f7ffe Remove logic Op 2015-10-13 00:04:09 +02:00
Vincent Lejeune b2a7f0fd11 Remove stencil 2015-10-13 00:04:08 +02:00
Vincent Lejeune 529efd6ac8 Remove depth 2015-10-13 00:04:07 +02:00
Vincent Lejeune ed61023dd3 Remove clear_surface_color 2015-10-13 00:04:07 +02:00
Vincent Lejeune 28cdfa9feb Rename some methods. 2015-10-13 00:04:06 +02:00
Vincent Lejeune bf474f0cdb remove m_ for textures 2015-10-13 00:04:06 +02:00
Vincent Lejeune d27f6c8fa7 Use rsx::limits values 2015-10-13 00:04:05 +02:00
Vincent Lejeune 6f71d04aa4 move linear to swizzle and get_size_type
symbol undef though
2015-10-13 00:04:04 +02:00
Vincent Lejeune 3de47c201c RSX: Create a rsx namespace.
Put get_address inside.
2015-10-13 00:04:04 +02:00
Vincent Lejeune e3e5b46cbf Remove m_ prefix on some members of RSXThread 2015-10-13 00:04:03 +02:00
Vincent Lejeune 4cd9e5754e d3d12: Fix build in debug 2015-10-13 00:04:03 +02:00
Vincent Lejeune ceab44b9ab d3d12: Remove D3DGSFrame 2015-10-13 00:04:02 +02:00
Vincent Lejeune 0138a95567 RSX: Remove using namespace ps3 in header 2015-10-13 00:04:02 +02:00
Vincent Lejeune d86469c2f5 Add Utilities/types.h 2015-10-13 00:04:01 +02:00
Zangetsu38 97a67746f1 Fix Compilation error with Release/Debug on LLVM 2015-10-12 12:10:22 +02:00
DH fd6295c2f5 Added glm library 2015-10-09 20:06:28 +02:00
Vincent Lejeune f483c3b9ca Revert "Merge pull request #1245 from DHrpcs3/master"
This reverts commit 5feba39ff7, reversing
changes made to ebf28f8da0.
2015-10-09 20:04:20 +02:00
DH 98943fc9e8 Added @vlj to developers list (AboutDialog) 2015-10-09 12:29:24 +03:00
DH e11e67df28 Try to avoid internal gcc error 2015-10-08 01:30:03 +03:00
DH 6cb036d35f Fix for gcc/clang build 2015-10-08 00:05:04 +03:00
DH cc0c3fc98d Implemented fragment constants loading (OpenGL renderer)
Fixed nv308a::color
Minor improvements
2015-10-07 17:36:26 +03:00
DH 86720f90cd rsx:🧵 initialize flip_status
Fixed clear_surface (OpenGL)
Enabled some RSXDebugger features (disasm and textures/buffers view)
Minor improvements
2015-10-06 01:22:21 +03:00
DH 3721941ffb Fixed OpenGL renderer crash
Temporary downgraded OpenGL requirements to OpenGL 3.1 (GLSL 1.40)
Fixed some D3D12 Renderer compilation errors
2015-10-05 18:40:22 +03:00
DH 4fdeeace66 D3D12Renderer: fixed some compilation errors
Removed GSFrameBase2 and D3DGSFrame.
Added frame for NullRender.
Minor improvements and fixes
2015-10-05 13:03:23 +03:00
DH 1c890f85c5 OpenGL: do not align buffers 2015-10-05 12:56:05 +03:00
DH 6cd62a9fd0 OpenGL: fixed nv4097_clear_surface implementation
minor improvements
2015-10-05 12:56:05 +03:00
DH 1e7ded2163 rsx::thread moved from rsx2 branch
TODO: cellResc module & RsxDebugger disabled, DX12 renderer not compilable
2015-10-05 12:56:05 +03:00
DH a7262d34f0 Added glm library 2015-10-05 12:56:05 +03:00
Vincent Lejeune d511153836 Common: Fix element count computation if addr is null (RSXVertexData) 2015-10-05 01:57:57 +02:00
Vincent Lejeune 2f211e4e5a d3d12: Move adapter's description to settings. 2015-10-05 00:24:56 +02:00
Vincent Lejeune a5ecbd0b2b d3d12: Do not regenerate RTTs if they didn't change between draw call. 2015-10-05 00:24:56 +02:00
Vincent Lejeune 8d986e77d1 d3d12: Reuse texture resources 2015-10-05 00:24:55 +02:00
Vincent Lejeune 3d643fbc0b d3d12: Factorise texture cache management. 2015-10-05 00:24:55 +02:00
Nekotekina cd71125277 Git version fixed 2015-10-04 23:05:46 +03:00
Vincent Lejeune 81546d357c d3d12: Do not use atomic for heaps 2015-10-03 18:25:28 +02:00
Vincent Lejeune 3acc900363 d3d12: Clean dirty texture when releasing resource storage
When an app is exiting, remaining dirty texture could be left uncleant.
2015-10-03 18:25:27 +02:00
Vincent Lejeune 6b0d29a72d d3d12: Measure flip duration 2015-10-03 18:25:27 +02:00
Vincent Lejeune 442abcc6f1 d3d12: Wrap D3D11On12CreateDevice to avoid linking against D3D12 dll 2015-10-03 18:25:19 +02:00
Vincent Lejeune c7b7d1f71f Common: Move generic vertex buffer code from d3d12 backend 2015-10-03 18:25:19 +02:00
Vincent Lejeune 62d7bf2159 Common: Move generic upload texture code from d3d12 2015-10-03 18:25:18 +02:00
Vincent Lejeune 07e13b8613 d3d12: Suballocate from big buffer for texture upload too 2015-10-03 18:25:17 +02:00
Vincent Lejeune f1f31e22f9 d3d12: Use d3dx12 structs for Root signature declarations 2015-10-03 18:25:17 +02:00
Vincent Lejeune 9a0232bc87 d3d12: Use d3dx12.h defined structs for constant buffers code 2015-10-03 18:25:16 +02:00
Vincent Lejeune 8e83ad7b65 d3d12: Fix sampler descriptor stride in UploadTextures. 2015-10-03 18:25:16 +02:00
Vincent Lejeune 703b1636c8 d3d12: Do not use array size to get vertex buffer element count. 2015-10-03 18:25:15 +02:00
Raul Tambre 455d07e05b Bump version to 0.0.0.6 2015-10-02 21:43:13 +03:00
Zangetsu38 893a4e34a1 Little fix correct path for Game Data 2015-09-28 19:11:17 +02:00
Zangetsu38 f27e77c7e0 Adding the icon on window GL and DX12 2015-09-27 00:36:44 +02:00
Vincent Lejeune 37721d6b8a d3d12: Use big buffer instead of placed resource for vertex index storage
Increase perf in Disgaea 3
2015-09-25 22:35:22 +02:00
Vincent Lejeune 8ba74a7f7d d3d12: Add some more counter to debug overlay 2015-09-25 22:35:21 +02:00
Vincent Lejeune 506fdec6df d3d12: Copy vertexbuffer in vram for output scaling pass. 2015-09-25 22:35:21 +02:00
Vincent Lejeune de5a3451cd d3d12: Force command queue completion 2015-09-25 22:35:20 +02:00
Vincent Lejeune 23bd197bd4 d3d12: clean code 2015-09-25 22:35:19 +02:00
Vincent Lejeune f10c812301 d3d12: Use d3dx12.h defined struct. 2015-09-25 22:34:34 +02:00
Vincent Lejeune ae51ce2349 d3d12: Fix a comment 2015-09-25 16:24:45 +02:00
Vincent Lejeune fa6e2bfe02 d3d12: Add d3dx12.h from DX sample on github 2015-09-25 16:23:03 +02:00
Nekotekina 8ae3401ffa Some things improved
shared_mutex_t implemented
GUI Emu Callbacks rewritten
fxm::import, fxm::import_always implemented
cellMsgDialog rewritten
Emu.CallAfter improved (returns std::future)
2015-09-22 16:48:21 +03:00
Nekotekina 9d68c16c62 be_t (se_t) optimizations 2015-09-22 13:28:35 +03:00
Nekotekina 59f1077a36 Cleanup, be_t fixed
Some functions renamed:
get_ps3_function_name
execute_syscall_by_index
2015-09-22 13:28:34 +03:00
Nekotekina 4e62ec7458 PKG Installer fixed, u128 improved 2015-09-22 13:28:32 +03:00
Nekotekina 12f36cf31f Experimental class template Module<T>
Allocates ps3 memory for specific instance T
2015-09-22 13:28:31 +03:00
Nekotekina 093ecc0a02 CALL_FUNC macro fixed
Now it can call any HLE function, possibly using LLE if available.
2015-09-22 13:28:29 +03:00
Danila Malyutin 11eeab0a1a PPU/LLVM: Added noexcept and some fixes 2015-09-19 17:09:50 +03:00
Danila Malyutin 3208a7713f PPU/LLVM: Fix for crashes on exit with jit 2015-09-19 17:09:49 +03:00
Vincent Lejeune 97f62571ff d3d12: Properly clean protected page in dtor 2015-09-18 22:36:22 +02:00
Vincent Lejeune c31c0c40a4 d3d12: Fix ARGB8 swizzle and support swizzling of rtts
Fix harem tengoku colors.
2015-09-18 22:36:21 +02:00
Vincent Lejeune 12f00a5e16 d3d12: Fix indexed triangle fan emulation. 2015-09-18 22:36:21 +02:00
Vincent Lejeune 0da893695e d3d12: Fix buffer upload with a base vertex. 2015-09-18 22:36:20 +02:00
Vincent Lejeune 5f08cca849 d3d12: Do not init D2DStruct if uneeded 2015-09-18 22:36:19 +02:00
Vincent Lejeune 72e5578595 d3d12: Get rid of extra garbage collection off 2015-09-18 22:36:19 +02:00
Vincent Lejeune bf04758285 d3d12: Submit command list every draw call in debug mode 2015-09-18 22:36:18 +02:00
Vincent Lejeune 7d15cc0dfd d3d12: Build shader in debug mode if debug output is enabled. 2015-09-18 22:36:18 +02:00
Vincent Lejeune 05c5058dfd PPU/LLVM: Remove useless call to NotifyBlockStart
Likely a rebase error, with this Metal Slug can run at 60 fps again.
2015-09-16 22:39:49 +02:00
Nekotekina 91c98a9533 Fix issue #1223 2015-09-16 21:31:41 +03:00
Vincent Lejeune c407c786cc PPU/LLVM: Do not notify already compiled block.
Also flush m_pending_address_start to avoid memory consumption
explosion.
2015-09-15 19:21:40 +02:00
Vincent Lejeune ecb3d93918 PPU/LLVM: Remove lock in GetCompiledExecutableIfAvailable
This should increase performance a lot in some case.
2015-09-15 19:21:40 +02:00
Vincent Lejeune 667cb64c29 PPU/LLVM: Rename ProcessExecutionTrace to better reflect what it does. 2015-09-15 19:21:40 +02:00
Vincent Lejeune 359258c3d3 PPU/LLVM: Increase recompiler thread responsiveness. 2015-09-15 19:21:39 +02:00
Vincent Lejeune 9d18bba1df PPU/LLVM: Propagate exceptions
It fixes a crash in Retro City Rampage with low (ie 10) llvm threshold.
2015-09-15 19:21:39 +02:00
Raul Tambre 8204737efa Implement GetLicenseArea, category improvements
Also fixed newlines, CellSailEvent, fixed CellMusic changes, fixed
console_write, fixed L10n changes and removed the login dialog for now,
until a more proper implementation.
2015-09-13 10:26:01 +03:00
Raul Tambre ea376e7751 Implement console_write and GetHomeDataExportPath 2015-09-12 14:11:26 +03:00
Raul Tambre cd7fbae583 Implement NetStartDialogLoadAsync, L10N additions
Also improved cellPadPeriphGetInfo
2015-09-10 17:13:31 +03:00
Raul Tambre f9731de777 HddGameCheck fix and Music/Avc2 improvements 2015-09-10 16:09:31 +03:00
Nekotekina cbe83ad8dd Various fixes 2015-09-08 13:47:00 +03:00
Raul Tambre 4666f190db Fix BRI instruction, fixes #1165 2015-09-07 20:14:00 +03:00
Raul Tambre de97c8e20f Add RPCS3 version to logging
Also fixed the link pointing to the RPCS3 forum.
2015-09-07 20:13:42 +03:00
Raul Tambre 09673c928c cellVideoOut accuracy improved, logging additions
Now basic settings are logged in the start of every log, to help devs in
determining  possible problems, when users test or try to run certain
games.
2015-09-07 20:00:58 +03:00
Raul Tambre c923cb54d3 cellGem and cellGameExec improvements 2015-09-07 20:00:33 +03:00
Raul Tambre 218e823fdc More cellSailFuture/Player improvements 2015-09-07 19:54:03 +03:00
Raul Tambre 5a7327492a Various cellSailPlayer improvements
Added default attributes, fixed a Travis error and added currently
broken player booting that I can't figure out.
2015-09-07 19:51:38 +03:00
Raul Tambre c9f3871c68 cellSail improvements 2015-09-07 19:47:54 +03:00
Raul Tambre ff3bfa1ca2 Implement cellVideoOutGetGamma/SetGamma
Also fixed settings window being too small and some minor formatting.
2015-09-07 16:33:25 +03:00
Nekotekina 7e01c81154 SPU Recompiler fixed 2015-09-07 00:36:32 +03:00
Nekotekina 817fec9684 SPU Cleanup
SPURecompiler improved
Old SPU decoder removed
SPU Interpreters merged
2015-09-02 00:38:44 +03:00
Vincent Lejeune 58181c5c17 PPU/LLVM: Remove indirect call completly 2015-09-01 18:58:14 +03:00
Vincent Lejeune 60d5dd40f7 PPU/LLVM: Fix unsigned/signed type comparaison warning 2015-09-01 18:58:12 +03:00
Vincent Lejeune 02a1bffc12 PPU/LLVM: Simplify trace management 2015-09-01 18:58:11 +03:00
Vincent Lejeune f2c8db75bf PPU/LLVM: Do not recompile blocks 2015-09-01 18:58:10 +03:00
potmdehex 665f316a3b Replace sprintf with fmt::format 2015-08-30 20:26:16 -07:00
Vincent Lejeune 5fe3ea6440 PPU/LLVM: Use a big table instead of an unordered_map to get compilation result.
The hashmap overhead may be really big in some case.
2015-08-26 22:22:01 +02:00
Vincent Lejeune 942f26509b Memory: Factorize virtual memory reservation/allocation code in function 2015-08-26 21:54:40 +02:00
Vincent Lejeune 241dedef4e PPU/LLVM: Properly print verification string 2015-08-26 21:54:40 +02:00
Vincent Lejeune eb90e509f9 PPU/LLVM: Avoid using an indirect call for function call 2015-08-26 21:54:39 +02:00
Vincent Lejeune b2ca9edde2 PPU/LLVM: Use ExecuteFunction in ExecuteTillReturn 2015-08-26 21:54:39 +02:00
Vincent Lejeune f81192373f PPU/LLVM: Replace magic number with opcode enum in GetBranchTypeFromInstruction. 2015-08-26 21:54:39 +02:00
Vincent Lejeune e0aa74d380 D3D12: Add CELL_GCM_ZERO case to comparaison function. 2015-08-26 18:45:57 +02:00
Vincent Lejeune 095c8fa19b RSX/D3D12: Improve shader lookup performance 2015-08-26 18:45:57 +02:00
Vincent Lejeune 9c24bb9d75 RSX/D3D12/GL/Null: Notify backend of program/state change 2015-08-26 18:45:57 +02:00
Danila Malyutin 3468a7ebcf PPU/LLVM: Add regression tests for SUBFIC 2015-08-26 14:39:50 +03:00
Danila Malyutin 8ea7da56ec PPU/LLVM: Fix SUBFIC instruction
Fixes sprites in Disgaea 3
2015-08-26 14:39:48 +03:00
Danila Malyutin 4bf0deecb6 Fix zlib lib linking order.
It should be AFTER lib that requires it.
2015-08-26 14:32:09 +03:00
Nekotekina e551e2bc5d Bugfix 2015-08-24 21:22:49 +03:00
Nekotekina 5e14310071 noexcept usage fixed
thread_t renamed to named_thread_t
2015-08-24 21:22:48 +03:00
Nekotekina 168cd9bb7a TLS for sys_net implemented
Method ptr for vm::ptr (renamed "of")
Method ref for vm::ptr (returns vm::ref)
Operator & for vm::ref (returns vm::ptr)
2015-08-24 21:22:46 +03:00
Nekotekina 6b6cd11fbe cellSaveData fix 2015-08-24 21:22:45 +03:00
Nekotekina fcd6b64f8f vm::var rewritten 2015-08-24 21:22:44 +03:00
Nekotekina 9c8773252a Minor style changes (sys_net) 2015-08-24 21:22:43 +03:00
Nekotekina ce494f8847 fmt::by_value, fmt::Format removed 2015-08-24 21:22:42 +03:00
Nekotekina 15057ffc5e wtf? 2015-08-24 21:22:40 +03:00
Nekotekina 73b108765e fs:: const renaming, fs::g_tls_error stub 2015-08-24 21:22:39 +03:00
Nekotekina c2897cddd6 id_traits, idm::get_last_id() added
id_traits for file/dir descriptors
idm::get_current_id() removed, thread-local last ID
2015-08-24 21:22:38 +03:00
Nekotekina d9403c2ed2 thread_t cleanup 2015-08-24 21:22:37 +03:00
Nekotekina be9a599beb PPU Decoder Cache improved 2015-08-24 21:22:35 +03:00
Nekotekina eb63558c6d KernelExplorer improved 2015-08-24 21:22:34 +03:00
Nekotekina e18db20630 VFS cleanup, some methods added
VFS::DeleteAll, VFS::GetDirSize, VFS::Exists, VFS::Rename
(VFS::RenameFile, VFS::RenameDir removed)
2015-08-24 21:22:33 +03:00
Nekotekina db88c539fb idm::get_type, sceKernelGetThreadmgrUIDClass 2015-08-24 21:22:32 +03:00
Nekotekina c6bdedf3b0 sleep_queue_t moved to SleepQueue.cpp, cleanup
Used ARMv7Thread instead of ARMv7Context in PSV HLE functions and
callbacks. However, interpreter still uses ARMv7Context.
Various PSV functions partially implemented:
sceKernelCreateEventFlag
sceKernelDeleteEventFlag
sceKernelOpenEventFlag
sceKernelCloseEventFlag
sceKernelWaitEventFlag
sceKernelWaitEventFlagCB
sceKernelPollEventFlag
sceKernelSetEventFlag
sceKernelClearEventFlag
sceKernelCancelEventFlag
sceKernelGetEventFlagInfo
sceKernelCreateSema
sceKernelDeleteSema
sceKernelCreateMutex
sceKernelDeleteMutex
sceKernelCreateCond
sceKernelDeleteCond
2015-08-24 21:22:30 +03:00
Nekotekina 94d1488259 IdManager funcs added: idm::import, idm::withdraw 2015-08-24 21:22:29 +03:00
Nekotekina 8b3c250702 PKG decryption without the intermediate 2015-08-24 21:22:28 +03:00
Nekotekina 07b9379a7c New u128 type stub 2015-08-24 21:22:27 +03:00
Nekotekina 8d758b9088 alignas() used instead of set_alignment macro 2015-08-24 21:22:25 +03:00
Nekotekina 544fe531a3 Added fxm::withdraw, cellGame improved 2015-08-24 21:22:24 +03:00
Nekotekina 6f3c50eba2 u128 renamed to v128
Since it's vector union type
2015-08-24 21:22:23 +03:00
Nekotekina f8afee3325 Fixed Object Manager (detached) 2015-08-24 21:22:22 +03:00
Nekotekina 9923f96431 Added PSP PKG support 2015-08-24 21:22:21 +03:00
Nekotekina dd665e7363 ID manager simplified
ID manager refactoring, redundant "type" information removed
2015-08-24 21:22:19 +03:00
Nekotekina da8883d5d3 cellSaveData definitions shortened 2015-08-24 21:22:18 +03:00
Nekotekina 2113fce2fb cellFont, cellRudp cleanup 2015-08-24 21:22:17 +03:00
Nekotekina 9e5daa1737 IdManager improved, added Fixed ID mechanism
Fixed UB in get_current_id()
2015-08-24 21:22:15 +03:00
Nekotekina c7ee8cadde cellFont, cellFs, cellGcmSys funcs added, minor cleanup 2015-08-24 21:22:14 +03:00
O1L c0b90d01bd Add LLVM Debug / Release configurations for gui solution. Disable some DX12-only options on non-DX12 builds 2015-08-24 20:54:35 +03:00
O1L 6ae7f450f1 Compilation fix 2015-08-24 00:23:31 +03:00
O1L 3c27bf0a6a Gui: separate 'Settings' code from MainFrame.cpp, minor cleanup 2015-08-24 00:23:30 +03:00
Danila Malyutin b01583f54b Some fixes for possible *nix compiler errors 2015-08-24 00:20:06 +03:00
Danila Malyutin d0283265cc Improve clock_gettime on osx
and some clean up
2015-08-24 00:20:02 +03:00
Danila Malyutin 009370f73c Fix some compiling problems on OSX
and enable osx builds on travis
2015-08-24 00:20:01 +03:00
Vincent Lejeune 1ee749a9a8 d3d12: Fix blend alpha mode
Follow GL spec.
2015-08-17 22:12:58 +02:00
Vincent Lejeune 592543c47f d3d12: Fix wrong index being used for sampler descriptor heap
Fix a crash in Disgaea 3 with debug output enabled.
2015-08-17 00:12:30 +02:00
Vincent Lejeune be1511bd7a d3d12: Add a d2d overlay to display debug text 2015-08-16 23:00:55 +02:00
Vincent Lejeune fcd579a7b5 d3d12: Record draw call count and duration instead of vertex/texture upload 2015-08-16 23:00:46 +02:00
Vincent Lejeune 0e733b20de Lower minidx9/Include priority 2015-08-16 23:00:35 +02:00
Vincent Lejeune 80c25b8ced d3d12: Reuse the same command list until flip or semaphoreRelease 2015-08-16 23:00:27 +02:00
Vincent Lejeune a93a81997f d3d12: Remove preventive "waitForCompletion" after a flip. 2015-08-16 23:45:56 +03:00
Vincent Lejeune a852d5caca d3d12: Disable openMP
It actually decreases performance.
2015-08-16 23:45:54 +03:00
Vincent Lejeune 06532e3263 d3d12: Do not invalidate surface texture if they are not set.
Fix hang with depth read texture and color buffer enabled.
2015-08-16 23:45:52 +03:00
Vincent Lejeune 63a54dd70d d3d12: Rewrite per frame resource cleaning function. 2015-08-16 23:45:51 +03:00
Vincent Lejeune c2430d3af1 d3d12: Use ComPtr for some others member. 2015-08-16 23:45:49 +03:00
Vincent Lejeune b54adebfc7 d3d12: Do not recreate fence/event each frame. 2015-08-16 23:45:47 +03:00
Danila Malyutin 7460d215fd Fix travis OoM crash with gcc and -O3
Until with move to containers.
2015-08-16 23:40:09 +03:00
Danila Malyutin 5bf6c25652 Remove unneeded code (fixes flag "conflicts")
cmake should add appropriate flags depending on build type automatically
2015-08-16 23:40:07 +03:00
Danila Malyutin 0fb8ad8c5a Update Cotire to 1.7.3
It fixes some bugs. Also use add_compile_options instead of add_defenitions where necessary
2015-08-16 23:40:05 +03:00
Danila Malyutin aeee0758c2 Ignore warnings in VS from llvm headers 2015-08-16 23:40:03 +03:00
Danila Malyutin 83b77ced9e Fix openal lib name in debug-memleak
is this config even working?
2015-08-16 23:40:01 +03:00
Nekotekina 405d7cb70c Revert "RSX: Fix NV3089"
This reverts commit a86e44deb4.
Reasons: it's broken and not strictly related with d3d12 PR.
2015-08-16 18:37:20 +03:00
Raul Tambre 0ce4930c0f Merge pull request #1177 from Zangetsu38/Getsuga
Fix correct size setting windows.
2015-08-15 10:38:29 +03:00
Raul Tambre a3dc623270 Merge pull request #1181 from vlj/d3d12
D3d12: Fixes
2015-08-15 10:31:35 +03:00
Vincent Lejeune 3b0afe92e3 d3d12: Add a dummy D3D12Lib struct that load/unload d3d12.dll
It allows to unload the lib after everything else has been released, it
fixes a crash when leaving an app with d3d12 backend.
2015-08-14 23:39:38 +02:00
Vincent Lejeune 09cc127dd9 d3d12: Use ComPtr<> instead of manually releasing some structures 2015-08-14 23:39:37 +02:00
Vincent Lejeune 9cb88b3a8d d3d12: Use ThrowIfFailed instead of check to be inline with DX12 Samples 2015-08-14 23:39:37 +02:00
KaOs1 f3d7c5da9d sys_mempool implementation fixes 2015-08-14 22:44:41 +03:00
KaOs1 bc13128afe sys_mempool implemented 2015-08-14 22:44:39 +03:00
Vincent Lejeune befe93784f d3d12: Do not create/submit an extra command list for texture upload/rtt state change 2015-08-14 21:23:30 +02:00
Zangetsu38 732eef6c02 Update with master and Fixed Conflict 2015-08-14 19:35:58 +02:00
Vincent Lejeune 4185fcb6cd d3d12: Do not output scale if there is no rtt available
Fix crash in Disgaea 3
2015-08-14 17:03:16 +02:00
Raul Tambre 850416d530 Merge pull request #1169 from vlj/d3d12
Implement a d3d12 backend
2015-08-14 17:44:27 +03:00
Vincent Lejeune abee3539b8 d3d12: Fix non dx12 build config 2015-08-14 00:29:22 +02:00
Raul Tambre 07f33a3809 Merge pull request #1178 from danilaml/appveyor-llvm-dx12
Add llvm build to appveyor and fix wrong xaudio lib with cmake
2015-08-13 09:31:42 +03:00
Danila Malyutin 99156c61e4 Fix wrong XAudio lib being linked 2015-08-13 01:12:15 +03:00
Vincent Lejeune 9cb7339067 d3d12: Do not detach garbage collection thread
Thanks Neko for the tips.
2015-08-12 22:59:15 +02:00
Zangetsu38 5e9eb9c3bb Fix correct size setting windows.
And other small change
2015-08-12 17:41:46 +02:00
Raul Tambre a775b428f4 Merge pull request #1173 from vlj/llvm36-debug
Add debug options for llvm compiler
2015-08-12 17:53:49 +03:00
Vincent Lejeune cf1c86bb2f d3d12: Signal thread termination request + use a producer/consumer pattern closer to other ones in rpcs3. 2015-08-12 00:28:38 +02:00
Vincent Lejeune 7843b23ee1 Move DX12_SUPPORT before ($preprocessor defenitions) 2015-08-12 00:28:38 +02:00
Zangetsu38 f0a5641cf0 Fix file not found 2015-08-12 00:28:37 +02:00
Vincent Lejeune 3fe90d9e8d Add DX12 variant of debug/release with and without llvm 2015-08-12 00:28:37 +02:00
Vincent Lejeune 3d486a8ba9 d3d12: Reset gfxHandler in dtor 2015-08-12 00:28:36 +02:00
Vincent Lejeune 11980346c9 Clean an useless added line 2015-08-12 00:28:36 +02:00
vlj 6a408301d7 d3d12: Another fix 2015-08-12 00:28:35 +02:00
vlj 9b10895c38 d3d12: Fix build with latest master 2015-08-12 00:28:35 +02:00
vlj 6fcd0e0421 d3d12: Add semaphorePGRAPHTextureRead 2015-08-12 00:28:34 +02:00
vlj 37cc5e5c11 d3d12: Fix D3D12GSRender member name 2015-08-12 00:28:34 +02:00
vlj 38a809b483 d3d12: Use another sampler heap when using more than 2048 samplers 2015-08-12 00:28:34 +02:00
vlj d2edeafffe d3d12: Remove extra , 2015-08-12 00:28:33 +02:00
vlj b839b86895 d3d12: Fix color for target_none 2015-08-12 00:28:33 +02:00
vlj af181395fc d3d12: Fix warning 2015-08-12 00:28:32 +02:00
vlj 265331117e d3d12: Support targetless flip
Fix PS3Doom
2015-08-12 00:28:32 +02:00
vlj 725b0c606d d3d12: Add some doc 2015-08-12 00:28:31 +02:00
vlj 0e6cd8cd0e d3d12: Fix warnings 2015-08-12 00:28:31 +02:00
vlj ff219c6035 d3d12: Factorise sampler desc creation in a separate function 2015-08-12 00:28:30 +02:00
vlj 612d169b78 d3d12: Add some comments 2015-08-12 00:28:30 +02:00
vlj 8801abb93a d3d12: Refactor index management
Separates it from vertex management and move all the logic (forced
indexing, index count calculation...) outside of GSRender.
2015-08-12 00:28:29 +02:00
vlj 1f3fbe91e2 d3d12: Don't call GetAddress if context_dma is not set 2015-08-12 00:28:29 +02:00
vlj 91809c09d4 d3d12: use memcpy instead of streamToBuffer for alpha settings
streamToBuffer doesn't work well for data < 128 bits
2015-08-12 00:28:28 +02:00
vlj bf394d4f56 d3d12: Support triangle fan
Fix missing character members in the guided fate paradox
2015-08-12 00:28:28 +02:00
vlj 6f0c74cf76 d3d12: Fix crash with write color/depth buffer enabled 2015-08-12 00:28:27 +02:00
vlj 428d66598d d3d12: Move util shader creation in another file 2015-08-12 00:28:27 +02:00
vlj 2cd035d530 d3d12: Fix A1R5G5B5 endianness
Fix color in Retro city rampage
2015-08-12 00:28:27 +02:00
vlj cb0ebad210 d3d12: Fix binding of tex/sampler 2015-08-12 00:28:26 +02:00
vlj 3cc3974466 d3d12: Fix m_ctrl not being properly passed to fragement decompiler
Fix Retro City Rampage
2015-08-12 00:28:26 +02:00
vlj 45b7da6666 d3d12: Mipmap offset is 512byte aligned
Fix retro city rampage crash at startup
2015-08-12 00:28:25 +02:00
vlj 6cb00e681b d3d12: support swizzled CELL_GCM_TEXTURE_A4R4G4B4
Fix terraria menu
2015-08-12 00:28:25 +02:00
vlj 40a3b5c918 d3d12: Mark semaphore location as volatile 2015-08-12 00:28:24 +02:00
vlj a519aa8350 d3d12: Add a (ugly) fix because of some race condition somewhere 2015-08-12 00:28:24 +02:00
vlj 8cf6255d5d d3d12: Fix unneeeded vectors 2015-08-12 00:28:23 +02:00
vlj fc65f181a7 d3d12: Fix a potential crash in GC thread 2015-08-12 00:28:23 +02:00
vlj 16fa3697db d3d12: Use atomic for data heap 2015-08-12 00:28:22 +02:00
vlj de55d64781 d3d12: Make canAlloc function const 2015-08-12 00:28:22 +02:00
vlj fd269f3adc d3d12: Fix alloc function
It may generate wrong result in very rare circumstance, although I never
experienced it.
2015-08-12 00:28:21 +02:00
vlj 3472f75ae0 d3d12: Fix uninitialized variables 2015-08-12 00:28:21 +02:00
vlj d4b83bcf6f d3d12: Try to factorise CPU/GPU descriptor handle gen
I'm still not satisfied with it but I didn't find another way to make it
compact and readable.
2015-08-12 00:28:20 +02:00
vlj 1c7bff4d36 d3d12: Use align instead of powerOf2Align 2015-08-12 00:28:20 +02:00
vlj 5e33d5535d d3d12: Add a TODO notice at the beginning 2015-08-12 00:28:19 +02:00
vlj 141c7ef340 d3d12: Do not cache non buffer vertex attribute
Fix dice test
2015-08-12 00:28:19 +02:00
vlj 73aeda1507 d3d12: Use stream to buffer to upload vertex constants 2015-08-12 00:28:19 +02:00
vlj 2c802735bd d3d12: Fix crash + use ref instead of copying in some for loops 2015-08-12 00:28:18 +02:00
vlj 865445e29b d3d12: Remove m_textureData heap since it wasn't used
Free 512 mb
2015-08-12 00:28:18 +02:00
vlj 8f31211557 d3d12: Avoid copying 8k of constant data per draw call 2015-08-12 00:28:17 +02:00
vlj d88d078f4a d3d12: Fix left over commented code 2015-08-12 00:28:17 +02:00
vlj 5102241ac2 d3d12: Compute texture size in host mem 2015-08-12 00:28:16 +02:00
vlj 4ee66a2680 d3d12: Implement intraframe vertex caching 2015-08-12 00:28:16 +02:00
vlj 294d649012 d3d12: Fix a type warning 2015-08-12 00:28:15 +02:00
vlj d29b82566e d3d12: Fix memleak 2015-08-12 00:28:15 +02:00
vlj c6a5e905bc d3d12: enable texture caching
Bring a little more perf in arkedo 2
2015-08-12 00:28:14 +02:00
vlj 8cc9642b96 Completly unclean way to track texture modification between frames 2015-08-12 00:28:14 +02:00
vlj 03a84cb208 d3d12: Measure time spent uploading texture and vertex 2015-08-12 00:28:13 +02:00
vlj 3f495689c0 d3d12: Ignore texture with 0 width/height
Fix crash in voodoo chronicles.
2015-08-12 00:28:13 +02:00
vlj ad3e50f90f d3d12: Do not guess texture size but use actual value 2015-08-12 00:28:12 +02:00
vlj 628acbf0b4 d3d12: Do not reserve a lot more than necessary. 2015-08-12 00:28:12 +02:00
vlj dbcddcf5e2 d3d12: Clean up texture upload code
Should be easier to read code (and spot bugs).
Fix crash with mipmap and DXTCn texture format.
2015-08-12 00:28:11 +02:00
vlj eda3c9084e d3d12: Fix mipmap data 2015-08-12 00:28:11 +02:00
vlj 178d0e0e85 d3d12: Try implement mipmap
The mipmap level below 0 are currently wrong, find out why
2015-08-12 00:28:11 +02:00
vlj d23cf861f1 d3d12: Factorize ring buffer like code to depth/color buffer migration 2015-08-12 00:28:10 +02:00
vlj dca9ae6ab5 d3d12: Factorize cleaning function for heaps 2015-08-12 00:28:10 +02:00
vlj aa66ddcd86 d3d12: Add some code documentation + rename some functions 2015-08-12 00:28:09 +02:00
vlj f2d39d0e82 d3d12: Use fixed width/height scale and use surface_clip info for scaleOffset matrix
Thanks to raven02 for the patch.
2015-08-12 00:28:09 +02:00
vlj f59bc86ac5 d3d12: Fix scaling for terraria/Voodoo chronicles
It break render_to_target test but it looks like an issue with
scale/offset buffer rather than viewport/scissor
2015-08-12 00:28:08 +02:00
vlj 09ccd7e436 d3d12: Fix crash with W16Z16Y16X16 texture format 2015-08-12 00:28:08 +02:00
vlj 2310ba137f d3d12: Fix crash with rescaling pass 2015-08-12 00:28:07 +02:00
vlj 9fdb6f0dad d3d12: Fix color of scaling output 2015-08-12 00:28:07 +02:00
vlj 281f8be76f d3d12: Enable scaling pass
The output is black and white, need to find out why.
2015-08-12 00:28:06 +02:00
vlj 224bae383c d3d12: Add some code that will scale final render target 2015-08-12 00:28:06 +02:00
vlj f55bb7165c d3d12: Load dll at runtime 2015-08-12 00:28:05 +02:00
vlj 006d989304 d3d12: Uncomment code that shouldn't have been commented out 2015-08-12 00:28:05 +02:00
raven02 00c975b469 d3d12: use gcm buffer width and height for copy texture region
It fixes crash in Voodoo Chronicles and Terraria
2015-08-12 00:28:04 +02:00
vlj e36c4f75e0 d3d12; Fix swizzle for B8 texture format
Fix menu in guided fate paradox for WARP
2015-08-12 00:28:04 +02:00
vlj 41577b5018 d3d12: Fix some warnings 2015-08-12 00:28:03 +02:00
vlj 17e169e652 d3d12: Fix crash at exit + tweak heap sizes to make dice test working 2015-08-12 00:28:03 +02:00
vlj 75a52219e0 d3d12: Rewind constant buffers get value 2015-08-12 00:28:03 +02:00
vlj c53828787a d3d12: Emit an error if waiting for too long for semaphore 2015-08-12 00:28:02 +02:00
vlj d2c13bc4c1 d3d12: Use a commited resource for constant buffer
Since we rarely use more than 1k of constant data we waste space due to
alignment requirement with heap so use a commited resource instead.
2015-08-12 00:28:02 +02:00
vlj 2f54482592 d3d12: Make depth test optionnal and use (0,0,0,0) when texture unit is disabled 2015-08-12 00:28:01 +02:00
raven02 482a371bb0 d3d12: set max_depth_value based on depth format 2015-08-12 00:26:54 +02:00
raven02 da923f8a3d d3d12: declare bufferSize for allocation 2015-08-12 00:26:53 +02:00
raven02 cf27d4c2ca d3d12: Fix pitch in COMPRESSED_DXT23/DXT45
Make pm_zcull.ppu.elf renders correctly.
2015-08-12 00:26:53 +02:00
vlj 24c23dc5f6 d3d12: Use dummy texture to fill empty texture slot
vertex attribute test has a shader that reads a texture, but rpcs3
doesn't provide the texture ; this makes WARP crash.
2015-08-12 00:26:52 +02:00
vlj cfde5698c7 d3d12: Fix swizzling for D8R8G8B8
Fix human.ppu.elf demo
2015-08-12 00:26:52 +02:00
vlj 70b537c8c2 d3d12: Implement discard
Should make alpha test kill test almost working as it should.
2015-08-12 00:26:51 +02:00
vlj dc1a57e71c d3d12: Fix color masking
Wasn't using the correct PSO state variable
2015-08-12 00:26:51 +02:00
raven02 724159c8b4 d3d12: warning log fix 2015-08-12 00:26:50 +02:00
raven02 a86e44deb4 RSX: Fix NV3089
Make convert_swizzle.elf works
2015-08-12 00:26:50 +02:00
vlj 93e20c0853 d3d12: Fix index count 2015-08-12 00:26:49 +02:00
vlj 8b631d486c d3d12: Fix build 2015-08-12 00:26:49 +02:00
raven02 48e6db3a2f d3d12: use CELL_GCM suffix for filter 2015-08-12 00:26:48 +02:00
vlj 224503d2dc d3d12: Move program related code out of D3D12GSRender and some get* format functions 2015-08-12 00:26:48 +02:00
vlj ad55cced13 d3d12: Fix vertex buffer sometimes incomplete. 2015-08-12 00:26:47 +02:00
vlj e55949dbfa d3d12: Use h0 in fragment decompiler when there is no r0
Partially fix alpha kill test.
2015-08-12 00:26:47 +02:00
vlj 8669dac5e7 d3d12: Implement sampler filters properly
Fix menu in the guided fate paradox
2015-08-12 00:26:46 +02:00
vlj 2d0dbf4949 d3d12: Async semaphore leads to deadlock, make it sync, but do resource garbage collection async 2015-08-12 00:26:46 +02:00
vlj 10b92d45d1 d3d12: Use RSXThread width height for viewport
Thanks to raven02 for finding this, it fixes render to texture test
2015-08-12 00:26:45 +02:00
vlj 4966ab565a d3d12; Clean resource sooner and fix crash with VS debugger. 2015-08-12 00:26:45 +02:00
raven02 1837f40ed4 d3d12: Factorize common use functions among frag and vertex decompiler 2015-08-12 00:26:44 +02:00
vlj e38bf8d51f d3d12: Fix rgba16float endianness for textures 2015-08-12 00:26:44 +02:00
vlj ff9f348ec2 d3d12: Use finer pitch when downloading rtt 2015-08-12 00:26:43 +02:00
vlj c2d3c857b6 d3d12: Handle w16Z16Y16X16 rtt format
It doesnt fix completly render_to_texture test but it helps.
2015-08-12 00:26:43 +02:00
vlj b8ba902657 d3d12: Fix rtt size (and crash in render_to_texture test) 2015-08-12 00:26:42 +02:00
vlj 33daa81e6f d3d12: Fix some src pitch 2015-08-12 00:26:42 +02:00
raven02 68d3f6f536 d3d12: minor cleanup 2015-08-12 00:26:41 +02:00
raven02 4ef66e6901 d3d12: Add blend for MRT 2015-08-12 00:26:41 +02:00
raven02 e72d098ea1 d3d12: use CELL_GCM suffix 2015-08-12 00:26:40 +02:00
vlj 8474cd8064 d3d12: Fix pitch for compressed textures 2015-08-12 00:26:40 +02:00
vlj 27e56b6199 d3d12: Do not set mask if not requested 2015-08-12 00:26:39 +02:00
vlj bdeb08e045 d3d12: Add color masking 2015-08-12 00:26:39 +02:00
vlj acb8f82f84 d3d12: Add front/back face culling setting 2015-08-12 00:26:38 +02:00
vlj b465992178 d3d12: Fix stencil op
Thanks to raven02 for noticing them !
2015-08-12 00:26:38 +02:00
vlj c73d19161b d3d12: Disable depth/color buffer write if not requested
Doesnt really increase performance...
2015-08-12 00:26:37 +02:00
vlj d564c25241 d3d12: Use real depth function too 2015-08-12 00:26:37 +02:00
vlj b2ad49bac8 d3d12: Check blend and depth stencil state when evaluating pso equality 2015-08-12 00:26:36 +02:00
vlj 5f46b32616 d3d12: Use instancing to pass constant vertex attribute
Maybe a bit hackish but it works.
2015-08-12 00:26:36 +02:00
vlj 64a555caca d3d12: Write data to single vertex attrib
stencil reflect has some color but it's still broken.
2015-08-12 00:26:35 +02:00
vlj 02f15810ee d3d12: Implement stencil states
Unfortunatly it doesnt solve stencil reflect test atm
2015-08-12 00:26:35 +02:00
vlj e3b73f9ea0 d3d12: Fix vertex error in stencil reflect 2015-08-12 00:26:34 +02:00
vlj 381260a493 d3d12: Check IALayout equality in pipeline state 2015-08-12 00:26:34 +02:00
vlj e4435a9308 DPH disappeared when merging, need to merge commit with the initial one 2015-08-12 00:26:34 +02:00
vlj 22e67db0f2 d3d12: Add some others texture format 2015-08-12 00:26:33 +02:00
vlj c3e19f34fa gl: sampler2d are constants 2015-08-12 00:26:33 +02:00
vlj ca90c05b0a gl : refix 2015-08-12 00:26:32 +02:00
vlj 744b56b12d gl: Fix texture unswizzling
Fix multi texture test
2015-08-12 00:26:32 +02:00
vlj 694d4e01a0 d3d12: Use openMP for vertex buffer mapping and factorize function 2015-08-12 00:26:31 +02:00
vlj 459ab17d74 d3d12: Use openMP to upload texture
Does not really increase performance so far
2015-08-12 00:26:31 +02:00
vlj cfe058dc82 d3d12: Factorize texture upload code 2015-08-12 00:26:30 +02:00
raven02 ce857ab1da RSX: DP2A for fragment decompiler 2015-08-12 00:26:30 +02:00
vlj caf863be4d d3d12: Fix crash at exit 2015-08-12 00:26:29 +02:00
vlj 5882f9defb d3d12: Do not use texture pitch but compute it ourself
Fix sonic cd splash screen
2015-08-12 00:26:29 +02:00
vlj f31282623a d3d12: Fix texture unswizzling 2015-08-12 00:26:28 +02:00
raven02 25c09c5088 d3d12: Add Blend Op 2015-08-12 00:26:28 +02:00
vlj a2b8d3a885 d3d12: Fix memleak 2015-08-12 00:26:27 +02:00
raven02 76d52b4bb3 d3d12: Implement A4R4G4B4 texture format with byte swapped
Make the guided fate paradox works
2015-08-12 00:26:27 +02:00
vlj 593b9a494d d3d12: Double texture storage size 2015-08-12 00:26:27 +02:00
vlj d886fd55d3 d3d12: Fix for size calculation 2015-08-12 00:26:26 +02:00
vlj a751a06d01 d3d12: Try not to overcommit texture memory 2015-08-12 00:26:26 +02:00
vlj a5fb8c95f4 d3d12: Fix interframe sync 2015-08-12 00:26:25 +02:00
vlj ac352cd083 d3d12: Use custom loadvertex like call 2015-08-12 00:26:25 +02:00
vlj b63c77ca7d d3d12: Swap current/non current right after present has been called 2015-08-12 00:26:24 +02:00
vlj 9e2dfcaba3 d3d12: fix memleak 2015-08-12 00:26:24 +02:00
vlj 7db3599648 d3d12: Ping pong between data to avoid gpu stall as much as possible 2015-08-12 00:26:23 +02:00
vlj 461bf12c4f d3d12: Cleaning 2015-08-12 00:26:23 +02:00
vlj 51d287d9b0 d3d12: Take alignment into account in streamBuffer
And use it for texture upload
2015-08-12 00:26:22 +02:00
vlj 878a116c4a Rebasing didn't went quite right...Fixes 2015-08-12 00:26:22 +02:00
vlj 3a6abe1656 d3d12: fix crash when inferring texture size 2015-08-12 00:26:21 +02:00
vlj 9748007cd3 d3d12: Use ring buffer for textures too
It looks like the texture size calculation is wrong, it can lead to
crash
2015-08-12 00:26:21 +02:00
vlj 6bb5dd2125 d3d12: Use ring like buffer for vertex index data 2015-08-12 00:26:20 +02:00
vlj f721f2cbaa d3d12: Use ring like heap for vertex and fragment constants too 2015-08-12 00:26:20 +02:00
vlj 59aca7566e d3d12: Some fixes to avoid running out of constant spaces 2015-08-12 00:26:19 +02:00
vlj e0cff6b0b4 d3d12: Start using a ring-like buffer for constants 2015-08-12 00:26:19 +02:00
vlj c1abf80b40 d3d12: Fix r5g6b5 only using half texture 2015-08-12 00:26:19 +02:00
vlj 5ca02a5053 d3d12: Fix R5G6B5 being byte swapped 2015-08-12 00:26:18 +02:00
vlj d8d72c4327 d3d12: Implement R5G6B5 texture format
Make sonic works, but with wrong color
2015-08-12 00:26:18 +02:00
vlj 25b10c5e3e d3d12: Consume less descriptor slot if not required 2015-08-12 00:26:17 +02:00
vlj 043adab2ce d3d12: Fix fragment constant filling
The command buffer does not necessarily set them in order...
2015-08-12 00:26:16 +02:00
vlj 1c803e725b d3d12: Do not overwrite hlsl file 2015-08-12 00:26:16 +02:00
vlj 0b435afd1d d3d12: Fix some texture format swizzles. 2015-08-12 00:26:15 +02:00
vlj 3aafb60629 d3d12: Fix offset in scale offset
Depth Buffer should be correctly positionned in depth_read test
2015-08-12 00:26:15 +02:00
raven02 0be60890e7 d3d12: minor fixes 2015-08-12 00:26:14 +02:00
vlj fdf24545af d3d12: Raise texture upload heap to make multi texture work
The result is not in line with PS3 real output though
2015-08-12 00:26:14 +02:00
vlj e454f59f97 d3d12: Fix depth buffer not being transitionned to generic read 2015-08-12 00:26:13 +02:00
vlj aac93b9063 d3d12: Clean code + fix warnings 2015-08-12 00:26:13 +02:00
vlj 001dc7cf57 d3d12: Do not copy fbo, just use new one 2015-08-12 00:26:12 +02:00
vlj 5a57564b0c d3d12: Forgot a hunk 2015-08-12 00:26:12 +02:00
vlj 01ac9f02d2 d3d12: Use placed resource for depth conversion result 2015-08-12 00:26:11 +02:00
vlj 2636fb457e d3d12: Use placed resource for mrt readback
Should be slightly faster (no allocation)
2015-08-12 00:26:11 +02:00
raven02 28c125618a d3d12 : add few more compressed format 2015-08-12 00:26:10 +02:00
raven02 046e522851 d3d12: Add DXT23 & DXT45 2015-08-12 00:26:10 +02:00
vlj 6877e5e3ba d3d12: Start using heap for depth buffer readback 2015-08-12 00:26:09 +02:00
vlj 90fb4396fe d3d12; Add a texture cache 2015-08-12 00:26:08 +02:00
raven02 d8f76f5aee d3d12: Add LogicOp 2015-08-12 00:26:08 +02:00
vlj f382ba0319 d3d12: Enable multiple mrt read 2015-08-12 00:26:07 +02:00
vlj 8e9cdc5fea d3d12: Fix memleak 2015-08-12 00:26:07 +02:00
vlj da328c078a d3d12: Fix cube_mrt.ppu.elf
It should display a (single) blue cube
2015-08-12 00:26:06 +02:00
vlj cef58da879 d3d12: Fix non mrt samples 2015-08-12 00:26:06 +02:00
vlj 595392428d d3d12: First attempt at read color buffer using dma address change
If address of m_context_dma_color_a change, copy the RTT in a texture
that can be used for drawing.
Currently a bit broken, the rtt is used for others textures too...
2015-08-12 00:26:05 +02:00
vlj 3e11598941 d3d12: Fix increment size for sampler and row pitch for swizzled textures 2015-08-12 00:26:05 +02:00
vlj 262d3d0755 d3d12: Fix copyToCellRamAndRelease copy size 2015-08-12 00:26:04 +02:00
vlj 906146d8f6 d3d12: Lower memory storage 2015-08-12 00:26:04 +02:00
vlj f12cb9b519 d3d12: Send RTTs to cell memory when a semaphore is released 2015-08-12 00:26:03 +02:00
vlj 53ac34db35 d3d12: Fix a warning 2015-08-12 00:26:03 +02:00
vlj 74dab18174 d3d12: Use graphic queue to download depth buffer
For now go to the easiest solution and improve later
2015-08-12 00:26:02 +02:00
vlj af69803ee0 d3d12: Factorize resource state change 2015-08-12 00:26:01 +02:00
vlj 3a029efbd3 d3d12: Add D8R8G8B8 format to texture
Should fix human.ppu.elf
2015-08-12 00:26:01 +02:00
vlj 68a62f897d d3d12: Fix texture loading for fw_fog.ppu.elf
Color are wrong though
2015-08-12 00:26:00 +02:00
vlj 7b571aab70 d3d12: Start supporting dxtc1 format 2015-08-12 00:26:00 +02:00
vlj b5a7637b49 d3d12: Implement texture swizzling and untiling 2015-08-12 00:25:59 +02:00
vlj 52a68875fc d3d12: Add some other texture case + factorise resource desc code 2015-08-12 00:25:59 +02:00
vlj 88d05a08cf d3d12: Use a dummy texture to fill unused slots 2015-08-12 00:25:58 +02:00
vlj 79420e52a2 d3d12: Disable depth test if not required 2015-08-12 00:25:58 +02:00
vlj f77e2acfbe d3d12: Start supporting mrt 2015-08-12 00:25:57 +02:00
vlj c167a1228e d3d12: Revert back to a signel resource storage
Using two of them doesnt increase perf atm but eats twice the space
2015-08-12 00:25:57 +02:00
vlj b81fd13232 d3d12: Fix double release 2015-08-12 00:25:56 +02:00
vlj 7a431e85f6 d3d12: Use copy queue to transfer z buffer 2015-08-12 00:25:56 +02:00
vlj f618247937 d3d12: Fix format of depth texture 2015-08-12 00:25:55 +02:00
vlj b50ab149d6 d3d12: Convert depth buffer on gpu 2015-08-12 00:25:55 +02:00
vlj 56853de0ef d3d12: Do not bind depth stencil buffer if depth test is disabled 2015-08-12 00:25:54 +02:00
vlj 1228787355 d3d12: DMA depth buffer when semaphore write is asked. 2015-08-12 00:25:54 +02:00
vlj b72d435ce8 d3d12: fix stencil reflect again 2015-08-12 00:25:53 +02:00
vlj bc25f4d6ad d3d12: Make waiting thread sleeping 2015-08-12 00:25:53 +02:00
vlj 9c193e0282 d3d12: Implement semaphore 2015-08-12 00:25:52 +02:00
vlj c5a1f8930f d3d12: Another fix for vertex buffer not big enough buffer 2015-08-12 00:25:52 +02:00
vlj 233450a7ca d3d12: Fix stencil reflect test 2015-08-12 00:25:51 +02:00
vlj 8bd678afc0 d3d12: Fix vertex buffer reconstruction with mismatching stride 2015-08-12 00:25:51 +02:00
vlj 8ad1bc1970 d3d12: Fix powerOf2Align 2015-08-12 00:25:50 +02:00
vlj 10cc2c080c d3d12: Try to reconstruct packed vertex buffers 2015-08-12 00:25:50 +02:00
vlj 2709a3e49a d3d12: Use streaming buffer for index buffer 2015-08-12 00:25:49 +02:00
vlj 90e0a89e9b d3d12: Try to use stream function that doesn't pollute cache 2015-08-12 00:25:49 +02:00
vlj 8b8385b0a4 d3d12: Reduce heap size 2015-08-12 00:25:48 +02:00
vlj a6770813b1 d3d12: Fix var not initialized 2015-08-12 00:25:48 +02:00
vlj e9fab57a0e d3d12: Fix indexed quad draw
We were not positionning the index buffer correctly in the heap.
2015-08-12 00:25:47 +02:00
vlj 82545a7b56 d3d12: Clean indexed draw buffer gen code 2015-08-12 00:25:47 +02:00
vlj 22f413be3a d3d12; Live buffer related code and factorise resource_desc for buffers 2015-08-12 00:25:46 +02:00
raven02 9814a92a25 Tex: define more sampler parameters 2015-08-12 00:25:45 +02:00
vlj cd951af664 d3d12: Fix to run fw_vertex_attribute.ppu.elf
A little dirty, need to be improved.
2015-08-12 00:25:45 +02:00
vlj 2df1220144 d3d12: Use GL enum for primitive type 2015-08-12 00:25:44 +02:00
vlj b8073b4e75 d3d12: Try to fix forced quad indexed buffer 2015-08-12 00:25:44 +02:00
vlj 232c97cc82 d3d12: Add support for indexed draw 2015-08-12 00:25:43 +02:00
vlj 5ce0261265 d3d12: Release index buffer and upload command allocator 2015-08-12 00:25:43 +02:00
vlj bd68d382bd d3d12: Use __mm_stream_si128 to send texture/constants data 2015-08-12 00:25:42 +02:00
vlj 12fc6e6145 d3d12: Use separate vertex constant buffer for good 2015-08-12 00:25:42 +02:00
vlj 6d61e36f5d d3d12: Fix for rsx_fp_dynamic_test2
The compare function shouldn't be swizzled.
2015-08-12 00:25:41 +02:00
vlj 824b9aa628 d3d12: make depth read optionnal 2015-08-12 00:25:41 +02:00
vlj 487fd4dc2a d3d12: Start implementing depth to u8 conversion shader
Not used atm
2015-08-12 00:25:40 +02:00
vlj e88d45b1bf d3d12: Fix for Intel HD4600 2015-08-12 00:25:40 +02:00
vlj cb14697aa0 d3d12: Honor adaptater selection + debug output layer 2015-08-12 00:25:39 +02:00
vlj 6e8b94a7e1 Add config option for d3d debug layer and adaptater 2015-08-12 00:25:39 +02:00
vlj 18e3e74070 d3d12: Fix depth read size 2015-08-12 00:25:38 +02:00
vlj c08ac779f4 d3d12: src and dst were inverted, fix it
now depth buffer is properly read, but it is too little
2015-08-12 00:25:38 +02:00
vlj 2031944792 d3d12: Do transition when reading depth buffer 2015-08-12 00:25:37 +02:00
vlj fafcce6d5f d3d12: Implement write depth buffer callback 2015-08-12 00:25:37 +02:00
vlj 986a39fcfb d3d12: clean upload command lists as well 2015-08-12 00:25:36 +02:00
vlj 75202ac55b d3d12: properly clean textures 2015-08-12 00:25:36 +02:00