From cd5f83215d34b3f4b23ca9f5b5b4cf6db3decee0 Mon Sep 17 00:00:00 2001 From: SolDev69 Date: Sun, 31 Dec 2023 22:19:51 -0500 Subject: [PATCH] UMP stage 1 part 2 hopefully that should be all? part 3 might be needed --- .../net/kdt/pojavlaunch/utils/JREUtils.java | 6 +++-- app_pojavlauncher/src/main/jni/egl_bridge.c | 23 +++---------------- .../src/main/res/values/strings.xml | 2 +- 3 files changed, 8 insertions(+), 23 deletions(-) diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/JREUtils.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/JREUtils.java index e3a35b90ec..eeb795add2 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/JREUtils.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/utils/JREUtils.java @@ -455,8 +455,10 @@ public static String loadGraphicsLibrary(){ renderLibrary = "libgl4es_114.so"; break; case "vgpu": renderLibrary = "libvgpu.so"; break; - case "malihw_panfrost": renderLibrary = "libOSMesa_pan.so"; break; - case "vulkan_zink_legacy": renderLibrary = "libOSMesa_znL.so"; break; + case "malihw_panfrost": + renderLibrary = "libOSMesa_pan.so"; break; + case "vulkan_zink_legacy": + renderLibrary = "libOSMesa_znL.so"; break; case "vulkan_zink": case "swrast": case "virgl": diff --git a/app_pojavlauncher/src/main/jni/egl_bridge.c b/app_pojavlauncher/src/main/jni/egl_bridge.c index 90d73e74c6..15d5e4e857 100644 --- a/app_pojavlauncher/src/main/jni/egl_bridge.c +++ b/app_pojavlauncher/src/main/jni/egl_bridge.c @@ -82,24 +82,6 @@ EXTERNAL_API void pojavTerminate() { } } -bool loadSymbolsVirGL() { - pojav_environ->config_renderer = RENDERER_VK_ZINK; - //loadSymbols(); TODO: reimplement - - char* fileName = calloc(1, 1024); - - sprintf(fileName, "%s/libvirgl_test_server.so", getenv("POJAV_NATIVEDIR")); - void *handle = dlopen(fileName, RTLD_LAZY); - printf("VirGL: libvirgl_test_server = %p\n", handle); - if (!handle) { - printf("VirGL: %s\n", dlerror()); - } - vtest_main_p = dlsym(handle, "vtest_main"); - vtest_swap_buffers_p = dlsym(handle, "vtest_swap_buffers"); - - free(fileName); -} - JNIEXPORT void JNICALL Java_net_kdt_pojavlaunch_utils_JREUtils_setupBridgeWindow(JNIEnv* env, ABI_COMPAT jclass clazz, jobject surface) { pojav_environ->pojavWindow = ANativeWindow_fromSurface(env, surface); if(br_setup_window != NULL) br_setup_window(); @@ -222,11 +204,11 @@ int pojavInitOpenGL() { if(strcmp(getenv("OSMESA_NO_FLUSH_FRONTBUFFER"),"1") == 0) { printf("VirGL: OSMesa buffer flush is DISABLED!\n"); } - loadSymbolsVirGL(); + set_osm_bridge_tbl(); } else if (strncmp("opengles", renderer, 8) == 0) { pojav_environ->config_renderer = RENDERER_GL4ES; set_gl_bridge_tbl(); - } else if (strcmp(renderer, "vulkan_zink") == 0) { + } else if (strcmp(renderer, "vulkan_zink") == 0 || strcmp(rendersd, "vulkan_zink_legacy") == 0) { pojav_environ->config_renderer = RENDERER_VK_ZINK; load_vulkan(); setenv("MESA_LOADER_DRIVER_OVERRIDE","zink",1); @@ -242,6 +224,7 @@ int pojavInitOpenGL() { setenv("GALLIUM_DRIVER", "freedreno", 1); setenv("MESA_LOADER_DRIVER_OVERRIDE", "kgsl", 1); set_osm_bridge_tbl(); + } else if } if(br_init()) { br_setup_window(); diff --git a/app_pojavlauncher/src/main/res/values/strings.xml b/app_pojavlauncher/src/main/res/values/strings.xml index 266279e215..bed632663f 100644 --- a/app_pojavlauncher/src/main/res/values/strings.xml +++ b/app_pojavlauncher/src/main/res/values/strings.xml @@ -68,7 +68,7 @@ Zink (Vulkan) - (all versions, mid) ANGLE (Vulkan) - (1.17+ only, fast) Updated ANGLE (Vulkan, NOT IMPLEMENTED!) - (1.17+ only, mid) - Panfrost (Mali) - (all versions, mid) + Panfrost (Mali Gx10 only) - (all versions, mid) Freedreno (Adreno) - (all versions, mid) softpipe (CPU) - (all versions, very slow)