+ Introduced CACA_DITHER_FSTEIN.
* src/caca.c:
+ CACA_DITHER_FSTEIN is the default dithering method.
* src/bitmap.c:
+ Fixed other dithering methods. Black background does not work yet.
+ Check for sys/times.h and unistd.h.
+ Added calls to AC_C_CONST and AC_C_INLINE.
* src/time.c src/graphics.c:
+ Fixes for MSVC compilation warnings.
+ Additional sanity checks in the Win32 driver.
* src/caca.c:
+ Use raw()/noraw() in the curses driver instead of cbreak().
* msvc/libcaca.sln:
+ Added an MSVC solution.
* examples/aafire.c:
+ Slightly reduced the maximum cacafire framerate.
+ Check for gettimeofday().
* src/time.c:
+ Created _caca_time().
+ Ported _caca_getticks() to the Win32 API.
* src/caca.c:
+ Properly builds on Win32.
* test/event.c:
+ Added <stdlib.h> because we use malloc().
+ Do not refresh after each event, but only when there is no event
pending.
+ If the pressed key is a printable character, display it.
* src/time.c:
+ Moved _caca_getticks() to this file.
* src/caca.c:
+ Set the escape delay to a very low value in the ncurses driver,
because I don't want escape sequences to be entered manually.
* src/io.c:
+ Autorepeat emulation in the ncurses and slang drivers: do not
immediately send the key release event.
* configure.ac:
+ Check for usleep.
+ Improvements in the win32 platform detection.
+ Small event lister, similar to X11's xev.
* src/graphics.c:
+ If possible, disable autorepeat in the X11 driver.
* src/io.c:
+ Implemented CACA_EVENT_MOUSE_RELEASE in all drivers.
+ Button number support in CACA_EVENT_MOUSE_{PRESS,RELEASE}.
+ Updated the package descriptions to include cacaball.
* doc/cacademo.1 doc/Makefile.am:
+ Use the cacademo manpage as the cacaball manpage.
* src/:
+ Added #ifdef _DOXYGEN_SKIP_ME here and there to prvent Doxygen from
documenting bizarre stuff.
+ Fixed a minor overflow in the saturation computation.
+ Use a global lookup table for foreground/background colour selection
in the bitmap rendering routine. This broke dithering, sorry.
+ Minor optimisation in caca_set_color().
+ Added an X11 error handler to avoid BadFont aborts in the X11 driver.
+ Optimised the X11 caca_refresh() routine by handling strings of the
same colour as one text chunk.
* src/caca.c:
+ Bugfix in caca_init when conio is the only compiled-in driver.
* README:
+ Minor documentation updates.
+ Added caca_wait_event(), a blocking caca_get_event().
* src/ examples/:
+ More documentation.
* doc/doxygen.cfg.in:
+ doc/doxygen.cfg is now generated by configure, so that we can use
@top_srcdir@ and we no longer need to hardcode PROJECT_NUMBER.
+ Create manpages.
+ Support for simultaneously compiled-in drivers.
+ Honour the CACA_DRIVER environment variable.
* configure.ac:
+ Drivers are no longer mutually exclusive.
+ Added antialiasing support.
+ Dithering, antialiasing and background mode can now be selected at
runtime.
* src/caca.c src/caca.h:
+ Renamed caca_dithering into caca_feature and extended the type to
express background colour and antialiasing mode.
* examples/demo.c:
+ Fixed a bug that disabled the sprite demo.
+ Draw solid flares.
* examples/view.c:
+ Select antialiasing and background mode at runtime.
+ Internally cache screen width and height.
* src/bitmap.c:
+ Added alpha support to caca_draw_bitmap(). For now, we only treat 0%
alpha as fully transparent, and any other value as fully opaque.
+ Slightly tuned colour weights in the renderer.
+ caca_set_bitmap_palette() takes unsigned ints.
* examples/demo.c:
+ Added a crap render demo.
* examples/aafire.c:
+ Set a 20ms delay.
+ Added alpha values to the palette.
* examples/view.c:
+ Draw a gray checkered grid below the image so that transparent images
look a lot nicer.
+ 'f' toggles "fullscreen" mode.
+ Fixed an endianness issue in the byte reader.
+ Decreased precision in RGB and HSV values to avoid overflows.
+ New dithering method: 2x2 ordered.
+ New renderer, with background colour awareness.
* configure.ac:
+ Check for <endian.h>.
* examples/demo.c examples/view.c:
+ Fixed an endianness issue in cacaview.
+ Adapted code to the additional dithering method.
+ Minor change to the dithering names.
* TODO:
+ Added cacaview TODO.
* doc/cacaview.1:
+ Wrote a manpage for cacaview.
* examples/Makefile.am:
+ Moved the -DX_DISPLAY_MISSING=1 here.
* examples/view.c:
+ Capital 'D' cycles through dithering modes in reverse order.
+ Sleep when there is nothing to do.
+ Cosmetic code reorganisation.
+ Added caca_get_dithering_name().
* src/bitmap.c:
+ Created a new dithering method with an 8x8 ordered matrix.
+ Replaced the char list with a string for better readability.
+ Dithering functions now return a value between 0 and 255.
* examples/demo.c examples/view.c:
+ Adapted to use caca_get_dithering_name().
+ Default to ncurses, not slang, because slang only has 128 colour pairs.
* src/caca.c:
+ Disable scrolling to avoid hashmap scrolling optimization code.
* src/graphics.c:
+ Swap fg and bg in the colour pair indexing, so that bg is always
right.
+ Disable alt charset support to exploit my patched slang.
+ Moved graphics stuff from caca.c to graphics.c.
+ Added a few kludges: if gnome-terminal or konsole are detected, switch
to TERM=xterm-16color to benefit from extended colour palette.
+ Added setab/setaf quotes from the XTerm terminfo.
+ Proposed a workaround for bright colours on any terminal.
* src/caca.c:
+ 16 colour support for ncurses and conio.
* src/graphics.c:
+ Ported to 16 colour support.
+ Added a missing <stdio.h> for BUFSIZ.
+ Disabled vsnprintf under DOS (only vsprintf exists).
* examples/:
+ Don't abort if the caca.txt sprite was not found.
+ Ported to 16 colour support.
+ Replaced ee_color_names[] with ee_get_color_name().
+ Don't oversleep in ee_refresh().
* libee/graphics.c:
+ Implemented ee_printf().
* test/demo.c:
+ If new keypresses are detected, don't wait for the next screen refresh.
+ Added an fps counter on demos.
+ Added controls for outlines and drawing boundaries.
+ Correct clipping in ee_putstr() for long strings.
* libee/ee.c:
+ New ee_get_rendertime() call to provide framerate information.
* libee/ee.h:
+ Added const keywords where it was meaningful, despite Slang's blatant
omission of such keywords in its prototypes.