summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-03-22video_core: Implement API agnostic view based texture cacheReinUsesLisp
Implements an API agnostic texture view based texture cache. Classes defined here are intended to be inherited by the API implementation and used in API-specific code. This implementation exposes protected virtual functions to be called from the implementer. Before executing any surface copies methods (defined in API-specific code) it tries to detect if the overlapping surface is a superset and if it is, it creates a view. Views are references of a subset of a surface, it can be a superset view (the same as referencing the whole texture). Current code manages 1D, 1D array, 2D, 2D array, cube maps and cube map arrays with layer and mipmap level views. Texture 3D slices views are not implemented. If the view attempt fails, the fast path is invoked with the overlapping textures (defined in the implementer). If that one fails (returning nullptr) it will flush and reload the texture.
2019-03-21Merge pull request #2260 from lioncash/sdlbunnei
input_common/sdl: Correct return values within GetPollers implementations
2019-03-20common/bit_util: Fix bad merge duplicating the copy constructorLioncash
Introduced as a result of #2090, we already define the copy constructor further down below, so this isn't needed.
2019-03-20Merge pull request #2090 from FearlessTobi/port-4599bunnei
Port citra-emu/citra#4244 and citra-emu/citra#4599: Changes to BitField
2019-03-20Merge pull request #2262 from lioncash/enumbunnei
file_sys/content_archive: Amend name of Data_Unknown5 enum entry
2019-03-20Merge pull request #2273 from lioncash/guardbunnei
common/uint128: Add missing header guard
2019-03-20common/uint128: Add missing header guardLioncash
2019-03-20common/uint128: Add missing top-file source textLioncash
2019-03-20Merge pull request #2268 from lioncash/codesetbunnei
core/kernel: Migrate CodeSet to its own source files
2019-03-20Merge pull request #2272 from lioncash/boostbunnei
common/CMakeLists: Amend boost dependency
2019-03-20common/CMakeLists: Amend boost dependencyLioncash
When #2247 was created, thread_queue_list.h was the only user of boost-related code, however #2252 moved the page table struct into common, which makes use of Boost.ICL, so we need to add the dependency to the common library's link interface again.
2019-03-20Merge pull request #2267 from FernandoS27/fix-2238bunnei
Fix crash caused by #2238.
2019-03-20Merge pull request #2247 from lioncash/includebunnei
common/thread_queue_list: Remove unnecessary dependency on boost
2019-03-20Merge pull request #2224 from lioncash/opusbunnei
hwopus: Leverage multistream API for decoding regular Opus packets
2019-03-20Merge pull request #2239 from FearlessTobi/port-4684bunnei
Port citra-emu/citra#4684: "frontend: qt: fix a freeze where if you click on entry in the game list too fast, citra will hang"
2019-03-20kernel/process: Make MapSegment lambda reference parameter constLioncash
The segment itself isn't actually modified.
2019-03-20kernel: Move CodeSet structure to its own source filesLioncash
Given this is utilized by the loaders, this allows avoiding inclusion of the kernel process definitions where avoidable. This also keeps the loading format for all executable data separate from the kernel objects.
2019-03-20Merge pull request #2264 from lioncash/linkerbunnei
core/loader: Remove vestigial Linker class
2019-03-19Merge pull request #2263 from FearlessTobi/port-4697bunnei
Port citra-emu/citra#4697: "Fix getopt on systems where char is unsigned by default"
2019-03-19Fix crash caused by 2238.Fernando Sahmkow
2019-03-19loader: Remove Linker classLioncash
Given the class is now currently unused, it can be removed.
2019-03-19loader: Remove Linker inheritance from NRO and NSO loadersLioncash
Neither the NRO or NSO loaders actually make use of the functions or members provided by the Linker interface, so we can just remove the inheritance altogether.
2019-03-19Fix getopt on systems where char is unsigned by defaultxperia64
2019-03-19file_sys/content_archive: Amend name of Data_Unknown5 enum entryLioncash
While we're at it, give each entry some documentation.
2019-03-18Merge pull request #2258 from lioncash/ambunnei
service/am: Supply remaining missing IAudioController functions
2019-03-18input_common/sdl: Correct return values within implementations of GetPollers()Lioncash
In both cases, we weren't actually returning anything, which is undefined behavior.
2019-03-18input_common/sdl: Use a type alias to shorten declaration of GetPollersLioncash
Just makes the definitions a little bit more tidy.
2019-03-18Merge pull request #2259 from lioncash/fspbunnei
fsp_srv: Unstub SetCurrentProcess
2019-03-18Merge pull request #2254 from lioncash/redundantbunnei
input_common/sdl_impl: Minor cleanup in SDLState constructor
2019-03-18fsp_srv: Unstub SetCurrentProcessLioncash
This just acts as a basic setter for a given PID value and performs no further checking, so we can just store the passed in value.
2019-03-18service/am: Add basic implementation of ChangeMainAppletMasterVolumeLioncash
All this does is supply a new volume level and a fade time in nanoseconds for the volume transition to occur within.
2019-03-18service/am: Unstub SetTransparentVolumeRate()Lioncash
Like the other volume setter, this mainly just sets a data member within the service, nothing too special.
2019-03-18service/am: Unstub SetExpectedMasterVolume()Lioncash
This function passes in the desired main applet and library applet volume levels. We can then just pass those values back within the relevant volume getter functions, allowing us to unstub those as well. The initial values for the library and main applet volumes differ. The main applet volume is 0.25 by default, while the library applet volume is initialized to 1.0 by default in the services themselves.
2019-03-17Merge pull request #2238 from lioncash/threadbunnei
kernel/thread: Amend conditional test and assignment within UpdatePriority()
2019-03-17Merge pull request #2257 from MerryMage/boost-1.66Mat M
CMakeLists: Raise minimum Boost requirement to 1.66.0
2019-03-17CMakeLists: Raise minimum Boost requirement to 1.66.0MerryMage
Required due to bugfix in boost for changed template resolving rules in GCC 7.3.0 in C++17 mode
2019-03-17Merge pull request #2252 from bunnei/move-page-tablebunnei
core: Move PageTable struct into Common.
2019-03-17input_common/sdl_impl: Make lambda capture more specific in SDLState constructorLioncash
We don't need to universally capture by reference. We specifically just need to capture the this pointer.
2019-03-17input_common/sdl_impl: Remove unnecessary std::chrono::duration constructionLioncash
Specifying the time unit itself is sufficient here.
2019-03-17input_common/sdl_impl: Remove unused variable in SDLState constructorLioncash
2019-03-17Merge pull request #2251 from bunnei/skip-zero-flushbunnei
gl_rasterizer: Skip zero addr/sized regions on flush/invalidate.
2019-03-16Merge pull request #2249 from lioncash/ipcbunnei
ipc_helpers: Allow pushing and popping floating-point values
2019-03-16Merge pull request #2246 from lioncash/opus-forkbunnei
externals: Update opus to latest master
2019-03-16Merge pull request #2245 from lioncash/unused-defbunnei
kernel/thread: Actually remove the definition of ExitCurrentThread()
2019-03-16core: Move PageTable struct into Common.bunnei
2019-03-16gl_rasterizer: Skip zero addr/sized regions on flush/invalidate.bunnei
2019-03-16Merge pull request #2244 from bunnei/gpu-mem-refactorbunnei
video_core: Refactor to use MemoryManager interface for all memory access.
2019-03-16Merge pull request #2243 from bunnei/mem-simplify-cachebunnei
memory: Simplify rasterizer cache operations.
2019-03-16Merge pull request #2129 from FernandoS27/cntpctbunnei
Correct CNTPCT from using CPU Cycles to using Clock Cycles
2019-03-16ipc_helpers: Allow pushing and popping floating-point valuesLioncash
Certain values that are passed through the IPC buffer are actually floating point values, not solely integral values.