* Added WiiU pro controller support.

Some menus or buttons might not work. (Thanks Airline38)
  L3+R3 to shutdown the pad.
* Added PS3 controller support over USB, requires loader's
  IOS set to IOS58. Button mapped as Classic Controller.
* Added a WiiU Auto aspect fixer based on current WiiU setting.
* Added a WiiU Widescreen switcher in Features menu.


Nintendont:
* Fixed detection for nintendont v2.263+ issue 2294
* Added a WiiU Widescreen setting. issue 2296
  Default value based on current WiiU aspect ratio settings.
* Added a setting to choose Nincfg.bin behavior at launch issue 2297
  Always delete; Always create; No change. 
* Removed unused game specific settings section (MGS2)
* Renamed MCEmu ON setting to Multi
* Added Disc launching feature
* Added user prompt to select where MCEmu should be
  located when using Disc launching.
  The device is auto-detected if Gamecube source setting 
  is set to SD or Main(USB) only.
* Changed prompt type to warning if Nintendont version
  detection fails.


Thanks to Airline38 for the WiiU pro base patch.
This commit is contained in:
Cyan 2015-01-04 20:22:06 +00:00
parent 6ae72b2487
commit db6517256e
57 changed files with 1096 additions and 136 deletions

View File

@ -2,8 +2,8 @@
<app version="1"> <app version="1">
<name> USB Loader GX</name> <name> USB Loader GX</name>
<coder>USB Loader GX Team</coder> <coder>USB Loader GX Team</coder>
<version>3.0 r1233</version> <version>3.0 r1235</version>
<release_date>20141110211657</release_date> <release_date>20150104200036</release_date>
<!-- // remove this line to enable arguments <!-- // remove this line to enable arguments
<arguments> <arguments>
<arg>--ios=250</arg> <arg>--ios=250</arg>

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: David Jelinek (djelinek@hotmail.com) e->e,r->r,u->u, c->c \n" "Last-Translator: David Jelinek (djelinek@hotmail.com) e->e,r->r,u->u, c->c \n"
"Language-Team: r1056 - last version on http://djelinek.sweb.cz/_USBLoderGX/czech.lang \n" "Language-Team: r1056 - last version on http://djelinek.sweb.cz/_USBLoderGX/czech.lang \n"
@ -1477,6 +1477,9 @@ msgstr "Nebyl nalezen oddíl WBFS nebo FAT/NTFS/EXT"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "Zapnuto" msgstr "Zapnuto"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibrace"
msgid "SChinese" msgid "SChinese"
msgstr "Cínsky" msgstr "Cínsky"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Nastavit vyhledávací filtr"
msgid "Settings" msgid "Settings"
msgstr "Nastavení" msgstr "Nastavení"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "Popisky"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Prenos selhal" msgstr "Prenos selhal"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "Co si prejete smazat pro tento titul:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Wii svetlo" msgstr "Wii svetlo"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: Fox888[dk]\n" "Last-Translator: Fox888[dk]\n"
"Language-Team: [dk]\n" "Language-Team: [dk]\n"
@ -1477,6 +1477,9 @@ msgstr "Ingen WBFS eller FAT/NTFS/EXT partition er fundet"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Ingen Wiinnertag.xml fundet i config stien. Vil du oprette en prøve fil?" msgstr "Ingen Wiinnertag.xml fundet i config stien. Vil du oprette en prøve fil?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "Til" msgstr "Til"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibration"
msgid "SChinese" msgid "SChinese"
msgstr "Kinesisk (std.)" msgstr "Kinesisk (std.)"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Søgefilter"
msgid "Settings" msgid "Settings"
msgstr "Indstillinger" msgstr "Indstillinger"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "Vis kategorier" msgstr "Vis kategorier"
@ -2074,6 +2086,9 @@ msgstr "Værktøjstips"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Overførelse fejlede" msgstr "Overførelse fejlede"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "Hvad skal der slettes for dette spil:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "Hvad skal der udpakkes fra NAND?" msgstr "Hvad skal der udpakkes fra NAND?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml er opdateret." msgstr "WiiTDB.xml er opdateret."
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "" msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@ -1477,6 +1477,9 @@ msgstr "Geen WBFS of FAT/NTFS/EXT partitie gevonden"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Geen Wiinertag.xml gevonden in het configuratie pad. Wil je een voorbeeld bestand maken?" msgstr "Geen Wiinertag.xml gevonden in het configuratie pad. Wil je een voorbeeld bestand maken?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "Geen cheats geselecteerd! Moet het GCT bestand worden verwijderd?" msgstr "Geen cheats geselecteerd! Moet het GCT bestand worden verwijderd?"
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "Aan" msgstr "Aan"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Trilfunctie"
msgid "SChinese" msgid "SChinese"
msgstr "SChinees" msgstr "SChinees"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "Geen toegang tot SD kaart." msgstr "Geen toegang tot SD kaart."
@ -1822,6 +1831,9 @@ msgstr "Zoekfilter instellen"
msgid "Settings" msgid "Settings"
msgstr "Instellingen" msgstr "Instellingen"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "Toon categorieën" msgstr "Toon categorieën"
@ -2074,6 +2086,9 @@ msgstr "Hulpballonnen"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Overdracht mislukt." msgstr "Overdracht mislukt."
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "Wat moet er verwijderd worden voor deze spel titel:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "Wat uitpakken van NAND?" msgstr "Wat uitpakken van NAND?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "Waar moet het spel naar geïnstelleerd worden?" msgstr "Waar moet het spel naar geïnstelleerd worden?"
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml is up to date." msgstr "WiiTDB.xml is up to date."
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "WiiLight" msgstr "WiiLight"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "" msgstr ""
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr ""
msgid "SChinese" msgid "SChinese"
msgstr "" msgstr ""
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr ""
msgid "Settings" msgid "Settings"
msgstr "" msgstr ""
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr ""
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "" msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: c64rmx\n" "Last-Translator: c64rmx\n"
"Language-Team: \n" "Language-Team: \n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "Päälle" msgstr "Päälle"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Värinä"
msgid "SChinese" msgid "SChinese"
msgstr "SKiina" msgstr "SKiina"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr ""
msgid "Settings" msgid "Settings"
msgstr "Asetukset" msgstr "Asetukset"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "Vinkit"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "" msgstr ""

View File

@ -1,11 +1,11 @@
# USB Loader GX language source file. # USB Loader GX language source file.
# French.lang - r1233 # French.lang - r1235
# don't delete/change this line (é). # don't delete/change this line (é).
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: Cyan\n" "Last-Translator: Cyan\n"
"Language-Team: Badablek, Amour, ikya, Cyan & Kin8\n" "Language-Team: Badablek, Amour, ikya, Cyan & Kin8\n"
@ -1477,6 +1477,9 @@ msgstr "Partition WBFS ou FAT/NTFS/EXT non trouvée"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Fichier Wiinnertag.xml non trouvé. Voulez-vous créer un fichier d'exemple ?" msgstr "Fichier Wiinnertag.xml non trouvé. Voulez-vous créer un fichier d'exemple ?"
msgid "No change"
msgstr "Aucune modification"
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "Auncun code-triche sélectionné ! Voulez-vous supprimer le fichier GCT ?" msgstr "Auncun code-triche sélectionné ! Voulez-vous supprimer le fichier GCT ?"
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "Actif" msgstr "Actif"
msgid "ON (Multi)"
msgstr "Actif (Multi)"
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibrations"
msgid "SChinese" msgid "SChinese"
msgstr "Chinois simplifié" msgstr "Chinois simplifié"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "Impossible d'accéder à la carte SD." msgstr "Impossible d'accéder à la carte SD."
@ -1822,6 +1831,9 @@ msgstr "Filtre de Recherche"
msgid "Settings" msgid "Settings"
msgstr "Paramètres" msgstr "Paramètres"
msgid "Settings File"
msgstr "Fichier de configs"
msgid "Show Categories" msgid "Show Categories"
msgstr "Afficher les catégories" msgstr "Afficher les catégories"
@ -2074,6 +2086,9 @@ msgstr "Info-bulles"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Échec du transfert" msgstr "Échec du transfert"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "Périphérique USB non initialisé." msgstr "Périphérique USB non initialisé."
@ -2213,6 +2228,9 @@ msgstr "Que voulez-vous supprimer pour ce titre?"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "Que voulez-vous extraire de la NAND ?" msgstr "Que voulez-vous extraire de la NAND ?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "Où installer ce jeu ?" msgstr "Où installer ce jeu ?"
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml est à jour." msgstr "WiiTDB.xml est à jour."
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Illumination Wii" msgstr "Illumination Wii"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2010-07-03 17:35-0800\n" "PO-Revision-Date: 2010-07-03 17:35-0800\n"
"Last-Translator: Sabykos\n" "Last-Translator: Sabykos\n"
"Language-Team: Bertilax, Snoozer, wishmasterf, ZEN.13, TheRealVisitor\n" "Language-Team: Bertilax, Snoozer, wishmasterf, ZEN.13, TheRealVisitor\n"
@ -1477,6 +1477,9 @@ msgstr "Keine WBFS oder FAT/NTFS/EXT Partition vorhanden"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Es wurde keine Wiinnertag.xml im Konfigurationspfad gefunden. Soll eine Beispieldatei angelegt werden?" msgstr "Es wurde keine Wiinnertag.xml im Konfigurationspfad gefunden. Soll eine Beispieldatei angelegt werden?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "Es wurden keine Cheats ausgewählt. Soll die GCT Datei gelöscht werden?" msgstr "Es wurden keine Cheats ausgewählt. Soll die GCT Datei gelöscht werden?"
@ -1570,6 +1573,9 @@ msgstr "OK"
msgid "ON" msgid "ON"
msgstr "AN" msgstr "AN"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Rumble"
msgid "SChinese" msgid "SChinese"
msgstr "Vereinfachtes Chinesisch" msgstr "Vereinfachtes Chinesisch"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "Auf die SD konnte nicht zugegriffen werden." msgstr "Auf die SD konnte nicht zugegriffen werden."
@ -1822,6 +1831,9 @@ msgstr "Setze Suchfilter"
msgid "Settings" msgid "Settings"
msgstr "Einstellungen" msgstr "Einstellungen"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "Zeige Kategorien" msgstr "Zeige Kategorien"
@ -2074,6 +2086,9 @@ msgstr "Quickinfo"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Transfer fehlgeschlagen" msgstr "Transfer fehlgeschlagen"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "USB Gerät nicht initialisiert." msgstr "USB Gerät nicht initialisiert."
@ -2213,6 +2228,9 @@ msgstr "Was sollte bei diesem Spiel gelöscht werden:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "Was soll aus dem NAND kopiert werden?" msgstr "Was soll aus dem NAND kopiert werden?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "Wohin soll das Spiel installiert werden?" msgstr "Wohin soll das Spiel installiert werden?"
@ -2240,6 +2258,9 @@ msgstr "WiiTDB.xml"
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml ist aktuell." msgstr "WiiTDB.xml ist aktuell."
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Wii-Laufwerkslicht" msgstr "Wii-Laufwerkslicht"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"Last-Translator: nakata6790\n" "Last-Translator: nakata6790\n"
"Language-Team: nakata6790 (aka0107@gmail.com)\n" "Language-Team: nakata6790 (aka0107@gmail.com)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
@ -1476,6 +1476,9 @@ msgstr "Äåí âñÝèçêå WBFS Þ FAT/NTFS/EXT partition"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Äåí âñÝèçêå áñ÷åßï Winnertag.xml. ÈÝëåôå íá äçìéïõñãçèåß Ýíá áñ÷åßï-ðáñÜäåéãìá;" msgstr "Äåí âñÝèçêå áñ÷åßï Winnertag.xml. ÈÝëåôå íá äçìéïõñãçèåß Ýíá áñ÷åßï-ðáñÜäåéãìá;"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "Äåí åðéëÝ÷èçêáí cheats! ÈÝëåôå íá äéáãñáöåß ôï áñ÷åßï cheat GCT;" msgstr "Äåí åðéëÝ÷èçêáí cheats! ÈÝëåôå íá äéáãñáöåß ôï áñ÷åßï cheat GCT;"
@ -1569,6 +1572,9 @@ msgstr "OK"
msgid "ON" msgid "ON"
msgstr "NAI" msgstr "NAI"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1752,6 +1758,9 @@ msgstr "Äüíçóç"
msgid "SChinese" msgid "SChinese"
msgstr "ÁðëïðïéçìÝíá êéíåæéêá" msgstr "ÁðëïðïéçìÝíá êéíåæéêá"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "Ìç ðñïóðåëÜóéìç SD." msgstr "Ìç ðñïóðåëÜóéìç SD."
@ -1821,6 +1830,9 @@ msgstr "Ñýèìéóç áíáæÞôçóçò"
msgid "Settings" msgid "Settings"
msgstr "Settings" msgstr "Settings"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "ÐñïâïëÞ êáôçãïñéþí" msgstr "ÐñïâïëÞ êáôçãïñéþí"
@ -2073,6 +2085,9 @@ msgstr "ÅôéêÝôåò"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Áíåðéôõ÷Þò ìåôáöïñÜ áñ÷åßùí" msgstr "Áíåðéôõ÷Þò ìåôáöïñÜ áñ÷åßùí"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2212,6 +2227,9 @@ msgstr "Ôé èá èÝëáôå íá äéáãñÜøåôå áðü áõôü ôïí
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "Ôé íá ìåôáöåñèåß áðü ôç ìíÞìç NAND?" msgstr "Ôé íá ìåôáöåñèåß áðü ôç ìíÞìç NAND?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "Ðïõ íá åãêáôáóôáèåß ôï ðáé÷íßäé;" msgstr "Ðïõ íá åãêáôáóôáèåß ôï ðáé÷íßäé;"
@ -2239,6 +2257,9 @@ msgstr "WiiTDB.xml"
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "Ôï áñ÷åßï WiiTDB.xml åßíáé åíçìåñùìÝíï" msgstr "Ôï áñ÷åßï WiiTDB.xml åßíáé åíçìåñùìÝíï"
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "ËÜìðáêé DVD drive ôïõ Wii" msgstr "ËÜìðáêé DVD drive ôïõ Wii"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-12-29 11:05+0100\n" "PO-Revision-Date: 2009-12-29 11:05+0100\n"
"Last-Translator: Springdale\n" "Last-Translator: Springdale\n"
"Language-Team: Tusk, Springdale\n" "Language-Team: Tusk, Springdale\n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "BE" msgstr "BE"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Rezgés"
msgid "SChinese" msgid "SChinese"
msgstr "SKínai" msgstr "SKínai"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Keresés"
msgid "Settings" msgid "Settings"
msgstr "Beállítások" msgstr "Beállítások"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "Súgók"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "WiiFény" msgstr "WiiFény"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2011-09-11 12:19+0100\n" "PO-Revision-Date: 2011-09-11 12:19+0100\n"
"Last-Translator: xFede\n" "Last-Translator: xFede\n"
"Language-Team: xFede (fedeanto11@gmail.com)\n" "Language-Team: xFede (fedeanto11@gmail.com)\n"
@ -1477,6 +1477,9 @@ msgstr "Nessuna partizione WBFS o FAT/NTFS/EXT trovata"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Winnertag.xml non trovato nel percorso specificato. Vuoi creare un file di esempio?" msgstr "Winnertag.xml non trovato nel percorso specificato. Vuoi creare un file di esempio?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "Nessun trucco selezionato! Il file GCT deve essere eliminato?" msgstr "Nessun trucco selezionato! Il file GCT deve essere eliminato?"
@ -1570,6 +1573,9 @@ msgstr "OK"
msgid "ON" msgid "ON"
msgstr "ON" msgstr "ON"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibrazione"
msgid "SChinese" msgid "SChinese"
msgstr "Cinese semplificato" msgstr "Cinese semplificato"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "SD inacessibile." msgstr "SD inacessibile."
@ -1822,6 +1831,9 @@ msgstr "Imposta cerca-filtro"
msgid "Settings" msgid "Settings"
msgstr "Impostazioni" msgstr "Impostazioni"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "Visualizza categorie" msgstr "Visualizza categorie"
@ -2074,6 +2086,9 @@ msgstr "Suggerimenti"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Trasferimento fallito" msgstr "Trasferimento fallito"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "Cosa deve essere eliminato per questo gioco:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "Che cosa vuoi estrarre dalla NAND?" msgstr "Che cosa vuoi estrarre dalla NAND?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "Dove deve essere installato il gioco?" msgstr "Dove deve essere installato il gioco?"
@ -2240,6 +2258,9 @@ msgstr "WiiTDB.xml"
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml è già aggiornato" msgstr "WiiTDB.xml è già aggiornato"
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Illuminazione Wii" msgstr "Illuminazione Wii"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: hosigumayuugi\n" "Last-Translator: hosigumayuugi\n"
"Language-Team: hosigumayuugi\n" "Language-Team: hosigumayuugi\n"
@ -1477,6 +1477,9 @@ msgstr "使用できる領域が見つかりません"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Wiinnertag.xmlが設定パスにみつかりません。テンプレファイルを作成しますか?" msgstr "Wiinnertag.xmlが設定パスにみつかりません。テンプレファイルを作成しますか?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "何も選ばれていません!(GCTファイルが削除された?)" msgstr "何も選ばれていません!(GCTファイルが削除された?)"
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "使う" msgstr "使う"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "振動機能"
msgid "SChinese" msgid "SChinese"
msgstr "簡体中国語" msgstr "簡体中国語"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "SDカードにアクセス出来ません" msgstr "SDカードにアクセス出来ません"
@ -1822,6 +1831,9 @@ msgstr "検索"
msgid "Settings" msgid "Settings"
msgstr "設定" msgstr "設定"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "カテゴリを表示" msgstr "カテゴリを表示"
@ -2074,6 +2086,9 @@ msgstr "ヒントバルーン"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "転送に失敗しました" msgstr "転送に失敗しました"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "このゲームの何を削除しますか:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "何をNANDから書き出しますか?" msgstr "何をNANDから書き出しますか?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "どこにインストールしますか?" msgstr "どこにインストールしますか?"
@ -2240,6 +2258,9 @@ msgstr "ゲーム名リスト"
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "ゲーム名リストが更新されました" msgstr "ゲーム名リストが更新されました"
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "スロット点灯機能" msgstr "スロット点灯機能"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: nextos@korea.com\n" "Last-Translator: nextos@korea.com\n"
"Language-Team: \n" "Language-Team: \n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr "확인"
msgid "ON" msgid "ON"
msgstr "켜짐" msgstr "켜짐"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "진동"
msgid "SChinese" msgid "SChinese"
msgstr "중국어(간체)" msgstr "중국어(간체)"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr ""
msgid "Settings" msgid "Settings"
msgstr "설정" msgstr "설정"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "Tooltips"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Wiilight" msgstr "Wiilight"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: raschi\n" "Last-Translator: raschi\n"
"Language-Team: raschi\n" "Language-Team: raschi\n"
@ -1477,6 +1477,9 @@ msgstr "Ingen WBFS eller FAT/NTFS/EXT partisjon funnet"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Ingen Wiinnertag.xml funnet. Vil du opprette en eksempelfil?" msgstr "Ingen Wiinnertag.xml funnet. Vil du opprette en eksempelfil?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "PÅ" msgstr "PÅ"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibrasjon"
msgid "SChinese" msgid "SChinese"
msgstr "S.Kinesisk" msgstr "S.Kinesisk"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Angi søkefilter"
msgid "Settings" msgid "Settings"
msgstr "Innstillinger" msgstr "Innstillinger"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "Vis kategorier" msgstr "Vis kategorier"
@ -2074,6 +2086,9 @@ msgstr "Verktøystips"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Overføring feilet" msgstr "Overføring feilet"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "Hva skal slettes for denne spilltittel:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Wii DVD lys" msgstr "Wii DVD lys"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:26+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: ziom666 (zadania_prog@vp.pl)\n" "Last-Translator: ziom666 (zadania_prog@vp.pl)\n"
"Language-Team: \n" "Language-Team: \n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "Wlacz" msgstr "Wlacz"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Wibracje"
msgid "SChinese" msgid "SChinese"
msgstr "uproszczony chinski" msgstr "uproszczony chinski"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Ustaw filtr wyszukiwania"
msgid "Settings" msgid "Settings"
msgstr "Ustawienia" msgstr "Ustawienia"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "Chmurki z podpowiedziami"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Dioda Wii" msgstr "Dioda Wii"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-04-25 15:06+0200\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2011-11-03 11:00+0000\n" "PO-Revision-Date: 2011-11-03 11:00+0000\n"
"Last-Translator: Codemaster <javafangamers@hotmail.com>\n" "Last-Translator: Codemaster <javafangamers@hotmail.com>\n"
"Language-Team: Sky8000, pplucky\n" "Language-Team: Sky8000, pplucky\n"
@ -39,10 +39,10 @@ msgstr "%s somente aceita jogos de GameCube no formato ISO."
msgid "%s requires AHB access! Please launch USBLoaderGX from HBC or from an updated channel or forwarder." msgid "%s requires AHB access! Please launch USBLoaderGX from HBC or from an updated channel or forwarder."
msgstr "%s requer AHB. Inicie o USBLoader GX pelo Homebrew Channel ou por um forwarder atualizado." msgstr "%s requer AHB. Inicie o USBLoader GX pelo Homebrew Channel ou por um forwarder atualizado."
msgid "--== Devolution" msgid "--== Devolution"
msgstr "" msgstr ""
msgid "--== Nintendont" msgid "--== Nintendont"
msgstr "" msgstr ""
msgid "--== DIOS MIOS (Lite) " msgid "--== DIOS MIOS (Lite) "
@ -1477,6 +1477,9 @@ msgstr "Nenhuma partição WBFS ou FAT/NTFS/EXT encontrada"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Wiinnertag.xml não encontrado. Quer criar um arquivo de exemplo?" msgstr "Wiinnertag.xml não encontrado. Quer criar um arquivo de exemplo?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "Nenhum cheat foi selecionado. Deseja apagar o arquivo GCT antigo?" msgstr "Nenhum cheat foi selecionado. Deseja apagar o arquivo GCT antigo?"
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "SIM" msgstr "SIM"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibração"
msgid "SChinese" msgid "SChinese"
msgstr "Chinês Simp." msgstr "Chinês Simp."
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "Este Cartão SD não pode ser acessado." msgstr "Este Cartão SD não pode ser acessado."
@ -1822,6 +1831,9 @@ msgstr "Pesquisar"
msgid "Settings" msgid "Settings"
msgstr "Definições" msgstr "Definições"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "Mostrar Categorias" msgstr "Mostrar Categorias"
@ -2074,6 +2086,9 @@ msgstr "Balões de dica"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Transferência falhou" msgstr "Transferência falhou"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "Dispositivo USB não encontrado." msgstr "Dispositivo USB não encontrado."
@ -2213,6 +2228,9 @@ msgstr "O que deve ser apagado para este jogo:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "O que extrair da NAND?" msgstr "O que extrair da NAND?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "Aonde o jogo será instalado?" msgstr "Aonde o jogo será instalado?"
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml está atualizado." msgstr "WiiTDB.xml está atualizado."
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Iluminação Leitor" msgstr "Iluminação Leitor"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:28+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2011-11-03 11:00+0000\n" "PO-Revision-Date: 2011-11-03 11:00+0000\n"
"Last-Translator: pplucky <pplucky@gmail.com>\n" "Last-Translator: pplucky <pplucky@gmail.com>\n"
"Language-Team: Sky8000, pplucky\n" "Language-Team: Sky8000, pplucky\n"
@ -1477,6 +1477,9 @@ msgstr "Nenhuma partição WBFS ou FAT/NTFS/EXT encontrada"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "Ficheiro Wiinnertag.xml não encontrado. Quer criar um ficheiro de exemplo?" msgstr "Ficheiro Wiinnertag.xml não encontrado. Quer criar um ficheiro de exemplo?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr "OK"
msgid "ON" msgid "ON"
msgstr "ON" msgstr "ON"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibração"
msgid "SChinese" msgid "SChinese"
msgstr "Chinês Simplificado" msgstr "Chinês Simplificado"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Pesquisar"
msgid "Settings" msgid "Settings"
msgstr "Definições" msgstr "Definições"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "Mostrar Categorias" msgstr "Mostrar Categorias"
@ -2074,6 +2086,9 @@ msgstr "Dicas"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Transferência falhada" msgstr "Transferência falhada"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "O que deve ser apagado para este jogo:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "O que extrair da NAND?" msgstr "O que extrair da NAND?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr "WiiTDB.xml"
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml está actualizado." msgstr "WiiTDB.xml está actualizado."
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Iluminação Leitor" msgstr "Iluminação Leitor"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:28+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: nikolai_ca\n" "Last-Translator: nikolai_ca\n"
"Language-Team: Kir, alendit, nikolai_ca\n" "Language-Team: Kir, alendit, nikolai_ca\n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr "OK"
msgid "ON" msgid "ON"
msgstr "ВКЛ" msgstr "ВКЛ"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Вибрация"
msgid "SChinese" msgid "SChinese"
msgstr "Упрощенный китайский" msgstr "Упрощенный китайский"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Установить фильтр для поиска"
msgid "Settings" msgid "Settings"
msgstr "Установки" msgstr "Установки"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "Подсказки"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Подсветка Wii" msgstr "Подсветка Wii"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:28+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2013-08-13 07:03+0800\n" "PO-Revision-Date: 2013-08-13 07:03+0800\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: oCameLo\n" "Language-Team: oCameLo\n"
@ -1477,6 +1477,9 @@ msgstr "找不到 WBFS 或 FAT/NTFS/EXT 分区"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "在配置路径中未找到 Wiinnertag.xml 。是否创建一个示例文件?" msgstr "在配置路径中未找到 Wiinnertag.xml 。是否创建一个示例文件?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "未选择金手指! GCT 文件是否已被删除?" msgstr "未选择金手指! GCT 文件是否已被删除?"
@ -1570,6 +1573,9 @@ msgstr "确定"
msgid "ON" msgid "ON"
msgstr "开启" msgstr "开启"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "震动"
msgid "SChinese" msgid "SChinese"
msgstr "简体中文" msgstr "简体中文"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "SD 卡不能访问。" msgstr "SD 卡不能访问。"
@ -1822,6 +1831,9 @@ msgstr "设置搜索过滤器"
msgid "Settings" msgid "Settings"
msgstr "設置" msgstr "設置"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "显示分类" msgstr "显示分类"
@ -2074,6 +2086,9 @@ msgstr "提示信息"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "传输失败" msgstr "传输失败"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "USB设备无法初始化。" msgstr "USB设备无法初始化。"
@ -2213,6 +2228,9 @@ msgstr "要删除这个游戏的什么:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "从 NAND 中提取什么?" msgstr "从 NAND 中提取什么?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "游戏安装到什么地方?" msgstr "游戏安装到什么地方?"
@ -2240,6 +2258,9 @@ msgstr "WiiTDB.xml"
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml 已是最新版。" msgstr "WiiTDB.xml 已是最新版。"
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "光驱灯" msgstr "光驱灯"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:28+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2011-07-25 16:40+0200\n" "PO-Revision-Date: 2011-07-25 16:40+0200\n"
"Last-Translator: Galen/xFede\n" "Last-Translator: Galen/xFede\n"
"Language-Team: Penn, SirPalax, hvy109\n" "Language-Team: Penn, SirPalax, hvy109\n"
@ -1477,6 +1477,9 @@ msgstr "Partición WBFS o FAT/NTFS/EXT no encontrada"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "No se encontró el archivo Wiinnertag.xml. ¿Quieres crear un archivo de ejemplo?" msgstr "No se encontró el archivo Wiinnertag.xml. ¿Quieres crear un archivo de ejemplo?"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "No hay trucos seleccionados, ¿debe ser borrado el archivo GCT?" msgstr "No hay trucos seleccionados, ¿debe ser borrado el archivo GCT?"
@ -1570,6 +1573,9 @@ msgstr "Aceptar"
msgid "ON" msgid "ON"
msgstr "Activado" msgstr "Activado"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibración"
msgid "SChinese" msgid "SChinese"
msgstr "Chino S." msgstr "Chino S."
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "No se puede acceder a la tarjeta SD" msgstr "No se puede acceder a la tarjeta SD"
@ -1822,6 +1831,9 @@ msgstr "Usar filtro de búsqueda"
msgid "Settings" msgid "Settings"
msgstr "Configuración" msgstr "Configuración"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "Mostrar Categorías" msgstr "Mostrar Categorías"
@ -2074,6 +2086,9 @@ msgstr "Descripción"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "Transferencia fallida" msgstr "Transferencia fallida"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "Qué se debería borrar para este juego:"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "¿Que Extraer de la Nand?" msgstr "¿Que Extraer de la Nand?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "¿Donde debe ser instalado el juego?" msgstr "¿Donde debe ser instalado el juego?"
@ -2240,6 +2258,9 @@ msgstr "WiiTDB"
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml está actualizado." msgstr "WiiTDB.xml está actualizado."
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Iluminar lector" msgstr "Iluminar lector"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:28+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2010-01-19 17:39+0200\n" "PO-Revision-Date: 2010-01-19 17:39+0200\n"
"Last-Translator: Katsurou\n" "Last-Translator: Katsurou\n"
"Language-Team: Katsurou, pirateX\n" "Language-Team: Katsurou, pirateX\n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "PÅ" msgstr "PÅ"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Vibration"
msgid "SChinese" msgid "SChinese"
msgstr "SKinesiska" msgstr "SKinesiska"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Ställ in sök-filter"
msgid "Settings" msgid "Settings"
msgstr "Inställningar" msgstr "Inställningar"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "Verktygstips"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Wii-ljus" msgstr "Wii-ljus"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:28+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2010-02-15 21:00+0800\n" "PO-Revision-Date: 2010-02-15 21:00+0800\n"
"Last-Translator: Jane.H\n" "Last-Translator: Jane.H\n"
"Language-Team: kyogc, Miller, Mika Li, Jane.H\n" "Language-Team: kyogc, Miller, Mika Li, Jane.H\n"
@ -1477,6 +1477,9 @@ msgstr "沒找到WBFS 或 FAT/NTFS/EXT磁區"
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "在config路徑沒找到Wiinnertag.xml檔。是否要建立一個範本檔" msgstr "在config路徑沒找到Wiinnertag.xml檔。是否要建立一個範本檔"
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "金手指代碼未被選取! 是否已刪除金手指檔案?" msgstr "金手指代碼未被選取! 是否已刪除金手指檔案?"
@ -1570,6 +1573,9 @@ msgstr "確定"
msgid "ON" msgid "ON"
msgstr "開啟" msgstr "開啟"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "震動"
msgid "SChinese" msgid "SChinese"
msgstr "簡體中文" msgstr "簡體中文"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "SD卡無法存取" msgstr "SD卡無法存取"
@ -1822,6 +1831,9 @@ msgstr "關鍵字篩選"
msgid "Settings" msgid "Settings"
msgstr "設定" msgstr "設定"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "顯示類別" msgstr "顯示類別"
@ -2074,6 +2086,9 @@ msgstr "提示訊息"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "傳輸失敗" msgstr "傳輸失敗"
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr "這遊戲title應刪除什麼"
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "從 NAND 提取什麼?" msgstr "從 NAND 提取什麼?"
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "遊戲應安裝到何處" msgstr "遊戲應安裝到何處"
@ -2240,6 +2258,9 @@ msgstr "WiiTDB.xml"
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "WiiTDB.xml保持最新。" msgstr "WiiTDB.xml保持最新。"
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "Wii LED燈" msgstr "Wii LED燈"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:28+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: Nitro_subzero \n" "Last-Translator: Nitro_subzero \n"
"Language-Team: Nitro_subzero\n" "Language-Team: Nitro_subzero\n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr "ตกลง"
msgid "ON" msgid "ON"
msgstr "เปิด" msgstr "เปิด"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "สั่น"
msgid "SChinese" msgid "SChinese"
msgstr "จีน" msgstr "จีน"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "กำหนดเงื่อนไขการค้นหา"
msgid "Settings" msgid "Settings"
msgstr "กำหนดค่า" msgstr "กำหนดค่า"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "คำแนะนำ"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "ความสว่างของ Wii" msgstr "ความสว่างของ Wii"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: USB Loader GX\n" "Project-Id-Version: USB Loader GX\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-11-10 19:28+0100\n" "POT-Creation-Date: 2015-01-04 21:00+0100\n"
"PO-Revision-Date: 2009-10-01 01:00+0200\n" "PO-Revision-Date: 2009-10-01 01:00+0200\n"
"Last-Translator: omercigingelini\n" "Last-Translator: omercigingelini\n"
"Language-Team: omercigingelini\n" "Language-Team: omercigingelini\n"
@ -1477,6 +1477,9 @@ msgstr ""
msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?" msgid "No Wiinnertag.xml found in the config path. Do you want an example file created?"
msgstr "" msgstr ""
msgid "No change"
msgstr ""
msgid "No cheats were selected! Should the GCT file be deleted?" msgid "No cheats were selected! Should the GCT file be deleted?"
msgstr "" msgstr ""
@ -1570,6 +1573,9 @@ msgstr ""
msgid "ON" msgid "ON"
msgstr "AÇIK" msgstr "AÇIK"
msgid "ON (Multi)"
msgstr ""
msgid "OSReport" msgid "OSReport"
msgstr "" msgstr ""
@ -1753,6 +1759,9 @@ msgstr "Titreşim"
msgid "SChinese" msgid "SChinese"
msgstr "Basitleştirilmis Çince" msgstr "Basitleştirilmis Çince"
msgid "SD"
msgstr ""
msgid "SD Card could not be accessed." msgid "SD Card could not be accessed."
msgstr "" msgstr ""
@ -1822,6 +1831,9 @@ msgstr "Arama Filtresi Ayarla"
msgid "Settings" msgid "Settings"
msgstr "Ayarlar" msgstr "Ayarlar"
msgid "Settings File"
msgstr ""
msgid "Show Categories" msgid "Show Categories"
msgstr "" msgstr ""
@ -2074,6 +2086,9 @@ msgstr "Yardımlar"
msgid "Transfer failed" msgid "Transfer failed"
msgstr "" msgstr ""
msgid "USB"
msgstr ""
msgid "USB Device not initialized." msgid "USB Device not initialized."
msgstr "" msgstr ""
@ -2213,6 +2228,9 @@ msgstr ""
msgid "What to extract from NAND?" msgid "What to extract from NAND?"
msgstr "" msgstr ""
msgid "Where do you want MCEmu to be located?"
msgstr ""
msgid "Where should the game be installed to?" msgid "Where should the game be installed to?"
msgstr "" msgstr ""
@ -2240,6 +2258,9 @@ msgstr ""
msgid "WiiTDB.xml is up to date." msgid "WiiTDB.xml is up to date."
msgstr "" msgstr ""
msgid "WiiU Widescreen"
msgstr ""
msgid "Wiilight" msgid "Wiilight"
msgstr "" msgstr ""

View File

@ -67,7 +67,7 @@ endif
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
CFLAGS = -g -ggdb -O3 -Wall -Wno-multichar -Wno-unused-parameter -Wextra $(MACHDEP) $(INCLUDE) -DBUILD_IOS=$(IOS) CFLAGS = -g -ggdb -O3 -Wall -Wno-multichar -Wno-unused-parameter -Wextra $(MACHDEP) $(INCLUDE) -DBUILD_IOS=$(IOS)
CXXFLAGS = $(CFLAGS) CXXFLAGS = $(CFLAGS)
LDFLAGS = -g -ggdb $(MACHDEP) -Wl,-Map,$(notdir $@).map,--section-start,.init=0x80B00000,-wrap,malloc,-wrap,free,-wrap,memalign,-wrap,calloc,-wrap,realloc,-wrap,malloc_usable_size LDFLAGS = -g -ggdb $(MACHDEP) -Wl,-Map,$(notdir $@).map,--section-start,.init=0x80B00000,-wrap,malloc,-wrap,free,-wrap,memalign,-wrap,calloc,-wrap,realloc,-wrap,malloc_usable_size,-wrap,wiiuse_register
ifeq ($(BUILDMODE),channel) ifeq ($(BUILDMODE),channel)
CFLAGS += -DFULLCHANNEL CFLAGS += -DFULLCHANNEL
@ -78,7 +78,8 @@ endif
# any extra libraries we wish to link with the project # any extra libraries we wish to link with the project
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
LIBS := -lcustomfat -lcustomntfs -lcustomext2fs -lvorbisidec -lmad -lfreetype \ LIBS := -lcustomfat -lcustomntfs -lcustomext2fs -lvorbisidec -lmad -lfreetype \
-lgd -ljpeg -lpng -lzip -lm -lz -lwiiuse -lbte -lasnd -logc -lgd -ljpeg -lpng -lzip -lm -lz -lwiiuse -lwupc -lbte -lasnd -logc \
-lsicksaxis
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# list of directories containing libraries, this must be the top level containing # list of directories containing libraries, this must be the top level containing
# include and lib # include and lib

View File

@ -87,7 +87,7 @@ BoxCover::~BoxCover()
//! Remove me later //! Remove me later
void BoxCover::WiiPADControl(GuiTrigger *t) void BoxCover::WiiPADControl(GuiTrigger *t)
{ {
if((t->wpad.btns_d & WPAD_BUTTON_A) || (t->wpad.btns_h & WPAD_CLASSIC_BUTTON_A) || (t->pad.btns_h & PAD_BUTTON_A)) if((t->wpad.btns_d & WPAD_BUTTON_A) || (t->wpad.btns_h & WPAD_CLASSIC_BUTTON_A) || (t->wupcdata.btns_h & WPAD_CLASSIC_BUTTON_A) || (t->pad.btns_h & PAD_BUTTON_A))
{ {
if(t->wpad.ir.valid) if(t->wpad.ir.valid)
{ {
@ -102,6 +102,10 @@ void BoxCover::WiiPADControl(GuiTrigger *t)
// GameCube and Classic Controller // GameCube and Classic Controller
s8 movX = fabs(t->pad.stickX) > 10.0f ? t->pad.stickX : t->WPAD_Stick(0, 0); s8 movX = fabs(t->pad.stickX) > 10.0f ? t->pad.stickX : t->WPAD_Stick(0, 0);
s8 movY = fabs(t->pad.stickY) > 10.0f ? t->pad.stickY : t->WPAD_Stick(0, 1); s8 movY = fabs(t->pad.stickY) > 10.0f ? t->pad.stickY : t->WPAD_Stick(0, 1);
// WiiU Pro Classic Controller
// Todo : Proper stick calibration required to allow moving cover
//! Drop stick moves of less than 10 because of sensitivity //! Drop stick moves of less than 10 because of sensitivity
if(fabs(movX) < 10.0f) movX = 0; if(fabs(movX) < 10.0f) movX = 0;
if(fabs(movY) < 10.0f) movY = 0; if(fabs(movY) < 10.0f) movY = 0;
@ -124,13 +128,13 @@ void BoxCover::WiiPADControl(GuiTrigger *t)
else else
moveChan = -1; moveChan = -1;
} }
else if(((t->wpad.btns_h & WPAD_BUTTON_A) || (t->wpad.btns_h & WPAD_CLASSIC_BUTTON_A) || (t->pad.btns_h & PAD_BUTTON_A)) && moveChan == t->chan && t->wpad.ir.valid && !effects) else if(((t->wpad.btns_h & WPAD_BUTTON_A) || (t->wpad.btns_h & WPAD_CLASSIC_BUTTON_A) || (t->wupcdata.btns_h & WPAD_CLASSIC_BUTTON_A) || (t->pad.btns_h & PAD_BUTTON_A)) && moveChan == t->chan && t->wpad.ir.valid && !effects)
{ {
movePosX = (t->wpad.ir.x-moveStartPosX) * fabs(PosZ)/3400.f; movePosX = (t->wpad.ir.x-moveStartPosX) * fabs(PosZ)/3400.f;
movePosY = (moveStartPosY-t->wpad.ir.y) * fabs(PosZ)/3400.f; movePosY = (moveStartPosY-t->wpad.ir.y) * fabs(PosZ)/3400.f;
last_manual_move_frame = frameCount; last_manual_move_frame = frameCount;
} }
else if(!(t->wpad.btns_h & WPAD_BUTTON_A) && !(t->wpad.btns_h & WPAD_CLASSIC_BUTTON_A) && !(t->pad.btns_h & PAD_BUTTON_A) && moveChan == t->chan) else if(!(t->wpad.btns_h & WPAD_BUTTON_A) && !(t->wpad.btns_h & WPAD_CLASSIC_BUTTON_A) && !(t->wupcdata.btns_h & WPAD_CLASSIC_BUTTON_A) && !(t->pad.btns_h & PAD_BUTTON_A) && moveChan == t->chan)
{ {
if(moveChan >= 0 && moveChan < 4) if(moveChan >= 0 && moveChan < 4)
{ {
@ -140,27 +144,27 @@ void BoxCover::WiiPADControl(GuiTrigger *t)
} }
} }
if((t->wpad.btns_h & WPAD_BUTTON_UP) || (t->pad.substickY > PADCAL)) if((t->wpad.btns_h & WPAD_BUTTON_UP) || (t->pad.substickY > PADCAL) || (t->wupcdata.substickY > WUPCCAL))
{ {
RotX -= 2.0f; RotX -= 2.0f;
last_manual_move_frame = frameCount; last_manual_move_frame = frameCount;
} }
if((t->wpad.btns_h & WPAD_BUTTON_DOWN) || (t->pad.substickY < -PADCAL)) if((t->wpad.btns_h & WPAD_BUTTON_DOWN) || (t->pad.substickY < -PADCAL) || (t->wupcdata.substickY < -WUPCCAL))
{ {
RotX += 2.0f; RotX += 2.0f;
last_manual_move_frame = frameCount; last_manual_move_frame = frameCount;
} }
if((t->wpad.btns_h & WPAD_BUTTON_LEFT) || (t->pad.substickX < -PADCAL)) if((t->wpad.btns_h & WPAD_BUTTON_LEFT) || (t->pad.substickX < -PADCAL) || (t->wupcdata.substickX < -WUPCCAL))
{ {
RotY -= 2.0f; RotY -= 2.0f;
last_manual_move_frame = frameCount; last_manual_move_frame = frameCount;
} }
if((t->wpad.btns_h & WPAD_BUTTON_RIGHT) || (t->pad.substickX > PADCAL)) if((t->wpad.btns_h & WPAD_BUTTON_RIGHT) || (t->pad.substickX > PADCAL) || (t->wupcdata.substickX > WUPCCAL))
{ {
RotY += 2.0f; RotY += 2.0f;
last_manual_move_frame = frameCount; last_manual_move_frame = frameCount;
} }
if((t->wpad.btns_d & WPAD_BUTTON_2) || (t->pad.btns_d & PAD_BUTTON_X) || (t->wpad.btns_d & WPAD_CLASSIC_BUTTON_X)) if((t->wpad.btns_d & WPAD_BUTTON_2) || (t->pad.btns_d & PAD_BUTTON_X) || (t->wpad.btns_d & WPAD_CLASSIC_BUTTON_X) || (t->wupcdata.btns_d & WPAD_CLASSIC_BUTTON_X))
{ {
if(RotY < 180.0f) if(RotY < 180.0f)
SetEffect(EFFECT_BOX_ROTATE_X, 10, 180); SetEffect(EFFECT_BOX_ROTATE_X, 10, 180);
@ -168,12 +172,12 @@ void BoxCover::WiiPADControl(GuiTrigger *t)
SetEffect(EFFECT_BOX_ROTATE_X, -10, -180); SetEffect(EFFECT_BOX_ROTATE_X, -10, -180);
last_manual_move_frame = frameCount; last_manual_move_frame = frameCount;
} }
if((t->wpad.btns_h & WPAD_BUTTON_PLUS) || (t->pad.btns_h & PAD_TRIGGER_R) || (t->wpad.btns_h & WPAD_CLASSIC_BUTTON_FULL_R)) if((t->wpad.btns_h & WPAD_BUTTON_PLUS) || (t->pad.btns_h & PAD_TRIGGER_R) || (t->wpad.btns_h & WPAD_CLASSIC_BUTTON_FULL_R) || (t->wupcdata.btns_h & WPAD_CLASSIC_BUTTON_FULL_R))
{ {
if(PosZ < -2.8f) if(PosZ < -2.8f)
PosZ += 0.4f*fabs(PosZ)/19.f; PosZ += 0.4f*fabs(PosZ)/19.f;
} }
if((t->wpad.btns_h & WPAD_BUTTON_MINUS) || (t->pad.btns_h & PAD_TRIGGER_L) || (t->wpad.btns_h & WPAD_CLASSIC_BUTTON_FULL_L)) if((t->wpad.btns_h & WPAD_BUTTON_MINUS) || (t->pad.btns_h & PAD_TRIGGER_L) || (t->wpad.btns_h & WPAD_CLASSIC_BUTTON_FULL_L) || (t->wupcdata.btns_h & WPAD_CLASSIC_BUTTON_FULL_L))
{ {
if(PosZ > -43.0f) if(PosZ > -43.0f)
PosZ -= 0.4f*fabs(PosZ)/19.f; PosZ -= 0.4f*fabs(PosZ)/19.f;

View File

@ -90,6 +90,29 @@ void WiiPointer::Draw(GuiTrigger *t)
lastActivity = 0; lastActivity = 0;
} }
//Wii u pro x-axis
if(t->wupcdata.stickX < -WUPCCAL)
{
posX += (t->wupcdata.stickX + WUPCCAL) * Settings.PointerSpeed/8;
lastActivity = 0;
}
else if(t->wupcdata.stickX > WUPCCAL)
{
posX += (t->wupcdata.stickX - WUPCCAL) * Settings.PointerSpeed/8;
lastActivity = 0;
}
//Wii u pro y-axis
if(t->wupcdata.stickY < -WUPCCAL)
{
posY -= (t->wupcdata.stickY + WUPCCAL) * Settings.PointerSpeed/8;
lastActivity = 0;
}
else if(t->wupcdata.stickY > WUPCCAL)
{
posY -= (t->wupcdata.stickY - WUPCCAL) * Settings.PointerSpeed/8;
lastActivity = 0;
}
int wpadX = t->WPAD_Stick(0, 0); int wpadX = t->WPAD_Stick(0, 0);
int wpadY = t->WPAD_Stick(0, 1); int wpadY = t->WPAD_Stick(0, 1);
@ -117,7 +140,7 @@ void WiiPointer::Draw(GuiTrigger *t)
lastActivity = 0; lastActivity = 0;
} }
if(t->pad.btns_h || t->wpad.btns_h) if(t->pad.btns_h || t->wpad.btns_h || t->wupcdata.btns_h)
lastActivity = 0; lastActivity = 0;
posX = LIMIT(posX, -50.0f, screenwidth+50.0f); posX = LIMIT(posX, -50.0f, screenwidth+50.0f);

View File

@ -38,6 +38,7 @@
#include <math.h> #include <math.h>
#include <asndlib.h> #include <asndlib.h>
#include <wiiuse/wpad.h> #include <wiiuse/wpad.h>
#include <wupc/wupc.h>
#include "gui_imagedata.h" #include "gui_imagedata.h"
#include "FreeTypeGX.h" #include "FreeTypeGX.h"
#include "video.h" #include "video.h"
@ -47,6 +48,8 @@
#include "SoundOperations/gui_bgm.h" #include "SoundOperations/gui_bgm.h"
#include "utils/timer.h" #include "utils/timer.h"
#include "sigslot.h" #include "sigslot.h"
#include <sicksaxis.h>
#include "sicksaxis-wrapper.h"
//! Frequently used variables //! Frequently used variables
extern FreeTypeGX *fontSystem; extern FreeTypeGX *fontSystem;
@ -107,6 +110,16 @@ typedef struct _paddata
u8 triggerR; u8 triggerR;
} PADData; } PADData;
typedef struct _wupcfulldata {
u32 btns_d;
u32 btns_u;
u32 btns_h;
s16 stickX;
s16 stickY;
s16 substickX;
s16 substickY;
} WUPCFULLData;
#define EFFECT_SLIDE_TOP 1 #define EFFECT_SLIDE_TOP 1
#define EFFECT_SLIDE_BOTTOM 2 #define EFFECT_SLIDE_BOTTOM 2
#define EFFECT_SLIDE_RIGHT 4 #define EFFECT_SLIDE_RIGHT 4
@ -164,6 +177,7 @@ class GuiTrigger
u8 type; //!< trigger type (TRIGGER_SIMPLE, TRIGGER_HELD, TRIGGER_BUTTON_ONLY) u8 type; //!< trigger type (TRIGGER_SIMPLE, TRIGGER_HELD, TRIGGER_BUTTON_ONLY)
s32 chan; //!< Trigger controller channel (0-3, -1 for all) s32 chan; //!< Trigger controller channel (0-3, -1 for all)
WPADData wpad; //!< Wii controller trigger data WPADData wpad; //!< Wii controller trigger data
WUPCFULLData wupcdata;//!< Wii U pro controller trigger data
PADData pad; //!< GameCube controller trigger data PADData pad; //!< GameCube controller trigger data
}; };

View File

@ -444,7 +444,7 @@ void GuiButton::Update(GuiTrigger * t)
// button triggers // button triggers
if (this->IsClickable() && scrollison == 0) if (this->IsClickable() && scrollison == 0)
{ {
s32 wm_btns, wm_btns_trig, cc_btns, cc_btns_trig; s32 wm_btns, wm_btns_trig, cc_btns, cc_btns_trig, wupc_btns, wupc_btns_trig;
for (int i = 0; i < 6; i++) for (int i = 0; i < 6; i++)
{ {
if (trigger[i] && (trigger[i]->chan == -1 || trigger[i]->chan == t->chan)) if (trigger[i] && (trigger[i]->chan == -1 || trigger[i]->chan == t->chan))
@ -456,9 +456,16 @@ void GuiButton::Update(GuiTrigger * t)
// lower 16 bits only (classic controller) // lower 16 bits only (classic controller)
cc_btns = t->wpad.btns_d >> 16; cc_btns = t->wpad.btns_d >> 16;
cc_btns_trig = trigger[i]->wpad.btns_d >> 16; cc_btns_trig = trigger[i]->wpad.btns_d >> 16;
// lower 16 bits only (WiiU Pro controller)
wupc_btns = t->wupcdata.btns_d >> 16;
wupc_btns_trig = trigger[i]->wupcdata.btns_d >> 16;
if (((t->wpad.btns_d > 0 && wm_btns == wm_btns_trig) || (cc_btns == cc_btns_trig && t->wpad.exp.type
== EXP_CLASSIC)) || (t->pad.btns_d == trigger[i]->pad.btns_d && t->pad.btns_d > 0)) if( ((t->wpad.btns_d > 0 && wm_btns == wm_btns_trig)
|| (t->wpad.exp.type == WPAD_EXP_CLASSIC && cc_btns == cc_btns_trig))
|| (t->pad.btns_d > 0 && t->pad.btns_d == trigger[i]->pad.btns_d)
|| (t->wupcdata.btns_d > 0 && wupc_btns == wupc_btns_trig))
{ {
if (t->chan == stateChan || stateChan == -1) if (t->chan == stateChan || stateChan == -1)
{ {
@ -482,7 +489,7 @@ void GuiButton::Update(GuiTrigger * t)
if (this->IsHoldable()) if (this->IsHoldable())
{ {
bool held = false; bool held = false;
s32 wm_btns, wm_btns_h, wm_btns_trig, cc_btns, cc_btns_h, cc_btns_trig; s32 wm_btns, wm_btns_h, wm_btns_trig, cc_btns, cc_btns_h, cc_btns_trig, wupc_btns, wupc_btns_h, wupc_btns_trig;
for (int i = 0; i < 6; i++) for (int i = 0; i < 6; i++)
{ {
@ -497,19 +504,29 @@ void GuiButton::Update(GuiTrigger * t)
cc_btns = t->wpad.btns_d >> 16; cc_btns = t->wpad.btns_d >> 16;
cc_btns_h = t->wpad.btns_h >> 16; cc_btns_h = t->wpad.btns_h >> 16;
cc_btns_trig = trigger[i]->wpad.btns_h >> 16; cc_btns_trig = trigger[i]->wpad.btns_h >> 16;
// lower 16 bits only (WiiU Pro controller)
wupc_btns = t->wupcdata.btns_d >> 16;
wupc_btns_h = t->wupcdata.btns_h >> 16;
wupc_btns_trig = trigger[i]->wupcdata.btns_h >> 16;
if (((t->wpad.btns_d > 0 && wm_btns == wm_btns_trig) || (cc_btns == cc_btns_trig && t->wpad.exp.type if( (t->wpad.btns_d > 0 && wm_btns == wm_btns_trig)
== EXP_CLASSIC)) || (t->pad.btns_d == trigger[i]->pad.btns_h && t->pad.btns_d > 0)) || (t->wpad.exp.type == WPAD_EXP_CLASSIC && cc_btns == cc_btns_trig)
|| (t->pad.btns_d > 0 && t->pad.btns_d == trigger[i]->pad.btns_d)
|| (t->wupcdata.btns_d > 0 && wupc_btns == wupc_btns_trig))
{ {
if (trigger[i]->type == TRIGGER_HELD && state == STATE_SELECTED && (t->chan == stateChan if (trigger[i]->type == TRIGGER_HELD && state == STATE_SELECTED && (t->chan == stateChan || stateChan == -1))
|| stateChan == -1)) this->SetState(STATE_CLICKED, t->chan); this->SetState(STATE_CLICKED, t->chan);
} }
if (((t->wpad.btns_h > 0 && wm_btns_h == wm_btns_trig) || (cc_btns_h == cc_btns_trig if( (t->wpad.btns_h > 0 && wm_btns_h == wm_btns_trig)
&& t->wpad.exp.type == EXP_CLASSIC)) || (t->pad.btns_h == trigger[i]->pad.btns_h || (t->wpad.exp.type == WPAD_EXP_CLASSIC && cc_btns_h == cc_btns_trig)
&& t->pad.btns_h > 0)) || (t->pad.btns_h > 0 && t->pad.btns_h == trigger[i]->pad.btns_h)
|| (t->wupcdata.btns_h > 0 && wupc_btns_h == wupc_btns_trig)
)
{ {
if (trigger[i]->type == TRIGGER_HELD) held = true; if (trigger[i]->type == TRIGGER_HELD)
held = true;
} }
if (!held && state == STATE_HELD && stateChan == t->chan) if (!held && state == STATE_HELD && stateChan == t->chan)

View File

@ -187,12 +187,13 @@ void GuiCheckboxBrowser::Update(GuiTrigger *t)
if((t->wpad.btns_d & (WPAD_BUTTON_B | WPAD_BUTTON_DOWN | WPAD_BUTTON_UP | WPAD_BUTTON_LEFT | WPAD_BUTTON_RIGHT | if((t->wpad.btns_d & (WPAD_BUTTON_B | WPAD_BUTTON_DOWN | WPAD_BUTTON_UP | WPAD_BUTTON_LEFT | WPAD_BUTTON_RIGHT |
WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)) || WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)) ||
(t->pad.btns_d & (PAD_BUTTON_UP | PAD_BUTTON_DOWN))) (t->pad.btns_d & (PAD_BUTTON_UP | PAD_BUTTON_DOWN)) ||
(t->wupcdata.btns_d & (WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)))
pressedChan = t->chan; pressedChan = t->chan;
for(u32 i = 0; i < checkBoxDrawn.size(); i++) for(u32 i = 0; i < checkBoxDrawn.size(); i++)
{ {
if(pressedChan == -1 || (!t->wpad.btns_h && !t->pad.btns_h)) if(pressedChan == -1 || (!t->wpad.btns_h && !t->pad.btns_h && !t->wupcdata.btns_h))
{ {
if(i != (u32) selectedItem && checkBoxDrawn[i]->GetState() == STATE_SELECTED) { if(i != (u32) selectedItem && checkBoxDrawn[i]->GetState() == STATE_SELECTED) {
textLineList[i]->SetMaxWidth(maxTextWidth, DOTTED); textLineList[i]->SetMaxWidth(maxTextWidth, DOTTED);
@ -213,7 +214,7 @@ void GuiCheckboxBrowser::Update(GuiTrigger *t)
markImg->SetPosition(5, 15+i*(checkBoxDrawn[i]->GetHeight()+6)+(checkBoxDrawn[i]->GetHeight()-markImg->GetHeight())/2); markImg->SetPosition(5, 15+i*(checkBoxDrawn[i]->GetHeight()+6)+(checkBoxDrawn[i]->GetHeight()-markImg->GetHeight())/2);
} }
if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h) if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h && !t->wupcdata.btns_d && !t->wupcdata.btns_h)
pressedChan = -1; pressedChan = -1;
scrollBar.SetPageSize(checkBoxDrawn.size()); scrollBar.SetPageSize(checkBoxDrawn.size());

View File

@ -184,13 +184,14 @@ void GuiFileBrowser::Update(GuiTrigger * t)
if((t->wpad.btns_d & (WPAD_BUTTON_B | WPAD_BUTTON_DOWN | WPAD_BUTTON_UP | WPAD_BUTTON_LEFT | WPAD_BUTTON_RIGHT | if((t->wpad.btns_d & (WPAD_BUTTON_B | WPAD_BUTTON_DOWN | WPAD_BUTTON_UP | WPAD_BUTTON_LEFT | WPAD_BUTTON_RIGHT |
WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)) || WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)) ||
(t->pad.btns_d & (PAD_BUTTON_UP | PAD_BUTTON_DOWN))) (t->pad.btns_d & (PAD_BUTTON_UP | PAD_BUTTON_DOWN)) ||
(t->wupcdata.btns_d & (WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)))
pressedChan = t->chan; pressedChan = t->chan;
if(browser->browserList.size() > FILEBROWSERSIZE) if(browser->browserList.size() > FILEBROWSERSIZE)
scrollBar.Update(t); scrollBar.Update(t);
if(pressedChan == -1 || (!t->wpad.btns_h && !t->pad.btns_h)) if(pressedChan == -1 || (!t->wpad.btns_h && !t->pad.btns_h && !t->wupcdata.btns_h))
{ {
for (int i = 0; i < FILEBROWSERSIZE; i++) for (int i = 0; i < FILEBROWSERSIZE; i++)
{ {
@ -207,7 +208,7 @@ void GuiFileBrowser::Update(GuiTrigger * t)
} }
if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h) if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h && !t->wupcdata.btns_d && !t->wupcdata.btns_h)
pressedChan = -1; pressedChan = -1;
scrollBar.SetPageSize(FILEBROWSERSIZE); scrollBar.SetPageSize(FILEBROWSERSIZE);

View File

@ -337,7 +337,7 @@ void GuiGameCarousel::Update(GuiTrigger * t)
// Left/Right Navigation // Left/Right Navigation
if (btnLeft->GetState() == STATE_CLICKED) if (btnLeft->GetState() == STATE_CLICKED)
{ {
u32 buttons = t->wpad.btns_h; u32 buttons = t->wpad.btns_h | t->wupcdata.btns_h;
u32 buttonsPAD = t->pad.btns_h; u32 buttonsPAD = t->pad.btns_h;
if (!((buttons & WPAD_BUTTON_A) || (buttons & WPAD_BUTTON_MINUS) || if (!((buttons & WPAD_BUTTON_A) || (buttons & WPAD_BUTTON_MINUS) ||
(buttons & WPAD_CLASSIC_BUTTON_A) || (buttons & WPAD_CLASSIC_BUTTON_MINUS) || (buttons & WPAD_CLASSIC_BUTTON_A) || (buttons & WPAD_CLASSIC_BUTTON_MINUS) ||
@ -353,7 +353,7 @@ void GuiGameCarousel::Update(GuiTrigger * t)
} }
else if (btnRight->GetState() == STATE_CLICKED) else if (btnRight->GetState() == STATE_CLICKED)
{ {
u32 buttons = t->wpad.btns_h; u32 buttons = t->wpad.btns_h | t->wupcdata.btns_h;
u32 buttonsPAD = t->pad.btns_h; u32 buttonsPAD = t->pad.btns_h;
if (!((buttons & WPAD_BUTTON_A) || (buttons & WPAD_BUTTON_PLUS) || if (!((buttons & WPAD_BUTTON_A) || (buttons & WPAD_BUTTON_PLUS) ||
(buttons & WPAD_CLASSIC_BUTTON_A) || (buttons & WPAD_CLASSIC_BUTTON_PLUS) || (buttons & WPAD_CLASSIC_BUTTON_A) || (buttons & WPAD_CLASSIC_BUTTON_PLUS) ||

View File

@ -472,7 +472,7 @@ void GuiGameGrid::Update(GuiTrigger * t)
if (btnLeft->GetState() == STATE_CLICKED) if (btnLeft->GetState() == STATE_CLICKED)
{ {
u32 buttons = t->wpad.btns_h; u32 buttons = t->wpad.btns_h | t->wupcdata.btns_h;
u32 buttonsPAD = t->pad.btns_h; u32 buttonsPAD = t->pad.btns_h;
if (!((buttons & WPAD_BUTTON_A) || (buttons & WPAD_BUTTON_MINUS) || if (!((buttons & WPAD_BUTTON_A) || (buttons & WPAD_BUTTON_MINUS) ||
(buttons & WPAD_CLASSIC_BUTTON_A) || (buttons & WPAD_CLASSIC_BUTTON_MINUS) || (buttons & WPAD_CLASSIC_BUTTON_A) || (buttons & WPAD_CLASSIC_BUTTON_MINUS) ||
@ -488,7 +488,7 @@ void GuiGameGrid::Update(GuiTrigger * t)
} }
else if (btnRight->GetState() == STATE_CLICKED) else if (btnRight->GetState() == STATE_CLICKED)
{ {
u32 buttons = t->wpad.btns_h; u32 buttons = t->wpad.btns_h | t->wupcdata.btns_h;
u32 buttonsPAD = t->pad.btns_h; u32 buttonsPAD = t->pad.btns_h;
if (!((buttons & WPAD_BUTTON_A) || (buttons & WPAD_BUTTON_PLUS) || if (!((buttons & WPAD_BUTTON_A) || (buttons & WPAD_BUTTON_PLUS) ||
(buttons & WPAD_CLASSIC_BUTTON_A) || (buttons & WPAD_CLASSIC_BUTTON_PLUS) || (buttons & WPAD_CLASSIC_BUTTON_A) || (buttons & WPAD_CLASSIC_BUTTON_PLUS) ||

View File

@ -258,13 +258,14 @@ void GuiGameList::Update(GuiTrigger * t)
if((t->wpad.btns_d & (WPAD_BUTTON_B | WPAD_BUTTON_DOWN | WPAD_BUTTON_UP | WPAD_BUTTON_LEFT | WPAD_BUTTON_RIGHT | if((t->wpad.btns_d & (WPAD_BUTTON_B | WPAD_BUTTON_DOWN | WPAD_BUTTON_UP | WPAD_BUTTON_LEFT | WPAD_BUTTON_RIGHT |
WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)) || WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)) ||
(t->pad.btns_d & (PAD_BUTTON_UP | PAD_BUTTON_DOWN))) (t->pad.btns_d & (PAD_BUTTON_UP | PAD_BUTTON_DOWN)) ||
(t->wupcdata.btns_d & (WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)))
pressedChan = t->chan; pressedChan = t->chan;
// update the location of the scroll box based on the position in the option list // update the location of the scroll box based on the position in the option list
scrollBar.Update(t); scrollBar.Update(t);
if(pressedChan == -1 || (!t->wpad.btns_h && !t->pad.btns_h)) if(pressedChan == -1 || (!t->wpad.btns_h && !t->pad.btns_h && !t->wupcdata.btns_h))
{ {
for (int i = 0, next = listOffset; i < pagesize; ++i, ++next) for (int i = 0, next = listOffset; i < pagesize; ++i, ++next)
{ {
@ -283,7 +284,7 @@ void GuiGameList::Update(GuiTrigger * t)
} }
} }
if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h) if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h && !t->wupcdata.btns_d && !t->wupcdata.btns_h)
pressedChan = -1; pressedChan = -1;
scrollBar.SetPageSize(pagesize); scrollBar.SetPageSize(pagesize);

View File

@ -227,13 +227,14 @@ void GuiOptionBrowser::Update(GuiTrigger * t)
if((t->wpad.btns_d & (WPAD_BUTTON_B | WPAD_BUTTON_DOWN | WPAD_BUTTON_UP | WPAD_BUTTON_LEFT | WPAD_BUTTON_RIGHT | if((t->wpad.btns_d & (WPAD_BUTTON_B | WPAD_BUTTON_DOWN | WPAD_BUTTON_UP | WPAD_BUTTON_LEFT | WPAD_BUTTON_RIGHT |
WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)) || WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)) ||
(t->pad.btns_d & (PAD_BUTTON_UP | PAD_BUTTON_DOWN))) (t->pad.btns_d & (PAD_BUTTON_UP | PAD_BUTTON_DOWN)) ||
(t->wupcdata.btns_d & (WPAD_CLASSIC_BUTTON_B | WPAD_CLASSIC_BUTTON_UP | WPAD_CLASSIC_BUTTON_DOWN | WPAD_CLASSIC_BUTTON_LEFT | WPAD_CLASSIC_BUTTON_RIGHT)))
pressedChan = t->chan; pressedChan = t->chan;
// update the location of the scroll box based on the position in the option list // update the location of the scroll box based on the position in the option list
scrollBar.Update(t); scrollBar.Update(t);
if(pressedChan == -1 || (!t->wpad.btns_h && !t->pad.btns_h)) if(pressedChan == -1 || (!t->wpad.btns_h && !t->pad.btns_h && !t->wupcdata.btns_h))
{ {
for(int i = 0; i < listSize; i++) for(int i = 0; i < listSize; i++)
{ {
@ -253,7 +254,7 @@ void GuiOptionBrowser::Update(GuiTrigger * t)
} }
} }
if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h) if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h && !t->wupcdata.btns_d && !t->wupcdata.btns_h)
pressedChan = -1; pressedChan = -1;
if(selectedItem != oldSelectedItem) if(selectedItem != oldSelectedItem)

View File

@ -439,7 +439,7 @@ void GuiScrollbar::ScrollByButton(GuiTrigger *t)
if(!t->wpad.ir.valid || ScrollState < ButtonScrollSpeed-ButtonScrollSpeed*fabs(pressedPosition-t->wpad.ir.y)/250.f) if(!t->wpad.ir.valid || ScrollState < ButtonScrollSpeed-ButtonScrollSpeed*fabs(pressedPosition-t->wpad.ir.y)/250.f)
return; return;
if(pressedChan == -1 && (t->wpad.btns_d & ButtonScroll) && if(pressedChan == -1 && ((t->wpad.btns_d & ButtonScroll) || (t->wupcdata.btns_d & ButtonScroll) ) &&
parentElement && parentElement->IsInside(t->wpad.ir.x, t->wpad.ir.y)) parentElement && parentElement->IsInside(t->wpad.ir.x, t->wpad.ir.y))
{ {
pressedPosition = t->wpad.ir.y; pressedPosition = t->wpad.ir.y;
@ -447,7 +447,7 @@ void GuiScrollbar::ScrollByButton(GuiTrigger *t)
oneButtonScrollImg->SetPosition(t->wpad.ir.x-oneButtonScrollImg->GetWidth()/2, t->wpad.ir.y-oneButtonScrollImg->GetHeight()/2); oneButtonScrollImg->SetPosition(t->wpad.ir.x-oneButtonScrollImg->GetWidth()/2, t->wpad.ir.y-oneButtonScrollImg->GetHeight()/2);
} }
if(pressedChan == t->chan && (t->wpad.btns_h & ButtonScroll)) if(pressedChan == t->chan && ((t->wpad.btns_h & ButtonScroll) || (t->wupcdata.btns_h & ButtonScroll) ))
{ {
if(pressedPosition-oneButtonScrollImg->GetHeight()/2 > t->wpad.ir.y) if(pressedPosition-oneButtonScrollImg->GetHeight()/2 > t->wpad.ir.y)
ScrollOneUp(); ScrollOneUp();
@ -458,7 +458,7 @@ void GuiScrollbar::ScrollByButton(GuiTrigger *t)
listChanged(SelItem, SelInd); listChanged(SelItem, SelInd);
} }
if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h) if(pressedChan == t->chan && !t->wpad.btns_d && !t->wpad.btns_h && !t->wupcdata.btns_d && !t->wupcdata.btns_h)
{ {
pressedChan = -1; pressedChan = -1;
pressedPosition = -1; pressedPosition = -1;

View File

@ -18,6 +18,7 @@ static int scrollDelay = 0;
GuiTrigger::GuiTrigger() GuiTrigger::GuiTrigger()
{ {
chan = -1; chan = -1;
memset(&wupcdata, 0, sizeof(WUPCFULLData));
memset(&wpad, 0, sizeof(WPADData)); memset(&wpad, 0, sizeof(WPADData));
memset(&pad, 0, sizeof(PADData)); memset(&pad, 0, sizeof(PADData));
} }
@ -38,6 +39,7 @@ void GuiTrigger::SetSimpleTrigger(s32 ch, u32 wiibtns, u16 gcbtns)
{ {
type = TRIGGER_SIMPLE; type = TRIGGER_SIMPLE;
chan = ch; chan = ch;
wupcdata.btns_d = wiibtns;
wpad.btns_d = wiibtns; wpad.btns_d = wiibtns;
pad.btns_d = gcbtns; pad.btns_d = gcbtns;
} }
@ -51,6 +53,7 @@ void GuiTrigger::SetHeldTrigger(s32 ch, u32 wiibtns, u16 gcbtns)
{ {
type = TRIGGER_HELD; type = TRIGGER_HELD;
chan = ch; chan = ch;
wupcdata.btns_h = wiibtns;
wpad.btns_h = wiibtns; wpad.btns_h = wiibtns;
pad.btns_h = gcbtns; pad.btns_h = gcbtns;
} }
@ -63,6 +66,7 @@ void GuiTrigger::SetButtonOnlyTrigger(s32 ch, u32 wiibtns, u16 gcbtns)
{ {
type = TRIGGER_BUTTON_ONLY; type = TRIGGER_BUTTON_ONLY;
chan = ch; chan = ch;
wupcdata.btns_d = wiibtns;
wpad.btns_d = wiibtns; wpad.btns_d = wiibtns;
pad.btns_d = gcbtns; pad.btns_d = gcbtns;
} }
@ -126,13 +130,16 @@ s8 GuiTrigger::WPAD_Stick(u8 right, int axis)
bool GuiTrigger::Left() bool GuiTrigger::Left()
{ {
u32 wiibtn = WPAD_BUTTON_LEFT; u32 wiibtn = WPAD_BUTTON_LEFT;
if(wpad.exp.type == WPAD_EXP_CLASSIC) if(wpad.exp.type == WPAD_EXP_CLASSIC || (wupcdata.btns_d | wupcdata.btns_h) > 0)
wiibtn |= WPAD_CLASSIC_BUTTON_LEFT; wiibtn |= WPAD_CLASSIC_BUTTON_LEFT;
if ( ((wpad.btns_d | wpad.btns_h) & wiibtn) if( ((wpad.btns_d | wpad.btns_h) & wiibtn)
|| ((wupcdata.btns_d | wupcdata.btns_h) & wiibtn)
|| ((pad.btns_d | pad.btns_h) & PAD_BUTTON_LEFT)) || ((pad.btns_d | pad.btns_h) & PAD_BUTTON_LEFT))
{ {
if ((wpad.btns_d & wiibtn) || (pad.btns_d & PAD_BUTTON_LEFT)) if( (wpad.btns_d & wiibtn)
|| (wupcdata.btns_d & wiibtn)
|| (pad.btns_d & PAD_BUTTON_LEFT))
{ {
scrollDelay = SCROLL_INITIAL_DELAY; // reset scroll delay. scrollDelay = SCROLL_INITIAL_DELAY; // reset scroll delay.
return true; return true;
@ -149,13 +156,16 @@ bool GuiTrigger::Left()
bool GuiTrigger::Right() bool GuiTrigger::Right()
{ {
u32 wiibtn = WPAD_BUTTON_RIGHT; u32 wiibtn = WPAD_BUTTON_RIGHT;
if(wpad.exp.type == WPAD_EXP_CLASSIC) if(wpad.exp.type == WPAD_EXP_CLASSIC || (wupcdata.btns_d | wupcdata.btns_h))
wiibtn |= WPAD_CLASSIC_BUTTON_RIGHT; wiibtn |= WPAD_CLASSIC_BUTTON_RIGHT;
if ( ((wpad.btns_d | wpad.btns_h) & wiibtn) if( ((wpad.btns_d | wpad.btns_h) & wiibtn)
|| ((pad.btns_d | pad.btns_h) & PAD_BUTTON_RIGHT)) || ((pad.btns_d | pad.btns_h) & PAD_BUTTON_RIGHT)
|| ((wupcdata.btns_d | wupcdata.btns_h) & wiibtn))
{ {
if ((wpad.btns_d & wiibtn) || (pad.btns_d & PAD_BUTTON_RIGHT)) if( (wpad.btns_d & wiibtn)
|| (pad.btns_d & PAD_BUTTON_RIGHT)
|| (wupcdata.btns_d & wiibtn))
{ {
scrollDelay = SCROLL_INITIAL_DELAY; // reset scroll delay. scrollDelay = SCROLL_INITIAL_DELAY; // reset scroll delay.
return true; return true;
@ -172,13 +182,16 @@ bool GuiTrigger::Right()
bool GuiTrigger::Up() bool GuiTrigger::Up()
{ {
u32 wiibtn = WPAD_BUTTON_UP; u32 wiibtn = WPAD_BUTTON_UP;
if(wpad.exp.type == WPAD_EXP_CLASSIC) if(wpad.exp.type == WPAD_EXP_CLASSIC || (wupcdata.btns_d | wupcdata.btns_h))
wiibtn |= WPAD_CLASSIC_BUTTON_UP; wiibtn |= WPAD_CLASSIC_BUTTON_UP;
if ( ((wpad.btns_d | wpad.btns_h) & wiibtn) if( ((wpad.btns_d | wpad.btns_h) & wiibtn)
|| ((pad.btns_d | pad.btns_h) & PAD_BUTTON_UP)) || ((pad.btns_d | pad.btns_h) & PAD_BUTTON_UP)
|| ((wupcdata.btns_d | wupcdata.btns_h) & wiibtn))
{ {
if ((wpad.btns_d & wiibtn) || (pad.btns_d & PAD_BUTTON_UP)) if( (wpad.btns_d & wiibtn)
|| (wupcdata.btns_d & wiibtn)
|| (pad.btns_d & PAD_BUTTON_UP))
{ {
scrollDelay = SCROLL_INITIAL_DELAY; // reset scroll delay. scrollDelay = SCROLL_INITIAL_DELAY; // reset scroll delay.
return true; return true;
@ -195,13 +208,16 @@ bool GuiTrigger::Up()
bool GuiTrigger::Down() bool GuiTrigger::Down()
{ {
u32 wiibtn = WPAD_BUTTON_DOWN; u32 wiibtn = WPAD_BUTTON_DOWN;
if(wpad.exp.type == WPAD_EXP_CLASSIC) if(wpad.exp.type == WPAD_EXP_CLASSIC || (wupcdata.btns_d | wupcdata.btns_h))
wiibtn |= WPAD_CLASSIC_BUTTON_DOWN; wiibtn |= WPAD_CLASSIC_BUTTON_DOWN;
if ( ((wpad.btns_d | wpad.btns_h) & wiibtn) if( ((wpad.btns_d | wpad.btns_h) & wiibtn)
|| ((pad.btns_d | pad.btns_h) & PAD_BUTTON_DOWN)) || ((pad.btns_d | pad.btns_h) & PAD_BUTTON_DOWN)
|| ((wupcdata.btns_d | wupcdata.btns_h) & wiibtn))
{ {
if ((wpad.btns_d & wiibtn) || (pad.btns_d & PAD_BUTTON_DOWN)) if( (wpad.btns_d & wiibtn)
|| (pad.btns_d & PAD_BUTTON_DOWN)
|| (wupcdata.btns_d & wiibtn))
{ {
scrollDelay = SCROLL_INITIAL_DELAY; // reset scroll delay. scrollDelay = SCROLL_INITIAL_DELAY; // reset scroll delay.
return true; return true;

View File

@ -588,10 +588,10 @@ const char *nintendontBuildDate(const char *NIN_loader_path)
if((*(u32*)(buffer+i+2)) == 'nten' && (*(u32*)(buffer+i+6)) == 'dont' && (*(u32*)(buffer+i+11)) == 'Load') if((*(u32*)(buffer+i+2)) == 'nten' && (*(u32*)(buffer+i+6)) == 'dont' && (*(u32*)(buffer+i+11)) == 'Load')
{ {
// Write buffer in NINheader // Write buffer in NINheader
char NINHeader[61]; char NINHeader[100];
for(int j = 0 ; j < 60 ; j++) for(int j = 0 ; j < 99 ; j++)
NINHeader[j] = *(u8*)(buffer+i+j) == 0 ? ' ' : *(u8*)(buffer+i+j); // replace \0 with a space. NINHeader[j] = *(u8*)(buffer+i+j) == 0 ? ' ' : *(u8*)(buffer+i+j); // replace \0 with a space.
NINHeader[60] = '\0'; NINHeader[99] = '\0';
// Search month string start position in header // Search month string start position in header
char *dateStart = NULL; char *dateStart = NULL;
@ -608,7 +608,7 @@ const char *nintendontBuildDate(const char *NIN_loader_path)
dateStart[20] = '\0'; dateStart[20] = '\0';
snprintf(NINBuildDate, sizeof(NINBuildDate), "%.20s", dateStart); snprintf(NINBuildDate, sizeof(NINBuildDate), "%.20s", dateStart);
gprintf("Nintendont Build date : %s \n", dateStart); gprintf("Nintendont Build date : %.20s \n", dateStart);
found = true; found = true;
break; break;

View File

@ -53,6 +53,7 @@ enum ninconfig
NIN_CFG_LOG = (1<<12), // v1.109 NIN_CFG_LOG = (1<<12), // v1.109
NIN_CFG_MC_MULTI = (1<<13), // v1.135 NIN_CFG_MC_MULTI = (1<<13), // v1.135
NIN_CFG_NATIVE_SI = (1<<14), // v2.189 NIN_CFG_NATIVE_SI = (1<<14), // v2.189
NIN_CFG_WIIU_WIDE = (1<<15), //v2.258
}; };
enum ninvideomode enum ninvideomode

View File

@ -4,6 +4,7 @@
#include "video.h" #include "video.h"
#include "audio.h" #include "audio.h"
#include "input.h" #include "input.h"
#include "sicksaxis-wrapper.h"
#include "themes/CTheme.h" #include "themes/CTheme.h"
#include "gecko.h" #include "gecko.h"
#include "Controls/DeviceHandler.hpp" #include "Controls/DeviceHandler.hpp"
@ -277,6 +278,8 @@ int StartUpProcess::Execute()
// Shut down pads // Shut down pads
WPAD_Shutdown(); WPAD_Shutdown();
WUPC_Shutdown();
DS3_Cleanup();
// Loading now the cios setup in the settings // Loading now the cios setup in the settings
IosLoader::LoadAppCios(); IosLoader::LoadAppCios();

View File

@ -1,6 +1,7 @@
/**************************************************************************** /****************************************************************************
* libwiigui Template * libwiigui Template
* Tantric 2009 * Tantric 2009
* Cyan 2015
* *
* input.cpp * input.cpp
* Wii/GameCube controller management * Wii/GameCube controller management
@ -14,12 +15,16 @@
#include <ogcsys.h> #include <ogcsys.h>
#include <unistd.h> #include <unistd.h>
#include <wiiuse/wpad.h> #include <wiiuse/wpad.h>
#include <wupc/wupc.h>
#include <sicksaxis.h>
#include "sicksaxis-wrapper.h"
#include "menu.h" #include "menu.h"
#include "video.h" #include "video.h"
#include "input.h" #include "input.h"
#include "GUI/gui.h" #include "GUI/gui.h"
#include "sys.h" #include "sys.h"
#include "gecko.h"
int rumbleRequest[4] = { 0, 0, 0, 0 }; int rumbleRequest[4] = { 0, 0, 0, 0 };
GuiTrigger userInput[4]; GuiTrigger userInput[4];
@ -32,9 +37,11 @@ static int rumbleCount[4] = { 0, 0, 0, 0 };
***************************************************************************/ ***************************************************************************/
void UpdatePads() void UpdatePads()
{ {
WUPC_UpdateButtonStats();
WPAD_ScanPads(); WPAD_ScanPads();
PAD_ScanPads(); PAD_ScanPads();
DS3_ScanPads();
for (int i = 3; i >= 0; i--) for (int i = 3; i >= 0; i--)
{ {
memcpy(&userInput[i].wpad, WPAD_Data(i), sizeof(WPADData)); memcpy(&userInput[i].wpad, WPAD_Data(i), sizeof(WPADData));
@ -48,7 +55,38 @@ void UpdatePads()
userInput[i].pad.substickY = PAD_SubStickY(i); userInput[i].pad.substickY = PAD_SubStickY(i);
userInput[i].pad.triggerL = PAD_TriggerL(i); userInput[i].pad.triggerL = PAD_TriggerL(i);
userInput[i].pad.triggerR = PAD_TriggerR(i); userInput[i].pad.triggerR = PAD_TriggerR(i);
// WiiU Pro Controller
userInput[i].wupcdata.btns_d = WUPC_ButtonsDown(i);
userInput[i].wupcdata.btns_u = WUPC_ButtonsUp(i);
userInput[i].wupcdata.btns_h = WUPC_ButtonsHeld(i);
userInput[i].wupcdata.stickX = WUPC_lStickX(i);
userInput[i].wupcdata.stickY = WUPC_lStickY(i);
userInput[i].wupcdata.substickX = WUPC_rStickX(i);
userInput[i].wupcdata.substickY = WUPC_rStickY(i);
// Don't use only held to disconnect, on reconnect the pad sends last held state for a short time.
if((WUPC_ButtonsHeld(i) & WUPC_EXTRA_BUTTON_RSTICK && WUPC_ButtonsDown(i) & WUPC_EXTRA_BUTTON_LSTICK) // R3+L3
||(WUPC_ButtonsHeld(i) & WUPC_EXTRA_BUTTON_LSTICK && WUPC_ButtonsDown(i) & WUPC_EXTRA_BUTTON_RSTICK))
WUPC_Disconnect(i);
// Playstation 3 controller (required IOS58)
if (DS3_Connected() && i==0)
{
// Maps PS3 controller to Classic Controller Exp.
userInput[0].wpad.btns_d |= DS3_ButtonsDown();
userInput[0].wpad.btns_u |= DS3_ButtonsUp();
userInput[0].wpad.btns_h |= DS3_ButtonsHeld();
if(DS3_ButtonsDown() || DS3_ButtonsHeld())
userInput[i].wpad.exp.type = WPAD_EXP_CLASSIC; // Fake the Classic Controller expansion checking even if wiimote/cc not powered
userInput[0].pad.stickX = abs(DS3_StickX()) > 10 ? DS3_StickX() : PAD_StickX(i);
userInput[0].pad.stickY = abs(DS3_StickY()) > 10 ? DS3_StickY() : PAD_StickY(i);
userInput[0].pad.substickX = abs(DS3_SubStickX()) > 10 ? DS3_SubStickX() : PAD_SubStickX(i);
userInput[0].pad.substickY = abs(DS3_SubStickY()) > 10 ? DS3_SubStickY() : PAD_SubStickY(i);
}
if (Settings.rumble == ON) DoRumble(i); if (Settings.rumble == ON) DoRumble(i);
if(userInput[i].wpad.exp.type == WPAD_EXP_NUNCHUK) if(userInput[i].wpad.exp.type == WPAD_EXP_NUNCHUK)
@ -117,8 +155,10 @@ bool ControlActivityTimeout(void)
***************************************************************************/ ***************************************************************************/
void SetupPads() void SetupPads()
{ {
WUPC_Init();
PAD_Init(); PAD_Init();
WPAD_Init(); WPAD_Init();
DS3_Init();
// read wiimote accelerometer and IR data // read wiimote accelerometer and IR data
WPAD_SetDataFormat(WPAD_CHAN_ALL, WPAD_FMT_BTNS_ACC_IR); WPAD_SetDataFormat(WPAD_CHAN_ALL, WPAD_FMT_BTNS_ACC_IR);
@ -139,6 +179,7 @@ void ShutoffRumble()
{ {
for (int i = 0; i < 4; i++) for (int i = 0; i < 4; i++)
{ {
WUPC_Rumble(i, 0);
WPAD_Rumble(i, 0); WPAD_Rumble(i, 0);
rumbleCount[i] = 0; rumbleCount[i] = 0;
} }
@ -151,6 +192,7 @@ void DoRumble(int i)
{ {
if (rumbleRequest[i] && rumbleCount[i] < 3) if (rumbleRequest[i] && rumbleCount[i] < 3)
{ {
WUPC_Rumble(i, 1);
WPAD_Rumble(i, 1); // rumble on WPAD_Rumble(i, 1); // rumble on
rumbleCount[i]++; rumbleCount[i]++;
} }
@ -158,11 +200,13 @@ void DoRumble(int i)
{ {
rumbleCount[i] = 20; rumbleCount[i] = 20;
rumbleRequest[i] = 0; rumbleRequest[i] = 0;
if(DS3_Connected()) DS3_Rumble();
} }
else else
{ {
if (rumbleCount[i]) rumbleCount[i]--; if (rumbleCount[i]) rumbleCount[i]--;
WPAD_Rumble(i, 0); // rumble off WPAD_Rumble(i, 0); // rumble off
WUPC_Rumble(i, 0);
} }
} }

View File

@ -14,6 +14,7 @@
#define PI 3.14159265f #define PI 3.14159265f
#define PADCAL 50 #define PADCAL 50
#define WUPCCAL 400
extern int rumbleRequest[4]; extern int rumbleRequest[4];

View File

@ -222,6 +222,7 @@ bool CGameSettings::Save()
fprintf(f, "NINUSBHID:%d; ", GameList[i].NINUSBHID); fprintf(f, "NINUSBHID:%d; ", GameList[i].NINUSBHID);
fprintf(f, "NINMaxPads:%d; ", GameList[i].NINMaxPads); fprintf(f, "NINMaxPads:%d; ", GameList[i].NINMaxPads);
fprintf(f, "NINNativeSI:%d; ", GameList[i].NINNativeSI); fprintf(f, "NINNativeSI:%d; ", GameList[i].NINNativeSI);
fprintf(f, "NINWiiUWide:%d; ", GameList[i].NINWiiUWide);
fprintf(f, "NINOSReport:%d; ", GameList[i].NINOSReport); fprintf(f, "NINOSReport:%d; ", GameList[i].NINOSReport);
fprintf(f, "NINLED:%d; ", GameList[i].NINLED); fprintf(f, "NINLED:%d; ", GameList[i].NINLED);
fprintf(f, "NINLog:%d; ", GameList[i].NINLog); fprintf(f, "NINLog:%d; ", GameList[i].NINLog);
@ -430,6 +431,11 @@ bool CGameSettings::SetSetting(GameCFG & game, const char *name, const char *val
game.NINNativeSI = atoi(value); game.NINNativeSI = atoi(value);
return true; return true;
} }
else if(strcmp(name, "NINWiiUWide") == 0)
{
game.NINWiiUWide = atoi(value);
return true;
}
else if(strcmp(name, "NINOSReport") == 0) else if(strcmp(name, "NINOSReport") == 0)
{ {
game.NINOSReport = atoi(value); game.NINOSReport = atoi(value);
@ -632,6 +638,7 @@ void CGameSettings::SetDefault(GameCFG &game)
game.NINUSBHID = INHERIT; game.NINUSBHID = INHERIT;
game.NINMaxPads = INHERIT; game.NINMaxPads = INHERIT;
game.NINNativeSI = INHERIT; game.NINNativeSI = INHERIT;
game.NINWiiUWide = INHERIT;
game.NINOSReport = INHERIT; game.NINOSReport = INHERIT;
game.NINLED = INHERIT; game.NINLED = INHERIT;
game.NINLog = INHERIT; game.NINLog = INHERIT;

View File

@ -46,6 +46,7 @@ typedef struct _GameCFG
short NINUSBHID; short NINUSBHID;
short NINMaxPads; short NINMaxPads;
short NINNativeSI; short NINNativeSI;
short NINWiiUWide;
short NINOSReport; short NINOSReport;
short NINLED; short NINLED;
short NINLog; short NINLog;
@ -100,6 +101,7 @@ typedef struct _GameCFG
this->NINUSBHID = game.NINUSBHID; this->NINUSBHID = game.NINUSBHID;
this->NINMaxPads = game.NINMaxPads; this->NINMaxPads = game.NINMaxPads;
this->NINNativeSI = game.NINNativeSI; this->NINNativeSI = game.NINNativeSI;
this->NINWiiUWide = game.NINWiiUWide;
this->NINOSReport = game.NINOSReport; this->NINOSReport = game.NINOSReport;
this->NINLED = game.NINLED; this->NINLED = game.NINLED;
this->NINLog = game.NINLog; this->NINLog = game.NINLog;

View File

@ -187,9 +187,11 @@ void CSettings::SetDefault()
NINMCEmulation = ON; NINMCEmulation = ON;
NINMCSize = 2; NINMCSize = 2;
NINAutoboot = ON; NINAutoboot = ON;
NINSettings = AUTO;
NINUSBHID = OFF; NINUSBHID = OFF;
NINMaxPads = 1; NINMaxPads = 1;
NINNativeSI = OFF; NINNativeSI = OFF;
NINWiiUWide = widescreen;
NINOSReport = OFF; NINOSReport = OFF;
NINLED = OFF; NINLED = OFF;
NINLog = OFF; NINLog = OFF;
@ -435,9 +437,11 @@ bool CSettings::Save()
fprintf(file, "NINMCEmulation = %d\n", NINMCEmulation); fprintf(file, "NINMCEmulation = %d\n", NINMCEmulation);
fprintf(file, "NINMCSize = %d\n", NINMCSize); fprintf(file, "NINMCSize = %d\n", NINMCSize);
fprintf(file, "NINAutoboot = %d\n", NINAutoboot); fprintf(file, "NINAutoboot = %d\n", NINAutoboot);
fprintf(file, "NINSettings = %d\n", NINSettings);
fprintf(file, "NINUSBHID = %d\n", NINUSBHID); fprintf(file, "NINUSBHID = %d\n", NINUSBHID);
fprintf(file, "NINMaxPads = %d\n", NINMaxPads); fprintf(file, "NINMaxPads = %d\n", NINMaxPads);
fprintf(file, "NINNativeSI = %d\n", NINNativeSI); fprintf(file, "NINNativeSI = %d\n", NINNativeSI);
fprintf(file, "NINWiiUWide = %d\n", NINWiiUWide);
fprintf(file, "NINOSReport = %d\n", NINOSReport); fprintf(file, "NINOSReport = %d\n", NINOSReport);
fprintf(file, "NINLED = %d\n", NINLED); fprintf(file, "NINLED = %d\n", NINLED);
fprintf(file, "NINLog = %d\n", NINLog); fprintf(file, "NINLog = %d\n", NINLog);
@ -931,6 +935,11 @@ bool CSettings::SetSetting(char *name, char *value)
NINAutoboot = atoi(value); NINAutoboot = atoi(value);
return true; return true;
} }
else if (strcmp(name, "NINSettings") == 0)
{
NINSettings = atoi(value);
return true;
}
else if (strcmp(name, "NINUSBHID") == 0) else if (strcmp(name, "NINUSBHID") == 0)
{ {
NINUSBHID = atoi(value); NINUSBHID = atoi(value);
@ -946,6 +955,11 @@ bool CSettings::SetSetting(char *name, char *value)
NINNativeSI = atoi(value); NINNativeSI = atoi(value);
return true; return true;
} }
else if (strcmp(name, "NINWiiUWide") == 0)
{
NINWiiUWide = atoi(value);
return true;
}
else if (strcmp(name, "NINOSReport") == 0) else if (strcmp(name, "NINOSReport") == 0)
{ {
NINOSReport = atoi(value); NINOSReport = atoi(value);

View File

@ -191,9 +191,11 @@ class CSettings
short NINMCEmulation; short NINMCEmulation;
short NINMCSize; short NINMCSize;
short NINAutoboot; short NINAutoboot;
short NINSettings;
short NINUSBHID; short NINUSBHID;
short NINMaxPads; short NINMaxPads;
short NINNativeSI; short NINNativeSI;
short NINWiiUWide;
short NINOSReport; short NINOSReport;
short NINLED; short NINLED;
short NINLog; short NINLog;

View File

@ -21,6 +21,8 @@
* 3. This notice may not be removed or altered from any source * 3. This notice may not be removed or altered from any source
* distribution. * distribution.
***************************************************************************/ ***************************************************************************/
#include <gccore.h>
#include <ogc/machine/processor.h>
#include <unistd.h> #include <unistd.h>
#include "FeatureSettingsMenu.hpp" #include "FeatureSettingsMenu.hpp"
#include "Channels/channels.h" #include "Channels/channels.h"
@ -72,6 +74,7 @@ FeatureSettingsMenu::FeatureSettingsMenu()
Options->SetName(Idx++, "%s", tr( "Dump NAND to EmuNand" )); Options->SetName(Idx++, "%s", tr( "Dump NAND to EmuNand" ));
Options->SetName(Idx++, "%s", tr( "Install WAD to EmuNand" )); Options->SetName(Idx++, "%s", tr( "Install WAD to EmuNand" ));
Options->SetName(Idx++, "%s", tr( "Update Nintendont" )); Options->SetName(Idx++, "%s", tr( "Update Nintendont" ));
Options->SetName(Idx++, "%s", tr( "WiiU Widescreen" ));
OldTitlesOverride = Settings.titlesOverride; OldTitlesOverride = Settings.titlesOverride;
OldCacheTitles = Settings.CacheTitles; OldCacheTitles = Settings.CacheTitles;
@ -151,6 +154,10 @@ void FeatureSettingsMenu::SetOptionValues()
//! Settings: Update Nintendont //! Settings: Update Nintendont
Options->SetValue(Idx++, " "); Options->SetValue(Idx++, " ");
//! Settings: WiiU Widescreen
Options->SetValue(Idx++, " ");
} }
int FeatureSettingsMenu::GetMenuInternal() int FeatureSettingsMenu::GetMenuInternal()
@ -543,6 +550,21 @@ int FeatureSettingsMenu::GetMenuInternal()
} }
} }
// WiiU Aspect switcher (Thanks Tueidj)
else if (ret == ++Idx)
{
if( read32(0xd8006a0) == 0x30000004)
{
write32(0xd8006a0, 0x30000002), mask32(0xd8006a8, 0, 2); // Set 4:3
Settings.widescreen = OFF;
}
else
{
write32(0xd8006a0, 0x30000004), mask32(0xd8006a8, 0, 2); // Set 16:9
Settings.widescreen = ON;
}
}
SetOptionValues(); SetOptionValues();
return MENU_NONE; return MENU_NONE;

View File

@ -102,7 +102,7 @@ static const char * NINMCText[] =
{ {
trNOOP( "OFF" ), trNOOP( "OFF" ),
trNOOP( "Individual" ), trNOOP( "Individual" ),
trNOOP( "ON" ), trNOOP( "ON (Multi)" ),
}; };
static int currentGCmode = 0; static int currentGCmode = 0;
@ -196,6 +196,7 @@ void GCGameLoadSM::SetOptionNames()
Options->SetName(Idx++, "%s", tr( "USB-HID Controller" )); Options->SetName(Idx++, "%s", tr( "USB-HID Controller" ));
Options->SetName(Idx++, "%s", tr( "GameCube Controller" )); Options->SetName(Idx++, "%s", tr( "GameCube Controller" ));
Options->SetName(Idx++, "%s", tr( "Native Controller" )); Options->SetName(Idx++, "%s", tr( "Native Controller" ));
Options->SetName(Idx++, "%s", tr( "WiiU Widescreen" ));
Options->SetName(Idx++, "%s", tr( "LED Activity" )); Options->SetName(Idx++, "%s", tr( "LED Activity" ));
Options->SetName(Idx++, "%s", tr( "Debug" )); Options->SetName(Idx++, "%s", tr( "Debug" ));
Options->SetName(Idx++, "%s", tr( "OSReport" )); Options->SetName(Idx++, "%s", tr( "OSReport" ));
@ -388,6 +389,12 @@ void GCGameLoadSM::SetOptionValues()
Options->SetValue(Idx++, tr("Use global")); Options->SetValue(Idx++, tr("Use global"));
else else
Options->SetValue(Idx++, "%s", tr(OnOffText[GameConfig.NINNativeSI])); Options->SetValue(Idx++, "%s", tr(OnOffText[GameConfig.NINNativeSI]));
//! Settings: WiiU Widescreen
if(GameConfig.NINWiiUWide == INHERIT)
Options->SetValue(Idx++, tr("Use global"));
else
Options->SetValue(Idx++, "%s", tr(OnOffText[GameConfig.NINWiiUWide]));
//! Settings: NIN LED Activity //! Settings: NIN LED Activity
if(GameConfig.NINLED == INHERIT) if(GameConfig.NINLED == INHERIT)
@ -682,6 +689,12 @@ int GCGameLoadSM::GetMenuInternal()
{ {
if (++GameConfig.NINNativeSI >= MAX_ON_OFF) GameConfig.NINNativeSI = INHERIT; if (++GameConfig.NINNativeSI >= MAX_ON_OFF) GameConfig.NINNativeSI = INHERIT;
} }
//! Settings: WiiU Widescreen
else if (currentGCmode == GC_MODE_NINTENDONT && ret == ++Idx)
{
if (++GameConfig.NINWiiUWide >= MAX_ON_OFF) GameConfig.NINWiiUWide = INHERIT;
}
//! Settings: NIN LED Activity //! Settings: NIN LED Activity
else if (currentGCmode == GC_MODE_NINTENDONT && ret == ++Idx) else if (currentGCmode == GC_MODE_NINTENDONT && ret == ++Idx)

View File

@ -167,7 +167,14 @@ static const char * NINMCText[] =
{ {
trNOOP( "OFF" ), trNOOP( "OFF" ),
trNOOP( "Individual" ), trNOOP( "Individual" ),
trNOOP( "ON" ), trNOOP( "ON (Multi)" ),
};
static const char * NINCfgText[] =
{
trNOOP( "Delete" ),
trNOOP( "Create" ),
trNOOP( "No change" ),
}; };
static const char * PrivServText[] = static const char * PrivServText[] =
@ -219,12 +226,14 @@ LoaderSettings::LoaderSettings()
Options->SetName(Idx++, "%s", tr( "Japanese Patch" )); Options->SetName(Idx++, "%s", tr( "Japanese Patch" ));
Options->SetName(Idx++, "%s", tr( "--== Nintendont" )); Options->SetName(Idx++, "%s", tr( "--== Nintendont" ));
Options->SetName(Idx++, "%s", tr( "Auto Boot" )); Options->SetName(Idx++, "%s", tr( "Auto Boot" ));
Options->SetName(Idx++, "%s", tr( "Settings File" ));
Options->SetName(Idx++, "%s", tr( "Video Deflicker" )); Options->SetName(Idx++, "%s", tr( "Video Deflicker" ));
Options->SetName(Idx++, "%s", tr( "Memory Card Emulation" )); Options->SetName(Idx++, "%s", tr( "Memory Card Emulation" ));
Options->SetName(Idx++, "%s", tr( "Memory Card Blocks Size" )); Options->SetName(Idx++, "%s", tr( "Memory Card Blocks Size" ));
Options->SetName(Idx++, "%s", tr( "USB-HID Controller" )); Options->SetName(Idx++, "%s", tr( "USB-HID Controller" ));
Options->SetName(Idx++, "%s", tr( "GameCube Controller" )); Options->SetName(Idx++, "%s", tr( "GameCube Controller" ));
Options->SetName(Idx++, "%s", tr( "Native Controller" )); Options->SetName(Idx++, "%s", tr( "Native Controller" ));
Options->SetName(Idx++, "%s", tr( "WiiU Widescreen" ));
Options->SetName(Idx++, "%s", tr( "LED Activity" )); Options->SetName(Idx++, "%s", tr( "LED Activity" ));
Options->SetName(Idx++, "%s", tr( "OSReport" )); Options->SetName(Idx++, "%s", tr( "OSReport" ));
Options->SetName(Idx++, "%s", tr( "Log to file" )); Options->SetName(Idx++, "%s", tr( "Log to file" ));
@ -398,6 +407,9 @@ void LoaderSettings::SetOptionValues()
//! Settings: TITLE - NIN Auto Boot //! Settings: TITLE - NIN Auto Boot
Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINAutoboot])); Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINAutoboot]));
//! Settings: TITLE - NIN Nincfg.bin file
Options->SetValue(Idx++, "%s", tr(NINCfgText[Settings.NINSettings]));
//! Settings: TITLE - NIN Video Deflicker //! Settings: TITLE - NIN Video Deflicker
Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINDeflicker])); Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINDeflicker]));
@ -416,6 +428,9 @@ void LoaderSettings::SetOptionValues()
//! Settings: TITLE - NIN Native Controller //! Settings: TITLE - NIN Native Controller
Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINNativeSI])); Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINNativeSI]));
//! Settings: TITLE - WiiU Widescreen
Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINWiiUWide]));
//! Settings: TITLE - NIN LED Activity //! Settings: TITLE - NIN LED Activity
Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINLED])); Options->SetValue(Idx++, "%s", tr(OnOffText[Settings.NINLED]));
@ -736,6 +751,12 @@ int LoaderSettings::GetMenuInternal()
if (++Settings.NINAutoboot >= MAX_ON_OFF) Settings.NINAutoboot = 0; if (++Settings.NINAutoboot >= MAX_ON_OFF) Settings.NINAutoboot = 0;
} }
//! Settings: NIN Nincfg.bin file
else if (ret == ++Idx)
{
if (++Settings.NINSettings > AUTO) Settings.NINSettings = 0;
}
//! Settings: NIN Video Deflicker //! Settings: NIN Video Deflicker
else if (ret == ++Idx) else if (ret == ++Idx)
{ {
@ -774,6 +795,12 @@ int LoaderSettings::GetMenuInternal()
if (++Settings.NINNativeSI >= MAX_ON_OFF) Settings.NINNativeSI = 0; if (++Settings.NINNativeSI >= MAX_ON_OFF) Settings.NINNativeSI = 0;
} }
//! Settings: WiiU Widescreen
else if (ret == ++Idx)
{
if (++Settings.NINWiiUWide >= MAX_ON_OFF) Settings.NINWiiUWide = 0;
}
//! Settings: NIN LED Activity //! Settings: NIN LED Activity
else if (ret == ++Idx) else if (ret == ++Idx)
{ {

135
source/sicksaxis-wrapper.c Normal file
View File

@ -0,0 +1,135 @@
/*
// A simple wrapper for libsicksaxis, to make it resemble WPAD/PAD more closely.
// Written by daxtsu/thedax. I'm releasing this code into the public domain, so do whatever you want with it.
//
// 2015-01 Cyan
// Added Buttons state Up and Held.
//
*/
#include <sicksaxis.h>
#include "sicksaxis-wrapper.h"
static DS3 first;
static bool psPressed = false;
static unsigned int ButtonsUp;
static unsigned int ButtonsDown;
static unsigned int ButtonsHeld;
bool DS3_Init()
{
USB_Initialize();
if (ss_init() < 0)
{
return false;
}
ss_initialize(&first);
return true;
}
void DS3_Rumble()
{
if (first.connected && psPressed)
{
ss_set_rumble(&first, 2, 255, 2, 255);
}
}
void DS3_Cleanup()
{
psPressed = false;
ss_close(&first);
USB_Deinitialize();
}
unsigned int DS3_ButtonsDown()
{
if (!ss_is_connected(&first) || !psPressed)
return 0;
DS3 *controller;
controller = &first;
unsigned int pressed = 0;
pressed |= controller->pad.buttons.PS ? DS3_BUTTON_PS : 0;
pressed |= controller->pad.buttons.start ? DS3_BUTTON_START : 0;
pressed |= controller->pad.buttons.select ? DS3_BUTTON_SELECT : 0;
pressed |= controller->pad.buttons.triangle ? DS3_BUTTON_TRIANGLE : 0;
pressed |= controller->pad.buttons.circle ? DS3_BUTTON_CIRCLE : 0;
pressed |= controller->pad.buttons.cross ? DS3_BUTTON_CROSS : 0;
pressed |= controller->pad.buttons.square ? DS3_BUTTON_SQUARE : 0;
pressed |= controller->pad.buttons.up ? DS3_BUTTON_UP : 0;
pressed |= controller->pad.buttons.right ? DS3_BUTTON_RIGHT : 0;
pressed |= controller->pad.buttons.down ? DS3_BUTTON_DOWN : 0;
pressed |= controller->pad.buttons.left ? DS3_BUTTON_LEFT : 0;
pressed |= controller->pad.buttons.L1 ? DS3_BUTTON_L1 : 0;
pressed |= controller->pad.buttons.L2 ? DS3_BUTTON_L2 : 0;
// pressed |= controller->pad.buttons.L3 ? DS3_BUTTON_L3 : 0;
pressed |= controller->pad.buttons.R1 ? DS3_BUTTON_R1 : 0;
pressed |= controller->pad.buttons.R2 ? DS3_BUTTON_R2 : 0;
// pressed |= controller->pad.buttons.R3 ? DS3_BUTTON_R3 : 0;
ButtonsUp = ButtonsHeld & ~pressed;
ButtonsDown = ~ButtonsHeld & pressed;
ButtonsHeld = pressed;
return ButtonsDown;
}
unsigned int DS3_ButtonsHeld()
{
return ButtonsHeld;
}
unsigned int DS3_ButtonsUp()
{
return ButtonsUp;
}
bool DS3_Connected()
{
return first.connected > 0 && psPressed;
}
void DS3_ScanPads()
{
if (!ss_is_connected(&first))
{
psPressed = false;
ss_initialize(&first);
if (ss_open(&first) > 0)
{
ss_start_reading(&first);
ss_set_led(&first, 0);
}
}
else if (first.pad.buttons.PS && !psPressed)
{
psPressed = true;
ss_set_led(&first, 1);
}
}
int DS3_StickX()
{
return psPressed? first.pad.left_analog.x - 128 : 0;
}
int DS3_SubStickX()
{
return psPressed? first.pad.right_analog.x - 128 : 0;
}
int DS3_StickY()
{
return psPressed? 127 - first.pad.left_analog.y : 0;
}
int DS3_SubStickY()
{
return psPressed? 127 - first.pad.right_analog.y : 0;
}

View File

@ -0,0 +1,74 @@
// A simple wrapper for libsicksaxis, to make it resemble WPAD/PAD more closely.
// Written by daxtsu/thedax. I'm releasing this code into the public domain, so do whatever you want with it.
#ifndef _DS3WRAPPER_H_
#define _DS3WRAPPER_H_
#include <gctypes.h>
#include <wiiuse/wpad.h>
struct ss_device;
enum
{
// DS3_BUTTON_PS = 1,
// DS3_BUTTON_START = 2,
// DS3_BUTTON_SELECT = 4,
// DS3_BUTTON_TRIANGLE = 8,
// DS3_BUTTON_CIRCLE = 16,
// DS3_BUTTON_CROSS = 32,
// DS3_BUTTON_SQUARE = 64,
// DS3_BUTTON_UP = 128,
// DS3_BUTTON_RIGHT = 256,
// DS3_BUTTON_DOWN = 512,
// DS3_BUTTON_LEFT = 1024,
// DS3_BUTTON_L1 = 2048,
// DS3_BUTTON_L2 = 4096,
// DS3_BUTTON_L3 = 8192,
// DS3_BUTTON_R1 = 16384,
// DS3_BUTTON_R2 = 32768,
// DS3_BUTTON_R3 = 65536,
// Classic Controller mapping
DS3_BUTTON_PS = WPAD_CLASSIC_BUTTON_HOME,
DS3_BUTTON_START = WPAD_CLASSIC_BUTTON_PLUS,
DS3_BUTTON_SELECT = WPAD_CLASSIC_BUTTON_MINUS,
DS3_BUTTON_TRIANGLE = WPAD_CLASSIC_BUTTON_X,
DS3_BUTTON_CIRCLE = WPAD_CLASSIC_BUTTON_A,
DS3_BUTTON_CROSS = WPAD_CLASSIC_BUTTON_B,
DS3_BUTTON_SQUARE = WPAD_CLASSIC_BUTTON_Y,
DS3_BUTTON_UP = WPAD_CLASSIC_BUTTON_UP,
DS3_BUTTON_RIGHT = WPAD_CLASSIC_BUTTON_RIGHT,
DS3_BUTTON_DOWN = WPAD_CLASSIC_BUTTON_DOWN,
DS3_BUTTON_LEFT = WPAD_CLASSIC_BUTTON_LEFT,
DS3_BUTTON_L1 = WPAD_CLASSIC_BUTTON_FULL_L,
DS3_BUTTON_L2 = WPAD_CLASSIC_BUTTON_ZL,
// DS3_BUTTON_L3 =
DS3_BUTTON_R1 = WPAD_CLASSIC_BUTTON_FULL_R,
DS3_BUTTON_R2 = WPAD_CLASSIC_BUTTON_ZR,
// DS3_BUTTON_R3 =
};
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
typedef struct ss_device DS3;
bool DS3_Init();
void DS3_Rumble();
void DS3_Cleanup();
u32 DS3_ButtonsDown();
u32 DS3_ButtonsHeld();
u32 DS3_ButtonsUp();
bool DS3_Connected();
void DS3_ScanPads();
int DS3_StickX();
int DS3_SubStickX();
int DS3_StickY();
int DS3_SubStickY();
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif

View File

@ -27,6 +27,7 @@
#include "video.h" #include "video.h"
#include "gecko.h" #include "gecko.h"
#include "wad/nandtitle.h" #include "wad/nandtitle.h"
#include "sicksaxis-wrapper.h"
extern "C" extern "C"
{ {
@ -110,6 +111,7 @@ void AppCleanUp(void)
ResourceManager::DestroyInstance(); ResourceManager::DestroyInstance();
WPAD_Shutdown(); WPAD_Shutdown();
DS3_Cleanup();
ISFS_Deinitialize(); ISFS_Deinitialize();
} }
@ -118,6 +120,7 @@ void ExitApp(void)
AppCleanUp(); AppCleanUp();
WBFS_CloseAll(); WBFS_CloseAll();
DeviceHandler::DestroyInstance(); DeviceHandler::DestroyInstance();
DS3_Cleanup();
USB_Deinitialize(); USB_Deinitialize();
if(Settings.PlaylogUpdate) if(Settings.PlaylogUpdate)
Playlog_Delete(); // Don't show USB Loader GX in the Wii message board Playlog_Delete(); // Don't show USB Loader GX in the Wii message board

View File

@ -19,7 +19,7 @@
/** /**
* Version information for Libruntimeiospatch. * Version information for Libruntimeiospatch.
*/ */
#define LIB_RUNTIMEIOSPATCH_VERSION "1.5.2" #define LIB_RUNTIMEIOSPATCH_VERSION "1.5.1"
//============================================================================== //==============================================================================
// HW_RVL header // HW_RVL header

View File

@ -925,7 +925,13 @@ int GameBooter::BootDevolution(struct discHdr *gameHdr)
int GameBooter::BootNintendont(struct discHdr *gameHdr) int GameBooter::BootNintendont(struct discHdr *gameHdr)
{ {
const char *RealPath = GCGames::Instance()->GetPath((const char *) gameHdr->id);
char RealPath[100];
if(gameHdr->type == TYPE_GAME_GC_DISC)
snprintf(RealPath, sizeof(RealPath), "di");
else
snprintf(RealPath, sizeof(RealPath), "%s", GCGames::Instance()->GetPath((const char *) gameHdr->id));
const char *LoaderName = "Nintendont"; const char *LoaderName = "Nintendont";
GameCFG * game_cfg = GameSettings.GetGameCFG(gameHdr->id); GameCFG * game_cfg = GameSettings.GetGameCFG(gameHdr->id);
@ -938,20 +944,17 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
u8 ninMCEmulationChoice = game_cfg->NINMCEmulation == INHERIT ? Settings.NINMCEmulation : game_cfg->NINMCEmulation; u8 ninMCEmulationChoice = game_cfg->NINMCEmulation == INHERIT ? Settings.NINMCEmulation : game_cfg->NINMCEmulation;
u8 ninMCSizeChoice = game_cfg->NINMCSize == INHERIT ? Settings.NINMCSize : game_cfg->NINMCSize; u8 ninMCSizeChoice = game_cfg->NINMCSize == INHERIT ? Settings.NINMCSize : game_cfg->NINMCSize;
u8 ninAutobootChoice = Settings.NINAutoboot; u8 ninAutobootChoice = Settings.NINAutoboot;
u8 ninSettingsChoice = Settings.NINSettings;
u8 ninUSBHIDChoice = game_cfg->NINUSBHID == INHERIT ? Settings.NINUSBHID : game_cfg->NINUSBHID; u8 ninUSBHIDChoice = game_cfg->NINUSBHID == INHERIT ? Settings.NINUSBHID : game_cfg->NINUSBHID;
u8 ninMaxPadsChoice = game_cfg->NINMaxPads == INHERIT ? Settings.NINMaxPads : game_cfg->NINMaxPads; u8 ninMaxPadsChoice = game_cfg->NINMaxPads == INHERIT ? Settings.NINMaxPads : game_cfg->NINMaxPads;
u8 ninNativeSIChoice = game_cfg->NINNativeSI == INHERIT ? Settings.NINNativeSI : game_cfg->NINNativeSI; u8 ninNativeSIChoice = game_cfg->NINNativeSI == INHERIT ? Settings.NINNativeSI : game_cfg->NINNativeSI;
u8 ninWiiUWideChoice = game_cfg->NINWiiUWide == INHERIT ? Settings.NINWiiUWide : game_cfg->NINWiiUWide;
u8 ninLEDChoice = game_cfg->NINLED == INHERIT ? Settings.NINLED : game_cfg->NINLED; u8 ninLEDChoice = game_cfg->NINLED == INHERIT ? Settings.NINLED : game_cfg->NINLED;
u8 ninDebugChoice = game_cfg->DMLDebug == INHERIT ? Settings.DMLDebug : game_cfg->DMLDebug; u8 ninDebugChoice = game_cfg->DMLDebug == INHERIT ? Settings.DMLDebug : game_cfg->DMLDebug;
u8 ninOSReportChoice = game_cfg->NINOSReport == INHERIT ? Settings.NINOSReport : game_cfg->NINOSReport; u8 ninOSReportChoice = game_cfg->NINOSReport == INHERIT ? Settings.NINOSReport : game_cfg->NINOSReport;
u8 ninLogChoice = game_cfg->NINLog == INHERIT ? Settings.NINLog : game_cfg->NINLog; u8 ninLogChoice = game_cfg->NINLog == INHERIT ? Settings.NINLog : game_cfg->NINLog;
const char *ninLoaderPath = game_cfg->NINLoaderPath.size() == 0 ? Settings.NINLoaderPath : game_cfg->NINLoaderPath.c_str(); const char *ninLoaderPath = game_cfg->NINLoaderPath.size() == 0 ? Settings.NINLoaderPath : game_cfg->NINLoaderPath.c_str();
if(gameHdr->type == TYPE_GAME_GC_DISC)
{
WindowPrompt(tr("Error:"), tr("To run GameCube games from Disc you need to set the GameCube mode to MIOS in the game settings."), tr("OK"));
return 0;
}
if(!CheckAHBPROT()) if(!CheckAHBPROT())
{ {
@ -961,7 +964,7 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
// Check USB device // Check USB device
if(strncmp(RealPath, "usb", 3) == 0) if(gameHdr->type != TYPE_GAME_GC_DISC && strncmp(RealPath, "usb", 3) == 0)
{ {
// Check Main GameCube Path location // Check Main GameCube Path location
if(strncmp(DeviceHandler::PathToFSName(Settings.GameCubePath), "FAT", 3) != 0) if(strncmp(DeviceHandler::PathToFSName(Settings.GameCubePath), "FAT", 3) != 0)
@ -1042,7 +1045,7 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
strptime("Mar 29 2014 10:49:31", "%b %d %Y %H:%M:%S", &time); // r39 strptime("Mar 29 2014 10:49:31", "%b %d %Y %H:%M:%S", &time); // r39
if(NINLoaderTime < mktime(&time) && strncmp(RealPath, "usb", 3) == 0) if(NINLoaderTime < mktime(&time) && strncmp(RealPath, "usb", 3) == 0)
{ {
WindowPrompt(tr("Error:"), tr("This Nintendont version does not support games on USB."), tr("Ok")); if(WindowPrompt(tr("Warning:"), tr("This Nintendont version does not support games on USB."), tr("Continue"), tr("Cancel")) == 0)
return 0; return 0;
} }
} }
@ -1068,6 +1071,15 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
} }
} }
// v2.259 - disc support
strptime("Dec 23 2014 17:28:56", "%b %d %Y %H:%M:%S", &time); // v1.259
if(gameHdr->type == TYPE_GAME_GC_DISC && NINLoaderTime < mktime(&time))
{
WindowPrompt(tr("Error:"), tr("To run GameCube games from Disc you need to set the GameCube mode to MIOS in the game settings."), tr("OK"));
return 0;
}
// checks argsboot // checks argsboot
if(ninAutobootChoice) if(ninAutobootChoice)
{ {
@ -1095,6 +1107,25 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
return 0; return 0;
} }
// Set used device when launching game from disc
if(gameHdr->type == TYPE_GAME_GC_DISC && ninMCEmulationChoice)
{
if(Settings.GameCubeSource >= GC_SOURCE_AUTO && strncmp(Settings.GameCubePath, "usb", 3) == 0)
{
if(WindowPrompt("", tr("Where do you want MCEmu to be located?"), tr("SD"), tr("USB")) == 1)
snprintf(RealPath, sizeof(RealPath), "%s:/", DeviceHandler::GetDevicePrefix(Settings.GameCubeSDPath));
else
snprintf(RealPath, sizeof(RealPath), "%s:/", DeviceHandler::GetDevicePrefix(Settings.GameCubePath));
}
else if(Settings.GameCubeSource == GC_SOURCE_MAIN)
{
snprintf(RealPath, sizeof(RealPath), "%s:/", DeviceHandler::GetDevicePrefix(Settings.GameCubePath));
}
else
snprintf(RealPath, sizeof(RealPath), "%s:/", DeviceHandler::GetDevicePrefix(Settings.GameCubeSDPath));
}
// Check Ocarina and cheat file location. the .gct file need to be located on the same partition than the game. // Check Ocarina and cheat file location. the .gct file need to be located on the same partition than the game.
if(ocarinaChoice && strcmp(DeviceHandler::GetDevicePrefix(RealPath), DeviceHandler::GetDevicePrefix(Settings.Cheatcodespath)) != 0) if(ocarinaChoice && strcmp(DeviceHandler::GetDevicePrefix(RealPath), DeviceHandler::GetDevicePrefix(Settings.Cheatcodespath)) != 0)
{ {
@ -1197,7 +1228,7 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
// Check if game has multi Discs // Check if game has multi Discs
bool bootDisc2 = false; bool bootDisc2 = false;
if(gameHdr->disc_no == 0) if(gameHdr->type != TYPE_GAME_GC_DISC && gameHdr->disc_no == 0)
{ {
char disc2Path[255]; char disc2Path[255];
snprintf(disc2Path, sizeof(disc2Path), "%s", RealPath); snprintf(disc2Path, sizeof(disc2Path), "%s", RealPath);
@ -1226,6 +1257,11 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
snprintf(gamePath, sizeof(gamePath), "%s/disc2.iso", gamePath); snprintf(gamePath, sizeof(gamePath), "%s/disc2.iso", gamePath);
} }
if(gameHdr->type == TYPE_GAME_GC_DISC)
{
snprintf(gamePath, sizeof(gamePath), "di");
}
// Nintendont Config file settings // Nintendont Config file settings
NIN_CFG *nin_config = NULL; NIN_CFG *nin_config = NULL;
@ -1295,6 +1331,8 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
nin_config->Config |= NIN_CFG_MC_MULTI; // v1.135+ nin_config->Config |= NIN_CFG_MC_MULTI; // v1.135+
if(ninNativeSIChoice) if(ninNativeSIChoice)
nin_config->Config |= NIN_CFG_NATIVE_SI; // v2.189+ nin_config->Config |= NIN_CFG_NATIVE_SI; // v2.189+
if(ninWiiUWideChoice)
nin_config->Config |= NIN_CFG_WIIU_WIDE; // v2.258+
// Max Pads // Max Pads
nin_config->MaxPads = ninMaxPadsChoice; // NIN_CFG_VERSION 2 r42 nin_config->MaxPads = ninMaxPadsChoice; // NIN_CFG_VERSION 2 r42
@ -1337,8 +1375,8 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
Disc_SetVMode(); Disc_SetVMode();
} }
gprintf("NIN: Active device %s\n", nin_config->Config & NIN_CFG_USB ? "USB" : "SD");
gprintf("NIN: config 0x%08x\n", nin_config->Config); gprintf("NIN: config 0x%08x\n", nin_config->Config);
gprintf("NIN: Video mode 0x%08x\n", nin_config->VideoMode); gprintf("NIN: Video mode 0x%08x\n", nin_config->VideoMode);
// Set game language setting // Set game language setting
@ -1356,37 +1394,13 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
} }
gprintf("NIN: Language 0x%08x \n", nin_config->Language); gprintf("NIN: Language 0x%08x \n", nin_config->Language);
// Game specific settings
// Metal Gear Solid: The Twin Snakes
if(memcmp("GGS", gameHdr->id, 3) == 0 && nin_config->MaxPads < 2 && !IosLoader::isWiiU())
nin_config->MaxPads = 2; // 2 controller ports required
// Delete existing nincfg.bin files // Delete existing nincfg.bin files
RemoveFile("sd:/nincfg.bin"); if(ninSettingsChoice == OFF)
RemoveFile("usb1:/nincfg.bin");
if(NINArgsboot)
{ {
// initialize homebrew and arguments RemoveFile("sd:/nincfg.bin");
u8 *buffer = NULL; RemoveFile("usb1:/nincfg.bin");
u32 filesize = 0;
LoadFileToMem(NIN_loader_path, &buffer, &filesize);
if(!buffer)
{
return 0;
}
FreeHomebrewBuffer();
CopyHomebrewMemory(buffer, 0, filesize);
AddBootArgument(NIN_loader_path);
AddBootArgument((char*)nin_config, sizeof(NIN_CFG));
// Launch Nintendont
return !(BootHomebrewFromMem() < 0);
} }
else else if(ninSettingsChoice == ON || !NINArgsboot)
{ {
// Nintendont Config file path // Nintendont Config file path
char NINCfgPath[17]; char NINCfgPath[17];
@ -1423,6 +1437,29 @@ int GameBooter::BootNintendont(struct discHdr *gameHdr)
} }
gprintf("done\n"); gprintf("done\n");
} }
}
if(NINArgsboot)
{
// initialize homebrew and arguments
u8 *buffer = NULL;
u32 filesize = 0;
LoadFileToMem(NIN_loader_path, &buffer, &filesize);
if(!buffer)
{
return 0;
}
FreeHomebrewBuffer();
CopyHomebrewMemory(buffer, 0, filesize);
AddBootArgument(NIN_loader_path);
AddBootArgument((char*)nin_config, sizeof(NIN_CFG));
// Launch Nintendont
return !(BootHomebrewFromMem() < 0);
}
else
{
// Launch Nintendont // Launch Nintendont
return !(BootHomebrew(NIN_loader_path) < 0); return !(BootHomebrew(NIN_loader_path) < 0);
} }

View File

@ -7,6 +7,7 @@
***************************************************************************/ ***************************************************************************/
#include <gccore.h> #include <gccore.h>
#include <ogc/machine/processor.h>
#include <ogcsys.h> #include <ogcsys.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
@ -112,6 +113,13 @@ static void ResetVideo_Menu()
void InitVideo() void InitVideo()
{ {
VIDEO_Init(); VIDEO_Init();
// If WiiU - Force 16:9 aspect ratio based on WiiU settings
if((*(vu32*)(0xCD8005A0) >> 16 ) == 0xCAFE && Settings.widescreen)
{
write32(0xd8006a0, 0x30000004), mask32(0xd8006a8, 0, 2);
}
vmode = VIDEO_GetPreferredMode(NULL); // get default video mode vmode = VIDEO_GetPreferredMode(NULL); // get default video mode
vmode->viWidth = Settings.widescreen ? 708 : 694; vmode->viWidth = Settings.widescreen ? 708 : 694;

View File

@ -18,6 +18,7 @@ void __Wpad_PowerCallback(s32 chan)
s32 Wpad_Init(void) s32 Wpad_Init(void)
{ {
WUPC_Init();
s32 ret; s32 ret;
/* Initialize Wiimote subsystem */ /* Initialize Wiimote subsystem */
@ -39,6 +40,7 @@ void Wpad_Disconnect(void)
WPAD_Disconnect(cnt); WPAD_Disconnect(cnt);
/* Shutdown Wiimote subsystem */ /* Shutdown Wiimote subsystem */
WUPC_Shutdown();
WPAD_Shutdown(); WPAD_Shutdown();
} }
@ -64,12 +66,13 @@ u32 ButtonsHold(void)
int i; int i;
u32 buttons = 0; u32 buttons = 0;
WUPC_UpdateButtonStats();
WPAD_ScanPads(); WPAD_ScanPads();
PAD_ScanPads(); PAD_ScanPads();
for (i = 3; i >= 0; i--) for (i = 3; i >= 0; i--)
{ {
buttons |= WUPC_ButtonsHeld(i);
buttons |= PAD_ButtonsHeld(i); buttons |= PAD_ButtonsHeld(i);
buttons |= WPAD_ButtonsHeld(i); buttons |= WPAD_ButtonsHeld(i);
} }
@ -80,12 +83,13 @@ u32 ButtonsPressed(void)
{ {
int i; int i;
u32 buttons = 0; u32 buttons = 0;
WUPC_UpdateButtonStats();
WPAD_ScanPads(); WPAD_ScanPads();
PAD_ScanPads(); PAD_ScanPads();
for (i = 3; i >= 0; i--) for (i = 3; i >= 0; i--)
{ {
buttons |= WUPC_ButtonsDown(i);
buttons |= PAD_ButtonsDown(i); buttons |= PAD_ButtonsDown(i);
buttons |= WPAD_ButtonsDown(i); buttons |= WPAD_ButtonsDown(i);
} }

View File

@ -2,6 +2,7 @@
#define _WPAD_H_ #define _WPAD_H_
#include <wiiuse/wpad.h> #include <wiiuse/wpad.h>
#include <wupc/wupc.h>
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"