- On Windows, paths inputted as arguments are often parsed according to the system's active ANSI code page instead of UTF-8, which breaks Cyrillic and other Unicode characters.
- Modified `src/main.cpp` to use `GetCommandLineW` and convert arguments to UTF-8 on Windows natively.
- Adjusted paths handling in `build_romfs` and `build_pfs0` calls to be strictly passed as UTF-8 encoded strings via `std::filesystem::path::u8string()`.
- Updated `switch-tools/src/pfs0.c` to handle UTF-8 paths internally by utilizing `filepath.h` abstractions (`os_opendir`, `os_fopen`, etc.), just like `romfs.c`, effectively supporting proper UTF-16 Win32 file functions when run on Windows.
Co-authored-by: arabianq <55220741+arabianq@users.noreply.github.com>