aboutsummaryrefslogtreecommitdiff
path: root/overrides.c
diff options
context:
space:
mode:
authorneonloop2021-08-15 22:06:22 +0000
committerneonloop2021-08-15 22:06:22 +0000
commitac7b0281105d2b19ff96f68293416ee1e964fefe (patch)
tree626b6c543c8b2126519bcb5477156958a5ff4cd3 /overrides.c
parent549c48b2b327762e87e327a1ba0221810dcac5ab (diff)
downloadpicoarch-ac7b0281105d2b19ff96f68293416ee1e964fefe.tar.gz
picoarch-ac7b0281105d2b19ff96f68293416ee1e964fefe.tar.bz2
picoarch-ac7b0281105d2b19ff96f68293416ee1e964fefe.zip
Moves core option changes into picoarch
Keeps cores cleaner and avoids conflicts
Diffstat (limited to 'overrides.c')
-rw-r--r--overrides.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/overrides.c b/overrides.c
new file mode 100644
index 0000000..d8914ce
--- /dev/null
+++ b/overrides.c
@@ -0,0 +1,34 @@
+#include "main.h"
+#include "overrides.h"
+#include "overrides/gambatte.h"
+#include "overrides/gpsp.h"
+#include "overrides/mame2000.h"
+#include "overrides/pcsx_rearmed.h"
+#include "overrides/snes9x2002.h"
+#include "overrides/snes9x2005.h"
+
+static const struct core_override overrides[] = {
+ gambatte_overrides,
+ gpsp_overrides,
+ mame2000_overrides,
+ pcsx_rearmed_overrides,
+ snes9x2002_overrides,
+ snes9x2005_overrides,
+};
+
+static const struct core_override *override;
+
+const struct core_override *get_overrides(void) {
+ return override;
+}
+
+void set_overrides(const char *core_name) {
+ override = NULL;
+
+ for (int i = 0; i < array_size(overrides); i++) {
+ if (!strcmp(core_name, overrides[i].core_name)) {
+ override = &overrides[i];
+ break;
+ }
+ }
+}