colorwheel.gadget AROS version by Georg Steger AmigaOS® port by Stephan Rupprecht COPYRIGHT AND DISCLAIMER The AROS colorwheel.gadget applies to the standard copyright rules of the Amiga® Research OS. The authors are not responsible for any damage caused by the use or misuse of this documentation and/or the program(s) it describes. REQUIREMENTS Any Amiga® (compatible) computer with AmigaOS® 3.x and 68020+ (the faster, the better:) cpu. GENERAL DESCRIPTION "The color wheel gadget class provides the ability to create gadgets enabling the user to control the hue and saturation components of an HSB (Hue-Saturation-Brightness) color space." (description was taken from the Autodocs, © Amiga Int,Inc.). It's used in conjunction with the gradientslider.gadget by various programs such as Palette and IconEdit v44. DESCRIPTION OF THIS SPECIAL VERSION The colorwheel.gadget that comes along with this archive was originally written by Georg Steger for the Amiga® Research OS (AROS). It has been ported and optimized for the AmigaOS® by Stephan Rupprecht. In opposite to the original gadget, this one supports hi- and truecolor displays, giving you a nice looking color gradient on high screen depths (CyberGFX compatible API re- quired). KNOWN PROBLEMS - This gadget requires more cpu time to draw itself than the original one does. So sometimes it may look like that your computer got deadlocked. After some secs your computer should work again. If you have a 68060 cpu, you should install the appropiate version of the gadget. INSTALLATION Simply copy colorwheel.gadget to SYS:Classes/gadgets. A special version for 68060 owners is also included into the archive (don't forget to rename this version by removing the .060 suffix). SPECIAL THANKS GO TO Matthias Bethke, Dominique Harelle, Marc Savart, Mario Cattaneo, Martin McKenzie, Wolfgang Krause, Matta, Jörg Deutschle, Alexander Niven-Jenkins for bug-report, suggestions and testing HISTORY 44.0 first public release 44.1 a few optimiziations. the gadget size is limited to 440x440 pixels, now. added missing code that makes the gadget box around the wheel transparent (aka grey bg instead of bg image) . 44.2 now uses AllocRaster() to allocate memory for the mask, this will fix the drawing problem when p96 is used . 44.2b (dated 06-Aug-00) changed a single byte:) blitting to an interleaved bitmap didn't work correctly due to a wrong minterm. 44.3 seems that using AllocRaster() to allocate memory for the mask wasn't a good idea. At least here, it always corrupts the memorylist. Don't know why but using AllocVec() seems to fix the problem. A drawback of this is that the gadget will use chipram even when not necessary but I don't care as long as it works ;) Please report if you have any problems! 44.3b included special version for 060 cpus (faster!). Thanks to Martin McKenzie for testing. 44.4 never updated a program that often within a single week, but nobody is perfect;) the colortable passed to LoadRGB32() wasn't terminated by a NULL, this could have lead to wrong colors on <=8bit screens. there was a chance that WritePixelLine8/ WritePixelArray was invoked with a width parameter of 0, I hope it didn't cause any trouble . 44.5 improved and bugfixed dithering code. Thanks to Georg for his help. 44.6 various optimiziations, which helped to remove the size limit of the gadget. they also fix the inprecise working knob of the 68060 version. added EraseRect() where it was missing . AUTHOR Please send bug reports and ideas to: Stephan Rupprecht, Apfeldweg 1 D44359 Dortmund, Germany info@stephan-rupprecht.de http://stephan-rupprecht.de or Georg Steger, Hochlercher 30, I-39030 St. Johann/Ahrntal georg.steger@rolmail.net