Revisions of decaf-emu

Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 648251 from Duarte Pousa's avatar 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's avatar Marcus Meissner (msmeissn) accepted request 626538 from Duarte Pousa's avatar 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's avatar Klaus Kämpf (kwk) accepted request 585459 from Duarte Pousa's avatar 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's avatar Marcus Meissner (msmeissn) accepted request 579960 from Duarte Pousa's avatar 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's avatar Klaus Kämpf (kwk) accepted request 567437 from Duarte Pousa's avatar 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's avatar Klaus Kämpf (kwk) accepted request 538671 from Duarte Pousa's avatar 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's avatar Marcus Meissner (msmeissn) accepted request 534091 from Duarte Pousa's avatar 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's avatar Klaus Kämpf (kwk) accepted request 526482 from Duarte Pousa's avatar 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's avatar Klaus Kämpf (kwk) accepted request 522276 from Duarte Pousa's avatar 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
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 506005 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 15)
Source Update
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 504463 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 14)
Source Update
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 503647 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 13)
Update License
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 500857 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 12)
Source Update
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 498518 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 11)
Source Update
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 496762 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 10)
Source Update
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 493071 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 9)
Source Update
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 491958 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 8)
Source Update
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 489876 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 7)
Source update
Klaus Kämpf's avatar Klaus Kämpf (kwk) accepted request 488044 from Duarte Pousa's avatar Duarte Pousa (xenonpk) (revision 6)
Source Update
Displaying revisions 1 - 20 of 24
openSUSE Build Service is sponsored by