diff options
author | 2014-04-25 07:31:27 +0000 | |
---|---|---|
committer | 2014-04-25 07:31:27 +0000 | |
commit | f8f3d681876e2b39333e01b9bdb52ba61a5bfbe1 (patch) | |
tree | 32bbd8d8fc657b7c5c6a96412e9f917555c0697a /src/osd/sdl/output.c | |
parent | fbef800627be494a0ab1592a83fa7c76cd63475d (diff) |
-Made osd_interface base class for OSD and moved initialization for each subsystem in it as virtual calls. (nw)
-Moved midi handling in base class
-Cleaned running_machine of information of next machine
-All is cleaned after exiting of running_machine so debugger window is removed as well till next machine is started
-Made osdmini to compile
Diffstat (limited to 'src/osd/sdl/output.c')
-rw-r--r-- | src/osd/sdl/output.c | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/src/osd/sdl/output.c b/src/osd/sdl/output.c index 3f6b75372d9..59d66307f5e 100644 --- a/src/osd/sdl/output.c +++ b/src/osd/sdl/output.c @@ -71,12 +71,10 @@ PID_CAST osd_getpid(void) // sdloutput_init //============================================================ -void sdloutput_init(running_machine &machine) +bool sdl_osd_interface::output_init() { int fildes; - machine.add_notifier(MACHINE_NOTIFY_EXIT, machine_notify_delegate(FUNC(sdloutput_exit), &machine)); - fildes = open(SDLMAME_OUTPUT, O_RDWR | O_NONBLOCK); if (fildes < 0) @@ -89,11 +87,12 @@ void sdloutput_init(running_machine &machine) output = fdopen(fildes, "w"); osd_printf_verbose("output: opened output notifier file %s\n", SDLMAME_OUTPUT); - fprintf(output, "MAME " PID_FMT " START %s\n", osd_getpid(), machine.system().name); + fprintf(output, "MAME " PID_FMT " START %s\n", osd_getpid(), machine().system().name); fflush(output); } output_set_notifier(NULL, notifier_callback, NULL); + return true; } @@ -101,11 +100,11 @@ void sdloutput_init(running_machine &machine) // winoutput_exit //============================================================ -static void sdloutput_exit(running_machine &machine) +void sdl_osd_interface::output_exit() { if (output != NULL) { - fprintf(output, "MAME " PID_FMT " STOP %s\n", osd_getpid(), machine.system().name); + fprintf(output, "MAME " PID_FMT " STOP %s\n", osd_getpid(), machine().system().name); fflush(output); fclose(output); output = NULL; @@ -128,13 +127,20 @@ static void notifier_callback(const char *outname, INT32 value, void *param) #else /* SDLMAME_WIN32 */ +#include "emu.h" +#include "osdsdl.h" #include "emucore.h" //============================================================ // Stub for win32 //============================================================ -void sdloutput_init(running_machine &machine) +bool sdl_osd_interface::output_init() +{ + return true; +} + +void sdl_osd_interface::output_exit() { } |