Commit Graph

3413 Commits

Author SHA1 Message Date
Dr. Chat b8d4f26e46 Fix NtWaitForMultipleObjectsEx definition 2015-12-29 12:32:49 -08:00
Dr. Chat 87cdce1440 Export kBlocking tag 2015-12-29 12:32:48 -08:00
Dr. Chat db8eb83057 Track export data on Guest Functions 2015-12-29 12:32:47 -08:00
Dr. Chat 42c657c40a Remove processor dependency on XThread for breakpoints 2015-12-29 12:32:47 -08:00
Dr. Chat 666f5543a8 Cleanup ThreadState and XThread 2015-12-29 12:32:46 -08:00
Dr. Chat 41d5b41523 Automatically install any CPU breakpoints in any newly-defined functions if necessary. 2015-12-29 12:32:01 -08:00
Dr. Chat d09e3b7953 Fix incorrect backend breakpoints implementation 2015-12-29 12:32:00 -08:00
Dr. Chat 28468f8a18 cpu::Processor now tracks a pointer to the emulator. 2015-12-29 12:32:00 -08:00
Dr. Chat 7d59258839 Processor::ExecuteRaw
Changed the breakpoint lock to a recursive mutex.
2015-12-29 12:28:57 -08:00
Dr. Chat ac706f6923 Allow breakpoint addresses to be changed after creation 2015-12-29 12:28:56 -08:00
Dr. Chat e383e2f101 Processor breakpoint support 2015-12-29 12:28:56 -08:00
Ben Vanik 5019f1aa98 Possible fix for failing to create files. 2015-12-29 11:02:28 -08:00
Ben Vanik 214957da3a Adding finer-grained instruction classification. 2015-12-29 11:02:00 -08:00
Ben Vanik cc72de0f64 Moving disasm to new tables.
Also adding useful CPU docs.
2015-12-28 20:49:22 -08:00
Ben Vanik cd938be678 Removing all uses of the old PPC tables besides disasm. 2015-12-28 10:08:38 -08:00
Ben Vanik 990d973c74 New ppc opcode decoder.
Seems to work and match up with the old decoder (which may be bad).
Old decoder remains until all functionality is replaced.
2015-12-27 22:53:05 -08:00
Ben Vanik ca8d658ffe Speeding up PPC tests significantly. 2015-12-27 12:03:30 -08:00
Ben Vanik 5de82887fa Adding build version information to main window/log. 2015-12-27 11:53:37 -08:00
Ben Vanik 5f61c6ad07 Adding icon. 2015-12-27 11:09:19 -08:00
Ben Vanik 484972db30 Fixed mutation of vectors during iteration. 2015-12-27 10:48:38 -08:00
Ben Vanik 0a316808a5 Include order fixes. 2015-12-27 10:27:46 -08:00
Ben Vanik 6b92c1a01e Moving GPU flags to graphics_system.cc so all graphical exes get them. 2015-12-27 10:21:11 -08:00
Ben Vanik 629a75c162 Merge pull request #493 from parkerlamb/nv_optimus
Nvidia Optimus support
2015-12-27 10:15:40 -08:00
Ben Vanik 0e58208add Dropping elemental-forms and swapping out with imgui.
Too much code for such little use. This should simplify porting.
2015-12-26 20:25:24 -08:00
Parker Lamb b59ee24f5d NvOptimusEnablement and AmdPowerXpressRequestHighPerformance symbols are
now exported for laptops with dual graphics
2015-12-26 22:14:13 -06:00
Ben Vanik 3b11de2c2d Merge pull request #492 from DrChat/gl_backend_changes
GL Backend Changes/Fixes
2015-12-22 23:52:46 -08:00
Dr. Chat 990a8baf1b Fix cases where GL_INFO_LOG_LENGTH returns 0. 2015-12-22 20:15:07 -06:00
Dr. Chat b49114bad6 GLContext: Keep track of robust access support for WasLost 2015-12-22 15:53:51 -06:00
Dr. Chat cde39953ab Fix TracePlayer::PlayTraceOnThread not signifying it's done with the trace if a break is pending. 2015-12-22 15:46:39 -06:00
Dr. Chat a4f6e60e20 Blitter::Draw assert on zero src texture 2015-12-22 15:44:51 -06:00
Dr. Chat ab93a6bf64 If last framebuffer texture isn't set, use active framebuffer otherwise don't draw. 2015-12-22 15:44:02 -06:00
Dr. Chat 919d3d080b Assert on context loss due to a TDR 2015-12-22 15:43:08 -06:00
Dr. Chat 59bee898f7 Always output the shader info log if it's not empty. 2015-12-22 14:41:18 -06:00
Dr. Chat 30eda6909f GLContext::WasLost - Determines if we lost the context due to a TDR or another outstanding event. 2015-12-20 21:13:51 -06:00
Dr. Chat 0c60cc5f48 Fix GLContext::AssertExtensionsPresent not clearing the context after use 2015-12-20 20:55:04 -06:00
Dr. Chat cf41a84fe3 Fix broken check against bool constants
Fix always terminating execution in cexece branches (these are sometimes followed by exece branches)
2015-12-20 20:53:31 -06:00
sephiroth99 a281f6d70d ObjectTable: Remove explicit specialization in class scope
Function template 'LookupObject' in ObjectTable class has
a specialization in class scope, which is not allowed.

While MSVC seems OK with that, clang complains about it.

Fix this issue by moving the definition of the specialisation
outside the class scope, and moving the declaration in the
'.cc' file.
2015-12-17 01:04:44 -05:00
Ben Vanik 15816327b4 Renaming xe::cpu::frontend to xe::cpu::ppc. 2015-12-14 21:17:55 -08:00
Ben Vanik 9273359cdd Removing vestigial ContextInfo. 2015-12-14 20:57:14 -08:00
Ben Vanik 5e6c1f5a50 Removing some dead code. 2015-12-14 20:49:50 -08:00
Ben Vanik 826ea60890 gpu-trace-diff tool for running batches of diffs. 2015-12-13 16:59:43 -08:00
Dr. Chat 3ebd53ba11 Fix crandc/crnand/crnor/crorc not properly taking the complement of the CR fields. 2015-12-13 18:32:57 -06:00
Ben Vanik 7419e7eb4a Trace dump tool, for dumping pngs (and in the future more stuff). 2015-12-13 11:59:14 -08:00
Ben Vanik 95b0ecf774 Sharing more of trace viewer code. 2015-12-13 11:22:47 -08:00
Ben Vanik 5db84105c4 Utilizing fallthrough for most shader CF, hopefully speeding things up. 2015-12-13 10:14:35 -08:00
Ben Vanik b5469b57ba Moving temporary registers to exec blocks. ps may still need to be shared. 2015-12-07 22:57:28 -08:00
Ben Vanik 85b1797b9e Workaround for nvidia bug with dynamic local memory access. 2015-12-07 22:55:17 -08:00
Ben Vanik ec113275dc Making texture swizzles dynamic. Seems to fix some color swap issues.
And probably exposes many more ;)
2015-12-07 22:39:33 -08:00
Ben Vanik 09022a6ad3 gl_FragCoord support. 2015-12-07 20:45:02 -08:00
Ben Vanik 1f773f14b3 Fixing vfetch_mini use. 2015-12-07 19:16:32 -08:00
Ben Vanik 522ff9d23e Alternate indirect buffer command. 2015-12-07 19:16:01 -08:00
Ben Vanik ed0b97813a Loops in shaders (no TDRs! woo!). 2015-12-07 13:03:57 -08:00
Ben Vanik 367ca09f1d Don't duplicate vf bindings. 2015-12-07 13:03:35 -08:00
sephiroth99 f154b7ed59 Fix compilation error of translated GLSL shader.
Comparison of uvec2 and int is not possible, explicitly
use a zero-value uvec2.
2015-12-07 01:39:17 -05:00
Ben Vanik 280c0b35f6 Basic control flow skeleton and jumps implemented.
A-train's trees draw right now!
Helps a bit with #473 but still need to implement loops.
2015-12-06 11:44:22 -08:00
Ben Vanik 934b0d5bbc Marking unimplemented translations as non-fatal. 2015-12-06 11:01:04 -08:00
Ben Vanik c86e479214 Replacing old Shader with TranslatedShader. 2015-12-06 10:36:07 -08:00
Ben Vanik 083f936bbc aL placeholder until loops are implemented. 2015-12-06 00:53:25 -08:00
Ben Vanik 51a8002629 Moving GL backend to new shader translator.
This seems to make a lot of things better, but may also break things.
Cleanup to follow.
2015-12-06 00:48:41 -08:00
Ben Vanik 295c62c7a4 Guarding protect-on-release behavior behind --protect_on_release.
Workaround for #456 until it can be identified.
2015-12-05 23:27:25 -08:00
Ben Vanik 81d0376106 Fixing use before check for null. 2015-12-05 23:24:40 -08:00
Ben Vanik 52f339cee4 Removing bogus assert. 2015-12-05 23:24:17 -08:00
Ben Vanik 2b3b423776 Mostly complete new GLSL translator (modulo flow control). 2015-12-05 17:44:06 -08:00
Ben Vanik 0058cae901 Adding pseudo code for all ucode ops from AMD docs. 2015-12-05 03:10:45 -08:00
Ben Vanik 4bac581d01 Merge pull request #475 from sephiroth99/varfix
VS2015 Update 1 fix + GLContext small cleanup
2015-12-03 22:39:19 -08:00
Ben Vanik 00240945fe Cleanup for the latest clang-format version. 2015-12-03 19:52:02 -08:00
Ben Vanik 249b952de9 Adding some comments. 2015-12-02 17:37:48 -08:00
Dr. Chat bc1e7684ca Pass rounding mode from i->flags for OPCODE_CONVERT 2015-12-02 14:03:15 -06:00
Dr. Chat 17d18f7154 Implement a few cases for Value::Cast/Convert 2015-12-02 14:01:28 -06:00
Dr. Chat 57a823ae39 Add (commented out) code to setup page protections for xex modules. 2015-12-01 19:53:17 -06:00
Dr. Chat 525d62d437 constant OPCODE_CONVERT and more cases for OPCODE_LOAD 2015-12-01 19:51:28 -06:00
Dr. Chat 873016f06f Fix double-swap in constant load 2015-12-01 19:03:51 -06:00
sephiroth99 e8296a8608 ui/gl: GLContext: access directly class member
In ::EndSwap, dc_ class member was accessed through a function. Access
it directly like it is done elsewhere in the class.

It is also the only place where it is used, so remove the function in
question.
2015-11-30 22:59:30 -05:00
sephiroth99 f367c4ba7b Fix compilation under VS2015 Update 1 2015-11-30 22:56:42 -05:00
Ben Vanik 82fe65475e Fixing sqrt/rsqrt mixup.
Queue the 'how did this ever work?!'
2015-11-30 17:22:08 -08:00
Ben Vanik cd50aac6d2 Skeleton SPIRV translator. 2015-11-29 19:45:55 -08:00
Ben Vanik d2f7cc1602 Reworking translator code to be pretty sexy. 2015-11-29 16:55:42 -08:00
Ben Vanik 65130edaa1 First pass ShaderTranslator base type, able to disasm in msft style. 2015-11-28 16:19:04 -08:00
Ben Vanik bea8870700 Shuffling old-style ucode.h under gl4. 2015-11-28 16:10:27 -08:00
Ben Vanik 71b9995448 Skeleton SPIRV shader translator. 2015-11-28 16:10:26 -08:00
sephiroth99 f4dae2335c premake: Small fixes to various premake files
In particular, add the "src" group to apu/xaudio2 project, which was
missing.
2015-11-28 01:53:26 -05:00
raven02 44a1fa0c9c Fix distance vector 2015-11-28 13:17:29 +08:00
Ben Vanik 51c3df1e2e Making mtmsr & co synchronize the context. 2015-11-25 17:37:20 -08:00
Ben Vanik dfd92757a9 Adding CONTEXT_BARRIER to force the PPC context to synchronize.
This is just an annotation right now, as it's not actually needed.
2015-11-25 14:48:36 -08:00
Ben Vanik 54215d9fb4 Write shader binaries with --dump_shaders and load them in the compiler. 2015-11-24 20:45:23 -08:00
Ben Vanik 89172da4b7 Unplumbing program_cntl and simplifying shader loading. 2015-11-24 20:24:35 -08:00
Ben Vanik 6a546ebe4d Shuffling spirv code so it's not tied to xe::gpu.
Will make it easier to use in standalone apps.
2015-11-24 19:49:05 -08:00
Ben Vanik cf68d02142 Lots of cleanup in SpvEmitter. 2015-11-23 21:20:59 -08:00
Ben Vanik a7f6c1a09c Prevent seeking while playing a trace. 2015-11-22 17:44:24 -08:00
Ben Vanik e35fdff632 Porting glslang SPIRV stuff and cleaning some of it up. 2015-11-22 17:42:24 -08:00
Ben Vanik 1b1ff07bf5 Assembler/disassembler via SPIRV-Tools. 2015-11-22 17:42:23 -08:00
Ben Vanik 9072a38f38 Renaming spirv files so VS highlights them correctly. 2015-11-22 17:42:23 -08:00
Dr. Chat 414519fb6c Expose a playback percentage rather than pointers in TracePlayer 2015-11-22 11:36:31 -06:00
Dr. Chat a59e83e0d0 Style 2015-11-22 10:15:50 -06:00
Dr. Chat 646db5b8be Disable controller UI while playing a trace 2015-11-22 09:54:25 -06:00
Dr. Chat 1078d21bd2 Stop resizing columns for the fetch constants 2015-11-21 22:37:24 -06:00
Dr. Chat e565bafdab Prevent interaction with the command list UI while a trace is still playing 2015-11-21 22:29:47 -06:00
Dr. Chat 7c25795c05 Display texture guest address and swizzle information 2015-11-21 21:45:11 -06:00
Dr. Chat 7a1d7bd652 Display a progress bar while the command processor is playing a trace
- Masks a race condition in the texture cache b/t the UI thread and the GL4 command processor
2015-11-21 21:44:35 -06:00
Dr. Chat 7640448509 TracePlayer: Allow seeking forward more than one command 2015-11-21 21:42:24 -06:00
Dr. Chat 2a88225500 TracePlayer - Expose internal playback pointers 2015-11-21 21:41:41 -06:00
Ben Vanik b750875e9d Fixing style. 2015-11-21 19:07:07 -08:00
Robert Dupuis bdec7a063f Implemented REG_TO_MEM GPU opcode 2015-11-21 21:20:34 -05:00
Ben Vanik 1956b8708e Fixing include orders and whitelisting others.
Will be broken until clang SVN 253772 is available on travis/snapshots.
2015-11-21 11:34:46 -08:00
Ben Vanik add68c3743 spirv headers and compiler skeleton. 2015-11-21 11:22:24 -08:00
Dr. Chat 0f2f4ab9b6 Compress/decompress memory automatically in trace files 2015-11-20 17:12:13 -06:00
John Godgames bcec142d3e Fixes DXT1 Alpha issues in certain games
https://www.opengl.org/wiki/S3_Texture_Compression#DXT1_with_1-bit_Alpha
2015-11-20 05:10:28 +01:00
Dr. Chat 9ff8aa96e7 Disable GL_CULL_FACES when drawing rectangle lists. 2015-11-17 22:20:43 -06:00
Ben Vanik a556316ba2 Skip xma read when at the end of the stream. 2015-11-16 19:40:43 -08:00
Ben Vanik 2602d54775 Merge pull request #461 from DrChat/trace_viewer_open_dlg
Trace Viewer: Display a File Open Dialog if no File Specified
2015-11-16 18:26:17 -08:00
Dr. Chat f50e2ab10c Trace Viewer: Display a file picker if the user doesn't supply a file on the command line. 2015-11-15 09:15:20 -06:00
Dr. Chat 3efc7f339a Make sure texture swizzles match before performing a copy 2015-11-14 22:34:34 -06:00
Dr. Chat 4dfe1addaa Verify that LookupObject actually returns an object of the requested type. 2015-11-12 19:06:15 -06:00
Dr. Chat 7fc22f1987 Add a static kType field to all objects 2015-11-12 19:01:55 -06:00
Ben Vanik b970b970f0 Removing another scalar component swap from #273. 2015-11-12 15:53:16 -08:00
Ben Vanik 3d2a5b2495 Reverting depth clear restriction in #330.
The comment is still true: games seem to need more clears.
2015-11-12 14:15:59 -08:00
Ben Vanik e858f87e3e Reverting component changes from #273. 2015-11-12 14:14:37 -08:00
Ben Vanik b6b685aa72 Fixing lint error. 2015-11-11 15:44:24 -08:00
Dan Weatherford dca0ab38d5 Show relative constant fetch in the microcode disassembler 2015-11-11 17:13:58 -06:00
Dan Weatherford 2fda17cf3c Fix relative constant fetch on second source operand of shader instruction
The sense for this test was backwards, causing AppendSrcReg to read the wrong
const_n_rel_abs flag if the first operand was not a constant fetch.
2015-11-11 17:13:48 -06:00
Ben Vanik 6c95ca1cdb Moving graphics context creation around to hide actual creation.
Makes it easier to support APIs that don't have a concept of sharing.
2015-11-10 17:38:57 -08:00
Ben Vanik d8fa54ffc4 Fixing super class call in gl4 cp. 2015-11-09 20:28:09 -08:00
Dan Weatherford e178853e46 Partially implement XamUserWriteProfileSettings
Handles writing binary blob settings to the user profile which can then be read
by XamUserReadProfileSettings.
2015-11-09 16:53:52 -06:00
Ben Vanik ca5e8fa073 Adding a way to get an hmodule. 2015-11-09 13:59:06 -08:00
Ben Vanik 93708c0c1c xe::format_string utility. 2015-11-09 11:13:34 -08:00
Ben Vanik 65e0e907d8 Normalizing the name of the GL window demo. 2015-11-08 19:11:44 -08:00
Dr. Chat c98d10545e Invalidate MMIO Ranges when memory is released or access protections are changed. 2015-11-08 19:14:06 -06:00
Dr. Chat 529227e4e6 MMIOHandler::InvalidateRange 2015-11-08 18:18:28 -06:00
Ben Vanik 8784de0162 Cleaning up unneeded file. 2015-11-08 15:08:27 -08:00
Ben Vanik 5834a42ef3 Dependency injection for apu/gpu/hid. 2015-11-08 15:02:24 -08:00
Ben Vanik 9a6c5c5c74 95% of trace viewer now gpu backend agnostic. 2015-11-08 14:05:37 -08:00
Ben Vanik b5a18b5462 Factoring out a lot of reusable GPU code from gl4/. 2015-11-08 11:54:36 -08:00
Ben Vanik b26f4a5719 Moving imgui input to a shared place. 2015-11-07 12:42:44 -08:00
Ben Vanik 1d9f73ad13 HID demo. 2015-11-07 12:31:07 -08:00
Ben Vanik 4af6c41740 Moving profiling.h to base - UI could be separated for cleanliness. 2015-11-07 12:31:07 -08:00
Ben Vanik 563552f62f Merge pull request #453 from DrChat/instr_fixes
Fix vcmpbfp having incorrect behavior when the value is equal to the bounds
2015-11-07 12:28:44 -08:00
Dr. Chat aeb635e31d vcmpbfp tests 2015-11-07 14:27:24 -06:00
Ben Vanik 2fdb00b4ed Removing use of Emulator from hid/. 2015-11-07 11:09:47 -08:00
Ben Vanik e16fa28822 Fixing elemental clipping. 2015-11-07 11:09:24 -08:00
Ben Vanik 91229de429 Making window demo graphics API-specific. 2015-11-07 10:53:07 -08:00
Ben Vanik f065872241 Adding window demo. 2015-11-07 10:37:46 -08:00
Ben Vanik fdf59fec5f Moving elemental to immediate drawer. 2015-11-07 09:52:57 -08:00
Dr. Chat abf37ed9be Fix vcmpbfp returning that the value is out of bounds for values equal to the bounds. 2015-11-06 19:04:59 -06:00
Ben Vanik 440c807936 Fix error state shutdown crash. 2015-11-06 16:27:07 -08:00
Ben Vanik 35a9697af7 Merge pull request #446 from AlexAltea/master
Fixed mtcrf which was wrongly implemented as mtcr
2015-11-06 15:11:10 -08:00
Dr. Chat 9985187b23 Implement vpkuwum/vpkuhum
Fixed vpkuwus with signed numbers
Implement some constant sources for vec average/unpack
2015-11-06 15:18:48 -06:00
Dr. Chat 64b0cc9d5e Enabled tests for vpkuhum/vpkuwum and added test with negative numbers for vpkuwus 2015-11-06 14:57:42 -06:00
Ben Vanik d4356b8cfa Removing unused buffers. 2015-11-05 23:08:22 -08:00
Ben Vanik 4c2257a29d Moving imgui to the new ImmediateDrawer. 2015-11-05 23:03:02 -08:00
Ben Vanik c631b965d7 Adding generic immediate mode drawing API and migrating microprofile.
Future changes will move elemental-forms and imgui to the common API as
well.
2015-11-05 21:36:05 -08:00
Ben Vanik 5087ccd565 Tracking capstone next. 2015-11-05 18:43:15 -08:00
Ben Vanik 5525f6c0a2 Tracking master xbyak. 2015-11-05 17:17:52 -08:00
Ben Vanik 65c5279611 Fixing style. 2015-11-05 16:39:27 -08:00
Dr. Chat 430d4c7182 Fix rare deadlock in the MMIO handler. 2015-11-05 18:13:15 -06:00
Ben Vanik cc5ebaed6d Merge pull request #450 from DrChat/indirection_table_fallback
Indirection table fallback
2015-11-04 07:57:30 -08:00
Ben Vanik 4e09bb8e61 Merge pull request #449 from DrChat/rect_list_fix_
Rectangle List Fix (projection issues on right-aligned vertices)
2015-11-04 07:46:44 -08:00
Dr. Chat 4ca62bf02c Setup the processor before doing anything else (and return an actual error code if it fails) 2015-11-04 06:48:46 -06:00
Dr. Chat f3fe260a17 Fallback case if indirection table could not be allocated. 2015-11-04 06:46:52 -06:00
Dr. Chat 9baeef02e0 Allow rect lists to fall through if they don't match the expected format 2015-11-04 05:51:34 -06:00
Ben Vanik b9326be93c Merge pull request #447 from DrChat/excreatethread_ptr_fix
Fix ExCreateThread returning a handle when game requests a pointer
2015-11-03 20:01:12 -08:00
Dr. Chat c4165a235c Fix rectangle list fragment shader for right-aligned vertices. 2015-11-03 21:32:25 -06:00
Dr. Chat cd12b3d198 Converted MmCreateKernelStack / Implemented MmDeleteKernelStack 2015-11-01 21:59:27 -06:00
Dr. Chat b628577855 Implemented KeSetCurrentStackPointers 2015-11-01 21:56:40 -06:00
Dr. Chat cee0e582c2 Remove workarounds for handles passed into Ke* functions. 2015-10-31 10:31:35 -05:00
Dr. Chat 4d22c21688 ExCreateThread: Flag 0x80 indicates we should return the thread pointer, not handle. 2015-10-31 10:28:53 -05:00
Ben Vanik e0b3d24a50 Merge pull request #445 from DrChat/kernel_trampolines
Generate trampoline functions for GetProcAddress on kernel modules
2015-10-24 17:16:33 -07:00
Alexandro Sánchez Bach c6751c1e5f Fixed mtcrf which was wrongly implemented as mtcr 2015-10-25 00:44:33 +01:00
Dr. Chat 3547d31c3d Generate trampoline functions for GetProcAddressByOrdinal on kernel modules. 2015-10-24 14:14:08 -05:00
Dr. Chat 729f762c5d RawModule SetAddressRange/set_name 2015-10-24 14:02:08 -05:00
Dr. Chat 55e811450d Lint 2015-10-22 20:22:34 -05:00
Dr. Chat 407d79cf3e Fix MMIO handler race condition by rechecking page access protections under the global lock. 2015-10-22 20:18:08 -05:00
Dr. Chat 88be0a362c memory::QueryProtect 2015-10-22 20:16:27 -05:00
Ben Vanik 64b8dcfd99 Lint fixes. 2015-10-17 09:30:28 -07:00
Ben Vanik 91dfb6a8a0 Merge pull request #436 from DrChat/misc_changes
Misc changes
2015-10-17 01:15:20 -07:00
Ben Vanik d03d0233ec Merge pull request #438 from Nukem9/patch-1
Add another likely offset for ISO magic
2015-10-17 01:13:52 -07:00
Nukem 5300d185af Add another likely offset for ISO magic
Tested with Skyrim's DISC1 ISO. It doesn't load otherwise.

(Submitting this through github's web editor)
2015-10-04 02:03:08 -04:00
sephiroth99 9dfabba583 Fix compile error uncovered by Clang 3.8. 2015-09-25 23:50:05 -04:00
Dr. Chat 22629c3ef5 Use a slightly better flag name for drawing all framebuffers 2015-09-25 18:54:28 -05:00
Dr. Chat c33e95981b Formatting. 2015-09-25 18:46:50 -05:00
Dr. Chat c150552b9c Quick-kill processing the XMA context if there's no new data available. 2015-09-25 18:40:49 -05:00
Dr. Chat f2b2cc1b6f X_STATUS_MAPPED_ALIGNMENT definition 2015-09-25 18:39:42 -05:00
Dr. Chat 71818a3129 Convert NtCreateEvent to new format 2015-09-25 18:39:14 -05:00
Dr. Chat b12480820c word_t shim parameter 2015-09-25 18:38:33 -05:00
Dr. Chat f5ee6f4cf5 XEX2 lan key header 2015-09-25 18:38:10 -05:00
Dr. Chat ba399d52b9 NtAllocateVirtualMemory: Return STATUS_MAPPED_ALIGNMENT if the base address is unaligned 2015-09-25 18:37:49 -05:00
Dr. Chat d78f43c574 XamContentOpenFile stub 2015-09-25 18:35:57 -05:00
Dr. Chat bf39e33dc0 Raw modules need to commit an executable range too! 2015-09-25 18:35:33 -05:00
Dr. Chat 9ceab26560 Print the LAN key header
Check if the module is a XEX module before calling Unload on XexModule
2015-09-25 18:34:54 -05:00
Dr. Chat 9f2cf96f8a Add a flag to copy color targets and depth targets to the screen on swap 2015-09-25 18:30:39 -05:00
Dr. Chat a9b557e8b9 Allow passing of >7 arguments through Processor::Execute
Set entry status to failed if LookupFunction failed
2015-09-25 18:24:12 -05:00
Dr. Chat 3cbc65ac29 XThread Get/Set Last Error 2015-09-25 18:22:13 -05:00
Ben Vanik ee92f75a84 Updating to the latest clang-format. Make sure to update yourselves! 2015-09-22 08:26:19 -07:00
sephiroth99 8272beb8d2 Fix assignment of temporary value to non-const reference. 2015-09-22 07:45:57 -07:00
sephiroth99 08ae855e07 It seems 'export' is a reserved keyword for clang. 2015-09-22 07:45:52 -07:00
sephiroth99 f3a4e1146f Fix logical-op parenthesis error from clang. 2015-09-22 07:44:16 -07:00
sephiroth99 7fb4fd2790 More workarounds for __m128. 2015-09-22 07:44:04 -07:00
sephiroth99 ab2ef82d55 xobject: remove accept method of object_ref class
The removed method was causing an error in clang ("call to non-static member
function without an object argument"). As it was not used, simply remove
it.
2015-09-22 07:43:08 -07:00
sephiroth99 e1d569dd7c Fix usage of __m128.
With GCC and clang, __m128 is not a struct, so there are no struct members
to access the individual items in the vector.

Use standard load/store function and some hackery to workaround this
limitation.
2015-09-22 07:41:28 -07:00
sephiroth99 542f5ba8e5 Move GetTempReg higher in the source file, before its first usage. 2015-09-22 07:39:26 -07:00
sephiroth99 ff7c755bc9 memory: AlignedAlloc: fallback to aligned_alloc()
When compiling with clang++, __STDC_VERSION__ is not defined (obviously
as clang++ is not a C compiler). Because of this, check if compiling
with MSVC and fallback to the Linux implementation. If the latter is not
supported, compilation will fail, as it previously would have with the
2015-09-22 07:39:06 -07:00
Ben Vanik 83f3d520b2 Add missing header includes. 2015-09-22 07:38:59 -07:00
Ben Vanik 3fc1d02a09 Suspend some host threads that make guest callbacks. 2015-09-21 21:24:26 -07:00
Ben Vanik 4c8634bc31 Fixing breakpoints. 2015-09-21 21:10:57 -07:00
Ben Vanik 5d033f9cb3 A new debugger.
Lots of bugs/rough edges/etc - issues will be filed.
Old-style debugging still works (just use --emit_source_annotations to get
the helpful movs back and --break_on_instruction will still fire).
2015-09-20 21:31:05 -07:00
Dr. Chat 2983b0c090 Update some documentation. 2015-09-11 17:12:49 -05:00
Dr. Chat cad23cea81 Pause the emulator if the guest crashes and the VS debugger isn't attached. 2015-09-11 17:09:25 -05:00
Dr. Chat 8e716a3a7e Exception handler abstraction class 2015-09-11 17:07:12 -05:00
Dr. Chat a2bc0443f2 Quick-kill the MMIO handler if the fault address is above the mapping range. 2015-09-07 21:26:33 -05:00
Ben Vanik 3ac83b16c8 Fix double window destroy. 2015-09-07 09:41:44 -07:00
Ben Vanik fa9c681c7c Implicit Window::MakeReady on context set. 2015-09-07 09:29:07 -07:00
Ben Vanik ec7c74d04c Ref count elemental. 2015-09-07 09:26:36 -07:00
Ben Vanik 539f69f368 Multi-window GL contexts. 2015-09-07 09:08:54 -07:00
Ben Vanik 5411b67e05 Only register window class once. 2015-09-07 09:08:38 -07:00
Ben Vanik 3e66afeb3a Don't steal focus on mouse move. 2015-09-07 09:08:27 -07:00
Ben Vanik 855ab7c040 Fixing set_bordered name. 2015-09-07 09:08:19 -07:00
Ben Vanik 2b30ac393d Source control. 2015-09-07 08:28:02 -07:00
Ben Vanik a1a996c1e6 Shrinking UI elements in the debugger. 2015-09-06 20:49:20 -07:00
Ben Vanik e5fbf840d2 Shuffling kernel/. 2015-09-06 18:07:52 -07:00
Ben Vanik 494cba7131 Removing unused XAsyncRequest. 2015-09-06 14:10:34 -07:00
Ben Vanik 8588fbc6cf Shuffling kernel util types to util/. 2015-09-06 13:45:52 -07:00
Ben Vanik 068b2056ca Explode more gracefully on crashes while crashing. 2015-09-06 13:34:39 -07:00
Ben Vanik 0133bec11d Fix empty line logging. 2015-09-06 13:34:19 -07:00
Ben Vanik 790ce8aee1 Switch back to std:: muteces. mutices. mutexen. 2015-09-06 13:34:08 -07:00
Ben Vanik cb3dbcccbc Notes. 2015-09-06 11:05:16 -07:00
Ben Vanik e48c3534cc Removing copy to temp buffer in log flush. 2015-09-06 10:28:17 -07:00
Ben Vanik 9ae807e56e Initialize builtins to 0. 2015-09-06 10:07:27 -07:00
Ben Vanik 669f5b061f Moving DPC list into KernelState and removing unused file. 2015-09-06 09:36:39 -07:00
Ben Vanik 3c96b6fa0a DANGER DANGER. Switching to global critical region.
This changes almost all locks held by guest threads to use a single global
critical region. This emulates the behavior on the PPC of disabling
interrupts (by calls like KeRaiseIrqlToDpcLevel or masking interrupts),
and prevents deadlocks from occuring when threads are suspended or
otherwise blocked.
This has performance implications and a pass is needed to ensure the
locking is as granular as possible. It could also break everything
because it's fundamentally unsound. We'll see.
2015-09-06 09:30:54 -07:00
Ben Vanik 33270cd2a0 Making tracing use the fast logger path. 2015-09-05 21:12:10 -07:00
Ben Vanik 6c07eb8e5c Faster RtlFillMemoryUlong. 2015-09-05 14:38:07 -07:00
Rhodan81 9427d03d5a Fix crash in memory allocation when there is no space to fit entire page
range
2015-09-05 15:53:05 +02:00
Dr. Chat 8024e4fd20 XMA: We can only decode an entire frame and write it out at a time! Saving samples is bad. 2015-09-02 20:20:45 -05:00
Dr. Chat 3d1f079e86 NetDll_inet_addr needs to convert endianness! 2015-09-01 23:47:54 -05:00
Ben Vanik a478658b2c Re-disabling GPU interrupt log. 2015-09-01 20:24:19 -07:00
Ben Vanik 311b65537d --log_high_frequency_kernel_calls (defaults to false) to cull some lines. 2015-09-01 18:20:08 -07:00
Ben Vanik 3c1e012098 Lookup thread/event/etc objects by name on create to try to reuse. 2015-09-01 18:09:44 -07:00
Ben Vanik 3f433fe20a Object table names are case insensitive. 2015-09-01 18:08:00 -07:00
Ben Vanik f3c75b8d87 Support ObReferenceObjectByHandle for XEvents. 2015-09-01 17:42:07 -07:00
Ben Vanik b9debbaa63 Fixing section lookup when the name is 8 characters. 2015-09-01 17:03:40 -07:00
Ben Vanik f5e374f9b5 Changing the way the global lock works. Some things are better, I think.
Regressions are likely.
2015-09-01 09:45:32 -07:00
Ben Vanik 5355183590 Don't double-break on debugbreak. 2015-09-01 09:45:32 -07:00
Dr. Chat 51e70be054 Don't assert on VRSAVE mfspr/mtspr (used by gcc) 2015-08-31 10:51:51 -05:00
Ben Vanik 1b916ccca2 Log module dump directly. 2015-08-30 21:33:33 -07:00
Ben Vanik a4ed79695d WSACreateEvent/CloseEvent/SetEvent. 2015-08-30 21:31:52 -07:00
Ben Vanik 7233df2778 Switch default --ignore_undefined_externs to true. 2015-08-30 20:48:41 -07:00
Ben Vanik 2f9b37c142 Logging unimplemented instructions. 2015-08-30 20:46:06 -07:00
Ben Vanik 82a72e1974 Adding MemoryBarrier opcode. 2015-08-30 17:25:02 -07:00
Ben Vanik 39989a6107 Adding log lines to help find unimplemented NtQueryInformationFile calls. 2015-08-30 16:38:51 -07:00
Ben Vanik 65812438c4 Short-circuiting lvrx/stvrx. Should help bad accesses in many games.
Fixes #411.
2015-08-30 16:38:01 -07:00
Ben Vanik dfa5b90c36 Fixing test output. 2015-08-30 16:26:36 -07:00
Ben Vanik 499e8b4b5b ScaleGuestDurationFileTime for absolute times. Probably right.
Fixes #409.
2015-08-30 15:40:10 -07:00
Ben Vanik b80a028589 Much better errors on undefined externs. 2015-08-30 15:27:12 -07:00
Ben Vanik 87094b8257 Adding XamUserContentRestriction* functions. 2015-08-30 15:00:04 -07:00
Ben Vanik 7711568af9 Implementing SetTimer and CompleteOverlappedEx APC callbacks.
Fixes #410.
2015-08-29 23:43:26 -07:00
Ben Vanik 7f505a15b7 Fixing timer callbacks. 2015-08-29 23:42:40 -07:00
Ben Vanik 7172f7575e Removing assert in keyboard display on flags. 2015-08-29 22:30:12 -07:00
Ben Vanik 1d7f345960 Fix logging with null varargs. 2015-08-29 22:22:07 -07:00
Ben Vanik 1631e0f234 Merge pull request #408 from DrChat/vcmpbfp_rc
vcmpbfp with Rc bit support
2015-08-29 22:21:36 -07:00
Dr. Chat 60538e7dda vcmpbfp with Rc bit support 2015-08-30 00:14:58 -05:00
Ben Vanik b1afab5bb7 Switching to old depth buffer clear style. 2015-08-29 22:13:19 -07:00
Ben Vanik 1cf1568189 Adding a yield in the XMA decoder to give other threads some breathing room. 2015-08-29 22:12:31 -07:00
Ben Vanik e7b46afa9d Fixing build and removing old binary libav submodule. 2015-08-29 21:04:26 -07:00
Ben Vanik 764b11fa04 Formatting premake files. 2015-08-29 20:57:31 -07:00
Ben Vanik a86b3821f2 Adding thread handle to logging. 2015-08-29 20:49:26 -07:00
Ben Vanik c486fcfcba Merge pull request #407 from DrChat/libav
Rewrote the Audio Decoder
2015-08-29 20:47:04 -07:00
Dr. Chat f80e5fc98d Linting 2015-08-29 22:21:25 -05:00
Dr. Chat 50535b07c3 Change validity checks to assert statements. 2015-08-29 22:14:20 -05:00
Dr. Chat afa013f4bf libav_verbose flag 2015-08-29 22:11:59 -05:00
Dr. Chat e3d87b1715 Whoops (formatting) 2015-08-29 22:05:33 -05:00
Dr. Chat 3d684ac304 Fixup the premake files 2015-08-29 22:04:12 -05:00
Dr. Chat 6c83b35003 Partial frame support. 2015-08-29 21:42:06 -05:00
Ben Vanik 3508cce5b3 Fixing module loading. 2015-08-29 19:35:43 -07:00
Dr. Chat d8ed66c336 More improvements to the XMA decoder (and included some forgotten files) 2015-08-29 21:18:04 -05:00
Dr. Chat 0f9cd8cfb3 New WIP audio decoder 2015-08-29 21:16:57 -05:00
Dr. Chat f2b2a22687 Add gflags to projects that need it only 2015-08-29 21:16:57 -05:00
Ben Vanik b7203c2989 Logging to with a ringbuffer. Much faster. 2015-08-29 18:06:30 -07:00
Ben Vanik 8dd59d07ac Was about to update microprofile, but the new version is meh. 2015-08-29 09:41:14 -07:00
Ben Vanik 3c50b6739a Capturing guest/host context and showing registers in debugger. 2015-08-29 08:08:54 -07:00
Ben Vanik ab04175aad Abstracting aligned alloc/free. 2015-08-28 14:27:44 -07:00
Ben Vanik a79ef87889 Adding CONTRIBUTING.md so that github shows it on issues. 2015-08-28 14:16:38 -07:00
Dr. Chat c50cc1cb84 Lint. One line of lint. 2015-08-18 19:13:36 -05:00
Dr. Chat f5104af0a2 Whoops, fix AND masks 2015-08-18 19:00:57 -05:00
Dr. Chat 29ed27bfc5 Fix up winkey GetKeystroke to not use GetAsyncKeyState, and disable GetState if Xenia is not the active window. 2015-08-18 18:57:31 -05:00
Dr. Chat 38064acd51 UI KeyEvent previous state and repeat count 2015-08-18 18:45:35 -05:00
Ben Vanik a668556d7f Fixing Windows build. 2015-08-18 14:45:49 -07:00
Ben Vanik 8b0d4fb51c Linux tweaks. 2015-08-18 14:18:00 -07:00
Ben Vanik 19299fad4b Removing apu/ deps on Emulator. 2015-08-18 10:54:56 -07:00
Ben Vanik ad090a40eb Fixing misuse of std::chrono. 2015-08-18 10:18:30 -07:00
Ben Vanik 2820ff85e5 Moving test memory to a more reasonable place. 2015-08-18 09:01:22 -07:00
Ben Vanik c6b941a709 Normalizing tests. 2015-08-18 00:27:27 -07:00
Ben Vanik c67e47a076 Test cleanup. 2015-08-18 00:16:38 -07:00
Ben Vanik 59b9e9ceb0 Fixing buffer overrun in disasm. 2015-08-17 20:38:37 -07:00
Dr. Chat 0caffd3921 Tests: vand/vand128/vandc/vandc128/vcmpxxfp128/vmaxfp/vmaxfp128/vmaxsh/vmaxuh/vminfp/vminfp128 2015-08-17 20:37:03 -05:00
Dr. Chat dde3f3dfb0 Tests: vor/vor128/vxor/vxor128 2015-08-17 12:23:01 -05:00
Dr. Chat 52c2d03c3e Tests: vpkshss128/vpkshus128/vpkswss128/vpkswus128/vpkuhum128/vpkuhus128/vpkuwum128/vpkuwus128/vupkhsb128/vupklsb128 2015-08-17 12:08:56 -05:00
Ben Vanik 55068f230e Fixing vslo and vsro. 2015-08-17 08:15:43 -07:00
Ben Vanik 359e5b578a Fixing vsl and vsr for out of range values. 2015-08-17 07:57:30 -07:00
gibbed 5d61d0baa5 Fixing vnmsubfp128. 2015-08-17 04:57:33 -05:00
Ben Vanik f98d8134c0 Merge pull request #395 from DrChat/tests
Tests: vaddfp/vaddfp128/vmsum3fp128/vsubfp/vsubfp128
2015-08-16 17:57:30 -07:00
Dr. Chat a191fbcf34 Tests: vaddfp/vaddfp128/vmsum3fp128/vsubfp/vsubfp128 2015-08-16 19:56:03 -05:00
Dr. Chat 3c968f3f1e Whoops - Fix InterlockedPopEntrySList dereferencing a NULL pointer 2015-08-16 16:54:55 -05:00
gibbed f9076d08ea Test for vsrh. 2015-08-16 16:37:28 -05:00
gibbed 9901d98c14 Test for vsrah. 2015-08-16 16:37:27 -05:00
gibbed ac4c5f4508 Test for vrlh. 2015-08-16 16:37:26 -05:00
gibbed 5621f63001 Tests for vminsh, vminuh. 2015-08-16 16:37:25 -05:00
gibbed 9fa7ec5c1f Tests for vavgsh, vavguh. 2015-08-16 16:37:25 -05:00
Ben Vanik 2b012f37bf Adding base callstack control. 2015-08-16 14:29:09 -07:00
Ben Vanik ae183f918f Merge pull request #388 from DrChat/elf_modules
(Experimental) ELF module support
2015-08-16 07:55:28 -07:00
Dr. Chat 6cd08384e7 (Experimental) ELF module support 2015-08-16 09:47:39 -05:00
gibbed defca39a21 Test for vexptefp. 2015-08-16 07:09:20 -05:00
gibbed bbde510c17 More tests for vmrghb, vmrghh, vmrghw, vmrglb, vmrglh, vmrglw. 2015-08-16 07:09:07 -05:00
gibbed 4ca24c8d3b Cleaning up test names. 2015-08-16 06:26:43 -05:00
gibbed ba9d2f0d7c More tests for vupkhsb, vupkhsh, vupklsb, vupklsh. 2015-08-16 06:09:52 -05:00
gibbed 90b33fd49f Test for vpkpx. 2015-08-16 05:55:30 -05:00
gibbed 8c07a3efdd Tests for vpkuwum. 2015-08-16 05:55:15 -05:00
gibbed 5f9ef37e94 Cleaning up tests for vpkuhus. 2015-08-16 05:54:48 -05:00
gibbed 50a5f5e8c5 Cleaning up tests for vpkuhum. 2015-08-16 05:54:22 -05:00
gibbed 67525ced44 Test for vpkshus. 2015-08-16 05:19:58 -05:00
gibbed d7c0837f40 Tests for vpkswus, vpkuwus. 2015-08-16 05:15:35 -05:00
gibbed 95d9344985 Another test for vpkswss. 2015-08-16 05:14:40 -05:00
gibbed b9d9486c62 Another test for vpkshss. 2015-08-16 05:03:19 -05:00
gibbed 3b878ed533 Test for vpkuhus. 2015-08-16 04:52:32 -05:00
gibbed 60b1a67af3 Fixing vpkuhus. 2015-08-16 04:52:19 -05:00
gibbed 9129b9caa9 Tests for vpkuhum/vpkuhus. 2015-08-16 04:07:17 -05:00
gibbed 003608fa76 More tests for vupkhsh/vupklsh. 2015-08-16 03:26:14 -05:00
gibbed 7256fe6a2b Tests for vupkhsb/vupklsb. 2015-08-16 03:16:25 -05:00
gibbed 6a675659e4 Really fix vupkhsb/vupklsb. 2015-08-16 03:15:37 -05:00
gibbed f06ddd3869 Maybe fixing vupkhsb/vupklsb. 2015-08-16 02:31:25 -05:00
Ben Vanik d71c35bbe9 Merge pull request #385 from DrChat/xex_getprocaddr_fix
XexModule::GetProcAddress false out of bounds fix
2015-08-14 18:13:35 -07:00
Dr. Chat d2f672b2c5 Shift export ordinal back by the base to avoid false positive error 2015-08-14 20:02:39 -05:00
Dr. Chat 3fcc6648d7 Fix (to the best of my knowledge) InterlockedPopEntrySList
Couple of other asserts/fixes
2015-08-13 19:06:58 -05:00
Ben Vanik 03142614ec elemental-forms is mostly style-clean. 2015-08-09 12:07:07 -07:00
Ben Vanik 0686227d23 Style fixes. 2015-08-08 16:40:14 -07:00
Ben Vanik a92566dfc5 More style. 2015-08-07 21:29:03 -07:00
Ben Vanik 14beb27ebc xb style. 2015-08-07 07:56:57 -07:00
Ben Vanik 5e08889d93 More style cleanup. 2015-08-06 20:17:01 -07:00
Ben Vanik e6461f326c Some xb style cleanup. 2015-08-05 22:06:20 -07:00
Ben Vanik eaa1a8ee3a Refactoring SymbolInfo/FunctionInfo/Function into Symbol/Function. 2015-08-05 21:50:02 -07:00
Ben Vanik 48d6e6becf Cleaning up debugger threading and adding hacky callstacks to UI. 2015-08-05 07:50:37 -07:00
Ben Vanik 0a8d6eec91 Simplifying debug stuff, as I'm not going to bother with gdb. 2015-08-04 18:39:51 -07:00
Ben Vanik ec326119cf Replacing beaengine in mmio handler with custom decoder.
Fixes #358.
2015-08-04 08:25:42 -07:00
Ben Vanik 90c248146e --inline_mmio_access to allow turning it off. 2015-08-03 19:07:34 -07:00
Ben Vanik b0425f7ee2 Moving source map to Function. 2015-08-01 14:07:13 -07:00
Ben Vanik 5aa50b3c18 Adding note about GPU listing. 2015-08-01 13:43:21 -07:00
Ben Vanik b67488e70a Removing beaengine disassembler use. 2015-08-01 13:30:43 -07:00
Ben Vanik 37ded9acc3 Window->Form. 2015-08-01 10:24:41 -07:00
Ben Vanik cb701fcb7c Latest linter. 2015-08-01 04:08:59 -07:00
Ben Vanik 8494ca2eaa clang fixes. 2015-08-01 03:55:50 -07:00
Ben Vanik b56b262116 Switching to python build script. 2015-07-31 23:48:24 -07:00
Ben Vanik 2f1965082c Dropping dummy drive size down to a reasonable size. Fix #377. 2015-07-31 14:15:07 -07:00
Ben Vanik 14e129ced6 Merge pull request #376 from sephiroth99/big-alloc-fix
[RFC] Fix crash when some games request too much memory
2015-07-29 23:48:12 -07:00
Ben Vanik e523ffcd51 Tweaking some thread names. 2015-07-29 23:28:45 -07:00
sephiroth99 510a8e59cf memory: fix out of bounds access in BaseHeap::AllocRange
Prevent out of bounds access of page_table_ by making sure the requested
page count fits in the requested page range.
2015-07-30 02:27:55 -04:00
Ben Vanik a9b89a790b Some more constant support for MUL_SUB. 2015-07-29 21:45:24 -07:00
Ben Vanik d8be8fdbbb Never run WSACleanup, it breaks the debugger. Some games do this
on startup just because, which decrements our WSA instance to zero.
2015-07-29 21:41:39 -07:00
Ben Vanik 9bea299a16 Massaging xinput arguments. Fixes RCR. 2015-07-29 21:41:09 -07:00
Ben Vanik c0dcf83de8 Cleanup heap use. 2015-07-29 20:33:59 -07:00
Ben Vanik c67173fe36 Switching to real page sizes, not allocation granularity. 2015-07-29 20:28:06 -07:00
Ben Vanik 122114d1d1 Fixing debugger startup race. 2015-07-29 19:52:53 -07:00
Ben Vanik 19901c4759 Replacing a use of strings for xbyak labels. 2015-07-29 18:58:45 -07:00
Ben Vanik 40e98eab7c Fix include. 2015-07-29 00:33:57 -07:00
Ben Vanik e657276996 Mostly working stack walking (besides issue #372). 2015-07-29 00:15:52 -07:00
Ben Vanik e01c2ac98d Fixing formatting. 2015-07-28 00:32:01 -07:00
Ben Vanik ad9472e60b Better sign extend, thanks to @inolen. 2015-07-27 20:25:20 -07:00
Ben Vanik 226b7ae83f Only generate .user if it doesn't exist. 2015-07-27 20:12:14 -07:00
Ben Vanik dffc1f0e14 Merge pull request #371 from DrChat/xam_enumerate_fix
Fix XamEnumerate returning a RESULT instead of a HRESULT
2015-07-27 19:59:57 -07:00
Ben Vanik b1baaa45bc Merge pull request #369 from DrChat/handle_release_fix
Fix releasing the primary handle of an object in RemoveHandle
2015-07-27 19:59:45 -07:00
Dr. Chat 1e0ba0b24c Fix XamEnumerate returning a RESULT instead of a HRESULT in extended error. 2015-07-27 21:50:26 -05:00
Dr. Chat fe7a710460 Revert license mask. 2015-07-27 18:32:41 -05:00
Dr. Chat 804b6b80ac Winkey support GetKeystroke (need to fix flags though) and support right stick 2015-07-27 18:28:08 -05:00
Dr. Chat 993c646e91 XAM_OVERLAPPED 2015-07-27 18:26:22 -05:00
Dr. Chat 997de209ec Reversed engineered X_OBJECT_HEADER a bit better 2015-07-27 18:26:07 -05:00
Dr. Chat 766788be7b XMAContext abort instantly if libav failed mid-packet. 2015-07-27 18:24:04 -05:00
Dr. Chat e37479c7b0 Convert strings before returning them 2015-07-27 18:23:11 -05:00
Dr. Chat 6a26fd08cd Xam keyboard input UI
Moved XamShowDeviceSelectorUI here
2015-07-27 18:22:51 -05:00
Dr. Chat 9b722eb602 XamContent change HDD size to 1TB, rewrite XamContentCreateEnumerator 2015-07-27 18:22:10 -05:00
Dr. Chat df500e162e Rewrite XamEnumerate to copy one item at a time (for now anyways) 2015-07-27 18:20:50 -05:00
Dr. Chat ee1565b0e8 XEnumerator write single item 2015-07-27 18:18:05 -05:00
Ben Vanik e4d9f38b82 These files should have been deleted. 2015-07-27 08:28:31 -07:00
Ben Vanik 987589dcbc Stop overwriting already-specified thread names. 2015-07-26 23:49:32 -07:00
Ben Vanik 7ecc6362de Debugger stuff. Lots of wasted work :/ 2015-07-26 22:47:16 -07:00
gibbed 42ef3f224a Oops. Fixing bad asserts. 2015-07-26 11:12:54 -05:00
gibbed b713f99e42 Constant support for VECTOR_CONVERT_I2F. 2015-07-26 10:55:41 -05:00
gibbed 20d79911f0 Constant support for Emit16_IN_32. 2015-07-26 10:54:47 -05:00
gibbed 599686f68d Unsigned Emit16_IN_32. 2015-07-26 09:57:52 -05:00
gibbed 34031e57ab Don't pass flags to XInputGetKeystroke, as on Windows it's a reserved parameter. 2015-07-26 09:31:02 -05:00
gibbed e212a7da1d Make sure the device is connected before calling XInputGetKeystroke. 2015-07-26 09:31:01 -05:00
Dr. Chat 30f3994476 Fix accidentally releasing the primary handle of a duplicated object when the duplicated handle is removed. 2015-07-25 20:00:18 -05:00
Ben Vanik abf50b477e Making shutdown clean. 2015-07-25 12:56:37 -07:00
Ben Vanik 89adaf8e85 --random_clear_color, and making default grey. 2015-07-25 12:56:21 -07:00
Ben Vanik ea4ec28acc Adding --show_profiler to show profiler by default, changing hotkey to F3. 2015-07-25 12:34:15 -07:00
Ben Vanik 8ce6765233 Fixing socket startup. 2015-07-25 12:25:15 -07:00
Dr. Chat 4301806061 Cleanup some Ke* threading APIs (and update the dispatch header when possible) 2015-07-25 11:43:25 -05:00
Dr. Chat 87ebcdea8a Fix fullscreen 2015-07-25 08:56:39 -05:00
Dr. Chat 18d8fad098 Couple of fixes for IO (null pointer deref and improper XctdCompressionInformation) 2015-07-24 23:50:02 -05:00
Dr. Chat 270686a0be Whoops, don't need these 2015-07-24 23:24:23 -05:00
Dr. Chat b8b134da75 module Retain instead of RetainHandle 2015-07-24 23:09:47 -05:00
Dr. Chat 64089558f1 XThread set exit code on exit 2015-07-24 23:09:33 -05:00
Dr. Chat c536053dec Fix improper getting arguments from stack
Also fix PrimitivePointerParam conversion error
2015-07-24 23:08:55 -05:00
Dr. Chat cf37fa7d71 Update a bunch of IO methods 2015-07-24 23:07:22 -05:00
Dr. Chat eac3243907 Include host ID in XThread name for easier debugging 2015-07-24 18:42:30 -05:00
Dr. Chat e7def962f3 Expose native thread id 2015-07-24 18:41:53 -05:00
Dr. Chat 8e41d5a707 The kernel object table now keeps track of handle reference counts. 2015-07-22 19:34:33 -05:00
Ben Vanik a42ab648ed Shuffling --debug around and making it work. 2015-07-22 17:26:10 -07:00
Ben Vanik 2f233c7974 Update premake5.lua 2015-07-22 12:30:40 -07:00
Dr. Chat 9a47082c88 Create XThread suspended and resume it when setup is complete. Fixes race condition on thread_ variable. 2015-07-22 11:56:02 -05:00
Ben Vanik d01abd4694 Starting debugger rework, adding base async socket, removing flatbuffers. 2015-07-22 00:01:36 -07:00
Ben Vanik a98fa47081 Merge pull request #361 from DrChat/misc_fixes
Misc fixes
2015-07-21 20:22:00 -07:00
Dr. Chat e6eb21f6ac %s 2015-07-21 22:20:54 -05:00
Dr. Chat dda00b604b Don't try to use an invalid file! 2015-07-21 22:14:28 -05:00
Dr. Chat 3ad3635567 X_IO_STATUS_BLOCK / X_EX_TITLE_TERMINATE_REGISTRATION 2015-07-21 22:13:29 -05:00
Dr. Chat c6e6894d9d Platform window enable/disable border support 2015-07-21 22:13:06 -05:00
Dr. Chat 9fcbd60e9b Thread state address is gone 2015-07-21 22:11:55 -05:00
Dr. Chat 8d0fef1433 Kernel state terminate notification support 2015-07-21 22:11:33 -05:00
Dr. Chat b6f8985c8c Shuffle around RTL critical section code and add asserts
Get thread ID using new api
2015-07-21 22:09:26 -05:00
Dr. Chat 7ceaf678e0 Minor XObject function changes 2015-07-21 22:07:55 -05:00
Dr. Chat b646915b77 Make XThread use its guest KTHREAD object in the pcr in r13
Shuffle around some code in XThread
2015-07-21 22:07:30 -05:00
Dr. Chat a4849ca83e XNetSetSystemLinkPort / respect optional pointers in accept 2015-07-21 22:05:56 -05:00
Ben Vanik 8126b12340 Plumbing frontbuffer_ptr around (but not using it yet). 2015-07-21 19:43:36 -07:00
Ben Vanik 7df2692822 Manual merge of part of #336. 2015-07-21 19:43:16 -07:00
Ben Vanik 2215d4707d Manual merge of #330. 2015-07-21 19:42:54 -07:00
Ben Vanik b0c223f2d8 Removing use of glewExperimental.
The trick is setting WGL_CONTEXT_PROFILE_MASK_ARB.
Fixes #359.
2015-07-21 19:33:51 -07:00
Ben Vanik 2f1d49aa32 xenia-gpu mostly clang clean. 2015-07-19 21:48:47 -07:00
Ben Vanik 5bd7833e87 More clang fixes. xenia-kernel is clean. 2015-07-19 21:29:06 -07:00
Ben Vanik bebda48a4f More clang fixes. 2015-07-19 20:46:14 -07:00
Ben Vanik 12a29371e3 Clang fixes. 2015-07-19 18:32:48 -07:00
Ben Vanik baa86fcd1b Migrating xam UI to elemental-forms.
Fixes #345.
2015-07-19 14:43:27 -07:00
Ben Vanik 5c7f42e9d1 Fix for unknown kernel modules. 2015-07-19 10:55:12 -07:00
Ben Vanik 352bae30cb Removing win32 code from X64CodeCache.
Fixes #349.
2015-07-19 10:33:00 -07:00
Ben Vanik edfa3f3fc0 Replacing the tick count timer with xplat abstraction (also better rate).
Fixes #346.
2015-07-19 10:11:54 -07:00
Ben Vanik 91d7acf59e Fixing some particularly bad /W4. 2015-07-18 23:04:21 -07:00
Ben Vanik 4128727f6b Cleaning up some /W4 errors. 2015-07-18 16:40:22 -07:00
Ben Vanik e0eb85bbbc Switching to premake. Probably with disasterous consequences. 2015-07-18 16:00:01 -07:00
Ben Vanik 6c5d230f67 Merge pull request #353 from DrChat/ob_threads
Implement ObLookupThreadByThreadId / ObOpenObjectByPointer
2015-07-18 13:27:25 -07:00
Dr. Chat b92cddc182 Implement SHA-1 in xboxkrnl (correctness not verified though)
Stubs for some weird crypto functions
2015-07-18 14:57:43 -05:00
Dr. Chat 55f5b95670 These are implemented (and formatting) 2015-07-17 20:29:39 -05:00
Dr. Chat c60d30a311 Add a few more xam exports 2015-07-17 19:57:35 -05:00
Dr. Chat c3189a6837 ObLookupThreadByThreadId / ObOpenObjectByPointer 2015-07-17 19:56:54 -05:00
Dr. Chat 1ea5a4b7b4 XThread initialize the dispatch header 2015-07-17 19:55:09 -05:00
Dr. Chat e54477d0e4 XObject::StashNative 2015-07-17 19:52:29 -05:00
Dr. Chat 7595df4876 We don't need to be the calling thread to set a thread name. 2015-07-17 19:50:04 -05:00
Ben Vanik fd893f730b Shuffling files around. 2015-07-17 01:15:12 -07:00
Ben Vanik 756d414386 Prep for split libraries. 2015-07-16 22:26:34 -07:00
Sinoxan 0cdff21582 Removing unnecessary unsigned checks. 2015-07-16 19:01:11 +01:00
Ben Vanik ecd4af10c9 Fixing some clang warnings/errors. 2015-07-15 23:26:58 -07:00
Ben Vanik 74d2df2004 libxenia-base can now compile with clang. 2015-07-15 23:02:04 -07:00
Ben Vanik f520d3a2a4 Run with latest clang-format. 2015-07-15 22:44:30 -07:00
Ben Vanik c3415e6332 Adding TLS abstraction. 2015-07-15 22:20:33 -07:00
Ben Vanik 48d5d76882 Cleaning up RtlTimeToTimeFields/TimeFieldsToTime. Needs a non-win32 impl. 2015-07-15 22:10:24 -07:00
Ben Vanik 8154d1dad6 Moving xe::Memory and code cache to abstracted APIs. 2015-07-15 22:10:05 -07:00
Ben Vanik fefaa31cd8 Switching a few types to their platform-agnostic versions. 2015-07-15 22:09:19 -07:00
Ben Vanik 91ae97e558 Fixing lock type in VFS. 2015-07-15 22:07:46 -07:00
Ben Vanik 6cf29b969d Abstraction for VirtualAlloc/VirtualFree. 2015-07-15 19:05:08 -07:00
Ben Vanik 58c3a1ba79 VirtualProtect platform abstraction. 2015-07-15 18:20:05 -07:00
Ben Vanik 99104a25a8 Fixing thread exit. 2015-07-15 18:01:17 -07:00
Ben Vanik 42400d06a9 Making stateless file IO platform-agnostic. 2015-07-15 18:01:09 -07:00
Ben Vanik a6012b73f4 Switching audio system to platform-agnostic primitives. 2015-07-14 23:13:56 -07:00
Ben Vanik 345fe60da0 Switching over kernel objects to the platform-agnostic APIs.
Possibly some regressions here.
2015-07-14 22:44:45 -07:00
Ben Vanik bd058feb39 Wait primitives. 2015-07-14 20:22:15 -07:00
Ben Vanik bd490d5833 Threading primitives, in prep for removing Win32 from kernel/ and others. 2015-07-13 22:49:29 -07:00
Ben Vanik d89bad7380 Removing uses of Sleep/SwitchToThread/etc. 2015-07-13 21:54:24 -07:00
Ben Vanik 40621a90bd Switching to standard mutex for now (but keeping xe::mutex). 2015-07-13 21:49:32 -07:00
Ben Vanik 72ad899e9e Starting to remove windows.h includes from things. 2015-07-13 20:49:29 -07:00
Ben Vanik 31dab70a3a Adding some docs on CPU optimizations/potential work. 2015-07-13 18:20:38 -07:00
Ben Vanik c6ebcd508d Double check ARB_bindless_texture.
May help #342.
2015-07-13 16:34:00 -07:00
Ben Vanik 15c17459be Massive refactoring of xenia::ui and GL swap behavior.
This seems to dramatically improve most games (especially with
--vsync=false), though it may cause swap issues with others.
New code should be easier to port, and enables elemental-forms to be
drawn for any emulator UI.
2015-07-12 22:04:17 -07:00
Ben Vanik 77894ac03a Skeleton debugger UI (playing with things). 2015-07-12 22:04:15 -07:00
Dr. Chat 5332290573 NetDll_WSAWaitForMultipleEvents
NetDll_WSAResetEvent
2015-07-11 19:32:33 -05:00
Dr. Chat 8499da972c Convert a couple of kernel threading APIs to new style 2015-07-11 18:17:52 -05:00
Dr. Chat f0060f8335 Allow direct typecasting of Result shim util class 2015-07-11 18:14:33 -05:00
Ben Vanik 601310c8bb Merge pull request #334 from DrChat/xma_fixes
XMA Fixes
2015-07-10 21:53:43 -07:00
Dr. Chat 90a9a71e55 Lint. 2015-07-10 23:32:05 -05:00
Dr. Chat da5868945e We aren't supposed to do this. 2015-07-10 23:26:01 -05:00
Dr. Chat ee1696e571 Fix some inconsistencies in the XMA API (and rewrite a lot of functions to the new style) 2015-07-10 23:16:42 -05:00
Dr. Chat f6eb23d86f Don't select buffer 1 if it's NULL/unavailable 2015-07-10 23:15:15 -05:00
Ben Vanik 9c965755c6 Simplified renderer interface. 2015-07-10 20:35:57 -07:00
Ben Vanik 6b52f2682e Fixing elemental input and using embedded resources. 2015-07-07 22:16:46 -07:00
Ben Vanik b09ab1f886 Merge pull request #328 from DrChat/xam_loader
Implement XamLoaderLaunchTitle/XamLoaderTerminateTitle
2015-07-07 07:46:56 -07:00
Ben Vanik 5da29d88e2 Removing old lib. 2015-07-07 07:44:51 -07:00
Ben Vanik 95e2ea11eb Cleaning up paths a bit. Need to de-globalize. 2015-07-06 23:03:24 -07:00
Ben Vanik 8c0614b202 AMD people: have at it. I ain't gonna guarantee it'll work, though. 2015-07-06 18:43:50 -07:00
Ben Vanik 253a685dde Switching to my turbo badger fork. 2015-07-06 18:12:56 -07:00
Ben Vanik f2ce11d268 Latest TB. 2015-07-06 18:12:56 -07:00
Dr. Chat f9977a25af Use std::vector to hold the xex header instead of new/delete 2015-07-06 19:45:10 -05:00
Dr. Chat b2241e3fef Avoid calling OnUnload twice. 2015-07-06 19:19:32 -05:00
Dr. Chat 0388d17a72 Formatting 2015-07-06 10:57:32 -05:00
Dr. Chat 88465de41e FscGetCacheElementCount stub 2015-07-06 10:41:14 -05:00
Dr. Chat 93f24d2047 XexModule keep track of whether it's loaded into memory or not 2015-07-06 10:40:35 -05:00
Dr. Chat 6ddd0b4700 Rewrite InterlockedPopEntrySList 2015-07-05 21:33:29 -05:00
Dr. Chat 870aa092bb KernelState::GetKernelModule 2015-07-05 17:27:25 -05:00
Dr. Chat 8adbc2cd0c Return 0 for success 2015-07-05 17:14:42 -05:00
Dr. Chat fd136c1f9f Swap to default initializers. 2015-07-05 17:05:58 -05:00
Dr. Chat 4e6b036b3c Formatting. 2015-07-05 16:28:11 -05:00
Dr. Chat 82986c6eec Use TerminateTitle rather than relying on XamLoader* being called from the main thread. 2015-07-05 16:22:45 -05:00
Dr. Chat ff72a25260 Remove dump on module launch (already dumped on load!) 2015-07-05 15:54:30 -05:00
Dr. Chat 39d6e9a20f Implement XamLoaderLaunchTitle and other loader functions. 2015-07-05 15:44:46 -05:00
Dr. Chat d6686fc345 Load default.xex as a regular module and call TerminateTitle when the main thread exits. 2015-07-05 15:44:02 -05:00
Dr. Chat 57e89e72b1 Use the actual thread handle as a wait handle, add bool XThread::running 2015-07-05 15:43:09 -05:00
Dr. Chat 5ccea06e7f KernelState::TerminateTitle 2015-07-05 15:42:30 -05:00
Dr. Chat 567bb525f8 Fix incorrectly getting the exe address 2015-07-05 15:41:47 -05:00
Dr. Chat 778acac929 XThread Terminate 2015-07-05 14:44:43 -05:00
Dr. Chat 7f53b1d630 Allow unloading of user modules 2015-07-05 14:03:00 -05:00
Dr. Chat 8210ada448 XModule OnUnload 2015-07-05 13:47:53 -05:00
Dr. Chat 4fdebd530f XThread bool guest thread 2015-07-05 13:37:10 -05:00
Dr. Chat 6bb5b002e0 Gracefully handle debugger accept thread already running 2015-07-05 13:31:51 -05:00
Dr. Chat fbfdfc8914 Don't call DllMain on non-DLLs
Gracefully handle the kernel dispatch thread already running
2015-07-05 13:31:13 -05:00
Dr. Chat 8d4582a7a4 Fix a couple of API bugs dealing with modules 2015-07-05 13:27:48 -05:00
raven02 f90cc63d4b alu: use XEEXTZ16 for uimm16 2015-07-05 04:52:53 +08:00
Dr. Chat b57a71e284 Typecast xe::be before sending it into printf 2015-07-03 22:02:58 -05:00
Ben Vanik 4097fe420e Merge pull request #322 from DrChat/xex2_patch
XEX2 Code Refactoring
2015-07-03 19:38:36 -07:00
Dr. Chat 9186d011f0 Bring back some important debug dumps 2015-07-03 21:28:02 -05:00
Dr. Chat 1788ee1589 Linting. 2015-07-03 20:11:08 -05:00
Dr. Chat 03ffb20a43 Warn when importing an unimplemented kernel function 2015-07-03 19:44:11 -05:00
Dr. Chat 8cb8098a6b Dump import libraries 2015-07-03 19:43:43 -05:00
Dr. Chat ed3db90666 Dump a few more headers (incl. execution header) 2015-07-03 19:16:36 -05:00
Dr. Chat b852ce75df Write a dummy value into unresolved import variables. 2015-07-03 19:00:07 -05:00
Dr. Chat 74d57cfd0a Dump exports by name in debug log 2015-07-03 18:45:11 -05:00
Dr. Chat e58bb5ad9f ReImplement XexModule::GetProcAddress 2015-07-03 18:29:14 -05:00
Dr. Chat d616231c8b Trigger a PPC debug trap if an unresolved import is called. 2015-07-03 18:03:33 -05:00
raven02 0f7f2f2491 gl4: swap high and low 16 bits within a 32 bit word using SSE intrinsics 2015-07-04 00:35:48 +08:00
Dr. Chat 800f982a4d XEX2 Security Page Descriptors 2015-07-03 10:58:33 -05:00
Dr. Chat c32a94599e Use the guest copy of the xex header for guest code. 2015-07-03 10:51:56 -05:00
Dr. Chat 307feaf893 Formatting. 2015-07-03 10:51:35 -05:00
Dr. Chat 0211135fd6 Fix potential corruption for GetOptHeader 2015-07-03 10:41:43 -05:00
Dr. Chat a25090f3ca Templated XUserModule::GetOptHeader 2015-07-03 10:27:08 -05:00
Dr. Chat 82ec1c345d Dump all xex2 headers in XUserModule (minus a couple) 2015-07-03 08:17:24 -05:00
Dr. Chat 362a521c79 Rewrite XexModule to drop dependency on old xex2 headers for imports 2015-07-03 08:17:23 -05:00
Dr. Chat be5f8d3aa4 Simplify some logic in parsing import libraries
Change struct used in export lookups
2015-07-03 08:17:23 -05:00
Dr. Chat 029babaf5d Drop dependency on old-style xex2 headers 2015-07-03 08:15:53 -05:00
Dr. Chat fe87c08424 Shuffle some code around. 2015-07-03 08:15:53 -05:00
Dr. Chat e44ac54eed Remove kernel dependency on old xex header 2015-07-03 08:15:52 -05:00
Ben Vanik fd50209760 Latest TB changes. 2015-07-02 20:28:12 -07:00
raven02 3ce6e0ccd8 Use SSE intrinsics for uint64_t byte swapping 2015-07-02 23:26:02 +08:00
raven02 fcf89a61e7 Use SSE intrinsics for uint32_t byte swapping 2015-07-02 23:25:10 +08:00
raven02 fea115a6f4 Use SSE intrinsics for uint16_t byte swapping
Part of https://github.com/benvanik/xenia/issues/308
2015-07-02 23:04:48 +08:00
Ben Vanik 4ec0655751 xe::ui control for hosting a turbobadger UI. 2015-07-01 15:58:04 -07:00
Ben Vanik dec0d12cc9 Replacing includes of windows headers with base/platform.h. 2015-07-01 09:02:04 -07:00
Ben Vanik 88d01e8375 App skeleton. 2015-07-01 08:24:44 -07:00
Ben Vanik 1bae2ef10b Skeleton debugger window. 2015-07-01 08:13:22 -07:00
Ben Vanik 9efccc5f4a Removing dependencies on MainWindow. 2015-07-01 08:02:22 -07:00
Ben Vanik 4732378ba9 Removing NV command list path, as it's unused and untested. 2015-07-01 07:36:12 -07:00
Ben Vanik 0ebee76bfe Moving common GL code out of gpu/. 2015-07-01 07:29:14 -07:00
Ben Vanik d7a5c74bf3 Formatting: force pointers to the left side. 2015-06-30 16:16:33 -07:00
Ben Vanik 90e86d0172 Fixing stack allocation bug in file picker. 2015-06-30 16:03:05 -07:00
Ben Vanik 60290fe526 Moving base/ into its own libxenia-base library. 2015-06-30 16:02:57 -07:00
Ben Vanik d6136c6f3f Skeleton debugger project.
Progress on #316.
2015-06-30 15:50:52 -07:00
Ben Vanik 6c571ccfc5 Change rect lists to tri lists instead of strips.
Progress on #304.
2015-06-30 07:35:08 -07:00
Dr. Chat 50e19a2b12 X_DISPLAY_INFO struct 2015-06-29 23:42:58 -05:00
Ben Vanik e80c149492 Fixing button repeat in trace viewer. 2015-06-29 13:16:32 -07:00
Ben Vanik 6ae46e1084 Fixing root fs queries. 2015-06-29 12:30:35 -07:00
Ben Vanik 5b2f049d4c Adding deferred xoverlapped completion helper. 2015-06-29 12:02:08 -07:00
Ben Vanik c9f4d00da3 STFS->Stfs.
Fixes #309.
2015-06-29 10:38:51 -07:00
Ben Vanik cc08e9019a Move NtCreateFile/NtOpenFile to VFS, implement (mostly) for real.
Progress on #305.
2015-06-29 10:33:36 -07:00
Ben Vanik 0104a2290f Adding locks and parents to vfs.
Progress on #305.
2015-06-29 05:07:29 -07:00
Ben Vanik 9a80b5e5be Merge pull request #307 from DrChat/rtl_cleanup
xbox kernel RTL cleanup
2015-06-28 19:44:59 -07:00
Ben Vanik a1c7a13162 Fixing build. 2015-06-28 19:44:51 -07:00
Dr. Chat d809af5902 xbox kernel RTL cleanup 2015-06-28 20:39:45 -05:00
Ben Vanik b663b615bf Fix XamContent return (!) and vfs use.
Progress on #305.
2015-06-28 17:33:48 -07:00
Ben Vanik 1106029afc _wfopen -> xe::filesystem::OpenFile.
Progress on #305.
2015-06-28 17:33:46 -07:00
Ben Vanik 30e0c6dbb1 Support --target=path to stfs root.
Fixes #302.
2015-06-28 15:28:04 -07:00
Ben Vanik e05cc3ba37 x64_sequences can now be run through clang-format.
Progress on #291.
2015-06-28 15:04:24 -07:00
Ben Vanik 7de9be4ef6 DrChat's fix for xex header values. 2015-06-28 14:53:58 -07:00
Ben Vanik d0713708e2 Fixing empty VFS devices. 2015-06-28 14:41:42 -07:00
Ben Vanik 5ca8caa9a7 Allowing thread stacks from the entire 0x4-0x7 range. 2015-06-28 14:34:11 -07:00
Ben Vanik 84e884a07f Moving get_opt_header out of xex2. 2015-06-28 14:01:53 -07:00
Ben Vanik 010b701e05 Iterating on RtImageXexHeaderField. 2015-06-28 13:44:59 -07:00
Ben Vanik 996f99bd85 Quick fix for RtlImageXexHeaderField - still some more to do. 2015-06-28 12:17:48 -07:00
Ben Vanik e772a8cb92 Fixing module export. 2015-06-28 12:07:13 -07:00
Ben Vanik 0359184bc0 Simplifying the sequences code to start refactoring.
Progress on #291.
2015-06-28 12:01:47 -07:00
Ben Vanik 0630b524fa Removing unused HIR opcodes.
Progress on #291.
2015-06-28 12:01:46 -07:00
Ben Vanik 3745746fcc Shuffling around thunk emitter.
Progress on #291.
2015-06-28 12:01:45 -07:00
Ben Vanik 5e950cb066 Fixing VS intellisense for xbyak.
Progress on #291.
2015-06-28 12:01:45 -07:00
Ben Vanik 7875a4b0ba Merge pull request #300 from DrChat/hmodule_fix
Swap to using HMODULE instead of handles for xex modules.
2015-06-28 12:01:32 -07:00
Dr. Chat c47c0b3354 Uhh, lint 2015-06-28 13:29:54 -05:00
Ben Vanik 83872d8e8f Refactoring vfs to remove a lot of duplicated code.
Progress on #294.
2015-06-27 22:37:49 -07:00
Dr. Chat bb900ba9db XexExecutableModuleHandle export now points to the executing HMODULE 2015-06-27 23:42:46 -05:00
Dr. Chat 944b39c51d Apply some lint n' stuff 2015-06-27 22:50:08 -05:00
Dr. Chat 8a6c620fe7 XUserModule::GetOptHeader 2015-06-27 22:42:17 -05:00
Dr. Chat cdbf736241 X_UNICODE_STRING 2015-06-27 22:39:11 -05:00
Dr. Chat 169cb65d96 Remove unused execution_info_ptr 2015-06-27 22:38:10 -05:00
Dr. Chat 7372dd4d8d Use HMODULE instead of handles for xex modules 2015-06-27 22:00:58 -05:00
Dr. Chat 1289e7ad22 xe::be basic arithmetic operators 2015-06-27 21:49:57 -05:00
Dr. Chat c228c0fa73 Add some native xex2 structs and handling functions 2015-06-27 21:32:16 -05:00
Ben Vanik 1ac19f1b08 Replacing vfs memory mapping with base memory mapping.
Progress on #294.
2015-06-27 18:02:20 -07:00
Ben Vanik 23f91b58f3 Moving code out of vfs/ that doesn't need to be there.
Progress on #294.
2015-06-27 17:01:25 -07:00
Ben Vanik abf47b7973 Removing utilities (that were just adding needless layers).
Progress on #294.
2015-06-27 16:27:38 -07:00
Dr. Chat 68b4aafb82 Add a couple more status codes 2015-06-27 17:10:23 -05:00
Dr. Chat 1ad144e451 NetDll_WSARecvFrom Stub 2015-06-27 17:08:42 -05:00
Dr. Chat e94ad84fe9 RtlImageXexHeaderField special case for XEX_HEADER_EXECUTION_INFO 2015-06-27 17:06:27 -05:00
Ben Vanik 0716cf84c0 Renaming xe::fs to xe::filesystem and xe::kernel::fs to xe::vfs.
Progress on #294.
2015-06-27 13:31:21 -07:00
Ben Vanik bc75b0ab87 Fixing NtQueryDirectoryFile. 2015-06-27 12:55:30 -07:00
Ben Vanik 74a710e8d4 Reverting interlaced types until we know what they are. 2015-06-27 12:17:37 -07:00
Ben Vanik c2e2b3380e Replacing X_ANSI_STRING with new style.
Progress on #297.
2015-06-27 12:16:52 -07:00
Ben Vanik f07d620553 Moving misc stuff out of xbox.h.
Progress on #297.
2015-06-27 11:44:40 -07:00
Ben Vanik 7e0246c381 Moving input structs out of xbox.h.
Progress on #297.
2015-06-27 11:37:12 -07:00
Ben Vanik 8c69a4df09 Cleaning up apu/ and renaming -private files to _flags.
Part of #296.
2015-06-27 11:25:56 -07:00
Ben Vanik 0d2d07e8e6 Merge pull request #298 from sephiroth99/fix_glsl_detect
gl4: fix glsl version detection when there is no vendor specific info
2015-06-27 11:10:57 -07:00
sephiroth99 3cac71322c gl4: fix glsl version detection when there is no vendor specific info 2015-06-27 13:19:50 -04:00
Ben Vanik b38bf5c132 Simplifying HID creation.
Part of #296.
2015-06-27 09:42:30 -07:00
Ben Vanik 883126d497 Simplifying GPU creation.
Part of #296.
2015-06-27 09:11:03 -07:00
Ben Vanik 3439641101 Removing cpu.h.
Part of #296.
2015-06-27 08:58:45 -07:00
Ben Vanik 12120262b8 Adding non-win8 API for unwind info, but it doesn't work :/
Working on #295.
2015-06-26 21:50:32 -07:00
Ben Vanik 951b2aa5bc Show a file picker when launched with no target file.
Fixes #293.
2015-06-26 20:27:36 -07:00
Ben Vanik dd41f01c41 Latest imgui.
Fixes #286.
2015-06-26 19:32:08 -07:00
Ben Vanik 3b42b7b694 Verifying GLSL version and ARB_bindless_texture support.
Fixes #289.
2015-06-26 17:22:13 -07:00
Ben Vanik 4ffaac6d6f --gl_debug flag. 2015-06-26 17:22:13 -07:00
raven02 3a2e7bce97 Typo fix 2015-06-27 08:00:35 +08:00
raven02 767f796306 gl4: more texture formats 2015-06-27 07:37:38 +08:00
Ben Vanik 2785124d1d Cleanup. 2015-06-26 07:56:06 -07:00
Ben Vanik 55f6ab4f38 Merge pull request #281 from raven02/master
gl4: implement texture max anisotropy
2015-06-26 07:52:18 -07:00
raven02 f41c500c43 gl4: minor read format fix 2015-06-26 22:27:59 +08:00
Dr. Chat 287a761987 Fix AppendParam dereferencing NULL pointers 2015-06-25 19:29:37 -05:00
Lioncash 23352f3419 xex_module: Fix formatting arguments
These take a const char* not a std::string.
2015-06-25 12:48:41 -04:00
raven02 d7dfb681aa gl4: implement texture max anisotropy 2015-06-25 00:13:49 -07:00
Ben Vanik fc7695f874 Take the whole 64k page at 0x0. 2015-06-23 18:06:37 -07:00
Ben Vanik d335555277 Manually page align address range for write watch. 2015-06-23 17:37:09 -07:00
Ben Vanik 9441808b40 Adding menus. 2015-06-22 23:30:34 -07:00
Ben Vanik b9c39d1b33 Fixing thread exit. 2015-06-22 22:40:39 -07:00
Ben Vanik fb1f4906d9 xb format --all (we are now format clean). Buildbot will yell at you. 2015-06-22 22:26:51 -07:00
Ben Vanik b46406ee4b More descriptive OpenGL error. 2015-06-22 21:49:57 -07:00
Dr. Chat bafd448dd8 Cleanup some XThread code 2015-06-22 21:42:33 -05:00
gibbed 75ef95b1b8 More XMA decoder cleanup. 2015-06-22 19:31:02 -05:00
raven02 1fb2ccb552 Add back the comment and we can check it again in future 2015-06-22 09:22:31 -07:00
raven02 68e12a4664 typo fix 2015-06-22 09:07:55 -07:00
raven02 d2de2bf652 gl4 : clear depth and stencil seperately using the DSA version 2015-06-22 09:04:34 -07:00
dariosamo e5727e7e2a GL4 Translator: ADDs/MULs/SUBs changed to XZ instead of XY. Basic implementation of loops for FLOW_CONTROL. 2015-06-21 14:09:41 -03:00
gibbed 2c319db116 More shuffling of XMA decoder code. 2015-06-21 06:31:24 -05:00
gibbed 06a3bfc3be More XmaDecoder cleanup. 2015-06-21 03:24:42 -05:00
gibbed e98178c9d5 Totally not my fault. 2015-06-21 02:28:42 -05:00
gibbed 021b5a3d17 Moved the XMA decoder out of AudioSystem and into its own world (plus minor code cleanup in the process). 2015-06-21 02:25:24 -05:00
gibbed 736dba5aca Fixed bit size of input_buffer_read_offset in XMAContextData. 2015-06-21 00:24:02 -05:00
gibbed 7e582c14fb Removed some unused code. 2015-06-21 00:23:29 -05:00
Dr. Chat 0bbaedae22 Fix release-mode audio 2015-06-20 19:50:24 -05:00
Ben Vanik fb591cbadb Disabling use of FMA until I can figure out the rounding issues. 2015-06-20 11:21:32 -07:00
Dr. Chat 8eba3a366f Rename XamLoaderLaunchTitle argument 2015-06-20 11:05:33 -05:00
Ben Vanik 03f2d26afd Fixing tests with no debugger attached. 2015-06-19 21:53:49 -07:00
gibbed 641a4a5e47 Rejiggered ProcessXmaContext. Sound working again in Super Meat Boy. 2015-06-19 22:39:41 -05:00
gibbed 1a38586d9a Cleaned up XMASetLoopData. 2015-06-19 21:52:02 -05:00
gibbed edbd724370 - Fixed a few bugs with ringbuffer, and some cleanup.
- Reworked audio system to use semaphores instead of events for waiting.
  Should fix rare issues where the XAudio2 driver would run out of buffers
  even though it was supposed to be guarded against that.
2015-06-19 21:48:51 -05:00
gibbed f3547a832f Removed XMAContextData::kSize constant, moved kXmaContextCount, changes to use newer ringbuffer, cleaned up XMAInitializeContext a bit (with fixes for loop_data handling). 2015-06-19 09:54:21 -05:00
gibbed f1e9c36f00 Better ringbuffer implementation. 2015-06-19 09:54:21 -05:00
raven02 abda769c45 gl4: more color formats 2015-06-19 06:11:42 -07:00
gibbed 1e4d65bcf7 Whoops. 2015-06-19 07:34:51 -05:00
gibbed d1221a3c5e Cleaned up VdGetCurrentDisplayInformation a bit. 2015-06-19 06:45:27 -05:00
sephiroth99 d708e2899f gl4: command_processor: fix locations in geometry shader header
The vertex shader outputs VertexData at location 1. Similarly, the pixel
shader's VertexData input is at location 1.

The geometry shader has both its input and output of VertexData at
location 0. Change it to location 1 so it matches the interface of
the other two shaders.
2015-06-18 02:01:36 -04:00
Drew DeVault f74d1b2f99 Add climits include to clock.cc 2015-06-16 23:45:49 -06:00
Drew DeVault 39253cbb93 Add cstring include to xenia/base/string.h 2015-06-16 23:45:37 -06:00
Ben Vanik e4c5522c84 Merge pull request #261 from SirCmpwn/fix-std-mem
Add missing includes for cstring
2015-06-16 22:19:19 -07:00
Drew DeVault a064ba053e Add missing includes for cstring 2015-06-16 23:16:18 -06:00
Ben Vanik b750370759 Partial thread data plumbing. 2015-06-16 21:53:40 -07:00
Ben Vanik aae45515ae Preserving HIR disasm when the debugger is attached. 2015-06-16 21:04:18 -07:00
Ben Vanik 165d49ad3a Moving PPC disasm to on-demand in debugger. 2015-06-16 20:18:48 -07:00
Ben Vanik 5f33087a12 Adding mmap for code cache and exposing cache properties. 2015-06-16 20:13:39 -07:00
Ben Vanik c34db170f5 Adding fallback for pre-MOVBE-supporting processors. 2015-06-16 20:06:50 -07:00
gibbed 75206149ab KeInitializeEvent. 2015-06-16 20:41:26 -05:00
gibbed 54a7b8c591 Assert symbol_info is not null in X64Emitter::Call. 2015-06-16 20:41:25 -05:00
Ben Vanik b9c341ebef Yell at the user when they have an unsupported CPU. 2015-06-16 17:46:41 -07:00
Ben Vanik 51eeb4f039 Using upstream xbyak movbe. 2015-06-15 20:44:13 -07:00
Ben Vanik 2a6ada2a3c Optimization to merge LOAD+SWAP and SWAP+STORE into flagged opcodes. 2015-06-15 18:59:29 -07:00
Ben Vanik ddaf08ca8d Adding flag to make LOAD/STORE also perform a byte swap. 2015-06-15 18:59:28 -07:00
Ben Vanik 0ffd8bbedd Place all XMM constants in memory so we can avoid clobbering rax. 2015-06-15 18:59:27 -07:00
Dr. Chat 23c7273481 Use F11 to fullscreen instead 2015-06-14 12:02:52 -05:00
Dr. Chat cec2e2b397 Fullscreen support with F6 2015-06-14 11:47:50 -05:00
gibbed 95afbe2d93 Don't allocate memory for TLS slots, and copy the default TLS data at the start, rather than offset by the TLS slot size, which seems to be more correct. 2015-06-14 03:50:45 -05:00
Ben Vanik edaebbf00f Adding call address assert. 2015-06-14 00:09:58 -07:00
gibbed c949c1d303 Support src1 and src2 being a constant in OPCODE_EXTRACT. 2015-06-14 02:08:41 -05:00
Ben Vanik 3870dabcee Replacing LoadZero and LoadConstant with explicit types. 2015-06-13 23:42:38 -07:00
gibbed 734b1a7be9 Fixed byte_offset in NtReadFile debug log. 2015-06-13 09:00:26 -05:00
gibbed 3a093d4c84 Fixed comment. 2015-06-13 08:59:52 -05:00
Dr. Chat 9376ed3f01 Whoops 2015-06-13 00:33:24 -05:00
Dr. Chat 3e7870fb39 Make SetNativePointer setup the guest pointer 2015-06-12 22:46:19 -05:00
Dr. Chat 4e74db8e51 Add the dispatch header to X_SEMAPHORE 2015-06-12 22:43:37 -05:00
Dr. Chat 3bd5dc011c Free the object creation info on destruction 2015-06-12 21:35:49 -05:00
Dr. Chat b7aabd7860 XSemaphore now calls CreateNative 2015-06-12 21:31:00 -05:00
Dr. Chat bdcadeffe5 XObject CreateNative 2015-06-12 21:30:32 -05:00
Dr. Chat a0a8b7ec37 Add X_OBJECT_HEADER and X_OBJECT_CREATE_INFORMATION 2015-06-12 19:48:24 -05:00
Dr. Chat f96657ef7c Fixup DISPATCH_HEADER type_flags to its parts 2015-06-12 19:47:28 -05:00
Dr. Chat 4c9cab4346 Make XThread create a kernel object for itself 2015-06-12 19:02:17 -05:00
Dr. Chat 864e257474 DISPATCH_HEADER -> X_DISPATCH_HEADER 2015-06-12 18:59:08 -05:00
Ben Vanik 6d4d1db310 Example of Capstone for both libxenia and the UI. Going to shuffle around. 2015-06-10 23:31:33 -07:00
gibbed 6348c3dc72 Changed a hardcoded value to something slightly more reasonable until we can calculate the correct value. 2015-06-10 23:48:51 -05:00
gibbed 1c37c14fc8 Cleaned up MmQueryStatistics. 2015-06-10 21:53:47 -05:00
gibbed dc371009d9 Renamed handle_ to native_handle_ in some places where it makes more sense. 2015-06-10 21:24:54 -05:00
Ben Vanik cabf9d6261 Adding some GPU docs and creating output directories automatically. 2015-06-10 19:20:14 -07:00
Dr. Chat feba4f03a2 ResolvePath check for fully qualified paths 2015-06-10 19:09:33 -05:00
Dr. Chat bc0fb19005 Swap main device to harddisk0 2015-06-10 19:08:58 -05:00
Ben Vanik 9c58426231 Speeding up source map lookup for x64 disasm. 2015-06-10 00:29:07 -07:00
Ben Vanik 14e1438ec0 Dramatically speeding up HIR comments. 2015-06-10 00:28:02 -07:00
Ben Vanik 56a4620cdf Switching StringBuffer to use a raw pointer. 2015-06-10 00:24:17 -07:00
Ben Vanik 070d34cd02 Fiddling with function data. 2015-06-09 22:01:01 -07:00
Ben Vanik d482885378 Debugger can pause/resume threads. 2015-06-09 20:14:35 -07:00
Ben Vanik 8dc20eb5cd Scaling audio playback frequency with clock time scaling. 2015-06-09 20:14:33 -07:00
gibbed 38c85084ff Tests for vsl. 2015-06-09 19:56:26 -05:00
gibbed e5c4590ecf Few more tests for vsr. 2015-06-09 19:56:12 -05:00
gibbed 6d933c18f7 SHL_V128. 2015-06-09 19:55:54 -05:00
Ben Vanik f0c47e036b Fixing SHR_V128. 2015-06-09 17:42:09 -07:00
gibbed 114409ea2f Test for vsr. 2015-06-09 19:31:44 -05:00
Dr. Chat 60cf80d85c Actually give the game the new handle 2015-06-09 19:04:41 -05:00
Dr. Chat 41f1023549 Minor fix in XThread - checking the wrong address for NULL 2015-06-09 18:58:45 -05:00
Dr. Chat 72a641efac Fix up NtDuplicateObject 2015-06-09 18:58:21 -05:00
Dr. Chat 3627418e0e Object table handle duplication 2015-06-09 18:58:02 -05:00
Ben Vanik dbcdc5b543 Function lookup is slow - replacing with a faster test. 2015-06-08 23:44:38 -07:00
Ben Vanik 1a2b4a38e0 Fixing spurious function declarations. 2015-06-08 23:37:51 -07:00
Ben Vanik 573f190a43 Adding modules/functions to the debugger. 2015-06-08 23:22:25 -07:00
Ben Vanik 9d7d6df476 Bail on invalid heap lookups. 2015-06-08 17:49:54 -07:00
Ben Vanik 52b8f4b54b Removing memory reservation value check for load/store. 2015-06-07 21:57:44 -07:00
Ben Vanik 00b3b0eab9 Adding assertion to RtlImageXexHeaderField + fixing return (maybe). 2015-06-07 21:51:19 -07:00
gibbed 1d37df29cb Untested implementation of MmCreateKernelStack and stub of MmDeleteKernelStack. 2015-06-07 22:28:06 -05:00
Ben Vanik cd62d4e461 PACK to 2101010. 2015-06-07 19:44:19 -07:00
gibbed 98e14fcb1b Hack for KeWaitForSingleObject when games pass in object handles. 2015-06-07 21:08:16 -05:00
gibbed 7f57867f49 Let's fix the strange stack overflows doing the stupid thing. 2015-06-07 18:29:09 -05:00
gibbed b9087e0698 This appears to be better? 2015-06-07 18:17:09 -05:00
Ben Vanik ba88955be4 vsnprintf return is dumb. 2015-06-07 16:13:05 -07:00
Ben Vanik a446d9c64a No need for thread-local shader translator as all reqs come from GPU CP. 2015-06-07 16:13:04 -07:00
gibbed 4a796627f2 Added --break_condition_gpr, --break_condition_value, --break_condition_truncate for use with --break_on_instruction. 2015-06-07 17:50:43 -05:00
Ben Vanik 889f29c18a Fixing CFG to remove unreachable blocks and properly maintain dominators. 2015-06-07 15:14:14 -07:00
Ben Vanik 10e8d0bd9b Fixing constant comparison. 2015-06-07 11:42:20 -07:00
Ben Vanik 338456f7e4 Adding missing test files. 2015-06-07 11:22:42 -07:00
gibbed 0772eec4b1 Fixing branches to the test function in the jumptable constants test. 2015-06-07 13:15:36 -05:00
gibbed 32ca1d1953 @ha @h. 2015-06-07 12:52:16 -05:00
gibbed be7900614b Basic tests for td, tdi, tw, twi. 2015-06-07 12:51:36 -05:00
gibbed 43b0cd6eae Added test reproducing an issue with constants, jumptables and traps. 2015-06-07 06:48:23 -05:00
gibbed 0fb9161a1b Putting the user_index == 255 check back into XamUserReadProfileSettings. 2015-06-07 04:51:50 -05:00
gibbed cbd1210337 Handle a NULL playlist name pointer when creating title playlist. 2015-06-07 01:46:57 -05:00
Ben Vanik f0492dfbb0 Looks like this is used to query rather than read sometimes. 2015-06-06 23:00:17 -07:00
Ben Vanik 58324352ae Stubbed color format. 2015-06-06 22:57:15 -07:00
Ben Vanik 6edf4f898f Gracefully skipping noaccess constant loads. 2015-06-06 22:56:53 -07:00
Dr. Chat 14b14f4309 XnAddrStatus enum and XNADDR struct 2015-06-06 21:20:20 -05:00
Dr. Chat 0c61244e91 Fix XNetGetDebugXnAddr signature 2015-06-06 19:19:13 -05:00
Dr. Chat 6e0732b95b NetDll argument 0 is a caller ID 2015-06-06 19:17:26 -05:00
gibbed cc79934fee Added k_16_16_16_16. 2015-06-06 18:10:17 -05:00
Ben Vanik 429698c2ec Replacing DidCarry with manual calculation and fixing compares. 2015-06-06 15:24:46 -07:00
Ben Vanik 6b52f6715a Adding tests for branch/carry and logging disasm on test failure. 2015-06-06 10:59:43 -07:00
Dr. Chat 4c3297441c Log debugprint traps to the debugger, if attached 2015-06-06 00:50:51 -05:00
Dr. Chat 35ad3c0f1f DebugPrint to debugger util function 2015-06-06 00:48:28 -05:00
gibbed 54e8868160 Some (hopefully correct) constant fixes for MUL_ADD_V128, MUL_SUB_V128, and SWIZZLE V128. Needs extra work on AVX2 side. 2015-06-05 23:29:31 -05:00
Ben Vanik a52fcf0157 Merge pull request #244 from DrChat/sector_info_stub
Sector info stub
2015-06-05 17:36:50 -07:00
gibbed b14ca702d1 Initialize process_type properly. 2015-06-05 19:21:52 -05:00
Dr. Chat 3b913844f0 File sector information stub 2015-06-05 19:06:36 -05:00
Dr. Chat 5250f0ca3e NtQueryInformationFile: Return X_STATUS_UNSUCCESSFUL on default cause 2015-06-05 18:58:39 -05:00
Dr. Chat d9ff65c9a2 Change NtQueryInformationFile to new-style export 2015-06-05 18:54:47 -05:00
gibbed 1d02ce63d3 Cleaned up XamUserReadProfileSettings. Also fixed writing out pointers for
setting data, fixing issues with games trying to read from zero page after
reading profile settings.
2015-06-05 18:53:14 -05:00
gibbed edf8d1a74d Corrected comment. 2015-06-05 16:49:28 -05:00
gibbed c1d3d62e2a Changed the default license mask. 2015-06-05 16:17:09 -05:00
gibbed dae8aa4386 Added --protect_zero command-line argument to protect page zero from read/writes. 2015-06-05 16:13:34 -05:00
sephiroth99 dd30330d18 gl4: fix usage of struct as input/output variables
Apparently, structs cannot be used as in/out variables. This causes
shader compile errors on AMD (nVidia doesn't seem to care I guess?).

Remove the structs and put each struct members as its own variable.
2015-06-05 00:11:23 -04:00
sephiroth99 1139a1b6ac gl4: fix nullptr dereference in GL4Shader::CompileProgram
A nullptr dereference will occur when the disassembly string is not
found, which will obviously happen on AMD. Check for the condition and
if it is not found, put a message indicating so.
2015-06-04 23:52:47 -04:00
sephiroth99 48ed0cb903 gl4: fix glGetInteger of GL_SAMPLER_BINDING
GL_SAMPLER_BINDING returns a single value. On AMD drivers, using the
indexed version of glGetInteger to get that value causes a
GL_INVALID_ENUM error. Use the non-indexed version.
2015-06-04 23:32:37 -04:00
Ben Vanik 232c35b89e Use the right sizes. Nice catch DrChat. 2015-06-04 20:06:49 -07:00
Ben Vanik bc9652e671 Actually fixing the off by one in log buffer size. 2015-06-04 20:04:39 -07:00
Ben Vanik d3ddf0e718 Make the log buffer stupid large. 2015-06-04 19:58:26 -07:00
Ben Vanik 53527bef17 Fixing heap frees. 2015-06-04 19:18:00 -07:00
Ben Vanik 52060af847 Best-guess process info block. 2015-06-04 17:46:00 -07:00
Ben Vanik f9742cc3eb Fixing formatting. 2015-06-04 16:56:42 -07:00
Ben Vanik 21474970b2 Fixing (or at least improving) TLS. 2015-06-04 16:51:53 -07:00
Ben Vanik 319402a11a Re-allow writes to 0. No clue why, but everything does it. 2015-06-04 16:37:17 -07:00
Dr. Chat abacf136a0 Protect page 0 with no access 2015-06-04 16:21:38 -05:00
Dr. Chat 88672eff4f InterlockedFlushSList and rewrote InterlockedPopEntrySList 2015-06-04 16:21:25 -05:00
Dr. Chat 4f807a669c Fix TLS copying (size may still be wrong though) 2015-06-04 16:20:52 -05:00
Ben Vanik 7abed0a033 Merge pull request #241 from DrChat/audio_decoding
Hookup libav logging
2015-06-04 07:58:22 -07:00
Dr. Chat 23ae1b6297 Hookup libav logging 2015-06-04 02:10:56 -05:00
Dr. Chat 0bc08d80ef NtCreateIoCompletion stub 2015-06-04 01:06:39 -05:00
Ben Vanik bba530f628 Pre-sizing export tables. 2015-06-03 22:40:23 -07:00
Ben Vanik b6728ce23e Removing additional varargs trampoline in shader translator. 2015-06-03 22:34:58 -07:00
Ben Vanik a9e2ba16fb Optimizing page allocation (still shit) and adding MmSetAddressProtect. 2015-06-03 21:24:09 -07:00
Ben Vanik 50813d3ffa NetDll_XNetGetDebugXnAddr stub. 2015-06-03 20:45:05 -07:00
Dr. Chat 809c327041 Emulate PACK/UNPACK for non-F16C CPUs 2015-06-03 22:33:45 -05:00
Ben Vanik b8d1d3cf35 Stub for avatar stuff to make it immediately bail. 2015-06-03 18:29:44 -07:00
Ben Vanik 36dc6dd864 Logging APC delivery. 2015-06-03 17:59:36 -07:00
Ben Vanik 1e0c8e223d Merge pull request #238 from DrChat/size_fix
Resize main window after attaching the menu
2015-06-03 11:00:50 -07:00
Dr. Chat 94a075d581 Resize main window after attaching the menu 2015-06-03 12:59:36 -05:00
Ben Vanik 08fc703b73 Merge pull request #237 from DrChat/audio_decoding
Cleanup Audio System Code
2015-06-03 09:16:07 -07:00
Dr. Chat 826609cd60 Cleanup some audio system code. 2015-06-03 11:14:10 -05:00
gibbed 60daa978dd VdSwap has 10 arguments. 2015-06-03 10:37:59 -05:00
gibbed c467024ec8 Packet building helpers. 2015-06-03 10:36:37 -05:00
gibbed 5cfdec7dbf Fix a comment. 2015-06-03 09:50:13 -05:00
Ben Vanik 954b67df78 Adding readback color format. 2015-06-02 22:46:53 -07:00
Ben Vanik 7f62e8a86d Fixing notification dequeing. 2015-06-02 22:13:17 -07:00
Ben Vanik e186fcaf0d Fixing end_of_file and allocation_size, some wildcard stuff, etc. 2015-06-02 22:13:16 -07:00
Dr. Chat b448d794c5 xboxkrnl SHA crypt stubs 2015-06-03 00:06:33 -05:00
Ben Vanik 40a6a12800 Attempting to inline a lot of MMIO operations. Works for GPU stuff mainly. 2015-06-02 20:15:43 -07:00
Dr. Chat 50d8017ac5 Whoops - fix overflowing on output audio samples 2015-06-02 13:17:15 -05:00
Dr. Chat e09ea50c74 .cpp -> .cc and add ring_buffer.cc to the project 2015-06-02 11:23:04 -05:00
gibbed 6d61d0a7b2 Added _snprintf and swprintf. 2015-06-02 10:42:10 -05:00
gibbed 58b1059a23 Reordered the formatting exports in the order of their ordinal. 2015-06-02 10:42:09 -05:00
gibbed b402fb76e1 Oops. 2015-06-02 10:42:08 -05:00
gibbed 065f0417f2 Fixed vsnprintf behavior when count < 0. 2015-06-02 10:42:08 -05:00
Ben Vanik 99718fd3ce Merge pull request #233 from DrChat/audio_decoding
Cleanup Audio System Code
2015-06-02 08:22:10 -07:00
Dr. Chat 8c1e476bab Restylizing. 2015-06-02 10:18:45 -05:00
Dr. Chat e20aa16b59 Cleanup audio system code 2015-06-02 10:12:13 -05:00
Dr. Chat ad8918f326 RingBuffer util class 2015-06-02 10:11:59 -05:00
gibbed 2a40512b74 Made a proper command-line flag out of disabling GL context resetting. --disable_gl_context_reset 2015-06-02 09:09:51 -05:00
Ben Vanik c516447ae1 Misc stubs. 2015-06-02 00:14:24 -07:00
Ben Vanik 7525b840db Making Rick happy ;) 2015-06-01 23:41:17 -07:00
Ben Vanik 862c322cbc Fixing stack args and error typo. 2015-06-01 23:36:05 -07:00
Ben Vanik f86f6ee79d Always set fake cpu #. 2015-06-01 23:22:25 -07:00
Dr. Chat 77e245dc51 Fix audio decoding. 2015-06-02 00:45:00 -05:00
Dr. Chat c780d5528d Remove unused bits_per_frame_ field. 2015-06-02 00:44:59 -05:00
Dr. Chat 93763c166f input_buffer_*_block_count -> input_buffer_*_packet_count 2015-06-02 00:44:59 -05:00
Ben Vanik 493b06a48a NetDll_XNetQosServiceLookup stub. 2015-06-01 22:20:04 -07:00
Ben Vanik 19cb13692b Fixing undefined export names. 2015-06-01 22:12:11 -07:00
Ben Vanik 5c34b0a73e Fixing printfs and fixing exports. link.exe is too good. 2015-06-01 21:40:53 -07:00
Ben Vanik a91a754b24 Converting some exports to the new way. 2015-06-01 20:56:57 -07:00
Ben Vanik f634edb9eb Shrinking type names. 2015-06-01 19:55:43 -07:00
Ben Vanik 169ced8194 Removing kernel_state and ppc_context from kernel export args. 2015-06-01 19:33:13 -07:00
Ben Vanik 23826fa957 Initial experiment with new kernel export format. 2015-06-01 18:19:42 -07:00
gibbed 225bb74316 Oops. Not sure how that got reverted. 2015-06-01 20:05:54 -05:00
gibbed 2a2fe509e6 Rename _vswprintf to vswprintf. 2015-06-01 19:42:23 -05:00
gibbed 5b06b8436e Use std::ostringstream instead of std::stringstream. 2015-06-01 19:32:13 -05:00
gibbed fe8d058b36 Completely reimplemented xboxkrnl formatting related functions (sprintf, etc). No longer relies on CRT-provided sprintf/etc. Floating-point types needs more thorough testing. 2015-06-01 19:29:25 -05:00
gibbed 633d72a98e Corrected NtQueryFullAttributesFile behavior when root_directory is 0. 2015-06-01 19:01:57 -05:00
gibbed 7c5ea52022 Updated functions pulling arguments out of the stack to use the appropriate SHIM_GET_ARG_* macro. 2015-06-01 19:01:56 -05:00
gibbed 8c49281bb5 Improvements to SHIM_GET_ARG_* macros. 2015-06-01 19:01:49 -05:00
Ben Vanik ce3359389b Allow new-style export registration. 2015-05-31 17:54:44 -07:00
Ben Vanik 08770a4ec0 Mass renaming. I love clang-format. 2015-05-31 16:58:12 -07:00
Ben Vanik 9c3d2b54fb Cleanup before kernel export refactor. 2015-05-31 16:31:19 -07:00
Ben Vanik fccab79a7a Adding kernel state pointer to PPCContext. Still needs larger cleanup. 2015-05-31 14:35:56 -07:00
Ben Vanik d816d80190 StringBuffer cleanup. 2015-05-31 14:35:30 -07:00
Ben Vanik 80c2078b9a Merge pull request #231 from DrChat/audio_decoding
Multi-channel decoding fix
2015-05-30 22:23:05 -07:00
Dr. Chat 128bf76205 Fixed up multi-channel audio, works better now. 2015-05-30 22:47:41 -05:00
Dr. Chat dfd689e22b Whoops, we should be converting samples from more than one channel! 2015-05-30 21:27:59 -05:00
Dr. Chat fedf7357a5 Remove variable bits per sample - it's always 16. 2015-05-30 21:01:55 -05:00
Ben Vanik c97b462d8d Fix assert. 2015-05-30 18:04:31 -07:00
Ben Vanik c4ef5d4eb8 Allow AllocFixed of unreserved ranges. 2015-05-29 21:47:19 -07:00
Ben Vanik d97a6d1929 NtReadFile APC, somewhat. 2015-05-29 21:24:23 -07:00
Ben Vanik a4edb7f9e1 Removing 64bit return type and cleaning up some SHIM* stuff pre-refactor. 2015-05-29 17:12:30 -07:00
Ben Vanik 0a83b49744 Speeding up inner loop. 2015-05-29 17:05:43 -07:00
Dr. Chat 40f98f195f Whoops - PCM samples are signed, not unsigned 2015-05-29 18:52:43 -05:00
gibbed 07c0724cf0 Some work on VdSwap. 2015-05-29 15:59:57 -05:00
gibbed 35bea36fc4 Added a magic value to XE_SWAP packets to make it obvious if there's an opcode collision. 2015-05-29 15:59:56 -05:00
Dr. Chat 8c1b36d102 Don't need this. 2015-05-28 22:34:59 -05:00
Dr. Chat d303f4a5ce Fix raw sample clamping 2015-05-28 22:31:55 -05:00
Dr. Chat fb787d4737 XMA context.kicked flag 2015-05-28 22:09:04 -05:00
Dr. Chat 73daf9cedc Select input buffer 1 if needed, and hookup sequence offset. 2015-05-28 21:58:39 -05:00
Dr. Chat 4675a1e17a Audio decoder now takes a "sequence" offset to feed to the WMAPro decoder. 2015-05-28 21:57:57 -05:00
gibbed 0050b3df83 Assign a CPU number based on the proc affinity mask on thread creation. Fixes audio threads not starting properly on Frogger 2, and possibly other titles. 2015-05-28 12:56:56 -05:00
gibbed 3300945660 Fixed 8-bit and 16-bit xe::lzcnt. 2015-05-28 12:16:19 -05:00
gibbed d1dbee2052 Consistency in memset calls. 2015-05-28 05:28:59 -05:00
gibbed 32fff9271b Yeah, let's zero the right argument, m'kay. 2015-05-28 05:22:36 -05:00
gibbed 1613ef35a6 %S support for vsprintf. 2015-05-28 05:18:15 -05:00
gibbed 671d6f3746 Making assumptions about how big the buffer being passed to VdGetSystemCommandBuffer is. Seems to work and fix the divide by zero trap many games were making. 2015-05-28 05:18:14 -05:00
Ben Vanik e419d314b3 Audio now works a bit better, but is still broken :/ 2015-05-28 02:15:30 -07:00
Ben Vanik a93325434a Minor audio tweeks + profiling. 2015-05-28 00:19:17 -07:00
Ben Vanik db3d8fdc87 Time scaling works (num pad +/- or --time_scalar=X). 2015-05-27 19:04:47 -07:00
gibbed 0b75d409d2 Somehow this assert got removed. 2015-05-27 15:06:11 -05:00
gibbed 4280ae8adc Corrected HostPathEntry::QueryDirectory return value when the first search fails. 2015-05-27 14:36:59 -05:00
Ben Vanik 8244409501 Refactoring to enable future time scaling, coordinated clocks, etc. 2015-05-26 22:20:58 -07:00
gibbed 05f2577fb7 Hurf. SHIM_SET_RETURN_64 -> SHIM_SET_RETURN_32. 2015-05-26 23:06:26 -05:00
Shawn Hoffman b6d51d86ee vs2015 supports constexpr 2015-05-26 14:25:45 -07:00
Ben Vanik 55e65f4ad6 GetObjectsByType. 2015-05-25 21:39:01 -07:00
Ben Vanik dcb78cc640 Pretty sure I have mtmsrd wrong. This likely isn't correct. 2015-05-25 21:20:38 -07:00
Ben Vanik 41cee3d337 Switching vsync to custom thread. 2015-05-25 21:12:27 -07:00
Ben Vanik e3ddcd44e7 Minor fixes and fixing thread names. 2015-05-25 21:10:28 -07:00
Ben Vanik 7cabcad69e f5 now also clears cached framebuffers/targets. 2015-05-25 14:58:46 -07:00
gibbed f2685dbb1d Fixed SPLAT_F32 for non-AVX2 branch. 2015-05-25 14:32:38 -05:00
gibbed a2ed902980 Removed a debug line in XAudio2 audio driver. 2015-05-25 14:29:13 -05:00
Ben Vanik 148c40554b Adding vmsum4fp128 test. 2015-05-25 12:28:32 -07:00
Ben Vanik c616104574 Tracing help. 2015-05-25 11:09:00 -07:00
Ben Vanik 9607eef9d6 Fixing page alloc in range; only happens right before OOM crash though :/ 2015-05-25 10:28:36 -07:00
Ben Vanik 273b9939e1 Fixing some misc thread/audio stuff. 2015-05-25 00:58:43 -07:00
Ben Vanik f5a2b85d42 Switching to xe::mutex. 2015-05-25 00:52:21 -07:00
Ben Vanik 814ec82ad4 Removing old GetObject. 2015-05-25 00:52:20 -07:00
Ben Vanik a2b66f9109 LookupObject'ing code. 2015-05-25 00:52:19 -07:00
Ben Vanik 018e9a96e1 LookupObject helper. 2015-05-25 00:52:19 -07:00
Ben Vanik 120e09f8e7 XObject::GetObject->GetNativeObject 2015-05-25 00:52:19 -07:00
Ben Vanik d746743d20 More object_ref'ing. 2015-05-25 00:51:28 -07:00
Ben Vanik 5cfb69434c Modules using object_ref. 2015-05-25 00:51:27 -07:00
Ben Vanik fff1a7c132 Switching std::thread to XThread and hosting in object_refs. 2015-05-25 00:51:26 -07:00
Ben Vanik 1104f8e687 Header cleanups and prep. 2015-05-25 00:51:25 -07:00
Ben Vanik 8ac1f61c64 RAII object reference, debug mutex, etc. 2015-05-25 00:51:24 -07:00
Ben Vanik e55be7d2c9 Fleshing out debugger types. 2015-05-25 00:51:23 -07:00
Ben Vanik da655d15b3 Sharing memory. 2015-05-25 00:51:23 -07:00
Ben Vanik 576d6492dc Basic debugger networking. 2015-05-25 00:51:22 -07:00
Ben Vanik 969badd8c3 Debugger UI skeleton. 2015-05-25 00:51:22 -07:00
gibbed 8a5d3526e5 Pump audio faster, up to XAUDIO2_MAX_QUEUED_BUFFERS (64) frames, then wait. 2015-05-25 02:49:49 -05:00
Ben Vanik 517dce01b1 Merge pull request #225 from DrChat/audio_fix
Fix audio decoder - mono sounds are working now!
2015-05-24 20:28:50 -07:00
Dr. Chat 65df257ede Fix audio decoder - mono sounds are working now! 2015-05-24 22:26:46 -05:00
gibbed 05081fa030 Fixed some constant loads. 2015-05-24 16:18:06 -05:00
gibbed 90d6c81161 Stubbed XFileAllocationInformation and XFileEndOfFileInformation in NtSetInformationFile. 2015-05-24 14:18:42 -05:00
gibbed f1d0fe909f Added an assert_not_null for native_ptr in XObject::GetObject. 2015-05-24 13:42:31 -05:00
gibbed 5c404ddfdb Always give an error on querying a file for compression information. This fixes Banjo-Kazooie and other games that rely on XtcdDecompression. 2015-05-24 12:32:24 -05:00
gibbed 33d40bee95 More tests for rlwinm. 2015-05-24 12:32:23 -05:00
Ben Vanik 7afc108b28 Merge pull request #224 from DrChat/net_changes
Misc. changes in xam_net
2015-05-24 10:26:38 -07:00
gibbed 7d5b6920fa Added QuerySizeInfo for FileFsSizeInformation. 2015-05-24 04:30:10 -05:00
gibbed a4ef6e5837 Renamed QueryVolume to QueryVolumeInfo, QueryFileSystemAttributes to QueryAttributeInfo. 2015-05-24 04:30:09 -05:00
gibbed 3e55b590b1 Removing unnecessary indirection from XFile. 2015-05-24 04:30:09 -05:00
gibbed de844a3db9 Renamed XFileSystemAttributeInfo to X_FILE_FS_ATTRIBUTE_INFORMATION. 2015-05-24 04:30:08 -05:00
gibbed cbbaae7867 Renamed XFileSystemSizeInfo to X_FILE_FS_SIZE_INFORMATION. 2015-05-24 04:30:07 -05:00
gibbed 9104e0a288 Renamed XVolumeInfo to X_FILE_FS_VOLUME_INFORMATION. 2015-05-24 04:30:07 -05:00
gibbed d60870e9eb Renamed XDirectoryInfo to X_FILE_DIRECTORY_INFORMATION. 2015-05-24 04:30:06 -05:00
gibbed e3e2b1a6d9 Renamed XFileInfo to X_FILE_NETWORK_OPEN_INFORMATION. 2015-05-24 04:30:05 -05:00
gibbed 2f905c0864 Added device(), removed absolute_path() on XFile. NtCreateFile now uses the file's device to resolve root directory requests. 2015-05-24 02:48:43 -05:00
Riley Labrecque 23c91b2eff Remove test binaries now that they can be created on Windows 2015-05-24 01:23:14 -06:00
gibbed 25c76e92e9 Simplify ResolvePath(), accessing paths using \Device\whatever is no longer valid (nothing should legitimately be using this anyway). 2015-05-24 01:27:26 -05:00
gibbed a4f2efe941 Fixed path joining in NtCreateFile. 2015-05-24 01:15:52 -05:00
Dr. Chat fad7cce2e9 Misc. changes in xam_net
XNetGetTitleXnAddr now returns a loopback address
2015-05-23 22:43:38 -05:00
Rick Gibbed 89a499bb47 Merge pull request #221 from DrChat/alt_pack
Vmaddfp test fix / Change some SSE instructions to AVX
2015-05-23 19:55:52 -05:00
gibbed 194fc4c1fd Calls to VdSetDisplayModeOverride seem to skip r5 as an argument. Set a return value in VdInitializeEngines. 2015-05-23 19:51:07 -05:00
gibbed b38bc0df1e VdPersistDisplay is two arguments, not nine. 2015-05-23 19:38:57 -05:00
gibbed a376eb7d9f Added XamIsUIActive. 2015-05-23 19:29:04 -05:00
Dr. Chat a4b950f1e9 Fix vmaddfp test 2015-05-23 18:14:07 -05:00
Dr. Chat f7a8dc3748 Change OPCODE_SPLAT instructions from SSE->AVX 2015-05-23 17:27:26 -05:00
Dr. Chat 99dd84ce57 Removed assert statements checking for addr range 2015-05-23 14:52:38 -05:00
Dr. Chat 61e9ba665b XamLoaderSetLaunchData 2015-05-23 14:35:00 -05:00
Dr. Chat 30e445a6de VdPersistDisplay - Check if unk1 ptr is NULL 2015-05-23 14:25:46 -05:00
Dr. Chat 9d2e8d4699 Shouldn't need these range asserts anymore. 2015-05-23 14:25:10 -05:00
Dr. Chat 4f8d8e62b3 Use av_frame_free / Log when couldn't reopen context. 2015-05-23 00:09:58 -05:00
Dr. Chat 866a5af427 Initialize pointers to nullptr 2015-05-23 00:07:35 -05:00
Dr. Chat 3389b9e421 AudioDecoder destructor 2015-05-23 00:07:34 -05:00
Dr. Chat a69d1b7f04 Discard the current packet when XMA context is released
Some more cleanup
2015-05-23 00:07:33 -05:00
Dr. Chat a6175dba48 Remove more accidentally committed files; rename .cpp to .cc 2015-05-23 00:07:33 -05:00
Dr. Chat f31b34256b WIP Audio decoder
Remove some old comments
2015-05-23 00:07:20 -05:00
gibbed ea99ba8e3b 0x7F000000-0x7FFFFFFF is magic. 2015-05-22 02:20:05 -05:00
gibbed 8b7f6c8e0c Tests for vmaddfp. 2015-05-22 01:32:22 -05:00
gibbed c3082381c5 Tests for fmadds. 2015-05-22 01:31:50 -05:00
gibbed 45cd0e4f8f Adjustments to fmadd tests. 2015-05-22 01:30:44 -05:00
gibbed ddc5989b06 Games seem to check if XamLoaderGetLaunchDataSize returns a non-zero, which maybe means no data/error. 2015-05-22 01:29:33 -05:00
gibbed 3077999240 Added XFileSystemSizeInfo. 2015-05-22 01:29:21 -05:00
gibbed 5ac98d2feb Adding some notes about fs_info_class in NtQueryVolumeInformationFile. 2015-05-22 00:41:24 -05:00
gibbed 06c99ded71 Cleaning up some stuff in RtlRaiseException, additional notes. 2015-05-22 00:41:23 -05:00
gibbed b3d56521b4 Valid, unknown, content type. 2015-05-22 00:41:23 -05:00
Ben Vanik 4d41840728 Misc threading fixes and flags to ignore priorities/affinities. 2015-05-21 22:33:29 -07:00
Ben Vanik 37f1953466 Fixing the assert when window is minimized. For you Rick :) 2015-05-21 19:23:44 -07:00
Ben Vanik bac3f8c3bd Fixing tests. 2015-05-21 07:51:56 -07:00
Ben Vanik fc4727c339 Changing calls/jmps to use the indirection table. Most games seem faster. 2015-05-21 00:12:28 -07:00
Ben Vanik ad72c193a6 Fixing stack traces, making lr BC... to diff from stack scribble BE... 2015-05-20 23:28:34 -07:00
Ben Vanik 5e5eb47789 Rewriting code cache to put everything at fixed addresses. 2015-05-20 19:23:46 -07:00
Ben Vanik 20a3172ebb Fix race condition in VS on thread naming. 2015-05-19 22:28:02 -07:00
Ben Vanik 2328b34308 Cleaning up some old flags. 2015-05-19 22:28:01 -07:00
Ben Vanik 9e685a1453 Merge pull request #216 from DrChat/audio
Cleanup some audio code
2015-05-19 22:24:00 -07:00
Dr. Chat f168fa881e Merge branch 'audio_cleanup' into audio 2015-05-20 00:20:52 -05:00
Ben Vanik f88bf33b4f Moving threads to XHostThread and making shutdown not crash. 2015-05-19 22:20:49 -07:00
Ben Vanik 7a82ad839a Merge branch 'memory' 2015-05-19 20:29:00 -07:00
Dr. Chat 38918c86a8 Cleanup some audio system code 2015-05-19 21:52:21 -05:00
Ben Vanik 721974185f Implementing XamShowDirtyDiscErrorUI. 2015-05-18 22:50:59 -07:00
Ben Vanik dc7717e650 Fixing opening files for write. 2015-05-18 22:22:55 -07:00
Ben Vanik 53c807de5d File not found. 2015-05-18 21:56:29 -07:00
Ben Vanik b119aa50f5 Fixing thread ID. 2015-05-18 21:24:14 -07:00
Ben Vanik 8bfc43bb0d Trying to do MMIO protects on allocation granularity. 2015-05-18 20:47:41 -07:00
Ben Vanik 92f5fe3b88 Changing page_size to allocation granularity. 2015-05-18 20:47:40 -07:00
Ben Vanik 172b14a8a5 Merge pull request #215 from DrChat/host_xthread
Host XThread class
2015-05-18 20:29:11 -07:00
Dr. Chat d1b2b4cde8 Start the audio system after the kernel state
Expose kernel state in emulator.h
2015-05-18 22:25:35 -05:00
Ben Vanik 7796f5cb60 Fixing page guards to work at system page granularity. 2015-05-18 20:25:15 -07:00
Dr. Chat b1920f4a87 Move audio system onto XHostThread 2015-05-18 22:25:02 -05:00
Dr. Chat ffe3b4bf04 XHostThread class 2015-05-18 22:23:59 -05:00
Ben Vanik bb5466d7b2 Fixing undefined exports to error out right. 2015-05-18 19:58:51 -07:00
Ben Vanik 1c96941236 Handling imports when modules aren't found. 2015-05-18 19:34:06 -07:00
Ben Vanik dceb9550c9 Adding global lock for slist (this is what reactos does). 2015-05-18 19:17:07 -07:00
Ben Vanik c5906fba7f Implementing XGetVideoCapabilities. 2015-05-18 19:13:42 -07:00
Ben Vanik fea2f25130 Merge pull request #214 from DrChat/interlocked_slist
Implement interlocked slist
2015-05-18 19:12:41 -07:00
Dr. Chat 90648187dd Implement InterlockedPopEntrySList 2015-05-18 21:10:58 -05:00
Ben Vanik 2cacacea8a Texture fixup. 2015-05-18 19:08:30 -07:00
Ben Vanik 5c2b2a2b58 Adding missing exports. 2015-05-18 19:01:20 -07:00
Ben Vanik 6d821df3a9 Zeroing heap memory. 2015-05-18 18:48:48 -07:00
Dr. Chat 9c949a2e87 Don't need to memset the xex memory twice. 2015-05-18 10:42:35 -05:00
Dr. Chat ef912e7e13 Update user module imports debug dump 2015-05-18 01:42:42 -05:00
Dr. Chat 589e672d20 XexModule: Resolve user library imports 2015-05-18 01:31:59 -05:00
Dr. Chat 88733bf8ba Zero-fill the memory where we're placing the xex 2015-05-18 00:50:58 -05:00
Dr. Chat f2ac2af8cd Change kernel state's object mutex to a recursive mutex
KernelState::IsKernelModule
2015-05-18 00:40:43 -05:00
Ben Vanik f5f7d15366 Trying, and failing, to get E0000000 range addresses to work. 2015-05-17 21:26:44 -07:00
Ben Vanik 4d32c7af05 Attempting a thread priority mapping. 2015-05-17 21:26:27 -07:00
Ben Vanik 56e27990e0 Fixing name check. 2015-05-17 17:17:56 -07:00
Ben Vanik c1a0f46ea8 Implementing dcbz. 2015-05-17 16:40:38 -07:00
Ben Vanik 50b84203c5 Fixing test. 2015-05-17 13:47:20 -07:00
Ben Vanik 3f7da258fc Adjusting stack padding on executes. 2015-05-17 13:35:12 -07:00
Ben Vanik b44a7a7730 Allocating stacks in the right place. 2015-05-17 13:10:02 -07:00
Ben Vanik 37804d692c Fixing stack allocation alignment. 2015-05-17 10:17:32 -07:00
Dr. Chat f14a52358a KeSetBasePriorityThread: Some games apparently pass in the thread handle instead 2015-05-17 11:03:02 -05:00
Dr. Chat 662fa97444 XObject SetNativePointer: Added flag to disable asserts on uninitialized memory 2015-05-16 18:47:33 -05:00
Dr. Chat 6adde32558 Scribble memory when allocated 2015-05-16 18:41:18 -05:00
Ben Vanik da630cc159 Starting to clean up thread state. 2015-05-16 16:34:14 -07:00
Ben Vanik 147a70b9c1 Rewriting memory manager. 2015-05-17 00:16:56 +01:00
Ben Vanik 83d52beaf2 Merge pull request #210 from DrChat/name_check_fixes
Fix some crashes from checking for object name collisions
2015-05-16 14:59:04 -07:00
gibbed 59d4847542 More tests for cntlzw. 2015-05-16 16:44:27 -05:00
Ben Vanik 3a7d1f21e8 Merge pull request #209 from DrChat/muladdsub_cleanup
Rewrite FMA mul sub/add to avoid register shuffling
2015-05-16 13:25:28 -07:00
Dr. Chat 4af14884ed Make sure object attributes pointer is non-NULL before reading from it 2015-05-16 15:24:23 -05:00
Ben Vanik 504b855c20 Adding frsqrte and fixing fsqrt o_o 2015-05-16 13:22:49 -07:00
Dr. Chat 5dbec09818 Change SSE opcodes back to AVX (mixing is bad) 2015-05-16 14:10:28 -05:00
Dr. Chat 65ff862495 Whoops (typo) 2015-05-16 13:41:33 -05:00
Dr. Chat 8e35ec0620 Rewrite FMA mul sub/add to avoid register shuffling
Also downgrade some AVX opcodes to SSE
2015-05-16 13:31:42 -05:00
Ben Vanik 6239ff9616 Disabling thread state 0x150 set. 2015-05-16 01:49:57 -07:00
Ben Vanik 8d4f54e240 Thread state updates. 2015-05-16 01:45:56 -07:00
Ben Vanik 88596611d1 Thread tweeks. 2015-05-16 00:12:25 -07:00
Ben Vanik cda0341c25 Setting process affinity to use all processors. 2015-05-15 23:52:48 -07:00
Ben Vanik 986534d448 Adding --mute. 2015-05-15 23:34:00 -07:00
Rick Gibbed 11ea5c5b10 Merge pull request #208 from DrChat/stack_size_fix
Increase audio worker thread and cpu interrupt thread stack size
2015-05-15 18:23:34 -05:00
Dr. Chat 420d4e43b6 Increase audio worker thread and cpu interrupt thread stack size 2015-05-15 18:12:44 -05:00
Rick Gibbed 7546cca936 Merge pull request #207 from DrChat/mul_8_fix
Fix 8bit multiply instructions
2015-05-15 10:22:30 -05:00
Dr. Chat dbdf3271fb Fix 8bit multiply instructions 2015-05-15 10:21:07 -05:00
Dr. Chat a46b63558e Clean up mul sub/mul add code and fix a minor bug in mulsub f64 2015-05-15 10:09:19 -05:00
Ben Vanik 8aa1854db4 Fixing X_ERROR_NO_MORE_FILES - I'm sure others are wrong :/ 2015-05-14 20:45:14 -07:00
Dr. Chat e6b4c6056f Calculate xex size based on the total size of all of the sections 2015-05-14 21:54:18 -05:00
Ben Vanik 380fabebe7 async errors. 2015-05-14 17:13:54 -07:00
Ben Vanik 9ea88ff901 Hack for testing completion routines - this is not correct.
Assert left in on purpose.
2015-05-14 16:35:46 -07:00
Ben Vanik 46eedeab01 Fixing up some overlapped completion routine stuff. 2015-05-14 16:35:29 -07:00
Ben Vanik a1fb99f1d3 Adding new test binaries. 2015-05-14 16:21:27 -07:00
Ben Vanik abf7b794e6 Adding --headless and basic message box UI. 2015-05-14 16:21:08 -07:00
Dr. Chat 88e3ef9884 fmadd test 2015-05-14 18:07:30 -05:00
Dr. Chat 5c10d1cdaa Tests: fadd/fmul 2015-05-14 18:07:24 -05:00
gibbed 6fe545b3e9 Return X_ERROR_PATH_NOT_FOUND instead of X_ERROR_FILE_NOT_FOUND in XamContentCreateCore. 2015-05-14 17:02:28 -05:00
gibbed 61f4095851 Set thread affinity of the specific thread, not the current thread. 2015-05-14 17:02:28 -05:00
gibbed 283f5269d5 Create native threads with default stack size. 2015-05-14 17:02:27 -05:00
Ben Vanik df600a105a Fixing constant compare. 2015-05-14 14:42:54 -07:00
gibbed ac4337cabf CR1 tests for fabs (disabled). 2015-05-14 16:02:44 -05:00
gibbed cfaa72cae6 Tests for extsb, extsh, extsw. 2015-05-14 15:56:25 -05:00
gibbed a5483ced29 Tests for cmpl, cmpli. 2015-05-14 15:36:39 -05:00
gibbed 95b6f0ac46 Tests for cmpi. 2015-05-14 15:30:35 -05:00
gibbed 4122bce07c Tests for cmp. 2015-05-14 15:24:03 -05:00
gibbed 6edc3b1c55 Tests for andis. 2015-05-14 14:57:43 -05:00
gibbed fa5e34ce19 Tests for andi. 2015-05-14 14:55:02 -05:00
gibbed ac1a805b8e Implemented RtlNtStatusToDosError lookup tables. 2015-05-14 13:41:45 -05:00
gibbed 169c0fd26b Oops. Sorting. 2015-05-14 12:01:24 -05:00
gibbed 20144709e3 Added xboxkrnl_error.cc/.h and moved RtlNtStatusToDosError to it. 2015-05-14 11:59:50 -05:00
gibbed a3621fd11b Experimental stack allocation. 2015-05-14 10:12:33 -05:00
gibbed 5660d348ea Tests for andc. 2015-05-14 02:06:58 -05:00
gibbed 5ec6b7973b Tests for and. 2015-05-14 02:06:41 -05:00
gibbed 30f4556baf CR0 tests for addze. 2015-05-14 01:43:18 -05:00
gibbed e4f8818d07 CR0 tests for addme. 2015-05-14 01:27:33 -05:00
gibbed ad9b2c792e Tests for addis. 2015-05-14 01:27:32 -05:00
gibbed eb5fcd5228 CR0 tests for adde. 2015-05-14 01:27:32 -05:00
gibbed 59fb08adaa CR0 tests for addc, addic. 2015-05-14 01:27:31 -05:00
Ben Vanik 1b4e7898a4 Merge pull request #203 from DrChat/stack_fix
Inherit exe stack size if user doesn't specify one
2015-05-13 23:01:02 -07:00
Dr. Chat 398a412707 Inherit exe stack size if user doesn't specify one 2015-05-14 00:59:29 -05:00
gibbed 081fc63fbd Enabled the constant tests for addc and addic. 2015-05-14 00:34:24 -05:00
gibbed 1bdb36eaa8 Added UploadTexture2D and UploadTextureCube to the profiler. 2015-05-13 22:02:16 -05:00
Ben Vanik 00b79d66ff Fixing sub carry flag. 2015-05-13 18:04:33 -07:00
gibbed b819c992ed CR0 tests for add. 2015-05-13 17:07:29 -05:00
gibbed bb947c6819 Value::MulHi and constant propagation for OPCODE_MUL_HI. Could maybe be reworked? 2015-05-13 16:13:06 -05:00
gibbed 9714018fbb Constant tests for srw, stvew, stvl, stvr, subf, subfc, subfe, subfic, subfme, subfze. 2015-05-13 06:38:31 -05:00
gibbed 0cf3e8c3f5 Simplify some register setup in the cntlzd and cntlzw tests. 2015-05-13 06:36:00 -05:00
gibbed 96e549d301 Constant tests for rldicr, rlwimi, rlwinm, rlwnm, sld, slw, srad, sradi, sraw, srawi, srd. 2015-05-13 03:14:06 -05:00
gibbed 5ebd4984ba Constant tests for mulhdu, mulhw, mulhwu, mulld, mulli, mullw, neg, nor, ori, rldicl. 2015-05-13 02:39:09 -05:00
Ben Vanik 6aec2c0d02 Whoops. I'm tired. 2015-05-13 00:38:55 -07:00
Ben Vanik 3b2035a054 Adding case for ObReferenceObjectByHandle, but impl still todo. 2015-05-13 00:37:35 -07:00
Ben Vanik 0d3e79ad2c Supporting const src1 mul_hi. 2015-05-13 00:19:07 -07:00
Ben Vanik 6fd7e35deb Fixing subfme. 2015-05-13 00:15:42 -07:00
gibbed 3ba6598caf Constant tests for eqv, lvexx, lvl, lvr, lssl, lvsr, mulhd. 2015-05-13 01:53:07 -05:00
Ben Vanik 4248268b4f Fixing divd constant. 2015-05-12 23:38:02 -07:00
gibbed 4327724f77 Constant tests for divw, divwu. 2015-05-13 01:27:27 -05:00
Ben Vanik 398b37dc5f Fixing addze. 2015-05-12 23:26:21 -07:00
Ben Vanik 56bd2eee2e Fixing divdu by constant -1. 2015-05-12 23:09:32 -07:00
gibbed e7b03042ba Constant tests for addic, addme, addze, divd, divdu. 2015-05-13 01:01:12 -05:00
Ben Vanik 91c6ad8715 Fixing adde_constant. 2015-05-12 22:53:20 -07:00
gibbed dda6f3b6bd sldi is not srdi. 2015-05-13 00:35:35 -05:00
gibbed dc1b1ca638 Constant tests for add, addc, adde. 2015-05-13 00:21:57 -05:00
Ben Vanik f96dda4983 Adding xb-gpu-trace-viewer project. 2015-05-12 22:14:34 -07:00
Ben Vanik 7622746ecf 4A seems more legit for video mode unk. Still no clue what it is. 2015-05-12 21:41:44 -07:00
Ben Vanik a72dc93b92 'xb gentest' to generate test binaries on Windows. 2015-05-12 21:41:44 -07:00
gibbed c00ded9fbc Fixed VdQueryVideoFlags. 2015-05-12 22:59:21 -05:00
gibbed 95080cefa2 Fixed second argument in XamEnableInactivityProcessing. 2015-05-12 21:56:24 -05:00
Ben Vanik 5fbdd6e262 Fixing XMP playlist handles. 2015-05-12 19:55:10 -07:00
Ben Vanik cbdfd09e0f Fixing SHR constant prop and new cntlz tests. 2015-05-12 18:59:45 -07:00
Ben Vanik 48ae4b65fb Fixing CountLeadingZeros constant prop. 2015-05-12 18:51:01 -07:00
Ben Vanik acfb5b5722 fnabsx 2015-05-12 18:43:16 -07:00
Ben Vanik d9eca84d0b Formatting. 2015-05-12 18:17:34 -07:00
Dr. Chat 82eecb752b Fix 8bit and 16bit mul instructions and clean up some code 2015-05-12 13:35:13 -05:00
gibbed c5c312eb8f ColorFormat::k_16_16_FLOAT support, maybe. 2015-05-12 06:51:32 -05:00
gibbed ff2c00e220 Just in case. 2015-05-12 06:51:31 -05:00
gibbed fc9f9d9a60 This is probably more correct. Gets rid of all xobject related asserts for several games. 2015-05-12 06:51:30 -05:00
gibbed 19e733cff7 Added constant tests for cntlzd and cntlzw. 2015-05-12 01:20:26 -05:00
gibbed be1c60c74f Disabled lzcnt intrinsic usage for now. 2015-05-12 00:48:39 -05:00
gibbed 24b13b03f5 Fixing more cpu feature guards. 2015-05-12 00:26:45 -05:00
Ben Vanik 497e5a9f69 Fixing cpu feature guards. 2015-05-11 22:13:55 -07:00
Ben Vanik ad7efa964f Adding --enable_haswell_instructions=false to disable modern instructions. 2015-05-11 21:42:10 -07:00
Ben Vanik fc02a0c404 Switching up std::vector use in register allocator. 2015-05-11 21:01:48 -07:00
Ben Vanik 21edd65354 Fixing warnings and style. 2015-05-09 18:13:19 -07:00
Ben Vanik 5954d23438 Merge branch 'debug' 2015-05-09 18:01:40 -07:00
Ben Vanik 7a00b76a6e Debugger stuff, and changing to vcproj's/sln. 2015-05-09 17:48:12 -07:00
Dr. Chat 459024059a Setup UI menu code 2015-05-09 17:32:55 -05:00
Ben Vanik 4411a4499d XEX-style exports, dumping exports, and prepping kernel export lookup. 2015-05-09 00:59:03 -07:00
Ben Vanik 23eb343484 Calling DllMain, fixing ref count, and fixing module search. 2015-05-09 00:56:42 -07:00
Ben Vanik 0c646f4bc2 Prevent some stack overflows in MMIO handler. 2015-05-09 00:53:28 -07:00
Dr. Chat 0f2b1491b7 Call a DLL's entry-point function in XexLoadImage 2015-05-08 22:51:03 -05:00
Dr. Chat 8deb622abb Execute module entry-point function if it has one. 2015-05-08 22:50:54 -05:00
Ben Vanik 94c62b91d0 --trace_functions and --trace_function_coverage 2015-05-05 22:44:36 -07:00
Ben Vanik ade5388728 bool-ifying xe::cpu 2015-05-05 18:52:54 -07:00
Ben Vanik a38b05db24 Chunked mapped memory writer. 2015-05-05 18:52:53 -07:00
Ben Vanik 499bed21c0 Moving debugger. 2015-05-05 18:52:53 -07:00
Ben Vanik b07d5b8ed3 Fixing compile warnings. 2015-05-05 18:52:37 -07:00
Dr. Chat bffd2624fc Lookup XEX export by ordinal 2015-05-05 18:54:01 -05:00
Dr. Chat 2e9aec194f Ctrl+C Ctrl+V 2015-05-05 16:00:41 -05:00
Dr. Chat 26d8858684 Emulated vector shr 2015-05-05 15:58:51 -05:00
Rick Gibbed abf97ea44d Merge pull request #195 from DrChat/emulation
Emulate some vector arithmetic opcodes (until we get a native implementation)
2015-05-05 15:41:15 -05:00
Dr. Chat cb127ae9ba Emulate some vector arithmetic opcodes (until we get a native implementation) 2015-05-05 15:39:37 -05:00
Dr. Chat 54d84f04e3 XamLoaderLaunchTitle log parameters 2015-05-05 15:17:45 -05:00
Dr. Chat cff09a4509 OPCODE_VECTOR_SHA and SPLAT_I16 for non-AVX2 CPUs 2015-05-05 14:35:37 -05:00
gibbed 3249f84700 It's vpblendw. 2015-05-05 13:58:21 -05:00
gibbed 6694461698 Fixed ecx restore in EmitShlXX/EmitShrXX/EmitShaXX. 2015-05-05 13:58:03 -05:00
Ben Vanik 743e01209b Update x64_sequences.cc 2015-05-05 10:23:04 -07:00
Dr. Chat c3f1e74814 And actually use vpblendw 2015-05-05 12:16:38 -05:00
Dr. Chat c1f9952cbd PERMUTE_I32 Alternative instructions 2015-05-05 12:16:31 -05:00
Dr. Chat 0e836f2eec Fix CNTLZ (I think)
SAR alt. instruction
2015-05-05 08:53:41 -05:00
Ben Vanik 649eb1cf8e Merge pull request #190 from DrChat/load_module
XexLoadImage support for user modules
2015-05-04 20:32:12 -07:00
Ben Vanik 442e5f2840 clang-format 2015-05-04 20:24:02 -07:00
Ben Vanik 0f14575592 Shrinking debug info. 2015-05-04 20:24:02 -07:00
Dr. Chat 1b111f0313 Thread safety 2015-05-04 22:16:48 -05:00
Dr. Chat f12a8dbe20 Release modules on destruction 2015-05-04 22:07:58 -05:00
Dr. Chat 9f0663efa2 XexLoadImage for user modules 2015-05-04 22:03:14 -05:00
Dr. Chat d86674ed82 Whoops 2015-05-04 21:39:43 -05:00
Ben Vanik c4784e6dcd Merge pull request #187 from DrChat/upstream
XexGetProcedureAddress by proc name
2015-05-04 18:59:37 -07:00
Dr. Chat 9603a0a683 Formatting 2015-05-04 20:58:30 -05:00
Dr. Chat 1571c51a56 Kill some unused code 2015-05-04 20:33:04 -05:00
Dr. Chat e90475a31b kill the TODO 2015-05-04 20:26:18 -05:00
Dr. Chat bb398f32ca Guard test code with __try __except 2015-05-04 20:12:02 -05:00
Dr. Chat 6a602affed Don't parse loader export table for now (since it's referenced to with an exact address) 2015-05-04 18:16:31 -05:00
Dr. Chat 211cd0760a Use header->exe_address instead (in-case the module is relocated) 2015-05-04 18:11:39 -05:00
Dr. Chat be3d729831 Implemented this too (XexGetProcedureAddress) 2015-05-04 18:03:03 -05:00
Dr. Chat 49c8efdc6d XexGetProcedureAddress by name implemented. 2015-05-04 18:02:57 -05:00
Ben Vanik 78921c1a7e Merging Runtime into Processor. 2015-05-03 22:28:25 -07:00
Ben Vanik 4c8f3501ad Removing xdb and old tracing code before rewrite. 2015-05-03 22:01:31 -07:00
Ben Vanik d1ee1512b9 Fixing most clang-format errors. 2015-05-03 10:27:50 -07:00
Ben Vanik d9e4bc98e1 Code cleanup: removing cxx_compat.h 2015-05-02 10:55:22 -07:00
Ben Vanik f8a2ed205e Merge pull request #185 from sephiroth99/remove_extra_headers
Remove cxx_compat.h header
2015-05-02 10:50:56 -07:00
Dr. Chat b87b7472e0 Fix splat w/ F32 2015-05-02 09:32:21 -05:00
Dr. Chat 850e80396f Whoops (again) 2015-05-02 09:32:13 -05:00
Dr. Chat 7844dfa034 Corrected vec splat alt. instructions 2015-05-02 09:32:03 -05:00
Dr. Chat b4025c889a whoops 2015-05-02 09:31:52 -05:00
Dr. Chat c464584e89 CNTLZ alternative instructions 2015-05-02 09:31:43 -05:00
Dr. Chat 414e5b2d30 Replaced some AVX2 instructions with non-AVX2 instructions if unsupported by CPU 2015-05-02 09:31:31 -05:00
Dr. Chat cad6ca6148 Include host CPU information in x64 emitter
Conflicts:
	src/xenia/cpu/backend/x64/x64_emitter.cc
2015-05-02 09:31:01 -05:00
sephiroth99 fbb3878cf4 Remove cxx_compat.h header
Revert commits 6d159dc2 and 3f480d24. Visual Studio 2013 is not
supported anymore, so they are not needed.
2015-05-02 09:36:34 -04:00
Ben Vanik e3220f7ae6 Code cleanup: moving poly/ into xenia/base/ 2015-05-02 03:42:51 -07:00
Ben Vanik 99816056be Code cleanup: removing poly.h 2015-05-02 02:29:26 -07:00
Ben Vanik 642259e16f Code cleanup: moving ExportResolver to xe::cpu 2015-05-02 02:11:11 -07:00
Ben Vanik d76998915a Code cleanup: moving poly logging to xenia 2015-05-02 01:59:50 -07:00
Ben Vanik f7ca026db0 Code cleanup: moving poly::ui to xe::ui 2015-05-02 01:50:19 -07:00
Ben Vanik 4d15b2296e Code cleanup: removing config.h and cleaning up platform.h 2015-05-02 01:41:39 -07:00
Ben Vanik 30f7effa73 Code cleanup: removing common.h 2015-05-02 01:25:59 -07:00
Ben Vanik 727ffaa122 Various fixes and utilties. 2015-05-02 00:26:03 -07:00
Ben Vanik 98e7e2727b Updating deps. 2015-05-01 18:53:39 -07:00
Ben Vanik 6d8a226d7f Code cleanup. 2015-03-29 11:27:33 -07:00
Ben Vanik 45b2d2ceea Fixing xaudio2 memory type. 2015-03-29 11:26:16 -07:00
Ben Vanik ec84a688e9 Starting to properly attribute virtual vs. physical memory accesses. 2015-03-29 11:11:35 -07:00
Ben Vanik ab90e0932b Minor tweaks for crazy shaders. 2015-03-28 18:13:21 -07:00
Ben Vanik 3a197705bb Special memory functions for system allocs. 2015-03-28 15:54:44 -07:00
Ben Vanik 71eabf7f2b Fixing some misc bugs. 2015-03-28 15:45:39 -07:00
Ben Vanik 6bf84d832f fresx and some vec128 constant prop. 2015-03-25 19:17:16 -07:00
Ben Vanik 40591a5376 Fixing builtins. 2015-03-24 20:00:51 -07:00
Ben Vanik 281abea955 Converting addresses in xe::cpu to 32bit. 2015-03-24 19:41:29 -07:00
Ben Vanik 3279776a80 Moving cpu/frontend/ppc/ to cpu/frontend/. 2015-03-24 08:37:00 -07:00
Ben Vanik 9281d62106 Moving cpu/runtime/ to cpu/. 2015-03-24 08:25:58 -07:00
Ben Vanik 29912f44c0 Moving alloy/ into xenia/cpu/ to start simplifying things. 2015-03-24 07:46:18 -07:00
Ben Vanik 59395318f3 Moving some util types into poly. 2015-03-22 22:12:37 -07:00
Ben Vanik b392afbfae Basic cubemap support, though the sampling code is wrong. 2015-03-22 19:15:22 -07:00
Ben Vanik 7677d6ea9f Depth range. 2015-03-22 15:30:36 -07:00
Ben Vanik 8cfcea2309 32_32_F render target format. 2015-03-22 15:30:18 -07:00
Ben Vanik 6486299496 --flush_stdout to disable flushing. 2015-03-22 11:49:13 -07:00
Ben Vanik f8db3774cb Hiding draw batch flush scope. 2015-03-22 11:41:46 -07:00
Ben Vanik 11b0c076bd Adding basic short-term vb reuse, removing index counting.
Regression for some games (that don't size their fetches), massive
improvement for others.
2015-03-22 11:35:23 -07:00
Ben Vanik 159ebb4295 Removing unneeded stencil register logic. 2015-03-22 09:37:55 -07:00
Ben Vanik 08e652410e Plumbing scalar params through swap. Hacky, but works for replay. 2015-03-22 09:31:55 -07:00
Ben Vanik cef9a684cd Primitive reset. 2015-03-22 08:52:05 -07:00
Ben Vanik 559cda3215 Forcing depth clear - not right, but gets atrain working. 2015-03-22 01:07:14 -07:00
Ben Vanik b75e070d1b Fixing color/depth clear state. 2015-03-22 00:45:00 -07:00
Ben Vanik c8ddc48106 Fixing microprofile display. 2015-03-21 23:00:15 -07:00
Ben Vanik 2401bb7d03 Fixing 1px offset in tiles. 2015-03-21 22:52:35 -07:00
Ben Vanik fa58eaa317 Partial success on predicated tiling (depth buffer still bad). 2015-03-21 22:32:23 -07:00
Ben Vanik 7c3225ee41 Render target display in trace viewer. 2015-03-21 10:41:20 -07:00
Ben Vanik 494e918496 Fixing alpha testing. 2015-03-21 03:21:55 -07:00
Ben Vanik 704077d543 Removing unneeded glViewport. 2015-03-21 02:38:52 -07:00
Ben Vanik b406f49ae4 Extracting dest coords in copies; still not right. 2015-03-21 02:11:23 -07:00
Ben Vanik fe7de2c0ba Window offset goes here. Still broken due to copy issue. 2015-03-20 22:26:20 -07:00
Ben Vanik 6b7b57cecf Super basic vertex buffer display in trace viewer. 2015-03-20 21:54:52 -07:00
Ben Vanik 8ce30448f8 Index buffer display in trace viewer. 2015-03-20 20:41:58 -07:00
Ben Vanik f7d0c427be Implementing alpha testing. 2015-03-20 20:12:27 -07:00
Ben Vanik a82587f943 Fixing window offset and moving into state batch params. 2015-03-20 17:41:50 -07:00
Ben Vanik d695f637a8 int draw offsets. 2015-03-20 16:47:31 -07:00
Ben Vanik 92f1a7cb40 Show predication in trace viewer (colors not accurate yet). 2015-03-20 16:38:26 -07:00
Ben Vanik 22246cccb5 Whoops - my arbitrarily picked GPU command # collided -_- 2015-03-20 16:37:04 -07:00
Ben Vanik 0ea8f74cf8 Packet disassembler just for current command. 2015-03-15 21:22:23 -07:00
Ben Vanik b060f6f263 disasm set shader consts packet. 2015-03-15 20:59:21 -07:00
Ben Vanik 2157c8a2b2 Dropping a bunch of profiling - VB/IB upload is slow, that's about it. 2015-03-15 20:32:40 -07:00
Ben Vanik 1608878437 Trying to figure out shader flow control; not going so well :/ 2015-03-15 16:55:20 -07:00
Ben Vanik 35513ceea0 Constant slot pairing... maybe. 2015-03-15 14:21:09 -07:00
Ben Vanik 341a493bf9 Discovered new GPU opcode for constant setting. 2015-03-15 12:26:40 -07:00
Ben Vanik 4d61bac00f Assert shader constant bases. 2015-03-15 11:34:33 -07:00
Ben Vanik d803612184 Fixing recording of LOAD_ALU_CONSTANT. 2015-03-15 11:27:04 -07:00
Ben Vanik 795df80687 Possibly right const addressing and more shader instructions. 2015-03-15 11:20:19 -07:00
Ben Vanik b07cd49281 Fiddling with msaa scaling. 2015-03-15 02:28:39 -07:00
Ben Vanik 86faacdb87 LOAD_ALU_CONSTANT also taking a target type. 2015-03-15 02:05:26 -07:00
Ben Vanik 64c8d7ab98 MRTs and some more texture formats. 2015-03-15 02:05:01 -07:00
Ben Vanik b818adbf6d SET_CONSTANT for the other types. I think. 2015-03-15 01:18:00 -07:00
Ben Vanik 1a9ce6edfa Somewhere the file access mode is messed up... 2015-03-15 00:18:18 -07:00
Ben Vanik 613fdac71d Implementing one case of conditional shader execution blocks. 2015-03-14 23:55:33 -07:00
Ben Vanik ff4e9c32b6 XamContentFlush stub. 2015-03-14 23:54:52 -07:00
Ben Vanik 0117c39968 Proper XamEnumerate return when there are zero items. 2015-03-14 23:54:43 -07:00
Ben Vanik c6c24d50bd Extra copy dest formats. 2015-03-14 20:27:34 -07:00
Ben Vanik 1358d54ce9 Not sure msaa scaling is required anymore - odd. 2015-03-14 20:08:25 -07:00
Ben Vanik a70533f1c5 Fast seek forward in trace viewer. 2015-03-14 20:08:05 -07:00
Ben Vanik 55556e774f vs export mode 2 is ok. 2015-03-14 20:07:55 -07:00
Ben Vanik 6f0ca00651 Screen extent write; doesn't seem to do anything :/ 2015-03-14 16:50:54 -07:00
Ben Vanik 7192728fe0 Playing more with viewport stuff. 2015-03-14 16:11:55 -07:00
Ben Vanik d57306b473 Possibly fixing transforms. 2015-03-10 20:25:14 -07:00
Ben Vanik 5c33925995 Massive reworking of shader translator; for ALU ops only. 2015-03-08 22:08:53 -07:00
Ben Vanik 98194f0482 Assert on failure to compile glsl and unimplemented shader instrs. 2015-03-08 21:57:44 -07:00
Ben Vanik c28cbba00c Bigger textures in trace viewer. 2015-03-08 21:57:04 -07:00
Ben Vanik b9f9e1bb2b Blitter handles color/depth texture copies. 2015-03-07 16:12:52 -08:00
Ben Vanik d72610ba1b Custom blitter for final resolve. 2015-03-07 10:17:09 -08:00
Ben Vanik 2bce5ba0d9 Skip all predicated swaps - this may be too aggressive. 2015-03-06 22:40:42 -08:00
Ben Vanik 05239daecf Fixing tracing of games that do everything in nested indirect buffers. 2015-03-06 22:27:41 -08:00
Ben Vanik 14c6fbfba4 Adding safety checks, disabling vendor gl extensions by default. 2015-03-06 21:54:59 -08:00
Ben Vanik 84fa131f12 Hacking on render targets. Kind of work in simple cases, upside down :/ 2015-03-06 20:36:10 -08:00
Ben Vanik a1e68c0036 Experimenting with clip mode but it doesn't work like I think it does. 2015-03-06 19:27:45 -08:00
Ben Vanik 9db38ac860 Kind of fixing window coordinates. 2015-03-06 13:42:56 -08:00
Ben Vanik 05bdbbbe84 Fixing packet disassembler. 2015-03-06 12:24:46 -08:00
Ben Vanik b19c98fd9a Fixing small textures. This was painful.
Fixes #173.
2015-03-05 22:22:34 -08:00
Ben Vanik 4b5f77bde4 Special quad list line geometry shader.
Fixes #174.
2015-03-03 20:31:05 -08:00
Ben Vanik 41174b0e64 Hacktastic GPU trace viewer; textures, shaders, state, etc. 2015-03-01 12:26:11 -08:00
Ben Vanik 0f1e870d99 Fixing keyboard input in imgui. 2015-02-21 11:47:53 -08:00
Ben Vanik f013fde7b6 Merge pull request #172 from x1nixmzeng/master
Added API scanner tool
2015-02-21 11:46:41 -08:00
Ben Vanik 07c592942f Simple UI for frame seeking. 2015-02-21 11:19:00 -08:00
Ben Vanik 5227fe72b5 RequestSwap to force a swap from the GL thread. 2015-02-21 11:18:22 -08:00
x1nixmzeng 25f78ed325 Added API scanner tool
New tool for issue #171 which links to libxenia to dump the API usage
from packaged content
2015-02-21 17:33:56 +00:00
Ben Vanik 130c11a2ca GPU recording (--trace_gpu=file) and playback (gpu-trace-viewer file). 2015-02-20 07:47:06 -08:00
x1nixmzeng d091f12c81 Adjustments to wildcard engine
Fixed incorrect logic when checking at the end of the string - some of
the names had an added null character
Removed case sensitivity
2015-02-17 22:42:01 +00:00
Ben Vanik 17bc561045 Implement XMA* methods.
Fixes #156.
2015-02-16 22:22:42 -08:00
Ben Vanik 1204f35f1e --disable_framebuffer_readback 2015-02-16 21:58:24 -08:00
Ben Vanik 50b0746a26 XMA hardware spoofing when using direct register access.
This works for recent games that don't use the XMA* methods.
Upcoming CLs will add the XMA* method shims forthcoming.
2015-02-16 17:18:28 -08:00
x1nixmzeng 97ed221d8b Fixed writing data to the host device
New paths can now be created if they do not exist - this allows content
packages such as savedata to be written to disk
2015-02-16 23:04:10 +00:00
Ben Vanik 20f40a1da4 sprintf. 2015-02-16 10:07:46 -08:00
Ben Vanik 04b30fef99 Fixing warning. 2015-02-13 15:50:37 -08:00
x1nixmzeng 4f7761c5e2 Support for wildcard queries
Provides support for persistent wildcard file requests, as described in
#96
Also moved CanonicalizePath into common code (poly::fs)
2015-02-13 23:41:19 +00:00
Ben Vanik 3d980dd294 No-op FileDispositionInformation for NtSetInformationFile. 2015-02-13 12:00:34 -08:00
Ben Vanik a482d7968b Fixing bad log and warnings. 2015-02-13 11:29:07 -08:00
Ben Vanik a5eacc2972 Fixing polygon mode. 2015-02-13 11:28:06 -08:00
Ben Vanik 6598556446 Implementing RtlCompareString/RtlCompareStringN. Fixes #162. 2015-02-13 10:43:56 -08:00
Ben Vanik de5bad5fb2 Removing weird GPU masking. Fixes a lot of bad shader loads. 2015-02-13 10:14:28 -08:00
Ben Vanik 4915837c35 Fixes #163: scalar dest export regs. No more rainbow sky! 2015-02-13 10:12:19 -08:00
Ben Vanik c26329ece6 RG16 format. 2015-02-12 22:19:00 -08:00
Ben Vanik ea5175cab5 Fixing path issues for host FS. 2015-02-12 21:52:46 -08:00
Ben Vanik f8c7c97d54 Fix null deref. 2015-02-12 18:11:29 -08:00
Ben Vanik d22bfec53c Implementing XamContentGetCreator, always returning self for saves. 2015-02-12 17:31:07 -08:00
Ben Vanik 0ae79bc21a Implementing NtFlushBuffersFile stub. 2015-02-12 17:30:41 -08:00
Ben Vanik d4d88daa94 XamContentCreate. Seems to work! Fixes #152. 2015-02-12 16:57:53 -08:00
Ben Vanik 1ddb8f0c8f Content enumeration. 2015-02-12 16:57:52 -08:00
x1nixmzeng 0d0b406acf Resolving entry names
Some more string manipulation fluff
2015-02-13 00:26:02 +00:00
Ben Vanik dc731f6a31 Most of XamContent* methods, besides enumeration.
Progress on #152.
2015-02-12 14:16:43 -08:00
x1nixmzeng 9300551e31 Various fixes to resolving relative paths
Rewritten the canonicalization path logic to better handle complex
relative paths
2015-02-12 01:39:22 +00:00
Ben Vanik bde6cf0d85 Stubs for XamSessionCreateHandler+co; enough to make games skip it.
Fixes #150.
2015-02-11 16:41:10 -08:00
Ben Vanik c846ec30c3 Implementing XamGetExecutionId. 2015-02-11 16:26:07 -08:00
Ben Vanik 31bec99cbb Stubs for XLIVEBASE.
Fixes #159.
2015-02-11 15:24:47 -08:00
Ben Vanik 31b09f5aac XUsbcamGetState stub. 2015-02-11 13:40:45 -08:00
Ben Vanik 585e0b0e46 XamAlloc/XamFree. Fixes #153. 2015-02-11 10:16:54 -08:00
Ben Vanik dbe9b25a65 Logging for XMPCaptureOutput in #140. 2015-02-11 09:55:13 -08:00
Ben Vanik 90e489527a Enough of ObOpenObjectByName to handle basic usage + asserts for others.
Fixes #143.
2015-02-11 09:42:12 -08:00
Ben Vanik 2c49eec79f XamContentGetDeviceData stub and making XamContent* less schizophrenic.
Fixes #147.
2015-02-11 07:36:15 -08:00
Ben Vanik d1f1fa8951 Fixing NetDll_select. 2015-02-11 00:27:58 -08:00
Ben Vanik fa40308d09 Oh, that's why I did it - these aren't /actually/ HRESULTs. 2015-02-10 23:32:25 -08:00
Ben Vanik c34601469b Fixing overlapped return from XamUserReadProfileSettings. 2015-02-10 23:32:12 -08:00
Ben Vanik 2d08535672 Not sure why I did this. Next time self, leave a damn comment. 2015-02-10 23:01:55 -08:00