ex12bit man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

ex12bit(3)			Allegro manual			    ex12bit(3)

NAME
       ex12bit - How to fake a 12-bit truecolor mode on an 8-bit card. Allegro
       game programming library.

SYNOPSIS
       #include <allegro.h>

       Example ex12bit

DESCRIPTION
       This program sets up a 12-bit mode on any 8-bit card, by setting	 up  a
       256-colour  palette that will fool the eye into grouping two 8-bit pix‐
       els into one  12-bit  pixel.  In	 order	to  do	this,  you  make  your
       256-colour  palette with all the combinations of blue and green, assum‐
       ing green ranges from 0-15 and blue from 0-14. This takes up  16x15=240
       colours.	 This  leaves 16 colours to use as red (red ranges from 0-15).
       Then you put your green/blue in one pixel, and your red	in  the	 pixel
       next to it. The eye gets fooled into thinking it's all one pixel.

       The  example  starts  setting  a normal 256 color mode, and construct a
       special palette for it. But then comes the trick: you need to write  to
       a set of two adjacent pixels to form a single 12 bit dot. Two eight bit
       pixels is the same as one 16 bit pixel, so after setting the video mode
       you  need to hack the screen bitmap about, halving the width and chang‐
       ing it to use the 16 bit drawing code. Then, once  you  have  packed  a
       color  into  the correct format (using the makecol12() function below),
       any of the normal Allegro drawing functions can be used	with  this  12
       bit display!

       Things to note:

       The  horizontal	width  is halved, so you get resolutions like 320x480,
       400x600, and 512x768.

       Because each dot is spread over two actual pixels, the display will  be
       darker than in a normal video mode.

       Any  bitmap  data  will obviously need converting to the correct 12 bit
       format: regular 15 or 16 bit images won't display correctly...

       Although this works like a truecolor mode, it is actually using	a  256
       color palette, so palette fades are still possible!

       This code only works in linear screen modes (don't try Mode-X).

SEE ALSO
       BITMAP(3),   END_OF_MAIN(3),   MATRIX(3),   PALETTE(3),	RGB(3),	 alle‐
       gro_error(3),  allegro_init(3),	allegro_message(3),   apply_matrix(3),
       blit(3),	      circle(3),       clear_bitmap(3),	      clear_keybuf(3),
       clear_to_color(3), create_bitmap(3), create_bitmap_ex(3),  destroy_bit‐
       map(3),	ellipsefill(3),	 fade_out(3),  fixcos(3), fixed(3), fixsin(3),
       fixtoi(3), font(3), get_rotation_matrix(3),  getpixel(3),  install_key‐
       board(3),     itofix(3),	    keypressed(3),     line(3),	   makecol(3),
       masked_blit(3), putpixel(3), screen(3), set_clip_rect(3), set_color(3),
       set_gfx_mode(3),	   set_palette(3),   text_height(3),   text_length(3),
       textout_ex(3), textprintf_ex(3)

Allegro				 version 4.4.2			    ex12bit(3)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net