Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Sharpii-NetCore Wii: Difference between revisions

From GameBrew
No edit summary
No edit summary
Line 12: Line 12:
|source=https://github.com/TheShadowEevee/Sharpii-NetCore
|source=https://github.com/TheShadowEevee/Sharpii-NetCore
}}
}}
[[Sharpii Wii|Sharpii]] is a command-line application for Windows, created by person66 and ported to .Net by TheShadowEevee. It utilizes leathl's libWiiSharp library to perform various tasks such as:
[[Sharpii Wii|Sharpii]] is a command-line application for Windows, created by person66 and this is a port of the program that could work on Linux and Mac.  


Sharpii utilizes leathl's libWiiSharp library to perform various tasks such as:
* Packing, unpacking, and editing .wad files.
* Packing, unpacking, and editing .wad files.
* Packing and unpacking U8 archives.
* Packing and unpacking U8 archives.
Line 23: Line 24:


==User guide==
==User guide==
Changes from original:
* Sharpii now runs on .Net Core instead of .Net Framework.
* Now with support for many OS's.
* Slightly better error handling (Working on making it better).
* Custom exit codes for script use.
* Plus possibly more.
* Files are now sort of huge compared to originals, around 40mb. This is due to packed .dll's.
OS Support:
OS Support:
* Windows 7 and up.
* Windows 7 and up.
Line 32: Line 41:


==Changelog==
==Changelog==
'''v1.1.8'''
'''V1.1.8'''
* This is a minor change. No update is needed unless one of these features is desired.
* This is a minor change. No update is needed unless one of these features is desired.
** Add -URL option to NUS.cs.
** Add -URL option to NUS.cs.
Line 46: Line 55:
** CodeQL was reworked to get compilation setup correctly.
** CodeQL was reworked to get compilation setup correctly.


'''v1.1.7'''
'''V1.1.7'''
* All NUS HTTP error codes are reported instead of just 404.
* All NUS HTTP error codes are reported instead of just 404.
** Previously non 404 codes would be reported as an "Unknown" Error.
** Previously non 404 codes would be reported as an "Unknown" Error.
Line 54: Line 63:
*** Required binaries aren't bundled, so TPL doesn't function by default.
*** Required binaries aren't bundled, so TPL doesn't function by default.


'''v1.1.6.1'''
'''V1.1.6.1'''
*Updated compiled binaries to .Net v6.
*Updated compiled binaries to .Net v6.
**New Mac M1 Binary (MacOSX-arm64); previous Mac binary is now known as MacOSX-x64.
**New Mac M1 Binary (MacOSX-arm64); previous Mac binary is now known as MacOSX-x64.
**~66% size reduction uncompressed.
**~66% size reduction uncompressed.


'''v1.1.6'''
'''V1.1.6'''
*Includes an updated version of the modified libWiiSharp.
*Includes an updated version of the modified libWiiSharp.
**This fixes an infinite loop bug that very quickly led to either a Stack Overflow or full memory consumption.
**This fixes an infinite loop bug that very quickly led to either a Stack Overflow or full memory consumption.
Line 65: Line 74:
*Minor change to the credits header.
*Minor change to the credits header.


'''v1.1.5'''
'''V1.1.5'''
* The commands -q, -quiet, -lots now have limited support, acting the same as they did for the original Sharpii.
* The commands -q, -quiet, -lots now have limited support, acting the same as they did for the original Sharpii.
* Additional 404 error pickup for non-existent ID's (Oversight in 1.1.4).
* Additional 404 error pickup for non-existent ID's (Oversight in 1.1.4).
Line 73: Line 82:
* Source folders now slightly cleaner See 4c38cbb3 (No difference to end-users).
* Source folders now slightly cleaner See 4c38cbb3 (No difference to end-users).


'''v1.1.4'''
'''V1.1.4'''
* Adds more error codes for easier error reporting.
* Adds more error codes for easier error reporting.
* Smaller unpacked executables by 10~15MB! (Don't ask me how, lol).
* Smaller unpacked executables by 10~15MB! (Don't ask me how, lol).


'''v1.1.3r2'''
'''V1.1.3r2'''
*Removes the word "Here" when using NUS, this was a mistake from using a debug version of libWiiSharp I was testing with in the Sharpii-NetCore release binary.
*Removes the word "Here" when using NUS, this was a mistake from using a debug version of libWiiSharp I was testing with in the Sharpii-NetCore release binary.


'''v1.1.3'''
'''V1.1.3'''
*Replaced libWiiSharp with a custom one (Added ability to use your own CETK file by placing it in the directory that the file would be placed in normally. This allows full integration with the RiiConnect24 patcher.)
*Replaced libWiiSharp with a custom one (Added ability to use your own CETK file by placing it in the directory that the file would be placed in normally. This allows full integration with the RiiConnect24 patcher.)
*Minor typo fixes.
*Minor typo fixes.


'''v1.1.2'''
'''V1.1.2'''
*Fixes a bug in some systems where ICU is required but doesn't exist.
*Fixes a bug in some systems where ICU is required but doesn't exist.
*Adds a dialog box telling users they need to use a command line when the program is run in gui mode.
*Adds a dialog box telling users they need to use a command line when the program is run in gui mode.


'''v1.1.1'''
'''V1.1.1'''
*Fixes exit codes for non-Windows platforms (Global fix).
*Fixes exit codes for non-Windows platforms (Global fix).
*Fixes a bug where Sharpii couldn't find a wad if the case of the wad's name when saved was different then the ID provided. (NUSD's -WAD option).
*Fixes a bug where Sharpii couldn't find a wad if the case of the wad's name when saved was different then the ID provided. (NUSD's -WAD option).


'''v1.1.0'''
'''V1.1.0'''
*Due to a mistake, Sharpii shows as stil being v1.0.1.
*Due to a mistake, Sharpii shows as stil being v1.0.1.
*Added many error handling related features.
*Added many error handling related features.
Line 102: Line 111:
*Removed some help text relating to a currently unimplemented feature.
*Removed some help text relating to a currently unimplemented feature.


'''v1.0.1'''
'''V1.0.1'''
*Fixed a major file path separator issue that broke many features.
*Fixed a major file path separator issue that broke many features.


'''v1.0'''
'''V1.0'''
*First Release.
*First Release.



Revision as of 02:05, 3 April 2023

Sharpii-NetCore
Sharpiinetcorewii2.png
General
Authorperson66, leathl, TheShadowEevee
TypePC Utilities
Version1.1.8
LicenseGPL-3.0
Last Updated2022/03/22
Links
Download
Website
Source

Sharpii is a command-line application for Windows, created by person66 and this is a port of the program that could work on Linux and Mac.

Sharpii utilizes leathl's libWiiSharp library to perform various tasks such as:

  • Packing, unpacking, and editing .wad files.
  • Packing and unpacking U8 archives.
  • Patching IOS .wad files with various patches.
  • Downloading files from NUS.
  • Converting a .wav file to .bns, and vice versa.
  • Converting an image file to a .tpl, and vice versa.
  • Sending a .dol or .wad to the Homebrew Channel over Wi-Fi.

User guide

Changes from original:

  • Sharpii now runs on .Net Core instead of .Net Framework.
  • Now with support for many OS's.
  • Slightly better error handling (Working on making it better).
  • Custom exit codes for script use.
  • Plus possibly more.
  • Files are now sort of huge compared to originals, around 40mb. This is due to packed .dll's.

OS Support:

  • Windows 7 and up.
  • Mac/OSX 10.12 and up (Sierra [2016] and up) including M1 Silicon Computers.
  • Most up-to-date x64, arm, and arm64 Linux distros.

Known issues

When using Sharpii, you may run into errors.

Changelog

V1.1.8

  • This is a minor change. No update is needed unless one of these features is desired.
    • Add -URL option to NUS.cs.
    • Updated embedded libWiiSharp to 2.0.2.
      • libWiiSharp has been reverted to .Net Framework 2.0.
      • No functional difference in Sharpii; TPL code now works again.
      • TPL code still does not run on Non-Windows platforms due to System.Drawing.Common's lack of support.
  • Developer Updates:
    • WadInstaller source code has been removed. It is available online in many places if needed..
    • Reduced compiler warnings to 0 at time of writing.
      • SecondRun unused variable has been removed resulting in one less compiler warning..
      • A Value for SelfContained has been set in the project file resulting in one less compiler warning..
    • CodeQL was reworked to get compilation setup correctly.

V1.1.7

  • All NUS HTTP error codes are reported instead of just 404.
    • Previously non 404 codes would be reported as an "Unknown" Error.
  • Updated embedded libWiiSharp to 2.0.1.
    • Main Change: NUS failback urls were added.
    • TPL code now works cross-platform using SkiaSharp binaries to run.
      • Required binaries aren't bundled, so TPL doesn't function by default.

V1.1.6.1

  • Updated compiled binaries to .Net v6.
    • New Mac M1 Binary (MacOSX-arm64); previous Mac binary is now known as MacOSX-x64.
    • ~66% size reduction uncompressed.

V1.1.6

  • Includes an updated version of the modified libWiiSharp.
    • This fixes an infinite loop bug that very quickly led to either a Stack Overflow or full memory consumption.
      • This bug is present in the original libWiiSharp as well. The fixed version can be found at the related repo.
  • Minor change to the credits header.

V1.1.5

  • The commands -q, -quiet, -lots now have limited support, acting the same as they did for the original Sharpii.
  • Additional 404 error pickup for non-existent ID's (Oversight in 1.1.4).
  • Updated all error codes.
  • Removed a Debugging check for libWiiSharp.dll that has no use anymore
  • Source code now complies with some standards better (No difference to end-users).
  • Source folders now slightly cleaner See 4c38cbb3 (No difference to end-users).

V1.1.4

  • Adds more error codes for easier error reporting.
  • Smaller unpacked executables by 10~15MB! (Don't ask me how, lol).

V1.1.3r2

  • Removes the word "Here" when using NUS, this was a mistake from using a debug version of libWiiSharp I was testing with in the Sharpii-NetCore release binary.

V1.1.3

  • Replaced libWiiSharp with a custom one (Added ability to use your own CETK file by placing it in the directory that the file would be placed in normally. This allows full integration with the RiiConnect24 patcher.)
  • Minor typo fixes.

V1.1.2

  • Fixes a bug in some systems where ICU is required but doesn't exist.
  • Adds a dialog box telling users they need to use a command line when the program is run in gui mode.

V1.1.1

  • Fixes exit codes for non-Windows platforms (Global fix).
  • Fixes a bug where Sharpii couldn't find a wad if the case of the wad's name when saved was different then the ID provided. (NUSD's -WAD option).

V1.1.0

  • Due to a mistake, Sharpii shows as stil being v1.0.1.
  • Added many error handling related features.
    • Error Code's for easy identification of errors.
    • Error Code lookup (Run: Sharpii Errors [Error Code]).
    • Custom exit codes for easy headless script error identification (Uses Exit codes 16001-16029).
    • Exit Code lookup (Run: Sharpii ExitCodes [Exit Code]).
  • Removed install/uninstall help text (Feature still exists but only works on Windows for now.)
  • Removed some help text relating to a currently unimplemented feature.

V1.0.1

  • Fixed a major file path separator issue that broke many features.

V1.0

  • First Release.

External links

Advertising: