From e8839b4efc4a93bc974ffb8b9c584a4cd735e574 Mon Sep 17 00:00:00 2001 From: pagefault <> Date: Wed, 16 May 2001 22:43:14 +0000 Subject: [PATCH] Mouse wheel toggle --- zsnes/src/gui/gui.asm | 2 +- zsnes/src/win/winlink.cpp | 45 ++++++++++++++++++++++----------------- 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/zsnes/src/gui/gui.asm b/zsnes/src/gui/gui.asm index 743b5e70..c7214375 100644 --- a/zsnes/src/gui/gui.asm +++ b/zsnes/src/gui/gui.asm @@ -580,7 +580,7 @@ NEWSYM GUIWBAdd, db 25 NEWSYM BlackAndWhite, db 0 -NEWSYM MouseWheel, db 0 +NEWSYM MouseWheel, db 1 GUIsave equ $-GUIRAdd diff --git a/zsnes/src/win/winlink.cpp b/zsnes/src/win/winlink.cpp index 6916ae52..63ee95d6 100644 --- a/zsnes/src/win/winlink.cpp +++ b/zsnes/src/win/winlink.cpp @@ -217,6 +217,8 @@ extern "C" void MinimizeWindow() IsMinimized = TRUE; } +extern "C" BYTE MouseWheel; + BOOL InputRead(void) { static PrevZ=0; @@ -245,27 +247,30 @@ aquireagain:; MouseMoveX=dims.lX; MouseMoveY=dims.lY; - long zDelta = dims.lZ-PrevZ; - if (!dims.lZ) zDelta=0; - while (zDelta>0){ - zDelta-=40; - if (!((CurKeyPos+1==CurKeyReadPos) || ((CurKeyPos+1==16) - && (CurKeyReadPos==0)))){ - KeyBuffer[CurKeyPos]=72+256; - CurKeyPos++; - if (CurKeyPos==16) CurKeyPos=0; - } + if (MouseWheel == 1) + { + long zDelta = dims.lZ-PrevZ; + if (!dims.lZ) zDelta=0; + while (zDelta>0){ + zDelta-=40; + if (!((CurKeyPos+1==CurKeyReadPos) || ((CurKeyPos+1==16) + && (CurKeyReadPos==0)))){ + KeyBuffer[CurKeyPos]=72+256; + CurKeyPos++; + if (CurKeyPos==16) CurKeyPos=0; + } + } + while (zDelta<0){ + zDelta+=40; + if (!((CurKeyPos+1==CurKeyReadPos) || ((CurKeyPos+1==16) + && (CurKeyReadPos==0)))){ + KeyBuffer[CurKeyPos]=80+256; + CurKeyPos++; + if (CurKeyPos==16) CurKeyPos=0; + } + } + PrevZ=dims.lZ; } - while (zDelta<0){ - zDelta+=40; - if (!((CurKeyPos+1==CurKeyReadPos) || ((CurKeyPos+1==16) - && (CurKeyReadPos==0)))){ - KeyBuffer[CurKeyPos]=80+256; - CurKeyPos++; - if (CurKeyPos==16) CurKeyPos=0; - } - } - PrevZ=dims.lZ; MouseButton=(dims.rgbButtons[0]>>7)|(dims.rgbButtons[1]>>6)|(dims.rgbButtons[2]>>5)|(dims.rgbButtons[3]>>4); }