Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
5253 | mario79 | 1 | ;--------------------------------------------------------------------- |
2 | ;copy_base_24bpp: |
||
3 | ; DEBUGF 1, "copy_base_24bpp\n" |
||
4 | ; push ecx |
||
5 | ; mov esi,[eax+28] ; RAW area |
||
6 | ; add esi,eax |
||
7 | ; add esi,ebp |
||
8 | ; mov edi,buffer_area |
||
9 | ; mov ecx,SPRITE_SIZE_X*SPRITE_SIZE_Y |
||
10 | ; cld |
||
11 | ;-------------------------------------- |
||
12 | ;@@: |
||
13 | ; lodsd |
||
14 | ; and eax,0xffffff |
||
15 | ; dec esi |
||
16 | ; stosd |
||
17 | ; dec ecx |
||
18 | ; jnz @b |
||
19 | ; |
||
20 | ; pop ecx |
||
21 | ; DEBUGF 1, "copy_base_24bpp end\n" |
||
22 | ; ret |
||
23 | ;--------------------------------------------------------------------- |
||
24 | copy_base_8bpp: |
||
25 | ; DEBUGF 1, "copy_base_8bpp\n" |
||
26 | push ecx |
||
27 | mov esi,[eax+28] ; RAW area |
||
28 | add esi,eax |
||
29 | add esi,ebp |
||
30 | |||
31 | mov ebp,[eax+20] ; RAW palette |
||
32 | add ebp,eax |
||
33 | mov edi,buffer_area |
||
34 | mov ecx,SPRITE_SIZE_X*SPRITE_SIZE_Y |
||
35 | cld |
||
36 | ;-------------------------------------- |
||
37 | @@: |
||
38 | lodsb |
||
39 | movzx eax,al |
||
40 | shl eax,2 |
||
41 | mov eax,[eax+ebp] |
||
42 | stosd |
||
43 | dec ecx |
||
44 | jnz @b |
||
45 | |||
46 | pop ecx |
||
47 | ; DEBUGF 1, "copy_base_8bpp end\n" |
||
48 | ret |
||
49 | ;--------------------------------------------------------------------- |