mirror of
https://github.com/ekeeke/Genesis-Plus-GX.git
synced 2025-01-11 18:59:07 +01:00
Widescreen Menu fix, fixed frame counter
This commit is contained in:
parent
7b8984f729
commit
4613223510
@ -26,7 +26,7 @@ Genesis Plus for Gamecube
|
|||||||
- removed embedded font, (re)enabled IPL font support: now should works for Qoob users too (thanks to emukiddid)
|
- removed embedded font, (re)enabled IPL font support: now should works for Qoob users too (thanks to emukiddid)
|
||||||
- fixed "Reset" button behavior, now acts more like Genesis Reset button ;-)
|
- fixed "Reset" button behavior, now acts more like Genesis Reset button ;-)
|
||||||
- patched libfat for faster SDCARD accesses (thanks to svpe)
|
- patched libfat for faster SDCARD accesses (thanks to svpe)
|
||||||
- SRAM and SaveState files are now based on the ROM filename
|
- SRAM and SaveState filenames are now based on the ROM filename (for FAT devices only)
|
||||||
- various bugfixes, menu tweaks and code cleanup
|
- various bugfixes, menu tweaks and code cleanup
|
||||||
|
|
||||||
[NGC only]
|
[NGC only]
|
||||||
@ -36,6 +36,7 @@ Genesis Plus for Gamecube
|
|||||||
- implemented fast scrolling in menu using Wiimote D-PAD
|
- implemented fast scrolling in menu using Wiimote D-PAD
|
||||||
- added "Power" button support
|
- added "Power" button support
|
||||||
- added USB Storage support
|
- added USB Storage support
|
||||||
|
- Widescreen menu fix
|
||||||
- *new* libogc 1.7.0 features: SDHC support, Wiimote shutdown button support
|
- *new* libogc 1.7.0 features: SDHC support, Wiimote shutdown button support
|
||||||
|
|
||||||
|
|
||||||
|
@ -25,9 +25,9 @@
|
|||||||
#include <sys/dir.h>
|
#include <sys/dir.h>
|
||||||
|
|
||||||
#ifdef HW_RVL
|
#ifdef HW_RVL
|
||||||
#define CONFIG_VERSION "GENPLUS 1.2.3W"
|
#define CONFIG_VERSION "GENPLUS 1.3.0W"
|
||||||
#else
|
#else
|
||||||
#define CONFIG_VERSION "GENPLUS 1.2.3G"
|
#define CONFIG_VERSION "GENPLUS 1.3.0G"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void config_save()
|
void config_save()
|
||||||
|
@ -1216,6 +1216,10 @@ void MainMenu ()
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*** Reinitialize GX ***/
|
/*** Reinitialize GX ***/
|
||||||
|
VIDEO_ClearFrameBuffer(vmode, xfb[whichfb], COLOR_BLACK);
|
||||||
|
VIDEO_Flush();
|
||||||
|
VIDEO_WaitVSync();
|
||||||
|
VIDEO_WaitVSync();
|
||||||
ogc_video__reset();
|
ogc_video__reset();
|
||||||
odd_frame = 1;
|
odd_frame = 1;
|
||||||
|
|
||||||
|
@ -212,7 +212,7 @@ int main (int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
/* Delay */
|
/* Delay */
|
||||||
while (diff_usec(prev, now) < usBetweenFrames) now = gettime();
|
while (diff_usec(prev, now) < usBetweenFrames) now = gettime();
|
||||||
|
|
||||||
/* Render Frame */
|
/* Render Frame */
|
||||||
prev = now;
|
prev = now;
|
||||||
system_frame(0);
|
system_frame(0);
|
||||||
@ -232,11 +232,11 @@ int main (int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
/* Delay */
|
/* Delay */
|
||||||
while (!frameticker) usleep(10);
|
while (!frameticker) usleep(10);
|
||||||
|
|
||||||
system_frame (0);
|
system_frame (0);
|
||||||
RenderedFrameCount++;
|
RenderedFrameCount++;
|
||||||
}
|
}
|
||||||
|
|
||||||
frameticker--;
|
frameticker--;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -264,7 +264,6 @@ int main (int argc, char *argv[])
|
|||||||
ConfigRequested = 0;
|
ConfigRequested = 0;
|
||||||
|
|
||||||
/* reset frame timings */
|
/* reset frame timings */
|
||||||
frameticker = 0;
|
|
||||||
prev = gettime();
|
prev = gettime();
|
||||||
FrameCount = 0;
|
FrameCount = 0;
|
||||||
RenderedFrameCount = 0;
|
RenderedFrameCount = 0;
|
||||||
|
@ -532,12 +532,14 @@ void ogc_video__reset()
|
|||||||
|
|
||||||
/* Configure VI */
|
/* Configure VI */
|
||||||
VIDEO_Configure (rmode);
|
VIDEO_Configure (rmode);
|
||||||
VIDEO_ClearFrameBuffer(rmode, xfb[whichfb], COLOR_BLACK);
|
|
||||||
VIDEO_Flush();
|
VIDEO_Flush();
|
||||||
VIDEO_WaitVSync();
|
VIDEO_WaitVSync();
|
||||||
if (rmode->viTVMode & VI_NON_INTERLACE) VIDEO_WaitVSync();
|
if (rmode->viTVMode & VI_NON_INTERLACE) VIDEO_WaitVSync();
|
||||||
else while (VIDEO_GetNextField()) VIDEO_WaitVSync();
|
else while (VIDEO_GetNextField()) VIDEO_WaitVSync();
|
||||||
|
|
||||||
|
/* reset frame counter */
|
||||||
|
frameticker = 0;
|
||||||
|
|
||||||
/* Configure GX */
|
/* Configure GX */
|
||||||
GX_SetViewport (0.0F, 0.0F, rmode->fbWidth, rmode->efbHeight, 0.0F, 1.0F);
|
GX_SetViewport (0.0F, 0.0F, rmode->fbWidth, rmode->efbHeight, 0.0F, 1.0F);
|
||||||
GX_SetScissor (0, 0, rmode->fbWidth, rmode->efbHeight);
|
GX_SetScissor (0, 0, rmode->fbWidth, rmode->efbHeight);
|
||||||
@ -582,7 +584,7 @@ void ogc_video__update()
|
|||||||
if (bitmap.viewport.changed)
|
if (bitmap.viewport.changed)
|
||||||
{
|
{
|
||||||
bitmap.viewport.changed = 0;
|
bitmap.viewport.changed = 0;
|
||||||
|
|
||||||
/* update texture size */
|
/* update texture size */
|
||||||
vwidth = bitmap.viewport.w + 2 * bitmap.viewport.x;
|
vwidth = bitmap.viewport.w + 2 * bitmap.viewport.x;
|
||||||
vheight = bitmap.viewport.h + 2 * bitmap.viewport.y;
|
vheight = bitmap.viewport.h + 2 * bitmap.viewport.y;
|
||||||
@ -696,7 +698,16 @@ void ogc_video__init(void)
|
|||||||
config.tv_mode = 2;
|
config.tv_mode = 2;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef HW_RVL
|
||||||
|
/* Widescreen fix */
|
||||||
|
if( CONF_GetAspectRatio() )
|
||||||
|
{
|
||||||
|
vmode->viWidth = 678;
|
||||||
|
vmode->viXOrigin = (VI_MAX_WIDTH_NTSC - 678)/2;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Configure video mode */
|
/* Configure video mode */
|
||||||
VIDEO_Configure (vmode);
|
VIDEO_Configure (vmode);
|
||||||
|
|
||||||
@ -719,7 +730,7 @@ void ogc_video__init(void)
|
|||||||
|
|
||||||
/* Enable Video Interface */
|
/* Enable Video Interface */
|
||||||
VIDEO_SetBlack (FALSE);
|
VIDEO_SetBlack (FALSE);
|
||||||
|
|
||||||
/* Update video settings for next VBlank */
|
/* Update video settings for next VBlank */
|
||||||
VIDEO_Flush ();
|
VIDEO_Flush ();
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user