mirror of
https://github.com/Fledge68/WiiFlow_Lite.git
synced 2024-11-01 00:55:06 +01:00
-added id6 support for thp files
-updated wiiflow to the latest devkitppc and latest libogc
This commit is contained in:
parent
dbb9266eaf
commit
ca8bec90d1
@ -113,38 +113,37 @@ GXRModeObj TVPal528ProgUnknown =
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
GXRModeObj TVMpal480Prog =
|
GXRModeObj TVPal574IntDfScale =
|
||||||
{
|
{
|
||||||
10, // viDisplayMode
|
VI_TVMODE_PAL_INT, // viDisplayMode
|
||||||
640, // fbWidth
|
640, // fbWidth
|
||||||
480, // efbHeight
|
480, // efbHeight
|
||||||
480, // xfbHeight
|
574, // xfbHeight
|
||||||
(VI_MAX_WIDTH_NTSC - 640)/2, // viXOrigin
|
(VI_MAX_WIDTH_PAL - 640)/2, // viXOrigin
|
||||||
(VI_MAX_HEIGHT_NTSC - 480)/2, // viYOrigin
|
(VI_MAX_HEIGHT_PAL - 574)/2, // viYOrigin
|
||||||
640, // viWidth
|
640, // viWidth
|
||||||
480, // viHeight
|
574, // viHeight
|
||||||
VI_XFBMODE_SF, // xFBmode
|
VI_XFBMODE_DF, // xFBmode
|
||||||
GX_FALSE, // field_rendering
|
GX_FALSE, // field_rendering
|
||||||
GX_FALSE, // aa
|
GX_FALSE, // aa
|
||||||
|
|
||||||
// sample points arranged in increasing Y order
|
// sample points arranged in increasing Y order
|
||||||
{
|
{
|
||||||
{6,6},{6,6},{6,6}, // pix 0, 3 sample points, 1/12 units, 4 bits each
|
{6,6},{6,6},{6,6}, // pix 0, 3 sample points, 1/12 units, 4 bits each
|
||||||
{6,6},{6,6},{6,6}, // pix 1
|
{6,6},{6,6},{6,6}, // pix 1
|
||||||
{6,6},{6,6},{6,6}, // pix 2
|
{6,6},{6,6},{6,6}, // pix 2
|
||||||
{6,6},{6,6},{6,6} // pix 3
|
{6,6},{6,6},{6,6} // pix 3
|
||||||
},
|
},
|
||||||
|
|
||||||
// vertical filter[7], 1/64 units, 6 bits each
|
// vertical filter[7], 1/64 units, 6 bits each
|
||||||
{
|
{
|
||||||
0, // line n-1
|
8, // line n-1
|
||||||
0, // line n-1
|
8, // line n-1
|
||||||
21, // line n
|
10, // line n
|
||||||
22, // line n
|
12, // line n
|
||||||
21, // line n
|
10, // line n
|
||||||
0, // line n+1
|
8, // line n+1
|
||||||
0 // line n+1
|
8 // line n+1
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
static const GXRModeObj *g_vidmodes[] = {
|
static const GXRModeObj *g_vidmodes[] = {
|
||||||
|
@ -46,15 +46,15 @@ typedef struct
|
|||||||
} Vec3f;
|
} Vec3f;
|
||||||
|
|
||||||
#define ALIGN32(x) (((x) + 31) & ~31)
|
#define ALIGN32(x) (((x) + 31) & ~31)
|
||||||
#define LIMIT(x, min, max) \
|
static inline u8 LIMIT(u8 x, u8 min, u8 max)
|
||||||
({ \
|
{
|
||||||
typeof( x ) _x = x; \
|
return ( ( ( x ) < ( min ) ) ? ( min ) : ( ( x ) > ( max ) ) ? ( max) : ( x ) );
|
||||||
typeof( min ) _min = min; \
|
}
|
||||||
typeof( max ) _max = max; \
|
|
||||||
( ( ( _x ) < ( _min ) ) ? ( _min ) : ( ( _x ) > ( _max ) ) ? ( _max) : ( _x ) ); \
|
|
||||||
})
|
|
||||||
|
|
||||||
#define MultiplyAlpha(a1, a2) ((u16) (a1) * (u16) (a2) / 0xFF)
|
static inline u8 MultiplyAlpha(u16 a1, u16 a2)
|
||||||
|
{
|
||||||
|
return a1 * a2 / 0xFF;
|
||||||
|
}
|
||||||
#define FLOAT_2_U8(x) ((u8)((x) > 255.0f ? 255.0f : ((x) < 0.0f ? 0.0f : (x) + 0.5f)))
|
#define FLOAT_2_U8(x) ((u8)((x) > 255.0f ? 255.0f : ((x) < 0.0f ? 0.0f : (x) + 0.5f)))
|
||||||
#define FLOAT_2_S16(x) ((s16)((x) > 32767.0f ? 32767.0f : ((x) < -32768.0f ? 32768.0f : (x) + 0.5f)))
|
#define FLOAT_2_S16(x) ((s16)((x) > 32767.0f ? 32767.0f : ((x) < -32768.0f ? 32768.0f : (x) + 0.5f)))
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ void BannerWindow::Init(u8 *font1, u8 *font2)
|
|||||||
AnimPosX = 0.5f * (ScreenProps.x - fIconWidth);
|
AnimPosX = 0.5f * (ScreenProps.x - fIconWidth);
|
||||||
AnimPosY = 0.5f * (ScreenProps.y - fIconHeight);
|
AnimPosY = 0.5f * (ScreenProps.y - fIconHeight);
|
||||||
AnimationRunning = false;
|
AnimationRunning = false;
|
||||||
Brightness = 0.f;
|
Brightness = 0;
|
||||||
|
|
||||||
// this just looks better for banner/icon ratio
|
// this just looks better for banner/icon ratio
|
||||||
xDiff = 0.5f * (m_vid.wide() ? (m_vid.vid_50hz() ? 616 : 620.0f) : 608.0f);
|
xDiff = 0.5f * (m_vid.wide() ? (m_vid.vid_50hz() ? 616 : 620.0f) : 608.0f);
|
||||||
@ -161,7 +161,7 @@ void BannerWindow::Draw(void)
|
|||||||
|
|
||||||
// draw a black background image first
|
// draw a black background image first
|
||||||
if(AnimStep >= MaxAnimSteps)
|
if(AnimStep >= MaxAnimSteps)
|
||||||
DrawRectangle(0.0f, 0.0f, m_vid.width(), m_vid.height(), (GXColor) {0, 0, 0, 255.f});
|
DrawRectangle(0.0f, 0.0f, m_vid.width(), m_vid.height(), (GXColor) {0, 0, 0, 0xFF});
|
||||||
|
|
||||||
if(changing)
|
if(changing)
|
||||||
return;
|
return;
|
||||||
@ -216,14 +216,14 @@ void BannerWindow::Draw(void)
|
|||||||
m_vid.setup2DProjection();
|
m_vid.setup2DProjection();
|
||||||
|
|
||||||
// If wanted
|
// If wanted
|
||||||
if(Brightness > 1.f)
|
if(Brightness == 200)
|
||||||
DrawRectangle(0.0f, 0.0f, m_vid.width(), m_vid.height(), (GXColor) {0, 0, 0, Brightness});
|
DrawRectangle(0.0f, 0.0f, m_vid.width(), m_vid.height(), (GXColor) {0, 0, 0, Brightness});
|
||||||
}
|
}
|
||||||
|
|
||||||
void BannerWindow::ToogleGameSettings()
|
void BannerWindow::ToogleGameSettings()
|
||||||
{
|
{
|
||||||
ToogleZoom();
|
ToogleZoom();
|
||||||
Brightness = (Brightness > 1.f ? 0.f : 200.f);
|
Brightness = (Brightness == 200 ? 0 : 200);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BannerWindow::ReSetup_GX(void)
|
void BannerWindow::ReSetup_GX(void)
|
||||||
|
@ -51,7 +51,7 @@ public:
|
|||||||
void LoadBannerBin(u8 *bnr, u32 bnr_size, u8 *font1, u8 *font2);
|
void LoadBannerBin(u8 *bnr, u32 bnr_size, u8 *font1, u8 *font2);
|
||||||
int GetSelectedGame() { return gameSelected; }
|
int GetSelectedGame() { return gameSelected; }
|
||||||
bool GetZoomSetting() { return AnimZoom; }
|
bool GetZoomSetting() { return AnimZoom; }
|
||||||
bool GetInGameSettings() { return (Brightness > 1.f ? true : false); }
|
bool GetInGameSettings() { return (Brightness == 200 ? true : false); }
|
||||||
void CreateGCBanner(u8 *bnr, u8 *font1, u8 *font2, const wchar_t *title);
|
void CreateGCBanner(u8 *bnr, u8 *font1, u8 *font2, const wchar_t *title);
|
||||||
void Draw(void);
|
void Draw(void);
|
||||||
bool ToogleZoom(void);
|
bool ToogleZoom(void);
|
||||||
@ -73,7 +73,7 @@ protected:
|
|||||||
bool reducedVol;
|
bool reducedVol;
|
||||||
int returnVal;
|
int returnVal;
|
||||||
int gameSelected;
|
int gameSelected;
|
||||||
float Brightness;
|
u8 Brightness;
|
||||||
int MaxAnimSteps;
|
int MaxAnimSteps;
|
||||||
|
|
||||||
int AnimStep;
|
int AnimStep;
|
||||||
|
@ -44,6 +44,7 @@ public:
|
|||||||
} ATTRIBUTE_PACKED;
|
} ATTRIBUTE_PACKED;
|
||||||
|
|
||||||
Material();
|
Material();
|
||||||
|
virtual ~Material() { };
|
||||||
|
|
||||||
void Load(Material::Header *mat);
|
void Load(Material::Header *mat);
|
||||||
void Apply(const BannerResources& resources, u8 render_alpha, bool modulate) const;
|
void Apply(const BannerResources& resources, u8 render_alpha, bool modulate) const;
|
||||||
|
@ -105,13 +105,13 @@ ftgxCharData *FreeTypeGX::cacheGlyphData(wchar_t charCode)
|
|||||||
|
|
||||||
this->fontData[charCode] = (ftgxCharData)
|
this->fontData[charCode] = (ftgxCharData)
|
||||||
{
|
{
|
||||||
this->ftSlot->advance.x >> 6,
|
(u16)(this->ftSlot->advance.x >> 6),
|
||||||
gIndex,
|
(u16)(gIndex),
|
||||||
textureWidth,
|
textureWidth,
|
||||||
textureHeight,
|
textureHeight,
|
||||||
this->ftSlot->bitmap_top,
|
(u16)(this->ftSlot->bitmap_top),
|
||||||
this->ftSlot->bitmap_top,
|
(u16)(this->ftSlot->bitmap_top),
|
||||||
textureHeight - this->ftSlot->bitmap_top,
|
(u16)(textureHeight - this->ftSlot->bitmap_top),
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
this->loadGlyphData(glyphBitmap, &this->fontData[charCode]);
|
this->loadGlyphData(glyphBitmap, &this->fontData[charCode]);
|
||||||
@ -144,7 +144,7 @@ void FreeTypeGX::loadGlyphData(FT_Bitmap *bmp, ftgxCharData *charData)
|
|||||||
int glyphSize = (charData->textureWidth * charData->textureHeight) >> 1;
|
int glyphSize = (charData->textureWidth * charData->textureHeight) >> 1;
|
||||||
|
|
||||||
uint8_t *glyphData = (uint8_t *) MEM2_alloc(glyphSize);
|
uint8_t *glyphData = (uint8_t *) MEM2_alloc(glyphSize);
|
||||||
if(glyphData < 0)
|
if(glyphData == NULL)
|
||||||
return;
|
return;
|
||||||
memset(glyphData, 0x00, glyphSize);
|
memset(glyphData, 0x00, glyphSize);
|
||||||
|
|
||||||
|
@ -79,6 +79,39 @@ const float CVideo::_jitter8[8][2] = {
|
|||||||
{ 0.164216f, -0.054399f }
|
{ 0.164216f, -0.054399f }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
GXRModeObj TVPal574IntDfScale =
|
||||||
|
{
|
||||||
|
VI_TVMODE_PAL_INT, // viDisplayMode
|
||||||
|
640, // fbWidth
|
||||||
|
480, // efbHeight
|
||||||
|
574, // xfbHeight
|
||||||
|
(VI_MAX_WIDTH_PAL - 640)/2, // viXOrigin
|
||||||
|
(VI_MAX_HEIGHT_PAL - 574)/2, // viYOrigin
|
||||||
|
640, // viWidth
|
||||||
|
574, // viHeight
|
||||||
|
VI_XFBMODE_DF, // xFBmode
|
||||||
|
GX_FALSE, // field_rendering
|
||||||
|
GX_FALSE, // aa
|
||||||
|
|
||||||
|
// sample points arranged in increasing Y order
|
||||||
|
{
|
||||||
|
{6,6},{6,6},{6,6}, // pix 0, 3 sample points, 1/12 units, 4 bits each
|
||||||
|
{6,6},{6,6},{6,6}, // pix 1
|
||||||
|
{6,6},{6,6},{6,6}, // pix 2
|
||||||
|
{6,6},{6,6},{6,6} // pix 3
|
||||||
|
},
|
||||||
|
// vertical filter[7], 1/64 units, 6 bits each
|
||||||
|
{
|
||||||
|
8, // line n-1
|
||||||
|
8, // line n-1
|
||||||
|
10, // line n
|
||||||
|
12, // line n
|
||||||
|
10, // line n
|
||||||
|
8, // line n+1
|
||||||
|
8 // line n+1
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
struct movieP normalMoviePos = { 410, 31, 610, 181 };
|
struct movieP normalMoviePos = { 410, 31, 610, 181 };
|
||||||
struct movieP zoomedMoviePos = { 0, 0, 640, 480 };
|
struct movieP zoomedMoviePos = { 0, 0, 640, 480 };
|
||||||
struct movieP currentMoviePos = normalMoviePos;
|
struct movieP currentMoviePos = normalMoviePos;
|
||||||
|
@ -303,7 +303,7 @@ void CMenu::init()
|
|||||||
m_helpDir = m_cfg.getString("GENERAL", "dir_help", fmt("%s/help", m_dataDir.c_str()));
|
m_helpDir = m_cfg.getString("GENERAL", "dir_help", fmt("%s/help", m_dataDir.c_str()));
|
||||||
|
|
||||||
/* Cache Reload Checks */
|
/* Cache Reload Checks */
|
||||||
u32 ini_rev = m_cfg.getInt("GENERAL", "ini_rev", 0);
|
int ini_rev = m_cfg.getInt("GENERAL", "ini_rev", 0);
|
||||||
if(ini_rev != SVN_REV_NUM)
|
if(ini_rev != SVN_REV_NUM)
|
||||||
fsop_deleteFolder(m_listCacheDir.c_str());
|
fsop_deleteFolder(m_listCacheDir.c_str());
|
||||||
m_cfg.setInt("GENERAL", "ini_rev", SVN_REV_NUM);
|
m_cfg.setInt("GENERAL", "ini_rev", SVN_REV_NUM);
|
||||||
|
@ -1192,7 +1192,7 @@ private:
|
|||||||
static int _version[9];
|
static int _version[9];
|
||||||
static const SCFParamDesc _cfParams[];
|
static const SCFParamDesc _cfParams[];
|
||||||
static const int _nbCfgPages;
|
static const int _nbCfgPages;
|
||||||
static const u32 SVN_REV_NUM;
|
static const int SVN_REV_NUM;
|
||||||
//thread stack
|
//thread stack
|
||||||
static u8 downloadStack[8192];
|
static u8 downloadStack[8192];
|
||||||
static const u32 downloadStackSize;
|
static const u32 downloadStackSize;
|
||||||
|
@ -398,10 +398,18 @@ bool CMenu::_startVideo()
|
|||||||
}
|
}
|
||||||
const char *videoPath = getVideoPath(m_videoDir, videoId);
|
const char *videoPath = getVideoPath(m_videoDir, videoId);
|
||||||
const char *THP_Path = fmt("%s.thp", videoPath);
|
const char *THP_Path = fmt("%s.thp", videoPath);
|
||||||
if(!fsop_FileExist(THP_Path) && m_current_view == COVERFLOW_PLUGIN)
|
if(!fsop_FileExist(THP_Path))
|
||||||
{
|
{
|
||||||
videoPath = getVideoDefaultPath(m_videoDir);
|
if(m_current_view == COVERFLOW_PLUGIN)
|
||||||
THP_Path = fmt("%s.thp", videoPath);
|
{
|
||||||
|
videoPath = getVideoDefaultPath(m_videoDir);
|
||||||
|
THP_Path = fmt("%s.thp", videoPath);
|
||||||
|
}
|
||||||
|
else if(!NoGameID(CoverFlow.getHdr()->type))
|
||||||
|
{
|
||||||
|
videoPath = getVideoPath(m_videoDir, CoverFlow.getId());
|
||||||
|
THP_Path = fmt("%s.thp", videoPath);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(fsop_FileExist(THP_Path))
|
if(fsop_FileExist(THP_Path))
|
||||||
{
|
{
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
#include "loader/wbfs.h"
|
#include "loader/wbfs.h"
|
||||||
|
|
||||||
int version_num = 0, num_versions = 0, i;
|
int version_num = 0, num_versions = 0, i;
|
||||||
const u32 CMenu::SVN_REV_NUM = atoi(SVN_REV);
|
const int CMenu::SVN_REV_NUM = atoi(SVN_REV);
|
||||||
int CMenu::_version[9] = {0, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM};
|
int CMenu::_version[9] = {0, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM, SVN_REV_NUM};
|
||||||
|
|
||||||
const int pixels_to_skip = 10;
|
const int pixels_to_skip = 10;
|
||||||
|
@ -50,7 +50,7 @@ public:
|
|||||||
SoundDecoder();
|
SoundDecoder();
|
||||||
SoundDecoder(const char * filepath);
|
SoundDecoder(const char * filepath);
|
||||||
SoundDecoder(const u8 * buffer, int size);
|
SoundDecoder(const u8 * buffer, int size);
|
||||||
~SoundDecoder();
|
virtual ~SoundDecoder();
|
||||||
virtual int Read(u8 * buffer, int buffer_size, int pos);
|
virtual int Read(u8 * buffer, int buffer_size, int pos);
|
||||||
virtual int Tell() { return CurPos; };
|
virtual int Tell() { return CurPos; };
|
||||||
virtual int Seek(int pos) { CurPos = pos; return file_fd->seek(CurPos, SEEK_SET); };
|
virtual int Seek(int pos) { CurPos = pos; return file_fd->seek(CurPos, SEEK_SET); };
|
||||||
|
@ -45,7 +45,7 @@ void add_game_to_card(const char *gameid)
|
|||||||
int i;
|
int i;
|
||||||
|
|
||||||
char *url = (char *)MEM2_alloc(MAX_URL_SIZE); // Too much memory, but only like 10 bytes
|
char *url = (char *)MEM2_alloc(MAX_URL_SIZE); // Too much memory, but only like 10 bytes
|
||||||
memset(url, 0, sizeof(url));
|
memset(url, 0, MAX_URL_SIZE);
|
||||||
|
|
||||||
for(i = 0; i < amount_of_providers && providers != NULL; i++)
|
for(i = 0; i < amount_of_providers && providers != NULL; i++)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user