Ported some more Apple-related fixes from PCem.
This commit is contained in:
18
src/86box.c
18
src/86box.c
@@ -26,6 +26,13 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <wchar.h>
|
#include <wchar.h>
|
||||||
|
#ifdef __APPLE__
|
||||||
|
#include <string.h>
|
||||||
|
#include <dispatch/dispatch.h>
|
||||||
|
#ifdef __aarch64__
|
||||||
|
#include <pthread.h>
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#define HAVE_STDARG_H
|
#define HAVE_STDARG_H
|
||||||
#include <86box/86box.h>
|
#include <86box/86box.h>
|
||||||
@@ -780,7 +787,13 @@ pc_init_modules(void)
|
|||||||
mem_init();
|
mem_init();
|
||||||
|
|
||||||
#ifdef USE_DYNAREC
|
#ifdef USE_DYNAREC
|
||||||
|
#if defined(__APPLE__) && defined(__aarch64__)
|
||||||
|
pthread_jit_write_protect_np(0);
|
||||||
|
#endif
|
||||||
codegen_init();
|
codegen_init();
|
||||||
|
#if defined(__APPLE__) && defined(__aarch64__)
|
||||||
|
pthread_jit_write_protect_np(1);
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
keyboard_init();
|
keyboard_init();
|
||||||
@@ -1104,7 +1117,12 @@ pc_run(void)
|
|||||||
|
|
||||||
if (title_update) {
|
if (title_update) {
|
||||||
swprintf(temp, sizeof_w(temp), mouse_msg[!!mouse_capture], fps);
|
swprintf(temp, sizeof_w(temp), mouse_msg[!!mouse_capture], fps);
|
||||||
|
#ifdef __APPLE__
|
||||||
|
/* Needed due to modifying the UI on the non-main thread is a big no-no. */
|
||||||
|
dispatch_async_f(dispatch_get_main_queue(), strdup(temp), _ui_window_title);
|
||||||
|
#else
|
||||||
ui_window_title(temp);
|
ui_window_title(temp);
|
||||||
|
#endif
|
||||||
title_update = 0;
|
title_update = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,9 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#if defined(__APPLE__) && defined(__aarch64__)
|
||||||
|
#include <pthread.h>
|
||||||
|
#endif
|
||||||
#include <wchar.h>
|
#include <wchar.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#ifndef INFINITY
|
#ifndef INFINITY
|
||||||
|
Reference in New Issue
Block a user