Some slight adjustment to DynablocAge and steam/heroic settings

This commit is contained in:
ptitSeb 2023-07-09 10:37:18 +02:00
parent 2420f9ffdd
commit 8153391dd7
4 changed files with 17 additions and 13 deletions

View File

@ -549,14 +549,16 @@ uintptr_t AllocDynarecMap(size_t size, size_t age)
while(sub && (uintptr_t)sub<end) {
blockmark_t* n = NEXT_BLOCK(sub);
dynablock_t* db = NULL;
if(sub->next.fill)
db = *(dynablock_t**)((uintptr_t)sub+sizeof(blockmark_t));
if(n->next.fill)
db = *(dynablock_t**)((uintptr_t)n+sizeof(blockmark_t));
if(db) {
size_t new_age = AgeDynablock(db, age);
if(!new_age) // db has been removed
n = sub; // go back 1 step
else if(new_age<newage || !newage)
newage = new_age;
}
sub = n;
size_t new_age = db?AgeDynablock(db, age):age;
if(!new_age)
sub = (blockmark_t*)list->chunks[i].block;
else if(new_age<newage || !newage)
newage = new_age;
}
list->minage[i] = newage;
}

View File

@ -125,7 +125,7 @@ size_t AgeDynablock(dynablock_t* db, size_t age)
}
return db->age;
}
return age;
return 0;
}

View File

@ -38,6 +38,8 @@ static const char default_rcfile[] =
"[heroic]\n"
"BOX64_NOSANDBOX=1\n"
"BOX64_MALLOC_HACK=2\n"
"BOX64_DYNAREC_BIGBLOCK=0\n"
"BOX64_DYNAREC8AGE=4096\n"
"\n"
"[LotCG.x86_64]\n"
"BOX64_DYNAREC_FASTROUND=0\n"
@ -55,7 +57,7 @@ static const char default_rcfile[] =
"BOX64_NOSANDBOX=1\n"
"BOX64_MALLOC_HACK=2\n"
"BOX64_LOG=0\n"
"BOX64_DYNAREC_BIGBLOCK=2\n"
"BOX64_DYNAREC_BIGBLOCK=1\n"
"BOX64_DYNAREC8AGE=4096\n"
"\n"
"[steam-runtime-check-requirements]\n"

View File

@ -49,8 +49,8 @@ BOX64_DYNAREC_FASTROUND=0
[heroic]
BOX64_NOSANDBOX=1
BOX64_MALLOC_HACK=2
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_AGE=2048
BOX64_DYNAREC_BIGBLOCK=0
BOX64_DYNAREC_AGE=4096
[LotCG.x86_64]
BOX64_DYNAREC_FASTROUND=0
@ -89,8 +89,8 @@ BOX64_EMULATED_LIBS=libSDL2-2.0.so.0:libSDL2_ttf-2.0.so.0
BOX64_NOSANDBOX=1
BOX64_LOG=0
BOX64_MALLOC_HACK=2
BOX64_DYNAREC_BIGBLOCK=2
BOX64_DYNAREC_AGE=2048
BOX64_DYNAREC_BIGBLOCK=1
BOX64_DYNAREC_AGE=4096
# if steamwebhelper takes too much memory, enable next line to disable it
#BOX64_EXIT=1