Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 383 → Rev 384

/kernel/branches/gfx_kernel/vmode/norm_32.inc
19,19 → 19,19
 
call get_cursor_rect
 
mov ebp,[0x3010]
movsx esi,word[ebp-0x3000+0]
mov ebp,[TASK_BASE]
movsx esi,word[ebp-CURRENT_TASK+0]
add eax,esi
add ecx,esi
movsx esi,word[ebp-0x3000+4]
movsx esi,word[ebp-CURRENT_TASK+4]
add ebx,esi
add edx,esi
; add eax,[ebp-0x3000+0]
; add ebx,[ebp-0x3000+4]
; add ecx,[ebp-0x3000+0]
; add edx,[ebp-0x3000+4]
; add eax,[ebp-CURRENT_TASK+0]
; add ebx,[ebp-CURRENT_TASK+4]
; add ecx,[ebp-CURRENT_TASK+0]
; add edx,[ebp-CURRENT_TASK+4]
 
mov esi,[0x00003000]
mov esi,[CURRENT_TASK]
mov esi,[CLIP_RECTS+esi*4]
mov ebp,[esi]
or ebp,ebp
52,14 → 52,14
mov edx,[rr.bottom]
@@: call is_intersect_rc
jc .put
cmp [mouse_invisible],0
jne .put
cmp byte[MOUSE_VISIBLE],0
je .put
call [SF.draw_mouse_under]
mov [mouse_invisible],1
.put: mov ebp,[bytes_per_scanline]
mov byte[MOUSE_VISIBLE],0
.put: mov ebp,[BytesPerScanLine]
imul ebp,ebx
lea ebp,[ebp+eax*4]
add ebp,[lfb_address]
add ebp,[LFBAddress]
.xxx: push eax ebp
@@: push ebp
call [set_bank]
71,7 → 71,7
cmp eax,ecx
jl @b
pop ebp eax
add ebp,[bytes_per_scanline]
add ebp,[BytesPerScanLine]
inc ebx
cmp ebx,edx
jl .xxx
115,7 → 115,7
dl.32.vert_line:
test edi,1
jnz .forced
mov esi,[0x00003000]
mov esi,[CURRENT_TASK]
mov esi,[CLIP_RECTS+esi*4]
mov edi,[esi]
or edi,edi
139,14 → 139,14
.draw:
@@: call is_intersect_vln
jc .put
cmp [mouse_invisible],0
jne .put
cmp byte[MOUSE_VISIBLE],0
je .put
call [SF.draw_mouse_under]
mov [mouse_invisible],1
.put: mov ebp,[bytes_per_scanline]
mov byte[MOUSE_VISIBLE],0
.put: mov ebp,[BytesPerScanLine]
imul ebp,ebx
lea ebp,[ebp+eax*4]
add ebp,[lfb_address]
add ebp,[LFBAddress]
@@: push ebp
call [set_bank]
test ecx,0x01000000
162,7 → 162,7
; not ecx
; or ecx,0x01000000
; .dr: mov [ebp],ecx
add ebp,[bytes_per_scanline]
add ebp,[BytesPerScanLine]
inc ebx
cmp ebx,edx
jle @b
195,7 → 195,7
dl.32.horz_line:
test edi,1
jnz .forced
mov esi,[0x00003000]
mov esi,[CURRENT_TASK]
mov esi,[CLIP_RECTS+esi*4]
mov edi,[esi]
or edi,edi
219,14 → 219,14
.draw:
@@: call is_intersect_hln
jc .put
cmp [mouse_invisible],0
jne .put
cmp byte[MOUSE_VISIBLE],0
je .put
call [SF.draw_mouse_under]
mov [mouse_invisible],1
.put: mov ebp,[bytes_per_scanline]
mov byte[MOUSE_VISIBLE],0
.put: mov ebp,[BytesPerScanLine]
imul ebp,eax
lea ebp,[ebp+ebx*4]
add ebp,[lfb_address]
add ebp,[LFBAddress]
@@: push ebp
call [set_bank]
test ecx,0x01000000
285,10 → 285,10
begin
pushad
cli
mov edx,[bytes_per_scanline]
mov edx,[BytesPerScanLine]
imul edx,ebx
lea edx,[edx+eax*4]
add edx,[lfb_address]
add edx,[LFBAddress]
; test ecx,0x01000000
; jz @f
; mov ecx,[edx]
295,7 → 295,7
; not ecx
@@: test edi,1
jnz .forced
mov esi,[0x00003000]
mov esi,[CURRENT_TASK]
mov esi,[CLIP_RECTS+esi*4]
mov edi,[esi]
or edi,edi
308,10 → 308,10
call get_cursor_rect
call is_intersect_pt
jc .put
cmp [mouse_invisible],0
jne .put
cmp byte[MOUSE_VISIBLE],0
je .put
call [SF.draw_mouse_under]
mov [mouse_invisible],1
mov byte[MOUSE_VISIBLE],0
.put: push edx
call [set_bank]
pop edx
354,10 → 354,10
begin
pushad
cli
imul ebx,[bytes_per_scanline]
imul ebx,[BytesPerScanLine]
shl eax,2
add eax,ebx
add eax,[lfb_address]
add eax,[LFBAddress]
push eax
call [set_bank]
pop eax
400,17 → 400,17
push edi
add ecx,eax
add edx,ebx
mov edi,[0x00003010]
movsx esi,word[edi-0x3000+0]
mov edi,[TASK_BASE]
movsx esi,word[edi-CURRENT_TASK+0]
add eax,esi
add ecx,esi
movsx esi,word[edi-0x3000+4]
movsx esi,word[edi-CURRENT_TASK+4]
add ebx,esi
add edx,esi
; add eax,[esi-0x3000+0]
; add ebx,[esi-0x3000+4]
; add ecx,[esi-0x3000+0]
; add edx,[esi-0x3000+4]
; add eax,[esi-CURRENT_TASK+0]
; add ebx,[esi-CURRENT_TASK+4]
; add ecx,[esi-CURRENT_TASK+0]
; add edx,[esi-CURRENT_TASK+4]
 
; cmp eax,640
; jb @f
417,7 → 417,7
; SHFLOW '%x %x %x %x',eax,ebx,ecx,edx
; @@:
 
mov esi,[0x00003000]
mov esi,[CURRENT_TASK]
mov esi,[CLIP_RECTS+esi*4]
mov edi,[esi]
or edi,edi
439,10 → 439,10
mov edx,[rr.bottom]
@@: call is_intersect_rc
jc .put
cmp [mouse_invisible],0
jne .put
cmp byte[MOUSE_VISIBLE],0
je .put
call [SF.draw_mouse_under]
mov [mouse_invisible],1
mov byte[MOUSE_VISIBLE],0
.put: mov esi,ebx
sub esi,[esp+4*4]
imul esi,[esp+4*8]
451,10 → 451,10
lea edi,[edi*3]
add esi,edi
add esi,ebp
mov edi,[bytes_per_scanline]
mov edi,[BytesPerScanLine]
imul edi,ebx
lea edi,[edi+eax*4]
add edi,[lfb_address]
add edi,[LFBAddress]
.xxx: push eax esi edi eax
@@: lodsd
 
470,7 → 470,7
jl @b
pop eax edi esi eax
add esi,[esp+4*8]
add edi,[bytes_per_scanline]
add edi,[BytesPerScanLine]
inc ebx
cmp ebx,edx
jl .xxx
498,14 → 498,14
je .tiled
 
mov eax,[bg_width]
cmp eax,[screen_width]
cmp eax,[ScreenWidth]
jne @f
mov eax,[bg_height]
cmp eax,[screen_height]
cmp eax,[ScreenHeight]
je .tiled
@@:
imul eax,[bg_width],3
mov [bg_bytes_per_scanline],eax
mov [bg_BytesPerScanLine],eax
 
mov eax,[viewport.left]
mov ebx,[viewport.top]
520,7 → 520,7
cli
 
call [SF.draw_mouse_under]
mov [mouse_invisible],1
mov byte[MOUSE_VISIBLE],0
 
mov esi,[CLIP_RECTS+4]
mov ebp,[esi]
546,23 → 546,23
;jne .put
;call [SF.draw_mouse_under]
;mov [mouse_invisible],1
.put: mov ebp,[bytes_per_scanline]
.put: mov ebp,[BytesPerScanLine]
imul ebp,ebx
lea ebp,[ebp+eax*4]
add ebp,[lfb_address]
add ebp,[LFBAddress]
.xxx: push eax ebp
@@: push ebp
call [set_bank]
push eax edx
mul [bg_width]
div [screen_width]
div dword[ScreenWidth]
lea edi,[eax*3]
mov eax,ebx
mul [bg_height]
div [screen_height]
mul [bg_bytes_per_scanline]
div dword[ScreenHeight]
mul [bg_BytesPerScanLine]
add edi,eax
add edi,bg_address
add edi,IMG_BACKGROUND
mov eax,[edi]
mov [ebp],eax
pop edx eax
572,7 → 572,7
cmp eax,ecx
jl @b
pop ebp eax
add ebp,[bytes_per_scanline]
add ebp,[BytesPerScanLine]
inc ebx
cmp ebx,edx
jl .xxx
588,7 → 588,7
retn
 
.tiled:
mov eax,bg_address
mov eax,IMG_BACKGROUND
mov ebx,[bg_width-2]
mov bx,word[bg_height]
xor ecx,ecx
597,19 → 597,19
pop eax
rol ecx,16
add cx,word[bg_width]
cmp cx,word[screen_width]
cmp cx,word[ScreenWidth]
jae @f
rol ecx,16
jmp .lp1
@@: shr ecx,16
add ecx,[bg_height]
cmp ecx,[screen_height]
cmp ecx,[ScreenHeight]
jb .lp1
popad
retn
 
.color:
mov edi,[bg_address]
mov edi,[IMG_BACKGROUND]
and edi,0x00FFFFFF
call vm_mike_draw_rect.32
popad