#include "../../SDL_internal.h"
#if SDL_VIDEO_DRIVER_RISCOS
#include "../../events/SDL_mouse_c.h"
#include <kernel.h>
static SDL_Cursor *
RISCOS_CreateDefaultCursor()
{
SDL_Cursor *cursor;
cursor = SDL_calloc(1, sizeof(*cursor));
if (cursor) {
cursor->driverdata = NULL;
} else {
SDL_OutOfMemory();
}
return cursor;
}
static void
RISCOS_FreeCursor(SDL_Cursor * cursor)
{
SDL_free(cursor);
}
static int
RISCOS_ShowCursor(SDL_Cursor * cursor)
{
if (cursor) {
_kernel_osbyte(106, 1, 0);
} else {
_kernel_osbyte(106, 0, 0);
}
return 0;
}
int
RISCOS_InitMouse(_THIS)
{
SDL_Mouse *mouse = SDL_GetMouse();
mouse->ShowCursor = RISCOS_ShowCursor;
mouse->FreeCursor = RISCOS_FreeCursor;
SDL_SetDefaultCursor(RISCOS_CreateDefaultCursor());
return 0;
}
#endif