Fixed screen refresh for SDL software modes when toggling hq2x. Fixed a key repeating bug when changing resolutions. Can now choose screen mode with enter key. Some source cleanup.

This commit is contained in:
grinvader
2006-03-22 20:06:58 +00:00
parent 15dbf2631c
commit f0d4f10d30
3 changed files with 32 additions and 23 deletions

View File

@@ -1529,8 +1529,8 @@ guimencodermsg:
ret ret
SECTION .data SECTION .data
guimencodert1 db ' MENCODER IS MISSING : ',0 guimencodert1 db ' MENCODER IS MISSING: ',0
guimencodert2 db ' PRESS SPACE TO CONTINUE',0 guimencodert2 db 'PRESS SPACE TO PROCEED',0
SECTION .text SECTION .text
@@ -1730,17 +1730,18 @@ guiprevideo:
mov ecx,256+128+64 mov ecx,256+128+64
.b .b
cmp byte[pressed+ebx],0 cmp byte[pressed+ebx],0
jne .pressedokay jne .pressedkey
inc ebx inc ebx
dec ecx dec ecx
jnz .b jnz .b
cmp byte[MouseDis],1 cmp byte[MouseDis],1
je .mousedis je .again
call Get_MouseData call Get_MouseData
test bx,01h test bx,01h
jnz .pressedokay jnz .pressedokay
.mousedis
jmp .again jmp .again
.pressedkey
mov byte[pressed+ebx],0
.pressedokay .pressedokay
ret ret
@@ -2251,16 +2252,16 @@ SECTION .text
DisplayBoxes: ; Displays window when item is clicked DisplayBoxes: ; Displays window when item is clicked
xor esi,esi xor esi,esi
mov byte[cwindrawn],0
.next2 .next2
mov al,[GUIwinorder+esi] mov al,[GUIwinorder+esi]
cmp al,0 cmp al,0
je .done je .done
inc byte[cwindrawn]
inc esi inc esi
jmp .next2 jmp .next2
.done .done
dec byte[cwindrawn] mov eax,esi
dec eax
mov [cwindrawn],al
xor eax,eax xor eax,eax
xor esi,esi xor esi,esi
.next .next

View File

@@ -150,8 +150,7 @@ SECTION .text
GUIgetcurrentinput: GUIgetcurrentinput:
mov byte[UseExtKey],0 mov byte[UseExtKey],0
xor ch,ch xor cx,cx
xor cl,cl
.getnextkey .getnextkey
call Check_Key call Check_Key
or al,al or al,al
@@ -1103,6 +1102,11 @@ GUIVideoKeys:
mov [GUIcurrentvideoviewloc],ebx mov [GUIcurrentvideoviewloc],ebx
.posvd .posvd
.nopagedown .nopagedown
; "Return"
cmp dl,13
jne .noreturn
mov byte[GUICBHold],4
.noreturn
.notmodestab .notmodestab
cmp dword[GUIVideoTabs],2 cmp dword[GUIVideoTabs],2

View File

@@ -654,9 +654,9 @@ ProcessMouseButtons:
jne .noAppend jne .noAppend
mov byte[GUICBHold],0 mov byte[GUICBHold],0
mov byte[GUIQuit],2 mov byte[GUIQuit],2
pushad ;pushad
;call MovieAppend ;call MovieAppend
popad ;popad
ret ret
.noAppend .noAppend
cmp byte[GUICBHold],34 ; dump raw cmp byte[GUICBHold],34 ; dump raw
@@ -1025,6 +1025,7 @@ GUIWinClicked:
cmp ebx,21 cmp ebx,21
je near DisplayGUISpeedClick je near DisplayGUISpeedClick
ret ret
%macro GUIClickCButton 3 %macro GUIClickCButton 3
cmp eax,%1+1 cmp eax,%1+1
jl %%noclick jl %%noclick
@@ -2488,6 +2489,9 @@ DisplayGUIVideoClick:
jmp .nocheckboxhq jmp .nocheckboxhq
.checkboxhq .checkboxhq
GUIClickCButtonHQ 115,163,byte[hqFilter] GUIClickCButtonHQ 115,163,byte[hqFilter]
pushad
call Clear2xSaIBuffer
popad
.nocheckboxhq .nocheckboxhq
xor ebx,ebx xor ebx,ebx
mov bl,[cvidmode] mov bl,[cvidmode]
@@ -2812,17 +2816,17 @@ guipresstestb:
SECTION .data SECTION .data
guipresstext3b db '(ESC TO SKIP)',0 guipresstext3b db '(ESC TO SKIP)',0
guipresstext4b db 'FOR UP ',0 guipresstext4b db 'FOR UP ',0
db 'FOR DOWN ',0 db 'FOR DOWN ',0
db 'FOR LEFT ',0 db 'FOR LEFT ',0
db 'FOR RIGHT ',0 db 'FOR RIGHT ',0
db 'FOR START ',0 db 'FOR START ',0
db 'FOR SELECT ',0 db 'FOR SELECT ',0
db 'FOR A (RIGHT BUTTON)',0 db 'FOR A (RIGHT BUTTON)',0
db 'FOR B (DOWN BUTTON) ',0 db 'FOR B (DOWN BUTTON) ',0
db 'FOR X (TOP BUTTON) ',0 db 'FOR X (TOP BUTTON) ',0
db 'FOR Y (LEFT BUTTON) ',0 db 'FOR Y (LEFT BUTTON) ',0
db 'FOR THE L BUTTON ',0 db 'FOR THE L BUTTON ',0
db 'FOR THE R BUTTON ',0 db 'FOR THE R BUTTON ',0
SECTION .bss SECTION .bss
guipressptr resd 1 guipressptr resd 1
guicpressptr resd 1 guicpressptr resd 1