~i30817/dosbox/trunk

« back to all changes in this revision

Viewing changes to src/gui/sdlmain.cpp

  • Committer: harekiet
  • Date: 2018-04-16 20:24:30 UTC
  • Revision ID: svn-v4:ed541006-0bf7-43e9-8c4d-6fc63c346d47:dosbox/trunk:4095
Allow 15/16/32 bpp inputs to the opengl output

Show diffs side-by-side

added added

removed removed

Lines of Context:
414
414
                goto check_gotbpp;
415
415
#endif
416
416
        case SCREEN_OVERLAY:
 
417
                //We only accept 32bit output from the scalers here
 
418
                //Can't handle true color inputs
417
419
                if (flags & GFX_RGBONLY || !(flags&GFX_CAN_32)) goto check_surface;
418
420
                flags|=GFX_SCALING;
419
421
                flags&=~(GFX_CAN_8|GFX_CAN_15|GFX_CAN_16);
420
422
                break;
421
423
#if C_OPENGL
422
424
        case SCREEN_OPENGL:
423
 
                if (flags & GFX_RGBONLY || !(flags&GFX_CAN_32)) goto check_surface;
 
425
                //We only accept 32bit output from the scalers here
 
426
                if (!(flags&GFX_CAN_32)) goto check_surface;
424
427
                flags|=GFX_SCALING;
425
428
                flags&=~(GFX_CAN_8|GFX_CAN_15|GFX_CAN_16);
426
429
                break;
676
679
                        free(sdl.opengl.framebuf);
677
680
                }
678
681
                sdl.opengl.framebuf=0;
679
 
                if (!(flags&GFX_CAN_32) || (flags & GFX_RGBONLY)) goto dosurface;
 
682
                if (!(flags&GFX_CAN_32)) goto dosurface;
680
683
                int texsize=2 << int_log2(width > height ? width : height);
681
684
                if (texsize>sdl.opengl.max_texsize) {
682
685
                        LOG_MSG("SDL:OPENGL: No support for texturesize of %d, falling back to surface",texsize);