### 2000 Nov 14 - WJH The logic for CCDAMP interpretation needed to be enhanced to accomodate all the combinations for both HRC and WFC. Bugs in the 27 Oct version were found and needed to be corrected. This should complete the revisions necessary for all CCDAMP configurations. In addition, the Post-Flash processing code was revised to properly apply the CCDAMP configurations. ### 2000 Oct 27 - WJH This version (Version 3.2) corrects a couple of serious bugs dealing with single-pointing dither associations and dual-amp usage. Revisions were made to 'calacs/acstable.c' to support EXP-DTH exposures without sub-products as would be done for single-pointing dither patterns. Also, lib/detnsegn.c was revised to support diagonal dual-amp usage where there was ambiguity in the logic regarding the application of gain values. The fix results in dual-amp usage being treated INTERNALLY as if it were a 4-amp readout with only AMPX being used. Finally, 'lib/donoise.c' was revised to automatically (and correctly) detect when the AMPX value (plus offset) extends into the overscan at the end of each line. In this case (as will be for single-amp usage), the value will be automatically (and internally) adjusted to the full width of the image. As a result, ALL AMPX and AMPY values in CCDTAB can be given in terms of trimmed image coordinates as exact positions. ### 2000 Sept 12 (implemented: 9 Oct 2000) The new version (Version 3.1) supports Post-Flash processing and fixes a bug with different CCDAMP configuration support. The post-flash processing mimics the dark image subtraction, but gets performed in ACSCCD as the last processing step. The following files were modified to support this new processing step: acsccd/doccd.c, acsccd/acsccd.c, acsccd/mainccd.c, calacs/calacs.c, lib/findover.c, lib/getflags.c, lib/sciflags.c, lib/acsinfo.c, lib/getacskeys.c, acsccd/getacsflag.c, lib/acshist.c, acsccd/doblev.c, lib/donoise.c, acs2d/dodark.c, lib/multk1d.c, acscorr.h, acsinfo.h. In addition, a new function was written to actually perform the Post-Flash subtraction: acsccd/doflash.c. ### 2000 June 23 (implemented: 30 Aug 2000) This version (Version 3.0) works with the new HSTIO library for accessing lines using [Get/Put]*Line functions to use zero-based indexes. The changes were confined to 'ACSREJ'. In addition, changes were made to 'acsdth' to properly incorporate all input trailer files into the _dth product trailer file. Also, changes were made to use new HSTIO functions to support 1-D data to include all extensions of input SPT files into the _dth products SPT files. ### 2000 April 18 Multiple revisions were implemented to allow subarrays and 1-amp readouts to process properly. Checks were put in place when applying gain to each line to avoid division by zero gain for 1-amp readout. Also, some fixes were done in the application of sub-regions of reference files to the subarray data. Finally, trailer file management was highly revised to eliminate the use of a TMP file. It now uses an in-memory buffer to hold the initial GC comments before overwriting the file with them so that the new CALACS comments can be appended. (Version 2.9g) ### 2000 April 3 This version resets the extension which CALACS uses for the trailer files from '.trl' to '.tra'. Generic Conversion uses the '.tra' extension by default for all their output, so this should allow CALACS to recognize and append to the trailer files already present from Generic Conversion. (Version 2.9f) ### 2000 March 21 This minor change eliminates the use of TMP trailer files. The only code commented out was in 'trlbuf.c'. This resolves OPR #40959. (Version 2.9e) ### 2000 March 21 CALACS was updated to reflect the bug fixes to 'acsrej_init.c' and 'findblev.c' that came up during IPT testing. (Version 2.9d) ### 2000 January 12 This version (2.9c) renames all functions that read or write keywords to *Key[Dbl,Flt,Int,Str,Bool]. The function names needed to be changed to avoid any name conflicts with similarly named HSTIO functions under VMS, since VMS is case-insensitive. ### 1999 December 8 This version (2.9b) cleans up 'acsrej_loop.c'. Specifically, I split out the shading correction buffer applied to whole lines as opposed to individual pixels and added explanatory comments to make the code easier to follow. ### 1999 November 11 This version (2.9) finally includes the creation of SPT files for output products and sub-products. It uses a general function, lib/mkspt.c, to create the new SPT file. This function was added to 'acsrej.c', 'acssum.c' and 'acsdth.c'. In addition, a fix was included to properly apply binned shading file to subarrays. WJH ### 1999 October 21 ACSREJ: Final revisions were made to 'acsrej_check.c', 'mainrej.c', 'cr_scaling.c', 'acsrej.c', and 'acsrej_loop.c' to address the last of the code review comments. Specifically, 'return(status)' replaced 'exit' outside of 'main' and 'WhichError()' is called upon exiting. In addition, 'getACSnsegn' was revised to use 'for()' loops over all the keywords. Finally, shading correction in 'acsrej_loop' was revised to use the same code for all cases of binning and offsets. ### 1999 October 18 ACSREJ: Errors in the buffer management were corrected in this version (2.8b). The buffers were getting filled with un-normalized data, but then scrolled after being normalized, resulting in a buffer with both normalized and un-normalized data. This caused the CR-detection algorithm and SPILL-detection routine to fail. In addition, indexing in SPILL-detection section was incorrect for 'jj', and DQ values were being remembered only for the last image. These errors were corrected and the use of 'dqpat' was made more robust in the CR-detection section. ### 1999 September 10 This version reflects all the changes performed to address the issues and bugs revealed during code reviews of 'ACS2D' and 'ACSREJ'. See 'acsrej/history' for a list of revision descriptions for that task. ### 1999 January 14 Revisions were made to the trailer file handling functions to clean up some bugs found in code review. In addition, saving temp files was linked to the keyword EXPSCORR as originally planned. In addition, command line syntax errors are not recorded in trailer files, while other bugs were corrected based on code reviews of ACSCCD and the first half of ACS2D. Also, ACSCCD was modified to only output an overscan-trimmed image in the case of successful BLEVCORR, while ACS2D now checks to see that the overscan regions have been trimmed by examining the LTV keywords in the input files. This release was ACS_CAL_VER 2.0 and represents the first delivery to STLOCAL and OPUS. ### 1998 November 24 Trailer file management was added to CALACS. This required the replacement of all 'asnmessage/asnwarn/asnerror' calls with calls to 'trlmessage/trlwarn/trlerror' found in 'lib/trlbuf.c'. lib/trlbuf.c Contains all the functions required for trailer file management. The trailer file buffer is global to that file. lib/mkpkg Added trlbuf.c ### 1998 November 11 This is the first essentially complete version of the CALACS package. All basic functionality has been incorporated, including the following recent additions: acsversion.h, "0.7a (11-Nov-1998)" All routines which created output statements were converted to the use of asnwarn,asnmessage, or asnerror, as appropriate. These routines were then added to 'acs.h' for global use, along with the definition of MsgText, which is used as a 1 line buffer for creating custom output strings with 'sprintf'. Multi-amp usage has been incorporated into all functions which applied read-noise and gain to the image data; primarily, acsrej/acsrej_init.c acsrej/acsrej_loop.c lib/detnsegn.c - functions for determining what noise and gain values are appropriate for a pixel lib/donoise.c Also, determination of bias levels were revised to take into account what amps were being used, and what bias sections were specified in the overscan table (acsccd/doblev.c). In addition, the function 'acsdth' was created in the CALACS task to create an empty DTH product when one was specified in the association table. (calacs/acsdth.c).