Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 4287 → Rev 4288

/kernel/branches/Kolibri-acpi/core/taskman.inc
1187,9 → 1187,9
xor eax, eax
mov [ecx+0], dword eax
mov [ecx+4], dword eax
mov eax, [Screen_Max_X]
mov eax, [_display.width]
mov [ecx+8], eax
mov eax, [Screen_Max_Y]
mov eax, [_display.height]
mov [ecx+12], eax
 
mov ebx, [pl0_stack]
/kernel/branches/Kolibri-acpi/data32.inc
379,8 → 379,6
_WinMapSize rd 1
 
LFBAddress rd 1
Screen_Max_X rd 1
Screen_Max_Y rd 1
 
SCR_MODE rw 2
 
/kernel/branches/Kolibri-acpi/gui/mouse.inc
394,9 → 394,9
mov [mouse.active_sys_window.new_box.left], eax
@@:
add eax, [mouse.active_sys_window.new_box.width]
cmp eax, [Screen_Max_X]
cmp eax, [_display.width]
jl @f
sub eax, [Screen_Max_X]
sub eax, [_display.width]
sub [mouse.active_sys_window.new_box.left], eax
@@:
mov eax, [mouse.active_sys_window.new_box.top]
406,9 → 406,9
mov [mouse.active_sys_window.new_box.top], eax
@@:
add eax, [mouse.active_sys_window.new_box.height]
cmp eax, [Screen_Max_Y]
cmp eax, [_display.height]
jle .call_window_handler
sub eax, [Screen_Max_Y]
sub eax, [_display.height]
sub [mouse.active_sys_window.new_box.top], eax
jmp .call_window_handler
 
458,14 → 458,14
mov [mouse.active_sys_window.new_box.height], eax
@@:
add eax, [mouse.active_sys_window.new_box.top]
cmp eax, [Screen_Max_Y]
jle .check_resize_e
sub eax, [Screen_Max_Y]
cmp eax, [_display.height]
jl .check_resize_e
sub eax, [_display.height]
neg eax
add [mouse.active_sys_window.new_box.height], eax
mov ecx, [Screen_Max_Y]
mov ecx, [_display.height]
cmp ecx, eax
jge .check_resize_e
jg .check_resize_e
mov [mouse.active_sys_window.new_box.height], ecx
 
.check_resize_e:
484,14 → 484,14
mov [mouse.active_sys_window.new_box.width], eax
@@:
add eax, [mouse.active_sys_window.new_box.left]
cmp eax, [Screen_Max_X]
jle .call_window_handler
sub eax, [Screen_Max_X]
cmp eax, [_display.width]
jl .call_window_handler
sub eax, [_display.height]
neg eax
add [mouse.active_sys_window.new_box.width], eax
mov ecx, [Screen_Max_X]
mov ecx, [_display.height]
cmp ecx, eax
jge .call_window_handler
jg .call_window_handler
mov [mouse.active_sys_window.new_box.width], ecx
 
.call_window_handler:
523,9 → 523,6
;< esi = process slot
;< edi = pointer to WDATA struct
;------------------------------------------------------------------------------
; mov esi, [Screen_Max_X]
; inc esi
; imul esi, [mouse.state.pos.y]
mov esi, [mouse.state.pos.y]
mov esi, [d_width_calc_area + esi*4]
 
/kernel/branches/Kolibri-acpi/gui/window.inc
209,7 → 209,7
syscall_display_settings.06:
xor esi, esi
 
mov edi, [Screen_Max_X]
mov edi, [_display.width]
mov eax, ecx
movsx ebx, ax
sar eax, 16
233,7 → 233,7
;--------------------------------------
align 4
.check_horizontal:
mov edi, [Screen_Max_Y]
mov edi, [_display.height]
mov eax, edx
movsx ebx, ax
sar eax, 16
294,8 → 294,8
syscall_display_settings._.calculate_whole_screen:
xor eax, eax
xor ebx, ebx
mov ecx, [Screen_Max_X]
mov edx, [Screen_Max_Y]
mov ecx, [_display.width]
mov edx, [_display.height]
jmp calculatescreen
;------------------------------------------------------------------------------
align 4
303,9 → 303,11
xor eax, eax
mov [draw_limits.left], eax
mov [draw_limits.top], eax
mov eax, [Screen_Max_X]
mov eax, [_display.width]
dec eax
mov [draw_limits.right], eax
mov eax, [Screen_Max_Y]
mov eax, [_display.height]
dec eax
mov [draw_limits.bottom], eax
mov eax, window_data
jmp redrawscreen
584,9 → 586,9
 
mov eax, [edi + WDATA.box.left]
add eax, [edi + WDATA.box.width]
mov ebx, [Screen_Max_X]
mov ebx, [_display.width]
cmp eax, ebx
jle .fix_vertical
jl .fix_vertical
mov eax, [edi + WDATA.box.width]
sub eax, ebx
jle @f
601,9 → 603,9
.fix_vertical:
mov eax, [edi + WDATA.box.top]
add eax, [edi + WDATA.box.height]
mov ebx, [Screen_Max_Y]
mov ebx, [_display.height]
cmp eax, ebx
jle .fix_client_box
jl .fix_client_box
mov eax, [edi + WDATA.box.height]
sub eax, ebx
jle @f
1716,9 → 1718,9
mov ecx, [edi + WDATA.box.width]
mov edx, [edi + WDATA.box.height]
 
mov esi, [Screen_Max_X]
mov esi, [_display.width]
cmp ecx, esi
ja .fix_width_high
jae .fix_width_high
;--------------------------------------
align 4
.check_left:
1730,9 → 1732,9
;--------------------------------------
align 4
.check_height:
mov esi, [Screen_Max_Y]
mov esi, [_display.height]
cmp edx, esi
ja .fix_height_high
jae .fix_height_high
;--------------------------------------
align 4
.check_top:
1881,11 → 1883,7
 
; get WinMap start
push esi
; mov edi, [Screen_Max_X]
; inc edi
; mov esi, edi
mov esi, [Screen_Max_X]
inc esi
mov esi, [_display.width]
; imul edi, ebx
mov edi, [d_width_calc_area + ebx*4]
 
1929,9 → 1927,6
 
; get WinMap start -> ebp
push eax
; mov eax, [Screen_Max_X] ; screen_sx
; inc eax
; imul eax, ebx
mov eax, [d_width_calc_area + ebx*4]
 
add eax, [esp]
1998,7 → 1993,7
 
sub ebp, [ff_xsz]
add ebp, [ff_x]
add ebp, [Screen_Max_X] ; screen.x
add ebp, [_display.width] ; screen.x
inc ebp
inc ebx
cmp ebx, [ff_ysz]
/kernel/branches/Kolibri-acpi/hid/mousedrv.inc
111,9 → 111,6
push eax
push ebx
 
; mov ecx, [Screen_Max_X]
; inc ecx
; mul ecx
mov eax, [d_width_calc_area + eax*4]
 
add eax, [_WinMapAddress]
494,9 → 491,10
;--------------------------------------
align 4
@@M1:
cmp ax, word [Screen_Max_X];ScreenLength
cmp ax, word [_display.width]
jl @@M2
mov ax, word [Screen_Max_X];ScreenLength-1
mov ax, word [_display.width]
dec ax
;--------------------------------------
align 4
@@M2:
514,9 → 512,10
;--------------------------------------
align 4
@@M3:
cmp ax, word [Screen_Max_Y];ScreenHeigth
cmp ax, word [_display.height]
jl @@M4
mov ax, word [Screen_Max_Y];ScreenHeigth-1
mov ax, word [_display.height]
dec ax
;--------------------------------------
align 4
@@M4:
/kernel/branches/Kolibri-acpi/kernel.asm
486,13 → 486,11
mov [_display.width], eax
mov [display_width_standard], eax
dec eax
mov [Screen_Max_X], eax
mov [screen_workarea.right], eax
movzx eax, word [BOOT_VARS+BOOT_Y_RES]; Y max
mov [_display.height], eax
mov [display_height_standard], eax
dec eax
mov [Screen_Max_Y], eax
mov [screen_workarea.bottom], eax
movzx eax, word [BOOT_VARS+BOOT_VESA_MODE] ; screen mode
mov dword [SCR_MODE], eax
2191,9 → 2189,6
 
movzx eax, word [MOUSE_Y]
movzx ebx, word [MOUSE_X]
; mov ecx, [Screen_Max_X]
; inc ecx
; mul ecx
mov eax, [d_width_calc_area + eax*4]
 
add eax, [_WinMapAddress]
2500,10 → 2495,10
;* mouse centered - start code- Mario79
;mouse_centered:
; push eax
mov eax, [Screen_Max_X]
mov eax, [_display.width]
shr eax, 1
mov [MOUSE_X], ax
mov eax, [Screen_Max_Y]
mov eax, [_display.height]
shr eax, 1
mov [MOUSE_Y], ax
call wakeup_osloop
2545,11 → 2540,11
; cmp ecx,4 ; set mouse pointer position
dec ecx
jnz .set_mouse_button
cmp dx, word[Screen_Max_Y]
ja .end
cmp dx, word[_display.width]
jae .end
rol edx, 16
cmp dx, word[Screen_Max_X]
ja .end
cmp dx, word[_display.height]
jae .end
mov [MOUSE_X], edx
call wakeup_osloop
ret
2636,9 → 2631,7
mov eax, ecx
mov ecx, [_display.pitch]
mov [_display.width], eax
dec eax
mov [_display.height], edx
dec edx
; eax - new Screen_Max_X
; edx - new Screen_Max_Y
mov [do_not_touch_winmap], 1
2975,22 → 2968,22
jnz nosb9
; ecx = [left]*65536 + [right]
; edx = [top]*65536 + [bottom]
mov eax, [Screen_Max_X]
mov ebx, [Screen_Max_Y]
mov eax, [_display.width]
mov ebx, [_display.height]
; check [right]
cmp cx, ax
ja .exit
jae .exit
; check [left]
ror ecx, 16
cmp cx, ax
ja .exit
jae .exit
; check [bottom]
cmp dx, bx
ja .exit
jae .exit
; check [top]
ror edx, 16
cmp dx, bx
ja .exit
jae .exit
 
movzx eax, cx ; [left]
movzx ebx, dx ; [top]
3028,8 → 3021,8
and [draw_data+32 + RECT.left], 0
and [draw_data+32 + RECT.top], 0
push eax ebx
mov eax, [Screen_Max_X]
mov ebx, [Screen_Max_Y]
mov eax, [_display.width]
mov ebx, [_display.height]
mov [draw_data+32 + RECT.right], eax
mov [draw_data+32 + RECT.bottom], ebx
pop ebx eax
3385,9 → 3378,9
add edx, draw_data - CURRENT_TASK
mov [edx + RECT.left], 0
mov [edx + RECT.top], 0
mov eax, [Screen_Max_X]
mov eax, [_display.width]
mov [edx + RECT.right], eax
mov eax, [Screen_Max_Y]
mov eax, [_display.height]
mov [edx + RECT.bottom], eax
 
srl1:
3518,26 → 3511,6
;---------------------------------------------------------------------------------------------
 
 
; check if pixel is allowed to be drawn
 
;checkpixel:
; push eax edx
 
;; mov edx, [Screen_Max_X] ; screen x size
;; inc edx
;; imul edx, ebx
; mov edx, [d_width_calc_area + ebx*4]
; add eax, [_WinMapAddress]
; mov dl, [eax+edx]; lea eax, [...]
 
; xor ecx, ecx
; mov eax, [CURRENT_TASK]
; cmp al, dl
; setne cl
 
; pop edx eax
; ret
 
iglobal
cpustring db 'CPU',0
endg
4974,9 → 4947,9
jnz @f
mov word [msg_board_pos+2], (42*6)
add word [msg_board_pos], 10
mov ax, word [Screen_Max_Y]
mov ax, word [_display.height]
cmp word [msg_board_pos], ax
jbe @f
jb @f
mov word [msg_board_pos], 10
@@:
; // end if
5193,9 → 5166,9
 
 
.1: ; resolution
mov eax, [Screen_Max_X]
mov eax, [_display.width]
shl eax, 16
mov ax, word [Screen_Max_Y]
mov ax, word [_display.height]
add eax, 0x00010001
mov [esp+32], eax
ret
5281,9 → 5254,9
 
align 4
syscall_getscreensize: ; GetScreenSize
mov ax, word [Screen_Max_X]
mov ax, word [_display.width]
shl eax, 16
mov ax, word [Screen_Max_Y]
mov ax, word [_display.height]
mov [esp + 32], eax
ret
 
5349,10 → 5322,10
;-----------------------------------------------------------------------------
align 4
syscall_getpixel_WinMap: ; GetPixel WinMap
cmp ebx, [Screen_Max_X]
jbe @f
cmp ecx, [Screen_Max_Y]
jbe @f
cmp ebx, [_display.width]
jb @f
cmp ecx, [_display.height]
jb @f
xor eax, eax
jmp .store
;--------------------------------------
5369,8 → 5342,7
;-----------------------------------------------------------------------------
align 4
syscall_getpixel: ; GetPixel
mov ecx, [Screen_Max_X]
inc ecx
mov ecx, [_display.width]
xor edx, edx
mov eax, ebx
div ecx
5615,8 → 5587,6
pushfd
cli
 
mov [Screen_Max_X], eax
mov [Screen_Max_Y], edx
mov [_display.pitch], ecx
 
mov [screen_workarea.right], eax
5658,8 → 5628,8
call repos_windows
xor eax, eax
xor ebx, ebx
mov ecx, [Screen_Max_X]
mov edx, [Screen_Max_Y]
mov ecx, [_display.width]
mov edx, [_display.height]
call calculatescreen
pop edi
pop esi
/kernel/branches/Kolibri-acpi/video/cursors.inc
618,15 → 618,17
add edx, eax
mov [cur_saved_base], edx
 
cmp ebx, [Screen_Max_X]
jbe @F
mov ebx, [Screen_Max_X]
cmp ebx, [_display.width]
jb @F
mov ebx, [_display.width]
dec ebx
;--------------------------------------
align 4
@@:
cmp edi, [Screen_Max_Y]
jbe @F
mov edi, [Screen_Max_Y]
cmp edi, [_display.height]
jb @F
mov edi, [_display.height]
dec edi
;--------------------------------------
align 4
@@:
736,15 → 738,17
lea edx, [LFB_BASE+eax+ecx*4]
mov [cur_saved_base], edx
 
cmp ebx, [Screen_Max_X]
jbe @F
mov ebx, [Screen_Max_X]
cmp ebx, [_display.width]
jb @F
mov ebx, [_display.width]
dec ebx
;--------------------------------------
align 4
@@:
cmp edi, [Screen_Max_Y]
jbe @F
mov edi, [Screen_Max_Y]
cmp edi, [_display.height]
jb @F
mov edi, [_display.height]
dec edi
;--------------------------------------
align 4
@@:
/kernel/branches/Kolibri-acpi/video/vesa20.inc
23,14 → 23,7
; If you're planning to write your own video driver I suggest
; you replace the VESA12.INC file and see those instructions.
 
;Screen_Max_X equ 0xfe00
;Screen_Max_Y equ 0xfe04
;BytesPerScanLine equ 0xfe08
;LFBAddress equ 0xfe80
;ScreenBPP equ 0xfbf1
 
 
 
;-----------------------------------------------------------------------------
; getpixel
;
225,8 → 218,7
add eax, [putimg.arg_0]
mov [putimg.line_increment], eax
; winmap new line increment
mov eax, [Screen_Max_X]
inc eax
mov eax, [_display.width]
sub eax, [putimg.real_sx]
mov [putimg.winmap_newline], eax
; screen new line increment
249,8 → 241,6
add edx, eax
; pointer to pixel map
mov eax, [putimg.abs_cy]
; imul eax, [Screen_Max_X]
; add eax, [putimg.abs_cy]
mov eax, [d_width_calc_area + eax*4]
 
add eax, [putimg.abs_cx]
695,12 → 685,11
; for example drawwindow_III and drawwindow_IV
; edi = 0x00000001 force
 
;;; mov [novesachecksum], dword 0
pushad
cmp [Screen_Max_X], eax
jb .exit
cmp [Screen_Max_Y], ebx
jb .exit
cmp eax, [_display.width]
jae .exit
cmp ebx, [_display.height]
jae .exit
test edi, 1 ; force ?
jnz .forced
 
889,9 → 878,6
;-----------------------------------------------------------------------------
align 4
calculate_edi:
; mov edi, ebx
; imul edi, [Screen_Max_X]
; add edi, ebx
mov edi, [d_width_calc_area + ebx*4]
add edi, eax
ret
1223,9 → 1209,8
.end_y:
mov [drbar.real_sy], ebx
; line_inc_map
mov eax, [Screen_Max_X]
mov eax, [_display.width]
sub eax, [drbar.real_sx]
inc eax
mov [drbar.line_inc_map], eax
; line_inc_scr
mov eax, [drbar.real_sx]
1244,8 → 1229,6
add edx, eax
; pointer to pixel map
mov eax, [drbar.abs_cy]
; imul eax, [Screen_Max_X]
; add eax, [drbar.abs_cy]
mov eax, [d_width_calc_area + eax*4]
 
add eax, [drbar.abs_cx]
1769,23 → 1752,21
vesa20_drawbackground_stretch:
pushad
; Helper variables
; calculate 2^32*(BgrDataWidth-1) mod (ScreenWidth-1)
; calculate 2^32*(BgrDataWidth) mod (ScreenWidth)
mov eax, [BgrDataWidth]
dec eax
xor edx, edx
div dword [Screen_Max_X]
div dword [_display.width]
push eax ; high
xor eax, eax
div dword [Screen_Max_X]
div dword [_display.width]
push eax ; low
; the same for height
mov eax, [BgrDataHeight]
dec eax
xor edx, edx
div dword [Screen_Max_Y]
div dword [_display.height]
push eax ; high
xor eax, eax
div dword [Screen_Max_Y]
div dword [_display.height]
push eax ; low
; External loop for all y from start to end
mov ebx, [draw_data+32+RECT.top] ; y start
1939,8 → 1920,7
; advance edi, ebp to next scan line
sub eax, [draw_data+32+RECT.left]
sub ebp, eax
add ebp, [Screen_Max_X]
add ebp, 1
add ebp, [_display.width]
sub edi, eax
sub edi, eax
sub edi, eax
1971,7 → 1951,7
push edi
mov esi, bgr_next_line
mov edi, bgr_cur_line
mov ecx, [Screen_Max_X]
mov ecx, [_display.width]
inc ecx
rep movsd
jmp bgr_resmooth1