From ce305c62c85a4cc0d3853b4555e483fb33bfb983 Mon Sep 17 00:00:00 2001 From: hpsolo <> Date: Wed, 30 May 2001 09:24:35 +0000 Subject: [PATCH] Added in 800x600 and 1024x768 full screen mode for OpenGL --- zsnes/src/cfgload.asm | 14 ++++++------- zsnes/src/linux/sdlintrf.asm | 40 +++++++++++++++++++----------------- zsnes/src/linux/sdllink.c | 12 +++++++++++ 3 files changed, 39 insertions(+), 27 deletions(-) diff --git a/zsnes/src/cfgload.asm b/zsnes/src/cfgload.asm index 5c6d7d28..368d7ab8 100644 --- a/zsnes/src/cfgload.asm +++ b/zsnes/src/cfgload.asm @@ -599,20 +599,18 @@ db 'VideoMode = %U',13,10 db '',13,10 %elifdef __LINUX__ %ifdef __OPENGL__ -db '; Video Mode, 0 - 10',13,10 +db '; Video Mode, 0 - 12',13,10 %else db '; Video Mode, 0 - 3',13,10 %endif db '; 0 = 256x224 WIN 1 = 256x224 FULL',13,10 db '; 2 = 512x448 WIN 3 = 640x480 FULL',13,10 %ifdef __OPENGL__ -db '; 4 = 256x224 OGL WIN',13,10 -db '; 5 = 512x448 OGL WIN',13,10 -db '; 6 = 640x480 OGL FULL',13,10 -db '; 7 = 640x576 OGL WIN',13,10 -db '; 8 = 768x672 OGL WIN ',13,10 -db '; 9 = 896x784 OGL WIN ',13,10 -db '; 10 = 1024x896 OGL WIN ',13,10 +db '; 4 = 256x224 OGL WIN 5 = 512x448 OGL WIN',13,10 +db '; 6 = 640x480 OGL FULL 7 = 640x576 OGL WIN',13,10 +db '; 8 = 768x672 OGL WIN 9 = 896x784 OGL WIN',13,10 +db '; 10 = 1024x896 OGL WIN 11 = 800x600 OGL FULL',13,10 +db '; 12 = 1024x768 OGL FULL',13,10 %endif db '',13,10 db 'VideoMode = %U',13,10 diff --git a/zsnes/src/linux/sdlintrf.asm b/zsnes/src/linux/sdlintrf.asm index 16bc0c2c..da0e4f85 100644 --- a/zsnes/src/linux/sdlintrf.asm +++ b/zsnes/src/linux/sdlintrf.asm @@ -970,7 +970,7 @@ SECTION .data ; Total Number of Video Modes %ifdef __OPENGL__ -NEWSYM NumVideoModes, dd 11 +NEWSYM NumVideoModes, dd 13 %else NEWSYM NumVideoModes, dd 4 %endif @@ -990,28 +990,30 @@ db '640x576 OGL WIN ',0 ;7 db '768x672 OGL WIN ',0 ;8 db '896x784 OGL WIN ',0 ;9 db '1024x896 OGL WIN ',0 ;10 +db '800x600 OGL FULL',0 ;11 +db '1024x768 OGL FULL',0 ;12 %endif ; Video Mode Feature Availability (1 = Available, 0 = Not Available) ; Left side starts with Video Mode 0 -; vid mode column = 0,1,2,3,4,5,6,7,8,9,0,1 -NEWSYM GUI16VID, db 1,1,1,1,1,1,1,1,1,1,1,1 ; 16-bit mode -NEWSYM GUINGVID, db 0,0,0,0,0,0,0,0,0,0,0,0 ; New Graphics Mode Available -NEWSYM GUISLVID, db 0,0,0,0,0,0,0,0,0,0,0,0 ; Scanlines -NEWSYM GUIINVID, db 0,0,0,0,0,0,0,0,0,0,0,0 ; Interpolation -NEWSYM GUII2VID, db 0,0,1,1,0,0,0,0,0,0,0,0 ; Interpolation(w) -NEWSYM GUIEAVID, db 0,0,0,0,0,0,0,0,0,0,0,0 ; Eagle -NEWSYM GUIIEVID, db 0,0,0,0,0,0,0,0,0,0,0,0 ; (Interp | Eagle) -NEWSYM GUIFSVID, db 0,0,0,0,0,0,0,0,0,0,0,0 ; Full Screen -NEWSYM GUISSVID, db 0,0,0,0,0,0,0,0,0,0,0,0 ; Small Screen -NEWSYM GUITBVID, db 0,0,0,0,0,0,0,0,0,0,0,0 ; Triple Buffering -NEWSYM GUIHSVID, db 0,0,1,1,0,0,0,0,0,0,0,0 ; Half/Quarter Scanlines -NEWSYM GUI2xVID, db 0,0,1,1,0,0,0,0,0,0,0,0 ; 2xSaI/Super Eagle Engines -NEWSYM GUIM7VID, db 0,0,1,1,0,0,0,0,0,0,0,0 ; ?Mode 7 video thing? -NEWSYM GUIWFVID, db 0,1,0,1,0,0,1,0,0,0,0,0 ; If Windows Full Screen -NEWSYM GUIDSIZE, db 0,0,1,1,0,0,0,0,0,0,0,0 -NEWSYM GUIRATIO, db 0,1,0,0,0,0,1,0,0,0,0,0 -NEWSYM GUIBIFIL, db 0,0,0,0,1,1,1,1,1,1,1,1 ; binlinear = 1, nearest = 0 +; vid mode column = 0,1,2,3,4,5,6,7,8,9,0,1,2 +NEWSYM GUI16VID, db 1,1,1,1,1,1,1,1,1,1,1,1,1 ; 16-bit mode +NEWSYM GUINGVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0 ; New Graphics Mode Available +NEWSYM GUISLVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0 ; Scanlines +NEWSYM GUIINVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0 ; Interpolation +NEWSYM GUII2VID, db 0,0,1,1,0,0,0,0,0,0,0,0,0 ; Interpolation(w) +NEWSYM GUIEAVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0 ; Eagle +NEWSYM GUIIEVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0 ; (Interp | Eagle) +NEWSYM GUIFSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0 ; Full Screen +NEWSYM GUISSVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0 ; Small Screen +NEWSYM GUITBVID, db 0,0,0,0,0,0,0,0,0,0,0,0,0 ; Triple Buffering +NEWSYM GUIHSVID, db 0,0,1,1,0,0,0,0,0,0,0,0,0 ; Half/Quarter Scanlines +NEWSYM GUI2xVID, db 0,0,1,1,0,0,0,0,0,0,0,0,0 ; 2xSaI/Super Eagle Engines +NEWSYM GUIM7VID, db 0,0,1,1,0,0,0,0,0,0,0,0,0 ; ?Mode 7 video thing? +NEWSYM GUIWFVID, db 0,1,0,1,0,0,1,0,0,0,0,1,1 ; If Windows Full Screen +NEWSYM GUIDSIZE, db 0,0,1,1,0,0,0,0,0,0,0,0,0 +NEWSYM GUIRATIO, db 0,1,0,0,0,0,1,0,0,0,0,0,0 +NEWSYM GUIBIFIL, db 0,0,0,0,1,1,1,1,1,1,1,1,1 ; binlinear = 1, nearest = 0 SECTION .text diff --git a/zsnes/src/linux/sdllink.c b/zsnes/src/linux/sdllink.c index 9c879bd0..25725f9f 100644 --- a/zsnes/src/linux/sdllink.c +++ b/zsnes/src/linux/sdllink.c @@ -796,6 +796,18 @@ void initwinvideo(void) SurfaceX=1024; SurfaceY=896; break; + case 11: + WindowWidth=800; + WindowHeight=600; + SurfaceX=800; + SurfaceY=600; + break; + case 12: + WindowWidth=1024; + WindowHeight=768; + SurfaceX=1024; + SurfaceY=768; + break; default: WindowWidth=256; WindowHeight=224;