Improve slow loading speeds for manager

This commit is contained in:
Cacodemon345
2025-12-28 23:43:04 +06:00
parent 6adcdbe68d
commit 909e893f4d
3 changed files with 20 additions and 7 deletions

View File

@@ -392,6 +392,7 @@ extern const char * machine_getname_ex(int m);
extern const char * machine_get_internal_name(void);
extern const char * machine_get_nvr_name(void);
extern int machine_get_machine_from_internal_name(const char *s);
extern int machine_get_machine_from_internal_name_ex(const char *s); /* returns -1 if internal name does not exist. */
extern void machine_init(void);
#ifdef EMU_DEVICE_H
extern const device_t *machine_get_kbc_device(int m);

View File

@@ -20709,6 +20709,21 @@ machine_get_machine_from_internal_name(const char *s)
return 0;
}
int
machine_get_machine_from_internal_name_ex(const char *s)
{
int c = 0;
while (machines[c].init != NULL) {
if (!strcmp(machines[c].internal_name, s))
return c;
c++;
}
return -1;
}
int
machine_has_mouse(void)
{

View File

@@ -521,14 +521,11 @@ VMManagerSystem::setupVars()
auto machine_name = QString();
int i = 0;
int ram_granularity = 0;
int ci = machine_get_machine_from_internal_name_ex(machine_config["machine"].toUtf8());
// Machine
for (int ci = 0; ci < machine_count(); ++ci) {
if (machine_available(ci)) {
if (machines[ci].internal_name == machine_config["machine"]) {
machine_name = machines[ci].name;
ram_granularity = machines[ci].ram.step;
}
}
if (ci != -1 && machine_available(ci)) {
machine_name = machines[ci].name;
ram_granularity = machines[ci].ram.step;
}
display_table[VMManager::Display::Name::Machine] = machine_name;