Commit Graph

3062 Commits

Author SHA1 Message Date
gibbed 1e92a4e06c XAM: Write as many items possible when enumerating. Fixes Nier not detecting system save data (and possibly other games). 2017-08-08 04:53:01 -05:00
gibbed 355d9f6c62 Take three? 2017-08-08 02:10:22 -05:00
gibbed 3aa5a70827 Take two? 2017-08-08 01:49:53 -05:00
gibbed 19627a6cb2 GPU: Cast various flags to bool in IssueCopy. Fixes #773. 2017-08-08 01:46:21 -05:00
gibbed 4a95862023 GPU: Ensure texture resolves are at least 1x1. 2017-08-08 01:39:42 -05:00
gibbed d2d8d65629 GPU: First pass of CTX1 to R8G8_UINT conversion implementation for Vulkan. 2017-08-08 00:26:40 -05:00
Dr. Chat 8d261ca73d x64 JIT: Simplify splats 2017-08-08 00:12:38 -05:00
DrChat ee18d548c9 Vulkan: Do not bind a NULL pipeline even if a full update is requested. 2017-08-08 00:11:08 -05:00
DrChat 0720bbe19f Vulkan: Fix race crash in trace viewer 2017-08-07 23:35:17 -05:00
DrChat cce5182725 Vulkan: Fix swap on resolve (off by one!)
Clean up part of IssueCopy
2017-08-07 23:34:50 -05:00
DrChat 35e4431c33 Vulkan: Get rid of the empty descriptor set 2017-08-07 21:46:35 -05:00
DrChat 8bfe22bbd7 GPU Shader Translator: Add cases for memexport registers 2017-08-07 21:40:24 -05:00
DrChat cfc65a0197 GPU: Rewrite/rephrase some confusing shader translator code 2017-08-07 21:08:01 -05:00
gibbed 6d9a56a269 GPU: Fixed texel pitch calculation for linear textures. 2017-08-07 20:50:42 -05:00
gibbed febe46973f GPU: Don't use host write bit for texture uploads. 2017-08-07 19:47:17 -05:00
gibbed b4ae5b9a01 - GPU: Removal of deprecated TextureInfo fields.
- GPU: Replicated removed deprecated fields into local struct for GL.
- GPU: Improved texture copies for Vulkan, no more pitch changes.
- GPU: Stubbed code for CTX1 conversion in Vulkan.
2017-08-07 19:30:06 -05:00
gibbed 906f24cb1a GPU: Make the format info table 64 statically elements again. 2017-08-07 19:13:02 -05:00
DrChat c656d95345 Vk Immediate: Get Sampler 2017-08-06 18:24:48 -05:00
DrChat 2ba0ebb4cb GPU: Add back k_1_REVERSE 2017-08-06 16:55:02 -05:00
gibbed bd58191239 Moved format info table to its own file to maintain formatting. 2017-08-06 14:13:19 -05:00
gibbed 5ce29dbe1c Format info table was off by one this whole time. Who knew? 2017-08-06 13:58:37 -05:00
gibbed 791f81c484 Prettify format info table. 2017-08-06 13:57:13 -05:00
DrChat eb022939d1 Vulkan: Initialize a texture's framebuffer to nullptr 2017-08-06 12:47:34 -05:00
Dr. Chat 90bd08ffd1 UI: Update width and height for fullscreen 2017-08-03 22:47:51 -05:00
Dr. Chat 5430dd0cd0 UI: Properly size microprofile, make dpi transparent to unaware users. 2017-08-03 22:34:12 -05:00
Dr. Chat 707f4c96ba UI: Fix incorrect declarations for winapi functions 2017-08-03 22:05:02 -05:00
Justin Moore d081cf5f5c Merge pull request #743 from parkerlamb/startup_race
Prevent race condition during emulator startup (issue #702)
2017-08-03 21:36:22 -05:00
Dr. Chat b3b7acb7ca UI: Dynamic DPI scaling 2017-08-03 21:17:57 -05:00
DrChat aeb0e2557c UI: Very basic dynamic DPI support 2017-08-03 19:13:51 -05:00
DrChat d439704aa9 Vk UI: Free copy command buffer on exit 2017-08-03 16:02:13 -05:00
Dr. Chat aee5601c68 xboxkrnl: Initial (untested) implementation of NtProtectVirtualMemory 2017-07-24 21:41:47 -05:00
AllanCat 7ad6fc92f6 Fixed white edge on some textures(text display). 2017-07-19 23:18:49 +08:00
AllanCat c47d12875c Fixed Vulkan's dark color issue. 2017-07-19 15:06:29 +08:00
Doug Johnson 8ced8eb9e4 base: filesystem_posix: Implement missing functionality 2017-07-11 11:47:25 -06:00
Doug Johnson b143b91fbb base: threading_linux: Stub out several synchronization constructs 2017-07-11 11:47:25 -06:00
sephiroth99 03091d1b71 Add missing libraries when linking xenia-app on Linux
Currently, each module in Xenia is built as a static library (also
called archive). On Linux, an archive only contains the object files
for that module. So any depedency that module has must be specified by
adding those other modules when linking the program, as the dependencies
are resolved at that time.
2017-07-11 11:47:25 -06:00
Doug Johnson 879d6e979f Add missing <string> include 2017-07-11 11:47:25 -06:00
Doug Johnson ae30bc1207 ui:loop_gtk: Use default thread::id constructor instead of explicit id 2017-07-11 11:47:25 -06:00
Doug Johnson b65c7e6297 vulkan: render_cache: More clang compilation fixes 2017-07-11 11:47:24 -06:00
Doug Johnson 1c40e46cd1 Add Add XCB/Xlib interaction and X11 specific GTK headers/includes 2017-07-11 11:47:24 -06:00
sephiroth99 7ede34b593 vulkan: render_cache: fix clang compilation 2017-07-11 11:47:24 -06:00
sephiroth99 11637af8e9 Add missing Profiler function when profiling is disabled 2017-07-11 11:47:24 -06:00
Doug Johnson 570e359caa Support vulkan xcb device for Linux 2017-07-11 11:47:24 -06:00
sephiroth99 bc8356bb83 Remove usage of non standard identity struct
std::identity was removed from the standards, but Visual Studio kept
it as an extension.

Replace it by std::remove_reference, which does just a little bit
more than std::identity does, but without impact in this case.
2017-07-11 11:47:24 -06:00
Doug Johnson 224c779554 Add missing climits include 2017-07-11 11:47:24 -06:00
Doug Johnson 136cc92a66 Remove platform specific headers where unnecessary 2017-07-11 11:47:24 -06:00
Doug Johnson bb0ee0e4a3 Change glsl lang call that supports scalar rather than vector 2017-07-11 11:47:24 -06:00
Doug Johnson 5d579fc846 Add Linux vulkan init routines using xcb lib 2017-07-11 11:47:24 -06:00
Doug Johnson a8053f72e5 Add xcb headers to linux platform, needed for vulkan 2017-07-11 11:47:24 -06:00
Doug Johnson be3615b15b Add missing include <vector> 2017-07-11 11:47:24 -06:00
Doug Johnson 91cfd7f784 Add missing include of <functional> 2017-07-11 11:47:24 -06:00
Doug Johnson f8093cb1e0 Add gtk and x11 headers to linux specific platform header 2017-07-11 11:47:24 -06:00
Doug Johnson 2dbdc24d52 Add LaunchBrowser implementation for linux 2017-07-11 11:47:24 -06:00
Doug Johnson 41dafa8860 Add stub exception handler backend for linux 2017-07-11 11:47:24 -06:00
Doug Johnson 48a2435bde Add header dependencies that prevented linux build
There were several files with dependancies on vector and cmath that
caused compiler errors under linux. In addition, there was a printf
formatting error that threw a compiler error as well
2017-07-11 11:47:24 -06:00
Doug Johnson 417eacb48c xenia: ui: Add GTK implemention of UI 2017-07-11 11:47:24 -06:00
Doug Johnson a9e5d7a496 Add GLX context for linux platform 2017-07-10 03:28:30 -06:00
Doug Johnson a63c9458cd Implement GL context for windows platform 2017-07-09 19:22:13 -06:00
Doug Johnson ce10d9bd02 Create GL context abstraction layer 2017-07-09 19:21:32 -06:00
Doug Johnson 69e818555d Filter resource file from non-windows platforms 2017-07-09 19:21:32 -06:00
Justin Moore 969b4df7dd Merge pull request #744 from drillsar/patch
32-bit value fix to the 64-bit type.
2017-07-05 20:43:39 -05:00
Dr. Chat 283b7bc1b4 GPU: Change ReadRegister/WriteRegister constants to be consistent with other numberings. 2017-07-04 20:47:22 -05:00
Parker Lamb aae82430f2 Emulator: Don't trigger on_launch() until the main thread is set. 2017-07-02 11:58:54 -05:00
Parker Lamb fc27b34304 UI: Prevent race condition during emulator startup. 2017-07-02 11:57:54 -05:00
drillsar 2d13fdd681 32-bit value fix to the 64-bit type. 2017-07-01 22:37:12 -04:00
Svyatoslav 2f1cf1452d xboxkrnl_threading.cc: PVS-Studio: fixed return value. 2017-06-27 12:16:29 +03:00
Justin Moore a2fb0a06fe Merge pull request #718 from parkerlamb/disasm_fixes
PPC disassembly fixes
2017-06-25 13:01:19 -05:00
Thomas Mccaffery fb51148b03 Added GPU Register Definition
Added 0x1924 = 0x6490 according to this referenced here https://www.x.org/docs/AMD/old/RRG-216M56-03oOEM.pdf as DC_LUT_PWL_DATA.
2017-06-12 02:48:51 -04:00
Parker Lamb 4b607a68ba PPC: Fix typo in instruction disassembly for mtspr. 2017-06-11 14:40:59 -05:00
Parker Lamb 3117d737ed PPC: Fixed padding for FormatDS instruction decode data. 2017-06-11 14:28:07 -05:00
Dr. Chat 9dc740dcc0 GraphicsSystem: Properly support register file reads/writes, and fill in some unknown registers 2017-06-11 13:00:31 -05:00
Dr. Chat 6ab4bac542 Xenos: Fill in some of the unknown primitive types. 2017-06-10 20:09:03 -05:00
IndieDriver 8e1c0201ad KeyEvent: Support modifiers / UI: Open file chooser on ctrl-O (#707)
* file chooser on ctrl-o

* typo fix
2017-06-07 13:25:38 -05:00
Parker Lamb 8ae737aaa5 Added GPU register definitions. 2017-06-06 21:45:41 -05:00
Dr. Chat e8f55d8ff2 PPC: Support FPSCR[RN] (rounding mode) 2017-05-20 12:15:19 -05:00
Dr. Chat 4e6a51472d Vulkan: Fix cube image initialization 2017-05-17 05:39:16 -05:00
Dr. Chat 4f0c0f2724 Shims: No implicit dereferencing of pointers 2017-05-17 04:45:31 -05:00
Dr. Chat e388b74dbe BaseHeap::Release: Disallow freeing of 0x0 2017-05-17 04:44:48 -05:00
Dr. Chat 7a3af9b2c4 PPC: Fix vsl[b/h/w] and vsr[b/h/w] with variable shift amounts. 2017-05-15 11:08:09 -05:00
gibbed 4260e3819b Added _snwprintf export implementation. 2017-05-14 18:03:53 -05:00
gibbed dab3a2e426 Don't use xe::to_wstring for converting arguments back to wide strings on Windows (xe::to_wstring assumes input is valid UTF-8, which the arguments are not). Fixes #703. 2017-05-14 16:29:45 -05:00
gibbed 1e9786eae3 Added two xam stubs. 2017-05-14 09:52:25 -05:00
Dr. Chat 6ea6b8b51d x64: Change binary strings to actual binary numbers. 2017-05-14 09:28:58 -05:00
gibbed e2434e50a0 Updated to latest Xbyak. 2017-05-14 02:03:01 -05:00
Dr. Chat 16cff62d36 Base: Remove memory::DeallocationType::kDecommitRelease (an invalid combination) 2017-05-14 00:59:52 -05:00
Dr. Chat 66dbd86989 PPC: Support NaN in fcmp[o/u]x. 2017-05-14 00:24:35 -05:00
gibbed eff9ba31d2 Fixed PPCContext::cr() returning incorrectly shifted state. 2017-05-14 00:02:47 -05:00
Dr. Chat 6e2bf0b4b1 Native test runner: Support FPSCR 2017-05-13 23:12:53 -05:00
Dr. Chat 84758a3a3f Vulkan CP: Use the color blitter 2017-05-13 10:15:56 -05:00
Dr. Chat a41cf1a9ba Vulkan UI: Properly transition the frontbuffer to avoid validation errors. 2017-05-13 10:05:02 -05:00
Dr. Chat 7fdfb90e3d Vulkan: Allow command buffer level specification on allocation rather than construction.
Free unused descriptor sets properly.
2017-05-13 10:03:59 -05:00
Dr. Chat 0c1a46d708 Vulkan UI: Set up the blitter. 2017-05-13 10:02:22 -05:00
Dr. Chat 6990d21a8d Update test framework documentation 2017-05-12 18:34:01 -05:00
Dr. Chat 8aac7a6007 Fix vkDebugMarkerSetObjectNameEXT for now. 2017-05-12 18:00:31 -05:00
Dr. Chat d3ed53c43e PPC: Support v[u]pkd3d128 VPACK_NORMSHORT4 2017-05-12 17:55:52 -05:00
Dr. Chat 82efbd7bc5 HIR: Add opcode SET_ROUNDING_MODE (taking FPSCR as an argument) 2017-05-12 14:05:27 -05:00
Dr. Chat dbece71945 native-tests: Add altivec save/restore support (only up to 32 registers) 2017-05-12 12:00:35 -05:00
Dr. Chat af493ffbc7 xenia-base: Use unique_ptr constructor rather than make_unique to support GCC 4.8.4 2017-05-12 10:17:56 -05:00
Dr. Chat 7e9d63e33d Gracefully handle test suites failing to load without exiting. 2017-05-11 15:59:34 -05:00
Dr. Chat 747f7d65d8 PPC-nativetests: Zero out the context between runs 2017-05-11 15:59:34 -05:00
Dr. Chat 737b78ad49 Last stretch to get PPC native tests working 2017-05-11 15:09:43 -05:00
Dr. Chat 7eceb9db09 PPC nativetests require gflags! 2017-05-11 11:41:34 -05:00
Dr. Chat cf838439b7 Whoops! Fix formatting. 2017-05-11 11:38:50 -05:00
Dr. Chat 7194c9e49b filesystem_posix: Add missing cstring include 2017-05-11 10:34:26 -05:00
Dr. Chat 254fd3631f Math: Fix [l/t]zcnt intrinsics on GCC
X64Context: Surround with architecture ifdef
2017-05-11 10:32:13 -05:00
Dr. Chat 5fde9fa720 Fix typo in xenia-vfs premake generator. Fixes #701. 2017-05-10 22:15:03 -05:00
Dr. Chat be962e6de1 More WIP architecture fixes (exception_handler/string_util) 2017-05-09 22:32:27 -05:00
Dr. Chat 096a0230c4 Fix Travis :| 2017-05-09 21:10:53 -05:00
Dr. Chat c2160c2504 Fix mapped_memory_posix.cc build on GCC 2017-05-09 21:00:30 -05:00
Dr. Chat 66a73128dd Fix debugging_posix.cc 2017-05-09 20:57:35 -05:00
Dr. Chat dbc2d233fb (for now) Stub X64Context out on non-AMD64 platforms 2017-05-09 20:53:25 -05:00
Dr. Chat bb3291e331 Add generic memory swap routines. 2017-05-09 20:52:09 -05:00
Dr. Chat 6dcbee18da Whoops - fix linux builds. 2017-05-08 22:26:48 -05:00
Dr. Chat ccd6d4b199 (WIP) Add a native PowerPC testing frontend 2017-05-08 22:21:43 -05:00
Dr. Chat 095f65c19e (maybe) Proper POSIX memory allocation support 2017-05-07 19:52:15 -05:00
Dr. Chat e26aa6c189 Add XE_ARCH_* 2017-05-07 18:25:06 -05:00
DrChat cff80bd782 fctiw[z]x: Sign-extend the result (verified by HW) 2017-04-26 12:28:35 -05:00
DrChat 8ccefa1600 Xam: (possibly) fix XamContentCreateEx extended result being incorrectly put as an extended error. 2017-04-24 15:11:46 -05:00
Dr. Chat 7f4ee2a070 Fix typo in XamAlloc
Few other inconsistencies in xboxkrnl_memory
2017-04-17 22:57:29 -05:00
Dr. Chat ab1690b0b1 Fixing formatting errors. 2017-04-08 12:46:52 -05:00
Dr. Chat b40d75aa3d TextureInfo: Store the texture format, not a pointer to texture format info. 2017-04-07 15:16:09 -05:00
Cesys d2605bce18 Fixing Altivec lvrx and stvrx 2017-03-31 11:00:51 -07:00
Megamouse c38accbb76 format shim conversion on some files
xam_info.cc, xam_msg.cc, xam_notify.cc, xboxkrnl_memory.cc,
xboxkrnl_misc.cc
2017-03-28 00:39:37 +02:00
Cesys 8c4ca35a35 Ringbuffer init fix 2017-03-25 20:00:48 -07:00
DrChat 9d721df061 Don't log the result of RtlNtStatusToDosError as an error 2017-03-24 16:31:09 -05:00
DrChat e699be0118 Logging: Add a flag to specify the minimum log level
--log_level = (0=error, 1=warning, 2=info, 3=debug)
2017-03-24 16:28:41 -05:00
Dr. Chat 92a4b90ed0 TextureInfo: Use round_up rather than floating point math for calculating tile width. 2017-03-19 20:20:43 -05:00
DrChat f012845cb6 JIT: Propagate mul/div by constant one 2017-03-16 18:49:55 -05:00
Dr. Chat 5ed086f03f x64 Code Cache: Notify Intel VTune of generated functions. 2017-03-16 17:45:47 -05:00
Dr. Chat 78433f70bd Vulkan CP: Supply the correct endianness to resolve TextureInfo 2017-03-16 01:55:07 -05:00
Dr. Chat b4c4ad4e76 SamplerInfo: Add LOD bias and border color 2017-03-14 23:33:22 -05:00
Dr. Chat b34350e9e7 TextureCache: Remove distinction between resolve textures and regular textures. 2017-03-14 23:18:53 -05:00
Dr. Chat 4a815e62cb TextureInfo: PrepareResolve, Reorganize source, add better documentation 2017-03-14 22:46:47 -05:00
Dr. Chat 581875b339 SPIR-V: Load operands after handling predicated blocks. 2017-03-14 21:41:50 -05:00
Dr. Chat e4ece12371 BufferCache: Clear the transient cache when invalidated. 2017-03-14 19:07:28 -05:00
Dr. Chat 44e7c3712a Vulkan: Fix register constants on AMD 2017-03-14 00:50:49 -05:00
Dr. Chat 5f5dc61428 Vulkan CP / Render Cache: Proper synchronization barriers for transfer
Use an event rather than a semaphore for swap
Update some calculations in IssueCopy TextureInfo
2017-03-13 18:03:33 -05:00
Dr. Chat 0c2e0e4119 RenderCache: Update to register bitfield structs 2017-03-13 17:54:41 -05:00
Dr. Chat 3cae25f36f VdSwap: Supply more (accurate) information to the CP 2017-03-12 22:50:04 -05:00
gibbed e3552a0601 Temporary hack for swaps until better texture info building can be implemented. 2017-03-12 22:03:20 -05:00
gibbed 8dbf3d240b Make the previous commit slightly more performant. 2017-03-12 01:15:43 -06:00
gibbed 69b92c6c31 Maybe fix texture uploads where mipmaps are packed in linear textures. 2017-03-12 01:12:02 -06:00
Dr. Chat 284aa14a67 Update a few Xenos enums/structs 2017-03-12 01:05:34 -06:00
gibbed 5875b79cc4 Compressed textures apparently don't have to have a height multiple of 32 either. 2017-03-11 23:40:43 -06:00
gibbed c0ee30c6b4 Linear textures apparently don't have to have a height multiple of 32. 2017-03-11 22:56:17 -06:00
Dr. Chat f87e55d030 Textures: Untiled textures do not need to have a size multiple of 32 2017-03-11 20:58:12 -06:00
Dr. Chat c4b728b121 MMIO Handler: Don't allow more than one watch to occupy the same region (fire old watches if a new one overlaps) 2017-03-11 20:55:01 -06:00
Dr. Chat 257fbfc408 ELF Loader: Fix linux build 2017-03-07 12:33:18 -06:00
Dr. Chat 3046df2415 SPIR-V: Go to next instr if cexece did not execute and is not the last instruction. 2017-03-07 12:25:36 -06:00
Dr. Chat cbab45c4b7 Improve ELF loading 2017-03-06 17:59:19 -06:00