Subversion Repositories Kolibri OS

Rev

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

Rev 2177 Rev 2185
Line 1078... Line 1078...
1078
		mov esi,dword[coord_x1]
1078
		mov esi,dword[coord_x1]
1079
		cmp ebx,esi
1079
		cmp ebx,esi
1080
		jle @f
1080
		jle @f
1081
			xchg ebx,esi ;¥á«¨ x0 > x1 â® ¬¥­ï¥¬ ¬¥áâ ¬¨ x0 ¨ x1
1081
			xchg ebx,esi ;¥á«¨ x0 > x1 â® ¬¥­ï¥¬ ¬¥áâ ¬¨ x0 ¨ x1
1082
		@@:
1082
		@@:
-
 
1083
		bt ebx,31
-
 
1084
		jae @f
-
 
1085
			;¥á«¨ ª®®à¤¨­ â  x0 ®âà¨æ â¥«ì­ ï
-
 
1086
			xor ebx,ebx
-
 
1087
		@@:
1083
		cmp esi,buf2d_w
1088
		cmp esi,buf2d_w
1084
		jl @f
1089
		jl @f
-
 
1090
			;¥á«¨ ª®®à¤¨­ â  x0 ¡®«ìè¥ è¨à¨­ë ¡ãä¥à 
1085
			mov esi,buf2d_w
1091
			mov esi,buf2d_w
1086
			;dec esi
1092
			;dec esi
1087
		@@:
1093
		@@:
-
 
1094
		cmp ebx,esi
-
 
1095
		jge .end24 ;¥á«¨ x0 >= x1 ¬®¦¥â ¢®§­¨ª­ãâì ª®£¤  ®¡¥ ª®®à¤¨­ âë x0, x1 ­ å®¤¨«¨áì §  ®¤­¨¬ ¨§ ¯à¥¤¥«®¢ ¡ãä¥à 
Line 1088... Line 1096...
1088
 
1096
 
1089
		;¢ eax ¢ëç¨á«ï¥¬ ­ ç «® 1-© â®çª¨ «¨­¨¨ ¢ ¡ãä¥à¥ ¨§®¡à ¦¥­¨ï
1097
		;¢ eax ¢ëç¨á«ï¥¬ ­ ç «® 1-© â®çª¨ «¨­¨¨ ¢ ¡ãä¥à¥ ¨§®¡à ¦¥­¨ï
1090
		mov eax,buf2d_w ;size x
1098
		mov eax,buf2d_w ;size x
1091
		imul eax,ecx ;size_x*y
1099
		imul eax,ecx ;size_x*y
1092
		add eax,ebx	 ;size_x*y+x
1100
		add eax,ebx	 ;size_x*y+x
1093
		lea eax,[eax+eax*2] ;(size_x*y+x)*3
1101
		lea eax,[eax+eax*2] ;(size_x*y+x)*3
Line -... Line 1102...
-
 
1102
		add eax,buf2d_data  ;ptr+(size_x*y+x)*3
-
 
1103
 
1094
		add eax,buf2d_data  ;ptr+(size_x*y+x)*3
1104
		mov ecx,esi
-
 
1105
		sub ecx,ebx ;¢ ecx ª®««¨ç¥á⢮ â®ç¥ª «¨­¨¨ ¢ë¢®¤¨¬ëå ¢ ¡ãä¥à
-
 
1106
		mov edx,dword[color]
-
 
1107
		mov ebx,edx ;ª®®à¤¨­ â  x0 ¢ ebx 㦥 ­¥ ­ã¦­ 
1095
 
1108
		ror edx,16 ;¯®¢®à ç¨¢ ¥¬ ॣ¨áâà çâ® ¡ë 3-© ¡ ©â ¯®¯ « ¢ dl
1096
		mov edx,dword[color]
-
 
1097
		@@: ;横« ¯® ®á¨ x ®â x0 ¤® x1
-
 
1098
			cmp ebx,esi
-
 
1099
			jge @f
-
 
1100
			bt ebx,31
1109
		cld
1101
			jc .otr_x
-
 
1102
				mov word[eax],dx ;copy pixel color
1110
		@@: ;横« ¯® ®á¨ x ®â x0 ¤® x1
1103
				ror edx,16
-
 
1104
				mov byte[eax+2],dl
-
 
1105
				ror edx,16
1111
			mov word[eax],bx ;copy pixel color
1106
			.otr_x:
-
 
1107
				add eax,3
1112
			mov byte[eax+2],dl
1108
				inc ebx
-
 
1109
			jmp @b
1113
			add eax,3
1110
		@@:
1114
			loop @b
1111
		.end24:
1115
		.end24:
1112
	popad
1116
	popad