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 | >
|
---|