Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 2421 → Rev 2422

/programs/develop/libraries/buf2d/trunk/buf2d.asm
1917,6 → 1917,19
jge .copy_end ;¥á«¨ ¨§®¡à ¦¥­¨¥ ¯®«­®áâìî ¢ë« §¨â §  ¯à ¢ãî áâ®à®­ã
mov ebx,buf2d_h ;ebx - ¢ëá®â  ®á­®¢­®£® ¡ãä¥à 
mov ecx,[coord_y]
cmp ecx,0
jge @f
;¥á«¨ ª®®à¤¨­ â  coord_y<0 (1-ï ­ áâனª )
add edx,ecx ;㬥­ìè ¥¬ ¢ëá®âã ª®¯¨à㥬®© ª à⨭ª¨
cmp edx,0
jle .copy_end ;¥á«¨ ª®¯¨à㥬®¥ ¨§®¡à ¦¥­¨¥ ­ å®¤¨âáï ¯®«­®áâìî ­ ¤ ¢¥àå­¥© £à ­¨æ¥© ¡ãä¥à  (coord_y<0 ¨ |coord_y|>buf_source.h)
neg ecx
;inc ecx
imul ecx,eax
lea ecx,[ecx+ecx*2] ;¯® 3 ¡ ©â  ­  ¯¨ªá¥«ì
add esi,ecx ;ᤢ¨£ ¥¬ 㪠§ â¥«ì á ª®¯¨à㥬묨 ¤ ­­ë¬¨, á ãç¥â®¬ ¯à®¯ã襭®© ç áâ¨
xor ecx,ecx ;®¡­ã«ï¥¬ ª®®à¤¨­ âã coord_y
@@:
cmp ecx,ebx
jge .copy_end ;¥á«¨ ª®®à¤¨­ â  'y' ¡®«ìè¥ ¢ëá®âë ¡ãä¥à 
add ecx,edx ;ecx - ­¨¦­ïï ª®®à¤¨­ â  ª®¯¨à㥬®© ª à⨭ª¨
1926,9 → 1939,16
sub edx,ecx ;㬥­ìè ¥¬ ¢ëá®âã ª®¯¨à㥬®© ª à⨭ª¨, ¢ á«ãç¥ ª®£¤  ®­  ¢ë« §¨â §  ­¨¦­îî £à ­¨æã
@@:
mov ebx,buf2d_w
mov ecx,ebx ;ecx ¨á¯®«ì§ã¥¬ ¤«ï ¢à¥¬¥­­ëå 楫¥©
imul ecx,[coord_y]
mov ecx,[coord_y] ;ecx ¨á¯®«ì§ã¥¬ ¤«ï ¢à¥¬¥­­ëå 楫¥©
cmp ecx,0
jg .end_otr_c_y_24
;¥á«¨ ª®®à¤¨­ â  coord_y<=0 (2-ï ­ áâனª )
mov ecx,[coord_x]
jmp @f
.end_otr_c_y_24:
imul ecx,ebx
add ecx,[coord_x]
@@:
lea ecx,[ecx+ecx*2]
add ecx,buf2d_data
sub ebx,eax
1982,6 → 2002,19
jge .copy_end ;¥á«¨ ¨§®¡à ¦¥­¨¥ ¯®«­®áâìî ¢ë« §¨â §  ¯à ¢ãî áâ®à®­ã
mov ebx,buf2d_h ;ebx - ¢ëá®â  ®á­®¢­®£® ¡ãä¥à 
mov ecx,[coord_y]
cmp ecx,0
jge @f
;¥á«¨ ª®®à¤¨­ â  coord_y<0 (1-ï ­ áâனª )
add edx,ecx ;㬥­ìè ¥¬ ¢ëá®âã ª®¯¨à㥬®© ª à⨭ª¨
cmp edx,0
jle .copy_end ;¥á«¨ ª®¯¨à㥬®¥ ¨§®¡à ¦¥­¨¥ ­ å®¤¨âáï ¯®«­®áâìî ­ ¤ ¢¥àå­¥© £à ­¨æ¥© ¡ãä¥à  (coord_y<0 ¨ |coord_y|>buf_source.h)
neg ecx
;inc ecx
imul ecx,eax
shl ecx,2 ;¯® 4 ¡ ©â  ­  ¯¨ªá¥«ì
add esi,ecx ;ᤢ¨£ ¥¬ 㪠§ â¥«ì á ª®¯¨à㥬묨 ¤ ­­ë¬¨, á ãç¥â®¬ ¯à®¯ã襭®© ç áâ¨
xor ecx,ecx ;®¡­ã«ï¥¬ ª®®à¤¨­ âã coord_y
@@:
cmp ecx,ebx
jge .copy_end ;¥á«¨ ª®®à¤¨­ â  'y' ¡®«ìè¥ ¢ëá®âë ¡ãä¥à 
add ecx,edx ;ecx - ­¨¦­ïï ª®®à¤¨­ â  ª®¯¨à㥬®© ª à⨭ª¨
1991,9 → 2024,19
sub edx,ecx ;㬥­ìè ¥¬ ¢ëá®âã ª®¯¨à㥬®© ª à⨭ª¨, ¢ á«ãç¥ ª®£¤  ®­  ¢ë« §¨â §  ­¨¦­îî £à ­¨æã
@@:
mov ebx,buf2d_w
mov ecx,ebx ;ecx ¨á¯®«ì§ã¥¬ ¤«ï ¢à¥¬¥­­ëå 楫¥©
imul ecx,[coord_y]
;mov ecx,ebx ;ecx ¨á¯®«ì§ã¥¬ ¤«ï ¢à¥¬¥­­ëå 楫¥©
;imul ecx,[coord_y]
;add ecx,[coord_x]
mov ecx,[coord_y] ;ecx ¨á¯®«ì§ã¥¬ ¤«ï ¢à¥¬¥­­ëå 楫¥©
cmp ecx,0
jg .end_otr_c_y_32
;¥á«¨ ª®®à¤¨­ â  coord_y<=0 (2-ï ­ áâனª )
mov ecx,[coord_x]
jmp @f
.end_otr_c_y_32:
imul ecx,ebx
add ecx,[coord_x]
@@:
lea ecx,[ecx+ecx*2]
add ecx,buf2d_data
sub ebx,eax
2120,7 → 2163,7
neg ecx
;inc ecx
imul ecx,eax
shl ecx,2 ;¯® 4 ¡¨â  ­  ¯¨ªá¥«ì
shl ecx,2 ;¯® 4 ¡ ©â  ­  ¯¨ªá¥«ì
add esi,ecx ;ᤢ¨£ ¥¬ 㪠§ â¥«ì á ª®¯¨à㥬묨 ¤ ­­ë¬¨, á ãç¥â®¬ ¯à®¯ã襭®© ç áâ¨
xor ecx,ecx ;®¡­ã«ï¥¬ ª®®à¤¨­ âã coord_y
@@:
2160,7 → 2203,7
@@:
 
lea ebx,[ebx+ebx*2] ;ª®««¨ç¥á⢮ ¡ ©â ¢ 1-© áâப¥ ¡ãä¥à  ¬¨­ãá ç¨á«® ¡ ©â ¢ 1-© áâப¥ ª®¯¨à㥬®© ª à⨭ª¨
 
;g;
cld
cmp [right_bytes],0
jg .copy_1