Skip to content

Commit

Permalink
-fixed up triforce free play patch when using segaboot 3.11.2 from gd…
Browse files Browse the repository at this point in the history
…t-0022a

-added back video mode debug prints into the loader, accidentally deleted them on the last changes
  • Loading branch information
FIX94 committed May 2, 2016
1 parent 4d5530d commit 0bbc39e
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 6 deletions.
2 changes: 1 addition & 1 deletion common/include/NintendontVersion.h
Expand Up @@ -3,7 +3,7 @@
#define __NINTENDONT_VERSION_H__

#define NIN_MAJOR_VERSION 3
#define NIN_MINOR_VERSION 389
#define NIN_MINOR_VERSION 390

#define NIN_VERSION ((NIN_MAJOR_VERSION << 16) | NIN_MINOR_VERSION)

Expand Down
18 changes: 14 additions & 4 deletions kernel/TRI.c
Expand Up @@ -773,10 +773,20 @@ void TRISetupGames()
{
if( read32( 0x00055F98 ) == 0x386000A8 )
{
write32(0x000627A4, 0x3C808006); //lis r4, 0x8006
write32(0x000627AC, 0x6084E93C); //ori r4, r4, 0xE93C
write32(0x0006E93C, 0x01010A01); //modify 0x8006E93C for Free Play
dbgprintf("TRI:SegaBoot (Patched Free Play)\r\n");
if( read32( 0x0006E938 ) == 0x63090400 )
{
write32(0x000627A4, 0x3C808006); //lis r4, 0x8006
write32(0x000627AC, 0x6084E93C); //ori r4, r4, 0xE93C
write32(0x0006E93C, 0x01010A01); //modify 0x8006E93C for Free Play
dbgprintf("TRI:SegaBoot 3.01.2 (Patched Free Play)\r\n");
}
else if( read32( 0x0006E968 ) == 0x63090400 )
{
write32(0x000627A4, 0x3C808006); //lis r4, 0x8006
write32(0x000627AC, 0x6084E96C); //ori r4, r4, 0xE96C
write32(0x0006E96C, 0x01010A01); //modify 0x8006E96C for Free Play
dbgprintf("TRI:SegaBoot 3.11.2 (Patched Free Play)\r\n");
}
}
else
dbgprintf("TRI:SegaBoot\r\n");
Expand Down
Binary file modified loader/loader.dol
Binary file not shown.
14 changes: 13 additions & 1 deletion loader/source/grrlib.c
Expand Up @@ -74,21 +74,33 @@ int GRRLIB_Init (void) {
VIDEO_Init();

if(CONF_GetProgressiveScan() > 0 && VIDEO_HaveComponentCable())
{
rmode = &TVNtsc480Prog;
gprintf("PROG\n");
}
else
{
switch(CONF_GetVideo())
{
case CONF_VIDEO_PAL:
if (CONF_GetEuRGB60() > 0)
{
gprintf("PAL60\n");
rmode = &TVEurgb60Hz480Int;
else rmode = &TVPal576IntDfScale;
}
else
{
gprintf("PAL50\n");
rmode = &TVPal576IntDfScale;
}
break;
case CONF_VIDEO_MPAL:
gprintf("MPAL\n");
rmode = &TVMpal480IntDf;
break;
case CONF_VIDEO_NTSC:
default:
gprintf("NTSC\n");
rmode = &TVNtsc480Int;
break;
}
Expand Down

0 comments on commit 0bbc39e

Please sign in to comment.