1. 27 Jun, 2020 18 commits
  2. 26 Jun, 2020 8 commits
  3. 25 Jun, 2020 5 commits
  4. 24 Jun, 2020 9 commits
    • Morph's avatar
      hid: Stub a series of "SevenSixAxisSensor" service commands · 2c930895
      Morph authored
      - Used by Captain Toad: Treasure Tracker Update 1.3.0
      
      While we're at it, fix the input parameters for SetIsPalmaAllConnectable and SetPalmaBoostMode
      2c930895
    • bunnei's avatar
      Merge pull request #4105 from ReinUsesLisp/resident-buffers · 0e1268e5
      bunnei authored
      gl_rasterizer: Use NV_vertex_buffer_unified_memory for vertex buffer robustness
      0e1268e5
    • bunnei's avatar
      Merge pull request #4083 from Morph1984/B10G11R11F · 2f2df9a4
      bunnei authored
      decode/image: Implement B10G11R11F
      2f2df9a4
    • David Marcec's avatar
      51083875
    • Fernando Sahmkow's avatar
      Merge pull request #4046 from ogniK5377/macro-hle-prod · 32343d82
      Fernando Sahmkow authored
      Add support for HLEing Macros
      32343d82
    • David Marcec's avatar
      Mark invalid IPC buffers as ASSERT_OR_EXECUTE_MSG · 82ecdd01
      David Marcec authored
      Previously if applications would send faulty buffers(example homebrew) it would lead to us returning uninitalized data. Switching from ASSERT_MSG to ASSERT_OR_EXECUTE_MSG allows us to have a fail safe to prevent crashes but also continue execution without introducing undefined behavior
      82ecdd01
    • ReinUsesLisp's avatar
    • ReinUsesLisp's avatar
      gl_stream_buffer: Use InvalidateBufferData instead unmap and map · 39c97f1b
      ReinUsesLisp authored
      Making the stream buffer resident increases GPU usage significantly on
      some games. This seems to be addressed invalidating the stream buffer
      with InvalidateBufferData instead of using a Unmap + Map (with
      invalidation flags).
      39c97f1b
    • ReinUsesLisp's avatar
      gl_rasterizer: Use NV_vertex_buffer_unified_memory for vertex buffer robustness · 41a40903
      ReinUsesLisp authored
      Switch games are allowed to bind less data than what they use in a
      vertex buffer, the expected behavior here is that these values are read
      as zero. At the moment of writing this only D3D12, OpenGL and NVN through
      NV_vertex_buffer_unified_memory support vertex buffer with a size limit.
      
      In theory this could be emulated on Vulkan creating a new VkBuffer for
      each (handle, offset, length) tuple and binding the expected data to it.
      This is likely going to be slow and memory expensive when used on the
      vertex buffer and we have to do it on all draws because we can't know
      without analyzing indices when a game is going to read vertex data out
      of bounds.
      
      This is not a problem on OpenGL's BufferAddressRangeNV because it takes
      a length parameter, unlike Vulkan's CmdBindVertexBuffers that only takes
      buffers and offsets (the length is implicit in VkBuffer). It isn't a
      problem on D3D12 either, because D3D12_VERTEX_BUFFER_VIEW on
      IASetVertexBuffers takes SizeInBytes as a parameter (although I am not
      familiar with robustness on D3D12).
      
      Currently this only implements buffer ranges for vertex buffers,
      although indices can also be affected. A KHR_robustness profile is not
      created, but Nvidia's driver reads out of bound vertex data as zero
      anyway, this might have to be changed in the future.
      
      - Fixes SMO random triangles when capturing an enemy, getting hit, or
      looking at the environment on certain maps.
      41a40903