File decaf-emu.changes of Package decaf-emu
-------------------------------------------------------------------
Wed Oct 12 11:04:43 UTC 2022 - virtuousfox@gmail.com
- Update to version 20220508T212126:
* Update BUILDING.md
* ci: Fix Windows Vulkan SDK installation.
* Update vcpkg.
* Fix for latest Vulkan SDK.
* Fix compiling tests.
* nn/act: Fix enum names.
* ios/fpd: Set current account in loadConsoleAccount.
* ios/fpd: Fix getAccountBySlotNo returning unused accounts.
* cafe/nn: Fix default value of nn::ipc::Client handle.
* cafe/kernel: Handle program exceptions
* cpu: Add program exception interrupt and trigger on bad SPRs
-------------------------------------------------------------------
Tue Mar 22 08:03:29 UTC 2022 - virtuousfox@gmail.com
- Update to version 20220130T160758:
* latte-assembler: Support POP_CNT and ADDR for control flow instructions
* cafe/nn_boss: Stub Task::Register.
* cafe/nn_boss: Implement nn::boss::{AlmightyTask,PrivilegedTask}.
* ios/nim: Add boss PrivilegedService.
* cafe/nn_boss: Implement Account_{Constructor,Destructor,AddAccount}.
* nn/boss: Add all service definitions.
* nn/boss: Fix boss result names.
* cafe/nn_boss: Implement /dev/boss client.
* ios: Fix all nn service's return values for invalid commands.
* nn/ipc: Fix result capitalisations.
* MISC: clean up
* Rewrite yaml with env vars
* nn/acp: Implement nn::ac::CreateSaveDirEx.
* cafe/nn_ec: Add more functions.
* cafe/nn_ec: Fix nn::ec::ShoppingCatalog being the wrong size.
* cafe/nn_boss: Implement nn::boss::DataName.
* cafe/swkbd: Optionally use user provided text buffer.
* cafe/sndcore2: Implement voice ADSR.
* cafe/h264: Reset codec in H264DECFlush rather than ending stream
* cafe/h264: Update to new ffmpeg API (av_init_packet->av_alloc_packet)
* gpu: Fix createAccessChain being in ShaderSpvBuilder instead of SpvBuilder.
* cafe/coreinit: Fix OSSetPeriodicAlarm when start is 0.
* cafe/coreinit: Check if filesystem is initialised in fsCmdBlockPrepareAsync.
* Fix toml config writing not updating existing values.
* cpu/be2_array: Fix handling of cnl::fixed_point in a be2_array.
* cmake: Install vcpkg runtime dependencies when using vcpkg.
* Switch cnl submodule to upstream cnl.
* cmake: Do not build SPIRV with -fno-rtti
* Switch gsl-lite submodule to upstream.
* Fix gcc build.
* cmake: Add hint for ffmpeg headers on Linux
* cmake: Restore DECAF_FFMPEG option.
* cafe/nn_ec: Add some nn::ec types.
* cafe/nn: Add nn::os::CriticalSection.
* vcpkg: Add as a submodule.
* Replace unmaintained cpptoml with toml++
* Update README.md
* decaf-qt: Add missing include to QAbstractButton
* Restore submodules for less widely available libraries.
* cafe/nlibcurl: Stub curl_global_init_mem.
* cafe/gx2: Fix missing export of GX2GetPolygonControlReg.
* Fix assertWarnFailed using wrong file / line.
* Add basic ErrEula display to decaf-qt.
* gpu: Fix spirv createAccessChain with newer glslang.
* latte-assembler: Fix usage of deprecated format_to
* ci: Use github.repository_owner in create-release.
* Add fmt formatters for vfs::Error and gpu::WindowSystemType.
* cafe/gx2: Remove rogue pragma pack from gx2_fenc.h
* Support building with either Qt5 5.15+ or Qt6.
* Update build instructions.
* Update usage of deprecated fmt::format_to API.
* Port to vcpkg
* cmake: Add CXXFLAG -Wno-invalid-offsetof
* cafe/gx2: Add GX2SetGPUFence implementation.
* vfs: Fix OverlayDirectoryIterator not correctly iterating directories.
* ci: Only upload to releases on master.
* CI: Fix user id
* MISC: restore spacing
* create releases
* cafe/nn_acp: Fix format of enum.
* readme: clarify that GitHub login is required
* readme: reflect the current state of binaries
* readme: add filters to actions URL
* cafe/gx2: Sanitise frontFace in GX2InitPolygonControlReg
* cafe/nn_ndm: Fix return type of Finalize.
* cafe/nn_ndm: Implement IsInitialized correctly now we have /dev/ndm
* ios/net: Add /dev/ndm server.
* cafe/nn_vctl: Implement Initialize / Finalize.
* cafe/nn_ndm: Implement Initialize / Finalize correctly.
* ios/nsec: Fix exportInternalServerCertificate.
* ios/nsec: Implement exportInternalClientCertificate
* ios/nsec: Fix file handle leak and ios heap memory leak.
* ios/nsec: Fix certstore metadata reading.
* ios/crypto: Implement IOSC_Decrypt.
* ios/crypto: Read keys from OTP.
* ios/kernel: Change IOS_ReadOTP buffer type to void *
* ios/kernel: Add some OTP fields to enum.
* cafe/coreinit: Fix capitalisation of IM{Get,Set}DimEnable{TV,DRC}.
* Bump addrlib
* cafe/gx2: Handle tilemode 0x20 in GX2CalcSurfaceSizeAndAlignment.
* decaf-qt: Block loading of non-existant files with an error message.
* Update README.md
* Update README.md
* Update README.md
* ios/crypto: Fix signed unsigned comparison.
* libdecaf: put usercontext in the iosu thread structure
* cafe/gx2: Fix copySurface not using dstLevel/dstSlice.
* cafe/gx2: Fix GX2CalcSurfaceSizeAndAlignment.
* Bump addrlib
* cafe/sndcore2: Fix ADPCM decoding
* cafe/sndcore2: Use correct length for resampled buffers
* cafe/sndcore2: Fix conversion of samples for final mix callback
* cafe/nn_boss: Fix conditional in NbdlTaskSetting_Initialize
* Remove IRC from README
-------------------------------------------------------------------
Sun Jul 18 14:49:30 UTC 2021 - virtuousfox@gmail.com
- Update to version 20210718T133639:
* latte-assembler: Add additional CfInstProperties
* cmake: Use windeployqt to copy Qt dependencies to bin dir.
* libdecaf: Remove installing of conan ffmpeg dll
* Remove ffmpeg from Windows CI builds and from conanfile.
* Move to decaf-emu/cpptoml fork and fix build for g++ 11
* Update glslang to 11.5.0
* ci: Disable MacOS builds because installing vulkan is complicated.
-------------------------------------------------------------------
Sat Jul 17 19:14:03 UTC 2021 - virtuousfox@gmail.com
- Update to version 20210717T161954:
* ci: Disable MacOS builds because installing vulkan is complicated.
* ci: Demos folder no longer exists in Vulkan SDK.
* ci: Fix MacOS url for vulkan 1.2.182
* Update BUILDING.md
* Revert "Update libraries/cpp-peglib"
* ci: Update to Vulkan 1.2.182.0
* Fix some issues with latest Vulkan SDK.
* Update conan sdl.
-------------------------------------------------------------------
Sun Jul 04 06:37:16 UTC 2021 - virtuousfox@gmail.com
- Update to version 20210413T090500:
* Fix QObject::connect: No such slot MainWindow::toggleFullScreen()
-------------------------------------------------------------------
Mon Feb 22 18:00:15 UTC 2021 - virtuousfox@gmail.com
- Update to version 20210221T113754:
* ci: Remove installation of CMake 3.16 as runners now have 3.19 installed.
* ci: Fix usage of deprecated set-env.
* Update libraries/cnl
* Update libraries/excmd
* Update decaf-qt to be Qt6 compatible.
* Switch CNL to decaf fork.
* common: Fix stdint includes to use the C++ version
* cafe: Fix ambiguity in PPC interface is_gpr64_type
* gpu: Fix spv builder using double version of pow.
* Update libraries/cpp-peglib
* Update libraries/qtads
* Update libraries/gsl-lite
* Change back Windows QTDIR variable
* Fix CI runs after github actions deprecations
* Bump required cmake version to support new layer validation
* Replace deprecated VK layer validation
-------------------------------------------------------------------
Tue Oct 20 10:50:52 UTC 2020 - virtuousfox@gmail.com
- Update to version 20201009T160937:
* libgpu: check return codes, not exceptions, for noexcept vulkan funcs
-------------------------------------------------------------------
Wed Sep 16 14:51:32 UTC 2020 - pousaduarte@gmail.com
- Update to version 20200907:
* ci: Upload artifacts for all platforms
* Update cnl
* ci: Fix CI.
-------------------------------------------------------------------
Sat Jun 27 17:39:27 UTC 2020 - pousaduarte@gmail.com
- Update to version 20200626:
* decaf-qt: Fix StackWidget access of invalid iterator.
* libgpu: Fix build with latest Vulkan SDK.
* Update suggested apt dependencies for Linux
-------------------------------------------------------------------
Tue May 19 09:15:30 UTC 2020 - pousaduarte@gmail.com
- Update to version 20200425:
* cafe/gx2: Fix GX2TVScanMode.
* Fix CI builds.
* Update qtads.
* Update spdlog to 1.5.0
* Update fmt to 6.1.2
-------------------------------------------------------------------
Fri Jan 03 09:03:53 UTC 2020 - pousaduarte@gmail.com
- Update to version 20191231:
* decaf-qt: Do not include espresso_disassembler during moc.
* Bump addrlib
* gpu/latte: Print unexpected generated surface format.
* common: Add missing null terminators to stack trace.
-------------------------------------------------------------------
Sat Dec 28 15:53:11 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191227:
* decaf-qt: Add missing return true to renderwidget mouse event handling
* cafe/nn_temp: Implement TEMPChangeDir{Async}.
* cafe/nn_temp: Implement TEMP{Mount,Unmount}TempDir.
* cafe/nn_temp: Implement TEMPOpenNewFile{Async}.
* cafe/nn_temp: Implement TEMPRename{Async}.
* cafe/nn_temp: Implement TEMPRemove{Async}.
* cafe/nn_temp: Implement TEMPGetStat{Async}.
* cafe/nn_temp: Implement TEMPOpenDir{Async}.
* cafe/nn_temp: Implement TEMPMakeDir{Async}.
* ios/auxil: Trim strings read from config.
* cafe/nn_temp: Implement TEMPOpenFile{Async}.
* cafe/nn_temp: Implement TEMPGetFreeSpaceSize{Async}.
* ios/mcp: Update title id in mcpPrepareTitle52 if it is DefaultTitleId.
* decaf-qt: Add context menu option "Copy title path" for title list.
* common: Fix missing explicit conversion on return type for trim.
* ios/auxil: Trim XML text for HexBinary type.
* common: Return std::string from trim() and add trim_view() for string_view.
* decaf-qt: Trim fields read from XML files in TitleListScanner.
* ios/crypto: Initial stub implementation of /dev/crypto.
* ios/mcp: Rename sData to sPmThreadData in ioc_mcp_pm_thread.
* ios/mcp: Fix pm thread priority.
* ios/kernel: Remove thread_local from sCurrentThreadContext.
* ios/kernel: Fix process initial thread stack allocation.
* ios/kernel: Add otp.bin reading.
-------------------------------------------------------------------
Fri Dec 20 13:14:10 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191220:
* cafe/nn_act: Implement GetNfsPassword{Ex} had HasNfsAccount.
* gpu/spirv: Implement RECIP{SQRT}_{FF,CLAMPED}.
* gpu/spirv: Fix caching of float values.
* cafe/gx2: Change setTexture to only warn about unaligned textures.
* Removed OpenGL from README
* Update BUILDING.md
-------------------------------------------------------------------
Thu Dec 19 19:28:24 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191219:
* cafe/nn_ac: Start using /dev/ac_main services.
* cafe/nn_acp: Fix duplicated include.
* cafe/nn: Add ipc::Client::isInitialised function.
* cafe/nn/ipc: Add const where applicable.
* ios/net: Add basic /dev/ac_main implementation.
* ios/nim: Add missing pragma once.
* nn/ac: Add AcService.
* cafe/hle: Fix tracing of strings with nullptrs.
* ci: Update from macOS-10.14 to macOS-latest.
* decaf-qt/debugger: Improve shortcut contexts.
* Update BUILDING.md
* ios/net: Implement getsockname.
* ios/net: Improve socket closing.
* gpu/vulkan: Add some missing member variable initialisation to Driver.
* ci: Switch MacOS vulkan sdk download to gstreamer mirror.
* ci: Cache Vulkan on macOS.
* ios/net: Implement send and recv for /dev/socket.
* ios/net: Implement /dev/socket getpeername.
* cafe/nsysnet: Implement send.
* cafe/nsysnet: Implement getpeername.
* cafe/nsysnet: Fix signed / unsigned comparison.
* ios/net: Fix variable shadowing.
* ios/net: Initial /dev/socket implementation.
* cafe/nsysnet: Implement more socket functions.
* ios/net: Add more socket structures.
* ios/net: Add IOS_NET logger.
* cmake: Add libuv and c-ares.
* ci: Add conan install to MacOS
* ci: Update conan to use VS2019.
* conan: Add libuv and c-ares.
* cmake: Cleanup options.
* ios/fs: Add support for logging of all filesystem operations.
* decaf: Add support for setting log level per logger.
* coreinit: Mark OSExitThread as noreturn.
* decaf-qt: Fix invalid code hidden in assert.
* vfs: Ensure directory iteration returns contents sorted alphabetically.
* common: Fix string_copy on non-Windows platforms.
-------------------------------------------------------------------
Tue Dec 17 18:57:27 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191217:
* vfs: Use cross platform std::errc for translating errors in host device.
* cafe/nsysnet: Remove initialiseNSSL function.
* ios: Add IoctlVecAlign constant.
* cafe/hle: Add support for specifying custom alignment of stack objects.
* ios/nn: Add missing case for TlsEntryEvent::GetSize
* cafe/coreinit: Fix buffer size in OSPanic
* common: Add missing <memory> include to log.h
* libdecaf: Fix lib name in default trace filters
-------------------------------------------------------------------
Sun Dec 15 12:52:38 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191214:
* cafe/coreinit: Add missing switch case.
* cafe/hle: Fix ambiguous RegisterTypeInfo.
* cafe: Add missing switch case.
-------------------------------------------------------------------
Wed Dec 11 17:26:07 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191210:
* cafe/vpad: Fix implementation of VPADGetTPCalibratedPoint{Ex}.
* cafe/vpad: Implement VPAD{Get/Set}TPCalibrationParam.
* cpu: Add std::initializer_list for be2_array.
-------------------------------------------------------------------
Tue Dec 10 22:33:40 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191210:
* cafe: Removed unused variable causing warning.
* ci: Add Vulkan to macOS builds
* gpu: Remove addrlibopt.
* Remove some unused includes.
* cafe/gx2: Change tiling apertures to use new tiling code.
* ci: Cleaned up and started caching Windows Vulkan and Qt.
* Update BUILDING.md
* gpu: Fix some warnings.
* vfs: Fix some warnings.
* vfs: Add missing virtual destructors.
* decaf: Fix some more warnings.
* cafe/kernel: Add missing newline to end of file.
* cpu: Fix initialisation order in be2_array.
* Enabled /W4 warning level on MSVC.
* decafsdl: Cleaned up to pass /W4 without warnings.
* tools: Cleaned up to pass /W4 without warnings.
* libdecaf: Cleaned up to pass /W4 without warnings.
* gpu: Cleaned up to pass /W4 without warnings.
* cpu: Cleaned up to pass /W4 without warnings.
* gpu/vulkan: Updated to latest version of vk_mem_alloc.
* common: Fixed implicit cast warning in tga_encoder.
* jit: Fix code-cache to use aligned offsets.
* cafe/nn_olv: Fix DownloadedDataBase_GetRegionId return value.
* gpu/vulkan: Align shader push constant size to 16 bytes.
* decaf: Add some missing includes.
* common: Change trim to inline instead of static.
* gpu/valkan: Change validateDevice to warn.
* gpu/vulkan: Add better support for loading extensions / features.
* gpu/vulkan: Fix gpu7_tiling shader on MoltenVK.
* common: byte_swap_to_scratch do not align past end of data.
* gpu/vulkan: Fix invalid iterator decrement.
* decaf-sdl: Only update window title from SDL thread.
* cpu: Refactored headers a bit to only include whats needed.
* Fix to use fmt/format.h instead of fmt/core.h
* decaf-sdl: Add support for MoltenVK.
* gpu: Add support for MoltenVK.
* cafe: Split guest and host invocation code into separate places.
* cafe: Pulled cafe registration funcs into their own file.
* cafe: Cleaned up cafe_hle_library header.
* cpu: Removed unused header inclusion.
* global: Reduced usage of fmt/format.h to only where neccessary.
* snduser2: Fixed enumeration to avoid conflicts.
* cafe: Updated HLE to implicitly call relocateHleLibrary.
* cafe: Move HLE trace implementation to .cpp file to improve compile times.
* cafe/nsysnet: Implement NSSLExportInternalClientCertificate.
* ios/nsec: Stub implementation of NSSLExportInternalClientCertificate.
* cafe/nsysnet: Implement NSSLExportInternalServerCertificate.
* ios/nsec: Implement NSSLExportInternalServerCertificate.
* ios/nsec: Add own logger instead of using gLog.
* ios/fpd: Reformat some long lines.
* common: Add trim(string_view) to strutils.
-------------------------------------------------------------------
Sat Dec 07 15:23:36 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191207:
* cmake: Build SPIRV without -fno-rtti
* cafe/h264: Add missing include to cmath.
* build: Improved MSVC project grouping.
* build: Switched to using CMake PCH rather than Cotire.
* gpu/pm4: Cleaned up Pm4Processor now that OpenGL is gone.
* gpu: Removed OpenGL implementation as it was out of date.
* common: Fixed more X11 shenanignas for vulkan include.
* common: Added missing header to platform_sockets for select.
* cafe/hle: Add missing include to unordered_map.
* gpu/vulkan: Fix cast in debugMessageCallback.
* Add missing includes
* cafe/ios: Fixed copy-paste error in account manager setup.
* libcpu: Massively improved compile time by avoiding pathological case.
* decaf/ios: Added some missing headers.
* platform/windows: Remove unnecessary windows includes.
* cafe/coreinit: Implement FSAChangeDir, FSAGetStatFile.
* ios: Change loggers to not include spdlog header.
* cmake: Change glslang to use add_subdirectory instead of externalproject.
* Update spdlog to 1.4.2 + fixes
* Update fmt to 6.1.0
* Add missing includes.
* gpu7/tiling: Fixed incorrect usage of addrlib types.
* gpu7/tiling: Added missing include header for std::memcpy.
* decaf: Fixed non-permissive compiler error from cnl change.
* gpu7: Add const to pitched arg for unpitch methods.
* gfdtool: Fix for new untiling API.
* gpu: Removed some pragma optimize's committed in error.
* opengl: Fixed warnings generated by glad define pollution.
* msvc: Fixed linker warnings caused by missing pdbs.
* msvc: Disable warnings for non-portable safe string function variants.
* cafe/gx2: Fixed enum warnings from empty enums in gx2_enum.
* msvc: fixed build issues caused by newest msvc release.
* latte: Fixed incorrectly sized register component for textures.
* vulkan: Fixed error where incorrect sampler data was selected.
* cafe/gx2: Removed unused function from top of samplers file.
* gpu: Major refactor of retiler implementation.
* Switch to CNL instead of fixed_point
* latte-assembler: Fixed warning from implicit cast.
* msvc: Disabled msvc c++ permissive mode to capture bad coders.
* retile-test: Removed mipmaps as they do not affect the retiler.
* gpu7: Drop unused slice argument from computeSurfaceInfo
* gpu7: Refactor retiling execution to its own namespace.
* gpu7: Remove dependancy on addrlib from gpu7 tiling headers.
* latte-compiler: Removed pragma optimize included in error.
* opengl: Added undef to avoid APIENTRY definition error from glad.
* disabled nothrow warning generated by Vulkan SDK.
* common: Fixed some minor compiler warnings/issues with flags/enums.
-------------------------------------------------------------------
Tue Dec 03 19:26:00 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191202:
* cafe/coreinit: Change OSDriver_Copy{From,To}SaveArea to be a stub returning TRUE.
* ios/mcp: Fix LoadFile path for CafeOS code.
* cafe/gx2: Fix WriteGatherPtr memcpy.
* cafe/nn_act: Add AcquireNexServiceToken.
* ios/net: Add some more socket command ids.
* ios/auxil: Use phys_ptr in ios UCSysConfig.
-------------------------------------------------------------------
Sun Dec 01 15:51:36 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191130:
* decaf-qt/debugger: Fix register updating
* decaf-qt/debugger: Update Registers to match other widgets.
* decaf-qt/debugger: Add copy support for Disassembly / Memory / Stack.
* decaf-qt/debugger: Add context menu support to AddressTextDocumentWidget.
-------------------------------------------------------------------
Sat Nov 30 12:22:03 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191129:
* decaf: Fix wrong pragma pack.
* decaf-sdl: Fix mouse input on DRC screen.
* tools/pm4-replay: Add support for looping replay.
* cafe/gx2: Update pm4cap for little endian shadow state.
* cafe/gx2: Change pm4cap surface calculation to use newer gpu7 tiling code.
* gpu: Remove explicit register sync which was previously used in pm4 capture.
* tools/pm4-replay: Fix some bugs with newer gpu interface.
* tests/gpu_tiling: Fix vulkan to use new tiling description.
* gpu/gpu7_tiling: Fix untileMip for formats which modify numSlices.
* gpu/gpu7_tiling: Fix unpitching for Texture3D.
* gpu/gpu7_tiling: Fix computeSurfaceInfo sliceSize for Texture3D.
* gpu7/tiling: Change how SurfaceDescription is specified.
* tests/gpu/tiling: Enable mipmap testing.
* tests/gpu/tiling: Fix inputBaseMap value for mipLevels != 0.
* tests/gpu_tiling: Fix indentation in addrlib_helpers.h
* spirv: Fix ArrayStride decorations causing validation warnings.
* replay: Correctly initialize GPU register state before running replay.
* vulkan: Added support for inserting debug markers in command stream.
* vulkan: Added render-bypass for fully invalid render targets.
* gpu/vulkan: Fix warning around operator &.
* vulkan: Fixed viewport flipping from recent register fix.
* cafe/gx2: Fix GX2GetViewportReg implementation.
* cafe/gx2: Fix GX2InitViewportReg implementation.
* vulkan: Use the correct stage bits for streamout counter reads.
* vulkan: Switch to using StorageBuffer's rather than UniformBuffer's.
* vulkan: Added warn handling for VS_PARTIAL_FLUSH
* cafe/gx2: Do not write capture tag groups when debug capture is not enabled.
* cafe/gx2: Fix GX2CallDisplayList using IndirectBufferCall instead of Priv
* cafe/kernel: Fix mapping physical to virtual address when codegen is disabled.
* cafe/gx2: Fix GX2DrawIndexedImmediateEx byte order.
* replay: Added gpu configuration
* common: Updated warning assertions to only print once
* spirv: Updated RECT drawing to correctly handle params.
* vulkan: Fixed DMA index swap modes being used on non-DMA draws.
* vulkan: Fixed buffer overruns causing graphical flaws.
* pm4: Do not byte-swap shadow register reads/writes.
* vulkan: Don't dump invalid shaders.
* vulkan: Fix handling of no-raster framebuffer creation.
* latte: Fix serialisation of EventWrite packet.
* vulkan: Added temporary handling and docs for CACHE_FLUSH.
* cmake: Add option to disable generation of version header from git state.
-------------------------------------------------------------------
Sun Nov 24 13:48:48 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191124:
* tools/pm4-replay: Refactor and fix a few bugs.
-------------------------------------------------------------------
Sat Nov 23 18:18:06 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191123:
* spirv: Improved implementation of CUBE operation.
* spirv: Added original latte disassembly to generated SPIRV shaders.
* pm4: Fixed issue with no-notify not correctly clearing vertex semantics.
* ci: Improve artifact upload.
* Move wut based tests to their own repository.
* latte-assembler: Remove build dependency on libgpu.
* gfd-tool: Fix missing null terminator.
* latte-assembler: Add prototype support for GLSL compiliation.
* latte-assembler: Fix uniformVars default block index.
* latte-assembler: Rename compile -> assemble.
* cafe/gx2: Fix endian issue in debugCaptureTagGroup.
* cafe/gx2: Add missing surface sync in gx2 load state.
* decaf-qt: Fix missing 0 initialisation of keyboard state.
-------------------------------------------------------------------
Mon Nov 18 19:49:05 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191117:
* vulkan: Use tri strip instead of list for quad strip.
* vulkan: Implement line loop.
* vulkan: Rewrite push constants and implement point size.
-------------------------------------------------------------------
Sun Nov 17 18:48:45 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191117:
* ci: Fix for new aqtinstall changes.
* cafe/gx2: Fix GX2PatchDisplayList buffer priority.
* vulkan: Ignore primitive reset for primitive types which do not support it.
* vulkan: Improve vertex generation for RECTLIST.
* cmake: Fix glslang linking in debug mode.
* cmake: Define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL=0
* vfs: Fix virtual directory iteration.
* ios/mcp: Give full permissions to titles with no app.xml
* cafe/nn_nim: Implement client Initialize / Finalize.
* cafe/nn_spm: Implement spm client Initialize/Finalize and SetAutoFatal.
* ios/nim: Stub /dev/boss and /dev/nim server.
* ios/acp: Add spm::ExtendedStorageService
* ios/pad: Initial implementation of /dev/usb/btrm and /dev/usb/early_btrm.
* logo.svg: Simplify stroke for D
* cafe/coreinit: Register OSDrivers with kernel.
* cafe/kernel: Add support for user mode driver registration.
* cafe/kernel: Add missing call to initialise work area heap.
-------------------------------------------------------------------
Wed Nov 13 19:10:04 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191111:
* cafe/coreinit: Implement MCP_DeviceList and MCP_FullDeviceList.
* coreinit/mcp: Fix memset when IPC allocation fails.
* ios/mcp: Add initial implementation of MCPCommand::DeviceList
* cafe/coreinit: Fix IPCBufPoolCreate setting wrong messages pointer.
* tools/wiiu-rpc: Fix server for large sends which return EWOULDBLOCK.
-------------------------------------------------------------------
Sat Nov 09 18:34:27 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191109:
* cafe/gx2: Fix initialisation of tvScanMode.
-------------------------------------------------------------------
Sat Nov 09 17:06:03 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191109:
* cafe/nn_act: Implement IsServerAccountDeleted{Ex}.
* cafe/coreinit: Fix MEMCreate* functions checking base pointer too early.
* decaf-qt: Rescan titles when directory list changes.
* resources: Cleanup gradients in logo svg.
* decaf-qt: Add filter for non-system titles.
* Update logo to an actual vectorised svg.
* decaf-qt: Add missing copy of Qt5Xml dll
* decaf-qt: Improve title filtering.
* ci: Build decaf-qt on Linux,
* ios/fpd: Implement AccountLoaderService.
* ios/fpd: Move AccountData out to it's own file.
* cafe/nn_act: Add AccountLoaderService and implement LoadConsoleAccount.
* cafe/nn_act: Implement GetBirthday{Ex}.
* nn/act: Add AccountLoaderService.
* cafe: Add bool type for ppc interface.
* nn_act: Add AccountManagerService and CreateConsoleAccount command.
* cafe/nn_cmpt: Implement CMPTAcctGetPcConf.
* cafe/sysapp: Stub SYSGetStandardResult and SYSGetLauncherArgs.
* cafe: Implement StackObject and StackArray value initialisation.
* cafe/coreinit: Implement OSGetSystemMode.
* decaf-qt: Remove pragma optimize.
* cafe/coreinit: Fix UCReadSysConfig not handling data nullptr correctly.
* cafe/coreinit: Fix UCWriteSysConfig not copying setting value.
* cafe/kernel: Fix booting rpx with cos.xml with missing argstr.
* fix linux build
* Revert "cafe/coreinit: Check interrupts during busy loops."
-------------------------------------------------------------------
Thu Nov 07 19:28:42 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191106:
* qt: Add title list.
* cafe/coreinit: Check interrupts during busy loops.
* decaf: Rename hasExited to stopping.
* qt/debugger: Open debugger on game interrupt.
* decaf/debugger: Fix MemoryWindow default column count to 16.
* decaf/debugger: Do not enable resume button when game has exited.
* qt/debugger: Fix MemoryWidget cursor.
* qt/debugger: Add memory widget copying.
* decaf/debug_api: Fix gpr[1] when a paused core is inside a kernel call.
* cafe/kernel: Call cpu::halt on exit when break_on_exit is set.
* actions: Fix Windows CI.
* conan: Set dependency override for zlib and libpng.
* nn/act: Change some result level.
* nn/ios: Change Result to ResultRange.
* cafe/tcl: Improve call to gpu ringbuffer write.
* cafe/nn_uds: Stub uds api cpp constructor.
* cafe/nn_act: Implement some more functions.
* ios/nn/act: Implement getMiiImage.
* gpu/vulkan: Fix FPS counter.
* gpu/vulkan: Fix printing of vulkan extensions.
* nn/act: Fix usage of InOutBuffer instead of OutBuffer.
* cafe/nn_boss: Add Storage and AlmightyStorage types.
* cafe/gx2: Write GXSet{DRC,TV}Buffer directly to gpu ring buffer.
* cafe/coreinit: Fix debug formatters.
* cafe/nn_sl: Export ITransferrer TypeID.
* cafe/hle: Add support for exporting TypeID symbols.
* conan: Try ignore warnings from conan setup commands.
* conan: Try ignore warnings from conan setup commands.
* conan: Override libpng dependency of broken openjpeg (via ffmpeg).
-------------------------------------------------------------------
Sun Nov 03 15:11:17 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191103:
* ci: Pin conan to 1.19.2
* ios/fpd: Fix template parameter type.
* nn/ipc: Fix serialisation of split buffers.
* ios/fpd: Improve account initialisation, including loading from mlc.
* ios: Add missing const for phys_ptrs.
* cafe/coreinit: Fix virt_cast missing const.
* Fix instances of const virt_ptr<T> which should be virt_ptr<const T>.
* cpu: Fix const consistency with pointer casts.
* cpu: const Pointer<T> should not dereference to T*
* cpu: Fix pointer_dereference_type removing qualifiers for T=void.
* ios/fpd: Improve default account creation.
* cpu: Enable be2_array operator=T[N] for all T rather than just char.
-------------------------------------------------------------------
Thu Oct 31 14:25:19 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191027:
* nn/ipc: Add result codes.
* nn/boss: Add result codes.
* ios/fpd: Add /dev/act implementation and change cafe/nn_act to use it.
* cafe/nn: Fix unaligned buffer serialisation.
* cafe/nn: Fix InOutBuffer serialisation.
* cafe/coreinit: Add tm_msec and tm_usec for OSTicksToCalendarTime.
-------------------------------------------------------------------
Sun Oct 27 16:13:27 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191027:
* decaf-qt: Fix mouse and keyboard input.
* cafe/nn_sl: Implement some nn_sl functions.
* cafe/hle: Add support for registering type info with no vtable.
* cafe/nn_boss: Add missing type info for nn::boss::PlayReportSetting.
* cafe/hle: Relocate host type descriptor / virtual pointers.
* cafe/hle: Fix rpl generation of type descriptors.
* cafe/hle: Register __pure_virtual_called and std::type_info destructor.
* cafe/hle: Add support for aligning strings added to sections.
* cafe/coreinit: Implement MCP_Update{CheckContext,CheckResume,GetProgress}.
* cafe/coreinit: Implement MCP_GetErrorCodeForViewer.
* Update BUILDING.md
* Update VulkanSDK to 1.1.121.2
* cmake: Set CMP0072 policy
-------------------------------------------------------------------
Sat Oct 26 20:42:41 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191026:
* cafe/nsysnet: Implement NSSL{DestroyContext,AddServerPKI,AddServerPKIExternal}.
* cafe/nsysnet: Implement NSSL{Init,Finish,CreateContext}.
* ios/nsec: Add /dev/nsec and /dev/nsec/nssl.
* ios/net: Add SOShim_{Open,Close,GetProcessSocketHandle}.
* ios/net: Implement SocketCommand::GetProcessSocketHandle.
* ios/net: Fix socketIoctl using wrong request id.
* ios/net: Add some more SocketCommand ids.
* cafe/gx2: Stub GX2GetLastFrame{B,GammaA,GammaB}.
* decaf: Add debug.break_on_exit option.
* qt/debugger: Add breakpoints view.
* qt/debugger: Adjust line highlight colours for disassembly & stack.
* qt/debugger: Add window icon for debugger.
* qt/debugger: Fix lifetime of debugger window.
* qt/debugger: Add navigation to stack widget.
* qt/debugger: Add current stack address highlighting to StackWidget.
* qt/debugger: Fix stack widget symbol name.
* qt/debugger: Fix AddressTextDocumentWidget not redrawing when manually requested.
* qt/debugger: Improve stepping through code.
* qt/debugger: Highlight whole line for breakpoints and current instruction.
* cafe/nn_acp: Implement ACPConvertNetworkTimeToOSCalendarTime.
* cafe/proc_ui: Implement ProcUIIsRunning.
* qt/debugger: Connect navigate actions.
* qt/debugger: Add breakpoints to DebugData.
* qt/debugger: Add support for custom selections in AddressTextDocumentWidget.
* qt/debugger: Fix AddressTextDocumentWidget recalculating document every draw.
-------------------------------------------------------------------
Mon Oct 21 19:55:36 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191020:
* nn/dbg: Add Get*String methods for nn::Result.
* gpu: Remove pragma optimize.
* cafe/nn/acp: Fix result type from ACP* functions.
* nn: Improve nn::Result to handle legacy result types.
* cafe/coreinit: Fix OSGetStackPointer.
* cafe/coreinit: Fix OSPanic stack trace.
* cafe/nn_save: Fix SAVEGetSharedSaveDataPath returning wrong path.
* Remove leftover debug message.
* Revert "gpu/vulkan: Improved performance of descriptor write setup."
* conan: Revert to curl 7.64.1
* gpu: Add some more logging during vulkan initialisation.
* decaf-qt: Fix X11 window type.
* decaf-qt: Start logging before starting graphics driver.
* decaf-qt: Fix Tools > Debugger button not working.
* decaf-qt: Fix disassembly widget / stack widget frame drawing.
* Fix Vulkan XLIB.
* Use add_definitions instead of target_compile_definitions for vulkan.
* cmake: Correctly detect support for x11 / xcb / wayland.
* gpu: Fix some X11/Xcb initialisation.
* cmake: Disable RTTI on Linux for files which use spv::Builder.
* gpu: Fix setup of glad post callback.
* libgpu/opengl: Fix some X11 context creation code.
* cmake: Add X11 to libgpu.
* decaf-qt: Fix missing include for QPlatformNativeInterface
* decaf-qt: Fix include paths in debugger ui files
* decaf-qt: Fix usage of std::unique_ptr on forward declared type.
* glad: Fix redefinitions of pre/post callback.
* glad: Add missing wgl extensions
* gpu: Use glad for glx & wgl.
* sdl: Fix renderSurface cast from x11 window
* cmake: Only add glad when DECAF_GL is set.
* cpu: Fix 2pl failure with custom formatters.
* gpu/opengl: Move glad post callback from lamba to static function.
* common: Fix DataHash for non-stdlayout bitfield due to VS2019.
* gpu: Move from glbinding to glad.
* gpu: Add missing include to cmath.
* Remove imgui based debugui.
* Move ownership of rendering to graphics backends.
* decaf-qt: Initial version of Qt based decaf debugger.
* cmake: Disable cotire pch for libgpu as glbinding is sensitive to include order.
* cmake: Remove MSVC /GA flag for external dependencies.
-------------------------------------------------------------------
Thu Oct 03 12:06:27 UTC 2019 - pousaduarte@gmail.com
- Update to version 20191001:
* cafe/loader: Fix R_PPC_GHS_REL16_HA.
-------------------------------------------------------------------
Sun Sep 29 17:32:24 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190927:
* Update README.md
* Update ccpp.yml
* Update README.md
* Update ccpp.yml
* tests: Fix gpu tiling test compile.
* tests: Fix compile from changes to cpu disassembly functions.
* cmake: Add missing Windows libraries.
* Replace appveyor/travis with github actions.
* common-sdl: Add missing includes.
* cpu: Remove deprecated fmt internal convert_to_int specialisation for be2_val.
* cmake: Set CMAKE_CXX_STANDARD
* decaf-qt: Initialise decaf at time of game starting.
* Update spdlog to 1.4.0
* Update fmt to 6.0.0
* cmake: Fix filesystem build on macOS.
* conan: Update dependencies.
* cmake: Only build glbinding submodule with DECAF_GL.
* decaf/debug: Check for valid address before add / remove breakpoints.
* decaf/debug_api: Verify pm4 capture state before performing action.
* cafe: Remove leftover pragma opt.
* cpu: Improvements to disassembly.
* decaf: Optimise debug API readMemory and writeMemory to check validity per page.
* decaf: Add debug API isValidVirtualAddress and getMemoryPageSize
* cpu: Fix disassembleBranchInfo
* debugui: Prevent a buggy stack from causing infinite loop.
* debugger: Fix usage of return value from decaf::debug::findClosestSymbol.
* cafe/kernel: Fix use of getCurrent*Id from non-ppc cores (such as for debugger).
-------------------------------------------------------------------
Sat Sep 14 11:58:18 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190913:
* common/assert: Use abort instead of __builtin_trap on POSIX platforms
-------------------------------------------------------------------
Thu Jun 27 20:44:47 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190624:
* Check vulkan extensions are available when creating device
-------------------------------------------------------------------
Sat Jun 22 10:49:23 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190621:
* Vulkan: pass vkGetDeviceProcAddr to vk::DispatchLoaderDynamic::init
-------------------------------------------------------------------
Wed May 08 12:39:52 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190507:
* vfs: fix makeFolder failure on GNU/Linux
-------------------------------------------------------------------
Fri May 03 21:38:36 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190503:
* cafe: Remove erroneous StackArray constructor.
* cafe/coreinit: Change OSDriver_Register to not always use callerModule.
* cafe: Improve StackObject.
* cafe: Improve stack back chain handling when calling from HLE to user code.
-------------------------------------------------------------------
Sat Mar 30 14:38:25 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190329:
* Update VulkanSDK to 1.1.101.0
* Add (unsupported) MacOS build instructions.
-------------------------------------------------------------------
Thu Feb 21 21:00:12 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190220:
* appveyor: Update to Qt 5.12
* ios/mcp: if cos.xml doesn't have any permissions then grant full permissions
* cafe/nn_boss: Add PlayLogUploadTaskSetting.
* cafe/nn_boss: Fix NetTaskSetting type info.
* cafe/nn_boss: Implement PrivateTaskSetting functions.
* cafe/nn_boss: Fix type info for RawUlTaskSetting.
* cafe/nn_boss: Add NbdlTaskSetting.
* cafe/coreinit: Print guest stack trace on OSPanic.
-------------------------------------------------------------------
Mon Feb 11 19:11:53 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190210:
* Use a union for bitfields when DECAF_USE_STDLAYOUT_BITFIELD is defined
-------------------------------------------------------------------
Sat Feb 09 14:03:23 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190209:
* libdecaf: Further correction of stop/join logic
* decaf-cli: timeoutMutex is now in scope of timeoutThread
* libdecaf: Cafe kernel exit causes IOS hardware thread to stop
* libdecaf: Separate thread stop/join code
* cafe/nn_olv: Fix missing return value from UploadedPostData_Constructor.
* cpu: Cleanup host exception handling.
* cpu: Cleanup alarm thread.
* cpu: Cleanup gJitMode and gJitVerifyAddress.
* Update libbinrec.
-------------------------------------------------------------------
Fri Feb 08 13:22:43 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190206:
* cafe/coreinit: Fix calls to unlock mutex when mutex is not held.
* cafe/coreinit: Fix OSJoinThread for detached threads.
* cafe/nn_olv: Fix DownloadedPostData calling wrong parent constructor.
* cafe/coreinit: Remove check for tags in mutex/fastmutex/semaphore.
* cafe/coreinit: Implement OSGetCodegenVirtAddrRange.
* cafe/kernel: Fix mapping of codegen area.
* ios/fs: Change /dev/fsa GetCwd to ensure returned path always ends in separator.
* cafe/coreinit: Implement FSAppendFile.
* ios/fs: Implement /dev/fsa appendFile.
* cafe: Stop using classes to HLE classes.
* cafe/coreinit: Implement UCDeleteSysConfig{Async}.
* cafe/kernel: Do not try to map unimplemented memory ranges.
* cafe/nn_pdm: Initial implementation of nn_pdm.
* vfs: Add support for more operations in overlay device.
* vfs: Fix incorrect error.
* decaf: Log build date and git version.
* decaf-qt: Fix log message of config path.
-------------------------------------------------------------------
Mon Feb 04 19:33:05 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190204:
* Fix some compiler warnings.
* cafe/gx2: Create AppIo thread for event callbacks.
* cafe: Fix some indentations.
* decaf: Initialise /vol/temp folder.
* ios/fs: Change getInfoByQuery FreeSpaceSize to return 0 for not found directories.
* ios/fs: Stub ChangeMode ioctl implementation.
* cafe/nn_temp: Fix temp directory path.
* cafe/coreinit: Fix FSBind{Mount,Unmount}Async.
* gpu/spirv: Implement LSHR_INT.
* gpu/spirv: Implement FLT_TO_UINT and UINT_TO_FLT.
* ios/mcp: Remove debug code....
* ios/mcp: Attempt to mount update folder for loaded title.
* ios/fs: Add FSAOpenDir, FSACloseDir ipc.
* ios/fs: Add FSAStat ipc.
* ios/fs: Fix MSAMountWithProcess and FSAUnmountWithProcess to use priority.
* vfs: Add support for unmounting overlay devices with specific priority.
* cafe/kernel: Remove dead comment.
* cmake: Simplify shader compile.
* Fix tiling_test build
* fix rpx file extension parsing
* libgpu/vulkan: Config option for only dumping shader binaries
* libgpu/vulkan: Dump shader binaries
* gpu: Fix spiv::getFunction trying to create an entry point instead of function.
* decaf: New VFS implementation.
-------------------------------------------------------------------
Fri Feb 01 13:36:36 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190131:
* common: Change log.h to no longer include spdlog.h
* cpu: Fix ambiguous partial specialisation for be2_val and fmt.
* cmake: Try fix vulkan shader compile dependencies.
* cafe: Move decaf_warn_stub logging to source file to avoid log include.
* Fix some includes.
* cpu: Use forward declarations for custom fmt formatters.
* common: Include intrin.h instead of Windows.h in bitutils.h
* Use WIN32_LEAN_AND_MEAN where possible.
* common: Add missing includes from platform_posix_memory.
* common: Change platform_winapi_string to take a string_view.
* common: Remove debuglog.h
* common: Fixed decaf_assert.h including spdlog.
* common: Moved fixed point bitfield handling to fixed.h
* cafe: Removed direct include of spdlog in HLE invoke tracer.
* decaf: Fix name collision with interface macro from Windows.h
* .gitignore: Add hfio/ and sdcard/
* common/strutils: Remove old defines of snprintf and vsnprinft.
* ios/net: Fix name collision with Windows.h s_addr macro.
* cmake: Add cotire for precompiled header generation.
* common: Rename inline enum headers from *.h to *.inl
* Added the Git and Appveyor version information to the about dialog.
-------------------------------------------------------------------
Tue Jan 29 13:39:06 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190129:
* cmake: Remove install for tests.
* cmake: Install required ffmpeg binaries on Windows.
* cmake: Install required Qt DLLs on Windows.
* libdecaf: implement getResourcePath() which searches for resource files; update related code
* cmake: Modify resource install path.
* cmake: Modify binary install path.
* appveyor: Pin download to specific VulkanSDK version.
-------------------------------------------------------------------
Sun Jan 27 22:49:46 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190127:
* Fix case-sesitivity issue
-------------------------------------------------------------------
Thu Jan 24 21:16:48 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190123:
* Added a menu option to go into full screen mode.
-------------------------------------------------------------------
Sat Jan 19 17:57:46 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190117:
* Fix conanfile for python3
* ios/auxil: Fix writeItems when reading an empty XML document.
* ios/auxil: Fix config deleteItems not writing correct data to file.
* ios/mcp: Fix default rtc config version.
-------------------------------------------------------------------
Mon Jan 14 12:57:21 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190114:
* Remove pragma opt
* travis: Update brew
* Remove final piece of the legacy kernel, kernel_filesystem.h - woooo.
* cafe/nn_save: Reimplement using ACP.
* nn/acp: Implement some SaveService functions.
* cafe/nn/act: Move SlotNo definitions to nn/act
* ios/nn: Pass ResourceRequest as a command handler arg.
* nn: Add operator bool to nn::Result.
* ios/fs: Implement MountWithProcess and UnmountWithProcess device functions.
* ios/fs: Add FSAUnmountWithProcess IPC.
* ios/mcp: Set process title and group id for launched process.
* ios/mcp: Initialise process title id and group id.
* ios/kernel: Add IOS_SetProcessTitle.
* cafe/kernel: Fix compile warning with OverlayArenaSize being ptrdiff_t.
-------------------------------------------------------------------
Sat Jan 12 19:28:19 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190112:
* cafe/hle: Improve unexpected kernel call error message.
* ios/fs: Add IPC for FSAMountWithProcess.
* appveyor: Disable LTCG.
-------------------------------------------------------------------
Thu Jan 10 19:07:18 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190110:
* decaf-qt: Add average FPS and frametime to status bar.
* cpu/memtrack: Fixed a major race condition.
* cpu: Reduced memory indirection for fetching the core id.
* cafe: Correct templated registration pattern for GCC.
* cafe/kernel: Refactored kernel calling for performance.
* general: Improved performance related compile time flags.
* cpu/jit: Disable JIT profiling mode by default.
* cpu/jit: Reduce levels of code-cache indirection.
* gpu/vulkan: Fix empty descriptor writes being dispatched.
-------------------------------------------------------------------
Sun Jan 06 18:08:56 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190106:
* A better fix for the crash that occurred when cpptoml::parse_file(path) throws an exception.
* Formatting
* Fixed a crash that was occurring when clicking the apply settings button.
* Fixed a crash that occurred when applying settings.
* gfd-tool: Add support for disassembling raw shader binaries.
* decaf-qt: Fix saveSettings to succeed if there is no existing config file.
* decaf-qt: Add missing call to saveSettings.
-------------------------------------------------------------------
Sat Jan 05 18:37:31 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190105:
* cafe/gx2: Fix queueCommandBuffer to only submit memwrite when needed.
* cafe/kernel: Fix effectiveToPhysical for overlay arena.
* cafe/kernel: Implement mapping of OverlayArena.
* decaf-qt: Fix colourlineedit.h include path
* Update BUILDING.md
* decaf: Fix thread safety for event listeners.
* decaf-qt: Implement SoftwareKeyboardDriver.
* decaf: New software keyboard API.
* Initial implementation of decaf-qt.
* QVulkanWindow2: Add support for setting physical device features.
* QVulkanWindow2: Add extra graphics queue for libgpu to use.
* QVulkanWindow2: Change gfxQueueFamilyIdx to also require COMPUTE + TRANSFER.
* QVulkanWindow2 copy of official QVulkanWindow + QVulkanWindowPrivate.
-------------------------------------------------------------------
Fri Jan 04 19:33:04 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190103:
* cafe/kernel: Fix unset ram partition title info.
* debugui: Fix consumption of input events when debugger is not visible.
* decaf: Fix touch screen input x / y.
* decaf-sdl: Fix loading of background_colour config option.
* decaf-sdl: Fix axis input.
* ios/mcp: Read title_id from app.xml
* Update BUILDING.md
* cafe/hle: Make invalid trace filter errors non-fatal.
* Refactor configuration for libcpu, libgpu and libdecaf.
-------------------------------------------------------------------
Wed Jan 02 16:23:02 UTC 2019 - pousaduarte@gmail.com
- Update to version 20190102:
* Updated README with Discord link.
-------------------------------------------------------------------
Sun Dec 30 19:54:16 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181230:
* decaf-sdl: Move hidpi.manifest to resources folder
* debugui: Do not use decaf debug api until it is ready.
* decaf: Refactor the code analysis API.
* cpu/espresso: Add functions for disassembling branch info.
* decaf: Add pm4 capture debug API and use it from libdebugui.
* Move imgui debugger to own library libdebugui.
* Move decafsdl_sound from decaf-sdl to common-sdl.
* common-sdl/vulkan: Recreate swapchain when acquireNextImage returns OutOfDate error.
* common-sdl/vulkan: Recreate swapchain when a present returns OutOfDate error.
* common-sdl/vulkan: Use dynamic scissor in render pipeline.
* common-sdl/vulkan: Move createRenderPass out of createSwapChain.
-------------------------------------------------------------------
Thu Dec 20 12:09:33 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181219:
* gpu/spirv: Possibly fixed GET_TEXTURE_INFO.
-------------------------------------------------------------------
Wed Dec 19 15:36:17 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181219:
* travis: Update to latest xcode
* cpu: Implemented initial support for doing write-tracking.
* gpu/vulkan: Improved performance of descriptor write setup.
* common: Fix exception handler always installing as first-chance handler.
* common: Moved range combiner to common library.
* gpu/vulkan: Fixed issue with objects not hashing correctly.
* gpu/vulkan: Implemented support for push descriptors.
* gpu: Substantially refactored shader translation.
* gpu/vulkan: Fixed memory segments hashing wrong data.
* gpu/vulkan: Optimized and abstracted memory segment management.
* gpu/vulkan: Optimized draw resource updating.
* spirv: Improved shader description hashing performance.
* gpu: Optimized PM4 processor register handling.
* gpu: Optimize PM4 reading with vectorized swapping and scratch.
* gpu/vulkan: Use more performant templates for RangeCombiner.
* gpu/vulkan: Use pipeline cache when creating pipelines.
* gpu/vulkan: Implemented pooling for stream out context buffers.
* gpu/vulkan: Upload stream out contexts using FillBuffer.
* gpu/vulkan: Use power-of-2 pooling for staging buffers.
* gpu/vulkan: Optimized indexes with vectorized byte swapping.
* common: Added vectorized byte-swapping routines.
* gpu/vulkan: Improved memsegment iteration.
* gpu/vulkan: Fix a small performance error from by-ref lambda.
* gpu/vulkan: Do not prepare Stream Out when it is disabled.
* sdl/vulkan: Improved handling of frame rendering.
* gpu/spirv: Added Origin execution mode for pixel shaders.
* gpu/vulkan: Switch to using XXHash for hashing.
* gpu/vulkan: Add some ignored validation errors for Xfb.
* gpu/vulkan: Batch draws into render-pass oriented groups.
* gpu/vulkan: Implemented GPU retiling.
* gpu7/tiling: Optimized the Vulkan retiler a bit.
* cafe/gx2: Improve some memory semantics.
* gpu/vulkan: Fixed memory caches not being included in perf debug info.
* gpu/pm4: Fixed copy-paste assertion placement error.
* sdl/input: Fixed compiler warning due to implicit type-casting.
* Remove some accidentally included pragma optimize directives.
* conan: Fixed conanfile to work with Python 3
* Fix oopsy
-------------------------------------------------------------------
Tue Dec 18 13:46:28 UTC 2018 - pousaduarte@gmail.com
- Update to version 20181218:
* cafe/hle: Properly initialize LibraryFunction fields
* Move build instructions to BUILDING.md
* Update glslang to 7.10.2984
* travis: Enable ffmpeg and Vulkan
* cmake: Enable ffmpeg and Vulkan build by default.
* appveyor: Enable Vulkan builds.
* ios/acp: Fix casts between unsigned long and uint32_t.
* appveyor: Fix for when conan is loaded from cache
* travis: Fix MacOS cmake not finding OpenSSL.
* cafe/nlibcurl: Initial curl implementation.
* cmake: Disable pm4-replay-qt build as it is currently broken.
* Bump libraries/addrlib.
* cmake: Copy ffmpeg .dll to output directory.
* Update appyveyor for new dependencies.
* Add a conanfile for dependencies.
* cmake: Cleanup some library dependencies.
* cmake: Use find_package for ffmpeg.
* Remove SDL and zlib as a submodule and use find_package instead.
* nn/ac: Stub ReadConfig.
* coreinit/im: Fix imCopyData.
* cafe/nn_ac: Stub GetStartupId.
* cafe/sysapp: Stub SYSGetCaller{UPID,TitleID,PFID}.
* ios/acp: Implement ACPGetTitleMetaXML.
* cafe/nn_acp: Implement ACPGetTitleIdOfMainApplication.
* Refactor decaf input API to sample per controller rather than per button.
* common/enum: Add operator |= &= ^= for flag enums.
* tests/tiling: Substantially improved testing coverage.
* tests: Added GPU7 retiling test tool.
* gpu7/tiling: Added Vulkan GPU retiling support.
* gpu7/tiling: Added support for 16/32bpp depth surfaces.
* gpu7/tiling: Moved some things to header for vulkan retiler.
* gpu7/tiling: Fixed a few compiler warnings.
* gpu7/tiling: Change to rely on addrlib ComputeSurfaceInfo and fix bank swap.
* vulkan: Don't take the address of temporaries.
* vulkan: Fix missing function declarations.
* gpu7/tiling: Calculate offset within thick slices for current slice.
* gpu7/tiling: Degrade from macrotiling to microtiling for mip level when appropriate.
* gpu7/tiling: Add calculateMipSurfaceInfo method.
* gpu7/tiling: Fix pitch alignment for macro tiled formats.
* gpu7/tiling: Fix pitch alignment for bank swapped formats.
* gpu7/tiling: Fix wrong elemBytes for MicroTiler128.
* gpu7/tiling: Fix missing tileThickness for pitch alignment.
* gpu7/tiling: Fix missing offsetLow for macro tiling.
* Update addrlib to get fix.
* gpu7/tiling: Some fixes to getMipSurfaceInfo.
* gpu7/tiling: Change untileImage to untile up to aligned numSlices.
* gpu7/tiling: Use mipmap level baseAddressAlignment.
* gpu7/tiling: Calculate offset within thick slices for current slice
* gpu7/tiling: Fix mipmap tileMode calculation.
* Update Catch to v2.5.0
* tests/alarm_multithread: Remove use of default core threads
* tests/cpu: Fix build errors from incompatible lambda expression
* tests/hle: Update to support building with new wut versions
* tools/wiiu-rpc: Update client.py
* wiiu-rpc: Fixes for newer wut versions
* cafe/hle: Unpack name and symbol in when for looping over mSymbolMap
* vulkan: Implement stream-out support using transform feedback.
* vulkan: Fix depth/stencil group copies.
* vulkan: Improved memory barrier semantics.
* vulkan: Fixed memcache incorrectly refreshing caches.
* vulkan: Improved staging buffer management.
* vulkan: Fixed illegal use of gl_VertexID and gl_InstanceID.
* vulkan: Fixed unneeded extra descriptor pool reset.
* vulkan: Fixed issue with some surface samples being set incorrectly.
* vulkan: Improved debug naming for some objects.
* vulkan: Fixed surface debug names missing some information.
* vulkan: Improved handling of shader write masking.
* vulkan: Improved viewport handling.
* vulkan: Added handling for missing shader binds.
* vulkan: Improve scan-buffer copy semantics.
* vulkan: Removed legacy code committed in error.
* cafe/gx2: Fixed error causing stencil surfaces to be uncreatable.
* vulkan: Improved handling of culling/polytype/bias state.
* common: Added a non-abortive assertion (decaf_check_warn).
* vulkan: Check results from AMD Vulkan Memory Allocator
* vulkan: Minor compilation fixes and one possible bug
* cafe: Add StackFrame class which sets up a stack frame for a HLE function.
* cafe/h264: Fix ffmpeg receiveFrames result code.
* Add a H264 decoder implementation based off of ffmpeg.
* common: Fix platform_winapi_string.h include for non-Windows platforms.
-------------------------------------------------------------------
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.