1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-06 22:51:41 +00:00
freebsd-ports/www/Mosaic/files/patch-ae
Satoshi Asami 59aedfda14 Make mosaic work in 15/16bpp mode. I haven't tested it here (I don't
have Motif!), but verifies that the patch at least applies.

Submitted by:	Steve Passe <smp@ilsa.systemsix.com>
1995-11-29 10:48:30 +00:00

109 lines
3.2 KiB
Plaintext

*** src/pixmaps.c.orig Thu Feb 2 17:56:46 1995
--- src/pixmaps.c Fri Nov 17 12:21:32 1995
***************
*** 397,412 ****
* TrueColor displays. I have no access to such displays, so I
* can't really test it.
* Donated by - andrew@icarus.demon.co.uk
*/
case 16:
bit_data = (unsigned char *)malloc(size * 2);
bitp = bit_data;
datap = data;
for (w = size; w > 0; w--)
{
! temp = (((colrs[(int)*datap].red >> 1) & 0x7c00) |
! ((colrs[(int)*datap].green >> 6) & 0x03e0) |
! ((colrs[(int)*datap].blue >> 11) & 0x001f));
if (BitmapBitOrder(XtDisplay(wid)) == MSBFirst)
{
--- 397,429 ----
* TrueColor displays. I have no access to such displays, so I
* can't really test it.
* Donated by - andrew@icarus.demon.co.uk
+ * modified by smp@csn.net for XFree86-3.1.x
*/
+ case 15:
case 16:
bit_data = (unsigned char *)malloc(size * 2);
bitp = bit_data;
datap = data;
for (w = size; w > 0; w--)
{
! if (depth == 15) /* weight == 555 */
! {
! temp = (((colrs[(int)*datap].red >> 1)
! & 0x7c00) |
! ((colrs[(int)*datap].green >> 6)
! & 0x03e0) |
! ((colrs[(int)*datap].blue >> 11)
! & 0x001f));
! }
! else /* depth == 16, weight == 565 */
! {
! temp = ( (colrs[(int)*datap].red
! & 0xf800) |
! ((colrs[(int)*datap].green >> 5)
! & 0x07e0) |
! ((colrs[(int)*datap].blue >> 11)
! & 0x001f));
! }
if (BitmapBitOrder(XtDisplay(wid)) == MSBFirst)
{
*** libhtmlw/HTMLimages.c.orig Tue Jan 10 17:03:32 1995
--- libhtmlw/HTMLimages.c Fri Nov 17 12:27:58 1995
***************
*** 356,371 ****
* TrueColor displays. I have no access to such displays, so I
* can't really test it.
* Donated by - andrew@icarus.demon.co.uk
*/
case 16:
bit_data = (unsigned char *)malloc(width * height * 2);
bitp = bit_data;
datap = data;
for (w = (width * height); w > 0; w--)
{
! temp = (((img_info->reds[(int)*datap] >> 1)& 0x7c00) |
! ((img_info->greens[(int)*datap] >> 6)& 0x03e0) |
! ((img_info->blues[(int)*datap] >> 11)& 0x001f));
if (BitmapBitOrder(dsp) == MSBFirst)
{
--- 356,388 ----
* TrueColor displays. I have no access to such displays, so I
* can't really test it.
* Donated by - andrew@icarus.demon.co.uk
+ * modified by smp@csn.net for XFree86-3.1.x
*/
+ case 15:
case 16:
bit_data = (unsigned char *)malloc(width * height * 2);
bitp = bit_data;
datap = data;
for (w = (width * height); w > 0; w--)
{
! if (depth == 15) /* weight == 555 */
! {
! temp = (((img_info->reds[(int)*datap] >> 1)
! & 0x7c00) |
! ((img_info->greens[(int)*datap] >> 6)
! & 0x03e0) |
! ((img_info->blues[(int)*datap] >> 11)
! & 0x001f));
! }
! else /* depth == 16, weight == 565 */
! {
! temp = ((img_info->reds[(int)*datap]
! & 0xf800) |
! ((img_info->greens[(int)*datap] >> 5)
! & 0x07e0) |
! ((img_info->blues[(int)*datap] >> 11)
! & 0x001f));
! }
if (BitmapBitOrder(dsp) == MSBFirst)
{