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. ---------------------------------------------------------------------------- :::::::::::::: ChangeLog :::::::::::::: 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: GGI DGA 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 MOST SIGNIFICANT CHANGE: 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 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 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 o works on alphas and other 64bit architectures in hicolor/truecolor mode Alexander V. Lukyanov (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 ------------------------------------------------------------------------------- :::::::::::::: ChangeLog.c :::::::::::::: 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 :::::::::::::: ChangeLog.e :::::::::::::: 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 :::::::::::::: ChangeLog.f :::::::::::::: 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 :::::::::::::: ChangeLog.g :::::::::::::: 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 :::::::::::::: ChangeLog.h :::::::::::::: 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 :::::::::::::: ChangeLog.i :::::::::::::: 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 :::::::::::::: ChangeLog.j :::::::::::::: 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... :::::::::::::: ChangeLog.k :::::::::::::: 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 :::::::::::::: ChangeLog.l :::::::::::::: 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... :::::::::::::: ChangeLog.m :::::::::::::: 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 :::::::::::::: ChangeLog.n :::::::::::::: o Some cleanups and type checking... o First patches for Win32 support o Small changes in plane handling o Many extensions to documentation :::::::::::::: ChangeLog.q :::::::::::::: 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 :::::::::::::: ChangeLog.r :::::::::::::: 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. :::::::::::::: ChangeLog.t :::::::::::::: 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 :::::::::::::: ChangeLog.u :::::::::::::: 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 :::::::::::::: ChangeLog.v :::::::::::::: * 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 :::::::::::::: ChangeLog.w :::::::::::::: * 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 :::::::::::::: ChangeLog.x :::::::::::::: * 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 :::::::::::::: ChangeLog.y :::::::::::::: 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.