Minor optimizations
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
Dmitry Isaenko 2025-02-19 23:33:15 +03:00
parent 6f04213307
commit 9425a43464
2 changed files with 21 additions and 20 deletions

View file

@ -140,7 +140,6 @@ public class System2Provider extends ExportAble {
if (kernelMap != null)
return;
}
System.out.println();
}
else {
for (int i = 0; i < 0x1000; i += 4) {

View file

@ -20,7 +20,11 @@ import java.util.Optional;
import java.util.stream.Collectors;
public class ExtractDecompressedKip1Test extends LKonTest {
@Disabled
private static final String SYSTEM2_FAT_NCA_PATTERN = "0100000000000819";
private static final String SYSTEM2_EXFAT_NCA_PATTERN = "010000000000081b";
//@Disabled
@DisplayName("Extract FS.kip1")
@Test
void testSystem2() throws Exception{
@ -42,28 +46,22 @@ public class ExtractDecompressedKip1Test extends LKonTest {
}
void iterate(String pathToFirmware, String exportFat, String exportExFat) throws Exception{
//try {
String[] ncaFileNames = collectNcaFileNames(pathToFirmware);
List<NCAProvider> ncaProviders = makeNcaProviders(ncaFileNames, pathToFirmware);
String[] ncaFileNames = collectNcaFileNames(pathToFirmware);
List<NCAProvider> ncaProviders = makeNcaProviders(ncaFileNames, pathToFirmware);
NCAProvider system2FatNcaProvider = null;
NCAProvider system2ExFatNcaProvider = null;
NCAProvider system2FatNcaProvider = ncaProviders.stream()
.filter(ncaProv -> is(ncaProv.getTitleId(), SYSTEM2_FAT_NCA_PATTERN))
.findFirst().get();
for (NCAProvider ncaProvider : ncaProviders) {
String titleId = Converter.byteArrToHexStringAsLE(ncaProvider.getTitleId());
if (titleId.equals("0100000000000819"))
system2FatNcaProvider = ncaProvider;
else if (titleId.equals("010000000000081b"))
system2ExFatNcaProvider = ncaProvider;
}
NCAProvider system2ExFatNcaProvider = ncaProviders.stream()
.filter(ncaProv -> is(ncaProv.getTitleId(), SYSTEM2_EXFAT_NCA_PATTERN))
.findFirst().get();
Assertions.assertNotNull(system2FatNcaProvider);
Assertions.assertNotNull(system2ExFatNcaProvider);
System.out.println("\nFAT " + system2FatNcaProvider.getFile().getName() + "\t" + exportFat +
"\nExFAT " + system2ExFatNcaProvider.getFile().getName() + "\t" + exportExFat);
System.out.println("\nFAT " + system2FatNcaProvider.getFile().getName() + "\t" + exportFat +
"\nExFAT " + system2ExFatNcaProvider.getFile().getName() + "\t" + exportExFat);
testExportedFiles(system2FatNcaProvider, exportFat);
testExportedFiles(system2ExFatNcaProvider, exportExFat);
testExportedFiles(system2FatNcaProvider, exportFat);
testExportedFiles(system2ExFatNcaProvider, exportExFat);
//}
//catch (Exception ignore){}
}
@ -116,4 +114,8 @@ public class ExtractDecompressedKip1Test extends LKonTest {
System.out.printf("Exported: %b%n%s%n",
kip1Providers.get().exportAsDecompressed(exportIntoFolder), exportIntoFolder);
}
protected boolean is(byte[] byteArray, String pattern){
return Converter.byteArrToHexStringAsLE(byteArray).equals(pattern);
}
}