change main.dol patches around a bit

This commit is contained in:
giantpune 2010-04-10 23:44:10 +00:00
parent 58b88d4b09
commit 0e5d1d182f
37 changed files with 1805 additions and 1598 deletions

View File

@ -2,8 +2,8 @@
<app version="1">
<name> USB Loader GX</name>
<coder>USB Loader GX Team</coder>
<version>1.0 r923</version>
<release_date>201004101827</release_date>
<version>1.0 r924</version>
<release_date>201004102335</release_date>
<short_description>Loads games from USB-devices</short_description>
<long_description>USB Loader GX is a libwiigui based USB iso loader with a wii-like GUI. You can install games to your HDDs and boot them with shorter loading times.
The interactive GUI is completely controllable with WiiMote, Classic Controller or GC Controller.

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: David Jelinek (djelinek@hotmail.com) \n"
"Language-Team: r823 - last version on http://djelinek.sweb.cz/_USBLoderGX/czech.lang \n"
@ -606,9 +606,6 @@ msgstr "Nemecky"
msgid "HOME Menu"
msgstr "Hlavní menu"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Cesta pro Homebrew aplikace"
@ -1165,9 +1162,6 @@ msgstr "USB zarízení nenalezeno"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX je zabezpecen"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr ""
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Nelze otevrít WAD, který byl nyní stažen (%s)."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: dorf[dk]\n"
"Language-Team: dorf[dk]\n"
@ -606,9 +606,6 @@ msgstr "Tysk"
msgid "HOME Menu"
msgstr ""
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Sti til homebrew-programmer"
@ -1165,9 +1162,6 @@ msgstr "USB-enhed ikke fundet"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX er beskyttet"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX fungerer kun med Hermes CIOS rev 4! Kontrollér, at revision 4 er installeret!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Ikke i stand til at åbne den WAD, der blev downloadet (%s)."
@ -1375,6 +1369,9 @@ msgstr "af"
msgid "seconds left"
msgstr "sekunder tilbage"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX fungerer kun med Hermes CIOS rev 4! Kontrollér, at revision 4 er installeret!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "indeholder over 225 linjer kode. Det vil give uventede resultater."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: glowy\n"
"Language-Team: tj_cool, glowy\n"
@ -606,9 +606,6 @@ msgstr "Duits"
msgid "HOME Menu"
msgstr ""
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Locatie homebrew apps"
@ -1165,9 +1162,6 @@ msgstr "USB Apparaat niet gevonden"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX is vergrendeld"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX werkt alleen met Hermes cIOS rev 4! Zorg dat je revisie 4 hebt geïnstalleerd!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Wad is gedownload maar kan niet worden geopend (%s)."
@ -1375,6 +1369,9 @@ msgstr "van"
msgid "seconds left"
msgstr "seconden over"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX werkt alleen met Hermes cIOS rev 4! Zorg dat je revisie 4 hebt geïnstalleerd!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "bevat meer dan 255 lijnen met code. Dit kan slechte gevolgen hebben."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -606,9 +606,6 @@ msgstr ""
msgid "HOME Menu"
msgstr ""
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr ""
@ -1165,9 +1162,6 @@ msgstr ""
msgid "USB Loader GX is protected"
msgstr ""
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr ""
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: c64rmx\n"
"Language-Team: \n"
@ -606,9 +606,6 @@ msgstr "Saksa"
msgid "HOME Menu"
msgstr ""
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Homebrew Apps polku"
@ -1165,9 +1162,6 @@ msgstr "USB-laitetta ei löytynyt"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX on suojattu."
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr ""
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Wadia (%s) jonka juuri latasit ei voitu avata."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: Kin8\n"
"Language-Team: Badablek, Amour, ikya & Kin8\n"
@ -606,9 +606,6 @@ msgstr "Allemand"
msgid "HOME Menu"
msgstr "Menu HOME"
msgid "Hermes CIOS"
msgstr "CIOS d'Hermès"
msgid "Homebrew Apps Path"
msgstr "Dossier Homebrew Apps"
@ -1165,9 +1162,6 @@ msgstr "Périphérique USB introuvable"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX est verrouillé"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX fonctionne avec le CIOS d'Hermès rev4 seulement! Assurez-vous qu'il soit installé!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Ouverture du WAD impossible (%s)."
@ -1375,6 +1369,12 @@ msgstr "sur"
msgid "seconds left"
msgstr "secondes restantes"
#~ msgid "Hermes CIOS"
#~ msgstr "CIOS d'Hermès"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX fonctionne avec le CIOS d'Hermès rev4 seulement! Assurez-vous qu'il soit installé!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "Contient plus de 255 lignes de code. Cela produira des résultats inattendus."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: ZEN.13\n"
"Language-Team: Snoozer, wishmasterf, Bertilax, ZEN.13\n"
@ -606,9 +606,6 @@ msgstr "Deutsch"
msgid "HOME Menu"
msgstr "HOME Menü"
msgid "Hermes CIOS"
msgstr "cIOS 222/223"
msgid "Homebrew Apps Path"
msgstr "Homebrew Anwedungen"
@ -1165,9 +1162,6 @@ msgstr "USB Gerät nicht gefunden"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX ist jetzt geschützt"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "Hermes' cIOS funktioniert beim USB Loader GX nur mit rev4! Bitte versichere dich das du rev4 installiert hast!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Die WAD Datei, die gerade heruntergeladen wurde (%s), konnte nicht geöffnet werden."
@ -1375,6 +1369,12 @@ msgstr "von"
msgid "seconds left"
msgstr "Sekunden verbleiben"
#~ msgid "Hermes CIOS"
#~ msgstr "cIOS 222/223"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "Hermes' cIOS funktioniert beim USB Loader GX nur mit rev4! Bitte versichere dich das du rev4 installiert hast!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "enthält mehr als 255 Zeilen Code. Es wird unerwartete Ergebnisse geben."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-12-29 11:05+0100\n"
"Last-Translator: Springdale\n"
"Language-Team: Tusk, Springdale\n"
@ -606,9 +606,6 @@ msgstr "Német"
msgid "HOME Menu"
msgstr "HOME Menü"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Homebrew Útvonal"
@ -1165,9 +1162,6 @@ msgstr "USB Meghajtó nem található"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX levédve"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "Az USB Loader GX csak Hermes CIOS rev 4 mellett működik! Gyõződj meg róla, hogy telepítetted!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Az épp letöltött wad megnyitása nem sikerült (%s)."
@ -1375,6 +1369,9 @@ msgstr "./"
msgid "seconds left"
msgstr "hátralévõ másodperc"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "Az USB Loader GX csak Hermes CIOS rev 4 mellett működik! Gyõződj meg róla, hogy telepítetted!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "több mint 255 sorból áll a kód. Kiszámíthatatlan eredmények várhatók."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2010-02-21 08:00+0200\n"
"Last-Translator: Cambo \n"
"Language-Team: FoxeJoe, Cambo\n"
@ -606,9 +606,6 @@ msgstr "Tedesco"
msgid "HOME Menu"
msgstr "Menu HOME"
msgid "Hermes CIOS"
msgstr "cIOS di Hermes"
msgid "Homebrew Apps Path"
msgstr "Percorso Applic. Homebrew"
@ -1165,9 +1162,6 @@ msgstr "Dispositivo USB non Trovato"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX è Protetto"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX funziona solo con la rev 4 del cIOS di Hermes! Accertarsi di aver installato la rev 4!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Non riesco ad aprire il wad da poco scaricato (%s)."
@ -1375,6 +1369,12 @@ msgstr "di"
msgid "seconds left"
msgstr "secondi mancanti"
#~ msgid "Hermes CIOS"
#~ msgstr "cIOS di Hermes"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX funziona solo con la rev 4 del cIOS di Hermes! Accertarsi di aver installato la rev 4!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "contiene più di 255 linee di codice. Possibili effetti inattesi."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: hosigumayuugi\n"
"Language-Team: hosigumayuugi\n"
@ -606,9 +606,6 @@ msgstr "ドイツ語"
msgid "HOME Menu"
msgstr "HOMEボタンメニュー"
msgid "Hermes CIOS"
msgstr "注意事項"
msgid "Homebrew Apps Path"
msgstr "Homebrewのパス"
@ -1165,9 +1162,6 @@ msgstr "USBデバイスを検出できませんでした"
msgid "USB Loader GX is protected"
msgstr "USB Loaderは保護されています"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "cIOS222と223はrev4の場合のみ 使用できます"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "ダウンロード中のためWADを開けません (%s)."
@ -1375,6 +1369,12 @@ msgstr "中"
msgid "seconds left"
msgstr "秒で完了"
#~ msgid "Hermes CIOS"
#~ msgstr "注意事項"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "cIOS222と223はrev4の場合のみ 使用できます"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "コードが255行を超えていて 正しく実行できません"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: nextos@korea.com\n"
"Language-Team: \n"
@ -606,9 +606,6 @@ msgstr "독일어"
msgid "HOME Menu"
msgstr "HOME 메뉴"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "홈브류 경로"
@ -1165,9 +1162,6 @@ msgstr "USB 장치가 없습니다."
msgid "USB Loader GX is protected"
msgstr "USB 로더 GX 잠김 상태"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr ""
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "방금 다운로드한 wad화일(%s)을 열수가 없음."

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: ziom666 (zadania_prog@vp.pl)\n"
"Language-Team: \n"
@ -606,9 +606,6 @@ msgstr "niemiecki"
msgid "HOME Menu"
msgstr "Menu"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Sciezka plikacji homebrew"
@ -1165,9 +1162,6 @@ msgstr "Nie znaleziono urzadzenia USB"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX zabezpieczony"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX dziala tylko z Hermes CIOS rev 4! Upewnij sie czy masz zainstalowana wersje 4!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Nie udalo sie zainstalowac dopiero co pobranego pliku (%s)"
@ -1375,6 +1369,9 @@ msgstr "z"
msgid "seconds left"
msgstr "sekund pozostalo"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX dziala tylko z Hermes CIOS rev 4! Upewnij sie czy masz zainstalowana wersje 4!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "zawiera ponad 255 linii kodu. Bedzie coS nie tak."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-23 18:52+0200\n"
"Last-Translator: boto12\n"
"Language-Team: boto12\n"
@ -606,9 +606,6 @@ msgstr "Alemão"
msgid "HOME Menu"
msgstr "Menu Inicial"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Pasta Apps Homebrew"
@ -1165,9 +1162,6 @@ msgstr "Dispositivo USB não encontrado"
msgid "USB Loader GX is protected"
msgstr "O USB Loader GX está bloqueado"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr ""
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Não é possível abrir o arquivo wad baixado (%s)."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2010-02-01 18:10-0000\n"
"Last-Translator: Sky8000\n"
"Language-Team: Sky8000 <sky8000@hotmail.com>\n"
@ -606,9 +606,6 @@ msgstr "Alemão"
msgid "HOME Menu"
msgstr "Menú Inicial"
msgid "Hermes CIOS"
msgstr "CIOS Hermes"
msgid "Homebrew Apps Path"
msgstr "Pasta Apps Homebrew"
@ -1165,9 +1162,6 @@ msgstr "Dispositivo USB não encontrado"
msgid "USB Loader GX is protected"
msgstr "O USB Loader GX está bloqueado"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "O USB Loader GX só suporta o CIOS Hermes revisão 4! Verifique se esta é a revisão que tem instalada!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Não é possível abrir o ficheiro wad descarregado (%s)."
@ -1375,6 +1369,12 @@ msgstr "de"
msgid "seconds left"
msgstr "segundos restantes"
#~ msgid "Hermes CIOS"
#~ msgstr "CIOS Hermes"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "O USB Loader GX só suporta o CIOS Hermes revisão 4! Verifique se esta é a revisão que tem instalada!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "contém mais de 255 linhas de código. Os resultados podem ser inesperados."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: nikolai_ca\n"
"Language-Team: Kir, alendit, nikolai_ca\n"
@ -606,9 +606,6 @@ msgstr "Немецкий"
msgid "HOME Menu"
msgstr "Домашнее Меню"
msgid "Hermes CIOS"
msgstr "Hermes CIOS"
msgid "Homebrew Apps Path"
msgstr "Путь к хоумбрю-программам"
@ -1165,9 +1162,6 @@ msgstr "USB устройство не найдено"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX заблокирован"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX будет работать только с Hermes CIOS rev 4! Пожалуйста убедитесь что у вас установлена версия 4!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Не могу открыть скачанный WAD (%s)"
@ -1375,6 +1369,12 @@ msgstr "из"
msgid "seconds left"
msgstr "секунд осталось"
#~ msgid "Hermes CIOS"
#~ msgstr "Hermes CIOS"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX будет работать только с Hermes CIOS rev 4! Пожалуйста убедитесь что у вас установлена версия 4!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "содержит более 255 строк кода. Результаты будут непредсказуемы."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: knife.hu kavid\n"
"Language-Team: kavid\n"
@ -606,9 +606,6 @@ msgstr "德文"
msgid "HOME Menu"
msgstr "主菜单"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "自制程序路径"
@ -1165,9 +1162,6 @@ msgstr "找不到 USB 设备"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX 被锁定"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr ""
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "不能打开刚下载的 WAD 文件 (%s)."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: SirPalax\n"
"Language-Team: Penn, SirPalax\n"
@ -606,9 +606,6 @@ msgstr "Alemán"
msgid "HOME Menu"
msgstr "Menú HOME"
msgid "Hermes CIOS"
msgstr "cIOS Hermes"
msgid "Homebrew Apps Path"
msgstr "Ruta Apps Homebrew"
@ -1165,9 +1162,6 @@ msgstr "USB no encontrado"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX está protegido"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "¡USB Loader GX sólo funciona con cIOS Hermes rev 4!. ¡Por favor, asegúrate de que tienes instalada la versión 4!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "No se puede abrir el WAD que acabas de descargar (%s)."
@ -1375,6 +1369,12 @@ msgstr "de"
msgid "seconds left"
msgstr "segundos restantes"
#~ msgid "Hermes CIOS"
#~ msgstr "cIOS Hermes"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "¡USB Loader GX sólo funciona con cIOS Hermes rev 4!. ¡Por favor, asegúrate de que tienes instalada la versión 4!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "contiene más de 255 líneas de código. Se producirán resultados inesperados."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2010-01-19 17:39+0200\n"
"Last-Translator: Katsurou\n"
"Language-Team: Katsurou, pirateX\n"
@ -606,9 +606,6 @@ msgstr "Tyska"
msgid "HOME Menu"
msgstr "Hemmeny"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Homebrew Apps"
@ -1165,9 +1162,6 @@ msgstr "USB-enhet ej hittad"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX är skyddad"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX kommer endast köra med Hermes CIOS ver 4! Vänligen kontrollera att du har ver 4 installerad!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Kunde inte öppna den nedladdade wad filen (%s)."
@ -1375,6 +1369,9 @@ msgstr "av"
msgid "seconds left"
msgstr "sekunder kvar"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX kommer endast köra med Hermes CIOS ver 4! Vänligen kontrollera att du har ver 4 installerad!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "Innehåller över 255 rader kod. Det kommer att skapa oväntade resultat."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2010-02-15 21:00+0800\n"
"Last-Translator: Mika Li\n"
"Language-Team: kyogc, Miller, Mika Li\n"
@ -606,9 +606,6 @@ msgstr "德文"
msgid "HOME Menu"
msgstr "主選單"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "HBC 應用程式路徑"
@ -1165,9 +1162,6 @@ msgstr "找不到 USB 設備"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX 被鎖定"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX 只能執行 Hermes CIO rev4請確認您安裝的版本是 rev4"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "不能打開剛下載的 WAD 文件 (%s)."
@ -1375,6 +1369,9 @@ msgstr "的"
msgid "seconds left"
msgstr "剩餘秒數"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX 只能執行 Hermes CIO rev4請確認您安裝的版本是 rev4"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "超過255行的指令,將導致無法預期的結果"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: Nitro_subzero \n"
"Language-Team: Nitro_subzero\n"
@ -606,9 +606,6 @@ msgstr "เยอรมัน"
msgid "HOME Menu"
msgstr "เมนู HOME"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "ที่เก็บโปรแกรม Homebrew"
@ -1165,9 +1162,6 @@ msgstr "ไม่พบอุปกรณ์ USB"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX 5 ถูกป้องกัน"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr ""
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "ไม่สามารถเปิดไฟล์ Wad ที่เพิ่งดาวน์โหลดมาได้ (%s)."

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 16:17+0100\n"
"POT-Creation-Date: 2010-04-10 19:39-0400\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: omercigingelini\n"
"Language-Team: omercigingelini\n"
@ -606,9 +606,6 @@ msgstr "Almanca"
msgid "HOME Menu"
msgstr "HOME Menü"
msgid "Hermes CIOS"
msgstr ""
msgid "Homebrew Apps Path"
msgstr "Homebrew Yazılımlarının Yolu"
@ -1165,9 +1162,6 @@ msgstr "USB Aygıtı bulunamadı"
msgid "USB Loader GX is protected"
msgstr "USB Loader GX koruma altında"
msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
msgstr "USB Loader GX sadece Hermes CIOS rev4 ile çalışır! Lütfen rev4 ün yüklü olduğundan emin olun!"
#, c-format
msgid "Unable to open the wad that was just downloaded (%s)."
msgstr "Az önce indirilen wad açılamıyor(%s)"
@ -1375,6 +1369,9 @@ msgstr "./"
msgid "seconds left"
msgstr "saniye kaldı"
#~ msgid "USB Loader GX will only run with Hermes CIOS rev 4! Please make sure you have revision 4 installed!"
#~ msgstr "USB Loader GX sadece Hermes CIOS rev4 ile çalışır! Lütfen rev4 ün yüklü olduğundan emin olun!"
#~ msgid "contains over 255 lines of code. It will produce unexpected results."
#~ msgstr "255 satırdan fazla kod içeriyor. Beklenmeyen sonuçlar üretebilir."

View File

@ -37,5 +37,34 @@ bool InitGecko()
else return false;
}
char ascii(char s) {
if(s < 0x20) return '.';
if(s > 0x7E) return '.';
return s;
}
void hexdump(void *d, int len) {
u8 *data;
int i, off;
data = (u8*)d;
gprintf("\n 0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF");
gprintf("\n==== =============================================== ================\n");
for (off=0; off<len; off += 16) {
gprintf("%04x ",off);
for(i=0; i<16; i++)
if((i+off)>=len) gprintf(" ");
else gprintf("%02x ",data[off+i]);
gprintf(" ");
for(i=0; i<16; i++)
if((i+off)>=len) gprintf(" ");
else gprintf("%c",ascii(data[off+i]));
gprintf("\n");
}
}
#endif /* NO_DEBUG */

View File

@ -11,6 +11,7 @@ extern "C" {
//use this just like printf();
void gprintf(const char *str, ...);
bool InitGecko();
void hexdump(void *d, int len);
#else
#define gprintf(...)
#define InitGecko() false

View File

@ -16,6 +16,7 @@
#include <unistd.h>
#include <locale.h>
#include <wiiuse/wpad.h>
#include <ogc/libversion.h>
//#include <debug.h>
extern "C"
{
@ -194,12 +195,13 @@ main(int argc, char *argv[])
__exception_setreload(5); //auto reset code dump nobody gives us codedump info anyways.
gprintf("\n\n------------------");
gprintf("\nUSB Loader GX rev%s",GetRev());
gprintf("\nmain(%d", argc);
gprintf("------------------\n");
gprintf("USB Loader GX rev%s\n",GetRev());
gprintf("<< %s >>\n", _V_STRING );
gprintf("main(%d", argc);
for (int i=0;i<argc;i++)
gprintf(", %s",argv[i]?argv[i]:"<NULL>");
gprintf(")");
gprintf(")\n");
// This part is added, because we need a identify patched ios
// printf("\n\tReloading into ios 236");
@ -209,7 +211,7 @@ main(int argc, char *argv[])
IOS_ReloadIOSsafe(36);
}
printf("\n\tStarting up");
printf("Starting up\n");
MEM2_init(36); // Initialize 36 MB
MEM2_takeBigOnes(true);

View File

@ -603,14 +603,13 @@ int MainMenu(int menu) {
vipatch = 0;
break;
}
gprintf("\n\tDisc_wiiBoot");
u32 rtrnID = GetReturnToTitle();
gprintf("Disc_wiiBoot\n" );
ret = Disc_WiiBoot(videoselected, cheat, vipatch, countrystrings, errorfixer002, alternatedol, alternatedoloffset);
ret = Disc_WiiBoot(videoselected, cheat, vipatch, countrystrings, errorfixer002, alternatedol, alternatedoloffset, rtrnID);
if (ret < 0) {
Sys_LoadMenu();
}
printf("Returning entry point: 0x%0x\n", ret);
}
return 0;
}

View File

@ -26,6 +26,7 @@
#include "usbloader/apploader.h"
#include "patchcode.h"
#include "../gecko.h"
//#include "sd.h"
//#include "fwrite_patch.h"
@ -414,4 +415,182 @@ void vidolpatcher(void *addr, u32 len)
}
}
//giantpune's magic super patch to return to channels
/*bool PatchReturnTo(void *Address, int Size, u32 id) {
u8 SearchPattern[ 12 ] = { 0x38, 0x80, 0x00, 0x02, 0x38, 0x60, 0x00, 0x01, 0x38, 0xa0, 0x00, 0x00 };
int found = 0;
int patched = 0;
int offset = 0;
u32 ad[ 3 ] = { 0, 0, 0 };
void *Addr = Address;
void *Addr_end = Address+Size;
//find __OSLaunchMenu() and remember some addresses in it
while (Addr <= Addr_end - 12 ) {
if ( memcmp( Addr, SearchPattern, 12 )==0 ) {
ad[ found++ ] = Addr;
}
else if ( ad[ 0 ] && memcmp( Addr, SearchPattern, 8 )==0 ) //after the first match is found, only search the first 8 bytes for the other 2
{
if( !ad[ 1 ] ) ad[ found++ ] = Addr;
else if( !ad[ 2 ] ) ad[ found++ ] = Addr;
if( found >= 3 )break;
}
Addr += 4;
offset += 4;
}
//if the function is found and if it is not too far into the main.dol
if( found == 3 && ( offset < 0x1000001 ) )
{
u32 nop = 0x60000000;
//the magic that writes the TID to the registers
u8 jump[ 20 ] = { 0x3C, 0x60, 0x00, 0x01, 0x60, 0x63, 0x00, 0x01,
0x3C, 0x80, 0x4A, 0x4F, 0x60, 0x84, 0x44, 0x49,
0x4E, 0x80, 0x00, 0x20 };
//patch the thing to use the new TID
jump[ 10 ] = (u8)( id>>24 );
jump[ 11 ] = (u8)( id>>16 );
jump[ 14 ] = (u8)( id>>8 );
jump[ 15 ] = (u8)id;
u32 jumpTo = Address - sizeof( jump );
void* addr = jumpTo;
//write new stuff to memory right before the main.dol
memcpy( addr, jump, sizeof( jump ) );
//ES_GetTicketViews()
u32 newval = ( jumpTo - ad[ 0 ] );
newval &= 0x03FFFFFC;
newval |= 0x48000001;
addr = ad[ 0 ];
//gprintf("addr: %p\n", addr );
memcpy( addr, &newval, sizeof( u32) );
memcpy( addr + 4, &nop, sizeof( u32) );
//gprintf("%p patched to %08x\n", addr, newval );
//ES_GetTicketViews() again
newval = ( jumpTo - ad[ 1 ] );
newval &= 0x03FFFFFC;
newval |= 0x48000001;
addr = ad[ 1 ];
//gprintf("addr: %p\n", addr );
memcpy( addr, &newval, sizeof( u32) );
memcpy( addr + 4, &nop, sizeof( u32) );
//gprintf("%p patched to %08x\n", addr, newval );
//ES_LaunchTitle()
newval = ( jumpTo - ad[ 2 ] );
newval &= 0x03FFFFFC;
newval |= 0x48000001;
addr = ad[ 2 ];
//gprintf("addr: %p\n", addr );
memcpy( addr, &newval, sizeof( u32) );
memcpy( addr + 4, &nop, sizeof( u32) );
//gprintf("%p patched to %08x\n", addr, newval );
patched = 1;
}
return patched;
}
*/
bool PatchReturnTo(void *Address, int Size, u32 id) {
u8 SearchPattern[ 12 ] = { 0x38, 0x80, 0x00, 0x02, 0x38, 0x60, 0x00, 0x01, 0x38, 0xa0, 0x00, 0x00 };
u8 SearchPattern2[ 12 ] = { 0x4D, 0x65, 0x74, 0x72, 0x6F, 0x77, 0x65, 0x72, 0x6B, 0x73, 0x20, 0x54 };
int found = 0;
int patched = 0;
u32 ad[ 4 ] = { 0, 0, 0, 0 };
void *Addr = Address;
void *Addr_end = Address+Size;
while (Addr <= Addr_end - 12 ) {
//find a safe place or the patch to hang out
if ( ! ad[ 3 ] && memcmp( Addr, SearchPattern2, 12 )==0 ) {
ad[ 3 ] = Addr + 0x30;
gprintf("found a safe place @ %08x\n", ad[ 3 ]);
//hexdump( Addr, 0x50 );
}
//find __OSLaunchMenu() and remember some addresses in it
else if ( memcmp( Addr, SearchPattern, 12 )==0 ) {
ad[ found++ ] = Addr;
}
else if ( ad[ 0 ] && memcmp( Addr, SearchPattern, 8 )==0 ) //after the first match is found, only search the first 8 bytes for the other 2
{
if( !ad[ 1 ] ) ad[ found++ ] = Addr;
else if( !ad[ 2 ] ) ad[ found++ ] = Addr;
if( found >= 3 )break;
}
Addr += 4;
}
//if the function is found and if it is not too far into the main.dol
if( found == 3 && ( ad[ 2 ] - ad[ 3 ] < 0x1000001 ) && ad[ 3 ] )
{
gprintf("patch __OSLaunchMenu( 0x00010001, 0x%08x )\n", id);
u32 nop = 0x60000000;
//the magic that writes the TID to the registers
u8 jump[ 20 ] = { 0x3C, 0x60, 0x00, 0x01, 0x60, 0x63, 0x00, 0x01,
0x3C, 0x80, 0x4A, 0x4F, 0x60, 0x84, 0x44, 0x49,
0x4E, 0x80, 0x00, 0x20 };
//patch the thing to use the new TID
jump[ 10 ] = (u8)( id>>24 );
jump[ 11 ] = (u8)( id>>16 );
jump[ 14 ] = (u8)( id>>8 );
jump[ 15 ] = (u8)id;
//u32 jumpTo = Address - sizeof( jump );
void* addr = ad[ 3 ];
//write new stuff to memory right before the main.dol
memcpy( addr, jump, sizeof( jump ) );
//ES_GetTicketViews()
u32 newval = ( ad[ 3 ] - ad[ 0 ] );
newval &= 0x03FFFFFC;
newval |= 0x48000001;
addr = ad[ 0 ];
memcpy( addr, &newval, sizeof( u32 ) );
memcpy( addr + 4, &nop, sizeof( u32 ) );
gprintf("%p -> %08x\n", addr, newval );
//ES_GetTicketViews() again
newval = ( ad[ 3 ] - ad[ 1 ] );
newval &= 0x03FFFFFC;
newval |= 0x48000001;
addr = ad[ 1 ];
memcpy( addr, &newval, sizeof( u32 ) );
memcpy( addr + 4, &nop, sizeof( u32 ) );
gprintf("%p -> %08x\n", addr, newval );
//ES_LaunchTitle()
newval = ( ad[ 3 ] - ad[ 2 ] );
newval &= 0x03FFFFFC;
newval |= 0x48000001;
addr = ad[ 2 ];
memcpy( addr, &newval, sizeof( u32 ) );
memcpy( addr + 4, &nop, sizeof( u32 ) );
gprintf("%p -> %08x\n", addr, newval );
patched = 1;
}
else
{
gprintf("not patched\n");
gprintf("found %d addresses\n", found);
int i;
for( i = 0; i< 4; i++)
gprintf("ad[ %d ]: %08x\n", i, ad[ i ] );
gprintf("offset : %08x\n", ad[ 2 ] - ad[ 3 ] );
}
return patched;
}

View File

@ -36,6 +36,7 @@ bool dogamehooks(void *addr, u32 len);
void langpatcher(void *addr, u32 len);
void vidolpatcher(void *addr, u32 len);
void patchdebug(void *addr, u32 len);
bool PatchReturnTo(void *Address, int Size, u32 id);
#ifdef __cplusplus
}

View File

@ -24,15 +24,10 @@ bool Load_Dol(void **buffer, int* dollen, char * filepath) {
memcpy(gameidbuffer6, (char*)0x80000000, 6);
snprintf(fullpath, 200, "%s%s.dol", filepath, gameidbuffer6);
// SDCard_Init();
// USBDevice_Init();
file = fopen(fullpath, "rb");
if (file == NULL) {
fclose(file);
// SDCard_deInit();
// USBDevice_deInit();
return false;
}
@ -44,22 +39,16 @@ bool Load_Dol(void **buffer, int* dollen, char * filepath) {
dol_buffer = malloc(filesize);
if (dol_buffer == NULL) {
fclose(file);
// SDCard_deInit();
// USBDevice_deInit();
return false;
return false;
}
ret = fread( dol_buffer, 1, filesize, file);
if (ret != filesize) {
free(dol_buffer);
fclose(file);
// SDCard_deInit();
// USBDevice_deInit();
return false;
return false;
}
fclose(file);
// SDCard_deInit();
// USBDevice_deInit();
*buffer = dol_buffer;
*dollen = filesize;
return true;
@ -188,7 +177,7 @@ void __dvd_readidcb(s32 result)
{
dvddone = result;
}
u32 Load_Dol_from_disc(u32 doloffset, u8 videoSelected, u8 patchcountrystring, u8 vipatch, u8 cheat) {
u32 Load_Dol_from_disc(u32 doloffset, u8 videoSelected, u8 patchcountrystring, u8 vipatch, u8 cheat, u32 rtrn ) {
int ret;
void *dol_header;
u32 entrypoint;
@ -216,6 +205,8 @@ u32 Load_Dol_from_disc(u32 doloffset, u8 videoSelected, u8 patchcountrystring, u
void *offset;
u32 pos;
u32 len;
u32 dolStart = 0x90000000;
u32 dolEnd = 0x0;
while (load_dol_image_modified(&offset, &pos, &len)) {
if (len != 0) {
@ -225,12 +216,19 @@ u32 Load_Dol_from_disc(u32 doloffset, u8 videoSelected, u8 patchcountrystring, u
gamepatches(offset, len, videoSelected, patchcountrystring, vipatch, cheat);
DCFlushRange(offset, len);
if( offset < dolStart )dolStart = offset;
if( offset + len > dolEnd ) dolEnd = offset + len;
Remove_001_Protection(offset, len);
}
}
if( PatchReturnTo( dolStart, dolEnd - dolStart , rtrn ) )
{
//gprintf("return-to patched\n" );
DCFlushRange( dolStart, dolEnd - dolStart );
}
free(dol_header);
return entrypoint;

View File

@ -10,7 +10,7 @@ extern "C" {
bool Load_Dol(void **buffer, int* dollen, char * path);
bool Remove_001_Protection(void *Address, int Size);
u32 load_dol_image(void * dolstart);
u32 Load_Dol_from_disc(u32 doloffset, u8 videoSelected, u8 patchcountrystring, u8 vipatch, u8 cheat);
u32 Load_Dol_from_disc(u32 doloffset, u8 videoSelected, u8 patchcountrystring, u8 vipatch, u8 cheat, u32 rtrn);
#ifdef __cplusplus
}

View File

@ -328,12 +328,12 @@ void gamepatches(void * dst, int len, u8 videoSelected, u8 patchcountrystring, u
if(cheat)
dogamehooks(dst,len);
//if (vipatch)//moved to degamehooks()
// vidolpatcher(dst,len);
if (vipatch)
vidolpatcher(dst,len);
/*LANGUAGE PATCH - FISHEARS*/
//langpatcher(dst,len);//moved to degamehooks()
langpatcher(dst,len);
/*Thanks to WiiPower*/
if (patchcountrystring == 1)
@ -352,7 +352,7 @@ void gamepatches(void * dst, int len, u8 videoSelected, u8 patchcountrystring, u
}
s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8 patchcountrystring, u8 error002fix, u8 alternatedol, u32 alternatedoloffset) {
s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8 patchcountrystring, u8 error002fix, u8 alternatedol, u32 alternatedoloffset, u32 rtrn) {
app_entry appldr_entry;
app_init appldr_init;
app_main appldr_main;
@ -360,7 +360,7 @@ s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8
u32 appldr_len;
s32 ret;
gprintf("\nApploader_Run() started");
gprintf("Apploader_Run() started\n");
//u32 geckoattached = usb_isgeckoalive(EXI_CHANNEL_1);
//if (geckoattached)usb_flush(EXI_CHANNEL_1);
@ -386,7 +386,7 @@ s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8
appldr_entry(&appldr_init, &appldr_main, &appldr_final);
/* Initialize apploader */
appldr_init(__noprint);
appldr_init( gprintf );
if (error002fix!=0) {
/* ERROR 002 fix (thanks to WiiPower for sharing this)*/
@ -394,6 +394,9 @@ s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8
// *(u32 *)0x80003140 = *(u32 *)0x80003188;
}
u32 dolStart = 0x90000000;
u32 dolEnd = 0x0;
for (;;) {
void *dst = NULL;
int len = 0, offset = 0;
@ -406,9 +409,21 @@ s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8
/* Read data from DVD */
WDVD_Read(dst, len, (u64)(offset << 2));
gamepatches(dst, len, videoSelected, patchcountrystring, vipatch, cheat);
if( !alternatedol )gamepatches(dst, len, videoSelected, patchcountrystring, vipatch, cheat);
DCFlushRange(dst, len);
if( dst < dolStart )dolStart = dst;
if( dst + len > dolEnd ) dolEnd = dst + len;
}
//this patch should be run on the entire dol at 1 time
if( !alternatedol && rtrn)
{
if( PatchReturnTo( dolStart, dolEnd - dolStart , rtrn) )
{
//gprintf("return-to patched\n" );
DCFlushRange( dolStart, dolEnd - dolStart );
}
}
*entry = appldr_final();
@ -426,8 +441,11 @@ s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8
DCFlushRange(dolbuffer, dollen);
gamepatches(dolbuffer, dollen, videoSelected, patchcountrystring, vipatch, cheat);
DCFlushRange(dolbuffer, dollen);
if( PatchReturnTo( dolStart, dolEnd - dolStart , rtrn ) )
{
//gprintf("return-to patched\n" );
DCFlushRange(dolbuffer, dollen);
}
/* Set entry point from apploader */
*entry = (entry_point) load_dol_image(dolbuffer);
@ -441,7 +459,7 @@ s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8
FST_ENTRY *fst = (FST_ENTRY *)*(u32 *)0x80000038;
*entry = (entry_point) Load_Dol_from_disc(fst[alternatedoloffset].fileoffset, videoSelected, patchcountrystring, vipatch, cheat);
*entry = (entry_point) Load_Dol_from_disc(fst[alternatedoloffset].fileoffset, videoSelected, patchcountrystring, vipatch, cheat, rtrn);
if (*entry == 0)
SYS_ResetSystem(SYS_RETURNTOMENU, 0, 0);

View File

@ -9,8 +9,8 @@ extern "C" {
typedef void (*entry_point)(void);
/* Prototypes */
s32 Apploader_Run(entry_point *, u8, u8, u8, u8, u8, u8, u32);
void gamepatches(void * dst, int len, u8 videoSelected, u8 patchcountrystring, u8 vipatch, u8 cheat);
s32 Apploader_Run(entry_point *, u8, u8, u8, u8, u8, u8, u32, u32);
void gamepatches(void * dst, int len, u8 videoSelected, u8 patchcountrystring, u8 vipatch, u8 cheat );
#ifdef __cplusplus
}

View File

@ -296,7 +296,7 @@ s32 Disc_IsWii(void) {
return 0;
}
s32 Disc_BootPartition(u64 offset, u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring, u8 error002fix, u8 alternatedol, u32 alternatedoloffset) {
s32 Disc_BootPartition(u64 offset, u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring, u8 error002fix, u8 alternatedol, u32 alternatedoloffset, u32 rtrn) {
entry_point p_entry;
s32 ret;
@ -314,7 +314,7 @@ s32 Disc_BootPartition(u64 offset, u8 videoselected, u8 cheat, u8 vipatch, u8 pa
__Disc_SetLowMem();
/* Run apploader */
ret = Apploader_Run(&p_entry, cheat, videoselected, vipatch, patchcountrystring, error002fix, alternatedol, alternatedoloffset);
ret = Apploader_Run(&p_entry, cheat, videoselected, vipatch, patchcountrystring, error002fix, alternatedol, alternatedoloffset, rtrn);
if (ret < 0)
return ret;
@ -388,7 +388,7 @@ s32 Disc_BootPartition(u64 offset, u8 videoselected, u8 cheat, u8 vipatch, u8 pa
return 0;
}
s32 Disc_WiiBoot(u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring, u8 error002fix, u8 alternatedol, u32 alternatedoloffset) {
s32 Disc_WiiBoot(u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring, u8 error002fix, u8 alternatedol, u32 alternatedoloffset, u32 rtrn) {
u64 offset;
s32 ret;
@ -398,7 +398,7 @@ s32 Disc_WiiBoot(u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring,
return ret;
/* Boot partition */
return Disc_BootPartition(offset, videoselected, cheat, vipatch, patchcountrystring, error002fix, alternatedol, alternatedoloffset);
return Disc_BootPartition(offset, videoselected, cheat, vipatch, patchcountrystring, error002fix, alternatedol, alternatedoloffset, rtrn);
}

View File

@ -47,8 +47,8 @@ extern "C" {
s32 Disc_SetUSB(const u8 *);
s32 Disc_ReadHeader(void *);
s32 Disc_IsWii(void);
s32 Disc_BootPartition(u64, u8, u8, u8, u8, u8, u8, u32);
s32 Disc_WiiBoot(u8, u8, u8, u8, u8, u8, u32);
s32 Disc_BootPartition(u64, u8, u8, u8, u8, u8, u8, u32, u32);
s32 Disc_WiiBoot(u8, u8, u8, u8, u8, u8, u32, u32);
s32 __Disc_FindPartition(u64 *outbuf);
void PatchCountryStrings(void *Address, int Size);
s32 __Disc_FindPartition(u64 *outbuf);

View File

@ -945,5 +945,52 @@ out:
gprintf(" = %d",ret);
return ret;
}
#define TITLE_LOWER(x) ((u32)(x))
u32 GetReturnToTitle()
{
u32 tmdsize;
u64 tid = 0;
u64 *list;
u32 titlecount;
s32 ret;
u32 i;
ret = ES_GetNumTitles(&titlecount);
if(ret < 0)
return 0;
list = memalign(32, titlecount * sizeof(u64) + 32);
ret = ES_GetTitles(list, titlecount);
if(ret < 0) {
free(list);
return 0;
}
for(i=0; i<titlecount; i++) {
if (list[i]==TITLE_ID(0x00010001,0x554c4e52)
|| list[i]==TITLE_ID(0x00010001,0x554e454f))
{
tid = list[i];
break;
}
}
for(i=0; i<titlecount; i++) {
if (list[i]==TITLE_ID(0x00010001,0x4A4F4449)
|| list[i]==TITLE_ID(0x00010001,0x48415858))
{
tid = list[i];
break;
}
}
free(list);
if(!tid)
return 0;
if(ES_GetStoredTMDSize(tid, &tmdsize) < 0)
return 0;
return TITLE_LOWER(tid);
}

View File

@ -70,6 +70,8 @@ s32 WII_BootHBC();
//get the rev of a ISO and such without having to load it
s32 getIOSrev(u64 req);
u32 GetReturnToTitle();
#ifdef __cplusplus
}
#endif