Revisions of decaf-emu
Klaus Kämpf (kwk)
accepted
request 648251
from
Duarte Pousa (xenonpk)
(revision 24)
- Update to version 20181107: * cafe/coreinit: Only call driver init function if it is set. * tools/latte-assembler: Fix build. * cafe/gx2: Set GX2InitDepthBufferRegs ARRAY_MODE to surfaceInfo tileMode. * Implement nn::ipc CafeOS client and IOS server and add first ACP services. * common: Add make_filled_array function. * nn: Add ok(), failed() methods to Result. * ios/kernel: Fix kernel thread TLS. * ios/kernel: Change allocateProcessStatic to use alignof and placement new. * ios/kernel: Fix ios_kernel_timer.h * cafe/coreinit: Fix ipc driver submit event name. * cafe/coreinit: Call driverOnInit at startup. * cpu: Fix phys_this. * cafe/gx2: Fix unsigned / signed comparison. * Add a new tiling library and use it for untiling in gfdtool. * cafe/gx2: Add support for writing cubemaps to DDS file. * decaf: Improve logger creation. * vulkan: Use an SRGB swap chain rather than RGB. * vulkan: Allow some invalid sampler XY filters. * cafe/gx2: Implemented some needed GX2Perf methods. * vulkan: Implement support for Geometry Shaders! * spirv: Improved export handling, added support for gl_LayerID. * vulkan: Added validation bypass for dual-bound textures. * spirv: Improved vertex attribute fetching. * spirv: Improved applySelMask implementation. * spirv: Write floats as bitcasted integers. * vulkan: Added some missing needed extensions. * vulkan: A bunch of surface management changes... * vulkan: Fixed issue with surface swizzles being lost in error. * vulkan: Added support for DISABLED special op. * vulkan: Improved shader debug dumping names and formats. * spirv: Updated loops to track pixel state using the stack. * spirv: Updated KILL instructions to exit shaders. * vulkan: Added support for Occlusion Queries. * spirv: Allowed more cases of fragment coordinate locations. * spirv: Improved CBUFFER structure generation. * spirv: Improved OMOD_D2 implementation. * spirv: Added support for the GET_GRADIENTS instructions. * libgpu: Fixed some latte formats being described incorrectly. * cafe/nn_temp: Fixed static data not being registered. * spirv: Updated CUBE instruction implementation. * cafe/coreinit: Fixed MPTaskQueue locking up due to missing atomics. * cafe/gx2: Fixed incorrect color buffer tile type being configured. * cafe/gx2: Implemented GX2GetMainCoreId function. * cafe/gx2: Fixed geometry shader uniform block ids being cleared. * cafe/gx2: Fixed registers not being initialized to 0. * cafe/gx2: Added support for OnFlip event callbacks. * cafe/gx2: Added detection for unsupported event callbacks. * cafe/gx2: Correctly subtract sample counts in GX2 occlusion results. * vulkan: Remove pragma optimizes included in error. * vulkan: Improved support for SET/CLEAR logic ops. * vulkan: Consistently use front triangles for polygon offsets. * spirv: Fixed incorrect implementation of SIN/COS. * vulkan: Added blit optimization for surface updating. * vulkan: Use range combiner when reading surface data. * vulkan: Added support for compatible surface consolidation. * vulkan: Added unique identifier to surface debug names. * vulkan: Fix slice selection for 3D textures. * vulkan: Better unified memory/surface management. * vulkan: Fixed incorrect information in a comment. * spirv: Centralized generic shader prolog generation. * vulkan: Improved descriptor set management. * vulkan: Fixed corruption in staging buffer management. * vulkan: Fixed hashing not playing nicely with murmur. * vulkan: Added support for geometry shader based RECTLIST rendering. * vulkan: Added support for sampling UINT textures. * vulkan: Added support for additional surface tile modes. * vulkan: Added faked support for MSAA surface types. * vulkan: Fix some minor surface format inconsistencies. * vulkan: Remove unused utility function getSurfaceFormat. * cafe/gx2: Implement some modes of GX2SetSpecialState * vulkan: Added support for viewport control registers. * cafe/gx2: Rewrite GX2Init{Color,Depth}BufferRegs. * spirv: Implemented support for the LD instruction. * vulkan: Move tiling alignment into the Driver. * gpu: Fix ringbuffer wakes getting lost sometimes. * vulkan: Added names to vulkan objects for easier debugging. * vulkan: Fixed memory writes not happening on retire. * spirv: Fixed minor code-smell in generator. * vulkan: Improved surface manager and unified memory system. * libgpu: Fixed surface tiler incorrectly handling multiple slices. * common: Added support for randomized data hashes. * libgpu: Added configuration to generate debuggable shaders. * spirv: Fixed errors causing GET_TEXTURE_INFO to fail to compile. * spirv: Correctly cast types being sent for masked writes. * spirv: Fixed texture constant offsets for array images. * spirv: Fix vertex shader texture fetches. * vulkan: Fix issue with swapchains being rendered before ready. * vulkan: Handle register synchronization requests. * spirv: Fix bug with ELSE blocks in nested if groups. * vulkan: Refactor surface management to handle varying widths. * vulkan: Fixed issue with incorrect surface transition. * vulkan: Fixed issue pointer to an out-of-scope object. * spirv: Added support for outputting computed z. * decafsdl: Use a separate vulkan queue for the driver. * vulkan: Added support for disabling z-clipping. * spirv: Implemented support for front facing variable. * decafsdl: Updated vulkan to use VulkanHPP dynamic loader. * spirv: Implemented MOVA_INT instruction. * decafsdl: Fixed incorrect descriptor pool setup. * vulkan: Improved handling of disabled shader stages. * gpu: Added handling of COPY_DW command. * vulkan: Added detection of stream-out draws. * gx2: Fixed stream out incorrectly configuring context packet. * opengl: Fixed force_sync mode running at INF FPS. * gpu: Fixed compiler warning in pm4 processor. * spirv: Fixed incorrect texture sampling argument validation. * vulkan: Implemented unified memory management system. - Update to version 20181019: * Oops! Add missing files from previous commit. * cafe/gx2: Implement GX2DrawStreamOut. * cafe/hle: Add support for calling constructors of registered data symbols. * vulkan: Fixed some slight formatting errors. * vulkan: Update lastHashedIndex if hashing matches on data buffers. * vulkan: Fix surfaces being rehashed more than needed. * spirv: Implemented GET_TEXTURE_INFO instruction. * spirv: Fixed some compiler warnings. * spirv: Corrected issue with addressing register behaviour. * spirv: Implemented MULLO instructions. * cafe/gx2: Fix GX2InitSampler. * Fix pm4 type0 register id. * Move cafe::nn::Result to nn::Result. * pm4-replay: Increase ringbuffer size. - Update to version 20181017: * spirv: Implemented missing FLOOR instruction. * vulkan: Handle partially premultiplied targets. * vulkan: Use config to enable/disable vulkan debug features. * vulkan: Added assertions for use of unsupported PM4 commands. * vulkan: Cleaned up sampler generation code. * vulkan: Elide illegal draw commands. * spirv: Correctly incorrect unsigned norm decoding. * spirv: Fixed attribute buffer elements not being decoded. * spirv: Fixed issue where input buffers W value defaulted to 0. * spirv: Fix BitfieldExtract being passed the wrong parameter types. * vulkan: Fixed issue with default color write masking. * vulkan: Added support for stencil buffers. * spirv: Handle stack indexes being handled incorrectly. * vulkan: Improved surface handling substantially. * spirv: Fixed issue with uint4 shader outputs. * vulkan: Correctly include disabled attachments in renderpasses. * gpu: Use SQ_TILE_TYPE instead of isDepthBuffer. * vulkan: Improved logging and reporting behaviours. * common: Added some platform-specific debugging functions. * vulkan: Fix sampler depth compares being enabled in error. * vulkan: Update compare texture reads to put 0 in W. * vulkan: Improved framebuffer attachment determination. * vulkan: Added support for surface copying. * vulkan: Added support for FETCH4 texture gathering. * vulkan: Added support for integer-based framebuffers. * vulkan: Fixed bug with type checking. * vulkan: Use framebuffer to decide renderArea instead of scissor. * vulkan: Added renderPass to pipeline description. * vulkan: Fixed issue where some depth formats were depth capable. * vulkan: Changed shader dump code address to be hex. * vulkan: Fixed an uninitialized variable. * vulkan: Implemented most of the texturing instructions. * vulkan: Fixed bswap8in16 to actually work with 16-bit integers. * vulkan: Fixed register writes to be delayed on the ALU group. * gx2: Fix issue where PS_INPUT was assigned incorrect ids. * vulkan: Added support for additional depth buffer formats. * vulkan: Update drawing to cancel if it would be illegal. * vulkan: Added support for CUBEMAP textures. * vulkan: Added a few more SPIRV operations. * vulkan: Fixed bug with some input attribute types. * spirv: Add support for POSITION_ENA aka FragCoord. * spirv: Redo some of the loop stuff. * vulkan: Added basic support for looping in SPIRV generator. * vulkan: Implemented support for uniform buffer based shaders. * vulkan: Fixed error in default value generation. * vulkan: Implemented DOT4_IEEE for SPIRV generator. * vulkan: Correct error in cbuffer variable creation. * vulkan: Improved depth bias handling. * vulkan: Made equality-based alpha testing more resilient. * vulkan: Fix Z and Y corrections in SPIRV shaders. * vulkan: Added support for rasterization logic ops. * vulkan: Implement polygon drawing modes. * vulkan: Added support for line widths. * vulkan: Only debug report if the extension is enabled. * vulkan: Fixed a bunch of ALU OP2's not using their second parameter. * vulkan: Fix issue with SPIRV stack using wrong storage classes. * vulkan: Keep all staging buffers persistently mapped. * vulkan: Added pooling of descriptor sets. * vulkan: Added pooling of staging buffers. * vulkan: Fixed miss-named variable in draw handling. * vulkan: Added debugger UI performance counters. * vulkan: Added cacheing of attribute buffers. * vulkan: Fixed issue with number of active uniform buffers. * vulkan: Added PM4 CB tracking to avoid unneeded rehashing. - Update to version 20181014: * pm4-replay: Update to use new gpu ringbuffer interface. * cafe/nn: Add Result::Description values. - Update to version 20181012: * cafe/loader: Fix linking of circular dependencies. - Update to version 20181011: * Add a .clang-format which can be used as a guideline when formatting code. * Rename ENUM_NAMESPACE_{BEG,END} to ENUM_NAMESPACE_{ENTER,EXIT}. * Rename BITFIELD to BITFIELD_BEG. * Rename CHECK_MEMBER_OFFSET_START to CHECK_MEMBER_OFFSET_BEG. * Fix copy pasta with hfio_path * latte/pm4: Add WaitRegMem and WaitMem pm4 packets. * Use pointer.get instead of pointer.getRawPointer where applicable. * cpu: Change Pointer::get to use a new pointer_get_type instead of deref type. * cpu: be2_val add helper to access Pointer .get() * cpu: Change pointer dereference type to not wrap 1 byte values in be2_val. * cpu: Fix dereference_type for Pointer<void> * latte: Remove unused DECAF_SET_SWAP_INTERVAL pm4 command. * latte: Remove unused DECAF_DEBUGMARKER pm4 command. * latte: Add CP_COHER_STATUS register id. * cafe/gx2: Cleanup GX2DebugTag stuff. * latte: Fix pm4 reader for reading empty spans. * cafe/gx2: Fix getSurfaceUse to replicate the equivalent function in gx2.rpl * cafe/gx2: Add GX2CheckSurfaceUsVsFormat. * cafe/gx2: Implement GX2{Get,Set}MiscParam. * cafe/tcl: Implement TCLGetInfo and TCLSetHangWait. * cafe/coreinit: Fix export for __OSPhysicalToEffective{Cached,Uncached}. * filesystem: Fix write permission check for Append mode. * ios/fs: Use FLAGS_BEG instead of ENUM_BEG for FSAWriteFlag * cafe/coreinit: Implement some FSA commands. * decaf: Add support for mounting /dev/hfio01 * cafe/coreinit: Implement some FSA functions. * cafe/gx2: Implement GX2DebugCaptureInterface. * cafe/gx2: Merge gx2_swap into gx2_display. * Fix MacOS builds for submodule based SDL2 - Update to version 20181007: * cafe/vpadbase: Stub VPADBASEGetHeadphoneStatus. * New GPU & GX2 command buffer implementation. * latte/pm4: Add support for writing a be2_val span. * cafe/gx2: Move GX{Get,Set}GPUTimeout to gx2_state.cpp * cafe/coreinit: Implement __OSSetInterruptHandler. * cafe/kernel: Different callback types for user and kernel interrupts. * cpu: Add Pointer::get which returns dereference typed pointer. - Update to version 20181006: * Implementation of GX2SubmitUserTimeStamp * ios/mcp: Fix sdcard permissions for applications without a cos.xml * gpu: Cleanup MemWrite and EventWriteEop. * latte: Add VGT_EVENT_INDEX::TIMESTAMP * latte: Add CP_INT_CNTL and CP_INT_STATUS registers. * cafe/gx2: Add support for writing Type0 PM4. - Update to version 20181005: * gpu: Improve eventWriteEOP. - Update to version 20181003: * coreinit: Fix string_copy in FSMountAsync. - Update to version 20181001: * cafe/loader: Fix missing IPCLDriver initialisation core 0 / 2. - Update to version 20180930: * vulkan: Added missing DECAF_VULKAN ifdef for VMA. * vulkan: Enabled FPS/Frametime reporting for vulkan backend. * vulkan: Switch to using vk_mem_alloc for GPU heap management. * vulkan: Fixed error due to descriptor pool exhaustion. * vulkan: Added warning skip for missing AdvancedBlending. - Update to version 20180929: * debugger/ui: Change NULL to 0 for non-pointer type. * cafe/gx2: Rename GX2ContextState profileMode to profilingEnabled. * cafe/ndm: Stub GetDaemonStatus. * cafe/gx2: Add initialisition of profile mode and toss stage. * cafe/gx2: Rename GX2BeginDisplayListEx unknown argument. * latte: Add some extra register names. * Add support for PM4 INDIRECT_BUFFER_CALL_PRIV. * cafe/kernel: Use MCP commands to load shared data. * ios/mcp: Implement MCP request GetFileLength. * ioc/mcp: Fix MCPLoadFile for shared data directories. * Add some missing #ifdef DECAF_VULKAN * Fix latte-assembler compile. * vulkan: Added missing bit for non-filled primitives. * vulkan: Added support for instance step rates. * vulkan: Fixed string not using right constant. * Use makeSwitch for alpha test. * Use spv::Builder::IF for ALU_OP2_KILL* instructions. * Add FMT_8_24 depth format. * 2many trailing whitespace 4me * Fix usage of COUNT_3 field. * vulkan: Implemented a monsterous amount of rendering. * Share renderer code between pm4-replay and decaf-sdl. * cafe/gx2: Do not crash when dumping shaders with no binary data. * decafsdl/vulkan: Break on Vulkan warnings and errors. * latte: Updated SQ_ALU_ENCODING to be less confusing. * latte: Rename MaxAttributes to MaxAttribBuffers * Added glslang dependancy for Vulkan renderer. * libgpu: Fixed incorrect latte PS buffer resource locations. * decafsdl: Cleaned up Vulkan device creation structs. - Update to version 20180917: * cafe/snduser2: Stub AXFXMultiChReverb. * cafe/snduser2: Reuse the AXAuxCallbackData from sndcore2. * cafe/snduser2: Move AXART functions to own file. * cafe/snduser2: Stub SPInitSoundTable and implement SPGetSoundEntry. * cafe/snduser2: Fix some copy-pasta in AXFXReverbStd. * cafe/snduser2: Stub AXFXReverbHi. * cafe/snduser2: Refactor AXFXReverbStdExp to match AXFXReverbHiExp. * cafe/snduser2: Stub AXFXReverbHiExp. * cafe/snduser2: Stub AXFXReverbStd. * cafe/sndcore2: Remove snduser2 functions which accidentally made it into sndcore2. * cafe/snduser2: Stub AXFXReverbStdExp. * cafe/snduser2: Stub AXFXChorus. * cafe/snduser2: Stub AXFXChorusExp. * cafe/snduser2: Implement AXFXDelayExpGetMemSize. * cafe/snduser2: Implement some AXFXDelay functions. * cafe/snduser2: Implement AXFX hooks. * More implementation of snduser2_axfx * cafe/loader: Fix LiCheckFileBounds. * cafe/nn_olv: Implement DownloadedPostData class. * cafe/nn_olv: Implement DownloadedDataBase class. * cafe/nn_olv: Implement nn::olv::InitializeParam class. * common: Add char16_copy to strutils. * cafe: Fix ppc interface for const member functions. * cafe/snduser2: Stub MIXUpdateSettings. * cafe/coreinit: Fix FS client registration. * cafe/coreinit: Fix snprintf. * Update libbinrec * Update fmtlib to 5.2.0 - Update to version 20180914: * ios/acp: Create /dev/acp_main thread. * ios/mcp: Fix the lle_modules config setting. * ios/mcp: Fix the returned titleId when passed in DefaultTitleId. * ios/mcp: Fix permissions when running games unable to load cos.xml * cafe/loader: Fix error message. * cafe/coreinit: Fix driver registration when some interface methods are NULL. * cafe: Do not allow host pointers in HLE functions. - Update to version 20180912: * cafe/loader: Fill in some missing error messages. * cafe/loader: Fix oopsy in string_copy for LOADER_GetPathString. - Update to version 20180912: * cafe/vpad: Implement VPADGetTPCalibratedPointEx * Bump excmd * Fix some cast warnings. * ios: Remove unused make_stack_string. * cafe/loader: Fix oopsy iteration through module list. * common: Remove format_string from strutils. * ios: Fix some type cast warnings. * ios: Fix empty switch compiler warnings. * Add string_copy to common/strutils.h and use it instead of strncpy. * cafe/coreinit: Change snprintf to use fmtlib. * cpu: Add size_t index_type for be2_array. * Remove unused kernel_gameinfo files from the old kernel. * cafe/kernel: Fix rebase oopsy. * cafe/kernel: Load title info from MCP. * cafe/coreinit: Rename isAppDebugLevelUnknown3 to isAppDebugLevelNotice. * cafe/coreinit: Fix some systeminfo values not being read from kernel info. * cafe/coreinit: Fix some log message formats in dynload. * cafe/kernel: Add GetInfo type 6. * decaf: Create sdcard path if not exists. * ios/mcp: Add PrepareTitle and SwitchTitle commands. * ios/kernel: Add templated allocProcessStaticData. * ios/mcp: Fix translateUCError for UCError::OK. * ios/kernel: Add ResourcePermissionGroup::All enum. * cafe/kernel: Implement IOS_Ioctl{Async}. * cafe/loader: Implement IPCLDriver and use it for file reading. * ios/mcp: Implement MCPLoadFile command. * ios/fs: Implement IPC helper FSAReadFileWithPos. * cafe/loader: Add a static data heap. * cafe/kernel: Add getMpcHandle syscall for loader. * cafe/kernel: Fix ipckDriverAllocateRequestBlock setting wrong clientPid. * kernel: Implement very basic process switching from kernel to mainapp. * cafe/kernel: Implement kernel IPC. * cafe/kernel: Implement IPCKDriver properly. * common: Fix bitfield for signed enum types. * ios/mcp: Give the CafeOS kernel and master title infinite permissions!!!!1 * cafe/kernel: Add a pointer version of effectiveToPhysical. - Update to version 20180909: * gpu/vulkan: Initial support for color buffer clearing. * pm4: Cleaned up scan target handling across PM4. * cafe/kernel: Improve interrupt and exception handling. * Remove unused GPU_FLIP_INTERRUPT. * cafe/kernel: Clean up initialisation of sub core context entry into coreinit. * Store exception info in dar / dsisr / srr0. * cafe/coreinit: Remove unused function declaration. * cafe/hle: Align data symbols in generated RPLs. * cpu: Change waitNextInterrupt to make timeout optional. * cafe/kernel: Move NumRamPartitions to header. * ios: Fix order of vaddr and paddr in IoctlVec. * ios/mcp: Add MCPTitleId type. * cafe/kernel: Add getCurrentTitleId and getCurrentKernelProcessId. - Update to version 20180907: * Fix pm4-replay build. * gpu: Fix oopsies with vulkan driver debugger info. * decafsdl: Cleaned up Vulkan driver initialisation. * debugger/ui: Added support for Vulkan performance metrics. * pm4: Added buffer information to SetBuffer command. * debugger/ui: Refactored graphics performance window drawing. * libgpu: Improved GPU driver interface. * decafsdl: Do not start rendering until the game is loaded. * debugger: Improved UI render backend initialisations. * decafsdl: Fix Vulkan backend using Windows-specific function. - Update to version 20180904: * vulkan: Fixed missing ifdef block for ImGui helpers. * vulkan: Implemented initial SDL/DbgUI rendering. * Update pm4-replay to use physical memory. * cafe: Update TinyHeap to have a phys_ptr and virt_ptr based implementation. - Update to version 20180903: * Change GPU and PM4 to correctly using physical memory addresses. - Update to version 20180902: * cafe/coreinit: Fix LCAlloc for full single alloc. * ios/acp: Implement initialisation of /dev/acpproc. * Change initial config values to match region setting in decaf config. * decaf: Initialise SLC config * debugger: Rearranged folder structure in preparation for Vulkan. * tests: Correct 'disasembly' - Update to version 20180901: * cafe/loader: Fixed crashes from failed OSDynLoad_Acquire's. * cafe/coreinit: Fixed size/count being transposed in fs reads. * Fixed oopsy with GenericPath's. * fs: Ensure that directory paths are terminated with a slash. * cafe/nn_act: Generate a Mii that actually works with NLand. * nn_act: Fill out FFLStoreData structure and improve GetMii. * ios: Fixed worker thread not consuming all work. * cafe/coreint: Fix LCAlloc. * cafe/kernel: Only mount sdcard for games with permissions. * cafe/loader: Fix LiCpu_RelocAdd for R_PPC_EMB_SDA21. * cafe/gx2: Implement tiling apertures on top of TCL. * cafe/tcl: Implement TCL{Alloc,Free}TilingAperture. * cafe/hle: Add support for library dependencies. * cafe: Implement physicalToEffective{Cached,Uncached}. * cafe/sndcore2: Fixed various errors from new memory model change. * cafe/sndcore2: Fixed audio hardware being initialized with wrong output rate. * sdl/audio: Fixed audio initialization errors. * cafe/coreinit: Fix MemAllocator static data not being initialized. * cafe/nn_nfp: Add missing RegisterDataInternal. * cafe/coreinit: Fixed OSFastMutex being placed in wrong contention queue. * cafe/fs: Fix incorrectly specified max path length. * common: Fix type conversions in platform_winapi_string. * cafe/coreinit: Update coreinit_atomic to use be2_atomic. * cpu: Improve be2_atomic, adding missing methods. * cafe/hle: Fixed inconsistent kernel trace logging. * Revert "cafe/hle: Fixed inconsistent kernel trace logging." * Update libbinrec to latest master. * cafe/hle: Fixed inconsistent kernel trace logging. * cafe/hle: Fixed error with va_arg handling. * cafe/dynload: Fixed refcount in AcquireContainingModule. * cafe/hle: Fixed threads writing result data to other cores. * cafe/sndcore2: Fix alarm thread priority. * cafe/coreinit: implement handling of thread types * cafe/coreinit: Fix LCAlloc scanning for free bits. * ios/mcp: Add missing call to initialiseStaticPpcThreadData. * ios/kernel: Fix scheduling a nullptr thread when a thread queue is empty. * ios/kernel: Fix heapFree with nullptr consecutive block. * ios/kernel: Start hardware thread after setup. * ios/kernel: Initialise LT_INTMR_AHBALL_ARM explictily. * cafe/loader: Reorder to avoid any usage of a null pointer. * cafe/nn_ac: Add some C API functions. * cafe/hle: Fix 64-bit vararg alignment. * cafe/coreinit: Fix LCAlloc not allowing full use of the cache. * cafe/nsysnet: Rename endian functions to avoid conflict with macros in MacOS headers. * cafe/coreinit: Fix exiting from coreinit. * cafe/gx2: Fix type conversion error. * cafe/dmae: Remove old using namespace. * cafe/dmae: Fix DMAEGetRetiredTimeStamp. * cpu: Add be2_atomic, used by coreinit_spinlock. * cafe/kernel: Fix argstr when cos.xml does not exist. * cafe/coreinit: Fix dynload internalAcquire uninitialised numEntryModules. * cafe/loader: Fix error codes in LiLoadRPLBasics attempts. * cafe/loader: Fix LOADER_Init passing unresolved module name to LiLoadForPrep. * cpu: Disable fmtlib convert_to_int for be2_val. * Update fmtlib to latest master. * cafe/hle: Add virtual destructor to LibrarySymbol. * cafe/zlib: Fix some type conversions. * cafe/kernel: Remove ded code. * cafe: Change cafe_ppc_interface register indices to int type. * cafe/loader: Ignore R_PPC_NONE relocations. * Improve printing of kernel trace string arguments. * Fixed DMAE not initializing its static data. * debugger: Fix IsItemHovered call for graph plot. * cafe/kernel: Fix duplicated nia in core register dump. * cpu/jit: Allocate verify buffer on heap instead of stack. * decaf-sdl: Add exports to use prioritise discrete Nvidia and AMD GPUs. * decaf-sdl: Add a manifest file for Windows DPI awareness. * decaf-sdl: Use SDL_GL_GetDrawableSize for DPI aware rendering. * Update SDL to 2.0.8 * debugger: Fix disassembly address input. * debugger: Fix stack window line hover working through other windows. * debugger: Fix disassembly window line hover working through other windows. * debugger: Remove scrollbar in memory view. * Update imgui to v1.62 * cafe/coreinit: Fix some indentation in dynload. * Fix some log format specifiers. * cafe/coreinit: Fix initialiseThreadState trampling thread id. * cafe/hle: Add a fileName in RPL FileInfo section. * cafe/coreinit: Implement OSDynLoad_AcquireContainingModule. * ios/kernel: Fix rescheduling thread pop. * ios/auxil: Ensure we have an open FSA handle for the current process. * cafe/coreinit: Fill out notifyData for coreinit rpl. * Fix segfault stack traces. * debugger/gdb: Add support for qXfer:threads:read. * cafe/coreinit: Add missing RegisterDataInternal for coreinit_exception. * cafe/loader: Fix pathNameLen in LOADED_Prep. * cafe: Remove constexpr from invoke_trace_host_impl. * cafe/coreinit: Fix call to __cpp_exception_init_ptr. * cpu: Fix mem::untranslate. * cafe: Implement shared data. * cafe/coreinit: Call gx2 notify flush functions from cache * cafe/coreinit: Fix dynload doImports infinite loop. * cafe/coreinit: Implement OSEffectiveToPhysical. * cafe: static const -> static constexpr in va_list. * cafe/gx2: Add missing call to initialiseGx2rAllocator. * cafe/swkbd: Add missing RegisterDataInternal. * gpu/glsl2: Fix CUBE missing semicolon. * ios/auxil: Add missing call to initialiseStaticImThreadData. * ios/auxil: Rename sData to sImThreadData in ios_auxil_im_thread. * cafe/loader: Fix LiBounceOneChunk using wrong buffer memory. * tools/latte-assembler: Fix latte-assembler compile. * tools/pm4-replay: Fix pm4 replay. * cafe/kernel: Temporarily disable addJitReadOnlyRange for all read only sections * cafe/coreinit: Fix OSPanic exit call. * decaf: Add hour to log timestamp. * decaf: Fix year in log filename. * cafe/kernel: Fix allocateVirtualAddress. * cafe/loader: Fix fileType toggling in LiLoadRPLBasics. * cafe/coreinit: Implement OSGetSystemMessageQueue. * cafe: Fix va_list register index. * cafe/loader: Fix direction of preTrampBuffer allocations. * cafe/loader: Fix trampolines using addi instead of ori. * cafe/loader: Tabs -> spaces. * cafe/loader: Fix ZLIB_UncompressFromStream for sections with multiple chunks. * Change fixed_point to non-broken version. * Fixed issue with TLS section validation. * Fix issue with module name checking (i.e.: nn would match nn_act). * Fix usage of single threaded spdlog sink to multi threaded spdlog sink. * ios: Add missing includes for worker thread. * common: Use MultiByteToWideChar and WideCharToMultiByte for WinApi strings. * ios: Rewrite thread scheduling and hardware interrupts. * ios/fs: Ensure the async task thread is started before the fsa thread. * cmake: Add be2_ natvis to project. * cpu: Fix cpu::interrupt with uninitialised cores. * ios/kernel: Fix scheduling of threads with equal priority. * ios: Add thread names and trace logging for IOS thread switching. * Delete old be_ structures. * Update fixed_point library. * Update fmtlib to 5.1.0 and spdlog to 1.1.0 * cpu: Fix format_arg for const char cpu pointers. * cafe/coreinit: Fix thread trace logging. * ios: Initial attempt at asynchronous IO. * decaf: Fix default trace filter config * Remove some pragma opt. * ios/kernel: Fix big oopsy with ipc thread error code handling. * ios/bsp: Implement /dev/bsp. * ios/kernel: Thread minPriority is actually maxPriority. * cafe/coreinit: Call bspInitializeShimInterface in startup. * cafe/coreinit: Implement missing dynload functionality. * cafe/coreinit: Change how the internal COSReport functions work. * cafe/kernel: Implement loaderPurge. * cafe/coreinit: Implement OSSendFatalError. * cafe/hle: Fix type conversion. * cafe/kernel: Notify jit of read only sections in loaded RPX. * cafe/coreinit: Change stricmp to cross platform iequals. * cafe/coreinit: Remove incorrect static on function definitions. * cafe: Change static Tag types to constexpr. * cafe/coreinit: Remove unused member initialisations for static data. * cafe/nn_temp: Fix type conversions and logging. * cafe/zlib: Fix type conversions. * cafe/loader: Fix goto jumping over initialisation in LiLoadRPLBasics. * cafe/loader: Remove member initialisation in global storage. * cafe/loader: Fix std::transform tolower. * cafe/loader: Remove debug OutputDebugStringA. * cafe/loader: Fix type conversion. * cafe/loader: Fix type conversion. * debugger: Remove unused declaration from debugger_analysis.h * debugger: Fix passing string as imgui text formatter. * cafe/kernel: Fix typo. * cafe/kernel: Fix core context stack pointer. * decaf: Remove unused usermodule.h * Delete remaining legacy modules. * cpu: Fix be2_val for unions. * ios/net: Fix allocation of net subsys heap buffer. * cafe/hle: Change handling of unimplemented functions. * cafe/nn_temp: Remove unused label. * cafe/tinyheap: Fix findBlockIdxContaining. * cafe: Fix support for HLE calls with register spill to stack. * ios/mcp: Add missing resource reply to /dev/ppc_kernel resume. * cafe/hle: Add support for trace filters. * cafe/kernel: Fix race condition with submitted IPC requests. * cafe/kernel: Fix exception context stack pointer. * cafe/kernel: Fix core and exception contexts not reserving ABI stack space. * cafe/hle: Log unimplemented function imports. * cafe/coreinit: Remove pragma optimize off * cafe/gx2: Add missing RegisterDataInternal for gx2_state.cpp * cafe/sndcore2: Add missing calls to register symbol functions. * cafe/hle: Redirect snd_core.rpl to sndcore2.rpl * cafe/hle: Redirect snd_user.rpl to snduser2.rpl * cafe/loader: Fix unimplemented HLE function imports. * cafe/loader: Remove pragma optimize off. * cafe/gx2: Add missing calls to register symbol functions. * cafe/coreinit: Zero thread memory in OSCreateThread. * cafe/nn_temp: Port and update nn_temp. * ios/fs: Add FSAStatFlags::Quota. * cafe/coreinit: Declare FSStatFlags as alias for ios::fs::FSAStatFlags. * cafe/coreinit: Implement FSBindUnmount{Async}. * cafe/coreinit: Fix some type conversion warnings. * cafe/coreinit: Implement FSChangeMode{Async}. * ios/mcp: Initialise sys prod config eeprom_version and product_area. * cafe/coreinit: Implement debugger::break_on_entry for new CafeOS. * cafe: Implement handling of unimplemented HLE functions. * cafe/loader: Fix trampoline instruction encoding. * cafe/coreinit: Implement FSBindMount{Async}. * cafe/coreinit: Change FSErrorFlag from enum to flags. * common/platform/win_memory: Do not use global for mapped file views. * Delete more old unused kernel code. * cafe/kernel: Print symbols for cpu branch trace handler. * cafe/coreinit: Implement OSGetSymbolName. * debugger: Use new kernel findClosestSymbol for stack view. * cafe/kernel: Implement findClosestSymbol. * cafe/kernel: Implement validateAddressRange. * cafe/coreinit: Implement tls_get_addr. * kernel: Remove more old kernel things. * debugger: Update initialisation to use new loader data. * debugger: Update segment window to use new loader data. * debugger: Update analysis to use new loader data. * cafe/loader: Add a mutex so we can access data safely from debugger. * debugger: Fix missing PopStyleColor in GL performance window. * debugger: Fix JIT stats window when sampled failed. * Remove old kernel HLE & ppcutils. * cafe/kernel: Move cpu entry to cafe/kernel. * decaf: Remove unused decaf_game.{h,cpp} * cafe/hle/gx2: Fix include in gx2_debug_dds. * cafe/hle/nn_cmpt: Fix invalid type conversion. * cafe/hle/nn_aoc: Fix invalid type conversion. * cafe/hle/nn_save: Fix include of nn_act. * cafe/hle/padscore: Fix some types. * cafe/loader: Fix encoding of SPR for mtspr in generated trampolines. * cafe/hle/nn_boss: Fix missing definitions for class statics. * cafe/hle/nn_boss: Fix incorrect virt_ptr type. * cafe/hle/nn_boss: Fix some type conversions. * cafe/hle/coreinit: Add missing RegisterDataInternal for coreinit_fs_driver. * cafe/hle/camera: Fix CAMError type. * cafe/hle: Respect the global kernel_trace config value. * cpu: Fix type conversion in be2_val operators. * kernel: Fix cpuKernelCallHandler not setting up stack backchain. * nsyskbd: Add SKBDChannel type. * Delete unused files. * Fix gfdtool for new hle gx2. * cafe/hle: Port and update nn_nfp. * cafe/hle: Port and update nn_fp. * libcpu: Add {virt,phys}_this to translate this pointer to {virt,phys}_ptr. * cafe: Add TinyHeap dumpHeap method for debugging purposes. * decaf: Add dump_hle_rpl config option. * Delete unused avm_config.cpp * decaf: Fix some references to new HLE libraries. * ios/kernel: Delete unused ios_kernel_memory.{cpp,h} * ios/mcp: Add MCPRegion::Unknown8. * ios/mcp: Add MCPPrepareTitleInfo struct. * latte: Update ControlFlowInst to be a struct. * latte: Update context state to use virt_ptr. * latte: Update pm4 commands to use virt_ptr. * latte: Fix some bitfield value types. * libgpu: Update to use virt_ptr for PM4Processor. * libgfd: Update to new HLE gx2 library. * debugger: Update to new cafe HLE libraries. * cafe/hle: Add empty library implementations for remaining libraries. * cafe/hle: Port and update tcl. * cafe/hle: Port and update zlib. * cafe/hle: Port and update vpad. * cafe/hle: Port and update sysapp. * cafe/hle: Port and update proc_ui. * cafe/hle: Port and update swkbd. * cafe/hle: Port and update snd_user to snduser2. * cafe/hle: Port and update snd_core to sndcore2. * cafe/hle: Port and update padscore. * cafe/hle: Port and update nsysnet. * cafe/hle: Port and update nsyskbd. * cafe/hle: Port and update nn_save. * cafe/hle: Port and update nn_olv. * cafe/hle: Port and update nn_ndm. * cafe/hle: Port and update nn_cmpt. * cafe/hle: Port and update nn_boss. * cafe/hle: Port and update nn_aoc. * cafe/hle: Port and update nn_act. * cafe/hle: Port and update nn_acp. * cafe/hle: Port and update nn_ac. * cafe/hle: Port and update mic. * cafe/hle: Port and update gx2. * cafe/hle: Port and update erreula. * cafe/hle: Port and update dmae. * cafe/hle: Port and update camera. * cafe: Port and update coreinit. * cafe: New loader based off of loader.elf * cafe: Add the base for new HLE library format. * kernel: Flesh out the new kernel. * cafe: Add PPC -> HLE call tracing for new interface. * cafe: Fix StackObject on gcc. * cpu: Add resetVirtualMemory to unmap all virtual memory. * cpu: Add unknown physical memory range which is used for PPC Kernel. * cpu: Add fmtlib format_arg for FucntionPointer. * cpu: Fix ambiguous pointer_cast_impl. * filesystem: Add string_view constructor for GenericPath. * cafe: Various fixes to TinyHeap. * cafe: Fix make_stack_string. * cafe: Implement ppc interface for variable argument functions. * cpu: Various fixes to Pointer class. * cpu: Add operator= std::nullptr_t for FunctionPointer. * cpu: Fix be2_val operators having const in wrong part of signature. * cpu: Add align_up, align_down for pointer types. * cpu: Fix be2_struct for const volatile types. * cpu: Fix function pointer casting. * cpu: Add std::array casting for be2_array. * cpu: Fix be2_array for const or volatile cpu pointers and unions. * cpu: Fix is_cpu_ptr. * cpu: Add some more operators for Address type. * common: Add an explicit cast operator for bitfield types. * common: Use std::addressof in bit_cast. * cpu: Add static assert to check a value_type in Pointer is not a pointer! * cpu: Add a more generous explicit cast operator for Address. * cafe: Add TinyHeap_Enum and TinyHeap_EnumFree methods. * kernel: Fix loader. * kernel: Add memory region for loader bounce buffer. * filesystem: Read / write from uint8_t * to void *. * travis: Try build without brew update. - Update to version 20180820: * cafe/kernel: Fix exception and core context stack pointer. * cafe/kernel: Fix core and exception contexts not reserving ABI stack space. * kernel: Fix race condition with submitted IPC requests. - Update to version 20180813: * ios/mcp: Initialise sys prod config eeprom_version and product_area. * travis: Try build without brew update * sysapp: Change SYSGetSystemApplicationTitleIdByProdArea to default to USA.
Marcus Meissner (msmeissn)
accepted
request 626538
from
Duarte Pousa (xenonpk)
(revision 23)
- Update to version 20180622: * ppcutils: Reorder logArgument template functions to fix gcc compile. * cpu: Add be2_array construction from const char [N]. * coreinit: Fix incorrect value initialisation. * ios: Fix some type conversion warnings. * sci: Fix type warnings. * cafe: Fix TinyHeap ambiguous ? type. * Update StackObject classes to work with gcc. * cpu: Fix pointer conversion operator. * cpu: Add be2_val missing conversion constructors. * common: Change BOOL to int32_t. * common: Fix atomicqueue::capacity. * travis: Update to xcode9.4 * Fix pm4-replay builds. * cafe: Add new PPC function invocation code. * Start migrating to new kernel. * cpu: Fix Pointer be2_val constructor. * kernel: Load all default shared libraries. * kernel: Try load lle modules before hle modules. * kernel: Correctly map MEM2MainApp memory. * coreinit: Change dynLoadMemAlloc to use stack. * kernel: Update memory map. * cpu: Allocate dedicated physical memory for TilingApertures. * cafe: Add cafe::StackObject. * cpu: Add natvis for be2 types. * decaf: Mount /dev/mlc01 as ReadWrite. * decaf: Do not initialise folders on slc01. * ios: Add make_stack_string. * ios/mcp: Fix default boot flags. * ios/kernel: Fix getIpcMessageQueueId. * ios/mcp: isValidRootKey is only checked on Debug or Test security levels. * ios/mcp: Add a hack to force initialise all directories. * ios/mcp: Do not treat failing to mount /dev/ramdisk01 as a fatal error. * ios/mcp: Set client filesystem caps for COSKERNEL. * ios/mcp: Fix copy and paste fail. * Initialise cpu in decaf::initialise. * Move FileSystem ownership to IOS. * ios/fs: Implement FSADevice makeQuota. * ios/auxil: Fix writeItems not copying file data to write buffer. * ios/auxil: Fix getRootKey not returning correct root when no key specified. * ios/auxil: Add missing Open / Close commands for /dev/auxilproc. * decaf: Mount sdcard where we mount other devices. * cpu: Fix pointer comparison operators against a be2_val Pointer * coreinit: Fix coroutine calls to kernel. * coreinit: Add missing includes for be2_struct. * ios: Fix some compiler warnings. * ppcutils: Fix ppc function binding for virt_ptr. * ios: Fix StackArray::size * ios: Implement ARM alarm timer thread. * Change decaf to boot ios, then ios to boot cpu / kernel. * kernel: Fix splelling initialiseHleMmodules -> initialiseHleModules. * kernel: Fix cpu callbacks. * ios: Fix usage of std::max in StackObject. * cpu: Fix some formatting in address.h * cpu: Fix typo. * cpu: Rename espresso_registers.h to espresso_registerformats.h * ios/mcp: Fill out more values for MCPFileType and MCPCommand. * cpu: Fix some inconsistencies in be2_array. * cpu: Fix template argument type for {virt,phys}_addrof for be2_array. * cpu: Fixes for Pointer. * cpu: Fix shadowing of template parameters in FunctionPointer * cpu: Cleanup be2_val. * cpu: Add missing "typename" for virt_cast. * cpu: Add be2_val overloads for Pointer. * cpu: Change format_arg for Pointer. * ios/bsp: Add intial /dev/bsp request and response structs. * ios: Update StackObject to copy changes to cafe::StackObject. * coreinit: Add a bit more research about OSDriver * cpu: Change function pointer to work like std::function<R(Args...)> * common: Add align_check for non pointer types * interpreter: Fix call to branch trace handler. * common: Change FrameAllocator alignment arg to be size_t * ios: Add ios::Handle for IpcRequest. * coreinit: Implement OSLoadCoroutine and OSSaveCoroutine. * cpu: Add virt_addr_range and phys_addr_range alias. * cpu: Add waitNextInterrupt that will sleep until next interrupt with a timeout. * cpu: Change interrupt handles to all pass the core as argument. * cpu: Add explicit Address::operator uint32_t * common: Add an abort with provided stack trace to decaf_assert. * common: Use MAX_SYM_NAME in platform_win_stacktrace * ios: Set AHBLT.0 to SdHostController * ios/mcp: Start work on /dev/ppc_app and /dev/ppc_kernel * ios/mcp: Set cafe title path during initialisation. * ios/mcp: Add LoadLibraryChunk request. * ios: Fix MCP_Open actually opening /dev/fsa. * cpu: Rework some be2_struct stuff. * common: Add TeenyHeap default constructor and reset function. * common: Add a single-producer single-consumer queue to AtomicQueue. * cpu: Add FunctionPointer class * cpu: Add Address::operator &(uint32_t) * ios/kernel: Fix getOpenResource incorrectly handling closed devices. * ios/kernel: Fix allocResourceHandle always returning handle[0]. * ios/kernel: Fix freeResourceRequest incorrectly handling id 0. * ios/kernel: Fix allocResourceRequest setting nextIdx instead of prevIdx. * ios/kernel: Fix findResourceManager ignoring id 0. * ios/kernel: Fix usage of the wrong resource handle manager. * ios/kernel: Fix dispatchRequest using the wrong message queue. * ios/kernel: Fix IOS_CreateTimer return value. * ios/mcp: Add missing IOS_ResourceReply for /dev/pm ioctl. * ios/mcp: Fix handling of unimplemented /dev/pm resource managers. * ios/mcp: Fix always using /dev/crypto as process name in pm manager list. * ios/kernel: Fix 0x7FFFFFFF to be the magic value in getClientCapability. * ios/fs: Add FS service thread. * cpu: Fix BigEndianValue operator[] return type. * ios: Make process local heap allocations more explicit. * ios/kernel: Implement ordered insertion in IOS_RegisterResourceManager. * Move IPC address translation into the Cafe kernel IPC driver. * ios/kernel: Fix RegisterResourceManager returning Exists if No Exists! * ios: Fix copypasta of NonBlocking receive everywhere! * ios/kernel: Add unregister event handler. * kernel: Fix submitting wrong ipc address to ios. * ios/mcp: localHeapBuffer requries 0x20 byte alignment. * ios/kernel: Change allocProcessStatic to use 16 byte alignment. * ios/kernel: Allow the kernel to call IOS_StartThread for any process. * ios/kernel: Fix priority inversion in scheduler. * ios/kernel: Add some missing scheduler unlocks. * ios/kernel: Fix wrong itnerrupt being set when an IPC is submitted. * ios/kernel: Fix some heap bugs. * ios/kernel: Fix updating of current thread when switching threads. * ios/kernel: Fix threads not being put on the scheduler queue when woken. * ios/kernel: Fix timer thread using NonBlocking receive message. * ios/kernel: Fix incorrect stack pointer. * ios/net: Add socket device and rip out the remaining OLD ios code!! * ios/mcp: Further work on MCP. * ios/kernel: Implement IOS_{Get,Set}SecurityLevel. * ios/fs: Add ipc FSARemove, FSAMakeDir, FSAMakeQuota, FSAMount, FSAGetInfoByQuery. * ios/fs: Fix missing values in FSAResponseGetInfoByQuery. * cpu: Pointer<X> should dereference to be_struct<X>. * ios/auxil: Move config reading/writing to ios_auxil_config. * ios/net: Add network, socket and subsys threads. * ios/mcp: Add mcp thread. * auxil: Using namespace kernel in usr_cfg service thread. * ios/kernel: Fix thread exit. * ios/auxil: Update auxil to use MCP_RegisterResourceManager. * ios/mcp: Add IPC functions, MCP_{Open,Close,RegisterResourceManager}. * ios: Flesh out the NET process creation. * ios: Start work on MCP. * ios/kernel: Rename IOS_GetTimerTicks to IOS_GetUpTime64. * ios/kernel: Add DeviceId 9 as SysEvent. * ios/kernel: Rename IOS_SetResourcePermissionGroup to IOS_AssociateResourceManager. * ios/kernel: Add IOS_SetClientCapabilities. * ios/kernel: Add IOS_SetResourceManagerRegistrationDisabled. * ios/auxil: Add missing calls to startImThread / stopImThread. * ios/kernel: Add allocProcessStatic(std::string_view) * ios/kernel: Add async IPC functions. * ios/kernel: Add makeMessage, parseMessage utilities. * cpu: Add be2_struct<Type> operator=(const Type &). * ios: Add StackArray. * cpu: Add a constructor for be2_array from std::array * ios/auxil: Implement initialisation of IM parameters. * ios/auxil: Add usr_cfg ipc. * ios/auxil: Fix UC{Read,Write}SysConfigRequest arguments. * ios/fs: Add ipc FSAOpen, FSAClose. * be2_array: Add operator= string_view for be2_array<char, N>. * cpu: Remove BigEndianValue::getAddress as this was removed from Pointer. * ios/auxil: Implement usr_cfg ioctls readSysConfig, writeSysConfig. * ios/fs: Add FSAStatFile ipc. * cpu: Make be2_array great again. * ios/kernel: Boot all processes. * ios/kernel: Add missing initialisation of interrupt registers. * ios/kernel: Add missing startIpcThread function. * ios/kernel: Fix allocProcessStatic variadic template. * ios/kernel: Remove member initialisation in resource manager. * ios/kernel: Add makeMessage utility function. * ios/kernel: Fix compiler warnings in timer. * ios: Add missing process entry points. * ios: Change ProcessId::IOSTEST to ProcessId::TEST * ios: Add a default constructor for IpcRequestArgs. * common: Add FrameAllocator default constructor. * ios/auxil: Fix compiler warnings. * ios/fs: Fix process initialisation. * ios: Initialise static data in AUXIL. * ios: Initialise kernel static data. * ios: Start fleshing out process static memory. * ios: Add timeToTicks and durationToTicks. * cpu: Use is_x<T>::value instead of is_x_v as they seem to break intellisense. * ios: Initial implementation of kernel timers. * ios: Fix handling of id in resource manager. * ios: Fix usage of rescheduleSelfNoLock. * cpu: Cleanup use of TimerDuration. * ios: Fix getMessageQueue to return an Error. * ios: Add HandleManager::closeAll * ios: Fix startFsaThread to return an Error. * ios: Implement axuil stopImThread. * ios: Implement auxil process with /dev/auxilproc, /dev/im. * ios: Add a (hopefully) reusable handle manager for devices. * ios: SvcMsg.unkArg0 is .command! * ios: Add ThreadId CurrentThread constant. * ios: Add FSA ipc syscalls FSACloseFile, FSAReadFile, FSAWriteFile. * cpu: Improve explicit operator cast for BigEndianValue. * ios: Port all FSA device functionality to new ios. * ios_kernel: Make {SharedCrossProcess,LocalProcess}HeapId publically visible. * kernel: Fix some missing name changes from ID -> Id. * ios: Add enum value MCPCommand::SetSysProdSettings * ios: Start trying to figure out what devices are going to look like. * Rename ID -> Id * ios: Map remaining PowerPC->ARM IPC commands. * Fix some oopsies * ios: Implement the remaining IPC commands. * ios: Remove IpcHandle. * Start of new IOS emulation. * debugger: Fix trying to calculate next instruction on invalid instruction. * loader: Implement R_PPC_GHS_REL16_HI, R_PPC_GHS_REL16_LO - Update to version 20180515: * latte-assembler: Fix zero initialisation. * Update libraries/glbinding. * Update libraries/fmt * Fix CMAKE_AUTOMOC for when Qt is enabled.
Klaus Kämpf (kwk)
accepted
request 585459
from
Duarte Pousa (xenonpk)
(revision 22)
- Update to version 20180218: * Fix parseValueBool - Update to version 20180215: * gfd_write: Fix uninitialized data being written out in EOF block headers - Update to version 20180203: * Remove DX12 * Compile fix for pm4-replay-qt - Update to version 20180116: * debugger: Fix printf formatter for uint64_t type. * Merge VelocityRa/debug-perf. * debugger/opengl: Update graphics info on opengl's side * debugger: Add Performance Window w/ perf graphs & graphics info * debugger: Add imgui plot/graph functionality with plot lines * graphics: Add debug info getter to graphics drivers interface - Update to version 20180112: * cmake: Disable deprecation warnings generated by glbinding headers. * cmake: Silence deprecated codecvt warnings for MSVC. * latte-assembler: Adjust some formatting. * latte-assembler: - add --align option. - add a missing field to writeUniformVarsData. - align text to 32bit. * latte-assembler: add more missing fields to the comment parser. (uniformBlocks,uniformVars,initialValues,loopVars,samplerVars). - fix sq_vtx_semantic and sq_pgm_resources_ps.STACK_SIZE. * latte-assembler: fix opcode priorities in grammar.txt * gfd-tool: add GeometryShaderCopyProgram disassembly to printInfo. * gpu: registers 120-123 are also set as temp registers - Update to version 20180111: * Restore .txt extension for log filenames. * Update spdlog to 0.16.2 - Update to version 20180111: * coreinit: Implement unlockAllFastMutexNoLock. * coreinit: Fix handling of contention in OSFastMutex.
Marcus Meissner (msmeissn)
accepted
request 579960
from
Duarte Pousa (xenonpk)
(revision 21)
- Update to version 20180218: * Fix parseValueBool - Update to version 20180215: * gfd_write: Fix uninitialized data being written out in EOF block headers - Update to version 20180203: * Remove DX12 * Compile fix for pm4-replay-qt
Klaus Kämpf (kwk)
accepted
request 567437
from
Duarte Pousa (xenonpk)
(revision 20)
- Update to version 20180116: * debugger: Fix printf formatter for uint64_t type. * Merge VelocityRa/debug-perf. * debugger/opengl: Update graphics info on opengl's side * debugger: Add Performance Window w/ perf graphs & graphics info * debugger: Add imgui plot/graph functionality with plot lines * graphics: Add debug info getter to graphics drivers interface - Update to version 20180112: * cmake: Disable deprecation warnings generated by glbinding headers. * cmake: Silence deprecated codecvt warnings for MSVC. * latte-assembler: Adjust some formatting. * latte-assembler: - add --align option. - add a missing field to writeUniformVarsData. - align text to 32bit. * latte-assembler: add more missing fields to the comment parser. (uniformBlocks,uniformVars,initialValues,loopVars,samplerVars). - fix sq_vtx_semantic and sq_pgm_resources_ps.STACK_SIZE. * latte-assembler: fix opcode priorities in grammar.txt * gfd-tool: add GeometryShaderCopyProgram disassembly to printInfo. * gpu: registers 120-123 are also set as temp registers - Update to version 20180111: * Restore .txt extension for log filenames. * Update spdlog to 0.16.2 - Update to version 20180111: * coreinit: Implement unlockAllFastMutexNoLock. * coreinit: Fix handling of contention in OSFastMutex.
Klaus Kämpf (kwk)
accepted
request 538671
from
Duarte Pousa (xenonpk)
(revision 19)
- Update to version 20171023: * Update fmt to fix enum formatting * cmake: macOS builds are now built with '-D_DARWIN_C_SOURCE' * travis: Update Homebrew to latest version and update all packages * cmake: Use -std=c++1z instead of -std=c++17 on macOS
Marcus Meissner (msmeissn)
accepted
request 534091
from
Duarte Pousa (xenonpk)
(revision 18)
- Update to version 20170928: * loader: Do not use virtual loader heap during loading. * loader: Do not handle relocations for export / import / symtab sections. * kernel: Add most of the IOS physical memory regions. * Fix format_arg for BigEndianValue. - Update to version 20170925: * Fix the Windows binary link * Fixed branches in Windows binary download link - Update to version 20170920: * filesystem: Initialise FolderEntry::size to 0. * libgpu: Catch translate_exception as a reference. * gx2: Fix oopsy in gx2 -> gfd code. * Remove be struct operator& in favour of explicit virt_addrof and phys_addrof. * Change the fallback system fonts to the fonts created by rajkosto. * Add font license for Deja Vu Sans Mono which we use for the imgui ui. * cmake: Fix resources/CMakeLists.txt to point at new fonts. * Add decaf logo * common: Add align_check. * cpu: Add phys_cast. * Some minor formatting changes. * cpu: Fix splelling in be2_struct. * cpu: Change be2_struct and pointer to use protected rather than private. * coreinit: Fix indent. * Add libraries/fmt. * Fix spdlog sinks. * Add ostream operators for common/enum, Address, BigEndianValue, Pointer. * interpreter: Use if constexpr. * gpu: Fix size_t -> gl::GLsizei cast. * gpu: Use constexpr if for drawPrimitives2. * cpu: Use is_convertible as well as is_constructible for BigEndianValue. * common: Change strutils begins_with and ends_with to take a string_view. * cpu: Fix BigEndianValue opreator++ and operator--. * cpu: Fix Pointer operators for Pointer<void> * Add MEM0, SRAM0 and SRAM1 memory. * common: Do not print message when reserveMemory fails. * Change from implementing ostream<< to format_arg for fmtlib user types. * common: Rename enumAsString to to_string. * Start of new IOS emulation. * Update appveyor packaging * Update travis to gcc-7 * Update README to reflect change to C++17 * travis: Actually use g++-7 * cmake: Set -std=c++17 * Revert "Start of new IOS emulation." * Update gsl-lite * cpu: Fix BigEndianValue operator bool * Fix libcpu tests to reflect changes to big endian helpers. - Update to version 20170916: * Update libbinrec
Klaus Kämpf (kwk)
accepted
request 526482
from
Duarte Pousa (xenonpk)
(revision 17)
- Update to version 20170915: * Add locked cache to MemoryMap::mapMemory * Allocate variable on ppc stack instead of host stack in coreinit_im.cpp * Update jit_binrec.cpp
Klaus Kämpf (kwk)
accepted
request 522276
from
Duarte Pousa (xenonpk)
(revision 16)
- Update to version 20170627: * cpu: Improve implicit conversion constructors for Pointer. * cpu: Move LockedCache to its own physical memory. * libdecaf: Move ios code out of kernel to new ios subdirectory. - Update to version 20170627: * Add slc_path configuration option. * filesystem: Add fileExists and folderExists methods. * ios: Add /dev/usr_cfg device. * coreinit: Change user config functions to use IOS /dev/usr_cfg. * coreinit: Rename nanosToTicks to nsToTicks and add usToTicks. * coreinit: Remove old UC enums. * Add sci module for creating default system settings. * coreinit: Add some more info for OSSetThreadRunQuantum. * common: Define flags operators in the flag namespace. * gpu: Unify resource register enum values into SQ_RESOURCE_WORDX_Y. * gpu: Fix values for register enums PA_SC_VPORT_{ZMIN,ZMAX}. * kernel: Remove iosGetDevice from kernel_ios.h * coreinit: Fix using operator| hack. * sci: Fix value type for SCIError enum. * sysapp: Fix usage of old enum value names for MCPRegion. * ios: Fix usage of vaddr / paddr. * cpu: Fix some issues with be2 types. * kernel: Fix iosGetErrorCode. * ios/im: Add missing ioctlv calls. * kernel: Add missing registration for /dev/usr_cfg device. * usr_cfg: Implement ReadSysConfig, WriteSysConfig ioctlv. * coreinit: Fix return code check from IOS_Open in coreinit_im. * coreinit: Fix IM_GetParameter setting wrong request parameter. * kernel: Initialise default system config if not found. * coreinit: Fix IOS_Ioctlv with null vectors. * coreinit: Fix user config settings with dataSize = 0. * ios/usr_cfg: Fix access attribute. * ios/usr_cfg: Fix setting of node values. * ios/usr_cfg: Always save XML in UTF8. * .gitignore: Add slc to gitignore * fix build on Debian 8 / Clang 5.0 [credit: VelocityRa] * coreinit: Fix warning for comparing IMError and IOSError. * coreinit: Fix compile errors in coreinit_userconfig * cpu: Add Pointer constructor for a be_val<address_type>. * coreinit: Add missing include to coreinit_im
Marcus Meissner (msmeissn)
accepted
request 486584
from
Duarte Pousa (xenonpk)
(revision 5)
Source update
Displaying revisions 1 - 20 of 24