From 83c5e2a0ac79ebd19c076e86259f025f27ac7d61 Mon Sep 17 00:00:00 2001 From: zsknight <> Date: Tue, 29 May 2001 00:17:50 +0000 Subject: [PATCH] Filtered GUI option --- zsnes/src/gui/gui.asm | 8 ++++++++ zsnes/src/gui/guimouse.inc | 1 + zsnes/src/gui/guiwindp.inc | 9 +++++++++ zsnes/src/linux/copyvwin.asm | 5 ++++- zsnes/src/win/copyvwin.asm | 5 ++++- 5 files changed, 26 insertions(+), 2 deletions(-) diff --git a/zsnes/src/gui/gui.asm b/zsnes/src/gui/gui.asm index aa5d6f50..aedee6c5 100644 --- a/zsnes/src/gui/gui.asm +++ b/zsnes/src/gui/gui.asm @@ -582,6 +582,7 @@ NEWSYM BlackAndWhite, db 0 NEWSYM MouseWheel, db 1 NEWSYM AlternateTimer, db 0 NEWSYM AllowMultipleInst, db 0 +NEWSYM FilteredGUI, db 0 GUIsave equ $-GUIRAdd @@ -2691,6 +2692,13 @@ guiprevidmsg6 db 'MODE WILL BE RESET',0 guiprevidmsg7 db 'PRESS ANY KEY',0 guipostvideo: + mov ecx,255*144 + mov eax,[vidbufferofsb] +.loop + mov dword[eax],0FFFFFFFFh + add eax,4 + loop .loop + xor ebx,ebx mov ecx,256 .a diff --git a/zsnes/src/gui/guimouse.inc b/zsnes/src/gui/guimouse.inc index 3cf4d74f..6a7e999e 100644 --- a/zsnes/src/gui/guimouse.inc +++ b/zsnes/src/gui/guimouse.inc @@ -2648,6 +2648,7 @@ DisplayGUIOptnsClick: GUIClickCButton 12,188,byte[AllowMultipleInst] GUIClickCButton 124,33,byte[MouseWheel] %endif + GUIClickCButton 124,43,byte[FilteredGUI] GUIPButtonHole 48,108,byte[CurPalSelect],0 GUIPButtonHole 88,108,byte[CurPalSelect],1 GUIPButtonHole 135,108,byte[CurPalSelect],2 diff --git a/zsnes/src/gui/guiwindp.inc b/zsnes/src/gui/guiwindp.inc index 0bb5be48..96013a80 100644 --- a/zsnes/src/gui/guiwindp.inc +++ b/zsnes/src/gui/guiwindp.inc @@ -4676,6 +4676,12 @@ DisplayGUIOptns: .nocheckr GUIDisplayIconWin 10,124,33,[GUITemp] %endif + mov dword[GUITemp],GUIIconDataCheckBoxUC + cmp byte[FilteredGUI],1 + jne .nocheckfg + mov dword[GUITemp],GUIIconDataCheckBoxC +.nocheckfg + GUIDisplayIconWin 10,124,43,[GUITemp] mov dword[GUITemp],GUIIconDataCheckBoxUC cmp byte[mousewrap],1 jne .nocheck @@ -4783,6 +4789,7 @@ DisplayGUIOptns: GUIOuttextwin2u 10,26,173,GUIGUIOptnsTextE,0 GUIOuttextwin2u 10,26,183,GUIGUIOptnsTextF,2 GUIOuttextwin2u 10,138,38,GUIGUIOptnsTextK,1 + GUIOuttextwin2u 10,138,48,GUIGUIOptnsTextM,1 GUIOuttextwin2u 10,26,193,GUIGUIOptnsTextL,1 %endif mov byte[GUIGUIOptnsText6],'R' @@ -4808,6 +4815,7 @@ DisplayGUIOptns: GUIOuttextwin2 10,25,172,GUIGUIOptnsTextE GUIOuttextwin2 10,25,182,GUIGUIOptnsTextF GUIOuttextwin2 10,137,37,GUIGUIOptnsTextK + GUIOuttextwin2 10,137,47,GUIGUIOptnsTextM GUIOuttextwin2 10,25,192,GUIGUIOptnsTextL %endif mov byte[GUIGUIOptnsText6],'R' @@ -4902,6 +4910,7 @@ GUIGUIOptnsTextI db 'WIN',0 GUIGUIOptnsTextJ db 'TRANSPARENT MSGS',0 GUIGUIOptnsTextK db 'WHEEL MOUSE',0 GUIGUIOptnsTextL db 'ALLOW MULTIPLE INSTANCES',0 +GUIGUIOptnsTextM db 'FILTERED GUI',0 DisplayGUIAbout: ; cmp byte[OSPort],3 diff --git a/zsnes/src/linux/copyvwin.asm b/zsnes/src/linux/copyvwin.asm index da34be35..9b6367a6 100644 --- a/zsnes/src/linux/copyvwin.asm +++ b/zsnes/src/linux/copyvwin.asm @@ -21,7 +21,7 @@ EXTSYM vesa2selec,vidbuffer,GUIOn,FPUCopy,resolutn,En2xSaI,antienab,scanlines EXTSYM hirestiledat,res512switch,curblank,spritetablea EXTSYM lineleft,_2xSaILineW,_2xSaISuperEagleLineW, _2xSaISuper2xSaILineW EXTSYM newengen,cfield,HalfTrans -EXTSYM GUIOn2 +EXTSYM GUIOn2,FilteredGUI EXTSYM SpecialLine EXTSYM vidbufferofsb EXTSYM HalfTransB,HalfTransC @@ -46,8 +46,11 @@ NEWSYM copy640x480x16bwin add esi,16*2+256*2+32*2 xor eax,eax ; Check if interpolation mode + cmp byte[FilteredGUI],0 + jne .yi cmp byte[GUIOn2],1 je .nointerp +.yi cmp byte[FPUCopy],2 jne .nommx cmp byte[En2xSaI],0 diff --git a/zsnes/src/win/copyvwin.asm b/zsnes/src/win/copyvwin.asm index b7900c78..4d8e41ce 100644 --- a/zsnes/src/win/copyvwin.asm +++ b/zsnes/src/win/copyvwin.asm @@ -21,7 +21,7 @@ EXTSYM vesa2selec,vidbuffer,GUIOn,FPUCopy,resolutn,En2xSaI,antienab,scanlines EXTSYM hirestiledat,res512switch,curblank,spritetablea EXTSYM lineleft,_2xSaILineW,_2xSaISuperEagleLineW, _2xSaISuper2xSaILineW EXTSYM newengen,cfield,HalfTrans -EXTSYM GUIOn2 +EXTSYM GUIOn2,FilteredGUI EXTSYM SpecialLine EXTSYM vidbufferofsb ;EXTSYM Super2xSaI @@ -46,8 +46,11 @@ NEWSYM copy640x480x16bwin add esi,16*2+256*2+32*2 xor eax,eax ; Check if interpolation mode + cmp byte[FilteredGUI],0 + jne .yi cmp byte[GUIOn2],1 je .nointerp +.yi cmp byte[FPUCopy],2 jne .nommx cmp byte[En2xSaI],0