EZFB ~ Linux Frame Buffer API
by James Lehman





EZFB 11.00 3/21/2016
This is a new release based on the popularity of the Raspberry Pi! The previous version of this code set did not work well because of something I never thought of... The address of the pointer that is the base of the video RAM can change after certain ioctl function calls! So I fixed that. The reason I went to version 11 is because it's 11. The LaserBoy code is no longer included as it has taken on a life of its own since 2008.

EZFB 10.00 3/21/2008
This is an entirely new release of ezfb. It is so different than the previous version, of more that 3 years ago, individual changes are too many to list. The entire core of the frame buffer has been optimized with pre-calculated pointers to pixel rows, eliminating a lot of redundant math and pointers to functions, set at initialization, eliminating redundant switch statements. In other words it's a lot faster! New features have been added to enhance and accelerate animation in the frame buffer.

A fully functional version of LaserBoy is included in this release.

EZFB 9.05 1/21/2005
All of the work for this release went into ilda.cpp and ilda.hpp that provide the ILDA functionality for laserboy. Fixed even more bugs. Redesigned the inner most class, ilda_section, to contain STL vectors of class ilda_3D_point and class ilda_palette_item, that replace the C-style pointers to shorts or chars, (x, y, z, k, c, r, g, b) used to store the arrays of points in a frame or colors in a palette. This is in preparation for points optimization routines that will come in the future. Added the function minimize_blank_points to reduce the amount of data stored on disk by eliminating all but one blank point between any two shapes in a frame. Fixed the to_ofstream function in the class ilda so that it saves one frame with a quantity of zero points at the end of the file, in accordance with the ILDA file format standard.

EZFB 9.04 1/18/2005
Fixed lots of bugs. Cleaned up the entire project namespace by changing the names of many functions, macros, variables and even data types. Split bmp_clone_ezfb function into bmp_clone_ezfb_virtual and bmp_clone_ezfb_screen. Fixed ezfb_set_xy_offsets so that it does not corrupt palette display. Changed the name of the ild2fb project to laserboy. Made extensive changes to laserboy. Added global palette selection. Fixed recolor effects. And so much more!

EZFB 9.03 1/1/2005
Fixed a lot of bugs. Added two new functions; set_ezfb_xy_virtual and set_ezfb_xy_offsets, making it possible to set up the video memory area to be larger than the visible screen and to move the visible screen area around in the video memory. This also marks the first release of ezfb that includes a driver for The International Laser Display Association's ILDA file format and an application for generating, displaying, transforming and saving ILDA files. This release of the project has been verified to work with Fedora Core 3 and Linux kernel 2.6.9!

EZFB 9.02 8/21/2004
Fixed a few more bugs. Noticed that the Make file was setup to use g++. Fixed it to be gcc (the standard C compiler) and made sure it still compiled! Now all of the demo code compiles clean with either gcc or g++.

EZFB 9.01 2/5/2004
Fixed a few bugs.

EZFB 9.00 1/30/2004
Fixed all of the code to compile C/C++ cleanly with gcc and g++ in gcc (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5). Added some new color palettes. Added to the bitmapped memory object routines to enhance memory to screen transfers for smoother, faster animation.

EZFB 8.00 11/02/2003
Total rework of the whole project. Added signal trapping and the ability to independantly control many video cards from separate processes or within the same process.

EZFB 6.02 08/09/2002
Improved color reduction. Added functions rgb_hue(fb, index), rgb_tint(fb, index, tint), rgb_shade(fb, index, shade), set_fb_background(fb, rgb). Added "save screen" to ./jl computer art generating demo. Fixed palette cycling a few other little bugs.

EZFB 6.01 07/17/2002
Got 4 bit color reduction working! Can now display all types of bitmap files in 4 bit color. Also added 1 bit per pixel bitmap display for all frame buffer color depths. Renamed set_fb_cmap_332(fb) to set_fb_cmap_reduction(fb).

EZFB 6.00 07/13/2002
First public release.