aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gameDetector.cpp10
-rw-r--r--system.h1
2 files changed, 11 insertions, 0 deletions
diff --git a/gameDetector.cpp b/gameDetector.cpp
index 04c02fb2db..58c1afd6b7 100644
--- a/gameDetector.cpp
+++ b/gameDetector.cpp
@@ -355,7 +355,12 @@ int GameDetector::detectMain(int argc, char **argv)
_midi_driver = MD_AUTO;
+#ifdef __DC__
+ extern int dc_setup(GameDetector &detector);
+ dc_setup(*this);
+#else
parseCommandLine(argc, argv);
+#endif
if (_exe_name == NULL) {
//launcherLoop();
@@ -392,6 +397,10 @@ OSystem *GameDetector::createSystem() {
#endif
/* auto is to use SDL */
switch(_gfx_driver) {
+#ifdef __DC__
+ case GD_AUTO:
+ return OSystem_Dreamcast_create();
+#else
case GD_SDL:
case GD_AUTO:
#if !defined(__MORPHOS__)
@@ -413,6 +422,7 @@ OSystem *GameDetector::createSystem() {
case GD_NULL:
return OSystem_NULL_create();
+#endif
}
error("Invalid graphics driver");
diff --git a/system.h b/system.h
index 95bb0026e9..00a72a00f2 100644
--- a/system.h
+++ b/system.h
@@ -120,6 +120,7 @@ public:
OSystem *OSystem_SDL_create(int gfx_driver, bool full_screen);
OSystem *OSystem_NULL_create();
OSystem *OSystem_MorphOS_create(int game_id, int gfx_driver, bool full_screen);
+OSystem *OSystem_Dreamcast_create();
enum {
GFX_NORMAL = 0,