sysfunction 65: added 16-bit color
git-svn-id: svn://kolibrios.org@842 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
b2e313b0d9
commit
059b851217
@ -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, 24 ¨«¨ 32
|
* esi = ç¨á«® ¡¨â ¯¨ªá¥«ì, ¤®«¦® ¡ëâì 8, 16, 24 ¨«¨ 32
|
||||||
* edi = 㪠§ â¥«ì ¯ «¨âàã (256 梥⮢ 0x00RRGGBB);
|
* edi = 㪠§ â¥«ì ¯ «¨âàã (256 梥⮢ 0x00RRGGBB);
|
||||||
¨£®à¨àã¥âáï ¯à¨ esi = 24 ¨ 32
|
¨£®à¨àã¥âáï ¯à¨ esi = 16, 24 ¨ 32
|
||||||
* ebp = ᬥ饨¥ ¤ ëå ª ¦¤®© á«¥¤ãî饩 áâப¨ ¨§®¡à ¦¥¨ï
|
* ebp = ᬥ饨¥ ¤ ëå ª ¦¤®© á«¥¤ãî饩 áâப¨ ¨§®¡à ¦¥¨ï
|
||||||
®â®á¨â¥«ì® ¯à¥¤ë¤ã饩
|
®â®á¨â¥«ì® ¯à¥¤ë¤ã饩
|
||||||
‚®§¢à é ¥¬®¥ § 票¥:
|
‚®§¢à é ¥¬®¥ § 票¥:
|
||||||
@ -3413,9 +3413,18 @@ IPC
|
|||||||
* Š®®à¤¨ âë ¨§®¡à ¦¥¨ï - íâ® ª®®à¤¨ âë ¢¥à奣® «¥¢®£® 㣫
|
* Š®®à¤¨ âë ¨§®¡à ¦¥¨ï - íâ® ª®®à¤¨ âë ¢¥à奣® «¥¢®£® 㣫
|
||||||
¨§®¡à ¦¥¨ï ®â®á¨â¥«ì® ®ª .
|
¨§®¡à ¦¥¨ï ®â®á¨â¥«ì® ®ª .
|
||||||
* <20> §¬¥à ¨§®¡à ¦¥¨ï ¢ ¡ ©â å ¥áâì xsize*ysize.
|
* <20> §¬¥à ¨§®¡à ¦¥¨ï ¢ ¡ ©â å ¥áâì xsize*ysize.
|
||||||
* Š ¦¤ë© ¡ ©â ¨§®¡à ¦¥¨ï à áᬠâਢ ¥âáï ª ª ¨¤¥ªá ¢ ¯ «¨âà¥.
|
* ”®à¬ â ¨§®¡à ¦¥¨ï á 8 ¡¨â ¬¨ ¯¨ªá¥«ì: ª ¦¤ë© ¡ ©â ¨§®¡à ¦¥¨ï
|
||||||
|
à áᬠâਢ ¥âáï ª ª ¨¤¥ªá ¢ ¯ «¨âà¥.
|
||||||
* …᫨ ¨§®¡à ¦¥¨¥ ¨á¯®«ì§ã¥â ¥ ¢á¥ 256 梥⮢, ¬¥ìè¥,
|
* …᫨ ¨§®¡à ¦¥¨¥ ¨á¯®«ì§ã¥â ¥ ¢á¥ 256 梥⮢, ¬¥ìè¥,
|
||||||
à §¬¥à ¯ «¨âàë ¬®¦¥â ¡ëâì ¬¥ìè¥ 256.
|
à §¬¥à ¯ «¨âàë ¬®¦¥â ¡ëâì ¬¥ìè¥ 256.
|
||||||
|
* ”®à¬ â ¨§®¡à ¦¥¨ï á 16 ¡¨â ¬¨ ¯¨ªá¥«ì: 梥⠪ ¦¤®£® ¯¨ªá¥«ï
|
||||||
|
ª®¤¨àã¥âáï ª ª (¢ ¡¨â®¢®¬ ¯à¥¤áâ ¢«¥¨¨) 0RRRRRGGGGGBBBBB -
|
||||||
|
¯® 5 ¯¨ªá¥«¥© ª ¦¤ë© 梥â.
|
||||||
|
* ”®à¬ â ¨§®¡à ¦¥¨ï á 24 ¡¨â ¬¨ ¯¨ªá¥«ì: 梥⠪ ¦¤®£® ¯¨ªá¥«ï
|
||||||
|
ª®¤¨àã¥âáï âà¥¬ï ¡ ©â ¬¨ - ¯®á«¥¤®¢ â¥«ì® á¨ïï, §¥«ñ ï,
|
||||||
|
ªà á ï á®áâ ¢«ïî騥 梥â .
|
||||||
|
* ”®à¬ â ¨§®¡à ¦¥¨ï á 32 ¡¨â ¬¨ ¯¨ªá¥«ì: «®£¨ç® 24, ⮫쪮
|
||||||
|
¥áâì ¥éñ ¨£®à¨àã¥¬ë© ç¥â¢ñàâë© ¡ ©â.
|
||||||
* ‚맮¢ äãªæ¨¨ 7 íª¢¨¢ «¥â¥ ¢ë§®¢ã í⮩ äãªæ¨¨ á ¯ à ¬¥âà ¬¨
|
* ‚맮¢ äãªæ¨¨ 7 íª¢¨¢ «¥â¥ ¢ë§®¢ã í⮩ äãªæ¨¨ á ¯ à ¬¥âà ¬¨
|
||||||
esi=24, ebp=0.
|
esi=24, ebp=0.
|
||||||
|
|
||||||
|
@ -4199,6 +4199,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, 16
|
||||||
|
jnz @f
|
||||||
|
mov ebp, putimage_get16bpp
|
||||||
|
mov esi, putimage_init16bpp
|
||||||
|
jmp sys_putimage_bpp
|
||||||
@@:
|
@@:
|
||||||
cmp esi, 24
|
cmp esi, 24
|
||||||
jnz @f
|
jnz @f
|
||||||
@ -4212,7 +4218,7 @@ sys_putimage_palette:
|
|||||||
mov esi, putimage_init32bpp
|
mov esi, putimage_init32bpp
|
||||||
jmp sys_putimage_bpp
|
jmp sys_putimage_bpp
|
||||||
@@:
|
@@:
|
||||||
pop ebp esi
|
pop ebp esi ebp
|
||||||
ret
|
ret
|
||||||
|
|
||||||
putimage_init24bpp:
|
putimage_init24bpp:
|
||||||
@ -4240,6 +4246,27 @@ putimage_get32bpp:
|
|||||||
lodsd
|
lodsd
|
||||||
ret 4
|
ret 4
|
||||||
|
|
||||||
|
putimage_init16bpp:
|
||||||
|
add eax, eax
|
||||||
|
ret
|
||||||
|
putimage_get16bpp:
|
||||||
|
; 0RRRRRGGGGGBBBBB -> 00000000RRRRR000GGGGG000BBBBB000
|
||||||
|
push ecx edx
|
||||||
|
movzx eax, word [esi]
|
||||||
|
add esi, 2
|
||||||
|
mov ecx, eax
|
||||||
|
mov edx, eax
|
||||||
|
and eax, 0x1F
|
||||||
|
and ecx, 0x1F shl 5
|
||||||
|
and edx, 0x1F shl 10
|
||||||
|
shl eax, 3
|
||||||
|
shl ecx, 6
|
||||||
|
shl edx, 9
|
||||||
|
or eax, ecx
|
||||||
|
or eax, edx
|
||||||
|
pop edx ecx
|
||||||
|
ret
|
||||||
|
|
||||||
; eax x beginning
|
; eax x beginning
|
||||||
; ebx y beginning
|
; ebx y beginning
|
||||||
; ecx x end
|
; ecx x end
|
||||||
|
Loading…
Reference in New Issue
Block a user