Rev 910 | Rev 912 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 910 | Rev 911 | ||
---|---|---|---|
Line 53... | Line 53... | ||
53 | ;; |
53 | ;; |
54 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
54 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 55... | Line 55... | ||
55 | 55 | ||
Line 56... | Line 56... | ||
56 | include 'macros.inc' |
56 | include 'macros.inc' |
Line 57... | Line 57... | ||
57 | 57 | ||
Line 58... | Line 58... | ||
58 | $Revision: 910 $ |
58 | $Revision: 911 $ |
Line 4207... | Line 4207... | ||
4207 | add dx, word [eax+SLOT_BASE+APPDATA.wnd_clientbox.top] |
4207 | add dx, word [eax+SLOT_BASE+APPDATA.wnd_clientbox.top] |
4208 | rol edx, 16 |
4208 | rol edx, 16 |
4209 | add dx, word [eax+SLOT_BASE+APPDATA.wnd_clientbox.left] |
4209 | add dx, word [eax+SLOT_BASE+APPDATA.wnd_clientbox.left] |
4210 | rol edx, 16 |
4210 | rol edx, 16 |
4211 | .forced: |
4211 | .forced: |
- | 4212 | cmp esi, 1 |
|
- | 4213 | jnz @f |
|
- | 4214 | push edi |
|
- | 4215 | mov eax, [edi+4] |
|
- | 4216 | sub eax, [edi] |
|
- | 4217 | push eax |
|
- | 4218 | push dword [edi] |
|
- | 4219 | push 0ffffff80h |
|
- | 4220 | mov edi, esp |
|
- | 4221 | call put_mono_image |
|
- | 4222 | add esp, 12 |
|
- | 4223 | pop edi |
|
- | 4224 | ret |
|
- | 4225 | @@: |
|
- | 4226 | cmp esi, 4 |
|
- | 4227 | jnz @f |
|
- | 4228 | push edi |
|
- | 4229 | push 0ffffff80h |
|
- | 4230 | mov edi, esp |
|
- | 4231 | call put_4bit_image |
|
- | 4232 | pop eax |
|
- | 4233 | pop edi |
|
- | 4234 | ret |
|
- | 4235 | @@: |
|
4212 | push ebp esi ebp |
4236 | push ebp esi ebp |
4213 | cmp esi, 8 |
4237 | cmp esi, 8 |
4214 | jnz @f |
4238 | jnz @f |
4215 | mov ebp, putimage_get8bpp |
4239 | mov ebp, putimage_get8bpp |
4216 | mov esi, putimage_init8bpp |
4240 | mov esi, putimage_init8bpp |
Line 4241... | Line 4265... | ||
4241 | jmp sys_putimage_bpp |
4265 | jmp sys_putimage_bpp |
4242 | @@: |
4266 | @@: |
4243 | pop ebp esi ebp |
4267 | pop ebp esi ebp |
4244 | ret |
4268 | ret |
Line -... | Line 4269... | ||
- | 4269 | ||
- | 4270 | put_mono_image: |
|
- | 4271 | push ebp esi ebp |
|
- | 4272 | mov ebp, putimage_get1bpp |
|
- | 4273 | mov esi, putimage_init1bpp |
|
- | 4274 | jmp sys_putimage_bpp |
|
- | 4275 | put_4bit_image: |
|
- | 4276 | push ebp esi ebp |
|
- | 4277 | mov ebp, putimage_get4bpp |
|
- | 4278 | mov esi, putimage_init4bpp |
|
- | 4279 | jmp sys_putimage_bpp |
|
4245 | 4280 | ||
4246 | putimage_init24bpp: |
4281 | putimage_init24bpp: |
4247 | lea eax, [eax*3] |
4282 | lea eax, [eax*3] |
4248 | putimage_init8bpp: |
4283 | putimage_init8bpp: |
Line -... | Line 4284... | ||
- | 4284 | ret |
|
4249 | ret |
4285 | |
4250 | 4286 | align 16 |
|
4251 | putimage_get24bpp: |
4287 | putimage_get24bpp: |
4252 | mov eax, [esi] |
4288 | mov eax, [esi] |
- | 4289 | add esi, 3 |
|
4253 | add esi, 3 |
4290 | ret 4 |
4254 | ret 4 |
4291 | align 16 |
4255 | putimage_get8bpp: |
4292 | putimage_get8bpp: |
4256 | movzx eax, byte [esi] |
4293 | movzx eax, byte [esi] |
4257 | push edx |
4294 | push edx |
4258 | mov edx, [esp+8] |
4295 | mov edx, [esp+8] |
4259 | mov eax, [edx+eax*4] |
4296 | mov eax, [edx+eax*4] |
4260 | pop edx |
4297 | pop edx |
Line -... | Line 4298... | ||
- | 4298 | inc esi |
|
- | 4299 | ret 4 |
|
- | 4300 | ||
- | 4301 | putimage_init1bpp: |
|
- | 4302 | add eax, ecx |
|
- | 4303 | push ecx |
|
- | 4304 | add eax, 7 |
|
- | 4305 | add ecx, 7 |
|
- | 4306 | shr eax, 3 |
|
- | 4307 | shr ecx, 3 |
|
- | 4308 | sub eax, ecx |
|
- | 4309 | pop ecx |
|
- | 4310 | ret |
|
- | 4311 | align 16 |
|
- | 4312 | putimage_get1bpp: |
|
- | 4313 | push edx |
|
- | 4314 | mov edx, [esp+8] |
|
- | 4315 | mov al, [edx] |
|
- | 4316 | adc al, al |
|
- | 4317 | jnz @f |
|
- | 4318 | lodsb |
|
- | 4319 | adc al, al |
|
- | 4320 | @@: |
|
- | 4321 | mov [edx], al |
|
- | 4322 | sbb eax, eax |
|
- | 4323 | and eax, [edx+8] |
|
- | 4324 | add eax, [edx+4] |
|
- | 4325 | pop edx |
|
- | 4326 | ret 4 |
|
- | 4327 | ||
- | 4328 | putimage_init4bpp: |
|
- | 4329 | add eax, ecx |
|
- | 4330 | push ecx |
|
- | 4331 | add ecx, 1 |
|
- | 4332 | add eax, 1 |
|
- | 4333 | shr ecx, 1 |
|
- | 4334 | shr eax, 1 |
|
- | 4335 | sub eax, ecx |
|
- | 4336 | pop ecx |
|
- | 4337 | ret |
|
- | 4338 | align 16 |
|
- | 4339 | putimage_get4bpp: |
|
- | 4340 | push edx |
|
- | 4341 | mov edx, [esp+8] |
|
- | 4342 | add byte [edx], 80h |
|
- | 4343 | jc @f |
|
- | 4344 | movzx eax, byte [edx+1] |
|
- | 4345 | mov edx, [edx+4] |
|
- | 4346 | and eax, 0x0F |
|
- | 4347 | mov eax, [edx+eax*4] |
|
- | 4348 | pop edx |
|
- | 4349 | ret 4 |
|
- | 4350 | @@: |
|
- | 4351 | movzx eax, byte [esi] |
|
- | 4352 | add esi, 1 |
|
- | 4353 | mov [edx+1], al |
|
- | 4354 | shr eax, 4 |
|
- | 4355 | mov edx, [edx+4] |
|
- | 4356 | mov eax, [edx+eax*4] |
|
4261 | inc esi |
4357 | pop edx |
4262 | ret 4 |
4358 | ret 4 |
4263 | 4359 | ||
- | 4360 | putimage_init32bpp: |
|
4264 | putimage_init32bpp: |
4361 | shl eax, 2 |
4265 | shl eax, 2 |
4362 | ret |
4266 | ret |
4363 | align 16 |
Line 4267... | Line 4364... | ||
4267 | putimage_get32bpp: |
4364 | putimage_get32bpp: |
- | 4365 | lodsd |
|
4268 | lodsd |
4366 | ret 4 |
4269 | ret 4 |
4367 | |
- | 4368 | putimage_init15bpp: |
|
4270 | 4369 | putimage_init16bpp: |
|
4271 | putimage_init15bpp: |
4370 | add eax, eax |
4272 | add eax, eax |
4371 | ret |
4273 | ret |
4372 | align 16 |
4274 | putimage_get15bpp: |
4373 | putimage_get15bpp: |
Line 4287... | Line 4386... | ||
4287 | or eax, ecx |
4386 | or eax, ecx |
4288 | or eax, edx |
4387 | or eax, edx |
4289 | pop edx ecx |
4388 | pop edx ecx |
4290 | ret 4 |
4389 | ret 4 |
Line 4291... | Line -... | ||
4291 | - | ||
4292 | putimage_init16bpp: |
- | |
4293 | add eax, eax |
4390 | |
4294 | ret |
4391 | align 16 |
4295 | putimage_get16bpp: |
4392 | putimage_get16bpp: |
4296 | ; RRRRRGGGGGGBBBBB -> 00000000RRRRR000GGGGGG00BBBBB000 |
4393 | ; RRRRRGGGGGGBBBBB -> 00000000RRRRR000GGGGGG00BBBBB000 |
4297 | push ecx edx |
4394 | push ecx edx |
4298 | movzx eax, word [esi] |
4395 | movzx eax, word [esi] |