File decaf-emu.changes of Package decaf-emu
-------------------------------------------------------------------
Sat Nov 10 16:45:07 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Fri Oct 19 18:12:15 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Wed Oct 17 19:55:08 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Sun Oct 14 10:56:24 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181014:
* pm4-replay: Update to use new gpu ringbuffer interface.
* cafe/nn: Add Result::Description values.
-------------------------------------------------------------------
Sat Oct 13 13:02:08 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181012:
* cafe/loader: Fix linking of circular dependencies.
-------------------------------------------------------------------
Fri Oct 12 17:49:17 UTC 2018 - pousaduarte@gmail.com
- 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
-------------------------------------------------------------------
Sun Oct 07 14:07:46 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Sat Oct 06 23:22:23 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Fri Oct 05 18:51:58 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181005:
* gpu: Improve eventWriteEOP.
-------------------------------------------------------------------
Fri Oct 05 11:41:04 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181003:
* coreinit: Fix string_copy in FSMountAsync.
-------------------------------------------------------------------
Wed Oct 03 20:19:26 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181001:
* cafe/loader: Fix missing IPCLDriver initialisation core 0 / 2.
-------------------------------------------------------------------
Tue Oct 02 13:05:10 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Sat Sep 29 18:18:11 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Tue Sep 18 23:26:31 UTC 2018 - pousaduarte@gmail.com
- 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
-------------------------------------------------------------------
Fri Sep 14 12:55:47 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Wed Sep 12 18:16:51 UTC 2018 - pousaduarte@gmail.com
- Update to version 20180912:
* cafe/loader: Fill in some missing error messages.
* cafe/loader: Fix oopsy in string_copy for LOADER_GetPathString.
-------------------------------------------------------------------
Wed Sep 12 13:10:20 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Sun Sep 09 10:13:22 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Sat Sep 08 11:40:34 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Tue Sep 04 13:20:10 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Mon Sep 03 18:56:10 UTC 2018 - pousaduarte@gmail.com
- Update to version 20180903:
* Change GPU and PM4 to correctly using physical memory addresses.
-------------------------------------------------------------------
Sun Sep 02 18:40:14 UTC 2018 - pousaduarte@gmail.com
- 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'
-------------------------------------------------------------------
Sat Sep 01 10:51:24 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Tue Aug 21 07:42:23 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Mon Aug 13 19:03:24 UTC 2018 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Sat Jun 23 12:01:57 UTC 2018 - pousaduarte@gmail.com
- 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
-------------------------------------------------------------------
Wed May 16 13:09:26 UTC 2018 - pousaduarte@gmail.com
- Update to version 20180515:
* latte-assembler: Fix zero initialisation.
* Update libraries/glbinding.
* Update libraries/fmt
* Fix CMAKE_AUTOMOC for when Qt is enabled.
-------------------------------------------------------------------
Thu Feb 22 20:53:01 UTC 2018 - pousaduarte@gmail.com
- Update to version 20180218:
* Fix parseValueBool
-------------------------------------------------------------------
Fri Feb 16 13:53:29 UTC 2018 - pousaduarte@gmail.com
- Update to version 20180215:
* gfd_write: Fix uninitialized data being written out in EOF block headers
-------------------------------------------------------------------
Sun Feb 11 17:48:55 UTC 2018 - pousaduarte@gmail.com
- Update to version 20180203:
* Remove DX12
* Compile fix for pm4-replay-qt
-------------------------------------------------------------------
Thu Jan 18 13:50:20 UTC 2018 - pousaduarte@gmail.com
- 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
-------------------------------------------------------------------
Fri Jan 12 15:38:17 UTC 2018 - pousaduarte@gmail.com
- 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
-------------------------------------------------------------------
Thu Jan 11 12:02:35 UTC 2018 - pousaduarte@gmail.com
- Update to version 20180111:
* Restore .txt extension for log filenames.
* Update spdlog to 0.16.2
-------------------------------------------------------------------
Thu Jan 11 11:29:26 UTC 2018 - pousaduarte@gmail.com
- Update to version 20180111:
* coreinit: Implement unlockAllFastMutexNoLock.
* coreinit: Fix handling of contention in OSFastMutex.
-------------------------------------------------------------------
Mon Oct 23 15:44:58 UTC 2017 - pousaduarte@gmail.com
- 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
-------------------------------------------------------------------
Mon Oct 02 15:25:38 UTC 2017 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Mon Sep 25 13:35:23 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170925:
* Fix the Windows binary link
* Fixed branches in Windows binary download link
-------------------------------------------------------------------
Fri Sep 22 12:37:47 UTC 2017 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Sun Sep 17 11:36:28 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170916:
* Update libbinrec
-------------------------------------------------------------------
Fri Sep 15 18:41:27 UTC 2017 - pousaduarte@gmail.com
- 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
-------------------------------------------------------------------
Tue Jun 27 16:59:29 UTC 2017 - pousaduarte@gmail.com
- 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.
-------------------------------------------------------------------
Tue Jun 27 15:16:24 UTC 2017 - pousaduarte@gmail.com
- 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
-------------------------------------------------------------------
Tue Jun 20 09:16:48 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170620:
* cpu: Fix running with interpreter.
* coreinit: Add declaration for ghs errno functions.
* Refactor IOS devices.
* ios: Initial implementation of /dev/socket
* nsysnet: Implement connect.
* nsysnet: Implement bind.
* nn_cmpt: Add nn_cmpt module.
* wiiu-rpc: Fix acquireLibrary always loading coreinit.rpl
* wiiu-rpc: Use MEM2 heap instead of malloc for server readBuffer.
-------------------------------------------------------------------
Mon Jun 19 07:41:28 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170618:
* /dev/fsa: Set initial working path to "/"
* /dev/im: Implement /dev/im.
* kernel: Rename kernel_ios_*device.* to kernel_ios_device_*.*
-------------------------------------------------------------------
Sat Jun 17 10:31:35 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170615:
* wiiu-rpc: Use WHB logging functions.
* cmake: Fix latte-assembler regenerating the grammar header every build.
* wiiu-rpc: Use WHBProc for managing application lifetime.
* wiiu-rpc: Fix freeing of allocated MEM1.
* cmake: Add wiiu-rpc build to tools if DEVKITPPC and WUT_ROOT is set.
* tests: Update gx2/triangle.c
* latte-assembler: Fix unnecessary padding when there are no ALU or TEX clauses.
-------------------------------------------------------------------
Tue Jun 13 13:28:23 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170613:
* ppcutils/va_list: Increment FPR counter
-------------------------------------------------------------------
Mon Jun 12 09:43:15 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170609:
* My lawyers inform me that I should update LICENSE.md
-------------------------------------------------------------------
Sat May 27 12:48:16 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170526:
* coreinit: Fix OSSendMessage with HighPriority message flag.
* decaf-sdl: Remove --dx12 option.
* decaf-sdl: Fix default value for --vpad0 argument.
* common: Add a TGA encoder.
* gpu: Add support for dumping rendered frames to TGA files.
* pm4-replay: Add support for dumping frames to TGA files.
* decaf-sdl: Add support for dumping frames to TGA files.
* coreinit: Update OSSendMessage comment.
* tests: Remove unused data from hle test thread_cancel
* tests: Add some tests for OSMessageQueue.
* tests: Fix filesystem_read test swapping count & size.
* tests: Add OSPeekMessage tests.
-------------------------------------------------------------------
Fri May 26 07:38:16 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170525:
* cmake: Fix find_package(OpenGL) to be in DECAF_GL, not DECAF_SDL.
* coreinit: Remove duplicated definitions of fiber entry function types
* cpu: Fix Pointer operator-
-------------------------------------------------------------------
Fri May 12 11:11:16 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170511:
* appveyor: Fix after_build script.
* cmake: Add shader assembly for gx2 hle tests.
* ctest: Fix test working directory.
* tests: Add a simple gx2 triangle rendering test.
* Pls mr appveyor
-------------------------------------------------------------------
Thu May 11 19:48:37 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170511:
* Add submodule libraries/cpp-peglib.
* libgfd: Fix file and block versions.
* libgfd: Add support for GFDBlockType GeometryShaderCopyProgram.
* libgfd: Always write a relocation block.
* libgpu: Change SQ_TEX_WORD2.OFFSET_{X,Y,Z} to be signed.
* libgpu: Fix some output in latte disassembler to closer match AMD ShaderAnalyzer.
* libgpu: Add getInstructionByName for latte instructions.
* tests: Use wut add_rpx_lite for tests.
* tools: Add a latte assembler.
* cmake: Add DECAF_BUILD_TOOLS option which is off by default.
* libgpu: Add missing macro args for ALU_OP2
* latte-assembler: Clean up exceptions.
* latte-assembler: Clean up duplicated Gpr in grammar.
* libgpu: Fix LOD_BIAS and OFFSET_{X,Y,Z} fields to use fixed point integers.
* latte-assembler: Fix issue with LiteralValue -0.0f.
* latte-assembler: Fix opcode lookups for aliased instructions.
* latte-assembler: Add support for TEX clauses.
* Define DECAF_BUILD_TOOLS for appveyor & travis
* gx2: Clean up some missing indentation.
* libgpu: Add SQ_ALU_SRC::REGISTER_TEMP_FIRST.
* latte-assembler: Track inst src / dst usage to auto generate some registers.
* cmake: Add *.inl to libgpu build.
* libgpu: Check sizes of latte instruction structs.
* cmake: Fix latte-assembler grammar.h include.
* latte-assembler: Remove unnecessary static_assert.
* CMake: remove Mincore dependency
* appveyor: Add missing files to package.
* Pls mr appveyor
* libgpu: Change SQ_CF_WORD0 to use BITFIELD for consistency.
* latte-assembler: Set shader mode based off whether uniform blocks were read from.
-------------------------------------------------------------------
Wed May 03 18:43:36 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170503:
* decaf-sdl: Fix input config reading.
-------------------------------------------------------------------
Wed May 03 07:56:06 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170503:
* snd_core: Fix hardcoded argument to start()
* decaf-sdl: Add missing display config options.
* cmake: Specify render backend using DECAF_GL option.
* travis: Disable DECAF_GL option for OSX.
* cmake: Fix oopsy.
* snd_user: Create snd_user module and stub a few AXFX functions.
* glsl: Add missing condStart / condEnd around KILL.
* glsl: Implement LOOP_BREAK and LOOP_CONTINUE.
* tools: Add wiiu-rpc tool client & server.
* gpu: Don't use cpu::VirtualPointer for pm4 buffers.
* cmake: Fix DECAF_SDL option to actually toggle building of SDL applications.
* Remove committed #pragma optimize("", off) statements
* cmake: Only build pm4-replay with DECAF_GL.
* tools: Add pm4-replay-qt.
* gpu: Add latte::enumAsString().
* platform: Add openMemoryMappedFile function for memory mapped file reading.
* gx2: Fix pm4cap texture size calculations.
* coreinit: Fix default thread stack not being allocated from default heap.
* cpu: Implement findFreeVirtualAddressInRange.
* coreinit: Fix return value for OSAllocVirtAddr.
* kernel: Reserve 1 page of memory per for core "AvailPhysAddrRange".
* kernel: Fix allocVirtAddr syscall when called with no target address.
-------------------------------------------------------------------
Fri Apr 28 07:52:22 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170427:
* cpu: Fix cpu::translate for nullptr.
-------------------------------------------------------------------
Wed Apr 26 14:21:42 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170426:
* posix: Use TMPDIR instead of shm_open for memory backing files.
* Refactor GPU code out of libdecaf/gpu and in to libgpu.
* Move to a .toml config file and try to unify config loading.
* common: Remove old cerealjsonoptionalinput.h
* decaf: Fix incorrect includes
* cpu: Fix BigEndianValue operator-> and operator*
* gpu: Remove pragma once from null_driver.cpp
* Rewrite gfd reading / writing and move it to libgfd.
* cmake: Define CPPTOML_USE_MAP so cpptoml will sort values alphabetically.
* platform: Adjust some error message printing for platform_memory.
* config: Add config generating when no config exists.
* libgfd: Use std::runtime_error for exception base class
* gpu: Add missing include
* decaf: Fix log path.
* cpu: Improve BigEndianValue operators to use decltype return type.
* decaf: Adjust default logging configuration.
* tests-hle: Fix frameheap_unaligned test.
* tests-hle: Fix filesystem_read test using wrong error flags.
* cmake: Add hle tests to ctest.
* cpu: Fix copy paste error with BigEndianValue operator name.
* Update README.md to target Visual Studio 2017
-------------------------------------------------------------------
Wed Apr 26 08:14:59 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170424:
* Add a configuration option to set the path to the resources directory.
* kernel: Print a better section summary in loader.
* coreinit: Remove arbitrary memory allocation.
* kernel: Adjust OverlayArena to map to virtual address 0xA0000000.
-------------------------------------------------------------------
Sat Apr 22 08:52:43 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170421:
* Revert "Implement synchronization of the guest and host GPUs."
* opengl: Don't retire command buffers until they finish executing.
* opengl: Don't read the streamout query unless/until its value is needed.
* opengl: Copy occlusion query results asynchronously.
* debugger: Fix crashes when activeThread == nullptr
* cpu: Add pvr / pir support to libbinrec
-------------------------------------------------------------------
Fri Apr 21 16:24:41 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170421:
* cpu: Fix uninitialised member mFastIndex in CodeCache.
* debugger: Fixed uninitialised member mPauseInitiator in Controller.
* debugger: Fix uninitialised members in AddrScroller.
* debugger: Fix uninitialised member in StatsWindow.
* decaf: Store file system pointer as a unique_ptr.
* gpu: Fix implicit cast between SQ_EXPORT_TYPE and SQ_MEM_EXPORT_TYPE.
* gpu: Fix memset not taking into account sizeof array value type.
* gpu: Fix implicit cast between SQ_ALU_{SCL <-> VEC}_BANK_SWIZZLE.
* gpu: Fix implicit cast between SQ_EXPORT_TYPE and SQ_MEM_EXPORT_TYPE.
* gpu: Fix implicit 32 to 64 bit cast.
* kernel: Fix uninitialised member mFS in FSADevice.
* kernel: Fix foundSectionEnd always being true in calculateRelocatedAddress.
* coreinit: Use memcpy instead fo strncpy.
* coreinit: Fix MEMGetNthListObject always returning nullptr.
* gx2: Remove unreachable switch case.
* nn_boss: Fix uninitialised mVirtualTable in nn_boss::Title.
* snd_core: Fix implicit 32 to 64 bit cast.
* cmake: Fix glbinding install.
* cmake: Add CMake build support for CPU & HLE tests.
* cmake: Add test running with CTest.
* tests: Add some simple Catch powered libcpu tests to verify be_struct types.
* cmake: Fix tests solution folder.
-------------------------------------------------------------------
Fri Apr 21 08:10:42 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170421:
* New virtual memory implementation.
* Update achurch test binary.
* common: Fix usage of ftruncat64 on OSX.
* cpu: nullptr_t -> std::nullptr_t
* debugger: Fix missing explicit cast.
* cmake: Fix trying to link -rt on OSX
* cpu: Remove Windows.h include and pragma opt from memorymap.cpp
-------------------------------------------------------------------
Tue Apr 18 08:31:09 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170418:
* Update README.md
-------------------------------------------------------------------
Mon Apr 17 18:57:39 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170417:
* gx2: Fix sSurfaceFormatData
-------------------------------------------------------------------
Mon Apr 17 10:09:21 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170417:
* Fix differing context struct on macOS.
* Fix "Call to 'abs' is ambiguous" in Xcode.
* nsysnet: Fix identifier clash with Xcode macros.
* Remove macOS dependency on OpenGL.
* Fix SDL2 library for macOS.
* Add macOS to Travis build matrix.
* Update Travis to a more recent Xcode, to support thread_local.
* Use PLATFORM_APPLE rather than __APPLE__.
* platform: Fix platform::freeMemory.
* debugger: Check stack address is valid before drawing stack.
* coreinit: Change FSCmdQueueStatus from ENUM to FLAGS.
* gx2: Change some gx2 ENUM to FLAGS.
* vpad: Change Buttons from ENUM to FLAGS.
* snd_core: Fix some types.
* proc_ui: Add callback types.
* glsl: Implement GET_GRADIENTS_{V,H}
* nn_save: Implement SAVEGetStatOtherApplication{Async}.
* nsyskbd: Fix compiler cast warning.
-------------------------------------------------------------------
Sat Apr 15 23:53:02 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170416:
* Fix copy and paste error (change _S to _T) and use GL_CLAMP_TO_EDGE.
* Looks like the bug was duplicated elsewhere.
-------------------------------------------------------------------
Fri Apr 14 08:58:33 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170414:
* Update appveyor to use VS2017
* Update appveyor.yml
-------------------------------------------------------------------
Thu Apr 13 16:58:10 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170413:
* debugger: Add hotkey to show / hide debugger.
-------------------------------------------------------------------
Thu Apr 13 14:16:00 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170413:
* Refactor debugger and add a gdb stub.
* Fix build
* Abstract Windows / POSIX socket differences behind platform_socket.h
* Fix linux build
* gdb: Send ACK before reply.
* gdb: Handle qAttached.
* gdb: Handle qTStatus.
* gdb: Send empty reply for unknown vCommands.
* kernel: Print out vectors in IOS DebugOutDevice ioctlv
-------------------------------------------------------------------
Thu Apr 13 08:53:22 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170413:
* Fix munmap of incorrect address.
-------------------------------------------------------------------
Tue Apr 11 08:48:46 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170410:
* coreinit: Add 32 bit atomic exports.
* coreinit: Fix wrong argument type in OSCompareAndSwapAtomicEx64.
* opengl: Fix divide by zero in getAverageFPS.
-------------------------------------------------------------------
Fri Apr 07 08:32:16 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170407:
* Add support for enum flags.
* mcp: Implement some title list related functions.
* coreinit: Process IPC driver callbacks on an IPC driver thread.
-------------------------------------------------------------------
Wed Apr 05 20:32:18 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170405:
* coreinit: Add definition for IPCBufPool::MagicHeader
* kernel: Add support for LLE of system modules.
* coreinit: Implement OSGetUserStackPointer.
* coreinit: Implement OSDynLoad_IsModuleLoaded.
* coreinit: Implement OSSwitchFiber{Ex}.
* snd_core: Stub some missing AX functions required by erreula.rpl
* coreinit: Implement MCP_GetOwnTitleInfo.
* coreinit: Implement MCP_GetTitleId.
* kernel: Implement MCPDevice ioctl command MCPCommand::GetTitleId.
* Fix Linux compile.
* swkbd: Define and use character type swkbd_char_t.
* snd_core: Implement AXGetRendererFreq.
* coreinit: Try load shared data fonts from mlc title 0005001B-10042400.
* coreinit: Implement OSCopy{To,From}Clipboard.
* nsyskbd: Add nsyskbd module.
* kernel: Make the XML loader functions public.
* coreinit: Fixup some headers.
* kernel: Fix loadAppXML function definition
* sysapp: Allocate MCPSysProdSettings on stack for use in MCP_GetSysProdSettings.
* kernel: Add a DebugOutDevice which can be used for logging IOS commands.
-------------------------------------------------------------------
Tue Apr 04 22:01:13 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170404:
* cmake: Link glbinding statically on non-MSVC platforms.
* decaf-sdl: Fix type cast warning from double to float.
-------------------------------------------------------------------
Tue Apr 04 21:46:39 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170404:
* binrec: Fix crash with CHAIN enabled.
* kernel: Add MCPDevice and port coreinit::MCP_* to use new device.
-------------------------------------------------------------------
Tue Apr 04 21:17:34 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170404:
* Only enable the glbinding command callback when debugging.
-------------------------------------------------------------------
Tue Apr 04 20:03:43 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170404:
* coreinit: Fix FSShutdown.
* coreinit: Stub OSGetArgcArgv.
* gx2: Stub GX2RSetBufferName.
* gx2: Switch meaning of UserMemory flag to Gx2rAllocated.
* jit: Support new libbinrec optimization flags.
* Update libbinrec
* Fix typo in libbinrec optimization flag name for --jit-opt-level=1.
-------------------------------------------------------------------
Tue Apr 04 13:18:18 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170404:
* decaf-sdl: Fix crash when the system changes the audio frame size.
* New JIT implementation using libbinrec.
* Add breakpoint support to JIT.
* jit: Inline code block lookups in the execution loop.
-------------------------------------------------------------------
Sat Apr 01 15:53:49 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170401:
* decaf: Change old internal_ kernel functions to RegisterInternalFuntion.
-------------------------------------------------------------------
Tue Mar 28 08:05:24 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170327:
- Introduce cmake.patch:
* Fix glbinding symlink
* Manually specify files
* Include missing files
-------------------------------------------------------------------
Mon Mar 27 10:45:12 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170327:
* Fix install step for glbinding
-------------------------------------------------------------------
Mon Mar 27 10:19:23 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170327:
* kernel: Take .thrbss into account when calculating TLS size.
-------------------------------------------------------------------
Mon Mar 27 09:59:02 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170326:
* coreinit: Rename OSInputDevice to SI.
* coreinit: Reverse OSDriver structure.
* tfw you push before testing build
* decaf: Add missing include
* Fix decaf-cli build
* sdl: Make audio frame length configurable And make it depend on audio output rate. Default value is 30 so with a 48kHz sample rate, the actual frame length becomes 30x48 = 1440 bytes. Also change the default which used to be 1024, which on my system was too low and produced flickering sound.
* multiprocessor compilation switch for msvc compilers
* Rename and move vsdebuggervis.natvis into common
* Add be_val<float> and VS magic numbers to natvis.
-------------------------------------------------------------------
Mon Mar 27 08:17:59 UTC 2017 - pousaduarte@gmail.com
- Update to version 20170326:
* coreinit: Rename OSInputDevice to SI.
* coreinit: Reverse OSDriver structure.
* tfw you push before testing build
* decaf: Add missing include
* Fix decaf-cli build
* sdl: Make audio frame length configurable And make it depend on audio output rate. Default value is 30 so with a 48kHz sample rate, the actual frame length becomes 30x48 = 1440 bytes. Also change the default which used to be 1024, which on my system was too low and produced flickering sound.
* multiprocessor compilation switch for msvc compilers
* Rename and move vsdebuggervis.natvis into common
* Add be_val<float> and VS magic numbers to natvis.