diff --git a/zsnes/src/gui/gui.asm b/zsnes/src/gui/gui.asm index 6982fb94..ade2918e 100644 --- a/zsnes/src/gui/gui.asm +++ b/zsnes/src/gui/gui.asm @@ -586,6 +586,7 @@ NEWSYM SmallMsgText, db 0 NEWSYM AllowMultipleInst, db 0 NEWSYM FilteredGUI, db 0 NEWSYM BilinearFilter, db 0 +NEWSYM TripleBufferWin, db 0 NEWSYM ExclusiveSound, db 0 NEWSYM DisableScreenSaver, db 0 diff --git a/zsnes/src/gui/guikeys.inc b/zsnes/src/gui/guikeys.inc index ddb717a6..c59a62a9 100644 --- a/zsnes/src/gui/guikeys.inc +++ b/zsnes/src/gui/guikeys.inc @@ -1229,7 +1229,7 @@ GUIVideoKeys: jne .nokitchensync xor ebx,ebx mov bl,[cvidmode] - cmp byte[GUITBVID+ebx],0 + cmp byte[GUITBWVID+ebx],0 je .nokitchensync xor byte[KitchenSync],1 .nokitchensync diff --git a/zsnes/src/gui/guimouse.inc b/zsnes/src/gui/guimouse.inc index cdc2d8b0..51acd2a3 100644 --- a/zsnes/src/gui/guimouse.inc +++ b/zsnes/src/gui/guimouse.inc @@ -2324,10 +2324,13 @@ DisplayGUIVideoClick: cmp byte[GUITBVID+ebx],0 je .nocheckboxttb GUIClickCButtonT 11,163,byte[Triplebufen],byte[vsyncon] -%ifdef __WIN32__ - GUIClickCButton 83,173,byte[KitchenSync] -%endif .nocheckboxttb + xor ebx,ebx + mov bl,[cvidmode] + cmp byte[GUITBVID+ebx],0 + je .nocheckboxks + GUIClickCButton 83,173,byte[KitchenSync] +.nocheckboxks GUIClickCButton 11,183,byte[GrayscaleMode] %ifdef __WIN32__ GUIClickCButtonf 115,183,byte[vsyncon],initDirectDraw diff --git a/zsnes/src/gui/guiwindp.inc b/zsnes/src/gui/guiwindp.inc index 764547b5..c8b084bc 100644 --- a/zsnes/src/gui/guiwindp.inc +++ b/zsnes/src/gui/guiwindp.inc @@ -1695,6 +1695,12 @@ DisplayGUIVideo: GUIOuttextwin2u 5,76,119,GUIVideoTexta2,0 GUIOuttextwin2u 5,116,119,GUIVideoTexta3,0 .notexta + xor eax,eax + mov al,[cvidmode] + cmp byte[GUITBWVID+eax],0 + je near .nottbw + GUIOuttextwin2u 5,26,128,GUIVideoText7,0 +.nottbw xor eax,eax mov al,[cvidmode] cmp byte[GUI2xVID+eax],0 @@ -1751,8 +1757,11 @@ DisplayGUIVideo: cmp byte[GUITBVID+eax],0 je .notext7 GUIOuttextwin2u 5,26,168,GUIVideoText7,0 - GUIOuttextwin2u 5,98,178,GUIVideoText10,0 .notext7 + cmp byte[GUITBWVID+eax],0 + je .notext77 + GUIOuttextwin2u 5,98,178,GUIVideoText10,0 +.notext77 xor eax,eax mov al,[cvidmode] cmp byte[GUIM7VID+eax],0 @@ -1797,6 +1806,12 @@ DisplayGUIVideo: GUIOuttextwin2 5,75,118,GUIVideoTexta2 GUIOuttextwin2 5,115,118,GUIVideoTexta3 .notextab + xor eax,eax + mov al,[cvidmode] + cmp byte[GUITBWVID+eax],0 + je near .nottbwb + GUIOuttextwin2 5,25,127,GUIVideoText7 +.nottbwb xor eax,eax mov al,[cvidmode] cmp byte[GUI2xVID+eax],0 @@ -1853,8 +1868,11 @@ DisplayGUIVideo: cmp byte[GUITBVID+eax],0 je .notext7b GUIOuttextwin2 5,25,167,GUIVideoText7 - GUIOuttextwin2 5,97,177,GUIVideoText10 .notext7b + cmp byte[GUITBWVID+eax],0 + je .notext7c + GUIOuttextwin2 5,97,177,GUIVideoText10 +.notext7c xor eax,eax mov al,[cvidmode] cmp byte[GUIM7VID+eax],0 @@ -1911,6 +1929,17 @@ DisplayGUIVideo: .nocheckboxv2 GUIDisplayIconWin 5,101,114,[GUITemp] .nocheckboxw + xor eax,eax + mov al,[cvidmode] + cmp byte[GUITBWVID+eax],0 + je near .nocheckboxslw2 + mov dword[GUITemp],GUIIconDataCheckBoxUC + cmp byte[TripleBufferWin],1 + jne .nocheckboxslw + mov dword[GUITemp],GUIIconDataCheckBoxC +.nocheckboxslw + GUIDisplayIconWin 5,11,123,[GUITemp] +.nocheckboxslw2 xor eax,eax mov al,[cvidmode] cmp byte[GUI2xVID+eax],0 @@ -1999,7 +2028,7 @@ DisplayGUIVideo: %endif xor eax,eax mov al,[cvidmode] - cmp byte[GUITBVID+eax],0 + cmp byte[GUITBWVID+eax],0 je .nocheckboxks2 mov dword[GUITemp],GUIIconDataCheckBoxUC cmp byte[KitchenSync],0