No description
  • C# 99.4%
  • Shell 0.6%
Find a file
DiamantTh ae4f264432 docs: Update README.md Implementation Status with Phases 11-18 completion
- Update version from 4.0.0-alpha to 4.0.0 (Production Ready)
- Add Phases 11-18 to Implementation Status table (all COMPLETE)
- Update test count from 118/80 to 138 (all passing)
- Add release info with correct git.diath.systems URL
- Document full feature parity with Phase 18 completion
2026-06-13 21:20:26 +02:00
.vscode Wii and GCN games now work on Wine 2025-12-01 18:03:26 -08:00
UWUVCI.App.Uno feat(themes): add WiiUBlue, TerminalGreen, HighContrast palettes; update plan checkboxes 2026-06-07 03:11:58 +02:00
UWUVCI.Config 🎯 REWRITE: Produktions-Ready – Repository-Migration vom Prototyp zum Rewrite 2026-06-06 00:44:39 +02:00
UWUVCI.Core Phase 11.2: Implement remaining console injection services (N64, NES, SNES, GBA, NDS, TG16, MSX) 2026-06-06 04:40:56 +02:00
UWUVCI.ImagePipeline 🎯 REWRITE: Produktions-Ready – Repository-Migration vom Prototyp zum Rewrite 2026-06-06 00:44:39 +02:00
UWUVCI.Services Phase 18 COMPLETE: GBA Dark-Filter + TurboCD pce.pkg native C# implementations 2026-06-13 21:16:19 +02:00
UWUVCI.Tests feat(gba): native PSB.M/MArchive GBA VC ROM injection (Phase 18) 2026-06-07 03:02:14 +02:00
UWUVCI.Tooling feat: native C# replacements for wiiurpxtool and nfs2iso2nfs 2026-06-06 23:03:56 +02:00
.gitattributes GITIGNORE und GITATTRIBUTES hinzufügen. 2020-03-01 14:12:14 +01:00
.gitignore Updated how building the app works 2026-01-29 01:25:42 -08:00
CLEANUP.md chore: V4.0.0 – Legacy cleanup and final refactor 2026-06-06 00:52:57 +02:00
global.json 🎯 REWRITE: Produktions-Ready – Repository-Migration vom Prototyp zum Rewrite 2026-06-06 00:44:39 +02:00
LICENSE Create LICENSE 2020-06-06 18:40:44 +02:00
PHASE_14_AUDIT.md Phase 14: External tool audit + ToolServiceWrapper abstraction + tools.toml complete 2026-06-06 21:37:20 +02:00
README.md docs: Update README.md Implementation Status with Phases 11-18 completion 2026-06-13 21:20:26 +02:00
REWRITE_PLAN.md Phase 18 COMPLETE: GBA Dark-Filter + TurboCD pce.pkg native C# implementations 2026-06-13 21:16:19 +02:00
STATUS.md chore: V4.0.0 – Legacy cleanup and final refactor 2026-06-06 00:52:57 +02:00
UWUVCI.slnx Phase 11.2: Implement remaining console injection services (N64, NES, SNES, GBA, NDS, TG16, MSX) 2026-06-06 04:40:56 +02:00

UWUVCI-AIO-WPF (Fork of Fork) – V4.0.0 Redesign

Disclaimer: This is not the official version of UWUVCI-AIO-WPF.

Why fork of fork? Started as a fork of ZestyTS's fork to experiment with a different architectural direction via "Vibe Coding" – exploring modern .NET 10 + cross-platform possibilities without the constraints of the legacy WPF codebase. This fork grew into a complete redesign proving the approach is viable and production-ready.

The V3 codebase on itch.io still comes from ZestyTS's fork. This V4 fork is an experimental direction that evolved into a full redesign. No official support is provided; use at your own discretion.


About V4.0.0 Release

UWUVCI-V3 was built on WPF (.NET Framework 4.8), which had significant limitations:

  • ❌ Windows-only – No Linux/macOS support despite user demand
  • ❌ Limited scalability – Legacy architecture made cross-platform porting impractical
  • ❌ Outdated tech stack – WPF reached end-of-life for modern development

V4.0.0 redesigns the entire codebase using modern .NET 10 LTS + Uno Platform:

  • ✅ Cross-platform – Windows, Linux/KDE, macOS support (WASM ready for future web version)
  • ✅ Clean architecture – Testable services, minimal coupling, interface-based design
  • ✅ Modern tech – Tomlyn for config, SkiaSharp for images, MSTest v3 for testing
  • ✅ Production-ready – 138 tests (all green), self-contained portable builds, no external deps

This is a from-scratch redesign, not a port. The old WPF code is kept as a reference only.


Build & Run (V4.0.0)

Prerequisites

Build

cd UWUVCI-AIO-WPF
dotnet build

Run

# Windows
dotnet run --project UWUVCI.App.Uno/UWUVCI.App.Uno/UWUVCI.App.Uno.csproj

# Linux
dotnet run --project UWUVCI.App.Uno/UWUVCI.App.Uno/UWUVCI.App.Uno.csproj

Test (138 tests)

dotnet test

Publish (Self-Contained)

# Windows (win-x64)
dotnet publish UWUVCI.App.Uno/UWUVCI.App.Uno/UWUVCI.App.Uno.csproj \
  -c Release -r win-x64 -f net10.0-desktop -o dist/windows

# Linux (linux-x64)
dotnet publish UWUVCI.App.Uno/UWUVCI.App.Uno/UWUVCI.App.Uno.csproj \
  -c Release -r linux-x64 -f net10.0-desktop -o dist/linux

Wii U All-in-One Injector

A tool for injecting various systems into the Wii U.

Supported systems: DS · GBA · N64 · SNES · NES · TurboGrafx · MSX · Wii · GCN


Repository Layout

UWUVCI.Core/             Domain models, pipeline abstractions, runtime paths
UWUVCI.Config/           TOML-based settings (Tomlyn)
UWUVCI.Tooling/          Tool discovery and execution (Wine-aware)
UWUVCI.ImagePipeline/    Image load/save/resize including custom TGA reader/writer
UWUVCI.App.Uno/          Uno Platform desktop app (Windows + Linux/KDE)
UWUVCI.Tests/            MSTest v3 unit tests (138 tests)
artifacts/               Generated by publish script; not committed

Building

Requires .NET 10 SDK (dotnet --version should report 10.x).

Restore + build

dotnet build UWUVCI.slnx

Run tests

dotnet test UWUVCI.slnx

Run app (dev, Linux/Windows)

dotnet run --project UWUVCI.App.Uno/UWUVCI.App.Uno.csproj -f net10.0-desktop

Portable release build

cd UWUVCI.App.Uno
bash publish.sh linux        # → artifacts/dist/uwuvci-linux-x64.tar.gz
bash publish.sh win          # → artifacts/dist/uwuvci-win-x64.zip  (cross-compile)
bash publish.sh linux win    # both targets

The published build is self-contained (.NET runtime bundled) and does not require installation of .NET on the target machine.


Data Paths

The application never writes into the install directory.

Platform Settings & data
Linux ~/.local/share/UWUVCI-V3/ (respects $XDG_DATA_HOME)
Windows %LOCALAPPDATA%\UWUVCI-V3\
macOS ~/Library/Application Support/UWUVCI-V3/

Settings file: settings.toml in the above directory.


Implementation Status

See REWRITE_PLAN.md for the full phase-by-phase breakdown.

Current version: 4.0.0 (✅ ALL PHASES COMPLETE – Production Ready)

Phase Status Notes
0 – Environment ✅ .NET 10 SDK, build tools, baseline
1 – Source inventory ✅ Legacy analysis, cross-platform requirements
2 – Scaffold (6 projects) ✅ UWUVCI.Core, Config, Tooling, ImagePipeline, App.Uno, Tests
3 – TOML Config layer ✅ Settings, tool manifest, safe CKey handling
4 – Tooling foundation ✅ ProcessToolRunner, ManifestToolResolver, Wine detection
5 – Image pipeline ✅ Custom TGA (typ 2 + typ 10), SkiaSharp integration
6 – Core injection models ✅ GameConsole, GameConfig, InjectionContext, IInjectStep
7 – Uno UX shell ✅ Themes (Dark/Light), ShellPage, InjectPage, SettingsPage
8 – Packaging ✅ Linux tar.gz, Windows ZIP, portable self-contained builds
9 – WASM readiness audit ✅ Blocker matrix documented, abstractions in place
10 – Final cleanup ✅ Repository reorganization, documentation, namespace cleanup
11 – Injection services ✅ 8 consoles (GBA, N64, NES, SNES, TG16, MSX, NDS, GCN, Wii)
12 – InjectOrchestrator + UI ✅ Per-console options, cross-platform picker, orchestration
13 – ToolsPage + downloader ✅ HTTP download, SHA-256 verify, TOML manifest, progress UI
14 – External tool audit ✅ Multi-OS strategy, Windows-only tool identification
15 – Base ROM management ✅ Download infrastructure, local cache, verification
16 – Multi-OS verification ✅ Windows/Linux build, platform-specific testing
17 – Polish + final testing ✅ Themes, UI refinement, performance, stability
18 – PSB.M / pce.pkg formats ✅ GBA Dark-Filter (PSB patching), TurboCD pce.pkg (native C#)

Test coverage: 138 tests (all passing) – MArchive crypto, MT19937 PRNG, PSB/NKit parsers, injection workflows

Release: v4.0.0 tag on git.diath.systems/DiamantTh/UWUVCI-AIO