cout << "Uninstalling System DSiWare:\n";
vector<std::pair<std::string,u64>> Breakables = {
std::make_pair("Whitelist",0x0004800f484e4841), // Whitelist
std::make_pair("Version Data",0x0004800f484e4C41), // Version Data
std::make_pair("DS Internet",0x0004800542383841), // DS Internet
};
if (isN3ds) {
Breakables.push_back(std::make_pair("TWL Firm (n3DS)",0x0004013820000102)); // twlfirm n3ds
}else{
Breakables.push_back(std::make_pair("TWL Firm (o3DS)",0x0004013800000102)); // twlfirm o3ds
}
if (region==4 || region==255) {
Breakables.push_back(std::make_pair("DS Download Play (CHN)",0x00048005484E4443)); // DS Dlp
}else if (region==5 || region==255) {
Breakables.push_back(std::make_pair("DS Download Play (KOR)",0x00048005484E444B)); // DS Dlp
}else if(region != 4 && region != 5){
Breakables.push_back(std::make_pair("DS Download Play",0x00048005484E4441)); // DS Dlp
}
for (vector<std::pair<std::string,u64>>::iterator title=Breakables.begin();title != Breakables.end(); ++title) {
cout << "Uninstalling " << (*title).first << "\t";
if (R_FAILED(AM_DeleteTitle(MEDIATYPE_NAND, (*title).second))) {
cout << "Failed\n";
}else{
cout << "Success\n";
}
}