forked from KolibriOS/kolibrios
sysfunction 65: 16bpp is now 5+6+5, and 5+5+5=15bpp
git-svn-id: svn://kolibrios.org@906 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
5775f44b56
commit
2d73c440b4
@ -3402,9 +3402,9 @@ IPC
|
|||||||
* ebx = 㪠§ â¥«ì ¨§®¡à ¦¥¨¥
|
* ebx = 㪠§ â¥«ì ¨§®¡à ¦¥¨¥
|
||||||
* ecx = [à §¬¥à ¯® ®á¨ x]*65536 + [à §¬¥à ¯® ®á¨ y]
|
* ecx = [à §¬¥à ¯® ®á¨ x]*65536 + [à §¬¥à ¯® ®á¨ y]
|
||||||
* edx = [ª®®à¤¨ â ¯® ®á¨ x]*65536 + [ª®®à¤¨ â ¯® ®á¨ y]
|
* edx = [ª®®à¤¨ â ¯® ®á¨ x]*65536 + [ª®®à¤¨ â ¯® ®á¨ y]
|
||||||
* esi = ç¨á«® ¡¨â ¯¨ªá¥«ì, ¤®«¦® ¡ëâì 8, 16, 24 ¨«¨ 32
|
* esi = ç¨á«® ¡¨â ¯¨ªá¥«ì, ¤®«¦® ¡ëâì 8, 15, 16, 24 ¨«¨ 32
|
||||||
* edi = 㪠§ â¥«ì ¯ «¨âàã (256 梥⮢ 0x00RRGGBB);
|
* edi = 㪠§ â¥«ì ¯ «¨âàã (256 梥⮢ 0x00RRGGBB);
|
||||||
¨£®à¨àã¥âáï ¯à¨ esi = 16, 24 ¨ 32
|
¨£®à¨àã¥âáï ¯à¨ esi > 8
|
||||||
* ebp = ᬥ饨¥ ¤ ëå ª ¦¤®© á«¥¤ãî饩 áâப¨ ¨§®¡à ¦¥¨ï
|
* ebp = ᬥ饨¥ ¤ ëå ª ¦¤®© á«¥¤ãî饩 áâப¨ ¨§®¡à ¦¥¨ï
|
||||||
®â®á¨â¥«ì® ¯à¥¤ë¤ã饩
|
®â®á¨â¥«ì® ¯à¥¤ë¤ã饩
|
||||||
‚®§¢à é ¥¬®¥ § 票¥:
|
‚®§¢à é ¥¬®¥ § 票¥:
|
||||||
@ -3417,9 +3417,11 @@ IPC
|
|||||||
à áᬠâਢ ¥âáï ª ª ¨¤¥ªá ¢ ¯ «¨âà¥.
|
à áᬠâਢ ¥âáï ª ª ¨¤¥ªá ¢ ¯ «¨âà¥.
|
||||||
* …᫨ ¨§®¡à ¦¥¨¥ ¨á¯®«ì§ã¥â ¥ ¢á¥ 256 梥⮢, ¬¥ìè¥,
|
* …᫨ ¨§®¡à ¦¥¨¥ ¨á¯®«ì§ã¥â ¥ ¢á¥ 256 梥⮢, ¬¥ìè¥,
|
||||||
à §¬¥à ¯ «¨âàë ¬®¦¥â ¡ëâì ¬¥ìè¥ 256.
|
à §¬¥à ¯ «¨âàë ¬®¦¥â ¡ëâì ¬¥ìè¥ 256.
|
||||||
* ”®à¬ â ¨§®¡à ¦¥¨ï á 16 ¡¨â ¬¨ ¯¨ªá¥«ì: 梥⠪ ¦¤®£® ¯¨ªá¥«ï
|
* ”®à¬ â ¨§®¡à ¦¥¨ï á 15 ¡¨â ¬¨ ¯¨ªá¥«ì: 梥⠪ ¦¤®£® ¯¨ªá¥«ï
|
||||||
ª®¤¨àã¥âáï ª ª (¢ ¡¨â®¢®¬ ¯à¥¤áâ ¢«¥¨¨) 0RRRRRGGGGGBBBBB -
|
ª®¤¨àã¥âáï ª ª (¢ ¡¨â®¢®¬ ¯à¥¤áâ ¢«¥¨¨) 0RRRRRGGGGGBBBBB -
|
||||||
¯® 5 ¯¨ªá¥«¥© ª ¦¤ë© 梥â.
|
¯® 5 ¯¨ªá¥«¥© ª ¦¤ë© 梥â.
|
||||||
|
* ”®à¬ â ¨§®¡à ¦¥¨ï á 16 ¡¨â ¬¨ ¯¨ªá¥«ì: 梥⠪ ¦¤®£® ¯¨ªá¥«ï
|
||||||
|
ª®¤¨àã¥âáï ª ª RRRRRGGGGGGBBBBB (á奬 5+6+5).
|
||||||
* ”®à¬ â ¨§®¡à ¦¥¨ï á 24 ¡¨â ¬¨ ¯¨ªá¥«ì: 梥⠪ ¦¤®£® ¯¨ªá¥«ï
|
* ”®à¬ â ¨§®¡à ¦¥¨ï á 24 ¡¨â ¬¨ ¯¨ªá¥«ì: 梥⠪ ¦¤®£® ¯¨ªá¥«ï
|
||||||
ª®¤¨àã¥âáï âà¥¬ï ¡ ©â ¬¨ - ¯®á«¥¤®¢ â¥«ì® á¨ïï, §¥«ñ ï,
|
ª®¤¨àã¥âáï âà¥¬ï ¡ ©â ¬¨ - ¯®á«¥¤®¢ â¥«ì® á¨ïï, §¥«ñ ï,
|
||||||
ªà á ï á®áâ ¢«ïî騥 梥â .
|
ªà á ï á®áâ ¢«ïî騥 梥â .
|
||||||
|
@ -4213,6 +4213,12 @@ sys_putimage_palette:
|
|||||||
mov ebp, putimage_get8bpp
|
mov ebp, putimage_get8bpp
|
||||||
mov esi, putimage_init8bpp
|
mov esi, putimage_init8bpp
|
||||||
jmp sys_putimage_bpp
|
jmp sys_putimage_bpp
|
||||||
|
@@:
|
||||||
|
cmp esi, 15
|
||||||
|
jnz @f
|
||||||
|
mov ebp, putimage_get15bpp
|
||||||
|
mov esi, putimage_init15bpp
|
||||||
|
jmp sys_putimage_bpp
|
||||||
@@:
|
@@:
|
||||||
cmp esi, 16
|
cmp esi, 16
|
||||||
jnz @f
|
jnz @f
|
||||||
@ -4260,10 +4266,10 @@ putimage_get32bpp:
|
|||||||
lodsd
|
lodsd
|
||||||
ret 4
|
ret 4
|
||||||
|
|
||||||
putimage_init16bpp:
|
putimage_init15bpp:
|
||||||
add eax, eax
|
add eax, eax
|
||||||
ret
|
ret
|
||||||
putimage_get16bpp:
|
putimage_get15bpp:
|
||||||
; 0RRRRRGGGGGBBBBB -> 00000000RRRRR000GGGGG000BBBBB000
|
; 0RRRRRGGGGGBBBBB -> 00000000RRRRR000GGGGG000BBBBB000
|
||||||
push ecx edx
|
push ecx edx
|
||||||
movzx eax, word [esi]
|
movzx eax, word [esi]
|
||||||
@ -4279,7 +4285,28 @@ putimage_get16bpp:
|
|||||||
or eax, ecx
|
or eax, ecx
|
||||||
or eax, edx
|
or eax, edx
|
||||||
pop edx ecx
|
pop edx ecx
|
||||||
|
ret 4
|
||||||
|
|
||||||
|
putimage_init16bpp:
|
||||||
|
add eax, eax
|
||||||
ret
|
ret
|
||||||
|
putimage_get16bpp:
|
||||||
|
; RRRRRGGGGGGBBBBB -> 00000000RRRRR000GGGGGG00BBBBB000
|
||||||
|
push ecx edx
|
||||||
|
movzx eax, word [esi]
|
||||||
|
add esi, 2
|
||||||
|
mov ecx, eax
|
||||||
|
mov edx, eax
|
||||||
|
and eax, 0x1F
|
||||||
|
and ecx, 0x3F shl 5
|
||||||
|
and edx, 0x1F shl 11
|
||||||
|
shl eax, 3
|
||||||
|
shl ecx, 5
|
||||||
|
shl edx, 8
|
||||||
|
or eax, ecx
|
||||||
|
or eax, edx
|
||||||
|
pop edx ecx
|
||||||
|
ret 4
|
||||||
|
|
||||||
; eax x beginning
|
; eax x beginning
|
||||||
; ebx y beginning
|
; ebx y beginning
|
||||||
|
Loading…
Reference in New Issue
Block a user