Commit graph

3613 commits

Author SHA1 Message Date
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
vlj 1076727c75 d3d12: Use a heap for scale offset and fragment buffer too 2015-08-12 00:25:35 +02:00
vlj 740354d2c9 d3d12: Fix depth format mismatch 2015-08-12 00:25:35 +02:00
vlj e6146e4ecb d3d12: Fix single channel texture
Should now display font properly
2015-08-12 00:25:34 +02:00
vlj 4a89432d39 d3d12: Implement blend decoding 2015-08-12 00:25:34 +02:00
vlj 312ff7e8f5 RSX: Fix for default value of temp reg 2015-08-12 00:25:33 +02:00
vlj 727f54dd32 d3d12: Record command while gpu is busy rendering previous frame + cleaning fixes 2015-08-12 00:25:33 +02:00
vlj 71b9caf65a d3d12: Duplicate all resource to do real double buffering 2015-08-12 00:25:32 +02:00
vlj 5872144165 d3d12: Move texture code to another file + add the copy command as soon as possible 2015-08-12 00:25:32 +02:00
vlj abbd244376 d3d12: Fix fractal not animated in dynamic test 2 2015-08-12 00:25:31 +02:00
raven02 1471afcfe6 D3DGS naming fix 2015-08-12 00:25:31 +02:00
vlj b5f91a6e75 d3d12: Fix for vertex decompiler 2015-08-12 00:25:30 +02:00
raven02 b2577833f9 d3d12: DP2A 2015-08-12 00:25:30 +02:00
vlj 31ea9068de d3d12: Use true default value for vertex decompiler 2015-08-12 00:25:29 +02:00
raven02 9fc50fcce5 d3d12: Fix for vertex decompiler 2015-08-12 00:25:29 +02:00
vlj a9425fcf2a d3d12: Pass first clear value as clear optimised value to RTTs 2015-08-12 00:23:52 +02:00
vlj eb1b8b748a d3d12: Fix for fragment decompiler 2015-08-12 00:23:51 +02:00
vlj f2985f12c1 d3d12: Use heap for vertex buffer
It should consume less memory.
2015-08-12 00:23:51 +02:00
Zangetsu38 2aedd0633f Fix crash after launch game one mode release.
Fix Temporary.
2015-08-12 00:23:50 +02:00
vlj 7b25483b67 d3d12: depth read doesnt crash anymore 2015-08-12 00:23:50 +02:00
vlj 3f31976080 d3d12: Update 2015-08-12 00:23:49 +02:00
vlj 422a9f1fdc d3d12: Use VertexProgramDecompiler 2015-08-12 00:23:49 +02:00
vlj d2beafca4d d3d12: Update 2015-08-12 00:23:48 +02:00
vlj 5681781ab0 GL: Forgot hunk 2015-08-12 00:23:48 +02:00
vlj 05d6c8df60 d3d12: Update 2015-08-12 00:23:47 +02:00
vlj 07449abfc6 d3d12: Add more functions 2015-08-12 00:23:47 +02:00
vlj 72c84cb8aa d3d12: Add some more functions 2015-08-12 00:23:46 +02:00
vlj bf8a48e3bd d3d12: Some work to decompiler 2015-08-12 00:23:46 +02:00
vlj c465b6699a d3d12: Use the fragment decompile class 2015-08-12 00:23:45 +02:00
vlj edb9a97c17 d3d12: Some fix to quad emulation mode 2015-08-12 00:23:45 +02:00
vlj 445c7dd884 d3d12: Use a default value of 1 for .w channel of output in Vertex Program 2015-08-12 00:23:44 +02:00
vlj 2985f2d6e3 d3d12: Use naive vertex buffer offset 2015-08-12 00:23:44 +02:00
vlj a279aebf31 d3d12: Use an indexed draw for unindexed quad 2015-08-12 00:23:43 +02:00
vlj cbd7d3d614 d3d12: Fix depth being offseted by .5 + add depth buffer support 2015-08-12 00:23:43 +02:00
vlj 5640e81eb5 d3d12: Forgot hunk 2015-08-12 00:23:42 +02:00
vlj 4114df50c2 d3d12: Use correct VS debug macro + cleaning 2015-08-12 00:23:41 +02:00
vlj 1f9c8f757a d3d12: Add a swizzle to texture
Looks like shader4componentmapping doesnt work, maybe a bug.
2015-08-12 00:23:41 +02:00
vlj 3a75e6a357 d3d12: Some fixe to textures 2015-08-12 00:23:40 +02:00
vlj 39039514d1 d3d12: Start implementing texture upload and usage 2015-08-12 00:23:39 +02:00
vlj 263294d263 d3d12: Some fixes to VP/FP decompiler 2015-08-12 00:23:39 +02:00
vlj 43f4ed49b4 d3d12: Some fix for VPDecompiler 2015-08-12 00:23:38 +02:00
vlj 16e8d6349e d3d12: Make compilation more robust 2015-08-12 00:23:38 +02:00
vlj f1ab5abe2e d3d12: Cleaning 2015-08-12 00:23:37 +02:00
vlj c3e162b442 d3d12: Read constants directly from fp 2015-08-12 00:23:37 +02:00
vlj 7b6ad026c6 d3d12: Add fragment constant offset cache 2015-08-12 00:23:36 +02:00
vlj 9d1993cdee d3d12: Fix for d3d12 pipeline cache 2015-08-12 00:23:36 +02:00
vlj ba66992ee3 d3d12: Use template class for caching 2015-08-12 00:23:35 +02:00
vlj a58974eac8 d3d12: Fix reversed output 2015-08-12 00:23:34 +02:00
vlj 2ac3c66c80 d3d12: Fix hash/compare/getSize for fragment program
It didn't properly take constants into account
2015-08-12 00:23:34 +02:00
vlj d1ebc47867 d3d12: Use actual hw in release mode + honor vsync option 2015-08-12 00:23:33 +02:00
vlj 5cb0fe63b8 d3d12: Avoid recompiling fragment shader if constants change 2015-08-12 00:23:33 +02:00
vlj 789ed767e2 d3d12: Move Constant inside main 2015-08-12 00:23:32 +02:00
vlj f446501339 d3d12: Try to fix fragment shaders first test 2015-08-12 00:23:32 +02:00
vlj 98a924874f d3d12: Inline constants
It's slow
2015-08-12 00:23:31 +02:00
vlj b6cc7af8cd d3d12: Support for fragment constants 2015-08-12 00:23:31 +02:00
vlj 88aea70100 d3d12: some fix for fragment program decompiler 2015-08-12 00:23:30 +02:00
vlj c96bc6231c d3d12: Print fps in windows title 2015-08-12 00:23:30 +02:00
vlj a276391e87 d3d12: Fix linkage between VS and PS 2015-08-12 00:23:29 +02:00
vlj ee3e5cfe1f d3d12: Support for fragment constant buffer 2015-08-12 00:23:29 +02:00
vlj 9cb87552b8 d3d12: Fragment program decompiler can decompile basic shader 2015-08-12 00:23:28 +02:00
vlj bb643070bd d3d12: Start working on fragment decompiler 2015-08-12 00:23:28 +02:00
vlj 5da166b26b d3d12: Move/clean code 2015-08-12 00:23:27 +02:00
vlj caab6cbc60 d3d12: Some cleaning 2015-08-12 00:23:27 +02:00
vlj 16f40fb69c d3d12: Fix some warnings 2015-08-12 00:23:26 +02:00
vlj 3960555e45 d3d12: Use the compiler vertex program
It works with the primitive sample.
2015-08-12 00:23:26 +02:00
vlj 96c4e87bf5 d3d12: Some extra code again 2015-08-12 00:23:25 +02:00
vlj 5a1b756c14 d3d12: Dump program parameters 2015-08-12 00:23:25 +02:00
vlj 3853dffce2 d3d12: Start working on Vertex program decompilation 2015-08-12 00:23:24 +02:00
vlj 87d51665dc d3d12: Fix some warning 2015-08-12 00:23:24 +02:00
vlj d93e95b614 d3d12: Add support for various primitives 2015-08-12 00:23:23 +02:00
vlj 75219be066 d3d12: cache PSO State too 2015-08-12 00:23:23 +02:00
vlj da5b047c58 d3d12: Change some variable name to better reflect their behavior 2015-08-12 00:23:22 +02:00
vlj b016fbc9e4 d3d12: Add missing hunk + properly clean our D3D allocations 2015-08-12 00:23:22 +02:00
vlj 07ea311b3a d3d12: Separate scaleOffset and classic constants 2015-08-12 00:23:21 +02:00
vlj 40e19e0c95 d3d12: Something strange is happening to depth... 2015-08-12 00:23:21 +02:00
vlj 411265d83a d3d12: Use constant buffer content 2015-08-12 00:23:20 +02:00
vlj d627f9cb83 d3d12: Stop emulation if program compilation fails 2015-08-12 00:23:20 +02:00
vlj 1c2849a736 d3d12: Remove useless class member 2015-08-12 00:23:19 +02:00
vlj 28b964aeb0 d3d12: Fix Input Layout 2015-08-12 00:23:19 +02:00
vlj 65fbc57221 d3d12: Enable constant buffer support 2015-08-12 00:23:18 +02:00
vlj 6f487f910c d3d12: Fix build with DX12_SUPPORT not def 2015-08-12 00:23:18 +02:00
vlj 646c908a93 d3d12: Fix some warnings 2015-08-12 00:23:17 +02:00
vlj 9abaf80099 d3d12: Vertex element are not interleaved. 2015-08-12 00:23:17 +02:00
vlj 8ec9f84c1b d3d12; Factorise IALayout generation code 2015-08-12 00:23:16 +02:00
vlj 14e9323154 d3d12: make some shape appears 2015-08-12 00:23:16 +02:00
vlj fedd35989c d3d12: Start writing vertex/index buffer support 2015-08-12 00:23:15 +02:00
vlj 722e6b8ac5 d3d12: Fix some warning and start adding IALayout support 2015-08-12 00:23:15 +02:00
vlj d2889786a2 d3d12: Some cleaning 2015-08-12 00:23:14 +02:00
vlj c6e2f070ee d3d12: Some fix for creation of PSO 2015-08-12 00:23:14 +02:00
vlj 34bf82d81c d3d12: Add sensible default to PSO 2015-08-12 00:23:14 +02:00
vlj 2734c98716 d3d12: PSO related reorganisation 2015-08-12 00:23:13 +02:00
vlj e58292bb11 d3d12: PSO caching works 2015-08-12 00:23:13 +02:00
vlj 0ebc221011 d3d12: VS Caching apparently fixed 2015-08-12 00:23:12 +02:00
vlj c29616b341 d3d12: Fragment Program caching works
But not VP...
2015-08-12 00:23:12 +02:00
vlj 3f24da47a0 d3d12: Update vs project files 2015-08-12 00:23:11 +02:00
vlj d5b4a31c37 d3d12: Start caching shaders 2015-08-12 00:23:11 +02:00
vlj 728736ccdd d3d12: Add fbo support and blit it before present 2015-08-12 00:23:10 +02:00
vlj 2f5a6eb993 d3d12: Fix gfxcommandlist leak 2015-08-12 00:23:10 +02:00
vlj b1c3e09155 d3d12: Clean backbuffers and descriptors 2015-08-12 00:23:09 +02:00
vlj 7773631401 d3d12: backbuffer are properly cleared 2015-08-12 00:23:09 +02:00
vlj 5e7531b9bf d3d12: Use ifdef to guard code 2015-08-12 00:23:08 +02:00
vlj 4f708ab9ee d3d12: Enable buffer flip 2015-08-12 00:23:08 +02:00
vlj 0b5816d6d6 d3d12: Create window 2015-08-12 00:23:07 +02:00
vlj 976d707596 d3d12: Start implementation 2015-08-12 00:23:07 +02:00
Raul Tambre d10c44ed3a Merge pull request #1175 from danilaml/appveyor-cmake
Make it possible to compile rpcs3 on win via cmake and make win builds available for download on appveyor
2015-08-11 20:44:22 +03:00
Vincent Lejeune e459d01927 PPU/LLVM: Add debug tool for LLVM recompiler 2015-08-11 18:10:32 +02:00
Vincent Lejeune 6e8a5f3a5f PPU/LLVM: Avoid recompiler thread spinning forever 2015-08-10 20:32:22 +02:00
Vincent Lejeune 53769ae1bd PPU/LLVM: Fix recursive call crashing llvm backend 2015-08-10 19:59:30 +02:00
Danila Malyutin 1af7e32c93 Fix LNK4098 warning 2015-08-10 01:59:04 +03:00
Danila Malyutin 570e41f8e0 Small fixes and improvments 2015-08-10 01:59:03 +03:00
Raul Tambre fd5fbab115 Merge pull request #1171 from vlj/llvm-fix
Fix Sonic CD music with LLVM backend
2015-08-08 18:35:29 +03:00
Danila Malyutin ddff65d288 Make it possible to build rpcs3 via cmake/vs2015 combo. 2015-08-08 04:43:08 +03:00
Danila Malyutin 36648805b8 Update OpenAL 2015-08-08 04:43:06 +03:00
Danila Malyutin fafdc213ed Fix OpenAL and and wxWidgets finding on cmake/win 2015-08-07 18:30:08 +03:00
Raul Tambre 8fd52666b7 Minor fixes in cellNetCtl and cellSysutil
Also fixed a couple minor bugs relating to cache.
2015-08-06 15:24:11 +03:00
Raul Tambre 48def8fa5b Minor sceNpManagerGetStatus improvements
Might allow a couple games to go in-game. Also a couple other minor fixes.
2015-08-06 15:24:10 +03:00
Raul Tambre 480996b140 Various stubbing 2015-08-06 15:24:10 +03:00
Raul Tambre 1012a3e312 Minor cellSysutil improvements, cellNetCtl fixes 2015-08-06 15:24:09 +03:00
Raul Tambre c69dfff16e cellNetCtlGetInfo improvements and fixes 2015-08-06 15:24:09 +03:00
Raul Tambre c12af57bdd Implement _sys_printf and sys_prx improvements 2015-08-06 15:24:08 +03:00
Raul Tambre 91f67b683b sceNpMatching2 stubs and some refactoring 2015-08-06 15:24:04 +03:00
Danila Malyutin a3c22eb836 Add MTOCRF tests 2015-08-06 03:43:49 +03:00
Danila Malyutin 98a3cbdf84 Fix MTOCRF instruction
to be the same as interpreter.
2015-08-06 03:43:48 +03:00
Vincent Lejeune 09347ba92a PPU/LLVM: Fix MTOCRF instruction 2015-08-05 17:27:59 +02:00
Vincent Lejeune fc3314ea96 PPU/LLVM: Print PPC block before translated LLVM bytecode 2015-08-05 17:27:59 +02:00
Hykem 0541371a0e Merge pull request #1161 from Nekotekina/master
Various changes
2015-08-02 16:54:27 +01:00
Hykem 7aa86c50c6 Merge pull request #1167 from vlj/llvm36
PPU/LLVM: Try to fix crash (again) when cleaning modules
2015-08-02 16:54:12 +01:00
Nekotekina 6da5138683 sysPrxForUser module split 2015-08-02 05:15:49 +03:00
Danila Malyutin eac63f7265 Fix crashes in tests with unresolved "func" errors
and uncomment fixed tests
2015-08-02 04:16:44 +03:00
Danila Malyutin 8f00342612 Log stdout and stderr on win
(Some modules like llvm can repport errors to stderr).
2015-08-02 04:06:59 +03:00
Vincent Lejeune 8f490e8ecd PPU/LLVM: Try to fix crash (again) when cleaning modules 2015-08-01 21:56:44 +02:00
Nekotekina 8fcaac5f1d cellSysutil crap split, cleanup, functions added 2015-08-01 21:49:01 +03:00
Nekotekina 0b1e45b6b5 Some functions added 2015-08-01 14:39:43 +03:00
Nekotekina ce9cd13e42 cellL10n, cellRtc, cellSail cleanup 2015-08-01 14:39:41 +03:00
Nekotekina b391e93466 Modules cleanup 2015-08-01 14:39:39 +03:00
Nekotekina a2646f9871 ModuleManager cleanup 2015-08-01 14:39:37 +03:00
Nekotekina eb5974322f cellStorage.cpp, cellVideo(Export|Upload) modules 2015-08-01 14:39:35 +03:00
Nekotekina 137a38b3c6 cellRec, cellRemotePlay, cellSysconf 2015-08-01 14:39:33 +03:00
Nekotekina 08b6428d5c cellPrint module added 2015-08-01 14:39:31 +03:00
Nekotekina 2eaf5cdc01 cellOskDialog, cellPhoto(Decode|Export|Import) 2015-08-01 14:39:29 +03:00
Nekotekina 7361b4e079 cellImeJp, cellMusic(|Decode|Export), cellSysutilMisc 2015-08-01 14:39:28 +03:00
Nekotekina c364c6a787 cellGameExec, cellAvconfExt, cellSysutilAvc2 modules 2015-08-01 14:39:26 +03:00
Nekotekina 16ad4936ee atomic.h fixed 2015-08-01 14:39:24 +03:00
Nekotekina 776eafa0ce cellDaisy, cellSpudll modules 2015-08-01 14:39:22 +03:00
Nekotekina 9b928ee835 cellPngEnc, cellSailRec, cellUsbPspcm modules 2015-08-01 14:39:20 +03:00
Nekotekina ae73330314 cellJpgEnc, cellKey2char, cellSheap added
ModuleManager cleanup
2015-08-01 14:39:18 +03:00
Nekotekina 5a9896c78c cellHttp, cellHttpUtil, cellSsl, cellBGDL added 2015-08-01 14:39:16 +03:00
Nekotekina 13a5a96117 cellCelp8Enc, cellCelpEnc module added 2015-08-01 14:39:14 +03:00
Nekotekina 06ef95fbea File/dir descriptors numbering experimental impl 2015-08-01 14:39:12 +03:00
Nekotekina badeb29901 Minor fixes 2015-08-01 14:39:10 +03:00
Nekotekina 02c0b69adb cellSaveData module added 2015-08-01 14:39:08 +03:00
Nekotekina 3cc0383db7 cellAtracMulti stub added 2015-08-01 14:39:06 +03:00
Nekotekina a12220d234 Minor formatting fix 2015-08-01 14:39:04 +03:00
Nekotekina 25056f49c4 Added on_error handler for Module 2015-08-01 14:39:03 +03:00
Nekotekina 5815d90eb4 Minor formatting fix, cellRudp fix 2015-08-01 14:39:01 +03:00
Nekotekina 16b7d204d2 decode_x64_reg_op: MOVUPS support 2015-08-01 14:38:59 +03:00
Nekotekina 8e1991c1e1 semaphore_t, RSX fixes
1) GS_LOCK_WAIT_FLUSH semaphore eliminated
2) GS_LOCK_WAIT_FLIP semaphore left unused
3) cellRescSetWaitFlip/cellGcmSetWaitFlip purged: they don't wait for
flip, it's a nonsense, they only generate some RSX command
4) Semaphores rewritten
2015-08-01 14:38:57 +03:00
Nekotekina 71a378a3fb vm::wait_op improved
Now it accepts thread_t and its descendants (but may require adding
friend vm::waiter_lock_t class)
2015-08-01 14:38:55 +03:00
Nekotekina ff1f6d3d4f PPUInterpreter formal fix (affects nothing) 2015-08-01 14:38:53 +03:00
Nekotekina 3d665148ca cellMsgDialog race condition fixed 2015-08-01 14:38:51 +03:00
Nekotekina be2f993155 func_def eliminated 2015-08-01 14:38:49 +03:00
Nekotekina 31774b7262 atomic.h, sys_cond/sys_lwcond improved 2015-08-01 14:38:47 +03:00
Nekotekina ffc11bfda3 b8 type 2015-08-01 14:38:45 +03:00
KaOs1 804ee1183b Install PKGs into custom folder 2015-07-31 22:15:07 +02:00
darkf 2f8a41d810 sys_net: Implement socketselect 2015-07-28 04:43:35 -07:00
Danila Malyutin 9a37acee3e Fixes for abstract class without virtual destructor 2015-07-27 03:01:43 +03:00
Danila Malyutin e0d5cdd5e1 Fixes for trigraph, unused and tautological warning. 2015-07-26 23:48:59 +03:00
Danila Malyutin 582329ffc6 Fixes for some of clang warnings 2015-07-26 23:24:37 +03:00
Danila Malyutin 5ae6586803 Add missing override specifiers 2015-07-26 18:37:14 +03:00
Danila Malyutin e810eabd32 Clean up and fixes 2015-07-26 18:09:33 +03:00
Danila Malyutin 6849192b39 Tabify 2015-07-26 18:09:31 +03:00
Danila Malyutin 6832910187 Update llvm tests to work with new mcjit recomp
WIP, also found some offending instructions with it.
2015-07-26 18:09:29 +03:00
Raul Tambre a239eaf630 cellSpurs additions and internal struct refactoring
Also updated the README.
2015-07-26 17:04:10 +03:00
Raul Tambre 14897b23b7 Minor formatting 2015-07-26 16:44:55 +03:00
Raul Tambre 6ef4cecf57 Split sceNp into sceNpUtil and register sceNpClans 2015-07-26 16:44:10 +03:00
Raul Tambre 7b0b0440ef cellFont cleanup 2015-07-26 16:43:35 +03:00
Raul Tambre 45dda65ce9 Add NV4097_SET_TEX_COORD_CONTROL arguments
Also added a TODO for _cellSpursLFQueueInitialize.
2015-07-26 16:42:02 +03:00
Raul Tambre 9ecedfdf3c Better cellNetCtlGetInfo logging
Also added back some more logging in cellSaveData, but this time only
printed as warnings.
2015-07-26 16:34:11 +03:00
Zangetsu38 e47493e81b Some small change.
Update README.md for VS 2015.
remove sln buildbot
remove unused appveyor config
remove package.bat, no longer current, now found in bigpet/rpcs3-buildbot-tools
2015-07-23 15:05:23 +02:00
Peter Tissen 4624377942 use official wxWidgets repo 2015-07-23 12:17:58 +02:00
Danila Malyutin 831858ce7e Change jit to mcjit in CMakeLists
This fixes compiling on linux
2015-07-23 10:46:12 +03:00
vlj 26f6b89530 PPU/LLVM: Remove duplicate m_address_to_ordinal map and improve cleaning 2015-07-22 02:11:00 +03:00
vlj 501c14fc65 PPU/LLVM: Clean code
Replace auto with real type, reduce indent and useless variables...
2015-07-22 02:10:58 +03:00
vlj 4adb9a2683 PPU/LLVM: Do not cache block 2015-07-22 02:10:57 +03:00
vlj abd61538ea PPU/LLVM: Rename ExecutionEngine to CPUHybridDecoderRecompiler
In order to avoid naming conflict with llvm own ExecutionEngine
2015-07-22 02:10:55 +03:00
vlj 7592b87a90 PPU/LLVM: Fix build 2015-07-22 02:10:54 +03:00
Nekotekina b3dfa4f5a2 VS2015 2015-07-22 02:10:14 +03:00
Peter Tissen ecf78dbafe add various temporary VS2015 changes (some to fixup temporary bugs, don't merge) 2015-07-22 01:32:21 +03:00
vlj cfa0079c3d PPU/LLVM: Fix branch detection
Thanks Nekotekina for the fix
2015-07-22 01:32:19 +03:00
Vincent Lejeune b7d5d70a92 PPU/LLVM: Fix for callback spinning undefinitly
Thanks for Nekoteki for the fix
2015-07-22 01:32:18 +03:00
Nekotekina cdf38d15d2 sys_lwmutex, sys_lwcond syscalls improved 2015-07-21 23:14:42 +03:00
Nekotekina 6462201aac Some macro removed 2015-07-21 23:14:41 +03:00
Nekotekina 023d385af8 sys_semaphore improved 2015-07-21 23:14:39 +03:00
Nekotekina 0aefaec46e sys_event improved, some unnamed functions named 2015-07-21 23:14:38 +03:00
Nekotekina 6019e02457 sys_rwlock improved 2015-07-21 23:14:36 +03:00
Nekotekina 6255f3b07d sys_event_flag improved 2015-07-21 23:14:34 +03:00
Nekotekina bc91ad0f4d sys_event improved 2015-07-21 23:14:33 +03:00
Nekotekina 2f7fe35f5c Minor style change 2015-07-21 23:14:31 +03:00
Nekotekina 8175630619 sys_cond/sys_mutex improved 2015-07-21 23:14:29 +03:00
Nekotekina 43d3ccce95 SPU Channels improved 2015-07-21 23:14:28 +03:00
Nekotekina 9913c9059c Very bugfix
I reverted cellSaveData changes since they were relying on the
uninitialized local variable `save_entry` and thus were almost
completely wrong.
2015-07-21 23:14:26 +03:00
Nekotekina 5bd83516ba SPU Interrupt Enable Status implemented
SPU Interrupts are still NOT implemented
2015-07-21 23:14:25 +03:00
Nekotekina 1519a2b468 Exceptions passed to wait_op caller 2015-07-21 23:14:23 +03:00
Nekotekina a7668ff57f SPU_EVENT_LR improved 2015-07-21 23:14:22 +03:00
Nekotekina 1e021cdbba waiter_map reintroduced, combined with vm 2015-07-21 23:14:20 +03:00
Nekotekina a8fcf71f9c Minor bugfix, cleanup 2015-07-21 23:14:04 +03:00
Nekotekina 3bc6c53eb3 sys_interrupt improved 2015-07-18 03:12:10 +03:00
Nekotekina b8a27d8a4c Silly bugs fixed 2015-07-18 03:12:08 +03:00
Nekotekina 48c75105e2 "Memory" eliminated 2015-07-18 03:12:06 +03:00
Raul Tambre 5f43360711 Fix Travis compiling 2015-07-16 21:36:06 +03:00
Raul Tambre 67e647a2ca sys_net and cellRudp fixes 2015-07-16 20:28:47 +03:00
Raul Tambre 746be46f1e Huge improvements to cellNetCtlGetInfo 2015-07-16 17:09:42 +03:00
Raul Tambre 6305d4edf9 Minor savedata fix and cellSail callback fixes 2015-07-16 14:31:59 +03:00
Raul Tambre 6beec80b60 Draft socketselect, other minor fixes 2015-07-15 16:21:41 +03:00
Raul Tambre 82733e1943 cellRudp improvements and fixes 2015-07-15 11:52:20 +03:00
Raul Tambre 2e3113b5f2 Fix Travis compiling 2015-07-14 18:59:10 +03:00
Raul Tambre 80b544aa78 Add sceNp2 and some sceNpMatching2 functions 2015-07-14 15:07:23 +03:00
Raul Tambre ddcaf4972f Better fix for savedata and cellCamera improvements 2015-07-14 14:45:31 +03:00
Raul Tambre 66cf864ee0 Fix saving and some more logging
Fixes Shin Hayarigami (BLJS10279).
2015-07-13 22:06:16 +03:00
Hykem 3896c39ceb Update MainFrame.cpp
Use _WIN32 instead of __WINDOWS__
2015-07-11 12:29:47 +01:00
Hykem 916967a7d7 Merge pull request #1140 from danilaml/linux-icon-fix
Fix for icons on OSes other than Windows. Small fixes for travis
2015-07-11 12:27:32 +01:00
Danila Malyutin 7795305c9f Fix for icons on OSes other than Windows. Small fixes for travis
Didn't test. Also added memory monitoring to travis.
2015-07-11 04:46:27 +03:00
Nekotekina 06dacf04b5 Log style fix 2015-07-11 02:38:40 +03:00
Nekotekina 2d37c6b5e2 sys_memory, sys_mmapper rewritten
LogBase::Fatal() removed
2015-07-10 20:37:12 +03:00
Nekotekina 39629c5c7a IdManager collision threat fix 2015-07-10 04:31:43 +03:00
Nekotekina 4bacfcf847 sys_lv2dbg added, bugfix 2015-07-10 04:31:41 +03:00
Nekotekina daa93a7226 ARMv7 func binder improved (faster compilation) 2015-07-10 04:31:39 +03:00
Nekotekina 096fc86f17 SC_FUNC improved (faster compilation) 2015-07-10 04:31:37 +03:00
Nekotekina 82781e620a Small fixes 2015-07-10 04:31:36 +03:00
Nekotekina c0f13f7084 sleep_queue_t rewritten, used in sys_cond/sys_mutex
Some synchronization fixes
2015-07-10 04:31:34 +03:00
Nekotekina eafddd9e33 CPUThread fixes, thread_t cleanup 2015-07-10 04:31:32 +03:00
Nekotekina 83321c5be7 sys_time_get_current_time fixed, CALL_FUNC draft 2015-07-10 04:31:30 +03:00
Nekotekina 22e1da5e76 Minor cleanup 2015-07-10 04:31:29 +03:00
Nekotekina 3064cf8101 CHECK_EMU_STATUS, autojoin_thread_t 2015-07-10 04:31:27 +03:00
Nekotekina 8f9e1100c8 SPU fixes, various fixes 2015-07-10 04:31:25 +03:00
Nekotekina 721ad404d2 VM_CAST macro 2015-07-10 04:31:23 +03:00
Nekotekina 8c00dcd02d Bugfix 2015-07-10 04:31:21 +03:00
Nekotekina 32d3d1fbe5 EXCEPTION() macro usage, sceNpTrophy improved 2015-07-10 04:31:20 +03:00
Nekotekina 6f1e76198a Some fixes 2015-07-10 04:31:18 +03:00
Nekotekina 3aefa2b4e1 ThreadBase rewritten (wip) 2015-07-10 04:31:16 +03:00
Nekotekina b7a320fbbd cellCamera fix 2015-07-10 04:31:14 +03:00
Nekotekina ec68e012f9 vm::var replaced, atomic_op simplified 2015-07-10 04:31:12 +03:00
Nekotekina c598fe7aa9 atomic_op() rewritten, atomic.h refactoring
cellSync refactoring, wait_op() rewritten, bugfixes
2015-07-10 04:31:10 +03:00
Nekotekina 39f836b495 re32/se32/... macro eliminated, some fixes 2015-07-10 04:31:09 +03:00
Nekotekina ef6f9f6ded be_t constructor implemented, make() eliminated
be_t enums are forbidden, le_t improved, some operators cleaned.
2015-07-10 04:31:07 +03:00
S Gopal Rajagopal a800d21a31 SPURS: Fix some bugs
Conflicts:
	rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp
2015-07-10 04:31:05 +03:00
S Gopal Rajagopal fe67504ffc SPURS: Use atomic ops to implement some portions of event flags and trace
Conflicts:
	rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp
	rpcs3/Emu/SysCalls/Modules/cellSpurs.h
	rpcs3/Emu/SysCalls/Modules/cellSpursSpu.cpp
2015-07-10 04:31:03 +03:00
S Gopal Rajagopal dc92a79fcc SPURS: Implement some core functions
Conflicts:
	rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp
	rpcs3/Emu/SysCalls/Modules/cellSpurs.h
2015-07-10 04:31:01 +03:00
Nekotekina 714da1aa7c vm::var fix, vm::ptr improved
GetCurrentPPUThread() removed
2015-07-10 04:31:00 +03:00
S Gopal Rajagopal 46e4f2d48c SPURS: Implement some portions of spurs initialization
Conflicts:
	rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp
	rpcs3/Emu/SysCalls/Modules/cellSpurs.h
	rpcs3/Emu/SysCalls/Modules/cellSpursSpu.cpp
	rpcs3/Emu/SysCalls/lv2/sys_event.cpp
	rpcs3/Emu/SysCalls/lv2/sys_event.h
	rpcs3/Emu/SysCalls/lv2/sys_lwmutex.cpp
	rpcs3/Emu/SysCalls/lv2/sys_lwmutex.h
	rpcs3/Emu/SysCalls/lv2/sys_semaphore.cpp
	rpcs3/Emu/SysCalls/lv2/sys_semaphore.h
	rpcs3/Emu/SysCalls/lv2/sys_spu.cpp
	rpcs3/Emu/SysCalls/lv2/sys_spu.h
2015-07-10 04:30:58 +03:00
S Gopal Rajagopal 5b7f701878 SPURS: Implement SPURS SPU thread exit using throw
Conflicts:
	rpcs3/Emu/SysCalls/Modules/cellSpursSpu.cpp
2015-07-10 04:30:56 +03:00
Nekotekina c0fdef7a12 Small fix 2015-07-10 04:30:54 +03:00
Nekotekina 317417d541 vm::cptr/bcptr/lcptr used widely for const pointers 2015-07-10 04:30:53 +03:00
Nekotekina e896da8064 Added .aligned() method for vm::ptr
Added set_alignment() macro for setting alignment
Added alignof32() macro similar to sizeof32()
Added CHECK_SIZE, CHECK_ALIGN macro with static_assert
Minor refactoring
2015-07-10 04:30:51 +03:00
Nekotekina a7f77c27f7 ARMv7Context used through multiple inheritance
Forgive me...
2015-07-10 04:30:49 +03:00
Nekotekina 6c4148a949 Bugfix 2015-07-10 04:30:47 +03:00
Nekotekina bc9481db1b PSV modules refactoring 2015-07-10 04:30:45 +03:00
Nekotekina 8229c0ed3d Compilation fix 2015-07-10 04:30:43 +03:00
Nekotekina edb9595721 Using vm::ps3 namespace moved in proper places
Various fixes
2015-07-10 04:30:41 +03:00
Nekotekina 7eacfe19f6 vm::ptr fixes
std::function conversion removed (since it's convertible anyway),
pointer difference return type changed
vm::cptr, vm::bcptr aliases added
2015-07-10 04:30:39 +03:00
Nekotekina 63c5b2ab32 sys_fs_open() O_APPEND support
Added vm::static_ptr_cast, vm::const_ptr_cast, vm::reinterpret_ptr_cast
Added pointer comparison with vm::null
2015-07-10 04:30:37 +03:00
Danila Malyutin e338c3938b Trying to fix potential resource leak 2015-07-10 04:26:59 +03:00
Danila Malyutin 8483b17995 Initialize pointers to null on creation
Fixes access violation in hello_world.ppu.elf on window close.
As I understood the reason - when dtor of XAudioThread is called it
checks:
if (m_source_voice) Quit();
But m_source_voice isn't initialized to 0 by default so when in Quit()
in tries to call some funcs from unitialized ptrs and access violation
happens.
2015-07-10 04:26:57 +03:00
Danila Malyutin 6ce793d582 Deleted unneeded xaudio #ifs
There is no improvement in 2.8 and on my setup (8.1 x64) it always
preferred minidx headers anyway (so it'd still load 2.7 dll).
2015-07-10 04:26:56 +03:00
Danila Malyutin ee2940c159 Swapped buttons positions in about dialog
It's much more intuitive (and common) to have OK in the bottom-right
corner.
2015-07-10 04:26:54 +03:00
Raul Tambre f272171099 Re-do network status and add it to settings 2015-07-09 20:42:39 +03:00
Raul Tambre 909b512493 SysCall improvements 2015-07-09 20:19:29 +03:00
Raul Tambre 0acd37a328 Make icon show on actual window 2015-07-08 19:16:18 +03:00
Raul Tambre 61cd591ad5 Improve cellGameBootCheck 2015-07-06 14:47:49 +03:00
Raul Tambre 30c25cb722 Added NV4097_SET_TEXTURE_CONTROL2
Still need to use the parameters that are passed.
2015-07-06 10:12:17 +03:00
Hykem a27a51124f Merge pull request #1130 from Zangetsu38/Dante
Add Icon on the .exe
2015-07-04 12:03:06 +01:00
Hykem a114dbcd76 Merge pull request #1132 from vlj/rsx
Rsx: Some interface changes
2015-07-04 12:02:45 +01:00
vlj f4efeabcf3 RSX: Rename and document function member. 2015-07-03 17:08:06 +02:00
vlj 972515938c Memory: Fix virtualProtect protecting too much memory. 2015-07-03 17:08:06 +02:00
raven02 3a0894aaea RSX: Use CELL_GCM suffix for index array 2015-07-02 19:01:19 +02:00
vlj 5abeec85cc GL/RSX: Let backend call LoadVertex themselves. 2015-07-02 19:01:19 +02:00
vlj 4485e6b869 RSX: Do not emit error when parsing NV4097_SET_NO_PARANOID_TEXTURE_FETCHES
This opcode disables whole quad fetch on RSX, this is handled by drivers
on PC api.
2015-07-02 19:01:18 +02:00
vlj 288581cb43 RSX/GL/Null: Move semaphore handling to backend 2015-07-02 19:01:18 +02:00
Zangetsu38 c47082f725 Remove win32 Debug - MemLeak 2015-07-02 05:07:48 +02:00
Zangetsu38 1b5f2579a5 Add Icon on the .exe
thx BigPet for you help
2015-06-30 20:36:46 +02:00
Zangetsu38 5804ce5f84 Remove -x64 on exe because now it is useless 2015-06-28 18:09:28 +02:00
B1ackDaemon bf74c0c749 Merge pull request #1124 from vlj/gcmsys
sysGCM: Fix for getNextCommandBufferBeginEnd
2015-06-23 17:53:56 +03:00
vlj 0993ee08e6 sysGCM: Fix for getNextCommandBufferBeginEnd
We were sometimes using memory outside of buffer.
It fixes vertex attribute test.
2015-06-22 00:59:14 +02:00
Hykem b25eb39fba Merge pull request #1122 from vlj/gcmsys
SysGCM: Split default command buffer into 32kb big fragments and swap between them
2015-06-20 15:25:46 +01:00
Vincent Lejeune 9a91b188df SysGCM: Split default command buffer into 32kb big fragments and swap between them 2015-06-20 00:52:21 +02:00
Hykem 596546df5a Merge pull request #1121 from vlj/rsx
Rsx: Improve debugger
2015-06-19 14:54:29 +01:00
vlj 712a514c6d RSXDebugger: Make bigger command list window 2015-06-17 22:09:04 +02:00
vlj b353cd4ecb RSXDebugger: Display viewport size 2015-06-17 22:09:04 +02:00
vlj e7b459573e RSXDebugger: Add clip details when parsing clip horizontal 2015-06-17 22:09:03 +02:00
vlj cf7e5028a4 RSXDebugger: Add surface detail when parsing set surface format 2015-06-17 22:09:03 +02:00
vlj 629c290faa RSXDebugger: Print more accurate semaphore 2015-06-17 22:09:02 +02:00
vlj 4b0d8557b4 RSXDebugger: Disasm a couple more command 2015-06-17 22:08:57 +02:00
Hykem de9a2fd556 Merge pull request #1119 from Nekotekina/master
be_t, vm::ptr, vm::ref improved
2015-06-16 15:00:30 +01:00
Hykem c51ce40d8d Merge pull request #1117 from Zangetsu38/master
Update glext.h on version 31191
2015-06-16 15:00:22 +01:00
Nekotekina d8b1c3118a vm::ref assignment operators fixed 2015-06-15 19:21:23 +03:00
Nekotekina d7cb5a6e9e vm::ref improved (operators)
atomic operators fixed, vm::ptr operators improved
2015-06-15 19:21:20 +03:00
Nekotekina b7d967361d vm::ptr conversion operator fixed 2015-06-15 19:21:18 +03:00
Nekotekina 93dcd704c5 vm::psv::pptr usage 2015-06-15 19:21:16 +03:00
Nekotekina 3064560027 vm::ptr refactoring (operators improved)
vm::pptr, vm::bpptr added for PS3
is_le_t added
sizeof32() added (32-bit sizeof macro)
2015-06-15 19:21:14 +03:00
Nekotekina 8c62a893a9 cellGifDec, cellPngDec: small update 2015-06-15 19:21:12 +03:00
Nekotekina a77a75660b Compilation fix 2015-06-15 19:21:10 +03:00
Nekotekina 4d9add5e7c vm::ref improved, bugfixes 2015-06-15 19:21:09 +03:00
Nekotekina 1256d648c1 be_t simplified, vm::ref improved
remove_be_t renamed to to_ne_t (to native endianness)
le_t and to_le_t draft, bugfixes
2015-06-15 19:21:07 +03:00
Igor null 5ae2349f36 changed broken breakpoints database format to a consistent format 2015-06-15 18:09:21 +03:00
Zangetsu38 1dc2f6a164 Update glext.h on version 31191
Fix correct size icon with correct proportion
2015-06-11 12:52:56 +02:00
Hykem d86c33c09e Merge pull request #1111 from danilaml/improve-llvm-tests
Make ppuJIT test log more compact and easier to read
2015-06-08 18:41:13 +01:00
vlj 02594c8239 RSX: Fix index gathering 2015-06-08 18:11:51 +02:00
Danila Malyutin ee715d9d36 Make ppuJIT testlog more compact and easier to read 2015-06-02 23:11:46 +03:00
raven02 f2c5dc2b5c RSX: simplify resolution rescale 2015-05-31 18:35:15 +08:00
raven02 e6df1ddcc0 Fix CELL_GCM_TEXTURE_CLAMP
It should be GL_CLAMP
2015-05-29 21:59:51 +08:00
DHrpcs3 39e679806b Implemented some sys_prx syscalls
Fixed vm::ptr

Conflicts:
	Utilities/BEType.h
	Utilities/StrFmt.cpp
	rpcs3/Emu/Memory/vm_ptr.h
	rpcs3/Emu/SysCalls/lv2/sys_prx.cpp
	rpcs3/Emu/SysCalls/lv2/sys_prx.h

Cherry-picked commit "Implemented some sys_prx syscalls"
2015-05-29 04:34:30 +03:00
Nekotekina b84d831d8f MFF_NO_RETURN flag introduced 2015-05-29 01:49:50 +03:00
Nekotekina a70d305806 IdManager fix 2015-05-28 22:13:35 +03:00
Nekotekina 0724a9efa2 printf_alike removed 2015-05-28 18:28:34 +03:00
Nekotekina 74e13a4ef6 Compilation fix 2015-05-28 18:23:11 +03:00
Nekotekina 78fdcf75e7 Attribute macro changed
__forceinline -> force_inline
__noinline -> never_inline
printf_alike(x,y) added
2015-05-28 18:14:22 +03:00
Nekotekina f83306b0bf Fix 2015-05-27 15:49:54 +03:00
Nekotekina 26e5a07905 Fix 2015-05-27 13:55:15 +03:00
Nekotekina 2823953489 Compilation fix 2015-05-27 12:51:25 +03:00
Nekotekina 22b78fec71 IdManager improved, atomic_t improved
Various changes
2015-05-27 06:11:59 +03:00
Nekotekina cdf70e0b77 Compilation fix 2015-05-25 22:11:55 +03:00
Nekotekina 98aee31c5a refcnt.h removed 2015-05-25 21:12:53 +03:00
vlj 2dbac65613 GL: Fix output swizzling for fog and clip distance 2015-05-24 17:09:05 +02:00
B1ackDaemon dcad0e286a Merge pull request #1092 from Bigpet/localdev
Change `GetDeviceLocal` device selection
2015-05-24 02:09:51 +03:00
raven02 2d6dd873cd FP: RSQ instruction alternative 2015-05-23 20:45:12 +02:00
raven02 f98b03b61f VP: use getFloatTypeName() with compare instructions 2015-05-23 20:45:11 +02:00
raven02 eac5147a45 FP: fix SFL instruction 2015-05-23 20:45:11 +02:00
raven02 bebd437a7e RSX: use getFloatTypeName 2015-05-23 20:45:10 +02:00
Vincent Lejeune 669a54d071 GL: Factorise getFloatTypeName, getFunction and compareFunction between Fragment and Vertex Decompiler 2015-05-23 20:45:10 +02:00
raven02 79cb025d25 RSX : factorize DPH 2015-05-23 20:45:09 +02:00
raven02 67e8e0a367 RSX: DP2A for fragment decompiler 2015-05-23 20:45:09 +02:00
raven02 f961a2e3b4 GL: fix IFE instruction 2015-05-23 20:45:08 +02:00
vlj df794b88b0 GL: Use decompiler common class 2015-05-23 20:45:08 +02:00
vlj 2416d49dba RSX: Add a class factorizing decompiler code 2015-05-23 20:45:07 +02:00
B1ackDaemon 2a6f11b390 Merge pull request #1089 from vlj/gl
Store Vertex/Fragment program in a hashtable and do not rebuilt FP if a constant changes
2015-05-23 02:53:48 +03:00
Vincent Lejeune 7a5c8dd586 GL: Remove unused calls to glGetError() 2015-05-22 19:43:32 +02:00
Syphurith 5a6869fc5e Renamed LogSeverity Symbols, like.. LogSeveritySuccess from Succuess to avoid conflicts with macros such as those in X11 header. 2015-05-22 20:16:30 +08:00
B1ackDaemon d5ead0d315 Merge pull request #1091 from vlj/shader-fix
gl: Fix swizzle for DIVRSQ, COS, SIN in fragment shader
2015-05-21 19:13:46 +03:00
raven02 d0c2addf91 gl: Fix IFE instruction
This fixes the rsx_fp_static_test4.ppu.elf
2015-05-21 22:34:51 +08:00
Peter Tissen 0b0c8723eb Change GetDeviceLocal device selection
For `GetDeviceLocal` only consider a device if the full path to the device
matches the first part of the path to match.

The issue was that putting in a file that was not in a sub-path of an existing
mounted device failed. So if the rpcs3 devices are in
D:\DEV\rpcs3\bin and you open D:\DEV\ps3autotests\tests\rsx\primitives\primitives.ppu.elf
it would return
/dev_usb000/ps3autotests\tests\rsx\primitives\primitives.ppu.elf
which resolves to
D:/DEV/rpcs3/bin/dev_usb000/ps3autotests/tests/rsx/primitives/primitives.ppu.elf
and is wrong.

Correct are either /dev_usb000/../../../ps3autotests\tests\rsx\primitives\primitives.ppu.elf
or /hostfs/D:\DEV\ps3autotests\tests\rsx\primitives\primitives.ppu.elf

I chose to resolve without the ".." beyond root, since that just seems wrong
(so it will now return the hostfs version).

Fixes #1090
2015-05-21 10:45:40 +02:00
vlj d58188d7ba gl: Fix swizzle for DIVRSQ, COS, SIN, EXP2, LOG2 in fragment shader
This fix rsx_fp_static_test2.ppu.elf, rsx_fp_static_test3.ppu.elf, rsx_fp_static_test5.ppu.elf.
Likely rsx_fp_dynamic_test2.ppu.elf too
2015-05-20 19:31:21 +02:00
vlj 2a7c65c019 GL: Use pipeline cache 2015-05-19 17:26:06 +02:00
vlj 145f411324 RSX: Add a template class that helps caching programs. 2015-05-19 17:26:05 +02:00
Nekotekina 3ae43edc3e cellFs fix 2015-05-09 01:36:15 +03:00
Nekotekina 8cf62e560e Compilation fix 2015-05-08 18:42:35 +03:00
Nekotekina f92c10ef71 Minor fixes 2015-05-08 12:45:21 +03:00
Nekotekina ff359ed118 SPU Interpreter2 initialization fix 2015-04-26 01:56:58 +03:00
Nekotekina 9cfdce91a1 vfsDir usage fixed 2015-04-26 00:26:54 +03:00