mirror of
https://github.com/suyu-emu/drippu-rep.git
synced 2026-09-21 14:44:58 -07:00
codex/release-version-input
117
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
8eca0b58cf | docs: present drippu as suyu experimental edition (#33) | ||
|
|
21a7fbd5c1 |
macOS: port MoltenVK Apple Silicon path + GPU init guards (#28)
* fix(macos): port MoltenVK Apple Silicon path and GPU init guards Port applicable patches from dougchansan/suyu-v0.0.4#1 onto drippu: bundled MoltenVK for the suyu target, recursive CAMetalLayer search in the Qt frontend, SDL Metal layer (not NSView), and shared GPU/process unwind guards. CMake targets remain suyu/suyu-cmd; the packaged artifact is drippu.app. Co-authored-by: Dallin Bland <SourCreamCulture@users.noreply.github.com> * fix(macos): create CAMetalLayer when Qt VulkanSurface walk is empty VulkanRenderWidget still uses QWindow::VulkanSurface, which often leaves a QContainerLayer and no CAMetalLayer. Walk the layer tree first, then alloc/init a CAMetalLayer, setWantsLayer, and setLayer on the NSView. Log critically if attachment still fails; vulkan_surface continues to refuse a null layer. Replace the dead USE_SYSTEM_MOLTENVK CI flag with YUZU_USE_BUNDLED_MOLTENVK=OFF so release.yml matches brew molten-vk. Co-authored-by: Dallin Bland <SourCreamCulture@users.noreply.github.com> * ci(macos): PR MoltenVK smoke on Apple Silicon Qt path Add macos-15 pull_request CI that builds suyu, suyu-cmd, and a focused macos_moltenvk_smoke using the live Qt GetWindowSystemInfo CAMetalLayer attach plus Vulkan metal surface creation. The job fails unless the log shows MoltenVK device init. Also set SDL_WINDOW_METAL on the live SDL Vulkan window and document brew vs bundled MoltenVK plus LIBVULKAN_PATH for suyu-cmd. Co-authored-by: Dallin Bland <SourCreamCulture@users.noreply.github.com> * ci(macos): drive live VulkanRenderWidget MoltenVK device+swapchain Fix Qt 6 void QWindow::create() so the smoke compiles. Host a QApplication VulkanRenderWidget, snapshot InitRenderTarget WSI before addWidget, load MoltenVK from suyu.app Frameworks with LIBVULKAN_PATH unset, and require CreateDevice plus swapchain on that surface. PR CI uses bundled MoltenVK (ON) and runs the binary from inside the app. Co-authored-by: Dallin Bland <SourCreamCulture@users.noreply.github.com> * fix(macos): hide unused suyu-cmd recomp lambda from -Werror place_one is only called from SUYU_CMD_STATIC_RECOMP and Win32 DLL loaders. Wrap it and the usings only it needs so macOS -Werror=unused does not fail suyu-cmd. Windows and static-recomp paths are unchanged. Co-authored-by: Dallin Bland <SourCreamCulture@users.noreply.github.com> * fix(macos): link frontend_common into MoltenVK smoke place_one is already ifdef-guarded. The smoke now compiles but fails to link PlayTimeManager, which core's NS query service expects from frontend_common (same as suyu-cmd). Co-authored-by: Dallin Bland <SourCreamCulture@users.noreply.github.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Dallin Bland <SourCreamCulture@users.noreply.github.com> |
||
|
|
9e1a0c8bde |
User-facing drippu rebrand (strings, README, original icon)
Present the product as drippu without mass path/target renames. Add an original drippu.svg mark, retitle README as an active fork continuation, and update About/window titles, desktop/metainfo, installer display name, and Android app strings. Keep QSettings and binary names (suyu) stable for config and build compatibility. Co-authored-by: Dallin Bland <SourCreamCulture@users.noreply.github.com> |
||
|
|
f265d95f04 | FINAL | ||
|
|
c9dc3018cc |
revert: restore README and BUILD_FULLNAME to v0.04
Reverts the mk8-recomp fork's version bump to v0.0.5. PROVENANCE.md is left as-is since it documents that fork's own real fixes and versioning rationale as a historical record. |
||
|
|
79d982f798 |
docs: finish neutralising the comments, and repair two broken by the pass
A blind substitution left "the target title 8 / Deluxe's" in program_metadata.cpp and "two the target title updates" in the README, and it left the version numbers and NAND directory indices that made the anonymising pointless. Comment-only. The rationale in each is worth keeping - it is why the code looks the way it does - but none of it needed a version, an index or a measured share to make its point. Leaves src/frontend_common/firmware_manager.h alone: that title ID is upstream's, not ours. |
||
|
|
5f48ddebf3 |
docs: Linux builds and runs; record what it needs that Windows does not
The README said only the Windows build was exercised. Both now build and run, and the five Linux-specific requirements are worth stating rather than rediscovering: CMake 3.31, bundled fmt, Qt6 Charts, system Boost, and skipping the ownfoil submodule. |
||
|
|
5760549db8 |
docs: README reflects the continuation and what changed in 0.0.5
The archive banner said this was the final release and that no further development was planned, which stopped being true when the fork picked it up. Replaced with a continuation notice: where the base came from, why the name and version line are kept, and what the (mk8-recomp) suffix in BUILD_FULLNAME is for. Added a Changes in v0.0.5 section. Five of the entries are defects in suyu itself rather than recompiler work and matter to anyone running the emulator - in particular that no installed update or DLC was ever indexed in NAND, for any title, which also explains why the installed-title listing always reported zero. Also noted that only the Windows build is exercised here. Linux and Android are inherited from upstream and have not been built since the fork; claiming otherwise in a status section would be a guess. |
||
|
|
6164f7aae4 | docs: point releases link to releases index (repo-agnostic relative URL) | ||
|
|
170d7a2f7d | docs: remove unrelated affiliation notice from legal section | ||
|
|
9d1cfc03de |
docs: update README legal notice with DMCA/GPLv3 legal text
Co-Authored-By: suyu team <suyu@suyu-emu.org> |
||
|
|
7e10f046be |
rebrand: rename EdenPath API to SuyuPath, fix Eden SPDX headers, update CONTRIBUTING/README
- Rename EdenPath/GetEdenPath/SetEdenPath -> SuyuPath/GetSuyuPath/SetSuyuPath across 59 src files - Fix "Eden Emulator Project" SPDX headers -> "suyu Emulator Project" in 1968 files - Fix local variable names (eden_dir/eden_link/eden_path/m_eden -> suyu_*) - Fix copyright comment in yuzu_room.h and "eden account" comment in main_window.cpp - Revert CONTRIBUTING.md to pre-Eden suyu version - Update README legal section with original suyu legal text - Remove stray dist/qt_themes/default/icons/256x256/eden.png Co-Authored-By: suyu team <suyu@suyu-emu.org> |
||
|
|
7bf50dbfbb |
chore: debloat root dir and update README to archive notice
- Remove debug scripts, logs, build artifacts, test PNGs from repo root - Update README: archive notice, recompiler description, Eden attribution Co-Authored-By: suyu team <suyu@suyu-emu.org> |
||
|
|
5ae62b0c6c | Fix Stubs and Port Changes from Eden | ||
|
|
21020280b6 |
Fix/dynarmic vcpkg msvc ci (#88)
* vcpkg overlay: remove vendored xbyak, disable warnings-as-errors; CI: ensure MSVC env is initialized before CMake and cleanup debug/share * CI: setup MSVC env + disable tests; vcpkg: add glslang tools * CI: disable Qt in main Windows job to avoid missing Qt dependency; keep MSVC env setup * DownloadExternals: don't claim bundled binaries when archive missing; add mcl overlay with versioned config; add sdl2 to manifest * Update cpp-httplib submodule to latest commit * Initial plan * Fix build: switch to Conan, add missing workflow files, fix Vulkan SDK hang * Fix codespell: skip vcpkg_installed directory * Initial plan * Address reviewer comments: fix find_program NAMES, mcl portfile REF/install/config, workflow CONAN_HOME and -UseBasicParsing, toJson log injection * Add Linux (GCC) and macOS (Apple Clang) build jobs to cmake-multi-platform.yml * Fix workflow cache variable names and document agentic workflows in README * Initial plan * fix: update auto-fix-workflows trigger branches and permissions for changed base branch * Initial plan * Fix workflow triggers, Conan 2.x cache variable, and agentic bot permissions * Add fix/dynarmic-vcpkg-msvc-ci to suyu-ci and suyu verify PR triggers * Fix duplicate shell key in cmake Configure CMake step, add Android build PR triggers * Fix cpp-httplib submodule, codespell infP false positive, and REUSE compliance for all 108 missing files * Fix Linux Conan xorg/system missing X11 dev packages and verify.yml container EACCES permission error * Fix Android duplicate drawable resources and macOS missing FFmpeg dependency * Add FFmpeg dev packages to Linux apt-get install for CMake FindFFmpeg * Switch Windows Vulkan SDK install from direct download (hangs) to chocolatey * Fix remaining workflow failures: Linux xcb-util pkgs, CMake policy compat, Vulkan SDK fallback, verify git safe.directory, Android layout root ID mismatch * Address code review: extract Vulkan SDK version to env var, add timeout comment * Strip trailing whitespace from 28 files to pass suyu verify format check * Remove src.bak.20251103_153257 backup dir (36MB) and eden_conflicts artifact * Fix Linux libudev-dev, autoupdate.yml missing run key, Android missing styles/strings, review feedback * Initial plan * Fix workflow bugs: runner labels, deprecated actions, broken step IDs, package names Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/b6faad50-85a4-4c00-b095-a13021d141ff * Remove vk_texture_manager stub, restore vcpkg.json, remove autoupdate no-op stub step Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/88f79c2b-e2ef-439f-bcc5-4d41f2eb80ab * Fix CI failures: conanfile sdl2→sdl, vcpkg remove boost-headers, clang-format fixes Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/4f31b9e3-cd49-438e-9c3a-18706b1838c3 * Fix CI: clang-format files, CMake duplicate subdirs, libglu, glslangValidator PATH, macOS zstd conflict, Android SUYU_TESTS Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/1af86774-b1eb-42e9-a1ee-09297035f409 * Fix CI: mesa-common-dev, ENABLE_QT=OFF all platforms, zstd 1.5.6, brew unlink zstd, clang-format 4 files, Android multiplayer strings from Eden Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/34369fa5-d1b3-48e1-b0b5-b95bc4a5470c * Update cpp-httplib * Enhance CMake configuration: update C++ standard to C++20, add platform and architecture detection modules, and improve build presets for optimized architecture targeting. * Add ModeSelector dialog for user mode selection with descriptions and settings persistence * Add new UI components: DecryptionFlowWidget, EmulatorCoreManager, McpServer, ProgrammerEnvironment, SocialSidebar, SteamIntegration, and UserManualWidget * Add new components: DecryptionFlowWidget, EmulatorCoreManager, McpServer, ProgrammerEnvironment, SocialSidebar, SteamIntegration, and UserManualWidget * Refactor firmware installation and decryption key handling: remove deprecated checks and update user prompts * Implement mode-specific UI adjustments: add ApplyAppMode function to manage visibility of UI components based on user mode selection. * Refactor code structure for improved readability and maintainability * Add CMake build scripts for MSVC configuration and logging * Enhance CMake configuration: add support for additional tests and features, handle missing dependencies, and improve error messaging for external downloads * Add SDL2 and FFmpeg support in CMake configuration and improve build scripts * Add build script for MSVC using CMake - Created a new batch file `run_build.bat` to automate the build process. - The script sets up the Visual Studio environment and navigates to the project directory. - It executes the CMake build command targeting the 'suyu' project. - Captures and displays the exit code of the build process. * update * Fix dynamic vcpkg integration for MSVC CI * Enhance CMake configuration and add compatibility files for improved build support * Add interface mode change action and update UI components * Add interface mode change handler to GMainWindow * Add build configuration scripts for MSVC integration * Add build script for MSVC4 configuration and test files - Created `build-msvc4-config2.cmd` to automate the build configuration process using CMake with specified options. - Added `build-msvc4-test.txt` as a placeholder for test output verification. - Introduced `testout2c.txt` for additional test output, currently containing binary data. * Add build script for MSVC4 configuration and test files - Created a new batch script `build-msvc4-config2.cmd` to automate the build configuration process for MSVC4, including setting up the environment and invoking CMake with specified options. - Added a test file `build-msvc4-test.txt` containing a simple "ok" message for verification purposes. - Introduced `testout2c.txt` with binary content for further testing. * Add ProcDump output files for process monitoring - Created procdump_output.txt to capture the output when no matching process is found. - Created procdump_output2.txt to log details of the monitored process 'suyu.exe', including exit information and dump settings. * Add new PNG image file win_0_12257664.png * Update subproject commit and adjust widget initialization in GMainWindow * Add GamerEnvironment and related UI components for enhanced gaming experience - Introduced GamerEnvironment class to manage the new gaming interface. - Implemented GameCardDelegate for rendering game cards with cover art and information. - Added UI elements including a sidebar for navigation and a main content area for game display. - Integrated functionality for searching games, adding directories, and loading games. - Restored ApplyAppMode function in main.cpp to handle switching between different application modes. - Updated main.h to include GamerEnvironment and its associated members. - Created fix_main.py script to automate the restoration of the ApplyAppMode function. * Enhance ModeSelector UI and functionality with improved layout and styling * Refactor code structure for improved readability and maintainability * Add automated tests for menu interactions and MCP server functionality - Created test_all_menus.ps1 to automate menu item interactions and capture dialog screenshots. - Implemented test_mcp.ps1 for testing JSON-RPC 2.0 protocol over TCP with various method calls. - Added test_mcp2.ps1 for additional MCP tool tests, including error handling for unknown methods and malformed JSON. - Introduced test_menu_async.ps1 to test menu interactions asynchronously and capture dialog outputs. - Developed test_single_menu.ps1 for single menu item invocation and dialog handling. - Created verify_menus.ps1 to verify the presence and state of menu items in the application. * Update URLs to new website domain for localization and application settings - Changed app disclaimer and help links in Vietnamese, Simplified Chinese, Traditional Chinese, and English strings to point to the new website domain. - Updated web API URL in settings to reflect the new domain. - Modified TAS configuration help link to use the new website. - Adjusted various navigation links in the gamer environment and main application to direct users to the new website. * Add multiplayer server management features and settings * Add ModBrowserDialog for mod management and update multiplayer connection handling * Add 'Add to Steam' option in game context menu and implement shortcut creation * Enhance loading screen UI and add agentic workflow documentation for GitHub Actions * Refactor library page layout and enhance UI components for better user experience * Enhance button styling in GamerEnvironment for improved UI responsiveness * Enhance loading screen with spinner animation and artwork type selection for Steam integration * build * Add game overlay feature with F1 shortcut and corresponding UI integration * Refactor Steam integration to use public Steam Store endpoints for artwork fetching and update related UI components for improved user experience * fix dlls * Add support for Hacker and Gamer modes in application startup and enhance MCP server tool registration * Refactor web service settings and UI components for Eden integration * Refactor settings and authentication to replace 'suyu' references with 'eden' for improved account integration * Fix build issues and warnings in Suyu project - Added missing Q_OBJECT macro in game_card.cpp and game_library.cpp to resolve AutoMoc warnings. - Addressed warning C4267 in configure_web.cpp regarding conversion from 'size_t' to 'int' by ensuring proper type handling. - Updated build output to reflect successful compilation of additional source files and linking of the executable. * better steam * Fix room creation logic by removing unused parameter and add include test file * Update archived About/Workflow links and apply current tracked changes * Refactor GMainWindow to support multiple application modes and improve MCP server handling - Updated OnEmulationStopped to show appropriate environment based on current mode (Gamer, Programmer). - Removed unnecessary checks in OnGameListShowList for Hacker mode. - Enhanced ToggleWindowMode to display the correct environment for Gamer and Programmer modes. - Refactored MCP server initialization to be available in all modes, ensuring correct state reporting for Gamer and Hacker environments. - Improved handling of game directory addition and listing in MCP server. - Added HactoolIntegration class for managing external decryption tools, including scanning for tools, extracting NCA, NSP, and XCI files, and detecting extracted content. - Implemented file and directory existence checks to ensure robust tool management. - Introduced progress callbacks for extraction operations to provide user feedback. - Enhanced Vulkan graphics pipeline to improve image handling and resource management. - Updated texture cache to synchronize aliases only when necessary, optimizing performance. * Implement random number generation utilities and refactor UUID and network components to use them * Refactor hactool integration to use pointer for VFS operations and clean up game list header includes * Add screenshot functionality for 'suyu' application using PowerShell - Created 'take_screenshot.ps1' to capture a screenshot of the 'suyu' window. - Utilized user32.dll for window manipulation and System.Drawing for image processing. - Implemented a delay before capturing the screenshot to ensure the window is fully rendered. Add UI Automation click functionality for 'suyu' application - Created 'uia_click.ps1' to find and invoke a button in the 'suyu' window using UI Automation. - Captured the window's screenshot after attempting to click the button. - Enumerated all UI elements to provide feedback if the target button is not found. * Add PowerShell script for UI flow verification and screenshot capture - Introduced `verify_ui_flows.ps1` to automate the verification of UI flows in the 'suyu' application. - Utilized UI Automation to interact with application windows and controls. - Implemented functionality to capture screenshots of the Social view, Multiplayer lobby, and Export dialog. - Added error handling and logging for invoked controls. * Add screenshot for public room verification and PowerShell script to set dialog text and click button - Added a PNG screenshot for verifying public rooms. - Created a PowerShell script `set_dialog_text_and_click.ps1` to automate setting text in a dialog and clicking a button using Windows API calls. * fix: update CPU configuration handling for improved compatibility with MSVC * Add PowerShell script for MCP UI testing and automation - Implement Send-McpRequest function to handle JSON-RPC requests over TCP. - Establish TCP connection to the MCP server on localhost at port 9742. - Send initialization and notification requests to the MCP server. - Create a series of tool calls to interact with the MCP UI, including setting app mode, navigating views, refreshing feeds, and capturing screenshots. - Output responses from the MCP server for each request. * feat: implement real ARM64 AOT basic block analysis in game_export Replace stub RunAotPrecompile() with real implementation that: - Opens ROM files via VFS (NSP/XCI/NCA container support) - Parses NSOHeader structs and decompresses .text segments via LZ4 - Performs two-pass ARM64 linear sweep basic block analysis - Detects all branch types: B, BL, BR, BLR, RET, CBZ/CBNZ, TBZ/TBNZ, B.cond, SVC - Extracts direct branch targets for block boundary discovery - Writes binary .blockmap files (AOTB format) for runtime JIT pre-warming - Generates JSON manifest v2 with real module data: build IDs, segment addresses, block counts, instruction counts - Falls back to disk-based ExeFS reading when VFS extraction unavailable - Saves extracted ExeFS content to cache for standalone packaging This enables the AOT export pipeline to produce real block maps that the runtime can use to pre-compile ARM64 code blocks on startup instead of lazily JIT-compiling on first execution. * feat: replace built-in decryption with external tool hook system - Add ExternalDecryptionTool class (external_decryption_tool.h/.cpp) supporting hactool, Ryujinx, Eden, Yuzu, and custom tools - QSettings persistence for tool selection and path - QProcess-based tool invocation with timeout and error handling - Auto-detect tools on PATH via QStandardPaths::findExecutable - Full dialog UI with tool picker, path editor, browse, status indicator - Hide action_Install_Keys in UI, add action_Configure_External_Decryption - Replace OnInstallDecryptionKeys body to redirect to external tool dialog - Add OnConfigureExternalDecryption to main.cpp/main.h - Update game launch warning to mention external tool option - Soften OnCheckFirmwareDecryption to INFO level - Update MCP get_keys_status to report external tool configuration - Disable old DecryptionFlowWidget via #if 0 in decryption_flow.h/.cpp - Remove decryption_flow from CMakeLists.txt, add external_decryption_tool * feat: update game export dialog for native export artifacts and improve user manual instructions * fix: reorder includes in game_export.cpp to resolve macro conflicts * fix(suyu): resolve C4458/C4005 in game_export.cpp + add mcl include path - Add explicit #include common/assert.h before #undef guards so #pragma once is set before Dynarmic/mcl headers are included (works with or without PCH) - Rename local var 'data' -> 'nso_bytes' to fix C4458 hiding QWidget::data - Add externals/dynarmic/externals/mcl/include to suyu target_include_directories since merry::mcl is LINK_ONLY in dynarmic's export, so its include path does not propagate to consumers like suyu * feat: add build script for MSVC using subprocess to automate build process * feat: enhance external decryption tool integration and improve UI feedback for SSL status * Remove obsolete scripts and logs; add build script for CMake configuration and Ninja build * conan * Refactor key management and enhance decryption flow - Updated KeyManager to support additional key types and improved key loading mechanism. - Removed legacy key file handling in ReloadKeys and integrated external content pipeline. - Enhanced LoadFromFile to handle key parsing more robustly. - Modified DecryptionFlowWidget to reflect changes in key management and provide clearer instructions for external decryption tools. - Updated main application logic to accommodate external decryption configurations and removed local key installation functionality. - Added new NAX0 processing functionality to handle encrypted content extraction. - Introduced new test data files for cryptographic operations. * fix: improve error logging for ROM loading and enhance key area key validation * feat: add logging for key presence during key reload * feat: implement PowerShell fallback for Reddit feed loading in social sidebar * fix: handle exceptions during disk shader cache loading * Refactor code structure for improved readability and maintainability * Add logging functionality and PowerShell script for MCP testing - Created a new log file 'suyu_combined.log' to capture application logs. - Implemented a PowerShell script 'test_mcp.ps1' to automate testing of the MCP interface. - The script initializes the MCP, captures screenshots in different modes, and outputs the results. * style: update loading screen UI and progress bar aesthetics; enhance error handling in game boot and command line * fix: add exception handling for emulation thread and game export; improve error reporting * fix: add exception handling for disk shader cache loading; ensure proper emulation thread management * fix: add exception handling and logging for time synchronization; implement game list population cancellation --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> |
||
|
|
8cc806aebf | Update README.md | ||
|
|
a02c291083 |
Update README with DMCA and interoperability details
Added clarification on DMCA exemptions and user-provided keys. |
||
|
|
7498e9b2c3 |
Revise README for project clarity and updates
Updated README to reflect project changes and clarify usage. |
||
|
|
46156a01d8 |
Revise license section to include legal notice
Updated legal notice regarding licensing and compliance with DMCA. |
||
|
|
24c562379b |
Fix building (#79)
* vcpkg overlay: remove vendored xbyak, disable warnings-as-errors; CI: ensure MSVC env is initialized before CMake and cleanup debug/share * CI: setup MSVC env + disable tests; vcpkg: add glslang tools * CI: disable Qt in main Windows job to avoid missing Qt dependency; keep MSVC env setup * DownloadExternals: don't claim bundled binaries when archive missing; add mcl overlay with versioned config; add sdl2 to manifest * Update cpp-httplib submodule to latest commit * Initial plan * Fix build: switch to Conan, add missing workflow files, fix Vulkan SDK hang * Fix codespell: skip vcpkg_installed directory * Initial plan * Address reviewer comments: fix find_program NAMES, mcl portfile REF/install/config, workflow CONAN_HOME and -UseBasicParsing, toJson log injection * Add Linux (GCC) and macOS (Apple Clang) build jobs to cmake-multi-platform.yml * Fix workflow cache variable names and document agentic workflows in README * Initial plan * fix: update auto-fix-workflows trigger branches and permissions for changed base branch * Initial plan * Fix workflow triggers, Conan 2.x cache variable, and agentic bot permissions * Add fix/dynarmic-vcpkg-msvc-ci to suyu-ci and suyu verify PR triggers * Fix duplicate shell key in cmake Configure CMake step, add Android build PR triggers * Fix cpp-httplib submodule, codespell infP false positive, and REUSE compliance for all 108 missing files * Fix Linux Conan xorg/system missing X11 dev packages and verify.yml container EACCES permission error * Fix Android duplicate drawable resources and macOS missing FFmpeg dependency * Add FFmpeg dev packages to Linux apt-get install for CMake FindFFmpeg * Switch Windows Vulkan SDK install from direct download (hangs) to chocolatey * Fix remaining workflow failures: Linux xcb-util pkgs, CMake policy compat, Vulkan SDK fallback, verify git safe.directory, Android layout root ID mismatch * Address code review: extract Vulkan SDK version to env var, add timeout comment * Strip trailing whitespace from 28 files to pass suyu verify format check * Remove src.bak.20251103_153257 backup dir (36MB) and eden_conflicts artifact * Fix Linux libudev-dev, autoupdate.yml missing run key, Android missing styles/strings, review feedback * Initial plan * Fix workflow bugs: runner labels, deprecated actions, broken step IDs, package names Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/b6faad50-85a4-4c00-b095-a13021d141ff * Remove vk_texture_manager stub, restore vcpkg.json, remove autoupdate no-op stub step Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/88f79c2b-e2ef-439f-bcc5-4d41f2eb80ab * Fix CI failures: conanfile sdl2→sdl, vcpkg remove boost-headers, clang-format fixes Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/4f31b9e3-cd49-438e-9c3a-18706b1838c3 * Fix CI: clang-format files, CMake duplicate subdirs, libglu, glslangValidator PATH, macOS zstd conflict, Android SUYU_TESTS Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/1af86774-b1eb-42e9-a1ee-09297035f409 * Fix CI: mesa-common-dev, ENABLE_QT=OFF all platforms, zstd 1.5.6, brew unlink zstd, clang-format 4 files, Android multiplayer strings from Eden Agent-Logs-Url: https://github.com/suyu-emu/SuyuEclipse/sessions/34369fa5-d1b3-48e1-b0b5-b95bc4a5470c * Update cpp-httplib * Enhance CMake configuration: update C++ standard to C++20, add platform and architecture detection modules, and improve build presets for optimized architecture targeting. * Add ModeSelector dialog for user mode selection with descriptions and settings persistence * Add new UI components: DecryptionFlowWidget, EmulatorCoreManager, McpServer, ProgrammerEnvironment, SocialSidebar, SteamIntegration, and UserManualWidget * Add new components: DecryptionFlowWidget, EmulatorCoreManager, McpServer, ProgrammerEnvironment, SocialSidebar, SteamIntegration, and UserManualWidget * Refactor firmware installation and decryption key handling: remove deprecated checks and update user prompts * Implement mode-specific UI adjustments: add ApplyAppMode function to manage visibility of UI components based on user mode selection. * Refactor code structure for improved readability and maintainability * Add CMake build scripts for MSVC configuration and logging * Enhance CMake configuration: add support for additional tests and features, handle missing dependencies, and improve error messaging for external downloads * Add SDL2 and FFmpeg support in CMake configuration and improve build scripts * Add build script for MSVC using CMake - Created a new batch file `run_build.bat` to automate the build process. - The script sets up the Visual Studio environment and navigates to the project directory. - It executes the CMake build command targeting the 'suyu' project. - Captures and displays the exit code of the build process. * update * Fix dynamic vcpkg integration for MSVC CI * Enhance CMake configuration and add compatibility files for improved build support * Add interface mode change action and update UI components * Add interface mode change handler to GMainWindow * Add build configuration scripts for MSVC integration * Add build script for MSVC4 configuration and test files - Created `build-msvc4-config2.cmd` to automate the build configuration process using CMake with specified options. - Added `build-msvc4-test.txt` as a placeholder for test output verification. - Introduced `testout2c.txt` for additional test output, currently containing binary data. * Add build script for MSVC4 configuration and test files - Created a new batch script `build-msvc4-config2.cmd` to automate the build configuration process for MSVC4, including setting up the environment and invoking CMake with specified options. - Added a test file `build-msvc4-test.txt` containing a simple "ok" message for verification purposes. - Introduced `testout2c.txt` with binary content for further testing. * Add ProcDump output files for process monitoring - Created procdump_output.txt to capture the output when no matching process is found. - Created procdump_output2.txt to log details of the monitored process 'suyu.exe', including exit information and dump settings. * Add new PNG image file win_0_12257664.png * Update subproject commit and adjust widget initialization in GMainWindow * Add GamerEnvironment and related UI components for enhanced gaming experience - Introduced GamerEnvironment class to manage the new gaming interface. - Implemented GameCardDelegate for rendering game cards with cover art and information. - Added UI elements including a sidebar for navigation and a main content area for game display. - Integrated functionality for searching games, adding directories, and loading games. - Restored ApplyAppMode function in main.cpp to handle switching between different application modes. - Updated main.h to include GamerEnvironment and its associated members. - Created fix_main.py script to automate the restoration of the ApplyAppMode function. * Enhance ModeSelector UI and functionality with improved layout and styling * Refactor code structure for improved readability and maintainability * Add automated tests for menu interactions and MCP server functionality - Created test_all_menus.ps1 to automate menu item interactions and capture dialog screenshots. - Implemented test_mcp.ps1 for testing JSON-RPC 2.0 protocol over TCP with various method calls. - Added test_mcp2.ps1 for additional MCP tool tests, including error handling for unknown methods and malformed JSON. - Introduced test_menu_async.ps1 to test menu interactions asynchronously and capture dialog outputs. - Developed test_single_menu.ps1 for single menu item invocation and dialog handling. - Created verify_menus.ps1 to verify the presence and state of menu items in the application. * Update URLs to new website domain for localization and application settings - Changed app disclaimer and help links in Vietnamese, Simplified Chinese, Traditional Chinese, and English strings to point to the new website domain. - Updated web API URL in settings to reflect the new domain. - Modified TAS configuration help link to use the new website. - Adjusted various navigation links in the gamer environment and main application to direct users to the new website. * Add multiplayer server management features and settings * Add ModBrowserDialog for mod management and update multiplayer connection handling * Add 'Add to Steam' option in game context menu and implement shortcut creation * Enhance loading screen UI and add agentic workflow documentation for GitHub Actions * Refactor library page layout and enhance UI components for better user experience * Enhance button styling in GamerEnvironment for improved UI responsiveness * Enhance loading screen with spinner animation and artwork type selection for Steam integration * build * Add game overlay feature with F1 shortcut and corresponding UI integration * Refactor Steam integration to use public Steam Store endpoints for artwork fetching and update related UI components for improved user experience * fix dlls * Add support for Hacker and Gamer modes in application startup and enhance MCP server tool registration * Refactor web service settings and UI components for Eden integration * Refactor settings and authentication to replace 'suyu' references with 'eden' for improved account integration * Fix build issues and warnings in Suyu project - Added missing Q_OBJECT macro in game_card.cpp and game_library.cpp to resolve AutoMoc warnings. - Addressed warning C4267 in configure_web.cpp regarding conversion from 'size_t' to 'int' by ensuring proper type handling. - Updated build output to reflect successful compilation of additional source files and linking of the executable. * better steam * Fix room creation logic by removing unused parameter and add include test file * Update archived About/Workflow links and apply current tracked changes * Refactor GMainWindow to support multiple application modes and improve MCP server handling - Updated OnEmulationStopped to show appropriate environment based on current mode (Gamer, Programmer). - Removed unnecessary checks in OnGameListShowList for Hacker mode. - Enhanced ToggleWindowMode to display the correct environment for Gamer and Programmer modes. - Refactored MCP server initialization to be available in all modes, ensuring correct state reporting for Gamer and Hacker environments. - Improved handling of game directory addition and listing in MCP server. - Added HactoolIntegration class for managing external decryption tools, including scanning for tools, extracting NCA, NSP, and XCI files, and detecting extracted content. - Implemented file and directory existence checks to ensure robust tool management. - Introduced progress callbacks for extraction operations to provide user feedback. - Enhanced Vulkan graphics pipeline to improve image handling and resource management. - Updated texture cache to synchronize aliases only when necessary, optimizing performance. * Implement random number generation utilities and refactor UUID and network components to use them * Refactor hactool integration to use pointer for VFS operations and clean up game list header includes * Add screenshot functionality for 'suyu' application using PowerShell - Created 'take_screenshot.ps1' to capture a screenshot of the 'suyu' window. - Utilized user32.dll for window manipulation and System.Drawing for image processing. - Implemented a delay before capturing the screenshot to ensure the window is fully rendered. Add UI Automation click functionality for 'suyu' application - Created 'uia_click.ps1' to find and invoke a button in the 'suyu' window using UI Automation. - Captured the window's screenshot after attempting to click the button. - Enumerated all UI elements to provide feedback if the target button is not found. * Add PowerShell script for UI flow verification and screenshot capture - Introduced `verify_ui_flows.ps1` to automate the verification of UI flows in the 'suyu' application. - Utilized UI Automation to interact with application windows and controls. - Implemented functionality to capture screenshots of the Social view, Multiplayer lobby, and Export dialog. - Added error handling and logging for invoked controls. * Add screenshot for public room verification and PowerShell script to set dialog text and click button - Added a PNG screenshot for verifying public rooms. - Created a PowerShell script `set_dialog_text_and_click.ps1` to automate setting text in a dialog and clicking a button using Windows API calls. * fix: update CPU configuration handling for improved compatibility with MSVC * Add PowerShell script for MCP UI testing and automation - Implement Send-McpRequest function to handle JSON-RPC requests over TCP. - Establish TCP connection to the MCP server on localhost at port 9742. - Send initialization and notification requests to the MCP server. - Create a series of tool calls to interact with the MCP UI, including setting app mode, navigating views, refreshing feeds, and capturing screenshots. - Output responses from the MCP server for each request. * feat: implement real ARM64 AOT basic block analysis in game_export Replace stub RunAotPrecompile() with real implementation that: - Opens ROM files via VFS (NSP/XCI/NCA container support) - Parses NSOHeader structs and decompresses .text segments via LZ4 - Performs two-pass ARM64 linear sweep basic block analysis - Detects all branch types: B, BL, BR, BLR, RET, CBZ/CBNZ, TBZ/TBNZ, B.cond, SVC - Extracts direct branch targets for block boundary discovery - Writes binary .blockmap files (AOTB format) for runtime JIT pre-warming - Generates JSON manifest v2 with real module data: build IDs, segment addresses, block counts, instruction counts - Falls back to disk-based ExeFS reading when VFS extraction unavailable - Saves extracted ExeFS content to cache for standalone packaging This enables the AOT export pipeline to produce real block maps that the runtime can use to pre-compile ARM64 code blocks on startup instead of lazily JIT-compiling on first execution. * feat: replace built-in decryption with external tool hook system - Add ExternalDecryptionTool class (external_decryption_tool.h/.cpp) supporting hactool, Ryujinx, Eden, Yuzu, and custom tools - QSettings persistence for tool selection and path - QProcess-based tool invocation with timeout and error handling - Auto-detect tools on PATH via QStandardPaths::findExecutable - Full dialog UI with tool picker, path editor, browse, status indicator - Hide action_Install_Keys in UI, add action_Configure_External_Decryption - Replace OnInstallDecryptionKeys body to redirect to external tool dialog - Add OnConfigureExternalDecryption to main.cpp/main.h - Update game launch warning to mention external tool option - Soften OnCheckFirmwareDecryption to INFO level - Update MCP get_keys_status to report external tool configuration - Disable old DecryptionFlowWidget via #if 0 in decryption_flow.h/.cpp - Remove decryption_flow from CMakeLists.txt, add external_decryption_tool * feat: update game export dialog for native export artifacts and improve user manual instructions * fix: reorder includes in game_export.cpp to resolve macro conflicts * fix(suyu): resolve C4458/C4005 in game_export.cpp + add mcl include path - Add explicit #include common/assert.h before #undef guards so #pragma once is set before Dynarmic/mcl headers are included (works with or without PCH) - Rename local var 'data' -> 'nso_bytes' to fix C4458 hiding QWidget::data - Add externals/dynarmic/externals/mcl/include to suyu target_include_directories since merry::mcl is LINK_ONLY in dynarmic's export, so its include path does not propagate to consumers like suyu * feat: add build script for MSVC using subprocess to automate build process * feat: enhance external decryption tool integration and improve UI feedback for SSL status * Remove obsolete scripts and logs; add build script for CMake configuration and Ninja build * conan * Refactor key management and enhance decryption flow - Updated KeyManager to support additional key types and improved key loading mechanism. - Removed legacy key file handling in ReloadKeys and integrated external content pipeline. - Enhanced LoadFromFile to handle key parsing more robustly. - Modified DecryptionFlowWidget to reflect changes in key management and provide clearer instructions for external decryption tools. - Updated main application logic to accommodate external decryption configurations and removed local key installation functionality. - Added new NAX0 processing functionality to handle encrypted content extraction. - Introduced new test data files for cryptographic operations. * fix: improve error logging for ROM loading and enhance key area key validation * feat: add logging for key presence during key reload * feat: implement PowerShell fallback for Reddit feed loading in social sidebar * fix: handle exceptions during disk shader cache loading * Refactor code structure for improved readability and maintainability * Add logging functionality and PowerShell script for MCP testing - Created a new log file 'suyu_combined.log' to capture application logs. - Implemented a PowerShell script 'test_mcp.ps1' to automate testing of the MCP interface. - The script initializes the MCP, captures screenshots in different modes, and outputs the results. * style: update loading screen UI and progress bar aesthetics; enhance error handling in game boot and command line * fix: add exception handling for emulation thread and game export; improve error reporting * fix: add exception handling for disk shader cache loading; ensure proper emulation thread management * fix: add exception handling and logging for time synchronization; implement game list population cancellation --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> |
||
|
|
4296a8f860 | Reorganize repository: move docs, remove legacy yuzu folders, add Eden improvements | ||
|
|
71544dfc10 | Update | ||
|
|
dd1322374c | Update README.md | ||
|
|
2b95c789df | Update README.md | ||
|
|
f9f8f61e05 | Update README.md |