Rev 2136 | Rev 2185 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2136 | Rev 2177 | ||
---|---|---|---|
Line 1066... | Line 1066... | ||
1066 | pushad |
1066 | pushad |
1067 | mov edi,[buf_struc] |
1067 | mov edi,[buf_struc] |
1068 | cmp buf2d_bits,24 |
1068 | cmp buf2d_bits,24 |
1069 | jne .end24 |
1069 | jne .end24 |
Line 1070... | Line -... | ||
1070 | - | ||
1071 | mov ebx,dword[coord_x0] |
1070 | |
- | 1071 | mov ecx,dword[coord_y0] |
|
- | 1072 | bt ecx,31 |
|
- | 1073 | jc .end24 ;¥á«¨ ª®®à¤¨ â y0 ®âà¨æ ⥫ì ï |
|
- | 1074 | cmp ecx,buf2d_h |
|
- | 1075 | jge .end24 ;¥á«¨ ª®®à¤¨ â y0 ¡®«ìè¥ ¢ëá®âë ¡ãä¥à |
|
1072 | mov ecx,dword[coord_y0] |
1076 | |
1073 | mov edx,dword[color] |
1077 | mov ebx,dword[coord_x0] |
1074 | mov esi,dword[coord_x1] |
1078 | mov esi,dword[coord_x1] |
1075 | cmp ebx,esi |
1079 | cmp ebx,esi |
1076 | jle @f |
1080 | jle @f |
- | 1081 | xchg ebx,esi ;¥á«¨ x0 > x1 â® ¬¥ï¥¬ ¬¥áâ ¬¨ x0 ¨ x1 |
|
- | 1082 | @@: |
|
- | 1083 | cmp esi,buf2d_w |
|
- | 1084 | jl @f |
|
- | 1085 | mov esi,buf2d_w |
|
- | 1086 | ;dec esi |
|
Line -... | Line 1087... | ||
- | 1087 | @@: |
|
- | 1088 | ||
- | 1089 | ;¢ eax ¢ëç¨á«ï¥¬ ç «® 1-© â®çª¨ «¨¨¨ ¢ ¡ãä¥à¥ ¨§®¡à ¦¥¨ï |
|
- | 1090 | mov eax,buf2d_w ;size x |
|
- | 1091 | imul eax,ecx ;size_x*y |
|
- | 1092 | add eax,ebx ;size_x*y+x |
|
- | 1093 | lea eax,[eax+eax*2] ;(size_x*y+x)*3 |
|
- | 1094 | add eax,buf2d_data ;ptr+(size_x*y+x)*3 |
|
1077 | xchg ebx,esi ;¥á«¨ x0 > x1 â® ¬¥ï¥¬ ¬¥áâ ¬¨ x0 ¨ x1 |
1095 | |
1078 | 1096 | mov edx,dword[color] |
|
1079 | @@: ;横« ¯® ®á¨ x ®â x0 ¤® x1 |
1097 | @@: ;横« ¯® ®á¨ x ®â x0 ¤® x1 |
- | 1098 | cmp ebx,esi |
|
- | 1099 | jge @f |
|
- | 1100 | bt ebx,31 |
|
- | 1101 | jc .otr_x |
|
- | 1102 | mov word[eax],dx ;copy pixel color |
|
- | 1103 | ror edx,16 |
|
- | 1104 | mov byte[eax+2],dl |
|
1080 | cmp ebx,esi |
1105 | ror edx,16 |
1081 | jge @f |
1106 | .otr_x: |
1082 | call draw_pixel |
1107 | add eax,3 |
1083 | inc ebx |
1108 | inc ebx |
1084 | jmp @b |
1109 | jmp @b |
1085 | @@: |
1110 | @@: |