Vita VitaShell改良版更新履歴

記事の方法を試す前や質問をするまえに必ず下記リンクを見てからにしてください!
このブログについて
http://yyoossk.blogspot.jp/1970/11/blog-post_24.html


こちらではVitaのVitaShellの改良版の更新履歴を追記していきます

2.09
メニュー「その他」の位置調整と機能修正
• 修正済み: 三角ボタン > その他 からアクセスした際、メニュー項目(MD5、SHA1、SHA256 など)の位置が低すぎた問題
• 修正済み: MD5 および SHA256 オプションが動作せず「パッケージインストール」エラーを表示していた問題
• 修正済み: メニュー項目選択時に誤った機能が実行されていた問題(例: MD5 → 全てインストール、全てインストール → SHA1)
• 結果: 全てのハッシュ計算オプションが正常に動作し、適切に配置されて表示されるようになりました

ハッシュアルゴリズムの実装
• 追加: 適切な16バイト出力フォーマットによる完全なMD5ハッシュ計算
• 追加: 適切な32バイト出力フォーマットによる完全なSHA256ハッシュ計算
• 強化: SHA1機能の維持と改善
• 追加: 全アルゴリズムに対応したマルチスレッドハッシュ処理と進行状況バー
• 追加:16進数フォーマットと改行付きでの適切なハッシュ結果表示

ファイルの安全性と保護
• 追加:重要/システムファイル削除時の警告メッセージ
• 保護対象ファイル:
• システムパーティション (os0:, vs0:, vd0:, tm0:)
• ホームブリューディレクトリ (ur0:tai/, ux0:tai/)
• 重要設定ファイル(config.txt, boot_config.txt)
• システムソフトウェア(vitashell, henkaku, taihen, molecule)
• プラグインファイル(.skprx, .suprx)
• アプリケーションファイル(eboot.bin, param.sfo)

ローカライゼーション更新

汎用ハッシュメッセージ
• 更新内容: ハッシュ確認メッセージをアルゴリズム非依存に変更
• 変更前: 「SHA1ハッシュ処理には時間がかかる場合があります。続行しますか?」
• 変更後: 「ハッシュ処理には時間がかかる場合があります。続行しますか?」

安全警告メッセージ
• 追加: 「警告: これはシステムファイルまたは重要なファイルのようです。本当に削除しますか?」(および翻訳)
• 対応言語: 🇺🇸🇮🇹🇫🇷🇩🇪🇪🇸🇵🇹🇧🇷

システム情報表示
空き容量インジケーター
• 機能: ステータスバーでのリアルタイムストレージ容量表示
• 表示内容: 現在のパーティション空き容量 (例: 「ux0: 5.2 GB/29.5 GB free」)
• カラー表示:
• 緑: 空き容量 50% 以上
• オレンジ: 空き容量 20-50% (不足気味)
• 赤:空き容量20%未満(危険な低さ)
• 動的:現在のディレクトリパーティションに基づき更新

技術的改善
コードアーキテクチャ
• 強化:複数ハッシュタイプ対応のためHashArguments構造体を改良
• 改善:ハッシュ計算のスレッド管理を最適化
• 追加:メニューコールバック用の適切な列挙型→配列マッピングを追加
• 最適化:UX向上のためのメニュー配置システムを最適化

エラー処理
• 追加:包括的なファイル重要度検出機能
• 強化:文脈に応じたメッセージ付きユーザー確認ダイアログ
• 改善:複数ファイル削除時の安全チェック

ユーザーエクスペリエンス
メニューナビゲーション
• 改善:適切な間隔を保ったコンパクトなメニューレイアウト
• 修正:全メニュー項目の正しい機能実行
• 強化:視覚的フィードバックと確認ダイアログ

ハッシュ操作
• 効率化:SHA1、MD5、SHA256の統一インターフェース
• 追加:計算中の進行状況表示
• 改善:フォーマット出力による結果表示の向上

安全機能
• 強化:重要システムファイルの多段階保護
• 追加:バッチ操作の安全対策(選択ファイルに重要なものがある場合に警告)
• 改善:適切な翻訳による明確な警告メッセージ


2.08
vshIoMount宣言の欠落を修正:
ビルドエラーを解決し、システムマウント操作との互換性を確保するため、正しいプロトタイプ(vshIoUmount、_vshIoMount、vshIoMount)を復元しました。
より安全なフォーマットのため、getSizeStringのバッファサイズを16文字から20文字に増加。
グローバルパッド変数のシャドウイングを回避するため、holdButtonsのパラメータ命名規則を整理。
可読性向上のためのコードスタイル全般の整理。

host0:へのファイルコピー機能追加
host0:を宛先とする場合、空き容量チェックをバイパスする例外処理を実装。
USB経由でPCへファイル転送時の誤った「空き容量不足」エラーを防止。

ファイル操作の安定性と信頼性向上
マウント/アンマウント処理のクリーン化。
外部デバイスへのコピー処理の安全性向上。


2.07
修正と改善点
適切な関数プロトタイプとヘッダーを追加し、複数の暗黙的な宣言に関する警告を修正しました。
_vshIoMount の使用を修正し、適切な戻り値の型とパラメータを保証。
settings.c およびその他のソースファイルで不足していた前方宣言を追加。
新しい VitaSDK バージョンとの互換性を向上させ、コンパイラ警告を削減。
スレッド終了を適切に処理することで、潜在的なスレッドおよびコールバックリークを修正。
よりクリーンなコンパイルのために、インクルードパスと冗長な定義を調整。

コードベースのメンテナンス
重複を避けるためヘッダーを再編成。
未使用変数と冗長なコードブロックを整理。
主要モジュールの可読性を向上。
プロジェクト全体のコメントと命名規則を統一。

安定性
promoteAppおよびファイルシステム操作のエラー処理を強化。
未宣言関数による未定義動作のリスクを低減。
Windows/MSYS2 + VitaSDK環境での安全なビルドに向けた全般的なコードクリーンアップを実施。


 2.06 
 QR リファクタリング / ビルド更新

修正点:
設定ファイル(settings.c)において、テーマ名コピー時のstrncpyによる潜在的なバッファオーバーフロー警告を修正。
固定長バッファへの全文字列コピーにおいて、適切なヌル終端処理を保証。
minizip/ioapi.c内のstrncpyおよびstrlenに関連する軽微な警告を解消。
VitaSDKおよび最新ツールチェーンとの互換性向上のため、CMakeビルドシステムを更新。
シンボル欠落を回避するため、カーネル・ユーザー・パッチ・USBモジュールの適切なリンクを追加。
.skprx、.suprxおよびその他のバイナリリソースが正しくコンパイル・包含されるよう、リソースパスに関する軽微な問題を修正。

改善点:
安定性向上のためQRコード機能をリファクタリング(@isageによる)。
不要な警告を減らすためコンパイルフラグを最適化。
モジュールとスタブのビルドプロセスを合理化。
テーマ選択とリソース読み込みのパフォーマンスを若干改善。

コメント