Commit c55e1b3f authored by Patrice Mandin's avatar Patrice Mandin

Started update for 1.3

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%402099
parent 31b71378
...@@ -50,8 +50,6 @@ ...@@ -50,8 +50,6 @@
#include "SDL_xbios_centscreen.h" #include "SDL_xbios_centscreen.h"
#include "SDL_xbios_sb3.h" #include "SDL_xbios_sb3.h"
#define XBIOS_VID_DRIVER_NAME "xbios"
/* Debug print info */ /* Debug print info */
#if 0 #if 0
#define DEBUG_PRINT(what) \ #define DEBUG_PRINT(what) \
...@@ -141,7 +139,7 @@ XBIOS_Available(void) ...@@ -141,7 +139,7 @@ XBIOS_Available(void)
static void static void
XBIOS_DeleteDevice(SDL_VideoDevice * device) XBIOS_DeleteDevice(SDL_VideoDevice * device)
{ {
SDL_free(device->hidden); SDL_free(device->driverdata);
SDL_free(device); SDL_free(device);
} }
...@@ -149,33 +147,29 @@ static SDL_VideoDevice * ...@@ -149,33 +147,29 @@ static SDL_VideoDevice *
XBIOS_CreateDevice(int devindex) XBIOS_CreateDevice(int devindex)
{ {
SDL_VideoDevice *device; SDL_VideoDevice *device;
SDL_VideoData *data;
/* Initialize all variables that we clean on shutdown */ /* Initialize all variables that we clean on shutdown */
device = (SDL_VideoDevice *) SDL_malloc(sizeof(SDL_VideoDevice)); device = (SDL_VideoDevice *) SDL_malloc(sizeof(SDL_VideoDevice));
if (device) { if (device) {
SDL_memset(device, 0, (sizeof *device)); data = (struct SDL_VideoData *) SDL_calloc(1, sizeof(SDL_VideoData));
device->hidden = (struct SDL_PrivateVideoData *)
SDL_malloc((sizeof *device->hidden));
device->gl_data = (struct SDL_PrivateGLData *)
SDL_malloc((sizeof *device->gl_data));
} }
if ((device == NULL) || (device->hidden == NULL)) { if (!device || !data) {
SDL_OutOfMemory(); SDL_OutOfMemory();
if (device) { if (device) {
SDL_free(device); SDL_free(device);
} }
return (0); return NULL;
} }
SDL_memset(device->hidden, 0, (sizeof *device->hidden)); device->driverdata = data;
SDL_memset(device->gl_data, 0, sizeof(*device->gl_data));
/* Video functions */ /* Video functions */
device->VideoInit = XBIOS_VideoInit; device->VideoInit = XBIOS_VideoInit;
device->VideoQuit = XBIOS_VideoQuit;
device->ListModes = XBIOS_ListModes; device->ListModes = XBIOS_ListModes;
device->SetVideoMode = XBIOS_SetVideoMode; device->SetVideoMode = XBIOS_SetVideoMode;
device->SetColors = XBIOS_SetColors; device->SetColors = XBIOS_SetColors;
device->UpdateRects = NULL; device->UpdateRects = NULL;
device->VideoQuit = XBIOS_VideoQuit;
device->AllocHWSurface = XBIOS_AllocHWSurface; device->AllocHWSurface = XBIOS_AllocHWSurface;
device->LockHWSurface = XBIOS_LockHWSurface; device->LockHWSurface = XBIOS_LockHWSurface;
device->UnlockHWSurface = XBIOS_UnlockHWSurface; device->UnlockHWSurface = XBIOS_UnlockHWSurface;
...@@ -192,7 +186,6 @@ XBIOS_CreateDevice(int devindex) ...@@ -192,7 +186,6 @@ XBIOS_CreateDevice(int devindex)
#endif #endif
/* Events */ /* Events */
device->InitOSKeymap = Atari_InitOSKeymap;
device->PumpEvents = Atari_PumpEvents; device->PumpEvents = Atari_PumpEvents;
device->free = XBIOS_DeleteDevice; device->free = XBIOS_DeleteDevice;
...@@ -201,7 +194,7 @@ XBIOS_CreateDevice(int devindex) ...@@ -201,7 +194,7 @@ XBIOS_CreateDevice(int devindex)
} }
VideoBootStrap XBIOS_bootstrap = { VideoBootStrap XBIOS_bootstrap = {
XBIOS_VID_DRIVER_NAME, "Atari Xbios driver", "xbios", "Atari Xbios driver",
XBIOS_Available, XBIOS_CreateDevice XBIOS_Available, XBIOS_CreateDevice
}; };
......
...@@ -27,9 +27,6 @@ ...@@ -27,9 +27,6 @@
#include "SDL_stdinc.h" #include "SDL_stdinc.h"
#include "../SDL_sysvideo.h" #include "../SDL_sysvideo.h"
/* Hidden "this" pointer for the video functions */
#define _THIS SDL_VideoDevice *this
/* TT video modes: 2 /* TT video modes: 2
Falcon RVB: 16 (could be *2 by adding PAL/NTSC modes) Falcon RVB: 16 (could be *2 by adding PAL/NTSC modes)
Falcon VGA: 6 Falcon VGA: 6
...@@ -49,7 +46,7 @@ typedef struct ...@@ -49,7 +46,7 @@ typedef struct
/* Private display data */ /* Private display data */
#define NUM_MODELISTS 2 /* 8 and 16 bits-per-pixel */ #define NUM_MODELISTS 2 /* 8 and 16 bits-per-pixel */
struct SDL_PrivateVideoData struct SDL_VideoData
{ {
long cookie_vdo; long cookie_vdo;
int old_video_mode; /* Old video mode before entering SDL */ int old_video_mode; /* Old video mode before entering SDL */
...@@ -71,7 +68,7 @@ struct SDL_PrivateVideoData ...@@ -71,7 +68,7 @@ struct SDL_PrivateVideoData
SDL_Rect *SDL_modelist[NUM_MODELISTS][SDL_NUMMODES + 1]; SDL_Rect *SDL_modelist[NUM_MODELISTS][SDL_NUMMODES + 1];
xbiosmode_t *videomodes[NUM_MODELISTS][SDL_NUMMODES + 1]; xbiosmode_t *videomodes[NUM_MODELISTS][SDL_NUMMODES + 1];
}; } SDL_VideoData;
/* _VDO cookie values */ /* _VDO cookie values */
enum enum
...@@ -106,25 +103,25 @@ enum ...@@ -106,25 +103,25 @@ enum
#define TT_HIGH 0x0600 #define TT_HIGH 0x0600
/* Hidden structure -> variables names */ /* Hidden structure -> variables names */
#define SDL_modelist (this->hidden->SDL_modelist) #define SDL_modelist (_this->driverdata->SDL_modelist)
#define XBIOS_mutex (this->hidden->mutex) #define XBIOS_mutex (_this->driverdata->mutex)
#define XBIOS_cvdo (this->hidden->cookie_vdo) #define XBIOS_cvdo (_this->driverdata->cookie_vdo)
#define XBIOS_oldpalette (this->hidden->old_palette) #define XBIOS_oldpalette (_this->driverdata->old_palette)
#define XBIOS_oldnumcol (this->hidden->old_num_colors) #define XBIOS_oldnumcol (_this->driverdata->old_num_colors)
#define XBIOS_oldvbase (this->hidden->old_video_base) #define XBIOS_oldvbase (_this->driverdata->old_video_base)
#define XBIOS_oldvmode (this->hidden->old_video_mode) #define XBIOS_oldvmode (_this->driverdata->old_video_mode)
#define XBIOS_nummodes (this->hidden->num_modes) #define XBIOS_nummodes (_this->driverdata->num_modes)
#define XBIOS_modelist (this->hidden->mode_list) #define XBIOS_modelist (_this->driverdata->mode_list)
#define XBIOS_screens (this->hidden->screens) #define XBIOS_screens (_this->driverdata->screens)
#define XBIOS_screensmem (this->hidden->screensmem) #define XBIOS_screensmem (_this->driverdata->screensmem)
#define XBIOS_shadowscreen (this->hidden->shadowscreen) #define XBIOS_shadowscreen (_this->driverdata->shadowscreen)
#define XBIOS_videomodes (this->hidden->videomodes) #define XBIOS_videomodes (_this->driverdata->videomodes)
#define XBIOS_doubleline (this->hidden->doubleline) #define XBIOS_doubleline (_this->driverdata->doubleline)
#define XBIOS_fbnum (this->hidden->frame_number) #define XBIOS_fbnum (_this->driverdata->frame_number)
#define XBIOS_pitch (this->hidden->pitch) #define XBIOS_pitch (_this->driverdata->pitch)
#define XBIOS_width (this->hidden->width) #define XBIOS_width (_this->driverdata->width)
#define XBIOS_height (this->hidden->height) #define XBIOS_height (_this->driverdata->height)
#define XBIOS_centscreen (this->hidden->centscreen) #define XBIOS_centscreen (_this->driverdata->centscreen)
/*--- Functions prototypes ---*/ /*--- Functions prototypes ---*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment