Subversion Repositories Kolibri OS

Rev

Rev 1910 | Rev 2177 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1910 Rev 2136
Line 909... Line 909...
909
	ret
909
	ret
910
endp
910
endp
Line 911... Line 911...
911
 
911
 
912
align 4
912
align 4
913
proc buf_delete, buf_struc:dword
913
proc buf_delete, buf_struc:dword
914
	push edi
914
	push eax edi
915
	mov edi,dword[buf_struc]
915
	mov edi,dword[buf_struc]
916
	invoke mem.free,buf2d_data
916
	invoke mem.free,buf2d_data
-
 
917
	pop edi eax
-
 
918
	ret
-
 
919
endp
-
 
920
 
-
 
921
align 4
-
 
922
proc buf_resize, buf_struc:dword, new_w:dword, new_h:dword
-
 
923
	pushad
-
 
924
	mov edi,dword[buf_struc]
-
 
925
	cmp buf2d_bits,24
-
 
926
	jne .24bit
-
 
927
		mov eax,dword[new_w]
-
 
928
		cmp eax,1
-
 
929
		jl @f
-
 
930
			mov buf2d_w,eax
-
 
931
		@@:
-
 
932
		mov ecx,buf2d_w
-
 
933
		mov eax,dword[new_h]
-
 
934
		cmp eax,1
-
 
935
		jl @f
-
 
936
			mov buf2d_h,eax
-
 
937
		@@:
-
 
938
		mov ebx,buf2d_h
-
 
939
		imul ecx,ebx
-
 
940
		lea ecx,[ecx+ecx*2] ; 24 bit = 3
-
 
941
		invoke mem.realloc,buf2d_data,ecx ;¨§¬¥­ï¥¬ ¯ ¬ïâì § ­¨¬ ¥¬ãî ¡ãä¥à®¬
-
 
942
		mov buf2d_data,eax ;­  á«ãç © ¥á«¨ ¨§¬¥­¨«áï 㪠§ â¥«ì ­  ¤ ­­ë¥
-
 
943
	.24bit:
917
	pop edi
944
	popad
918
	ret
945
	ret
Line 919... Line 946...
919
endp
946
endp
920
 
947
 
Line 2308... Line 2335...
2308
	dd sz_buf2d_create, buf_create
2335
	dd sz_buf2d_create, buf_create
2309
	dd sz_buf2d_create_f_img, buf_create_f_img
2336
	dd sz_buf2d_create_f_img, buf_create_f_img
2310
	dd sz_buf2d_clear, buf_clear
2337
	dd sz_buf2d_clear, buf_clear
2311
	dd sz_buf2d_draw, buf_draw_buf
2338
	dd sz_buf2d_draw, buf_draw_buf
2312
	dd sz_buf2d_delete, buf_delete
2339
	dd sz_buf2d_delete, buf_delete
-
 
2340
	dd sz_buf2d_resize, buf_resize
2313
	dd sz_buf2d_line, buf_line_brs
2341
	dd sz_buf2d_line, buf_line_brs
2314
	dd sz_buf2d_rect_by_size, buf_rect_by_size
2342
	dd sz_buf2d_rect_by_size, buf_rect_by_size
2315
	dd sz_buf2d_filled_rect_by_size, buf_filled_rect_by_size
2343
	dd sz_buf2d_filled_rect_by_size, buf_filled_rect_by_size
2316
	dd sz_buf2d_circle, buf_circle
2344
	dd sz_buf2d_circle, buf_circle
2317
	dd sz_buf2d_img_hdiv2, buf_img_hdiv2
2345
	dd sz_buf2d_img_hdiv2, buf_img_hdiv2
Line 2333... Line 2361...
2333
	sz_buf2d_create db 'buf2d_create',0
2361
	sz_buf2d_create db 'buf2d_create',0
2334
	sz_buf2d_create_f_img db 'buf2d_create_f_img',0
2362
	sz_buf2d_create_f_img db 'buf2d_create_f_img',0
2335
	sz_buf2d_clear db 'buf2d_clear',0 ;®ç¨á⪠ ¡ãä¥à  㪠§ ­­ë¬ 梥⮬
2363
	sz_buf2d_clear db 'buf2d_clear',0 ;®ç¨á⪠ ¡ãä¥à  㪠§ ­­ë¬ 梥⮬
2336
	sz_buf2d_draw db 'buf2d_draw',0
2364
	sz_buf2d_draw db 'buf2d_draw',0
2337
	sz_buf2d_delete db 'buf2d_delete',0
2365
	sz_buf2d_delete db 'buf2d_delete',0
-
 
2366
	sz_buf2d_resize db 'buf2d_resize',0
2338
	sz_buf2d_line db 'buf2d_line',0 ;à¨á®¢ ­¨¥ «¨­¨¨
2367
	sz_buf2d_line db 'buf2d_line',0 ;à¨á®¢ ­¨¥ «¨­¨¨
2339
	sz_buf2d_rect_by_size db 'buf2d_rect_by_size',0 ;à¨á®¢ ­¨¥ à ¬ª¨ ¯àאַ㣮«ì­¨ª , 2-ï ª®®à¤¨­ â  § ¤ ­  ¯® à §¬¥àã
2368
	sz_buf2d_rect_by_size db 'buf2d_rect_by_size',0 ;à¨á®¢ ­¨¥ à ¬ª¨ ¯àאַ㣮«ì­¨ª , 2-ï ª®®à¤¨­ â  § ¤ ­  ¯® à §¬¥àã
2340
	sz_buf2d_filled_rect_by_size db 'buf2d_filled_rect_by_size',0 ;à¨á®¢ ­¨¥ § «¨â®£® ¯àאַ㣮«ì­¨ª , 2-ï ª®®à¤¨­ â  § ¤ ­  ¯® à §¬¥àã
2369
	sz_buf2d_filled_rect_by_size db 'buf2d_filled_rect_by_size',0 ;à¨á®¢ ­¨¥ § «¨â®£® ¯àאַ㣮«ì­¨ª , 2-ï ª®®à¤¨­ â  § ¤ ­  ¯® à §¬¥àã
2341
	sz_buf2d_circle db 'buf2d_circle',0 ;à¨á®¢ ­¨¥ ®ªà㦭®áâ¨
2370
	sz_buf2d_circle db 'buf2d_circle',0 ;à¨á®¢ ­¨¥ ®ªà㦭®áâ¨
2342
	sz_buf2d_img_hdiv2 db 'buf2d_img_hdiv2',0 ;ᦠ⨥ ¨§®¡à ¦¥­¨ï ¯® ¢ëá®â¥ ¢ 2 à §  (à §¬¥à ¡ãä¥à  ­¥ ¬¥­ï¥âáï)
2371
	sz_buf2d_img_hdiv2 db 'buf2d_img_hdiv2',0 ;ᦠ⨥ ¨§®¡à ¦¥­¨ï ¯® ¢ëá®â¥ ¢ 2 à §  (à §¬¥à ¡ãä¥à  ­¥ ¬¥­ï¥âáï)