Speed slider size and value display ok. TODO: make the mouse hold work, save EmuSpeed setting in config file and bind it to current code.

This commit is contained in:
grinvader
2005-05-14 13:39:55 +00:00
parent 5bb6f33d5c
commit af7dacccf7
3 changed files with 217 additions and 232 deletions

View File

@@ -55,15 +55,17 @@ ProcessMouse:
mov edx,223 mov edx,223
call Set_MouseYMax call Set_MouseYMax
.nohold1 .nohold1
cmp byte[GUIHold],5 cmp byte[GUIHold],5 ; Sound Slider
je .dohold5 je .dohold5
cmp byte[GUIHold],2 cmp byte[GUIHold],6 ; Speed Slider
je .dohold5
cmp byte[GUIHold],2 ; Colour Slider
jne .nohold2m jne .nohold2m
.dohold5 .dohold5
mov ecx,[GUIHoldXlimL] mov ecx,[GUIHoldXlimL] ; Sets min/max move range for mouse
mov edx,[GUIHoldXlimR] mov edx,[GUIHoldXlimR] ; once holding slider
call Set_MouseXMax call Set_MouseXMax
mov ecx,[GUIHoldYlim] mov ecx,[GUIHoldYlim] ; Locks pointer on slider
mov edx,[GUIHoldYlim] mov edx,[GUIHoldYlim]
call Set_MouseYMax call Set_MouseYMax
.nohold2m .nohold2m
@@ -121,6 +123,7 @@ ProcessMouse:
mov word[GUImouseposy],100 mov word[GUImouseposy],100
.nowrapdown .nowrapdown
jmp ProcessMouseButtons jmp ProcessMouseButtons
ProcessMouseWrap: ProcessMouseWrap:
call Get_MousePositionDisplacement call Get_MousePositionDisplacement
add word[GUImouseposx],cx add word[GUImouseposx],cx
@@ -417,7 +420,7 @@ ProcessMouseButtons:
mov byte[GUICBHold],0 mov byte[GUICBHold],0
ret ret
.hold5 .hold5
; Slide Bar Hold ; Sound Slide Bar Hold
mov eax,[GUIHoldYlim] mov eax,[GUIHoldYlim]
mov [GUImouseposy],eax mov [GUImouseposy],eax
mov ebx,[GUImouseposx] mov ebx,[GUImouseposx]
@@ -2057,7 +2060,7 @@ DisplayGUIMovieClick:
GUIPHoldbutton 17,55,59,66,19 GUIPHoldbutton 17,55,59,66,19
GUIPHoldbutton 70,55,112,66,20 GUIPHoldbutton 70,55,112,66,20
ret ret
.displayboxa ; Main Window .displayboxa ; Main Window
GUIPHoldbutton 7,17,49,28,16 ; Buttons GUIPHoldbutton 7,17,49,28,16 ; Buttons
GUIPHoldbutton 7,33,49,44,17 GUIPHoldbutton 7,33,49,44,17
@@ -2067,7 +2070,7 @@ DisplayGUIMovieClick:
GUIPHoldbutton 7,113,109,124,31 GUIPHoldbutton 7,113,109,124,31
GUIPHoldbutton 7,65,49,76,32 GUIPHoldbutton 7,65,49,76,32
GUIPHoldbutton 61,65,155,76,34 GUIPHoldbutton 61,65,155,76,34
; Ratios ; Ratios
GUIPButtonHole 60,25,byte[CMovieExt],'v' ; Select GUIPButtonHole 60,25,byte[CMovieExt],'v' ; Select
GUIPButtonHole 80,25,byte[CMovieExt],'1' GUIPButtonHole 80,25,byte[CMovieExt],'1'
@@ -2079,7 +2082,7 @@ DisplayGUIMovieClick:
GUIPButtonHole 100,40,byte[CMovieExt],'7' GUIPButtonHole 100,40,byte[CMovieExt],'7'
GUIPButtonHole 120,40,byte[CMovieExt],'8' GUIPButtonHole 120,40,byte[CMovieExt],'8'
GUIPButtonHole 140,40,byte[CMovieExt],'9' GUIPButtonHole 140,40,byte[CMovieExt],'9'
GUIPButtonHole 8,137,byte[MovieStartMethod],0 ; Start From GUIPButtonHole 8,137,byte[MovieStartMethod],0 ; Start From
GUIPButtonHole 43,137,byte[MovieStartMethod],1 GUIPButtonHole 43,137,byte[MovieStartMethod],1
GUIPButtonHole 88,137,byte[MovieStartMethod],2 GUIPButtonHole 88,137,byte[MovieStartMethod],2
@@ -2088,7 +2091,7 @@ DisplayGUIMovieClick:
DGOptnsProcBox 116,84,[KeyInsrtChap] ; Keyboard Shortcut Boxes DGOptnsProcBox 116,84,[KeyInsrtChap] ; Keyboard Shortcut Boxes
DGOptnsProcBox 116,100,[KeyPrevChap] DGOptnsProcBox 116,100,[KeyPrevChap]
DGOptnsProcBox 116,116,[KeyNextChap] DGOptnsProcBox 116,116,[KeyNextChap]
GUIClickCButton 60,50,byte[MovieDisplayFrame] ; Checkbox GUIClickCButton 60,50,byte[MovieDisplayFrame] ; Checkbox
ret ret
@@ -2772,7 +2775,7 @@ DisplayGameOptnsClick:
DGOptnsProcBox 27+45,50,[KeyDisableSC5] DGOptnsProcBox 27+45,50,[KeyDisableSC5]
DGOptnsProcBox 27+45*2,50,[KeyDisableSC6] DGOptnsProcBox 27+45*2,50,[KeyDisableSC6]
DGOptnsProcBox 27+45*3,50,[KeyDisableSC7] DGOptnsProcBox 27+45*3,50,[KeyDisableSC7]
DGOptnsProcBox 8+25,70,[KeyQuickLoad] DGOptnsProcBox 8+25,70,[KeyQuickLoad]
DGOptnsProcBox 8+57+26,70,[KeyQuickRst] DGOptnsProcBox 8+57+26,70,[KeyQuickRst]
DGOptnsProcBox 8+114+20,70,[KeyQuickExit] DGOptnsProcBox 8+114+20,70,[KeyQuickExit]
@@ -2780,7 +2783,7 @@ DisplayGameOptnsClick:
DGOptnsProcBox 8+25,80,[KeyQuickChat] DGOptnsProcBox 8+25,80,[KeyQuickChat]
DGOptnsProcBox 8+57+45,80,[KeyQuickSnapShot] DGOptnsProcBox 8+57+45,80,[KeyQuickSnapShot]
DGOptnsProcBox 8+108+70,80,[KeyQuickSaveSPC] DGOptnsProcBox 8+108+70,80,[KeyQuickSaveSPC]
DGOptnsProcBox 78,100,[KeyUsePlayer1234] DGOptnsProcBox 78,100,[KeyUsePlayer1234]
DGOptnsProcBox 78,110,[KeyResetAll] DGOptnsProcBox 78,110,[KeyResetAll]
DGOptnsProcBox 78,120,[KeyExtraEnab] DGOptnsProcBox 78,120,[KeyExtraEnab]
@@ -3171,7 +3174,7 @@ DisplayGUIAddOnClick:
GUIPButtonHole 9,55,byte[snesmouse],4 GUIPButtonHole 9,55,byte[snesmouse],4
ret ret
DisplayGUIChipClick DisplayGUIChipClick:
GUIClickCButton 9,43,byte[nssdip1] GUIClickCButton 9,43,byte[nssdip1]
GUIClickCButton 59,43,byte[nssdip2] GUIClickCButton 59,43,byte[nssdip2]
GUIClickCButton 109,43,byte[nssdip3] GUIClickCButton 109,43,byte[nssdip3]
@@ -3180,7 +3183,7 @@ DisplayGUIChipClick
GUIClickCButton 109,53,byte[nssdip6] GUIClickCButton 109,53,byte[nssdip6]
ret ret
DisplayGUIPathsClick DisplayGUIPathsClick:
GUITextBoxInputNach 75,15,230,25,1,1024 ;SRAMDir GUITextBoxInputNach 75,15,230,25,1,1024 ;SRAMDir
GUITextBoxInputNach 75,35,230,45,2,1024 ;SnapPath GUITextBoxInputNach 75,35,230,45,2,1024 ;SnapPath
GUITextBoxInputNach 75,55,230,65,3,1024 ;SPCPath GUITextBoxInputNach 75,55,230,65,3,1024 ;SPCPath
@@ -3223,53 +3226,35 @@ DisplayGUISaveClick:
DGOptnsProcBox 8+114+25,148,[KeyStateSelct] DGOptnsProcBox 8+114+25,148,[KeyStateSelct]
DGOptnsProcBox 8+38,157,[KeyRewind] DGOptnsProcBox 8+38,157,[KeyRewind]
ret ret
DisplayGUISpeedClick DisplayGUISpeedClick:
DGOptnsProcBox 100,28,[KeyFastFrwrd] DGOptnsProcBox 100,28,[KeyFastFrwrd]
DGOptnsProcBox 100,38,[KeySlowDown] DGOptnsProcBox 100,38,[KeySlowDown]
DGOptnsProcBox 100,48,[KeyResetSpeed] DGOptnsProcBox 100,48,[KeyResetSpeed]
cmp eax,15 cmp eax,15
jl near .nomovebar jl near .nomovebar
cmp eax,15+60 cmp eax,15+116
jg near .nomovebar jg near .nomovebar
sub eax,15
shr eax,1
cmp edx,89 cmp edx,89
jl near .nomovebar jl near .nomovebar
cmp edx,93 cmp edx,93
jg near .nomovebar jg near .nomovebar
sub eax,15
mov [EmuSpeed],al mov [EmuSpeed],al
; mov [cfgvolume],al mov byte[GUIHold],6
mov byte[GUIHold],5
mov eax,[GUIwinposy+21*4] mov eax,[GUIwinposy+21*4]
add eax,91 add eax,91
mov [GUIHoldYlim],eax mov [GUIHoldYlim],eax
xor eax,eax
xor edx,edx
mov al,[EmuSpeed]
shl eax,7
mov ebx,100
div ebx
cmp al,127
jb .noof
mov al,127
.noof
; mov [MusicVol],al
; mov al,[DSPMem+0Ch]
; call WDSPReg0C
; mov al,[DSPMem+1Ch]
; call WDSPReg1C
mov eax,[GUIwinposx+21*4] mov eax,[GUIwinposx+21*4]
add eax,15 add eax,15
mov [GUIHoldXlimL],eax mov [GUIHoldXlimL],eax
add eax,100 add eax,116
mov [GUIHoldXlimR],eax mov [GUIHoldXlimR],eax
.nomovebar .nomovebar
ret ret
DrawMouse: DrawMouse:
mov edi,[vidbuffer] mov edi,[vidbuffer]
add edi,16 add edi,16
@@ -3348,6 +3333,3 @@ DrawMouse:
dec edx dec edx
jnz near .next2 jnz near .next2
ret ret

File diff suppressed because it is too large Load Diff

View File

@@ -139,8 +139,8 @@ unsigned char *spc7110romptr;
unsigned char MusicRelVol = 75; unsigned char MusicRelVol = 75;
unsigned char MusicVol = 0; unsigned char MusicVol = 0;
unsigned char MMXextSupport = 0; unsigned char MMXextSupport = 0;
unsigned char EmuSpeed = 15; unsigned char EmuSpeed = 29; // 29 = 1x, 0 = /30 and 58 = 30x
void outofmemory(); void outofmemory();
void init(); void init();