mirror of
https://github.com/ran-j/PS2Recomp.git
synced 2026-10-01 10:26:07 -04:00
Feature/runtime ecosystem refactor (#107)
* feat: remove memory and pad from stub section * feat: add support for resume entry targets in CodeGenerator (this allow jumps in address outside function) feat: refactor entry point discovery one more try to reduce big generated file * feat: optmizations for release build * feat: remove unused file * feat: added some test cases for code gen * feat: added log macro and remove win specific code * feat: refactor runtime folder structure feat: added reset sound driver RPC state and compatibility layout feat: rename and added new test feat: update RPC calls to use defined constants feat: added more PSMC(16, 32) feat: change cd read to try find the asset ignoring case sensitive fix: fix some render problems feat: add logs on pad feat: added more RPC handles * feat: added game override for code veronica * feat: apply vita patch * feat: flags to disable build * feat: fix merges feat: break a lot of tests * feat: better throw error on empty cd path feat: remove recompiler unusde function feat: apply missing patch * feat: gamedp is now part of lib feat: missing file * feat: small cleanup * feat: missing vita changes * feat: fix more merge * feat: fix tests * feat: last missing feature * feat: added missing import * feat: rename test local functions * feat: init syscall on ps2 list * feat: added DMA helpers * feat: faster builds feat: more implement for darkcloud * feat: back missing file * feat: added missing includes * feat: remove test * feat: missing include * feat: read register funtion * feat: build fix * feat: force exit on detach thread
This commit is contained in:
@@ -52,8 +52,13 @@ public class ExportPS2Functions extends GhidraScript {
|
||||
"cmd_sem_init"
|
||||
));
|
||||
|
||||
private static final Set<String> KNOWN_LOCAL_HELPER_NAMES = new HashSet<>(Arrays.asList(
|
||||
"memcpy2",
|
||||
"_memcpy2"
|
||||
));
|
||||
|
||||
private static final Set<String> PS2_API_PREFIXES = new HashSet<>(Arrays.asList(
|
||||
"sce", "sif", "pad", "gs", "dma", "iop", "vif", "spu", "mc", "libc"
|
||||
"sce", "sif", "gs", "dma", "iop", "vif", "spu", "mc", "libc"
|
||||
));
|
||||
|
||||
private static final Set<String> KNOWN_STDLIB_NAMES = new HashSet<>(Arrays.asList(
|
||||
@@ -61,7 +66,7 @@ public class ExportPS2Functions extends GhidraScript {
|
||||
"puts", "putchar", "getchar", "gets", "fgets", "fputs", "scanf", "fscanf", "sscanf",
|
||||
"sprint", "sbprintf",
|
||||
"malloc", "free", "calloc", "realloc", "aligned_alloc", "posix_memalign",
|
||||
"memcpy", "memset", "memmove", "memcmp", "memcpy2", "memchr", "bcopy", "bzero",
|
||||
"memcpy", "memset", "memmove", "memcmp", "memchr", "bcopy", "bzero",
|
||||
"strcpy", "strncpy", "strcat", "strncat", "strcmp", "strncmp", "strlen", "strstr",
|
||||
"strchr", "strrchr", "strdup", "strtok", "strtok_r", "strerror",
|
||||
"fopen", "fclose", "fread", "fwrite", "fseek", "ftell", "rewind", "fflush",
|
||||
@@ -237,7 +242,14 @@ public class ExportPS2Functions extends GhidraScript {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (KNOWN_LOCAL_HELPER_NAMES.contains(name)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
String normalized = normalizeOptionalLeadingUnderscore(name);
|
||||
if (KNOWN_LOCAL_HELPER_NAMES.contains(normalized)) {
|
||||
return false;
|
||||
}
|
||||
if (KERNEL_RUNTIME_NAME_PATTERN.matcher(normalized).matches()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user