notaz.gp2x.de
/
pcsx_rearmed.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
make: try a different way to detect 32bit neon
[pcsx_rearmed.git]
/
frontend
/
main.c
diff --git
a/frontend/main.c
b/frontend/main.c
index
3440e38
..
e0635ef
100644
(file)
--- a/
frontend/main.c
+++ b/
frontend/main.c
@@
-11,7
+11,7
@@
#include <unistd.h>
#include <signal.h>
#include <time.h>
#include <unistd.h>
#include <signal.h>
#include <time.h>
-#if
ndef _WIN32
+#if
!defined(_WIN32) && !defined(NO_DYLIB)
#include <dlfcn.h>
#endif
#include <dlfcn.h>
#endif
@@
-133,6
+133,7
@@
void emu_set_default_config(void)
Config.icache_emulation = 0;
Config.PsxAuto = 1;
Config.cycle_multiplier = CYCLE_MULT_DEFAULT;
Config.icache_emulation = 0;
Config.PsxAuto = 1;
Config.cycle_multiplier = CYCLE_MULT_DEFAULT;
+ Config.GpuListWalking = -1;
pl_rearmed_cbs.gpu_neon.allow_interlace = 2; // auto
pl_rearmed_cbs.gpu_neon.enhancement_enable =
pl_rearmed_cbs.gpu_neon.allow_interlace = 2; // auto
pl_rearmed_cbs.gpu_neon.enhancement_enable =
@@
-157,16
+158,19
@@
void emu_set_default_config(void)
spu_config.iXAPitch = 0;
spu_config.iVolume = 768;
spu_config.iTempo = 0;
spu_config.iXAPitch = 0;
spu_config.iVolume = 768;
spu_config.iTempo = 0;
- spu_config.iUseThread = 1; // no effect if only 1 core is detected
-#ifdef HAVE_PRE_ARMV7 /* XXX GPH hack */
+ // may cause issues, no effect if only 1 core is detected
+ spu_config.iUseThread = 0;
+#if defined(HAVE_PRE_ARMV7) && !defined(_3DS) /* XXX GPH hack */
spu_config.iUseReverb = 0;
spu_config.iUseInterpolation = 0;
spu_config.iUseReverb = 0;
spu_config.iUseInterpolation = 0;
+#ifndef HAVE_LIBRETRO
spu_config.iTempo = 1;
spu_config.iTempo = 1;
+#endif
#endif
new_dynarec_hacks = 0;
#endif
new_dynarec_hacks = 0;
- in_type
1
= PSE_PAD_TYPE_STANDARD;
- in_type
2
= PSE_PAD_TYPE_STANDARD;
+ in_type
[0]
= PSE_PAD_TYPE_STANDARD;
+ in_type
[1]
= PSE_PAD_TYPE_STANDARD;
}
void do_emu_action(void)
}
void do_emu_action(void)
@@
-313,7
+317,7
@@
static int cdidcmp(const char *id1, const char *id2)
static void parse_cwcheat(void)
{
static void parse_cwcheat(void)
{
- char line[256], buf[
64], name[64
], *p;
+ char line[256], buf[
256], name[256
], *p;
int newcheat = 1;
u32 a, v;
FILE *f;
int newcheat = 1;
u32 a, v;
FILE *f;
@@
-755,10
+759,10
@@
void SysReset() {
// reset can run code, timing must be set
pl_timing_prepare(Config.PsxType);
// reset can run code, timing must be set
pl_timing_prepare(Config.PsxType);
- EmuReset();
-
// hmh core forgets this
CDR_stop();
// hmh core forgets this
CDR_stop();
+
+ EmuReset();
GPU_updateLace = real_lace;
g_emu_resetting = 0;
GPU_updateLace = real_lace;
g_emu_resetting = 0;
@@
-806,7
+810,7
@@
int emu_save_state(int slot)
return ret;
ret = SaveState(fname);
return ret;
ret = SaveState(fname);
-#if
def HAVE_PRE_ARMV7
/* XXX GPH hack */
+#if
defined(HAVE_PRE_ARMV7) && !defined(_3DS) && !defined(__SWITCH__)
/* XXX GPH hack */
sync();
#endif
SysPrintf("* %s \"%s\" [%d]\n",
sync();
#endif
SysPrintf("* %s \"%s\" [%d]\n",
@@
-828,6
+832,7
@@
int emu_load_state(int slot)
return LoadState(fname);
}
return LoadState(fname);
}
+#ifndef HAVE_LIBRETRO
#ifndef ANDROID
void SysPrintf(const char *fmt, ...) {
#ifndef ANDROID
void SysPrintf(const char *fmt, ...) {
@@
-852,6
+857,7
@@
void SysPrintf(const char *fmt, ...) {
}
#endif
}
#endif
+#endif /* HAVE_LIBRETRO */
void SysMessage(const char *fmt, ...) {
va_list list;
void SysMessage(const char *fmt, ...) {
va_list list;
@@
-901,14
+907,15
@@
static int _OpenPlugins(void) {
if (Config.UseNet && !NetOpened) {
netInfo info;
if (Config.UseNet && !NetOpened) {
netInfo info;
- char path[MAXPATHLEN];
+ char path[MAXPATHLEN
* 2
];
char dotdir[MAXPATHLEN];
MAKE_PATH(dotdir, "/.pcsx/plugins/", NULL);
strcpy(info.EmuName, "PCSX");
char dotdir[MAXPATHLEN];
MAKE_PATH(dotdir, "/.pcsx/plugins/", NULL);
strcpy(info.EmuName, "PCSX");
- strncpy(info.CdromID, CdromId, 9);
- strncpy(info.CdromLabel, CdromLabel, 9);
+ memcpy(info.CdromID, CdromId, 9); /* no \0 trailing character? */
+ memcpy(info.CdromLabel, CdromLabel, 9);
+ info.CdromLabel[9] = '\0';
info.psxMem = psxM;
info.GPU_showScreenPic = GPU_showScreenPic;
info.GPU_displayText = GPU_displayText;
info.psxMem = psxM;
info.GPU_showScreenPic = GPU_showScreenPic;
info.GPU_displayText = GPU_displayText;
@@
-1020,7
+1027,7
@@
void *SysLoadLibrary(const char *lib) {
return (void *)(uintptr_t)(PLUGIN_DL_BASE + builtin_plugin_ids[i]);
}
return (void *)(uintptr_t)(PLUGIN_DL_BASE + builtin_plugin_ids[i]);
}
-#if
ndef _WIN32
+#if
!defined(_WIN32) && !defined(NO_DYLIB)
ret = dlopen(lib, RTLD_NOW);
if (ret == NULL)
SysMessage("dlopen: %s", dlerror());
ret = dlopen(lib, RTLD_NOW);
if (ret == NULL)
SysMessage("dlopen: %s", dlerror());
@@
-1037,7
+1044,7
@@
void *SysLoadSym(void *lib, const char *sym) {
if (PLUGIN_DL_BASE <= plugid && plugid < PLUGIN_DL_BASE + ARRAY_SIZE(builtin_plugins))
return plugin_link(plugid - PLUGIN_DL_BASE, sym);
if (PLUGIN_DL_BASE <= plugid && plugid < PLUGIN_DL_BASE + ARRAY_SIZE(builtin_plugins))
return plugin_link(plugid - PLUGIN_DL_BASE, sym);
-#if
ndef _WIN32
+#if
!defined(_WIN32) && !defined(NO_DYLIB)
return dlsym(lib, sym);
#else
return NULL;
return dlsym(lib, sym);
#else
return NULL;
@@
-1045,7
+1052,9
@@
void *SysLoadSym(void *lib, const char *sym) {
}
const char *SysLibError() {
}
const char *SysLibError() {
-#ifndef _WIN32
+#if defined(NO_DYLIB)
+ return NULL;
+#elif !defined(_WIN32)
return dlerror();
#else
return "not supported";
return dlerror();
#else
return "not supported";
@@
-1058,8
+1067,7
@@
void SysCloseLibrary(void *lib) {
if (PLUGIN_DL_BASE <= plugid && plugid < PLUGIN_DL_BASE + ARRAY_SIZE(builtin_plugins))
return;
if (PLUGIN_DL_BASE <= plugid && plugid < PLUGIN_DL_BASE + ARRAY_SIZE(builtin_plugins))
return;
-#if
ndef _WIN32
+#if
!defined(_WIN32) && !defined(NO_DYLIB)
dlclose(lib);
#endif
}
dlclose(lib);
#endif
}
-