Revision history for Graphics-Framebuffer

1.00    2004
        First version, released privately only, as part of a Perl
		media player project called "SuperSparky".

4.02    Dec 29, 2013
        Public CPAN release.  This is considerably more advanced
		than the one distributed as part of the media player.

4.03    March 20, 2014
        Minor changes to the CPAN package

4.05    April 14, 2014
        Documentation updates.  POD section revamped.

4.06    July 19, 2014
        Added better testing
        
        Added framebuffer emulation mode for test running on systems
        without a hardware framebuffer.  It draws to a 640x480x32
        virtual screen in memory.  You can dump this screen to a file.
        
4.07    July 23, 2014
        Fixed calculation error in string size allocation for emulation
        mode.
        
        Fixed fill 'flood' typo.
        
        Fixed pixel class documentation.  It was incorrect.

        Added more tests for most used classes.

4.08    July 25, 2014
        Added additional information to the documentation for the new
        emulation mode.  No actual code changes made.

4.09    November 26, 2014
        Added more FBIOCTL flags to make ready for future hardware
        accellerated updates.  No promises here, but heck, this
        entire module was an exercise in "can it be done in Perl?"
        
        Also fixed a code comment that was mislabeled.

4.10    May 10, 2015
        Added the ability to customize the framebuffer file path.
        Thanks Markus Maier.
        
        Added aliases to "set_mode"

        Some minor documentation fixes.

4.11    July 03, 2015
        Numerous changes.

        Changed ttf_print box_mode to return everything needed to call itself
        again.

        Added a 'COLOR_ORDER' setting to the "new" parameters.  1=RGB and 0=BGR.
        The default is BGR.

        Added more comments to the code

        Added 'reset' as an alias to 'attributes_reset'.  Just for people with
        different tastes.

        Hardened the code further against undefined values.

        Added more documentation

        Tested on Raspberry PI2, and works great!  Odroid XU3, not so much...

        Circle/ellipse clipping weirdness remains.  I should have that addressed
        in the next release.

4.12    July 05, 2015
        Minor POD fix

        There was a POD error that caused it to fail testing, although it would
        have worked fine if installed.

        No new functionality in this release, just that one issue fixed.

4.13    July 06, 2015
        Changed the tests to only test against a memory buffer.

        The tests get screwed up by the Test::Harness' output (which can't be
        squelched apparently).  So instead of testing on the real framebuffer,
        I force the tests on a pseudo memory buffer.

        I believe I have fixed the clipping issues, especially the ones with
        filled ellipses and circles.  It was related to blit_write.

        There are some minor optimizations, although likely not obvious.

4.14    July 07, 2015
        Fixed borked plot test.  Functionality of the module is fine.  The test
        was broken.

4.15    July 07, 2015
        Optimizations!

        I have optimized the draw_arc routine, and in the process made it
        properly work with XOR mode as well.  It only draws what it hasn't
        drawn before.  Which makes it quite faster (although still not a speed
        demon).

4.16    July 14, 2015
        Bug fixes

        Fill is now fixed.  This sucker still uses stack memory like it's going
        out of style.  You have been warned.

        Filled polygons now, as long as they aren't overly complicated, and the
        borders do not cross.  It uses a history buffer when drawing and then
        uses it to draw a series of horizontal lines to "fill" the polygon. This
        fill is very fast as a result.

        'line' added for an alternate way of drawing a line.  It's essentially
        a combination of plot > drawto under the hood.

        Warnings have been completely turned off.  We don't want warnings to
        mess up your pretty graphics.  Crashable code is in an eval, so who
        cares?  Generally warnings begin happening when Perl has done a
        variable garbage collection, and the memory mapping to the framebuffer
        is borked.  Fortunately, the module now recovers from this and remaps
        it.

        Clipping is quicker and more robust.

        Documentation has been updated / fixed where appropriate.

4.17    July 14, 2015
        Fixed bugs as a result of some typos.  Sorry about that.
        This affected the draw_arc and ellipse routines.
        
        Made poly arcs draw with lines instead of single pixels.  That fills in
        the errors left by high granularity.
        
        Added the constants 'ARC', 'PIE', and 'POLY_ARC' to make drawing arcs
        easier to code.

4.18    July 14, 2015
        Added new arc drawing methods.  See the POD docs (man) for details.

4.19    July 16, 2015
        Fixed the POD errors on test.  I could swear I tested that.  Oh well.

4.20    July 16, 2015
        Removed the harmless leftover SCREEN2 code.  Since that variable no
        longer existed, the code skips by it.

4.21    July 16, 2015
        Ugh, I left "Data::Dumper::Simple" in the previous version.  Build
        was borking on machines without it.  Sorry folks.

        I try to leave out all debugging code to keep the module as fast as
        possible, but I missing this one.
