Compilation fixes. Overlay functions are stubs only at the moment.

svn-id: r5009
This commit is contained in:
Ruediger Hanke 2002-09-23 16:31:05 +00:00
parent 412075437b
commit 971f47644e
4 changed files with 34 additions and 6 deletions

View file

@ -1343,3 +1343,24 @@ void OSystem_MorphOS::init_size(uint w, uint h)
CreateScreen(CSDSPTYPE_KEEP); CreateScreen(CSDSPTYPE_KEEP);
} }
void OSystem_MorphOS::show_overlay()
{
}
void OSystem_MorphOS::hide_overlay()
{
}
void OSystem_MorphOS::clear_overlay()
{
}
void OSystem_MorphOS::grab_overlay(int16 *buf, int pitch)
{
}
void OSystem_MorphOS::copy_rect_overlay(const int16 *ovl, int pitch, int x, int y, int w, int h)
{
}

View file

@ -65,6 +65,13 @@ class OSystem_MorphOS : public OSystem
// Shaking is used in SCUMM. Set current shake position. // Shaking is used in SCUMM. Set current shake position.
virtual void set_shake_pos(int shake_pos); virtual void set_shake_pos(int shake_pos);
// Overlay
virtual void show_overlay();
virtual void hide_overlay();
virtual void clear_overlay();
virtual void grab_overlay(int16 *buf, int pitch);
virtual void copy_rect_overlay(const int16 *buf, int pitch, int x, int y, int w, int h);
// Get the number of milliseconds since the program was started. // Get the number of milliseconds since the program was started.
virtual uint32 get_msecs(); virtual uint32 get_msecs();

View file

@ -39,7 +39,7 @@ static TagItem TimerServiceTags[] = { { NP_Entry, 0 },
{ TAG_DONE, 0 } { TAG_DONE, 0 }
}; };
Timer::Timer(Scumm * system) Timer::Timer(Engine * engine)
{ {
static EmulFunc ThreadEmulFunc; static EmulFunc ThreadEmulFunc;
@ -50,7 +50,7 @@ Timer::Timer(Scumm * system)
ThreadEmulFunc.StackSize = 16000; ThreadEmulFunc.StackSize = 16000;
ThreadEmulFunc.Extension = 0; ThreadEmulFunc.Extension = 0;
ThreadEmulFunc.Arg1 = (ULONG) this; ThreadEmulFunc.Arg1 = (ULONG) this;
ThreadEmulFunc.Arg2 = (ULONG) system; ThreadEmulFunc.Arg2 = (ULONG) engine;
TimerServiceTags[0].ti_Data = (ULONG) &ThreadEmulFunc; TimerServiceTags[0].ti_Data = (ULONG) &ThreadEmulFunc;
TimerServiceThread = CreateNewProc(TimerServiceTags); TimerServiceThread = CreateNewProc(TimerServiceTags);
} }
@ -116,7 +116,7 @@ bool Timer::SendMsg(ULONG msg_id, TimerProc procedure, LONG interval)
return true; return true;
} }
void Timer::TimerService(Timer *this_ptr, Scumm *system) void Timer::TimerService(Timer *this_ptr, Engine *engine)
{ {
MsgPort *port = &((Process *) FindTask(NULL))->pr_MsgPort; MsgPort *port = &((Process *) FindTask(NULL))->pr_MsgPort;
ULONG port_bit = 1 << port->mp_SigBit; ULONG port_bit = 1 << port->mp_SigBit;
@ -216,7 +216,7 @@ void Timer::TimerService(Timer *this_ptr, Scumm *system)
timerequest *req = timer_slots[t].ts_IORequest; timerequest *req = timer_slots[t].ts_IORequest;
WaitIO((IORequest *) req); WaitIO((IORequest *) req);
interval = timer_slots[t].ts_Interval; interval = timer_slots[t].ts_Interval;
(*timer_slots[t].ts_Callback)(system); (*timer_slots[t].ts_Callback)(engine);
GetSysTime(&end_callback); GetSysTime(&end_callback);
SubTime(&end_callback, &start_callback); SubTime(&end_callback, &start_callback);
interval -= end_callback.tv_sec*1000+end_callback.tv_micro/1000+40; interval -= end_callback.tv_sec*1000+end_callback.tv_micro/1000+40;

View file

@ -57,7 +57,7 @@ struct TimerServiceMessage
class Timer class Timer
{ {
public: public:
Timer(Scumm * system); Timer(Engine * engine);
~Timer(); ~Timer();
bool init(); bool init();
@ -67,7 +67,7 @@ class Timer
protected: protected:
bool SendMsg(ULONG MsgID, TimerProc procedure, LONG interval); bool SendMsg(ULONG MsgID, TimerProc procedure, LONG interval);
static void TimerService(Timer *, Scumm *); static void TimerService(Timer *, Engine *);
Process *TimerServiceThread; Process *TimerServiceThread;
SignalSemaphore TimerServiceSemaphore; SignalSemaphore TimerServiceSemaphore;