-------------------- AmigaOS 3.5/3.9 project ------------------------- DefIcons 45.0 (27.10.2000) - just a version bump, no functional change. DefIcons 45.1 (15.02.2001) - implemented arexx function "Identify NAME/A", the arexxport name is DEFICONS. Requires arexx.class v44. DefIcons 45.2 (26.02.2001) - added NOREXX/S option for those who don't want the arexx interface (saves ~10kb of ram:) - added a small cache that can hold upto 3 icons in memory. This gives a speed increase of about 20% for drawers that contain a lot of files of the same type. For "mixed" drawers there will be probably no speed increase or even the speed will drop. Please test! DefIcons 45.3 (17.04.2001) - removed NOREXX option and the implementation of the arexx host through arexx.class. The program uses the SimpleRexx.c functions, now. The reason for doing this was that I got some strange enforcer hits from the interface although I can remember that the arexx stuff worked hit free the last time I've tested it. - just for fun, the program can be terminated by sending "Quit" to the host, now. ------------------------ AmigaOS 4 project --------------------------- DefIcons 50.9 (06.09.2003) - first PPC release (should be 50.1 not 50.9, I forgot to reset the revision). DefIcons 50.10 (15.02.2004) - The "Identify" ARexx function was receiving names with extra leading spaces; now fixed. - The "Identify" ARexx function does now a slightly more accurate identification for disks: an actual device name is returned, if one can be found. - The "Identify" ARexx function was using the wrong buffer size to analyze files, which could fail to identify files shorter than 480 bytes; now fixed. DefIcons 50.11 (16.03.2004) - moved deficons.prefs to "sys/" drawer. The program will still try to load it from env:, if it can't be found there. - fixed obscure error message when no prefs file could be loaded. DefIcons 50.12 (11.03.2005) - fixed an uninitialized variable. DefIcons 51.1 (19.10.2005) - Now builds with gcc 4.0.0 with -Wall -Werror. - Removed empty sections. DefIcons 51.2 (19.10.2005) - No longer allocates MEMF_PUBLIC memory. DefIcons 51.3 (27.2.2006) - When no ENV:Sys/deficons.prefs file can be found, DefIcons no longer waits for Ctrl-C only while its ARexx port is public which prevented the user from opening the WB icon information window. Now it prints an error message as before but continues its normal work with a hardcoded builtin nearly empty prefs file. DefIcons 51.4 (27.2.2006) - After loading an empty ENV:Sys/deficons.prefs the program continues its normal work with a hardcoded builtin nearly empty prefs file to avoid preventing the user from opening the WB icon information window. DefIcons 52.1 (11.12.2006) - Bumped to V52. DefIcons 52.2 (5.1.2008) - Added support for the new ICONGETA_IdentifyBuffer and ICONGETA_IdentifyOnly tags of icon.library. DefIcons 53.1 (22.11.2008) - Bumped to 53. - Converted to newlib from clib2. - Fixed up makefile.aos4. - Added mkrelease script. - Replaced memory pool with ASOT_MEMPOOL. - Replaced strcpy()/strncpy() with safer strlcpy(). - Replaced strcat() with safer strlcat(). - Replaced custom SPrintf() with safer SNPrintf(). - Removed some dead code. DefIcons 53.2 (2.12.2009) - Recompiled with latest catalog description. DefIcons 53.3 (10.9.2011) - Split off DefIcons preferences and removed all associated files. - Cleaned up makefile and mkrelease script. - No functional changes. DefIcons 53.4 (10.9.2011) - Recompiled with GCC 4.2.4. - No functional changes. DefIcons 53.5 (30.11.2013) - Added DefIcons.doc file. Additional improvements are welcome. (bug #8581) DefIcons 53.6 (2.12.2013) - Fixed AutoInstall script. (bug #8588) - Added DefIcons.doc to AutoInstall script. - Some code cleanup. DefIcons 53.7 (27.11.2015) - Re-Fixed AutoInstall script. (bug #8588) - Replaced custom StrLen() function with strlen(). - Fixed array subscript is above array bounds errors in load_prefs(). - Fixed end of data checks in init_tree() and read_description(). - The IdentifyFunc() function now uses the interface fields in the IconIdentifyMsg (this will likely cause crashes with RAWBInfo versions older than 53.21 because they don't init these correctly). DefIcons 54.1 (27.11.2015) - The IdentifyFunc() function now uses iim_ExData instead of iim_FIB which means that it will only work with icon.library V54.3 and newer. - No longer accesses AbsExecBase to get the value for SysBase. - Replaced some obsolete function calls with more current ones. DefIcons 54.2 (28.11.2015) - Now compiles without -Wno-deprecated-declarations. - Replaced custom GetDevName() function with DevNameFromLock(). DefIcons 54.3 (2.12.2015) - Now compares the whole file size with act_filesize and not just the 32 least significant bits. - The CacheEntry name field is now moved to the end of the structure and is no longer fixed to 108 bytes. DefIcons 54.4 (27.2.2018) - Updated the DefIcons.doc file as suggested in bz #9718. - Rebuilt with GCC 5.4, no code changes ------------------------- AmigaOS 3.2 project ------------------------ deficons 47.1 (01.10.2019): - Backported to OS 3.2 deficons 47.2 (24.11.2019): - Replaces compiler functions with utility.library functions to avoid linker problems. deficons 47.3 (29.12.2019): - Factored database functions out that are not required for the main part of DefIcons. - DefIcons uses now rules along with accompanying icons in DEVS:DefIcons. Simply drag in rules with icons there. - Streamlined the rule parser somewhat. This looked too complicated. It is just a tree parser. - Worked on the icon reader. Now also accepts absolute file names to work from. deficons 47.4 (3.1.2020): - Added a parser for ASCII/Text description for match rules. There is no need to for an assembler anymore. deficons 47.5 (5.4.2020): - Reverted the code back to effectively version 47.2 That is: revert the template based approach. We are lacking resources to finish it and the typewizard. The mix of brainfile and templates is sort of broken by design The mix of templates is also sort of broken by design. Say Developer A made an icon for a group of archivers And Developer B mad an icon for lha User downloaded both independent works but because of priorites the Developer B icon will never be shown. Developer A and B never know about each other. A similar example can happen with definitions in brain files vs templates, although here the templates will almost always shadow the ones in the brainfile, but still it may not be a good combination In any case the current implementation has a bug where importing the brainfile destroys the integrety of the tree. And we don't have the manpower to fix it, so we revert, but don't rule out it returning in the future in a more sleek and polished form. deficons 47.6 (2.5.2020): - Change file location to ENV:DefIcons.prefs - Fix bug that made it impossible to match binary strings with \x00 in them deficons 47.7 (3.7.2020): - Our ARexx port's name is once again "DEFICONS", rather than "DEFICONS.1". That port name change had broken existing scripts and applications (such as RAWBInfo) which access DefIcons functionality through ARexx. deficons 47.8 (16.7.2020): - Added support for the new ICONGETA_IdentifyBuffer / ICONGETA_IdentifyOnly tags of icon.library.