| 1 | 37c37
|
|---|
| 2 | < OSystem_SDL_Normal() : sdl_tmpscreen(0), sdl_hwscreen(0), _overlay_visible(false) { _glScreenStart = 0; }
|
|---|
| 3 | ---
|
|---|
| 4 | > OSystem_SDL_Normal() : sdl_tmpscreen(0), sdl_hwscreen(0), _overlay_visible(false) { _glScreenStart = 0; _glBilinearFilter = true; }
|
|---|
| 5 | 58a59
|
|---|
| 6 | > bool _glBilinearFilter;
|
|---|
| 7 | 264,265d264
|
|---|
| 8 | < fprintf(stderr,"bits: %d\n",sdl_tmpscreen->format->BitsPerPixel);
|
|---|
| 9 | <
|
|---|
| 10 | 364a364
|
|---|
| 11 | > tmpBlackRect.h = 256-_screenHeight-_glScreenStart-_currentShakePos;
|
|---|
| 12 | 367c367
|
|---|
| 13 | < fb2gl.blit16(tmpSurface,1,&tmpBlackRect,0,_screenHeight+_glScreenStart);
|
|---|
| 14 | ---
|
|---|
| 15 | > fb2gl.blit16(tmpSurface,1,&tmpBlackRect,0,_screenHeight+_glScreenStart+_currentShakePos);
|
|---|
| 16 | 411,420d410
|
|---|
| 17 | < if (value->gfx_mode==0) {
|
|---|
| 18 | < fb2gl.init(0,0,0,15,gl_flags);
|
|---|
| 19 | < _glScreenStart = 20;
|
|---|
| 20 | < SDL_FillRect(tmpSurface,&tmpBlackRect,0);
|
|---|
| 21 | < fb2gl.blit16(tmpSurface,1,&tmpBlackRect,0,0);
|
|---|
| 22 | < }
|
|---|
| 23 | < else {
|
|---|
| 24 | < fb2gl.init(0,0,0,70,gl_flags);
|
|---|
| 25 | < _glScreenStart = 0;
|
|---|
| 26 | < }
|
|---|
| 27 | 421a412,457
|
|---|
| 28 | > glPopMatrix();
|
|---|
| 29 | >
|
|---|
| 30 | > switch(value->gfx_mode) {
|
|---|
| 31 | > case 0: // Bilinear Filtering (on/off)
|
|---|
| 32 | > _glBilinearFilter ^= true;
|
|---|
| 33 | > for (int i=0; i<2; i++) {
|
|---|
| 34 | > glBindTexture(GL_TEXTURE_2D,i);
|
|---|
| 35 | > if (_glBilinearFilter) {
|
|---|
| 36 | > glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER,
|
|---|
| 37 | > GL_LINEAR);
|
|---|
| 38 | > glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
|
|---|
| 39 | > GL_LINEAR);
|
|---|
| 40 | > }
|
|---|
| 41 | > else {
|
|---|
| 42 | > glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER,
|
|---|
| 43 | > GL_NEAREST);
|
|---|
| 44 | > glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
|
|---|
| 45 | > GL_NEAREST);
|
|---|
| 46 | > }
|
|---|
| 47 | > }
|
|---|
| 48 | > break;
|
|---|
| 49 | > case 1: // Don't fit the whole screen
|
|---|
| 50 | > fb2gl.init(0,0,0,15,gl_flags);
|
|---|
| 51 | > _glScreenStart = 20;
|
|---|
| 52 | > SDL_FillRect(tmpSurface,&tmpBlackRect,0);
|
|---|
| 53 | > fb2gl.blit16(tmpSurface,1,&tmpBlackRect,0,0);
|
|---|
| 54 | > break;
|
|---|
| 55 | > case 2: // Fit the whole screen
|
|---|
| 56 | > fb2gl.init(0,0,0,70,gl_flags);
|
|---|
| 57 | > _glScreenStart = 0;
|
|---|
| 58 | > break;
|
|---|
| 59 | > default: // Zooming
|
|---|
| 60 | > glPushMatrix();
|
|---|
| 61 | > /* SDL_FillRect(tmpSurface, &full, 0);
|
|---|
| 62 | > fb2gl.blit16(tmpSurface,1,&full,0,_glScreenStart);
|
|---|
| 63 | > fb2gl.display();
|
|---|
| 64 | > double x = (double)((_mouse_cur_state.x)
|
|---|
| 65 | > - (_screenWidth/2)) / (_screenWidth/2);
|
|---|
| 66 | > double y = (double)((_mouse_cur_state.y)
|
|---|
| 67 | > - (_screenHeight/2)) / (_screenHeight/2);
|
|---|
| 68 | > glTranslatef(-x,y,0);
|
|---|
| 69 | > */
|
|---|
| 70 | > glScalef(1.0+(double)(value->gfx_mode-1)/10,
|
|---|
| 71 | > 1.0+(double)(value->gfx_mode-1)/10,
|
|---|
| 72 | > 0);
|
|---|
| 73 | > };
|
|---|
| 74 | 423a460
|
|---|
| 75 | >
|
|---|