mirror of
https://github.com/Fledge68/WiiFlow_Lite.git
synced 2024-11-23 19:59:16 +01:00
-fixed wii game covers on wbfs partition, should be white too now by default
-(hopefully) fixed wiimote sync issue (thanks xfede) -added new option to force DML video mode -removed some unused code from early tests ;)
This commit is contained in:
parent
afdd19e591
commit
0d4660f2e0
@ -293,6 +293,7 @@ void CList<dir_discHdr>::GetHeaders(safe_vector<string> pathlist, safe_vector<di
|
||||
}
|
||||
else mbstowcs(tmp.title, tmp.hdr.title, sizeof(tmp.title));
|
||||
|
||||
tmp.hdr.casecolor = 1;
|
||||
Asciify(tmp.title);
|
||||
headerlist.push_back(tmp);
|
||||
}
|
||||
|
@ -75,8 +75,6 @@ int main(int argc, char **argv)
|
||||
|
||||
do
|
||||
{
|
||||
Open_Inputs();
|
||||
|
||||
bool deviceAvailable = false;
|
||||
|
||||
u8 timeout = 0;
|
||||
@ -91,6 +89,8 @@ int main(int argc, char **argv)
|
||||
}
|
||||
if(!deviceAvailable) Sys_Exit();
|
||||
|
||||
Open_Inputs(); // xFede: Initialize WPAD/PAD here, otherwise you could have a sync-delay on startup
|
||||
|
||||
bool dipOK = Disc_Init() >= 0;
|
||||
|
||||
CMenu menu(vid);
|
||||
|
@ -324,6 +324,10 @@ private:
|
||||
u32 m_gameSettingsLblVideo;
|
||||
u32 m_gameSettingsBtnVideoP;
|
||||
u32 m_gameSettingsBtnVideoM;
|
||||
u32 m_gameSettingsLblDMLGameVideo;
|
||||
u32 m_gameSettingsLblDMLVideo;
|
||||
u32 m_gameSettingsBtnDMLVideoP;
|
||||
u32 m_gameSettingsBtnDMLVideoM;
|
||||
u32 m_gameSettingsLblOcarina;
|
||||
u32 m_gameSettingsBtnOcarina;
|
||||
u32 m_gameSettingsLblVipatch;
|
||||
@ -767,6 +771,7 @@ private:
|
||||
static const string _translations[23];
|
||||
static const SOption _languages[11];
|
||||
static const SOption _videoModes[7];
|
||||
static const SOption _DMLvideoModes[3];
|
||||
static const SOption _vidModePatch[4];
|
||||
static const SOption _hooktype[8];
|
||||
static const SOption _exitTo[5];
|
||||
|
@ -32,6 +32,10 @@ void CMenu::_hideGameSettings(bool instant)
|
||||
m_btnMgr.hide(m_gameSettingsLblVideo, instant);
|
||||
m_btnMgr.hide(m_gameSettingsBtnVideoP, instant);
|
||||
m_btnMgr.hide(m_gameSettingsBtnVideoM, instant);
|
||||
m_btnMgr.hide(m_gameSettingsLblDMLGameVideo, instant);
|
||||
m_btnMgr.hide(m_gameSettingsLblDMLVideo, instant);
|
||||
m_btnMgr.hide(m_gameSettingsBtnDMLVideoP, instant);
|
||||
m_btnMgr.hide(m_gameSettingsBtnDMLVideoM, instant);
|
||||
m_btnMgr.hide(m_gameSettingsLblOcarina, instant);
|
||||
m_btnMgr.hide(m_gameSettingsBtnOcarina, instant);
|
||||
m_btnMgr.hide(m_gameSettingsLblCheat, instant);
|
||||
@ -98,6 +102,8 @@ void CMenu::_showGameSettings(void)
|
||||
m_btnMgr.show(m_gameSettingsBtnPageP);
|
||||
m_btnMgr.show(m_gameSettingsBtnBack);
|
||||
m_btnMgr.show(m_gameSettingsLblTitle);
|
||||
if (m_current_view != COVERFLOW_DML)
|
||||
{
|
||||
if (m_gameSettingsPage == 1)
|
||||
{
|
||||
m_btnMgr.show(m_gameSettingsLblCover);
|
||||
@ -115,7 +121,6 @@ void CMenu::_showGameSettings(void)
|
||||
m_btnMgr.show(m_gameSettingsLblVideo);
|
||||
m_btnMgr.show(m_gameSettingsBtnVideoP);
|
||||
m_btnMgr.show(m_gameSettingsBtnVideoM);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -223,6 +228,25 @@ void CMenu::_showGameSettings(void)
|
||||
m_btnMgr.hide(m_gameSettingsBtnIOSP);
|
||||
m_btnMgr.hide(m_gameSettingsBtnIOSM);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
g_numGCfPages = 1;
|
||||
if (m_gameSettingsPage == 1)
|
||||
{
|
||||
m_btnMgr.show(m_gameSettingsLblDMLGameVideo);
|
||||
m_btnMgr.show(m_gameSettingsLblDMLVideo);
|
||||
m_btnMgr.show(m_gameSettingsBtnDMLVideoP);
|
||||
m_btnMgr.show(m_gameSettingsBtnDMLVideoM);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_btnMgr.hide(m_gameSettingsLblDMLGameVideo);
|
||||
m_btnMgr.hide(m_gameSettingsLblDMLVideo);
|
||||
m_btnMgr.hide(m_gameSettingsBtnDMLVideoP);
|
||||
m_btnMgr.hide(m_gameSettingsBtnDMLVideoM);
|
||||
}
|
||||
}
|
||||
|
||||
u32 i = 0;
|
||||
|
||||
@ -283,7 +307,8 @@ void CMenu::_showGameSettings(void)
|
||||
string id(m_cf.getId());
|
||||
int page = m_gameSettingsPage;
|
||||
|
||||
u32 maxpage = 4;
|
||||
u32 maxpage = g_numGCfPages;
|
||||
|
||||
if (m_gameSettingsPage > maxpage)
|
||||
page = m_gameSettingsPage-50;
|
||||
|
||||
@ -293,6 +318,8 @@ void CMenu::_showGameSettings(void)
|
||||
m_btnMgr.setText(m_gameSettingsBtnCountryPatch, _optBoolToString(m_gcfg2.getOptBool(id, "country_patch", 0)));
|
||||
i = min((u32)m_gcfg2.getInt(id, "video_mode", 0), ARRAY_SIZE(CMenu::_videoModes) - 1u);
|
||||
m_btnMgr.setText(m_gameSettingsLblVideo, _t(CMenu::_videoModes[i].id, CMenu::_videoModes[i].text));
|
||||
i = min((u32)m_gcfg2.getInt(id, "dml_video_mode", 0), ARRAY_SIZE(CMenu::_DMLvideoModes) - 1u);
|
||||
m_btnMgr.setText(m_gameSettingsLblDMLVideo, _t(CMenu::_DMLvideoModes[i].id, CMenu::_DMLvideoModes[i].text));
|
||||
i = min((u32)m_gcfg2.getInt(id, "language", 0), ARRAY_SIZE(CMenu::_languages) - 1u);
|
||||
m_btnMgr.setText(m_gameSettingsLblLanguage, _t(CMenu::_languages[i].id, CMenu::_languages[i].text));
|
||||
|
||||
@ -412,6 +439,12 @@ void CMenu::_gameSettings(void)
|
||||
m_gcfg2.setInt(id, "video_mode", (int)loopNum((u32)m_gcfg2.getInt(id, "video_mode", 0) + direction, ARRAY_SIZE(CMenu::_videoModes)));
|
||||
_showGameSettings();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_gameSettingsBtnDMLVideoP) || m_btnMgr.selected(m_gameSettingsBtnDMLVideoM))
|
||||
{
|
||||
s8 direction = m_btnMgr.selected(m_gameSettingsBtnDMLVideoP) ? 1 : -1;
|
||||
m_gcfg2.setInt(id, "dml_video_mode", (int)loopNum((u32)m_gcfg2.getInt(id, "dml_video_mode", 0) + direction, ARRAY_SIZE(CMenu::_DMLvideoModes)));
|
||||
_showGameSettings();
|
||||
}
|
||||
else if (m_btnMgr.selected(m_gameSettingsBtnIOSM) || m_btnMgr.selected(m_gameSettingsBtnIOSP))
|
||||
{
|
||||
if( _installed_cios.size() > 0)
|
||||
@ -539,6 +572,12 @@ void CMenu::_initGameSettingsMenu(CMenu::SThemeData &theme)
|
||||
m_gameSettingsBtnVideoM = _addPicButton(theme, "GAME_SETTINGS/VIDEO_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 330, 310, 56, 56);
|
||||
m_gameSettingsBtnVideoP = _addPicButton(theme, "GAME_SETTINGS/VIDEO_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 544, 310, 56, 56);
|
||||
|
||||
//DML Page 1
|
||||
m_gameSettingsLblDMLGameVideo = _addLabel(theme, "GAME_SETTINGS/DML_VIDEO", theme.lblFont, L"", 40, 130, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_gameSettingsLblDMLVideo = _addLabel(theme, "GAME_SETTINGS/DML_VIDEO_BTN", theme.btnFont, L"", 386, 130, 158, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
m_gameSettingsBtnDMLVideoM = _addPicButton(theme, "GAME_SETTINGS/DML_VIDEO_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 330, 130, 56, 56);
|
||||
m_gameSettingsBtnDMLVideoP = _addPicButton(theme, "GAME_SETTINGS/DML_VIDEO_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 544, 130, 56, 56);
|
||||
|
||||
// Page 2
|
||||
m_gameSettingsLblDebugger = _addLabel(theme, "GAME_SETTINGS/GAME_DEBUGGER", theme.lblFont, L"", 40, 130, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||
m_gameSettingsLblDebuggerV = _addLabel(theme, "GAME_SETTINGS/GAME_DEBUGGER_BTN", theme.btnFont, L"", 386, 130, 158, 56, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||
@ -612,6 +651,10 @@ void CMenu::_initGameSettingsMenu(CMenu::SThemeData &theme)
|
||||
_setHideAnim(m_gameSettingsLblVideo, "GAME_SETTINGS/VIDEO_BTN", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsBtnVideoM, "GAME_SETTINGS/VIDEO_MINUS", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsBtnVideoP, "GAME_SETTINGS/VIDEO_PLUS", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsLblDMLGameVideo, "GAME_SETTINGS/DML_VIDEO", -200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsLblDMLVideo, "GAME_SETTINGS/DML_VIDEO_BTN", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsBtnDMLVideoM, "GAME_SETTINGS/DML_VIDEO_MINUS", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsBtnDMLVideoP, "GAME_SETTINGS/DML_VIDEO_PLUS", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsLblGameLanguage, "GAME_SETTINGS/GAME_LANG", -200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsLblLanguage, "GAME_SETTINGS/GAME_LANG_BTN", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameSettingsBtnLanguageM, "GAME_SETTINGS/GAME_LANG_MINUS", 200, 0, 1.f, 0.f);
|
||||
@ -669,6 +712,7 @@ void CMenu::_textGameSettings(void)
|
||||
m_btnMgr.setText(m_gameSettingsLblGameLanguage, _t("cfgg3", L"Language"));
|
||||
m_btnMgr.setText(m_gameSettingsLblCountryPatch, _t("cfgg4", L"Patch country strings"));
|
||||
m_btnMgr.setText(m_gameSettingsLblOcarina, _t("cfgg5", L"Ocarina"));
|
||||
m_btnMgr.setText(m_gameSettingsLblDMLGameVideo, _t("cfgg6", L"Video mode"));
|
||||
m_btnMgr.setText(m_gameSettingsLblVipatch, _t("cfgg7", L"Vipatch"));
|
||||
m_btnMgr.setText(m_gameSettingsBtnBack, _t("cfgg8", L"Back"));
|
||||
m_btnMgr.setText(m_gameSettingsLblGameIOS, _t("cfgg10", L"IOS"));
|
||||
|
@ -31,12 +31,6 @@
|
||||
|
||||
#include "dml/dml.h"
|
||||
|
||||
#define SEP 0xFF
|
||||
|
||||
/** Base address for video registers. */
|
||||
#define MEM_VIDEO_BASE (0xCC002000)
|
||||
#define IOCTL_DI_DVDLowAudioBufferConfig 0xE4
|
||||
|
||||
using namespace std;
|
||||
|
||||
extern const u8 btngamecfg_png[];
|
||||
@ -106,6 +100,12 @@ const CMenu::SOption CMenu::_videoModes[7] = {
|
||||
{ "vidprog", L"Progressive" }
|
||||
};
|
||||
|
||||
const CMenu::SOption CMenu::_DMLvideoModes[3] = {
|
||||
{ "0", L"Default" },
|
||||
{ "1", L"PAL 576i" },
|
||||
{ "2", L"NTSC 480i" },
|
||||
};
|
||||
|
||||
const CMenu::SOption CMenu::_vidModePatch[4] = {
|
||||
{ "vmpnone", L"None" },
|
||||
{ "vmpnormal", L"Normal" },
|
||||
@ -467,8 +467,8 @@ void CMenu::_game(bool launch)
|
||||
b = m_gcfg1.getBool("ADULTONLY", id, false);
|
||||
m_btnMgr.show(b ? m_gameBtnAdultOn : m_gameBtnAdultOff);
|
||||
m_btnMgr.hide(b ? m_gameBtnAdultOff : m_gameBtnAdultOn);
|
||||
m_btnMgr.show(m_gameBtnSettings);
|
||||
}
|
||||
m_btnMgr.show(m_gameBtnSettings);
|
||||
|
||||
if (m_current_view == COVERFLOW_USB && !m_locked)
|
||||
m_btnMgr.show(m_gameBtnDelete);
|
||||
@ -481,8 +481,8 @@ void CMenu::_game(bool launch)
|
||||
{
|
||||
m_btnMgr.hide(m_gameBtnAdultOn);
|
||||
m_btnMgr.hide(m_gameBtnAdultOff);
|
||||
m_btnMgr.hide(m_gameBtnSettings);
|
||||
}
|
||||
m_btnMgr.hide(m_gameBtnSettings);
|
||||
m_btnMgr.hide(m_gameBtnDelete);
|
||||
m_btnMgr.hide(m_gameBtnPlay);
|
||||
m_btnMgr.hide(m_gameBtnBack);
|
||||
@ -548,6 +548,8 @@ extern "C" {extern void USBStorage_Deinit(void);}
|
||||
|
||||
void CMenu::_launchGC(const char *id)
|
||||
{
|
||||
int DMLvideoMode = m_gcfg2.getInt(id, "dml_video_mode", 0);
|
||||
|
||||
Close_Inputs();
|
||||
USBStorage_Deinit();
|
||||
Nand::Instance()->Disable_Emu();
|
||||
@ -573,7 +575,7 @@ void CMenu::_launchGC(const char *id)
|
||||
setstreaming();
|
||||
|
||||
VIDEO_SetBlack(TRUE);
|
||||
if (id[3] == 'P')
|
||||
if ((id[3] == 'P') || (DMLvideoMode == 1))
|
||||
{
|
||||
SRAM_PAL();
|
||||
|
||||
@ -589,7 +591,7 @@ void CMenu::_launchGC(const char *id)
|
||||
VIDEO_ClearFrameBuffer(rmode, m_frameBuf, COLOR_BLACK);
|
||||
VIDEO_SetNextFramebuffer(m_frameBuf);
|
||||
}
|
||||
else
|
||||
if ((id[3] != 'P') || (DMLvideoMode == 2))
|
||||
{
|
||||
SRAM_NTSC();
|
||||
|
||||
@ -1130,7 +1132,6 @@ void CMenu::_initGameMenu(CMenu::SThemeData &theme)
|
||||
m_gameButtonsZone.h = m_theme.getInt("GAME/ZONES", "buttons_h", 480);
|
||||
m_gameButtonsZone.hide = m_theme.getBool("GAME/ZONES", "buttons_hide", true);
|
||||
|
||||
//
|
||||
_setHideAnim(m_gameBtnPlay, "GAME/PLAY_BTN", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameBtnBack, "GAME/BACK_BTN", 200, 0, 1.f, 0.f);
|
||||
_setHideAnim(m_gameBtnFavoriteOn, "GAME/FAVORITE_ON", 0, 0, -1.5f, -1.5f);
|
||||
@ -1149,8 +1150,6 @@ void CMenu::_textGame(void)
|
||||
m_btnMgr.setText(m_gameBtnBack, _t("gm2", L"Back"));
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
struct IMD5Header
|
||||
{
|
||||
u32 fcc;
|
||||
|
Loading…
Reference in New Issue
Block a user