Skip to content
Permalink
Browse files

Added photon fixes submitted by Luca Barbato

  • Loading branch information
slouken committed Oct 8, 2001
1 parent 8a8f8f0 commit 2e038f4d2021bd9b082a59835a8cec55b645ef79
Showing with 49 additions and 11 deletions.
  1. +28 −5 src/video/photon/SDL_ph_modes.c
  2. +21 −6 src/video/photon/SDL_ph_video.c
@@ -205,7 +205,7 @@ SDL_Rect **ph_ListModes(_THIS, SDL_PixelFormat *format, Uint32 flags)

void ph_FreeVideoModes(_THIS)
{
int i;
// int i;

// if ( SDL_modelist ) {
// for ( i=0; SDL_modelist[i]; ++i ) {
@@ -222,9 +222,10 @@ static void set_best_resolution(_THIS, int width, int height)
if ( use_vidmode ) {
PgDisplaySettings_t settings;
PgVideoModeInfo_t current_mode_info;
PgHWCaps_t my_hwcaps;
unsigned short current_bpp;
int i;

/*
if (PgGetVideoMode( &settings ) < 0)
{
fprintf(stderr,"error: PgGetVideoMode failed\n");
@@ -235,6 +236,17 @@ static void set_best_resolution(_THIS, int width, int height)
fprintf(stderr,"error: PgGetVideoModeInfo failed\n");
return;
}
*/
//lu_zero
if (PgGetGraphicsHWCaps(&my_hwcaps) < 0)
{
fprintf(stderr,"set_best_resolution: GetGraphicsHWCaps failed!! \n");
//that HAVE to work
}
if (PgGetVideoModeInfo(my_hwcaps.current_video_mode, &current_mode_info) < 0)
{
fprintf(stderr,"set_best_resolution: PgGetVideoModeInfo failed\n");
}
current_bpp = current_mode_info.bits_per_pixel;

if (PgGetVideoModeList(&mode_list) >= 0)
@@ -279,14 +291,25 @@ static void get_real_resolution(_THIS, int* w, int* h)
{

if ( use_vidmode ) {
PgDisplaySettings_t settings;
//PgDisplaySettings_t settings;
PgVideoModeInfo_t current_mode_info;
PgHWCaps_t my_hwcaps;
int unused;

/*
if (PgGetVideoMode( &settings ) >= 0) {
*w = settings.xres;
*h = settings.yres;
return;
}
}*/
if (PgGetGraphicsHWCaps(&my_hwcaps) >= 0)
{
if (PgGetVideoModeInfo(my_hwcaps.current_video_mode, &current_mode_info) < 0)
{
fprintf(stderr,"get_real_resolution: PgGetVideoModeInfo failed\n");
}
*w = current_mode_info.width;
*h = current_mode_info.height;
}
}
// *w = DisplayWidth(SDL_Display, SDL_Screen);
// *h = DisplayHeight(SDL_Display, SDL_Screen);
@@ -154,6 +154,7 @@ static int ph_VideoInit(_THIS, SDL_PixelFormat *vformat)
int rtnval;
PgDisplaySettings_t mysettings;
PgVideoModeInfo_t my_mode_info;
PgHWCaps_t my_hwcaps;

if( NULL == ( event = malloc( EVENT_SIZE ) ) )
exit( EXIT_FAILURE );
@@ -207,13 +208,19 @@ static int ph_VideoInit(_THIS, SDL_PixelFormat *vformat)
if(SDL_BlankCursor == NULL)
printf("could not create blank cursor\n");
/* Get the video mode */
/*
if (PgGetVideoMode( &mysettings ) < 0)
{
fprintf(stderr,"ph_VideoInit: PgGetVideoMode failed\n");
fprintf(stderr,"ph_VideoInit: PgGetVideoMode failed patch A?? \n");
//QNX6/Patch A always fails return code even though call succeeds. fixed Patch B
}

if (PgGetVideoModeInfo(mysettings.mode, &my_mode_info) < 0)
*/
if (PgGetGraphicsHWCaps(&my_hwcaps) < 0)
{
fprintf(stderr,"ph_VideoInit: GetGraphicsHWCaps failed!! \n");
//that HAVE to work
}
if (PgGetVideoModeInfo(my_hwcaps.current_video_mode, &my_mode_info) < 0)
{
fprintf(stderr,"ph_VideoInit: PgGetVideoModeInfo failed\n");
}
@@ -258,6 +265,7 @@ static SDL_Surface *ph_SetVideoMode(_THIS, SDL_Surface *current,
{
PhRegion_t region_info;
PgDisplaySettings_t settings;
PgHWCaps_t my_hwcaps;
PgVideoModeInfo_t mode_info;
int mode, actual_width, actual_height;
PtArg_t arg[5];
@@ -295,15 +303,22 @@ static SDL_Surface *ph_SetVideoMode(_THIS, SDL_Surface *current,
/* Get the video mode and set it */
if (bpp == 0)
{
/*again same issue, same solution
if (PgGetVideoMode( &settings ) < 0)
{
fprintf(stderr,"error: PgGetVideoMode failed\n");
}
if (PgGetVideoModeInfo(settings.mode, &mode_info) < 0)
*/
if (PgGetGraphicsHWCaps(&my_hwcaps) < 0)
{
fprintf(stderr,"ph_SetVideoMode: GetGraphicsHWCaps failed!! \n");
//that HAVE to work
}
if (PgGetVideoModeInfo(my_hwcaps.current_video_mode, &mode_info) < 0)
{
fprintf(stderr,"error: PgGetVideoModeInfo failed\n");
fprintf(stderr,"ph_SetVideoMode: PgGetVideoModeInfo failed\n");
}
bpp = mode_info.bits_per_pixel;
bpp = mode_info.bits_per_pixel;
}
if (flags & SDL_ANYFORMAT)
{

0 comments on commit 2e038f4

Please sign in to comment.