mirror of
https://github.com/martravi/wiiqt.git
synced 2024-11-22 17:19:18 +01:00
* nandBinChecker & ohneswanzenegger: SU tid is not part of the stuff installed at the factory
* fix korean brick tests
This commit is contained in:
parent
b733f95398
commit
506aa591e5
@ -536,13 +536,9 @@ bool CheckArm003( const QByteArray &stuff )
|
|||||||
qWarning() << "\tFailed to find the ES module in the kernel";
|
qWarning() << "\tFailed to find the ES module in the kernel";
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
QByteArray start = stuff.left( esTag ); //drop the remaining modules
|
if( stuff.contains( QByteArray::fromHex( "e2511cb1d7fbbef8d7f97db5a1d81694" ) ) //1337 buffer #1
|
||||||
qint32 prevTag = start.lastIndexOf( "$IOSVersion:", esTag - 1 );
|
|| stuff.contains( QByteArray::fromHex( "3f5b8cc9ea855a0afa7347d23e8d664e" ) ) //1337 buffer #2
|
||||||
if( prevTag > 0 )
|
|| stuff.contains( QByteArray::fromHex( "b570b08868851c01310c22c0005218ab681b2b00d10248bff001f852680b2b45" ) ) )//blablabla, CMP R3, #0x45
|
||||||
start.remove( 0, prevTag );
|
|
||||||
if( start.contains( QByteArray::fromHex( "e2511cb1d7fbbef8d7f97db5a1d81694" ) ) //1337 buffer #1
|
|
||||||
|| start.contains( QByteArray::fromHex( "3f5b8cc9ea855a0afa7347d23e8d664e" ) ) //1337 buffer #2
|
|
||||||
|| start.contains( QByteArray::fromHex( "b570b08868851c01310c22c0005218ab681b2b00d10248bff001f852680b2b45" ) ) )//blablabla, CMP R3, #0x45
|
|
||||||
{
|
{
|
||||||
if( verbose > 1 )
|
if( verbose > 1 )
|
||||||
qWarning() << "\tSystem menu IOS supports the Korean-key check";
|
qWarning() << "\tSystem menu IOS supports the Korean-key check";
|
||||||
@ -566,7 +562,7 @@ void Check003()
|
|||||||
bool brick = true;
|
bool brick = true;
|
||||||
|
|
||||||
//check the PPC half
|
//check the PPC half
|
||||||
if( !sysMenuExe.contains( "3880004538A0000038C00000" ) ) //li %r4, 0x45
|
if( !sysMenuExe.contains( QByteArray::fromHex( "3880004538A0000038C00000" ) ) ) //li %r4, 0x45
|
||||||
{ //li %r5, 0
|
{ //li %r5, 0
|
||||||
brick = false; //li %r6, 0
|
brick = false; //li %r6, 0
|
||||||
if( verbose > 1 )
|
if( verbose > 1 )
|
||||||
@ -633,6 +629,9 @@ void Check003()
|
|||||||
if( verbose > 1 )
|
if( verbose > 1 )
|
||||||
qDebug() << "\tThe korean key is not present in this wii";
|
qDebug() << "\tThe korean key is not present in this wii";
|
||||||
}
|
}
|
||||||
|
else if( verbose > 1 )
|
||||||
|
qWarning() << "\tThis wii contains the korean key";
|
||||||
|
|
||||||
if( brick )
|
if( brick )
|
||||||
Fail( "\tThis wii will likely show the 003 error" );
|
Fail( "\tThis wii will likely show the 003 error" );
|
||||||
}
|
}
|
||||||
@ -854,6 +853,7 @@ void ListDeletedTitles()
|
|||||||
quint32 lower = ( tid & 0xffffffff );
|
quint32 lower = ( tid & 0xffffffff );
|
||||||
if( ( upper == 0x10001 && ( ( lower >> 24 ) & 0xff ) != 0x48 ) || //a channel, not starting with 'H'
|
if( ( upper == 0x10001 && ( ( lower >> 24 ) & 0xff ) != 0x48 ) || //a channel, not starting with 'H'
|
||||||
lower == 0x48415858 || //original HBC
|
lower == 0x48415858 || //original HBC
|
||||||
|
tid == 0x100000000ull || //bannerbomb -> ATD ( or any other program that uses the SU tid )
|
||||||
( upper == 0x10000 && ( ( lower & 0xffffff00 ) == 0x555000 ) ) ) //a disc update partition
|
( upper == 0x10000 && ( ( lower & 0xffffff00 ) == 0x555000 ) ) ) //a disc update partition
|
||||||
break;
|
break;
|
||||||
if( ( verbose || upper != 0x10000 ) && !tids.contains( tid ) )
|
if( ( verbose || upper != 0x10000 ) && !tids.contains( tid ) )
|
||||||
|
@ -964,6 +964,7 @@ void MainWindow::on_actionFormat_triggered()
|
|||||||
//qDebug() << hex << i << QString( "%1" ).arg( tid, 16, 16, QChar( '0' ) ) << upper << lower << QChar( ( lower >> 24 ) & 0xff ) << ( lower & 0xffffff00 );
|
//qDebug() << hex << i << QString( "%1" ).arg( tid, 16, 16, QChar( '0' ) ) << upper << lower << QChar( ( lower >> 24 ) & 0xff ) << ( lower & 0xffffff00 );
|
||||||
if( ( upper == 0x10001 && ( ( lower >> 24 ) & 0xff ) != 0x48 ) || //a channel, not starting with 'H'
|
if( ( upper == 0x10001 && ( ( lower >> 24 ) & 0xff ) != 0x48 ) || //a channel, not starting with 'H'
|
||||||
lower == 0x48415858 || //original HBC
|
lower == 0x48415858 || //original HBC
|
||||||
|
tid == 0x100000000ull || //bannerbomb -> ATD ( or any other program that uses the SU tid )
|
||||||
( upper == 0x10000 && ( ( lower & 0xffffff00 ) == 0x555000 ) ) ) //a disc update partition
|
( upper == 0x10000 && ( ( lower & 0xffffff00 ) == 0x555000 ) ) ) //a disc update partition
|
||||||
break;
|
break;
|
||||||
titles++;
|
titles++;
|
||||||
|
@ -354,6 +354,7 @@ QByteArray NewNandBin::GetCleanUid( QByteArray old )
|
|||||||
//qDebug() << QString( "%1" ).arg( tid, 16, 16, QChar( '0' ) ) << hex << upper << lower << ( ( lower >> 24 ) & 0xff ) << ( lower & 0xffff00 );
|
//qDebug() << QString( "%1" ).arg( tid, 16, 16, QChar( '0' ) ) << hex << upper << lower << ( ( lower >> 24 ) & 0xff ) << ( lower & 0xffff00 );
|
||||||
if( ( upper == 0x10001 && ( ( lower >> 24 ) & 0xff ) != 0x48 ) || //a channel, not starting with 'H'
|
if( ( upper == 0x10001 && ( ( lower >> 24 ) & 0xff ) != 0x48 ) || //a channel, not starting with 'H'
|
||||||
lower == 0x48415858 || //original HBC
|
lower == 0x48415858 || //original HBC
|
||||||
|
tid == 0x100000000ull || //bannerbomb -> ATD ( or any other program that uses the SU tid )
|
||||||
( upper == 0x10000 && ( ( lower & 0xffffff00 ) == 0x555000 ) ) ) //a disc update partition
|
( upper == 0x10000 && ( ( lower & 0xffffff00 ) == 0x555000 ) ) ) //a disc update partition
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user