Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
path: root/ChangeLog.old
diff options
Diffstat (limited to 'ChangeLog.old')
1 files changed, 1082 insertions, 0 deletions
diff --git a/ChangeLog.old b/ChangeLog.old
new file mode 100644
index 0000000..f310556
--- /dev/null
+++ b/ChangeLog.old
@@ -0,0 +1,1082 @@
+This file is generated with "more ChangeLog* > ChangeLog.old"
+on 16 January 2003 by Zoltan Kovacs. From now on the official
+ChangeLog file will be generated automagically from CVS.
+So, please do not edit this file.
+Version 3.1
+ o New homepage at http://www.gnu.org
+ Speedups:
+ o The internal loop now uses integer comparisons on x86 (about 10%
+ speedup)
+ o Better timming
+ o Cleverer and faster solid guessing algorithm
+ o Faster resolution reduction loops (more cache and SMP friendly)
+ o Faster copying loops (lower register pressure because of new table
+ layout)
+ o New string inlines for x86 that does aligning of memory acceses
+ o I've made some patches to gcc-2.95 to improve XaoS code
+ o Assembly loops for moving data
+ (overall XaoS is more than twice the speed of version 3.0)
+ New features
+ o New antialiasing filter
+ o New drivers:
+ Win32
+ dX-window
+ dX-fullscreen
+ BeOS
+ DirectWindow
+ DirectScreen
+ o Improved tutorials:
+ o New tutorial "math behind fractals"
+ o First chapter of tutorial "an introduction to fractals" has been
+ split into the introduction part and part about the Mandelbrot set
+ o Improved first chapter
+ o Added line graphics into many tutorials
+ o Spanish message catalog contributed by Cesar Perez
+ o Added (color) command to specify color of text
+ o Rendering sequences of images from animation files
+ o New wrapper around I/O routines alowing XaoS to read arbitary streams
+ like string etc.
+ o New library for handling menus added. I think it is big step towards
+ a nice user interface, since all keybindings and menus will be
+ independent at UI, so the ugly interface now will be just simple code
+ calling this library.
+ o Added simple dialog description structure...
+ o Added library with simple graphics primitives (line, rectangle,
+ text)
+ o Palette extended to allow few preallocated color cells for UI and
+ such.
+ o Timer library now handles current group changes nicely,
+ also supports time emulation used by emulating constant framerate
+ good for saving animations
+ o Palette creator now accepts zero for maximal palette size
+ o Lots of play functions made generic and integrated into user
+ interface (user now should specify palette seed or reset state
+ of XaoS into "factory defaults")
+ o Menus, dialog, command line options, hotkeys and animation replay
+ code now use same function registry. So there are lots of new command
+ line parameters, file format commands etc...
+ Some command line parameters also changed their name (like -load ->
+ -loadpos) so please modify your scripts...
+ o Added xshl (XaoS simple hypertext langage) library
+ o Motion blur now handles changes of filter configuration in better
+ way
+ o Added some other fractal examples into first chapter
+ o Behave better when btrace or interruptible calculation interrupted
+ o Documentation split into Hacker's and User's guide, so we don't need
+ to distribute hacker documentation in the source distributions and
+ users don't need to print this part.
+ o Timer library now supports Win32 high precision timer
+ o Support for backslash path convention under DOS and Windows
+ o Accept both \n lines and \n\r lines
+ o Internationalization (i18n) support added for menus
+ o New fractal types: newton^4, barsnley2 and magnet2
+ UI changes:
+ o Menus are now displayed nicely
+ o New nice dialogs. XaoS is now mostly user friendly :)
+ o Native UI wrappers for BeOS and Windows
+ o Undo and redo, cut and past available at many systems
+ o Main menu is now available at 'enter' key.
+ o Better arrow keys handling
+ o Formula changing now resets perturbation too
+ o New context sensitive help.
+ Now uses xshl (XaoS simple hypertext language), so you
+ might do hyperlinks, links to tutorials and basic formating of text
+ o Bailout may be set
+ o Logarithmic zoom ratio also displayed in ministatus
+ Driver API changes
+ o Drivers now sends special keys as KEY_UP etc...
+ o Parameter parsing library cleaned. It now don't prints driver's
+ name automatically in help text. Use HELP line. (see ui_template.c)
+ o Removed TRUECOLORMI, HICOLOR and REALCOLOR image types.
+ There is now just TRUECOLOR16, TRUECOLOR24 and TRUECOLOR.
+ to set where red, green and blue channels lie use new redmask,
+ greenmask and bluemask fields in driver's structure
+ o Similar changes in the S* configure defines
+ o Removed unused functions: driveropt (now should be done by menus)
+ clrscr (now XaoS does in the buffer)
+ o Added new flag RESIZE_COMMAND
+ (if ui should add an '=' resize function to menu - should be enabled
+ in the most fullscreen drivers, which don't do resizing dialog
+ using menus, but using getsize call - like SVGAlib etc.)
+ windowed drivers should disable this
+ o Removed help entry (add this text into xaos.hlp file with same
+ keyword as your driver's short name)
+ UI-helper changes:
+ o It is now based on a menuing system... controls are almost the same,
+ but internally implementation is different. Only visible changes I
+ know about are that double 'q' for quit doesn't work anymore, and 's'
+ menu is now like the file menu in many programs, so it contains quit and
+ other functions.
+ o window handling
+ o New message and error handling code
+ o Displays texts directly to output buffer instead of asking
+ ui interface
+ o Improved passfunc
+ o Support for constant framerate emulation
+ Fixes:
+ o Support for libpng 1.0.x and 1.1.x
+ o Fixed email addresses in ANNOUNCE
+ o Fixed nasty bug in timer library - it caused great memory
+ corruption..
+ o Fixed crash in palette filter
+ o Fixed some memory leaks
+ o Color cycling don't overwrite filter's palette anymore
+ o Fixed memory leak in blur.c
+ o Enabled forgotten optimizations for bpp==1
+ o Removed IMO unusable command (calculate)
+ o Fixed memory leak in error handling in play.c
+ o Check for inconzestient configuration in ui_helper.c
+ o play now accepts empty files
+ o cycling speed is saved correctly
+ o Filters are now saved in right order, filters that depends
+ at master are initialized first.
+ o No crash when user tries to set letterspersec to 0,
+ it's not allowed now
+ o Fractal type magnet has been modified
+ Cleanups:
+ o Removed lots of ui code and moved to menu.c
+ o Removed old and obsolete functions ui_message, ui_tbreak, ui_menu
+ ui_message2 renamed to ui_message
+ o Removed ui_tbreak calls from x11 driver
+ o Removed curses driver - it is obsoleted by aa driver now
+ o Structure timer moved to timerlib...
+ o Removed ui_getcontext, since it is old and ugly hack to give
+ better control to driver not recommended at all...
+ o Removed special driver menu code and integrated into XaoS menuing
+ system
+ o Removed some code duplication in uinew
+ o Removed old keyboard buffer code in uinew.c
+ o Assertions are now disabled in zoom.c
+ o ui and ui-helper split into separate directories
+ o uinew renamed back to ui. It is not so new anymore :)
+ o many rewrites in ui code.
+ o Engine now handles generic truecolor modes at depths 16,24 and 32
+ (not just few selected ones)
+ o The full code has been autoformatted with GNU indent utility
+ X11 driver:
+ o better support for bitmaps
+ o Added windowid option to support external GUIs
+ o Extended visualid detection heuristics
+ o Avoided crash when selected visual != default visual
+ o Now supports almost all truecolor modes...
+ o Take care for incompatible endianity of images
+ Svgalib driver:
+ o Use linewidth parameter instead of bytesperpixel*width
+ o Send correct key masks
+ o -grayscale for grayscale emulation
+ AA-lib driver
+ o Uses new menuing system
+Version 3.0
+ o Richard M. Stallman agreed with adding XaoS into GNU project
+ Fixes:
+ o XaoS is now sticky bit save when svgadriver enabled
+ o Fixed crash in resizing in stereogram mode
+ o Fixed crash in stereogram mode+different scanline/width
+ o Fixed crash with dealing NaN sizes
+ o Fixed small bug in mkrealloctable
+ o Fixed ctrl87.c to do not make compilation problems anymore
+ (was renamed to i386.c :) but also some register conflicts fixed.
+ o Fixed memory owerflowing in julia code
+ o Removed GIF code due to patent problems
+ o Timer library and ui code now handles better low resolution timers
+ Also measuring of time for status line changed. So gives bit
+ different results now :) (lower but more exact)
+ o Fixed few minnor bugs in solid guessing. Now it should be
+ more effective. But who knows...
+ o -incoloring now works
+ Major code reorganization.
+ o New palette functions supports
+ x truecolor, truecolor24, hicolor and maxcolor handling
+ x allocation/set palette scheme
+ o New nice image structure that suppotrs:
+ x truecolor, truecolor24, hicolor, maxcolor, and 256 colors
+ x nonstandard order of lines (like one in windoze etc..)
+ x double buffering
+ x palette functions
+ o New partially object oriented filter sistem
+ x allows elegant way to add effects like stereogram generation
+ x makes possible to reduce resolution after stereogram etc..
+ x combination of various calculation algorithms is now
+ possible in elegant way
+ x makes source code much cleaner and extensible
+ o New user interface helper library
+ x makes easy to add new user interfaces or use as
+ a part of some other program
+ x implemented in cleaner way than old ugly-interface
+ x hides XaoS's internals and provides easy to understand
+ set of functions for users of XaoS engine.
+ o XaoS now uses center/range possitioning instead of
+ left top/right bottom becase:
+ x it is better human readable (you can see zoom easily)
+ x it is more exact (small difference do not fall to zero
+ as soon as in normal system)
+ x it is easier to handle in rotation (you can do still
+ same operations - zooms, movements like in unrotated.
+ x better fits operation permited in(zooming view/moving)
+ x I expect will look better in save files
+ x simplified many operations performed on it.
+ o As the side effect:
+ x old ugly interface code is a bit obsolette. Requires
+ small changes into drivers
+ x no more large zoom_context. Context is now divided into
+ many parts. So many structures should be used by other
+ parts of XaoS separately.
+ x zoom.[ch] splitted into fractal routines and zooming
+ engine. This makes easier add ingnew zooming/calculation
+ methods (like on in fractos, boundary detection...)
+ x most of siggnificant data structures are copied into fixed
+ memory locations before start of calculation. I expect it
+ will speed up accesing its field because complex
+ traveling throught pointers will be avoided and reduces
+ number of parameters passed to calculation functions.
+ At the other hand it should bring many problems in
+ multithreading. In calculating one image at many procesors
+ should be OK. Since these structures are same. Calculating
+ of multiple images at time should be real problem. But why
+ not use multitasking? or some hack with redefinig this
+ structures back into pointers should be possible in this
+ cases.
+ x less multiplyings but more memory accesses in
+ calcline/column should speedup on pentiums with fast
+ cache.
+ x autopilot now should work at many contexts at time
+ x better implementation of fill
+ x many new bugs but few old fixed
+ x ugly interface code was greatly simplified since everything
+ interesting went into ui_helper
+ x resizing and such stuff is now much simplier
+ x palette rotation implemented in cleaner way. Now does
+ not require changes into drivers. Uses new setpalette
+ driver function. I can not imagine hardware, where
+ setpalette is imposible but rotation possible.
+ x timer library now passes userdata to handlers - required
+ for implementation of rotatepalette
+ x palette rotatin in truecolor modes is not possible anymore
+ (since xaos is not internally 8bit)
+ Cleanups:
+ o New macro system for formulas that allows easy manipulation
+ with calculation loops. But looks ugly. Is that cleanup?
+ o Julia code is now automatically generated for formulas..
+ o Directory structure,
+ XaoS divided into several libs (engine,ui,util,drivers)
+ o Simplier configuration headers
+ o timerlib:wait mechanizm has obsoletted by much better slowdown
+ mechanizm
+ Speedups:
+ o Boundary detection for new images
+ o I've browsed mkrealloctable and removed few unnecesary
+ ifs. Maybe it speeded up..
+ o MAGICAL VALUE OF 100 FPS IS GONE!!!! Now you can see 120 FPS
+ on pentium :)
+ New completly fixedpoint mkrealloctable performs very well!
+ (isn't that cool idea? just simple precalclate everything into
+ fixedpoint that depends on the zoom and do rest in
+ integers ? :))) I am so silly coder! now XaoS usually does
+ not fall under 7fps on my 486 so it works in acceprable
+ performance. maybe we should add logo "Ready for 486!(tm)"
+ :) (and whats about fixed point calculation loops? :)
+ Fixedpoint brought many advantages - precalculated pow
+ tables, no owerflowing/NaN/precisity problems, many
+ variables changed to constants(since distance between
+ lines is statically 512) and much more :)
+ Now we should start thinking about deepzoom feature
+ since most of XaoS is already resolution independent.
+ New mkrealloctable is approx twice as fast on pentium
+ (tests on 486 should be interesting)
+ o Dynamical resolution lowering now performs much better
+ (Should help especially on 486)
+ o Better dynamical resolution timeout choice - keeps
+ higher framerate during zooming but lowers after
+ zooming stops.
+ o At 386 uses uptimized versions of memset and memcpy
+ o A bit faster julia calculation loop
+ o Autopilot code is now simplier, faster, has better out of
+ range and lowqualitty detection and seems to have better
+ results
+ o Macro system in calculation loop caused instant speedup. Why?
+ o New new possition caluclation algorithm. Seems to be a bit faster
+ and produces better results
+ o Random dot generator now reduces resolution to 1/4,
+ because brain is unable to decode image inormations at
+ normal resolution. :)
+ o New uncompressed loops - one iteration for mandelbrot is
+ just about 14 instructions (was 23)
+ o Periodicity checking
+ Fabrice Premel <premelfa@etu.utc.fr>
+ o Another 1/8 speedup caused by forcing register allocation
+ (i386 only)
+ o Malloc/free is now called less often (once per frame)
+ New features:
+ o BeOs driver.
+ Jens Kilian <jjk@acm.org>
+ o Truecolor(24/32-little and big edian), Hicolor, Realcolor, Fixedcolor
+ and monochrome support
+ o Interlace filter that instantly makes your computer
+ twice as fast!
+ o Motion blur filter
+ o Dithering filter
+ o Julia preview for all formula types
+ o Image rotation
+ o New AA-lib driver that does high qualitty text mode rendering
+ see AA project homepage at http://www.ta.jcu.cz/aa
+ o Two edge detection filters
+ o Palette emulation filter
+ o Emboss filter
+ o SMP support using threads
+ o Two new palette generation algorithms
+ o Changed default window size to 480x360 because I hope that XaoS
+ is now fast enought to work in resonable speed at this resolution
+ o Animated tutorials:
+ Introduction to fractal
+ features overview
+ whats new
+ o New outcoloring modes:
+ o Potential
+ o Another colorfull decomposition
+ o Smooth (for truecolor/truecolor24/hicolor/realcolor displays)
+ o New incoloring modes
+ o decomposition-like
+ o real/imag
+ o Save images into PNG format. Problem is that now XaoS
+ requires zlib and pnglib that should bring problems to
+ users compiling XaoS at UNIX workstations. I personally
+ dislike writing of image saving code. Please if you have
+ some, or you want to write code, that don't require these
+ libraries, let me know.
+ o Saving of possition.
+ o Documentation is now in texinfo format. Describes some XaoS
+ internals
+ o Timer library:
+ x handler should remove its timer when activated
+ x New slowdown, stop and resume functions
+ x Runtime switching between allegro compatible mode and
+ uclock mode
+ o Configure script now does simple autodetection for long
+ double - enables it just at intel compatible platforms, since
+ it is sure, that it works well there. Let me know about other
+ platforms with fast working long double
+ o New file README.compilers, that discuss optimizing
+ switches/problems with various compilers/platforms.
+ UI Changes
+ o added -delay option as suggested by Johan Hagman
+ o added -maxframerate option that is similiar to -delay
+ o added -letterspersec option to changes subtitles speed
+ o added -threads command line option
+ o added menu for saving
+ o added .XaoSrc file
+ o new -play, -load, -letterspersec options
+ o major rewrite
+ o 'E' now handle filters (not just stereogram)
+ o 'O' now handler image rOtation
+ o 'B' for perbutation
+ o Help should be paged using up and down arrow
+ o 'S' now have menu for various saving options
+ also during animation recording 'S' menu contains some special
+ commands like clearing of sceeen or text ourput primitives
+ o 'V' now handles "various stuff menu" - menu with not so often used
+ thinks. So 'K' 'G' 'T' and 'D' are free again :)
+ o Palette rotation renamed to color cycling to reduce confusin
+ with image rotation. So it is activated by 'Y' now.
+ o Julia mode is not disabled after keypress.
+ o Configuration file
+ o Drivers now provides information about textwidth and function
+ to clear screen
+ o New timming code allowing better replay at different
+ resolution/computer
+ o dynamic time for dynamic resolution (nice feature :) now works
+ better on architectures with unexact timming(like dos with
+ old timming routines)
+ PLAN9 Changes
+ o Updated driver to work better with new user interface code,
+ some cleanups
+ o -nopalette switch is now handled better - XaoS enables dithering
+ so output is almost identical to user palette mode. Just it is a bit
+ slower and requires more memory.
+ o Removed mkfile, since it became obsolette because of source
+ code reorganization. I am still unable to write mkfiles since
+ some required files seems to be missing in "demo" installation
+ so back to mk script :(
+ o Suport for 1bpp displays
+ SVGA Changes
+ o Supports truecolor, missordered truecolor, truecolor24, hicolor
+ and realcolor modes
+ o Some hacks in order to make thread stuff working
+ X11 Changes
+ o support for fullscreen mode so XaoS can act as screensaver.
+ Johan Hagman <Johan.Hagman@mailbox.swipnet.se>
+ o works on alphas and other 64bit architectures in
+ hicolor/truecolor mode Alexander V. Lukyanov
+ <lav@video.yars.free.net>
+ (this change is now obsolette since hicolor/truecolor is in
+ the main engine now)
+ o removed some XFlush calls so XaoS is now MUCH faster, but should
+ make problems at old servers. Use -sync
+ o Fixed resize and keysym crash
+ o Supports truecolor, missordered truecolor, hicolor, realcolor and fixedcolor
+ o Uses private colormap as default since shared colormap looks
+ too ugly. (note that shared colormap scheme is still supported,
+ but features are bit limited)
+ o added -display switch
+ o Now have normal, wait and replay mouse
+ o Handles keyboard better.
+ o Reduced memory usage in X11 modes
+ o Support for black and white modes
+ DOS Changes
+ o supports new allegro(2.2)-better dialog, portability, higher
+ resolutions
+ o fixed timming - now it works in much higher framerate(not
+ limited to 18.2 and even to 3.64 in dynamic resolution)
+ o new -i_love_bill for windows friendly mode
+ o Now compiles with lfn enabled
+ o does not work under linux dosemulator anymore
+ (dosemulator guys fixed the problem, so it works again :)
+ o Updated for work-in-progress allegro(www.talula.demon.co.uk)
+ now supports truecolor, hicolor and realcolor, also driver is
+ much simplier since custom dialog code is not required anymore.
+ o Have new lovely wait cursor
+Version 2.2
+ Fixes:
+ o bug in palette changing code
+ o more detections for various curses versions
+ o small well hidden bug in reallocation algorithm discovered.
+ o removed passing in registers to avoid compiler bug
+ o now allows unzoom greater than MAX_INT again
+ o symetry handling works for deeper unzooms too.
+ o more test for owerflowing/underflowing of resolution.
+ so now produces garbage but does not crash(feature?)
+ o more exact zooming/unzooming
+ o better framerate handling
+ o fixes for pgcc - do not generate faults..
+ Cleanups:
+ o char * -> unsigned char *
+ o mkrealloctable
+ o some optimizations for pipelining
+ o cleaned code to compile with -pedantic -traditional -Wall
+ o ugly interface-better menu code, drawing fractal etc..
+ o all timing code changed to use timer library
+ o approximation algorithm
+ o functions called maximally once per frame are not inlined
+ anymore
+ o created few directories for documentation etc..
+ o Minor changes in color indexing
+ o palette changing code
+ o rewrote solid guessing
+ o some variables in drivers structure changed to flags
+ Speedups:
+ o symetry handling code in mkrealloc table optimized a bit.
+ now is faster,shorter and does better job. :)
+ o non x/y symetries disabled because they slowes down for now..
+ o approximation algorithm optimized-lots of memory accesses
+ avoided-great speedup..
+ now performs much better(16fps -> 18 on 486)
+ also small hidden bug discovered, pricing redesigned a bit
+ and loops simplified-divided into more loops
+ function is now longer.
+ Also taken special care to minimize number of PRICE calls
+ mkrealloc tables is not main problem anymore. Handles
+ correctly all situations I tryed and is quite fast.
+ o approximation algorithm is now fixed point
+ sprprisingly very small speedup..(but much smaller code)
+ o better newton and barnsley calculation routines
+ New features:
+ o added fast preview mode for julias (julia.c)
+ o configure coprocesor on 386/gnuc
+ o created timer library that allows nice timing.
+ asynchronous operations and lots of other funny stuff..
+ Bad thing is that XaoS does not work anymore w/o function for
+ getting time in milisec/usec. Gettimeofday, ftime and plan9
+ /dev/msec are supported. Others can be added to timmers.c and
+ timmers.h. Please send me modified version
+ o improved configure script
+ o Added additional statistics functions good for testing of
+ algorithm
+ o lots of tests for speed done..(see doc/speed)
+ o completly new calculatenewinterruptible. This function
+ acts like calculatenew but may be interrupted(using interrupt
+ varibale) and then makes image with lower resolution
+ This makes possible to reduce resolution on the fly if
+ required
+ o approximation algorithm now works well with new
+ calculatenewinterruptible
+ o improved palette changing
+ o Improved solid guessing for variable range instead of range 2
+ also another special loop w/o sg when sg impossible
+ o do_fractal now supports both-interruptible/uninterruptible
+ modes
+ o Added magnet fractal
+ o Added julia form of newton(bit tricky but looks well)
+ o Added julia form of octo
+ o Added support for random dot stereograms
+ o pass is now string-more readable informations
+ o mailing lists (xaos,xaos-announce,xaos-devel) see doc/README
+ Documentation changes:
+ o new tutorial
+ o new algorithm descriptions
+ o new PROBLEMS file
+ o new README.gcc file
+ o new xaosman.txt file
+ o updates for new versions
+ UI Changes:
+ o improved speed detection in ministatus
+ o added 'j' for julia modes
+ o added 'd' for default palette
+ o added 't' for fast calculation modes control
+ o added 'g' for solid guessing options
+ o added 'o' for rotating
+ o added '0' for magnet
+ o added 'e' for random dot stereogram
+ o changed to use timer library
+ o does not crash with deep unzooms
+ o added support for palette rotating
+ o extended timing stuff for suport sync timing group..
+ this group is called "quite" often..
+ o added support for new resolution lowering feature
+ o now operates with exact screen sizes-no more fractal
+ deformations..
+ o automatical detection of optimal framerate for new resolution
+ lowering algorithm
+ X11 changes:
+ o more sanity checking for mitshm initialization
+ o Added support for rotating palette for private colormap
+ and truecolor modes. 8bpp pseudocolor w/o privatecolormap
+ is impossible..
+ o Uses X' function for autodetection screen size in milimeters..
+ (is this reilable?)
+ SVGA changes:
+ o Waits for retrace before displaying..looks better
+ curses changes:
+ o Use capital letter for G and E to avid collisions with ugly
+ interface
+ o Compatible with ncurses w/o redrawwin
+ MS-DOG,X11 and SVGA driver:
+ o Added support for palette rotating
+Version 2.1
+ o >>>>FINALLY<<<< discovered and implemented PROVED TO BE
+ OPTIMAL dynamical aproximation algorithm in linear time!!!
+ It is still bit slow..but it is here!
+ It should slow down at the begining but certainly speeds up
+ during zoom
+ Also allows deeper zoom
+ o added out of memory checks to make xaos safer on non unix platforms
+ o autopilot is now timed by same way as all other parts are.
+ Now will act same on all computers(I hope)
+ o Memorry corruption bug fixed - it caused problems with ysizes not dividable
+ by 2 with some other strange situations.
+ o New README.interface
+ This helps others to extend XaoS or use its routines
+ in their software
+ o Added many sanity checking to make easy debugging of new ports
+ o small cleanups (unused variables etc..)
+ o minnor speedups
+ o added OS/2 port(graphics 320x200 and text) By Thomas A. K. Kjaer
+ o added macintosh support by Tapio K. Vocadlo (thanks)
+ o added support for different scanline size than width. for Mac and X11 port
+ >>WARNING<< changes to driver API:alloc_buffers now returns line size(usually
+ width)
+ o Thomas' email updated
+ o Bit less agresive to gcc optimizer..no more compiler crashes..
+ I hope
+ UI Changes:
+ o <- and -> stops calculation
+ o driver changing disabled when just one driver available
+ o status line
+ o minnor cleanups
+ Plan 9 changes:
+ o mkfile by Scott Schwartz
+ o correct timming. Thanks to Niger Roles and others on 9fans list
+ MS-DOS Changes:
+ o hiddes mouse at resizes - do not cause crashes anymore
+ X11 Changes:
+ o private colormap support
+ o Fixed freed memory accessing bug..
+ o added switches:
+ -private
+ -usedefault
+ -nomitshm
+ o improved autodetection of best available visual-if defaultvisual!=pseudocolor
+ try truecolor first..do not use truecolor visuals on pseudocolor displays(look
+ ugly)
+ also supports 8bpptruecolor, staticcolor and grayscale(untested)
+ o Fixed bug in changing number of entries that caused problems on SGI
+Version 2.0
+ o Configure script.
+ o Added biomorph outcoloring mode
+ o Compiles now with -O2 - no -O3 required..
+ but kept -O6 for invoking pgcc optimizations
+ o Many changes to make binary file smaller...consts, static, no
+ inlines and so on..
+ about 10KB from full XaoS saved..
+ o Long doubles automatically disabled on SunOs
+ o added new curses based interface. Have you ever seen realtime
+ 256 color fractal zoomer with text based output? :)
+ o Now just one compact binary for all available drivers
+ o Faster startup..(three times)
+ o Compiles w/o many warnings(except these in libraries and
+ implicit definitions) with -ansi -pedantic -traditional -Wall
+ o Autopilot not detects "oscillating" and too deep zoom so it can work
+ to infinity...can run as demo w/o any user input..
+ also auto detects major changes done by user and reinitializes variables...
+ so it restarts after changing of fractal type and so on..
+ o many many new bugs!
+ But remember! Its not bug! Its feature!
+ Ugly interface changes:
+ o Completely redesigned-hardware depended parts are now
+ coded as drivers with common interface-easier adding
+ of new architectures
+ but looks as ugly as in previous releases :)
+ o Added changing of display driver on the fly
+ o Displays calculation status
+ o Possibility of interrupting calculation
+ o Reduced size of output program
+ (for example SVGAlib version from 48 to 37)
+ o speed changing is now with displaying of status..
+ o all ports modified for new interface
+ o better status informations
+ o new keys:
+ '?'/'/' status information
+ 'r' recalculate
+ 'z' interrupt
+ 'v' driver change
+ ' ' Redraw screen(or display current calculation status)
+ o new hyperugly text browser that displays long and interesting
+ help text
+ o Command line options support. Now you may configure XaoS
+ quite well..(turn on autopilot, set iterations etc..)
+ o Changes to make drivers non reentrant
+ SVGAlib prot changes:
+ o Ui_svga is now event handled. It does not stay in wait
+ loop anymore.
+ o Keys are now buffered-no more problems with disabling
+ autopilot
+ o Added command line option:
+ -mode to select graphics mode
+ o Now handles text in xmodes w/o seg. faults
+ o Fixed possible crash after resizing
+ o for compatibility with old SVGAlib keeps old non event handled
+ keyboard interface....but not recommended at all!
+ PLAN9 port changes:
+ o During porting to new ui interface I found nasty bug in displaying.
+ Now plan9 port is IMWHO surprisingly fast. 8c produces quite good code.
+ still crashes in higher resolution and has color problems
+ o added keys [,] for changing iterations and ;,' for speed
+ o Better palette handling
+ MS-DOS port changes:
+ o Keys are now buffered-no more problems with disabling
+ autopilot
+ o Compiled using DJGPP 2.01. So many DJGPP's bugs fixed :)
+ X11 port changes:
+ o Fixed some bugs that caused troubles when memory is not zeroed..
+ o Added support for 16bpp, 24bpp and 32bpp truecolor visuals
+ o Fixed bug that caused possible crashes before freeing images
+ (resizing etc..)
+ o Removed unnecessary INLINEs in xlib.c/xlib.h ..
+ makes binary size bit smaller.
+ Algorithm revisions:
+ o Many areas inside set are not calculated
+ o realloc_t - most often used array is now 32byte aligned..
+ o Better newton calculating code-math now optimized by hand.
+ o Small fixes in symmetry handling code
+ also minor speedups
+ o Mandelbrot calculation rewrote into 386 assembly..
+ less than 5% speedup :((( (gcc guys:good work! :)
+ note that this is only for Intel platforms-xaos is still
+ compatible with non Intel computers :)
+ because of out coloring bugs disabled for now..
+ o Completely new reallocing algorithms. Now proved to be
+ optimal
+ but because of ugly looking results returned back to original one
+ current algoritmus is just about 20% slower than hypothetical
+ optimal one..still trying :)
+ o Assembler fast inlined memcpy...also just for 386+
+ o Changed solid guessing method so it is up to 20% more effective
+ in hope that no more mistakes introduced
+ startup speed on 486 was reduced from 6 seconds to 4
+ in fact it seems to make less errors than previous one :)
+ o Small changes in Barnsley code
+ o Minor fixes in symmetry code
+Version 1.2
+ New features:
+ o New recalculating with non rectangular pixels. (for full screen modes)
+ great for modes X :)
+ o New palette with white background
+ o Added coprocessor configuration into MS-DOS port - some coloring
+ modes are MUCH faster because of no more SIGFPE ignoring..
+ o Added support for 1280x1024 and 1600x1200 into MS-DOS port
+ o Default type changed back to double because long double is
+ non standard
+ o 9x15 font changed to more compatible and better looking fixed.
+ o First release of plan9 port (very interesting OS see
+ http://plan9.att.com..trial version if free)-not
+ complete yet..colors looks ugly and keys like
+ arrows does not work..
+ someone who can help me?
+ o Added key defines for old SVGAlib compatibility.
+ Fixes:
+ o Fixed bug that caused problems on dos configuration with
+ lot of free memory :)
+ o Fixed symmetry handling in binary decomposition+lambda planes
+ o fixed some bugs that caused core dumps on non Intel
+ architectures
+ o Floating point exception is now ignored-no more
+ problems with random overflowing...(but great slowdown
+ in cases that caused sigfpe)
+ o lots of cleanups for plan9 cc.
+ o Width of font is autodetected. fixed problems with
+ non-standard X servers
+ o Avoided pgcc bug that caused wrong calculating of octo fractal
+ o Fixed color inside set(not fixed 0)
+ o Fixed color handling in X11
+Version 1.1
+ o Removed unusable fixedpoint routines(386 users - go back to 1.0!)
+ o New planes (toggled by pressing "i")
+ - mu (normal complex plane)
+ - 1/mu (inversed)
+ - 1/(mu+0.25)
+ - lambda
+ - 1/lambda
+ - 1/(lambda-1)
+ - 1/(mu-1.40115)
+ o Symmetry code completely redesigned
+ o Added "m" into help
+ o Better approximation algorithm in "mkrealloctable";
+ now it is about twice faster with a small zooming step
+ o Approximation in approximation for yet better..also twice faster
+ o Lots of cleanups
+ o port for MS-DOG called chappi
+ o Default palette is now same at all architectures
+ o Some memory overflowing fixes(oops)
+ o Fixed some divisions by zero
+ o Number_t clean-allows deeper zoom for long doubles
+Version 1.0
+ o First Release
+o New text.c Support for text output primitives
+o New wstack.c - support for simple windows
+o New playtext.c for displaying messages
+o font moved from os2 drivers to ui.
+ takk: please fix this in your driver)
+o Image now allows to define few color cells for UI,
+ wich are allocated at the begining of palette
+o Updated all drivers to support new preallocating
+ (palette handling functions needs to know palette now)
+o Removed curses driver (aa driver will need some
+ hacking for new text output stuff in order to make it useable,
+ and I don 't want to make such dirty hacks twice.
+ Also curses driver had quite old rendering code and
+ some functions was broken)
+o New message and error handling code in ui library
+o Changes text displaying / saving code
+o Clear screen is now handled in ui_helper instead of uinew
+o Changed ministatus / status code to use new windowing and
+ text primitives
+o Dialog can now be generated by called function.
+ Useful for setting default values
+ o Fixed problems with X driver
+ o Antialiasing filter...
+ o Fixed clipping in wstack.c
+ o ! now activates command prompt
+ o Builddialog now draws...
+ o Antialiasing filter (slow, but should be nice for rendering
+ animations/saving images)
+ o Aded short name description into structure
+ o Quite lot of dialog and menu handling moved from ui code to
+ xmenu code
+ o Added support for calling dialoged functions with just one paramter
+ nicely
+ o Some menu code made universal and moved into ui_helper.c
+ o Save image and tutorial replay calls passfunc
+ o menu library extended to handle hash table of short names
+ o parsing of parameters is now controled by menu library
+ o Lots of play code made generic and moved into ui_helper.c (it is now
+ getting big grrr...)
+ o menuroot is now handled by ui_helper library
+ o Removed plenty of obsolette functions
+ o Dialog code now handles complex number input nicely
+ o Fixed numberous bugs
+ o Checked tutorials and fixed forgoten stuff
+ o Image library now backstores just windows, where it is necesary
+ (the detection is quite silly, but IMO works in most cases)
+ o New help system :))
+ o Added command line options for selecting window id and printing menu
+ specification (should be possibly usefull for tcl/tk or possibly other
+ separate GUIs)
+ o First version of Tcl/Tk interface by Charles Vidal
+ o Some additions into help file and fixes in xshl library
+ o New fileselector
+ o Better motion blur handling
+ o Lots of updates into tutorials, first chapter split into Mandlebrot and
+ Julia chapters
+ o new fileselector widget
+o Line drawing functions - not very fast,
+ but performs antialiasing etc.
+o Enabled forgotten optimizations for bpp == 1
+o Better I / B / P frame decision algorithm
+ (now seems to give quite good results)
+o Motion vector guessing ...
+o Fixed some bugs in antialiasing, vertical /
+ horizontal line drawing and such
+o Some new options for rendering
+o Document how to generate seqences for MPEG encoding
+o Fixed command flags - now works commands as loadpos
+ o slowmode wich disables some optimizations that causes quality loss (used
+ for rendering)
+ o Fixed some bugs in subwindow filter
+ o Set of hacks for AAlib driver
+ o Updated AAlib driver.
+ o New tutorial "math behing fractals"
+ o first chapter of tutorial "an introduction to fractals" has been split
+ into the introduction part and part about the Mandelbrot set
+ o Added some other fractal examples into first chapter
+ o Updated DOS driver
+ o Extended the new tutorial
+ o Some fixes...
+ o Fixed color cycling code
+ o Behave better when interrupted in boundary trace or interruptible
+ caluclation
+ o Bitmap output routines
+ o Fixed bug in parameter parsing...
+ o Some fixies for the 64bit architectures (we have new ultra-30 and SGI
+ octane at school - I wish to have one...hmmmm)
+ o Cleanded code a bit in order to avoid those tons of warings at SGI
+ compilers
+ o Changed image detection heruistics in X driver
+ o Engine now handles different truecolors than just few choosed ones...
+ now UI layer needs to support this
+ o New visual detection in the X driver
+ o Another try to implement -windowid option
+ o Fixed some bugs in new interrupt in uninterruptible calculation code
+ o Fixed crash in scheme parser
+ o Better truecolor handing
+ o Take care for the endianity of images
+ o Saving of text color
+ o GGI driver
+ o Cleanups into driver's API
+ o Improved handling of checkboxed dialoged functions...
+ o Fixed some bugs in menu printing and syntax a bit
+ (sorry Rodo...:)
+ now it prints radio/checkbox
+ in radio/checkbox it print on/off flag too
+ o Short names of incolorings and such..
+ o New print_menu and print_dialog commands
+ o Fixes for plan9...
+ o better waitcursor handling...
+ o Fixes
+ o Updates to the documentatio:
+ o Another change to the print_menus format - menu header is now printed in
+ the reversed order and keyword is in quotes. Just to keep same syntax as used
+ by other parts.
+ o Documentation split into Hacker's and user's guide. They are now separate
+ manuals, so we don't need to distribute hacker's documentation in the binarry
+ distributions and save some disc space. Also users don't need to print this.
+ o Automatical conversion script to convert xaos.hlp into chapters in texinfo
+ manual.
+ o Keys are now case-sensitive
+ o Menu rotation improvements
+ o Fixes in menu handling
+ o Another handling of 'z' key
+ o Some cleanups and type checking...
+ o First patches for Win32 support
+ o Small changes in plane handling
+ o Many extensions to documentation
+ o fixed 24 bit mode
+ o some minor bug fixes
+ o Win32 driver
+ o Changes to configure script and timer code for CygWin32
+ o Changes to xio library to support backslash path conventions
+ o fixed button pressing code
+ o Fix SMP thinkos
+ o XaoS now works on plan9 again..
+ o Fixed bug in docalc.c - julia code now works in truecolor modes
+ o Fixed Win32 resizing bug
+ o Workaround Win32 stat() bug (fix file selector problems)
+ o ui_win32 driver redesigned and split into win32 driver and directX driver
+ o DirectX DLLs are loaded at runtime, so they are not required for XaoS
+ o resizing works
+ o resolution selection dialog
+ o Fixed SVGAlib driver lockup
+ o handle "help file not found" correctly
+ o New xerror library for signaling fatal error (should be redirected
+ to messageboxes now)
+ o Updated GGI driver, added support for changing visuals...
+ o Add Win32 releated docs
+ o Fix in filesel dialog
+ o Fixed waitfunc timming
+ o uih/c cleanups in ui_helper.c. ui_helper is now re-entrant
+ o dialog for rendering functions to allow users of GUI centric systems do
+ rendering.
+ o Fix aspect ratios in win32 driver
+ o Get exact screen sizes in win32 driver
+ o Fix crash in subwindow filter
+ o Itersmall driver works in 24bpp too.
+ o Documentation for gui_driver section.
+ o MAX macro removed or renamed to not conflict
+ with MAX macro defined by some OSes (like BeOS or Windows)
+ o Removed some cut-and-paste-programming artefacts in antialiasing driver
+ o Fixed fixedcolor -> bitmap switch bug.
+ o Added separators to menus
+ o Fixed another fixedcolor switch bug
+ o BeOS changes:
+ o Added new version of Jens's driver
+ o Updated autoconf files to support BeOS
+ o Quit and changing of driver works now. So I can start thinking about
+ the DirectWindow driver.
+ o Added support for BeOS to configure script
+ o Fixed Jens's BeOS port to work on Intel
+ o better resizing
+ o Added status line to Be GUI
+ o Support 15bpp, 16bpp and all the other weird modes.
+ o Added "about" to file menu
+ o Fullscreen mode support
+ o DirectWindow mode support
+ o DirectScreen mode support
+ o BeOS driver:
+ changed image/xpf to image/x-xpf and xaf respectively
+ fixed random crashes
+ fixed memory leak in exit
+ avoid race condition in FileElement class
+ print fatal messages in nice dialogs
+ be verbose when dialog resources are not available
+ updated mouse tracking for R4
+ cut & paste support
+ translator support
+ o Fixed some SMP support stuff
+ o XIO layer extended to handle generic streams (write/read strings etc..)
+ o Allow save inside record
+ * Shut up c++ compiler warnings and errors
+ * Added undo/redo mechanizm
+ * Free _ALL_ memory before exit. This help to debug memory leaks. Also BeOS
+ shared libraries prabably don't free it automagically.
+ * Windows:
+ * cut&paste support
+ * fixed some dX releated stuff
+ * support for separators
+ * plastic border around the fractal
+ * BeOS:
+ * Fix some BeOS translator releated stuff
+ * Support for multiple file drops
+ * Fix colormap functions in fullscreen driver
+ * Use correct (BeOSish) way to exit
+ * Don't exit on fatal errors in translator
+ * Cleanup everything once translator is done
+ * Don't let user to enter incorect image sizes in translator
+ configuration
+ * Fixed replay algorithms
+ * Small speedups in interruptible calculation mode
+ * Cleanup code around catalog loading (Win95 port seems to crash there)
+ * Process events before entering main loop to let driver report the correct
+ size by resize event.
+ * Reordered uninterruptible calculation to allow better guessing
+ * Guess a lot more pixels
+ (zooming is now visibly faster, hope still accurate enought)
+ * Fixes in __fabsl code
+ * Small fixes and improvements in tutorials
+ * BeOS driver:
+ * Fixed RadioMode in menu handling
+ * First code for media addons, still broken
+ * Fixed nasty memory leak in menu handling.
+ * Windows driver:
+ * fixed combobox displaying
+ * about dialog
+ * cleanups in directX code
+ * hide fullscreen directX window before displaying messagebox
+ * tolower file extensions
+ * fixed redrawing bugs in filter system.
+ * some C++ releated cleanups
+ * new __math.h from glibc2.1 with better inlines
+ * improved sstring.h to handle missaligned memcpy corectly.
+ * improvements in gccbuild
+ * added smoothmorph command
+ * fixed filter bug
+ * fixed memory leak in timerlib
+ * improved some tutorials
+ o New assembly loop for moveoldpoints
+ o Moveoldpoints rewrite to match more closely current situation in XaoS
+ o The fill passes unified to one and made approx twice as fast
+ (cache misses are greatly reduced)
+ o DOS port updated
+ o DGA driver
+ o IL1 font needed for spanish catalogs (whats about unicode and proportional
+ fonts?)
+ o Spanish catalogs
+ o Lots of CONST keywords added around all sources.
+ o Some missing "static" keywords added.