*nusdownloader: dont include USA news & weather channels in EU updates ( fix for issue 1 )

git-svn-id: http://wiiqt.googlecode.com/svn/trunk@85 389f4c8b-5dfe-645f-db0e-df882bc27289
This commit is contained in:
giantpune 2011-05-15 16:32:08 +00:00
parent 87bbdf54ec
commit c891dd5ff5

View File

@ -13,7 +13,7 @@ NusDownloader::NusDownloader( QObject *parent, const QString &cPath ) : QObject(
//change the cache path //change the cache path
void NusDownloader::SetCachePath( const QString &cPath ) void NusDownloader::SetCachePath( const QString &cPath )
{ {
//qDebug() << "NusDownloader::SetCachePath" << cPath; //qDebug() << "NusDownloader::SetCachePath" << cPath;
cachePath = cPath; cachePath = cPath;
} }
@ -100,7 +100,7 @@ void NusDownloader::StartNextJob()
else else
{ {
dlJob = tmdJob; dlJob = tmdJob;
QTimer::singleShot( 50, this, SLOT( StartDownload() ) ); QTimer::singleShot( 50, this, SLOT( StartDownload() ) );
} }
} }
else//download the latest tmd to get the version else//download the latest tmd to get the version
@ -202,11 +202,11 @@ bool NusDownloader::SaveDataToCache( const QString &path, const QByteArray &stuf
qWarning() << "NusDownloader::SaveDataToCache -> bad path" << path << cachePath; qWarning() << "NusDownloader::SaveDataToCache -> bad path" << path << cachePath;
return false; return false;
} }
QFileInfo fi( path ); QFileInfo fi( path );
QString parent = fi.absolutePath(); QString parent = fi.absolutePath();
if( !QDir( parent ).exists() && !QDir().mkpath( parent ) ) if( !QDir( parent ).exists() && !QDir().mkpath( parent ) )
{ {
qWarning() << "NusDownloader::SaveDataToCache -> cant create directory" << parent; qWarning() << "NusDownloader::SaveDataToCache -> cant create directory" << parent;
return false; return false;
} }
QFile f( path ); QFile f( path );
@ -531,21 +531,21 @@ bool NusDownloader::GetUpdate( const QString & upd, bool decrypt )
QString s = upd.toLower(); QString s = upd.toLower();
QMap< quint64, quint16 > titles; QMap< quint64, quint16 > titles;
if( s == "2.0e" ) titles = List20e(); if( s == "2.0e" ) titles = List20e();
else if( s == "2.1e" ) titles = List21e(); else if( s == "2.1e" ) titles = List21e();
else if( s == "2.2e" ) titles = List22e(); else if( s == "2.2e" ) titles = List22e();
else if( s == "3.0e" ) titles = List30e(); else if( s == "3.0e" ) titles = List30e();
else if( s == "3.1e" ) titles = List31e(); else if( s == "3.1e" ) titles = List31e();
else if( s == "3.2e" ) titles = List32e(); else if( s == "3.2e" ) titles = List32e();
else if( s == "3.3e" ) titles = List33e(); else if( s == "3.3e" ) titles = List33e();
else if( s == "3.4e" ) titles = List34e(); else if( s == "3.4e" ) titles = List34e();
else if( s == "4.0e" ) titles = List40e(); else if( s == "4.0e" ) titles = List40e();
else if( s == "4.1e" ) titles = List41e(); else if( s == "4.1e" ) titles = List41e();
else if( s == "4.2e" ) titles = List42e(); else if( s == "4.2e" ) titles = List42e();
else if( s == "4.3e" ) titles = List43e(); else if( s == "4.3e" ) titles = List43e();
else if( s == "2.0u" ) titles = List20u(); else if( s == "2.0u" ) titles = List20u();
else if( s == "2.2u" ) titles = List22u(); else if( s == "2.2u" ) titles = List22u();
else if( s == "3.0u" ) titles = List30u(); else if( s == "3.0u" ) titles = List30u();
else if( s == "3.1u" ) titles = List31u(); else if( s == "3.1u" ) titles = List31u();
else if( s == "3.2u" ) titles = List32u(); else if( s == "3.2u" ) titles = List32u();
@ -561,11 +561,11 @@ bool NusDownloader::GetUpdate( const QString & upd, bool decrypt )
else if( s == "4.2k" ) titles = List42k(); else if( s == "4.2k" ) titles = List42k();
else if( s == "4.3k" ) titles = List43k(); else if( s == "4.3k" ) titles = List43k();
else if( s == "2.0j" ) titles = List20j(); else if( s == "2.0j" ) titles = List20j();
else if( s == "2.2j" ) titles = List22j(); else if( s == "2.2j" ) titles = List22j();
else if( s == "3.0j" ) titles = List30j(); else if( s == "3.0j" ) titles = List30j();
else if( s == "3.1j" ) titles = List31j(); else if( s == "3.1j" ) titles = List31j();
else if( s == "3.2j" ) titles = List33j(); else if( s == "3.2j" ) titles = List33j();
else if( s == "3.3j" ) titles = List33j(); else if( s == "3.3j" ) titles = List33j();
else if( s == "3.4j" ) titles = List34j(); else if( s == "3.4j" ) titles = List34j();
else if( s == "4.0j" ) titles = List40j(); else if( s == "4.0j" ) titles = List40j();
@ -575,15 +575,15 @@ bool NusDownloader::GetUpdate( const QString & upd, bool decrypt )
else return false;//unknown update else return false;//unknown update
//make sure there is an IOS4 & 9 //make sure there is an IOS4 & 9
if( titles.find( 0x100000004ull ) == titles.end() ) if( titles.find( 0x100000004ull ) == titles.end() )
titles.insert( 0x100000004ull, 0xff00 ); titles.insert( 0x100000004ull, 0xff00 );
if( titles.find( 0x100000009ull ) == titles.end() ) if( titles.find( 0x100000009ull ) == titles.end() )
titles.insert( 0x100000009ull, 520 ); titles.insert( 0x100000009ull, 520 );
//hell, give everybody these. //hell, give everybody these.
titles.insert( 0x1000248414741ull, 0x3 );//news channel HAGA titles.insert( 0x1000248414741ull, 0x3 );//news channel HAGA
titles.insert( 0x1000248414641ull, 0x3 );//Weather Channel HAFA titles.insert( 0x1000248414641ull, 0x3 );//Weather Channel HAFA
QMap< quint64, quint16 >::ConstIterator i = titles.begin(); QMap< quint64, quint16 >::ConstIterator i = titles.begin();
while( i != titles.end() ) while( i != titles.end() )
@ -596,64 +596,64 @@ bool NusDownloader::GetUpdate( const QString & upd, bool decrypt )
QMap< quint64, quint16 > NusDownloader::List20j() QMap< quint64, quint16 > NusDownloader::List20j()
{ {
QMap< quint64, quint16 > titles; QMap< quint64, quint16 > titles;
//titles.insert( 0x100000001ull, 2 ); //boot2 //titles.insert( 0x100000001ull, 2 ); //boot2
titles.insert( 0x100000002ull, 128 ); //sys menu titles.insert( 0x100000002ull, 128 ); //sys menu
titles.insert( 0x10000000bull, 10 ); //11v10 titles.insert( 0x10000000bull, 10 ); //11v10
titles.insert( 0x10000000cull, 6 ); //12v6 titles.insert( 0x10000000cull, 6 ); //12v6
titles.insert( 0x10000000dull, 10 ); //13v10 titles.insert( 0x10000000dull, 10 ); //13v10
titles.insert( 0x10000000full, 257 ); //15v257 titles.insert( 0x10000000full, 257 ); //15v257
titles.insert( 0x100000011ull, 512 ); //17v512 titles.insert( 0x100000011ull, 512 ); //17v512
titles.insert( 0x100000100ull, 0x2 ); //bcv2 titles.insert( 0x100000100ull, 0x2 ); //bcv2
titles.insert( 0x100000101ull, 0x4 ); //miosv4 titles.insert( 0x100000101ull, 0x4 ); //miosv4
titles.insert( 0x1000848414B4aull, 0 ); //EULA - HAKJ titles.insert( 0x1000848414B4aull, 0 ); //EULA - HAKJ
titles.insert( 0x1000848414C4aull, 1 ); //regsel //region select isnt in the paper mario update, but putting it here just to be safe titles.insert( 0x1000848414C4aull, 1 ); //regsel //region select isnt in the paper mario update, but putting it here just to be safe
titles.insert( 0x1000248414341ull, 0x2 ); //nigaoeNRv2 - MII titles.insert( 0x1000248414341ull, 0x2 ); //nigaoeNRv2 - MII
titles.insert( 0x1000248414141ull, 0x1 ); //photov1 titles.insert( 0x1000248414141ull, 0x1 ); //photov1
titles.insert( 0x1000248414241ull, 0x4 ); //shoppingv4 titles.insert( 0x1000248414241ull, 0x4 ); //shoppingv4
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List22j() QMap< quint64, quint16 > NusDownloader::List22j()
{ {
QMap< quint64, quint16 > titles = List20j(); QMap< quint64, quint16 > titles = List20j();
titles.insert( 0x100000002ull, 192 ); //sys menu titles.insert( 0x100000002ull, 192 ); //sys menu
titles.insert( 0x100000014ull, 12 ); //20v12 titles.insert( 0x100000014ull, 12 ); //20v12
titles.insert( 0x100000015ull, 514 ); //21v514 titles.insert( 0x100000015ull, 514 ); //21v514
titles.insert( 0x100000016ull, 777 ); //22v772 //should be getting v772 but it isnt available on NUS, get 777 instead titles.insert( 0x100000016ull, 777 ); //22v772 //should be getting v772 but it isnt available on NUS, get 777 instead
titles.insert( 0x10000001cull, 1292 ); //28v1228 //should be getting v1288 but it isnt on NUS titles.insert( 0x10000001cull, 1292 ); //28v1228 //should be getting v1288 but it isnt on NUS
titles.insert( 0x100000101ull, 5 ); //miosv5 titles.insert( 0x100000101ull, 5 ); //miosv5
titles.insert( 0x1000848414B4aull, 2 ); //EULA v2- HAKJ titles.insert( 0x1000848414B4aull, 2 ); //EULA v2- HAKJ
titles.insert( 0x1000848414C4aull, 0x2 ); //regsel titles.insert( 0x1000848414C4aull, 0x2 ); //regsel
titles.insert( 0x1000248414341ull, 4 ); //nigaoeNRv4 - MII titles.insert( 0x1000248414341ull, 4 ); //nigaoeNRv4 - MII
titles.insert( 0x1000248414141ull, 0x1 ); //photov1 titles.insert( 0x1000248414141ull, 0x1 ); //photov1
titles.insert( 0x1000248414241ull, 7 ); //shoppingv7 titles.insert( 0x1000248414241ull, 7 ); //shoppingv7
titles.insert( 0x100024841464aull, 0x7 ); // forcast v7 HAFJ titles.insert( 0x100024841464aull, 0x7 ); // forcast v7 HAFJ
titles.insert( 0x100024841474aull, 0x7 ); // news v7 HAGJ titles.insert( 0x100024841474aull, 0x7 ); // news v7 HAGJ
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List30j() QMap< quint64, quint16 > NusDownloader::List30j()
{ {
QMap< quint64, quint16 > titles = List22j(); QMap< quint64, quint16 > titles = List22j();
titles.insert( 0x100000002ull, 224 ); //sys menu titles.insert( 0x100000002ull, 224 ); //sys menu
titles.insert( 0x10000001eull, 1039 ); //30v1039 titles.insert( 0x10000001eull, 1039 ); //30v1039
titles.insert( 0x10000001full, 1039 ); //31v1039 titles.insert( 0x10000001full, 1039 ); //31v1039
titles.insert( 0x100000021ull, 1040 ); //33v1040 titles.insert( 0x100000021ull, 1040 ); //33v1040
titles.insert( 0x100000023ull, 1040 ); //35v1040 titles.insert( 0x100000023ull, 1040 ); //35v1040
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List31j() QMap< quint64, quint16 > NusDownloader::List31j()
{ {
QMap< quint64, quint16 > titles = List30j(); QMap< quint64, quint16 > titles = List30j();
titles.insert( 0x100000002ull, 256 ); //sys menu titles.insert( 0x100000002ull, 256 ); //sys menu
titles.insert( 0x10000000eull, 257 ); // IOS14v257 titles.insert( 0x10000000eull, 257 ); // IOS14v257
titles.insert( 0x10000001eull, 1040 ); //30v1040 titles.insert( 0x10000001eull, 1040 ); //30v1040
titles.insert( 0x10000001full, 1040 ); //31v1040 titles.insert( 0x10000001full, 1040 ); //31v1040
titles.insert( 0x100000022ull, 1039 ); //34v1039 titles.insert( 0x100000022ull, 1039 ); //34v1039
titles.insert( 0x100000024ull, 1042 ); //36v1042 titles.insert( 0x100000024ull, 1042 ); //36v1042
titles.insert( 0x1000248415941ull, 1 ); //photo2v1 titles.insert( 0x1000248415941ull, 1 ); //photo2v1
return titles; return titles;
} }
@ -661,25 +661,25 @@ QMap< quint64, quint16 > NusDownloader::List31j()
//this may not be correct //this may not be correct
QMap< quint64, quint16 > NusDownloader::List32j() QMap< quint64, quint16 > NusDownloader::List32j()
{ {
QMap< quint64, quint16 > titles = List31j(); QMap< quint64, quint16 > titles = List31j();
titles.insert( 0x100000002ull, 288 ); //sys menu titles.insert( 0x100000002ull, 288 ); //sys menu
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List33j() QMap< quint64, quint16 > NusDownloader::List33j()
{ {
QMap< quint64, quint16 > titles = List32j(); QMap< quint64, quint16 > titles = List32j();
titles.insert( 0x100000002ull, 352 ); //sys menu titles.insert( 0x100000002ull, 352 ); //sys menu
titles.insert( 0x10000001eull, 2576 ); //30v2576 titles.insert( 0x10000001eull, 2576 ); //30v2576
titles.insert( 0x10000001full, 2576 ); //31v2576 titles.insert( 0x10000001full, 2576 ); //31v2576
titles.insert( 0x100000025ull, 2070 ); //37v2070 titles.insert( 0x100000025ull, 2070 ); //37v2070
titles.insert( 0x100000100ull, 0x4 ); //bcv4 titles.insert( 0x100000100ull, 0x4 ); //bcv4
titles.insert( 0x1000248415941ull, 0x1 ); //photo2v1 titles.insert( 0x1000248415941ull, 0x1 ); //photo2v1
titles.insert( 0x1000848414B4aull, 2 ); //EULA - HAKJ titles.insert( 0x1000848414B4aull, 2 ); //EULA - HAKJ
titles.insert( 0x100000101ull, 8 ); //miosv8 titles.insert( 0x100000101ull, 8 ); //miosv8
titles.insert( 0x1000248414341ull, 5 ); //nigaoeNRv5 - MII titles.insert( 0x1000248414341ull, 5 ); //nigaoeNRv5 - MII
titles.insert( 0x1000248414241ull, 10 ); //shoppingv10 titles.insert( 0x1000248414241ull, 10 ); //shoppingv10
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List34j() QMap< quint64, quint16 > NusDownloader::List34j()
@ -848,107 +848,107 @@ QMap< quint64, quint16 > NusDownloader::List43j()
QMap< quint64, quint16 > NusDownloader::List20e() QMap< quint64, quint16 > NusDownloader::List20e()
{ {
QMap< quint64, quint16 > titles; QMap< quint64, quint16 > titles;
//titles.insert( 0x100000001ull, 2 ); //boot2 //titles.insert( 0x100000001ull, 2 ); //boot2
titles.insert( 0x100000002ull, 130 ); //sys menu titles.insert( 0x100000002ull, 130 ); //sys menu
titles.insert( 0x10000000bull, 10 ); //11v10 titles.insert( 0x10000000bull, 10 ); //11v10
titles.insert( 0x10000000cull, 6 ); //12v6 titles.insert( 0x10000000cull, 6 ); //12v6
titles.insert( 0x10000000dull, 10 ); //13v10 titles.insert( 0x10000000dull, 10 ); //13v10
titles.insert( 0x10000000full, 257 ); //15v257 titles.insert( 0x10000000full, 257 ); //15v257
titles.insert( 0x100000011ull, 512 ); //17v512 titles.insert( 0x100000011ull, 512 ); //17v512
titles.insert( 0x100000100ull, 0x2 ); //bcv2 titles.insert( 0x100000100ull, 0x2 ); //bcv2
titles.insert( 0x100000101ull, 0x4 ); //miosv4 titles.insert( 0x100000101ull, 0x4 ); //miosv4
titles.insert( 0x1000848414B50ull, 0 ); //EULA - HAKP titles.insert( 0x1000848414B50ull, 0 ); //EULA - HAKP
titles.insert( 0x1000848414C50ull, 1 ); //regsel //region select isnt in the paper mario update, but putting it here just to be safe titles.insert( 0x1000848414C50ull, 1 ); //regsel //region select isnt in the paper mario update, but putting it here just to be safe
titles.insert( 0x1000248414341ull, 0x2 ); //nigaoeNRv2 - MII titles.insert( 0x1000248414341ull, 0x2 ); //nigaoeNRv2 - MII
titles.insert( 0x1000248414141ull, 0x1 ); //photov1 titles.insert( 0x1000248414141ull, 0x1 ); //photov1
titles.insert( 0x1000248414241ull, 0x4 ); //shoppingv4 titles.insert( 0x1000248414241ull, 0x4 ); //shoppingv4
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List21e() QMap< quint64, quint16 > NusDownloader::List21e()
{ {
QMap< quint64, quint16 > titles = List20e(); QMap< quint64, quint16 > titles = List20e();
titles.insert( 0x100000002ull, 162 ); //sys menu titles.insert( 0x100000002ull, 162 ); //sys menu
titles.insert( 0x100000014ull, 12 ); //20v12 titles.insert( 0x100000014ull, 12 ); //20v12
titles.insert( 0x100000015ull, 514 ); //21v514 titles.insert( 0x100000015ull, 514 ); //21v514
titles.insert( 0x100000016ull, 777 ); //22v772 //should be getting v772 but it isnt available on NUS, get 777 instead titles.insert( 0x100000016ull, 777 ); //22v772 //should be getting v772 but it isnt available on NUS, get 777 instead
titles.insert( 0x10000001cull, 1292 ); //28v1228 //should be getting v1288 but it isnt on NUS titles.insert( 0x10000001cull, 1292 ); //28v1228 //should be getting v1288 but it isnt on NUS
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List22e() QMap< quint64, quint16 > NusDownloader::List22e()
{ {
QMap< quint64, quint16 > titles = List21e(); QMap< quint64, quint16 > titles = List21e();
titles.insert( 0x100000002ull, 193 ); //sys menu titles.insert( 0x100000002ull, 193 ); //sys menu
titles.insert( 0x1000248414645ull, 6 ); //forecast titles.insert( 0x1000248414650ull, 6 ); //forecast
titles.insert( 0x1000248414745ull, 6 ); //news_USv6 titles.insert( 0x1000248414750ull, 6 ); //news_USv6
titles.insert( 0x1000248414341ull, 3 ); //nigaoeNRv3 - MII titles.insert( 0x1000248414341ull, 3 ); //nigaoeNRv3 - MII
titles.insert( 0x1000248414241ull, 6 ); //shoppingv6 titles.insert( 0x1000248414241ull, 6 ); //shoppingv6
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List30e() QMap< quint64, quint16 > NusDownloader::List30e()
{ {
QMap< quint64, quint16 > titles = List22e(); QMap< quint64, quint16 > titles = List22e();
titles.insert( 0x100000002ull, 226 ); //sys menu titles.insert( 0x100000002ull, 226 ); //sys menu
titles.insert( 0x10000001eull, 1039 ); //30v1039 titles.insert( 0x10000001eull, 1039 ); //30v1039
titles.insert( 0x10000001full, 1039 ); //31v1039 titles.insert( 0x10000001full, 1039 ); //31v1039
titles.insert( 0x100000101ull, 5 ); //miosv5 titles.insert( 0x100000101ull, 5 ); //miosv5
titles.insert( 0x1000848414B50ull, 2 ); //EULA - HAKP titles.insert( 0x1000848414B50ull, 2 ); //EULA - HAKP
titles.insert( 0x1000248414650ull, 0x7 ); // forcast v7 HAFP titles.insert( 0x1000248414650ull, 0x7 ); // forcast v7 HAFP
titles.insert( 0x1000248414750ull, 0x7 ); // news v7 HAGP titles.insert( 0x1000248414750ull, 0x7 ); // news v7 HAGP
titles.insert( 0x1000248414341ull, 4 ); //nigaoeNRv4 - MII titles.insert( 0x1000248414341ull, 4 ); //nigaoeNRv4 - MII
titles.insert( 0x1000248414241ull, 7 ); //shoppingv7 titles.insert( 0x1000248414241ull, 7 ); //shoppingv7
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List31e() QMap< quint64, quint16 > NusDownloader::List31e()
{ {
QMap< quint64, quint16 > titles = List30e(); QMap< quint64, quint16 > titles = List30e();
//( from rayman raving rabbids tv party ) //( from rayman raving rabbids tv party )
//titles.insert( 0x10000000eull, 257 );//14v257 //dunno where this one came from? //titles.insert( 0x10000000eull, 257 );//14v257 //dunno where this one came from?
titles.insert( 0x10000001eull, 1040 );//30v1040 titles.insert( 0x10000001eull, 1040 );//30v1040
titles.insert( 0x10000001full, 1040 );//31v1040 titles.insert( 0x10000001full, 1040 );//31v1040
titles.insert( 0x100000021ull, 1040 );//33v1040 titles.insert( 0x100000021ull, 1040 );//33v1040
titles.insert( 0x100000022ull, 1039 );//34v1039 titles.insert( 0x100000022ull, 1039 );//34v1039
titles.insert( 0x100000023ull, 1040 );//35v1040 titles.insert( 0x100000023ull, 1040 );//35v1040
titles.insert( 0x100000024ull, 1042 );//36v1042 titles.insert( 0x100000024ull, 1042 );//36v1042
titles.insert( 0x100000002ull, 258 );//sys menu titles.insert( 0x100000002ull, 258 );//sys menu
titles.insert( 0x1000248415941ull, 0x2 ); // photo channel 1.1 HAYA titles.insert( 0x1000248415941ull, 0x2 ); // photo channel 1.1 HAYA
return titles; return titles;
} }
//TODO - if anybody has a wii on ORIGINAL 3.2e firmware, i would like to get the real listing from them. //TODO - if anybody has a wii on ORIGINAL 3.2e firmware, i would like to get the real listing from them.
//this may not be correct //this may not be correct
QMap< quint64, quint16 > NusDownloader::List32e() QMap< quint64, quint16 > NusDownloader::List32e()
{ {
QMap< quint64, quint16 > titles = List31e(); QMap< quint64, quint16 > titles = List31e();
titles.insert( 0x100000002ull, 290 );//sys menu titles.insert( 0x100000002ull, 290 );//sys menu
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List33e() QMap< quint64, quint16 > NusDownloader::List33e()
{ {
QMap< quint64, quint16 > titles = List32e(); QMap< quint64, quint16 > titles = List32e();
titles.insert( 0x100000002ull, 354 );//RVL-WiiSystemmenu-v354.wad titles.insert( 0x100000002ull, 354 );//RVL-WiiSystemmenu-v354.wad
titles.insert( 0x10000000bull, 10 );//11v10 titles.insert( 0x10000000bull, 10 );//11v10
titles.insert( 0x10000000cull, 6 );//12v6 titles.insert( 0x10000000cull, 6 );//12v6
titles.insert( 0x10000000dull, 10 );//13v10 titles.insert( 0x10000000dull, 10 );//13v10
titles.insert( 0x10000000eull, 262 );//14v262 - should actually be 14v257 but that version isnt available on NUS titles.insert( 0x10000000eull, 262 );//14v262 - should actually be 14v257 but that version isnt available on NUS
titles.insert( 0x10000000full, 257 );//15v257 titles.insert( 0x10000000full, 257 );//15v257
titles.insert( 0x100000011ull, 512 );//17v512 titles.insert( 0x100000011ull, 512 );//17v512
titles.insert( 0x100000014ull, 12 );//20v12 titles.insert( 0x100000014ull, 12 );//20v12
titles.insert( 0x100000015ull, 514 );//21v514 titles.insert( 0x100000015ull, 514 );//21v514
titles.insert( 0x100000016ull, 777 );//22v777 - should be v772 titles.insert( 0x100000016ull, 777 );//22v777 - should be v772
titles.insert( 0x10000001cull, 1292 );//28v1292 - should be 1228 titles.insert( 0x10000001cull, 1292 );//28v1292 - should be 1228
titles.insert( 0x10000001eull, 2576 );//30v2576 titles.insert( 0x10000001eull, 2576 );//30v2576
titles.insert( 0x10000001full, 2576 );//31v2576 titles.insert( 0x10000001full, 2576 );//31v2576
titles.insert( 0x100000025ull, 2070 );//37v2070 titles.insert( 0x100000025ull, 2070 );//37v2070
titles.insert( 0x100000100ull, 4 );//bcv4 titles.insert( 0x100000100ull, 4 );//bcv4
titles.insert( 0x100000101ull, 8 );//miosv8 titles.insert( 0x100000101ull, 8 );//miosv8
titles.insert( 0x1000248414341ull, 5 );//nigaoeNRv5 - MII titles.insert( 0x1000248414341ull, 5 );//nigaoeNRv5 - MII
titles.insert( 0x1000248414241ull, 10 );//shoppingv10 titles.insert( 0x1000248414241ull, 10 );//shoppingv10
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List34e() QMap< quint64, quint16 > NusDownloader::List34e()
@ -1116,52 +1116,52 @@ QMap< quint64, quint16 > NusDownloader::List20u()
{ {
QMap< quint64, quint16 > titles; QMap< quint64, quint16 > titles;
//( from paper mario ) //( from paper mario )
//titles.insert( 0x100000001ull, 2 ); //boot2 //titles.insert( 0x100000001ull, 2 ); //boot2
titles.insert( 0x100000002ull, 97 ); //sys menu titles.insert( 0x100000002ull, 97 ); //sys menu
titles.insert( 0x10000000bull, 10 ); //11v10 titles.insert( 0x10000000bull, 10 ); //11v10
titles.insert( 0x10000000cull, 6 ); //12v6 titles.insert( 0x10000000cull, 6 ); //12v6
titles.insert( 0x10000000dull, 10 ); //13v10 titles.insert( 0x10000000dull, 10 ); //13v10
titles.insert( 0x10000000full, 257 ); //15v257 titles.insert( 0x10000000full, 257 ); //15v257
titles.insert( 0x100000011ull, 512 ); //17v512 titles.insert( 0x100000011ull, 512 ); //17v512
titles.insert( 0x100000100ull, 0x2 ); //bcv2 titles.insert( 0x100000100ull, 0x2 ); //bcv2
titles.insert( 0x100000101ull, 0x4 ); //miosv4 titles.insert( 0x100000101ull, 0x4 ); //miosv4
titles.insert( 0x1000848414B45ull, 0 ); //EULA - HAKE titles.insert( 0x1000848414B45ull, 0 ); //EULA - HAKE
titles.insert( 0x1000848414C45ull, 1 ); //regsel //region select isnt in the paper mario update, but putting it here just to be safe titles.insert( 0x1000848414C45ull, 1 ); //regsel //region select isnt in the paper mario update, but putting it here just to be safe
titles.insert( 0x1000248414341ull, 0x2 ); //nigaoeNRv2 - MII titles.insert( 0x1000248414341ull, 0x2 ); //nigaoeNRv2 - MII
titles.insert( 0x1000248414141ull, 0x1 ); //photov1 titles.insert( 0x1000248414141ull, 0x1 ); //photov1
titles.insert( 0x1000248414241ull, 0x4 ); //shoppingv4 titles.insert( 0x1000248414241ull, 0x4 ); //shoppingv4
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List22u() QMap< quint64, quint16 > NusDownloader::List22u()
{ {
QMap< quint64, quint16 > titles = List20u(); QMap< quint64, quint16 > titles = List20u();
titles.insert( 0x100000002ull, 193 ); //sys menu titles.insert( 0x100000002ull, 193 ); //sys menu
titles.insert( 0x100000014ull, 12 ); //20v12 titles.insert( 0x100000014ull, 12 ); //20v12
titles.insert( 0x100000015ull, 514 ); //21v514 titles.insert( 0x100000015ull, 514 ); //21v514
titles.insert( 0x100000016ull, 777 ); //22v772 //should be getting v772 but it isnt available on NUS, get 777 instead titles.insert( 0x100000016ull, 777 ); //22v772 //should be getting v772 but it isnt available on NUS, get 777 instead
titles.insert( 0x10000001cull, 1292 ); //28v1228 //should be getting v1288 but it isnt on NUS titles.insert( 0x10000001cull, 1292 ); //28v1228 //should be getting v1288 but it isnt on NUS
titles.insert( 0x1000248414645ull, 6 ); //forecast titles.insert( 0x1000248414645ull, 6 ); //forecast
titles.insert( 0x1000248414745ull, 6 ); //news_USv6 titles.insert( 0x1000248414745ull, 6 ); //news_USv6
titles.insert( 0x1000248414341ull, 3 ); //nigaoeNRv3 - MII titles.insert( 0x1000248414341ull, 3 ); //nigaoeNRv3 - MII
titles.insert( 0x1000248414241ull, 6 ); //shoppingv6 titles.insert( 0x1000248414241ull, 6 ); //shoppingv6
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List30u() QMap< quint64, quint16 > NusDownloader::List30u()
{ {
QMap< quint64, quint16 > titles = List22u(); QMap< quint64, quint16 > titles = List22u();
titles.insert( 0x100000002ull, 225 ); //sys menu titles.insert( 0x100000002ull, 225 ); //sys menu
titles.insert( 0x10000001eull, 1039 ); //30v1039 titles.insert( 0x10000001eull, 1039 ); //30v1039
titles.insert( 0x10000001full, 1039 ); //31v1039 titles.insert( 0x10000001full, 1039 ); //31v1039
titles.insert( 0x100000021ull, 1040 ); //33v1040 titles.insert( 0x100000021ull, 1040 ); //33v1040
titles.insert( 0x100000023ull, 1040 ); //35v1040 titles.insert( 0x100000023ull, 1040 ); //35v1040
titles.insert( 0x100000101ull, 5 ); //miosv5 titles.insert( 0x100000101ull, 5 ); //miosv5
titles.insert( 0x1000848414B45ull, 0x2 ); //EULA - HAKE titles.insert( 0x1000848414B45ull, 0x2 ); //EULA - HAKE
titles.insert( 0x1000248414645ull, 0x7 ); //forecast titles.insert( 0x1000248414645ull, 0x7 ); //forecast
titles.insert( 0x1000248414745ull, 0x7 ); //news_USv7 titles.insert( 0x1000248414745ull, 0x7 ); //news_USv7
titles.insert( 0x1000248414241ull, 7 ); //shoppingv7 titles.insert( 0x1000248414241ull, 7 ); //shoppingv7
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List31u() QMap< quint64, quint16 > NusDownloader::List31u()
@ -1282,41 +1282,41 @@ QMap< quint64, quint16 > NusDownloader::List34u()
QMap< quint64, quint16 > NusDownloader::List40u() QMap< quint64, quint16 > NusDownloader::List40u()
{ {
QMap< quint64, quint16 > titles = List34u(); QMap< quint64, quint16 > titles = List34u();
titles.insert( 0x100000002ull, 0x1a1 ); // sysmenu titles.insert( 0x100000002ull, 0x1a1 ); // sysmenu
titles.insert( 0x100000009ull, 0x209 ); // IOS9 titles.insert( 0x100000009ull, 0x209 ); // IOS9
titles.insert( 0x10000000cull, 0xc ); // IOS12 titles.insert( 0x10000000cull, 0xc ); // IOS12
titles.insert( 0x10000000dull, 0x10 ); // IOS13 titles.insert( 0x10000000dull, 0x10 ); // IOS13
titles.insert( 0x10000000eull, 0x107 ); // IOS14 titles.insert( 0x10000000eull, 0x107 ); // IOS14
titles.insert( 0x10000000full, 0x10a ); // IOS15 titles.insert( 0x10000000full, 0x10a ); // IOS15
titles.insert( 0x100000010ull, 0x200 ); // IOS16 titles.insert( 0x100000010ull, 0x200 ); // IOS16
titles.insert( 0x100000011ull, 0x206 ); // IOS17 titles.insert( 0x100000011ull, 0x206 ); // IOS17
titles.insert( 0x100000015ull, 0x20d ); // IOS21 titles.insert( 0x100000015ull, 0x20d ); // IOS21
titles.insert( 0x100000016ull, 0x30c ); // IOS22 titles.insert( 0x100000016ull, 0x30c ); // IOS22
titles.insert( 0x10000001cull, 0x50d ); // IOS28 titles.insert( 0x10000001cull, 0x50d ); // IOS28
titles.insert( 0x10000001full, 0xc14 ); // IOS31 titles.insert( 0x10000001full, 0xc14 ); // IOS31
titles.insert( 0x100000021ull, 0xb12 ); // IOS33 titles.insert( 0x100000021ull, 0xb12 ); // IOS33
titles.insert( 0x100000022ull, 0xc13 ); // IOS34 titles.insert( 0x100000022ull, 0xc13 ); // IOS34
titles.insert( 0x100000023ull, 0xc14 ); // IOS35 titles.insert( 0x100000023ull, 0xc14 ); // IOS35
titles.insert( 0x100000024ull, 0xc16 ); // IOS36 titles.insert( 0x100000024ull, 0xc16 ); // IOS36
titles.insert( 0x100000025ull, 0xe1c ); // IOS37 titles.insert( 0x100000025ull, 0xe1c ); // IOS37
titles.insert( 0x100000026ull, 0xe1a ); // IOS38 titles.insert( 0x100000026ull, 0xe1a ); // IOS38
titles.insert( 0x100000032ull, 0x1400 ); // IOS50 titles.insert( 0x100000032ull, 0x1400 ); // IOS50
titles.insert( 0x100000033ull, 0x1300 ); // IOS51 titles.insert( 0x100000033ull, 0x1300 ); // IOS51
titles.insert( 0x100000035ull, 0x141d ); // IOS53 titles.insert( 0x100000035ull, 0x141d ); // IOS53
titles.insert( 0x100000037ull, 0x141d ); // IOS55 titles.insert( 0x100000037ull, 0x141d ); // IOS55
titles.insert( 0x10000003cull, 0x181e ); // IOS60 titles.insert( 0x10000003cull, 0x181e ); // IOS60
titles.insert( 0x10000003dull, 0x131a ); // IOS61 titles.insert( 0x10000003dull, 0x131a ); // IOS61
titles.insert( 0x1000000feull, 0x3 ); // IOS254 titles.insert( 0x1000000feull, 0x3 ); // IOS254
titles.insert( 0x1000248414241ull, 0x10 ); // Channel HABA titles.insert( 0x1000248414241ull, 0x10 ); // Channel HABA
titles.insert( 0x1000248415941ull, 0x3 ); // Channel HAYA titles.insert( 0x1000248415941ull, 0x3 ); // Channel HAYA
return titles; return titles;
} }
QMap< quint64, quint16 > NusDownloader::List41u() QMap< quint64, quint16 > NusDownloader::List41u()
{ {
QMap< quint64, quint16 > titles = List40u(); QMap< quint64, quint16 > titles = List40u();
titles.insert( 0x100000002ull, 0x1c1 ); // sysmenu titles.insert( 0x100000002ull, 0x1c1 ); // sysmenu
return titles; return titles;
} }