Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
RLE(5)			      File Formats Manual			RLE(5)

NAME
       rle - Run length	encoded	file format produced by	the rle	library

DESCRIPTION
       The  output  file format	is (note: all words are	16 bits, and in	PDP-11
       byte order):

       Word 0 A	"magic"	number 0xcc52.	(Byte order 0x52, 0xcc.)

       Words 1-4
	      The structure (chars saved in PDP-11 order)

	      {
		  short	  xpos,			      /* Lower left corner
			  ypos,
			  xsize,		      /* Size of saved box
			  ysize;
	      }

       Byte 10
	      (flags) The following flags are defined:

	    H_CLEARFIRST
		   (0x1) If set, clear the frame buffer	 to  background	 color
		   before restoring.

	    H_NO_BACKGROUND
		   (0x2)   If  set,  no	 background  color  is	supplied.   If
		   H_CLEARFIRST	is also	set, it	should be ignored (or alterna-
		   tively, a clear-to-black operation could be performed).

	    H_ALPHA
		   (0x4)  If  set,  an alpha channel is	saved as color channel
		   -1.	The alpha channel does not contribute to the count  of
		   colors in ncolors.

	    H_COMMENT
		   (0x8)  If  set,  comments  will follow the color map	in the
		   header.

       Byte 11
	      (ncolors)	Number of color	channels present.  0 means  load  only
	      the  color map (if present), 1 means a B&W image,	3 means	a nor-
	      mal color	image.

       Byte 12
	      (pixelbits) Number of bits per pixel, per	color channel.	Values
	      greater than 8 currently will not	work.

       Byte 13
	      (ncmap) Number of	color map channels present.  Need not be iden-
	      tical to ncolors.	 If this is non-zero, the  color  map  follows
	      immediately after	the background colors.

       Byte 14
	      (cmaplen)	 Log  base 2 of	the number of entries in the color map
	      for each color channel.  I.e., would be 8	for a color  map  with
	      256 entries.

       Bytes 15-...
	      The  background  color.	There  are ncolors bytes of background
	      color.  If ncolors is even, an extra padding byte	is inserted to
	      end  on a	16 bit boundary.  The background color is only present
	      if H_NO_BACKGROUND is not	set in flags.  IF H_NO	BACKGROUND  is
	      set,  there  is  a  single filler	byte.  Background color	is ig-
	      nored, but present, if H_CLEARFIRST is not set in	flags.

	      If ncmap	is  non-zero,  then  the  color	 map  will  follow  as
	      ncmap*2^cmaplen 16 bit words.  The color map data	is left	justi-
	      fied in each word.

	      If the H_COMMENT flag is set, a set  of  comments	 will  follow.
	      The first	16 bit word gives the length of	the comments in	bytes.
	      If this is odd, a	filler byte will be appended to	the  comments.
	      The  comments  are  interpreted as a sequence of null terminated
	      strings which should be, by convention, of the form  name=value,
	      or just name.

	      Following	the setup information is the Run Length	Encoded	image.
	      Each instruction consists	of an opcode, a	datum and possibly one
	      or  more following words (all words are 16 bits).	 The opcode is
	      encoded in the first byte	of the instruction word.  Instructions
	      come in either a short or	long form.  In the short form, the da-
	      tum is in	the second byte	of the instruction word; in  the  long
	      form,  the datum is a 16 bit value in the	word following the in-
	      struction	word.  Long form  instructions	are  distinguished  by
	      having the 0x40 bit set in the opcode byte.  The instruction op-
	      codes are:

       SkipLines (1)
	      The datum	is an unsigned number to be added to the current Y po-
	      sition.

       SetColor	(2)
	      The  datum  indicates  which color is to be loaded with the data
	      described	by the following ByteData  and	RunData	 instructions.
	      Typically, 0->red, 1->green, 2->blue.  The operation also	resets
	      the X position to	the initial X (i.e. a carriage	return	opera-
	      tion is performed).

       SkipPixels (3)
	      The datum	is an unsigned number to be added to the current X po-
	      sition.

       ByteData	(5)
	      The datum	is one less than the number of	bytes  of  color  data
	      following.  If the number	of bytes is odd, a filler byte will be
	      appended to the end of the byte string to	make an	integral  num-
	      ber  of  16-bit  words.  The X position is incremented to	follow
	      the last byte of data.

       RunData (6)
	      The datum	is one less than the run length.  The  following  word
	      contains	(in its	lower 8	bits) the color	of the run.  The X po-
	      sition is	incremented to follow the last byte in the run.

       EOF (7)
	      This opcode indicates the	logical	end of image data.  A physical
	      end-of-file will also serve as well.  The	EOF opcode may be used
	      to concatenate several images in a single	file.

SEE ALSO
       librle(3)

AUTHOR
       Spencer W. Thomas, Todd Fuqua

4th Berkeley Distribution	    9/14/82				RLE(5)

NAME | DESCRIPTION | SEE ALSO | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=RLE&sektion=5&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help