diff --git a/src/video/ataricommon/SDL_atarievents.c b/src/video/ataricommon/SDL_atarievents.c index 30bfc751508ebdfa12f6603317bfb2ad9b27fc8a..55eedb250782c5a065277f02eb72bd20b7f68c26 100644 --- a/src/video/ataricommon/SDL_atarievents.c +++ b/src/video/ataricommon/SDL_atarievents.c @@ -60,10 +60,10 @@ enum static SDLKey keymap[ATARIBIOS_MAXKEYS]; static unsigned char *keytab_normal; -void (*Atari_ShutdownEvents) (void); +void (*SDL_Atari_ShutdownEvents) (void); static void -Atari_InitializeEvents(_THIS) +SDL_Atari_InitializeEvents(_THIS) { const char *envr; unsigned long cookie_mch; @@ -81,14 +81,12 @@ Atari_InitializeEvents(_THIS) case MCH_TT: case MCH_F30: case MCH_ARANYM: - this->InitOSKeymap = AtariIkbd_InitOSKeymap; - this->PumpEvents = AtariIkbd_PumpEvents; - Atari_ShutdownEvents = AtariIkbd_ShutdownEvents; + _this->PumpEvents = AtariIkbd_PumpEvents; + SDL_Atari_ShutdownEvents = AtariIkbd_ShutdownEvents; break; default: - this->InitOSKeymap = AtariGemdos_InitOSKeymap; - this->PumpEvents = AtariGemdos_PumpEvents; - Atari_ShutdownEvents = AtariGemdos_ShutdownEvents; + _this->PumpEvents = AtariGemdos_PumpEvents; + SDL_Atari_ShutdownEvents = AtariGemdos_ShutdownEvents; break; } @@ -99,42 +97,34 @@ Atari_InitializeEvents(_THIS) } if (SDL_strcmp(envr, "ikbd") == 0) { - this->InitOSKeymap = AtariIkbd_InitOSKeymap; - this->PumpEvents = AtariIkbd_PumpEvents; - Atari_ShutdownEvents = AtariIkbd_ShutdownEvents; + _this->PumpEvents = AtariIkbd_PumpEvents; + SDL_Atari_ShutdownEvents = AtariIkbd_ShutdownEvents; } if (SDL_strcmp(envr, "gemdos") == 0) { - this->InitOSKeymap = AtariGemdos_InitOSKeymap; - this->PumpEvents = AtariGemdos_PumpEvents; - Atari_ShutdownEvents = AtariGemdos_ShutdownEvents; + _this->PumpEvents = AtariGemdos_PumpEvents; + SDL_Atari_ShutdownEvents = AtariGemdos_ShutdownEvents; } if (SDL_strcmp(envr, "bios") == 0) { - this->InitOSKeymap = AtariBios_InitOSKeymap; - this->PumpEvents = AtariBios_PumpEvents; - Atari_ShutdownEvents = AtariBios_ShutdownEvents; + _this->PumpEvents = AtariBios_PumpEvents; + SDL_Atari_ShutdownEvents = AtariBios_ShutdownEvents; } -} - -void -Atari_InitOSKeymap(_THIS) -{ - Atari_InitializeEvents(this); - SDL_Atari_InitInternalKeymap(this); - - /* Call choosen routine */ - this->InitOSKeymap(this); + SDL_Atari_InitInternalKeymap(_this); } void Atari_PumpEvents(_THIS) { - Atari_InitializeEvents(this); + static int first_time = 1; + if (first_time) { + Atari_InitializeEvents(_this); + first_time = 0; + } /* Call choosen routine */ - this->PumpEvents(this); + _this->PumpEvents(_this); } void diff --git a/src/video/ataricommon/SDL_atarievents_c.h b/src/video/ataricommon/SDL_atarievents_c.h index 497d89e211bbd857d386305b3cab87e3bb543531..cb378f39ca4e3184894a5c54ed11034d7d14df96 100644 --- a/src/video/ataricommon/SDL_atarievents_c.h +++ b/src/video/ataricommon/SDL_atarievents_c.h @@ -32,9 +32,6 @@ #include "../SDL_sysvideo.h" -/* Hidden "this" pointer for the video functions */ -#define _THIS SDL_VideoDevice *this - #define ATARIBIOS_MAXKEYS 128 /* Special keys state */ @@ -50,10 +47,9 @@ enum { }; #endif -extern void (*Atari_ShutdownEvents) (void); +extern void (*SDL_Atari_ShutdownEvents) (void); -extern void Atari_InitOSKeymap(_THIS); -extern void Atari_PumpEvents(_THIS); +extern void SDL_Atari_PumpEvents(_THIS); extern void SDL_Atari_InitInternalKeymap(_THIS); diff --git a/src/video/ataricommon/SDL_biosevents_c.h b/src/video/ataricommon/SDL_biosevents_c.h index c2eb7069fcfc007fdcfdef51bbe9b6723fc18578..8c2947dfc47945194ad7c88dd7f24f6e7fe2a180 100644 --- a/src/video/ataricommon/SDL_biosevents_c.h +++ b/src/video/ataricommon/SDL_biosevents_c.h @@ -32,9 +32,6 @@ #include "../SDL_sysvideo.h" -/* Hidden "this" pointer for the video functions */ -#define _THIS SDL_VideoDevice *this - extern void AtariBios_InitOSKeymap(_THIS); extern void AtariBios_PumpEvents(_THIS); extern void AtariBios_ShutdownEvents(void); diff --git a/src/video/ataricommon/SDL_gemdosevents_c.h b/src/video/ataricommon/SDL_gemdosevents_c.h index 52e90fbd12d3eb856f1b14300b08372a1634ba36..618a26b8e896821a5412b82faae3d5ab5d918cef 100644 --- a/src/video/ataricommon/SDL_gemdosevents_c.h +++ b/src/video/ataricommon/SDL_gemdosevents_c.h @@ -32,9 +32,6 @@ #include "../SDL_sysvideo.h" -/* Hidden "this" pointer for the video functions */ -#define _THIS SDL_VideoDevice *this - extern void AtariGemdos_InitOSKeymap(_THIS); extern void AtariGemdos_PumpEvents(_THIS); extern void AtariGemdos_ShutdownEvents(void); diff --git a/src/video/ataricommon/SDL_ikbdevents_c.h b/src/video/ataricommon/SDL_ikbdevents_c.h index 6570c33c01c886c6189d76e93b772b5f3ee5ad87..aeb2bd9843df34992c6eea167c8997d5ab779028 100644 --- a/src/video/ataricommon/SDL_ikbdevents_c.h +++ b/src/video/ataricommon/SDL_ikbdevents_c.h @@ -32,9 +32,6 @@ #include "../SDL_sysvideo.h" -/* Hidden "this" pointer for the video functions */ -#define _THIS SDL_VideoDevice *this - extern void AtariIkbd_InitOSKeymap(_THIS); extern void AtariIkbd_PumpEvents(_THIS); extern void AtariIkbd_ShutdownEvents(void);