diff options
author | Jamieson Christian | 2003-09-26 14:05:33 +0000 |
---|---|---|
committer | Jamieson Christian | 2003-09-26 14:05:33 +0000 |
commit | 7f707acfb6bbcb138dbcb04eddc05d91821477a1 (patch) | |
tree | fb0a0b967077ab27c1ba4c9be8e67c74e1b0fc9f /backends/midi | |
parent | b21208e6a92b4e8082d04994b0c99709e2712472 (diff) | |
download | scummvm-rg350-7f707acfb6bbcb138dbcb04eddc05d91821477a1.tar.gz scummvm-rg350-7f707acfb6bbcb138dbcb04eddc05d91821477a1.tar.bz2 scummvm-rg350-7f707acfb6bbcb138dbcb04eddc05d91821477a1.zip |
Converted the MPU-401 timer to use the Timer class.
Since this was the only place where we were using
create_thread, that method should be removable now.
I also removed the midi_driver_thread overrides
for the MorphOS and YPA1 (Palm) backends. These need
to be tested by their respective porters.
svn-id: r10414
Diffstat (limited to 'backends/midi')
-rw-r--r-- | backends/midi/morphos.cpp | 44 | ||||
-rw-r--r-- | backends/midi/ypa1.cpp | 31 |
2 files changed, 0 insertions, 75 deletions
diff --git a/backends/midi/morphos.cpp b/backends/midi/morphos.cpp index f75839cdd2..ab941ca6bf 100644 --- a/backends/midi/morphos.cpp +++ b/backends/midi/morphos.cpp @@ -94,49 +94,5 @@ MidiDriver *MidiDriver_ETUDE_create() return EtudeMidiDriver; } -int MidiDriver_MPU401::midi_driver_thread(void *param) -{ - MidiDriver_MPU401 *mid = (MidiDriver_MPU401 *)param; - int old_time, cur_time; - MsgPort *music_timer_port = NULL; - timerequest *music_timer_request = NULL; - - // Grab the MidiDriver's mutex. When the MidiDriver - // shuts down, it will wait on that mutex until we've - // detected the shutdown and quit looping. - g_system->lock_mutex(mid->_mutex); - - if (!OSystem_MorphOS::OpenATimer(&music_timer_port, (IORequest **) &music_timer_request, UNIT_MICROHZ, false)) { - warning("Could not open a timer - music will not play"); - Wait(SIGBREAKF_CTRL_C); - } - else { - old_time = g_system->get_msecs(); - - while (mid->_started_thread) { - music_timer_request->tr_node.io_Command = TR_ADDREQUEST; - music_timer_request->tr_time.tv_secs = 0; - music_timer_request->tr_time.tv_micro = 10000; - DoIO((struct IORequest *)music_timer_request); - - if (!mid->_started_thread || CheckSignal(SIGBREAKF_CTRL_C)) - break; - - cur_time = g_system->get_msecs(); - while (old_time < cur_time) { - old_time += 10; - if (mid->_timer_proc) - (*(mid->_timer_proc))(mid->_timer_param); - } - } - CloseDevice((IORequest *) music_timer_request); - DeleteIORequest((IORequest *) music_timer_request); - DeleteMsgPort(music_timer_port); - } - - g_system->unlock_mutex(mid->_mutex); - return 0; -} - #endif diff --git a/backends/midi/ypa1.cpp b/backends/midi/ypa1.cpp index e2c12de70b..3bcb06eb3a 100644 --- a/backends/midi/ypa1.cpp +++ b/backends/midi/ypa1.cpp @@ -103,34 +103,3 @@ void MidiDriver_YamahaPa1::send(uint32 b) { MidiDriver *MidiDriver_YamahaPa1_create() { return new MidiDriver_YamahaPa1(); } - -////////////////////////////////////////// -// thread emu -#include "palm.h" - -int MidiDriver_MPU401::midi_driver_thread(void *param) { - MidiDriver_MPU401 *mid = (MidiDriver_MPU401 *)param; - int cur_time; - - if (mid->_started_thread) { - UInt8 id = ((OSystem_PALMOS *)g_system)->_threadID; - ThreadEmuPtr thread = &(((OSystem_PALMOS *)g_system)->_thread[id]); - - // wait 10 msecs - cur_time = g_system->get_msecs(); - if (cur_time - thread->old_time >= 10) - thread->sleep = false; - - // if 10 msecs - if (!thread->sleep) { - thread->sleep = true; - while (thread->old_time < cur_time) { - thread->old_time += 10; - if (mid->_timer_proc) - (*(mid->_timer_proc)) (mid->_timer_param); - } - } - } - - return 0; -}
\ No newline at end of file |