extern int iXAPitch;
extern int iVolume;
-int ready_to_go;
+int ready_to_go, g_resetting;
unsigned long gpuDisp;
char cfgfile_basename[MAXPATHLEN];
int state_slot;
int emu_core_init(void)
{
+ SysPrintf("Starting PCSX-ReARMed " REV "\n");
+
CheckSubDir();
check_memcards();
plat_init();
menu_init(); // loads config
- emu_core_init();
+ if (emu_core_init() != 0)
+ return 1;
if (psxout)
Config.PsxOut = 1;
// so we need to prevent updateLace() call..
void *real_lace = GPU_updateLace;
GPU_updateLace = dummy_lace;
+ g_resetting = 1;
// reset can run code, timing must be set
pl_timing_prepare(Config.PsxType);
CDR_stop();
GPU_updateLace = real_lace;
+ g_resetting = 0;
}
void SysClose() {
return LoadState(fname);
}
+#ifndef ANDROID
+
void SysPrintf(const char *fmt, ...) {
va_list list;
va_end(list);
}
+#else
+
+#include <android/log.h>
+
+void SysPrintf(const char *fmt, ...) {
+ va_list list;
+
+ va_start(list, fmt);
+ __android_log_vprint(ANDROID_LOG_INFO, "PCSX", fmt, list);
+ va_end(list);
+}
+
+#endif
+
void SysMessage(const char *fmt, ...) {
- va_list list;
- char msg[512];
+ va_list list;
+ char msg[512];
+ int ret;
- va_start(list, fmt);
- vsnprintf(msg, sizeof(msg), fmt, list);
- va_end(list);
+ va_start(list, fmt);
+ ret = vsnprintf(msg, sizeof(msg), fmt, list);
+ va_end(list);
- if (msg[strlen(msg) - 1] == '\n')
- msg[strlen(msg) - 1] = 0;
+ if (ret < sizeof(msg) && msg[ret - 1] == '\n')
+ msg[ret - 1] = 0;
SysPrintf("%s\n", msg);
}