forked from KolibriOS/kolibrios
Video subsystem:
* export GetDisplay and SetScreen for COFF drivers * fix out-of-bound access to screen map in __sys_disable_mouse git-svn-id: svn://kolibrios.org@1730 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
fe7b8ec2c4
commit
096a651876
kernel/trunk
@ -75,6 +75,9 @@ iglobal
|
|||||||
szSleep db 'Sleep',0
|
szSleep db 'Sleep',0
|
||||||
szGetTimerTicks db 'GetTimerTicks',0
|
szGetTimerTicks db 'GetTimerTicks',0
|
||||||
|
|
||||||
|
szGetDisplay db 'GetDisplay',0
|
||||||
|
szSetScreen db 'SetScreen',0
|
||||||
|
|
||||||
szStrncat db 'strncat',0
|
szStrncat db 'strncat',0
|
||||||
szStrncpy db 'strncpy',0
|
szStrncpy db 'strncpy',0
|
||||||
szstrncmp db 'strncmp',0
|
szstrncmp db 'strncmp',0
|
||||||
@ -147,6 +150,9 @@ kernel_export:
|
|||||||
dd szSleep , delay_ms
|
dd szSleep , delay_ms
|
||||||
dd szGetTimerTicks , get_timer_ticks
|
dd szGetTimerTicks , get_timer_ticks
|
||||||
|
|
||||||
|
dd szGetDisplay , get_display
|
||||||
|
dd szSetScreen , set_screen
|
||||||
|
|
||||||
dd szStrncat , strncat
|
dd szStrncat , strncat
|
||||||
dd szStrncpy , strncpy
|
dd szStrncpy , strncpy
|
||||||
dd szstrncmp , strncmp
|
dd szstrncmp , strncmp
|
||||||
|
@ -90,4 +90,6 @@ kernel_export \
|
|||||||
strchr,\
|
strchr,\
|
||||||
strrchr,\
|
strrchr,\
|
||||||
\
|
\
|
||||||
LFBAddress
|
LFBAddress,\
|
||||||
|
GetDisplay,\
|
||||||
|
SetScreen
|
||||||
|
@ -292,21 +292,20 @@ __sys_disable_mouse:
|
|||||||
add ecx,eax
|
add ecx,eax
|
||||||
add ecx, [_WinMapAddress]
|
add ecx, [_WinMapAddress]
|
||||||
mov eax, [CURRENT_TASK]
|
mov eax, [CURRENT_TASK]
|
||||||
movzx ebx, byte [ecx]
|
cmp al, [ecx]
|
||||||
cmp eax,ebx
|
|
||||||
je yes_mouse_disable
|
je yes_mouse_disable
|
||||||
movzx ebx, byte [ecx+16]
|
cmp al, [ecx+16]
|
||||||
cmp eax,ebx
|
|
||||||
je yes_mouse_disable
|
je yes_mouse_disable
|
||||||
|
add ebx, 10
|
||||||
|
cmp ebx, [Screen_Max_Y]
|
||||||
|
jae no_mouse_disable
|
||||||
mov ebx,[Screen_Max_X]
|
mov ebx,[Screen_Max_X]
|
||||||
inc ebx
|
inc ebx
|
||||||
imul ebx,10
|
imul ebx,10
|
||||||
add ecx,ebx
|
add ecx,ebx
|
||||||
movzx ebx, byte [ecx]
|
cmp al, [ecx]
|
||||||
cmp eax,ebx
|
|
||||||
je yes_mouse_disable
|
je yes_mouse_disable
|
||||||
movzx ebx, byte [ecx+16]
|
cmp al, [ecx+16]
|
||||||
cmp eax,ebx
|
|
||||||
je yes_mouse_disable
|
je yes_mouse_disable
|
||||||
jmp no_mouse_disable
|
jmp no_mouse_disable
|
||||||
yes_mouse_disable:
|
yes_mouse_disable:
|
||||||
|
Loading…
Reference in New Issue
Block a user