home *** CD-ROM | disk | FTP | other *** search
- Ver 0 Rev 01 (09.01.98)
- first alpha version showing just the API for testing... (3 months)
-
- Ver 0 Rev 02 (03.04.98)
- - IMPORTANT: CreateIDC tags added: IDC_APPNAME, IDC_APPNAMEVERSION, IDC_APPICSVERSION
- - IMPORTANT:Do not prompt errors reported by ICSErr() with ID <= ICS_ERRMSGLIMIT
- - ICSStatusWin() added
- - CreateIDCTransform() does support most ICSStatusWin() tags
- - ICSStatusWin and SetupIDCColorMatching accept NULL as default public
- screen pointer.
- - TLC function added
- - gamma function added
- - RGB->CIE Lab conversion function added. Note you must have a valid
- scanner profile in ENV: or this function will most likely prompt an error.
- Use the provided ENV:ScanData file.
- - ICS_ScanTLCGray, ICS_ScanTLCRed, ICS_ScanTLCGreen, ICS_ScanTLCBlue tags
- added to CreateIDCTransform().
-
- Ver 0 Rev 03 (18.04.98)
- - Tag values have changed requiring you to recompile your app!
- - SetupIDCColorMatching now returns uint32_t instead of BOOL as indicator
- of what the user changed in the prefs window. You may now keep your
- transfer function during SetupIDCColorMatching and only free the
- transfer function handle if the user did alter the settings.
- - It's your responsibility to not use the
- returned LUT tables by CreateIDCTransform() if ICS is switched
- off by you later on. Use SetIDCMode()
- to check if the ICS mode is off.
- So only use the tables if ICS is enabled during
- the TranslateColors() call.
- - All IDC_APP* Tags for CreateIDC() have been renamed to ICS_APP*.
- - ICS_TextAttr and ICS_Screen tag added to CreateIDCTransform(),
- SetupIDCColorMatching(), ICSStatusWin().
- - ICS_StatusActivate tag added.
- - SetupIDCColorMatching() is now 99.9999% functional...
- - Profiles are now located in the ICS_PROFILE: drawer...
-
- Ver 0 Rev 04 (21.04.98)
- - bug in library V0.03: Fixed crash/enforcer hits when calling
- SetupIDCColorMatching() twice (bad locale menu routine).
- (Andreas)
- - bug in ics.doc V0.03:: CreateIDC() tags have been renamed to ICS_APP*.
- (Me+Andreas)
- - bug in debug library V0.03: sorry, shipped V0.02 of the debug version with V0.03
- (Andreas)
- - bug in SetupIDCColorMatching(): settings were saved to ENV:/ENVARC:
- but not copied to internal ICD struct for use by program.
- (Me)
- - ICS_OFF now works and no TLC table will be provided.
- (Me+Andreas)
-
- Ver 0 Rev 05 (01.05.98)
- - Important changes to TranslateColors(!). Requires changes in source
- (see below on what has to be changed in your source).
-
- - COLOR_UGRAY and not COLOR_GRAY is supported (my fault).
- Wrong ics.doc... just change COLOR_GRAY to COLOR_UGRAY in your source.
- Example source code was correct (I never checked grayscale calls so it was undetected).
- - Each element of the array pointed to by paInoutColors and
- paOutputColors is of the size specified by the ctInpout and
- ctOutput type. So when converting an COLOR_URGB array of 6 elements,
- the size of the array is assumed sizeof(struct URGBCOLOR)*6 and
- NOT sizeof(struct COLOR)*6.
- So, if you used nColors>1 in your source to translate multiple colors
- with a single call, you will need to change your source.
- - paInoutColors and paOutputColors may point to the same color(s).
- So you only need a single buffer if wanted.
-
- Ver 0 Rev 06 Internal Version - not released
-
- Ver 0 Rev 07 (07.02.99)
-
- - BUG: Developer example code load.c called ICSStatusWin without TAG_DONE!!!!!!!!!!
- DEVELOPERS: Please check you do have TAG_DONE in your ICSStatusWin calls! (10 hours)
-
- - BUG: Fixed a bug causing the setup gadgets to stay disabled after an error requester (2 hours)
- - BUG: Fixed a bug in the ICSConvert program (blue channel was overwritting green channel). (10 hours)
- - BUG: ics.library: Enforcer hit fixed caused by checking if user
- aborted statuswindow with no status window open. (10 hours)
- - BUG: Fixed a bug in the graybalance function (only affected
- the linearization table delivered by ICS if asked by the
- application). (10 hours)
- - BUG: Fixed a bug causing small illegal memory access reading/writting user specified
- color data during TranslateColors() call. (14 hours)
- - Added: scanner data is now converted to PCS (XYZ or Lab) based on the IT target calibration
- (missing ICS_Profiles: assign) appeared during selection of a display. (150 hours)
- - BUG: Fixed a bug in the Rev 06 regression routine (4/11/14/20 terms). (20 hours)
- - Added: Improved internal structure so ICC profile support can be added easily later on... (40 hours)
- - Added: Creation of gamma LUT for display is now checked for special gamma cases (1.0,...)
- in order to increase speed during initialization until
- the routine can be optimized for more speed. (8 hours)
- - Added: CIE TC1-34 CIECAM 97s JCh/Jab color space/appearance routines added. (80 hours)
- - Added: RGB<->XYZ and XYZ<->Lab device depending conversion routines added. (10 hours)
- - Added: absolut colors are now converted to relativ colors
- until real gamut mapping is finished. (200 hours)
- - Added: Cache with hash function added so that it only requires
- minutes instead of hours to convert a small(!) image. 3D LUTs are required
- in the final version for acceptable speed on any system. (10 hours)
- - Added: support for Kodak/Fuji IT 8.7 Targets (5 hours)
- - Added: new GUI/locale/startup code to ICSConvert and ScanTarget (100 hours)
- - Added: I have starting to write the user docs. Currently text based.
- (images/formating/style will be added later...). (4 hours)
- - Added: Improved DPI support for PNG/IFF DEEP. (4 hours)
- - Added: Multiple transformation handles can now be created
- from a single IDC. Note: SetIDCMode() does currently
- not return an error anymore if you try to enable ICS with
- transformations linked to the IDC handle
- wich were created with ICS disabled. (8 hours)
- - Added: 3D/1D LUT routines are now used for faster color correction.
- The LUTs are only generated once for a settting and than
- stored on HD in the ICS_Profiles:ICS_CACHE drawer. (50 hours).
- - Testing: Basic functions and early performance testing (100 hours)
-
- Ver 0 Rev 08 (04.03.99)
-
- - BUG: An old LUT cache was used if scanner profile was overwritten.
- ICS did not detect the change of scanner profile and thus
- used the old LUT with the wrong color correction until user
- changed prefs causing the LUT to be recreated. (2 hours)
- - Added: Fine controls for monitor are now working.
- I would like to use CIECAM 97s Lightness/hue/chroma sliders
- but adding the user interface costs too much work currently
- on the Amiga for 5-10 users. Will add this feature in case
- there are more Amiga users. Not really important function
- as all color sliders should be set to 0 with correct ICS
- setup/environment. (2 hours)
- - Added: Support for CorelDraw 5 target added (shipped with
- some HP scanners) (3 hours)
- - Testing: Further tests of calculated RGB->Lab function based on reports from KWLee (Primax).
-
- Ver 1 Rev 00 (11.03.99)
-
- - Added: Improved Installer script (now with ICS "Remove" option). (4 hours)
- - Added: New icons and software now generates icons. (12 hours)
- - Added: Improved error messages if no ref/target file was specified by user in ScanTarget. (1 hour)
- - Added: ShowManual program added with ICS user documentation (20 hours).
- - Added: Add Epson Color Ref Chart V1.0 calibration target support after measuring
- Martin Sprengers Epson Target shipped with GT 8500 (and shipped with GT 5xxx/6xxx?) (10 hours)
-
- Ver 1 Rev 01 (17.04.99)
-
- - Minor bug: SAVE flag might got set in ScanTarget filerequester. Fixed (1 hour)
- - BUG: Kodak Dmin/Dmax values in references files were not read correctly
- by ScanTarget causing color faults in the final correction. Fixed.
- Thanks goes to KWLee (Primax) for finding this bug in the scanner profile. (8 hours)
- - Added: ICS now checks for scanner profile to be version >=2 (just to make
- sure everybody only uses profiles generated by the fixed ScanTarget V1.01). (2 hours)
- - Minor bug: NUMBER_OF_FIELDS was set to 9 instead of 4 in example IT 8,7 reference file. (1 min)
- - BUG: A bug in the used AsyncIO library causes the GIF reading routines to crash.
- Switched to normal file IO until asyncio library got fixed by author.
- The bug mainly showed up with interlaced GIF images causing
- multiple SeekAsync calls (wich cause the crash in ASyncIO). (10 hours)
- - Added: GIF module now does much less Seek() calls causing a speedup. (3 hours)
- - Added: manual updated. (2 hours)
- - Added: Generation of the Scanner RGB->CIE Lab approximation now offers higher precission.
- The mean CIE Lab dE color fault is now below usualy below dE 1(!) and
- thus out of visible range. Maximum fault and standard deviation also
- got greatly reduced. ICS should now get close to other high end Mac/PC solutions
- as far as scanner characterization goes. (13 hours)
- - Added: The new Scanner RGB->CIE Lab function also offers more speed beside
- increased quality. There is even a speedup in the final generation
- of the RGB LUT during initialization of ICS. (6 hours)
- - Minor bug: Selecting a wrong file as reference file in ScanTarget could
- cause a large amount of requesters being displayed. Now
- a single warning with a final abort requester will appear. (1 hour).
- - Change: Now expires on 31-Aug-99
-
- Ver 1 Rev 02 (13.05.99)
-
- - BUG: The fix done for Kodak targets in ScanTarget V1.01 caused a crash when
- saving profiles for Epson targets (endless recursive loop until crash...).
- (3 hours)
- - Minor Bug: Fixed ICSConvert/ICSScan problems with IFF images that are roughly
- >30% larger than uncompressed causing the IFF loader to prompt
- an error 48 because of buffer underrun.
- (So far, the only program I know that seems to save such ugly files: Candy Factory Pro).
- (8 hours)
- - Minor Bug: flag field in bitmap header saved by ICSConvert may contain a non-zero value.
- Shouldn't cause troubles in this case. Anyway, now set to 0.
- (30 minutes)
- - Minor Bug: Error requester in ScanTarget showed wrong color names and order
- (ie. "GS22 darker than GS21" instead of "GS21 darker than GS22").
- (30 minutes)
- - Added: RGB->Lab function during creation of LUT now uses more fixed integer math
- wich should speed up creation of LUT especialy on non-FPU systems.
- (5 hours)
- - Change: Now expires on 31-Sep-99
-
- Ver 1 Rev 03 (23.05.99)
-
- - BUG: Non-FPU versions of ICS generated "white images" because of
- possible division by zero fault in XYZ->JCh/Jab color space conversion. Fixed.
- (5 hours)
-
- (End)
-