DiscKnight History
==================

DiscKnight Executable
---------------------

1.00  08-Oct-2000  Information: Serial numbers added, first release build.

1.01  19-Oct-2000  Enhancement: E+ format directories can now be shrunk when
                                entries are removed

1.02  29-Oct-2000  Bug Fix    : Disc should not reported as good if map
                                corrupted even if good zones retried from both

1.03  01-Nov-2000  Enhancement: Excess file fragments reported and counted

1.04  03-Nov-2000  Enhancement: Ensuring map contains correct size entries for
                                boot block and map system objects

1.05  04-Nov-2000  Enhancement: Excess file fragments converted to orphan files
                                on fixing
                   Bug Fix    : Prevented Lost+Found being added again to root
                                dir if already exists on running

1.06  09-Nov-2000  Enhancement: Program return code set to 1 if disc is not OK
                   Enhancement: 128 byte LFAU allowed, but discs <1MB disallowed
                                (added for RAMFS use)
                   Bug Fix    : Home zone for ID calculation off by one, caused
                                problem if need to recover multi-fragment with
                                ID at the start of a zone
                   Bug Fix    : End of disc map object not counted as a disc
                                object in statistics calculations

1.07  11-Nov-2000  Enhancement: DiscOp error handling added (Currently limited
                                to Drive empty & unknown)

1.08  17-Nov-2000  Bug Fix    : Headless fragments in zone 0 were not reassigned
                   Bug Fix    : Existing Lost+Found could not grow even if
                                non shared

1.09  18-Nov-2000  Enhancement: Kill ID feature added.
                                (Destructive so undocumented).

1.10  19-Nov-2000  Information: Second release

1.11  19-Nov-2000  Bug Fix    : Defect list size increased from to 0x1B0

1.12  21-Nov-2000  Enhancement: Fix flag allowed with restore to bypass shape check

1.13  24-Dec-2000  Enhancement: Defect list repair improved and error bypassed

1.14  19-Jan-2001  Enhancement: Objects removed if conflicts over shared sectors
                   Enhancement: Big Directory name space expanded if necessary
                   Enhancement: Kill object feature documented
                   Bug Fix    : Directory pathnames up to 1024 bytes handled
                   Bug Fix    : Directory name / entry name in parent mismatch
                                handling improved

1.15  25-Jan-2001  Information: Source fork for version 1.20

1.16  14-Feb-2001  Information: Intermdiate version incorporating some fixes from
                                version 1.20

1.17  14-Feb-2001  Information: Intermdiate version incorporating some fixes from
                                version 1.20

1.18  16-Feb-2001  Bug Fix    : Boot block checksum routine corrected

1.19  17-Feb-2001  Bug Fix    : Boot block checksum routine corrected again
                                Boot record minimum size check disabled
                                MessageTrans errors in Disc operations ignored

1.20  25-Feb-2001  Enhancement: Object info structures redisgned to allow checks
                                of shared non directory objects
                   Enhancement: Filecore version sumized if invalid
                   Enhancement: Excess file fragments removed from shared objects
                   Enhancement: Additional sanity checks on big directory structure
                   Enhancement: MessageTrans errors ignored from disc operations
                   Enhancement: Disc dismounted when running a repair operation
                   Enhancement: Directory name checking and correction improved
                   Enhancement: Directory size matched with parents entry info
                   Enhancement: Repair required status message changed
                   Enhancement: -c option, convert free space to files added
                   Bug Fix    : MakeID using first element of free list losing head
                                of list list fixed
                   Bug Fix    : Shared chunk reporting fixed for share_size>1
                   Bug Fix    : Recovered shared file start was one sharing unit
                                too high
                   Bug Fix    : Root directory updated if size of any existing
                                Lost+Found directory is changed

1.21  05-Mar-2001  Enhancement: Default disc op action to ignore unknown errors
                   Bug Fix    : Spurious system objects removed from the map
                   Enhancement: -b backup option added (hidden until UI updated)

1.22  15-Apr-2001  Enhancement: Bad filecore version in boot record corrected with
                                version from map
                   Enhancement: Disc name and filenames checked for illegal
                                characters
                   Enhancement: Object size distribution table added to -t display
                   Enhancement: CheckSystemID always fixes ID to allow correct
                                interpretation of map
                   Enhancement: Length shown for objects not in the map
                   Bug Fix    : Necessary fragmentation statistics fixed
                   Bug Fix    : Write flag not set if not fixing
                   Bug Fix    : stricoll case insensitive comparisons used

1.23  16-Apr-2001  Bug Fix    : Fixed CheckNameHeap not called if score exactly maximum

1.24  24-Apr-2001  Enhancement: Directory entry sorting checking added
                   Enhancement: Directory name validity checking and repair improved
                   Enhancement: Filename comparisons changed to use fully compatible
                                FileCore character sorting order
                   Enhancement: Filename illegal characters updated
                   Enhancement: Shared object tracker memory usage reduced by 8x
                   Bug Fix    : Potential divide by zero elminated in DisplayRecord
                   Bug Fix    : Fixed probelm with map not written on Create Free Files
                   Bug Fix    : Name heap over size check fixed

1.25  25-Apr-2001  Bug Fix    : Directory sorting fixed for E format directories
                   Enhancement: RecoverShared sets dir checksum to avoid differences
                                reported between runs due to the date in added object

1.26  28-Apr-2001  Bug Fix    : Remount after dismount on a repair operation
                   Enhancement: No dismount and excess removal options added

1.27  03-May-2001  Enhancement: Ignore timeout used on FileCore_DiscOp
                                (remount problem)

1.28  07-Jul-2001  Enhancement: Recovered objects in Lost+Found included in backup
                   Enhancement: Dirs removed to Lost+Found when pathname exceeds 256
                   Enhancement: Backup path length of directory not allowed above 256
                   Enhancement: Backup parameter parsing improved
                   Enhancement: Command line arguments displayed
                   Enhancement: Boot block system object minimum size repair reinstated
                   Bug Fix    : Dismounting removed to avoid SCSI/removable problems
                   Bug Fix    : ByteSWI used on discs <512MB incase running on RO 3.1
                   Bug Fix    : Load Directory failure does not terminate program
                   Bug Fix    : Zero length file now displayed by show files and stats
                   Bug Fix    : Directories with null names not created in Lost+Found
                   Bug Fix    : Lost+Found directory sorted before writing
                   Bug Fix    : Could not create undo/extract file error changed
                   Bug Fix    : Start of recoverd object in SIN &2 (root dir) fixed
                   Bug Fix    : MakeLoadExec() added, oswordreadclock_utc call fixed

1.29  14-Jul-2001  Bug Fix    : If root directory object reallocated, update boot block
                                Fixed root directory not written to undo file

1.30  10-Aug-2001  Enhancement: Disc start offset added for accessing second
                                and subsequent partitions
                   Enhancement: Search for map disc record no longer requires exact
                                tracks, heads and sectors parameters
                   Enhancement: Disc Record tracks,heads,sectors display order
                                altered to match order in user interface
                   Enhancement: Fault counting added
                   Enhancement: Version number printing moved before argument parsing
                   Enhancement: No undo check option added
                   Enhancement: Ignore boot block option added
                   Enhancement: No alternate disc record option added for use with -p

1.31  18-Aug-2001  Enhancement: No object checking (fast) option added

1.32  18-Sep-2001  Enhancement: Duplicate file names checked and fixed
                   Enhancement: Unique name ensured for recovered dirs in Lost+Found

1.33  23-Oct-2001  Enhancement: Disc map search size for large discs extended

1.34  23-Nov-2001  Bug Fix    : Sub64 & Sub64_32 carry bit bit fixed for correct stats

1.35  16-Dec-2001  Enhancement: Map objects checked for sector alignment with LFAUs
                                smaller than the sector size
                   Enhancement: Lost+Found directory allocation improved
                   Bug Fix    : Minimum size statistics accounting for sector rounding

1.36  29-Dec-2001  Bug Fix    : Objects created from free space not examined by
                                IsDirectory

1.37  12-Jan-2002  Enhancement: Recover orphans restructured to allow multiple
                                Lost+Found directory creation for E format discs
                   Enhancement: IsDirectory rejects SINs less than &300
                   Enhancement: Maximum directory errors increased to 5
                   Enhancement: Directory rechecked for new duplicate names after
                                sorting
                   Enhancement: Invalidly shared objects deleted rather than truncated
                   Enhancement: ID only maked as used if at least one shared object is
                                found to be valid
                   Enhancement: Disable recovery of orphaned files option added
                   Enhancement: Disable minimum disc size constraints option added
                   Enhancement: Support for E format floppies with no.bootblock option
                   Enhancement: Map Disc name checking catering for floppies
                   Enhancement: Root directory name checking ignored for E floppies
                   Enhancement: GetBit() and SetBit() replaced by macros
                   Enhancement: Rerun status code added
                   Enhancement: Correct big flag and share size written back to boot
                                block
                   Bug Fix    : Spurious large wastage statistic not displayed
                   Bug Fix    : Second free/object statistic size bin calculated
                                correctly
                   Bug Fix    : MakeID object size statistic incrmented correctly
                   Bug Fix    : Duplicate blocks removed from sparcefile cache
                   Bug Fix    : IsDirectory no longer terminates if LoadObject fails
                   Bug Fix    : Directory level multiple link check enabled for
                                recoverd directories
                   Bug Fix    : Fixed multiply linked parent directory different fault
                                not counted in fault summary
                   Bug Fix    : Directory sort fixed for E format, was using entries+1
                   Bug Fix    : Errors reported from disc image read/write ops

1.38  15-Jan-2002  Enhancement: Map disc end marker repair code added
                   Enhancement: Root directory checked for valid space allocation
                   Enhancement: New Root directory creation checked for failure
                   Bug Fix    : Check of map system object + root includes share
                                rounding

1.39   25-Oct-2002 Enhancement: 32bit build

1.40   28-Dec-2002 Bug Fix    : Restore fixed to calculate correct sector address
                   Enhancement: RISC OS 5 FileCore_DiscOp64 added for discs over 256GB

1.41   26-Mar-2003 Enhancement: No exit option to allow continuation after filecore
                                errors
1.42   02-Apr-2003 Bug Fix    : Fix to handle fragmented root directories which are
                                marked as shared objects

1.43   18-Apr-2003 Bug Fix    : Root directory checked regardless of result if
                                IsDirector check
                   Bug Fix    : Recursion prevented in found directory parent search
                   Enhancement: Recovered directory name fixup improved

1.44   26-Mar-2003 Enhancement: Retries individual sectors on read errors



Desktop Front End
-----------------

1.00  19-Oct-2000  Information: First release

1.01  12-Nov-2000  Enhancement: Auto select of Filing system & disc number if
                                only a single option is available for each.
                   Bug Fix    : Removed error trap from toolbox initialise
                                which used wimp report error and cause infinite
                                loop
                   Bug Fix    : Later versions of the toolbox modules ensured
                   Bug Fix    : Documentation updated to remove recommendation to
                                shift boot - toolbox modules required

1.02  18-Nov-2000  Enhancement: Other options field added.

1.03  19-Nov-2000  Bug Fix    : Sprite area field added to toolbox initialise

1.10  19-Nov-2000  Enhancement: Current options preserved in choices file
                   Information: Second release

1.11  20-Nov-2000  Enhancement: Auto-upgrader feature added for use on website
                   Information: Second release upgrade version

1.13  22-Jan-2001  Bug Fix    : Full filename not used for drag leafname to prevent
                                it being concatenated on to the save path

1.14  22-Jan-2001  Bug Fix    : Undo file checked instead of extract file when run
                                leading to possible spurious same disc error
                   Enhancement: Documentation updated and spell checked.

1.18  16-Feb-2001  Enhancement: Advanced options not reloaded from choices file
                                to prevent problems caused by modifications to
                                behavour unseen when dialog is not expanded

1.19  17-Feb-2001  Information: Version number update

1.20  25-Feb-2001  Enhancement: Recover deleted files option added
                   Enhancement: Selecting repair automatically enables create undo
                                file on the first time it is performed
                   Enhancement: Will work on extracted disc data file by dropping
                                on to empty part of the disc section in the dialog

1.22  15-Apr-2001  Enhancement: Backup option added
                   Enhancement: RamFS and FontFS not displayed in list of filing
                                systems to prevent user confusion
                   Bug Fix    : stricoll case insensitive comparisons used

1.24  21-Apr-2001  Enhancement: Recover deleted files option cancelled after us

1.25  25-Apr-2001  Information: Version number update

1.27  30-May-2001  Enhancement: MacFS  not displayed in filing system list

1.28  30-May-2001  Enhancement: Extracted disc data can be dropped on to iconbar

1.29  14-Jul-2001  Information: Version number update

1.30  10-Aug-2001  Enhancement: Start track disc parameter added

1.32  10-Aug-2001  Information: Version number update

1.35  16-Dec-2001  Information: Version number update

1.37  12-Jan-2002  Information: Version number update

1.38  16-Jan-2002  Information: Version number update

1.39  25-Oct-2002  Information: 32bit build

1.40  28-Dec-2002  Bug Fix    : Undo file parameter not passed on a check operation
                   Bug Fix    : Current drive name retrieved before restore file
                                conflict checking

1.41  26-Mar-2003  Information: Version number update

1.42  02-Apr-2003  Information: Version number update

1.43  18-Apr-2003  Information: Version number update

1.44  05-Jul-2003  Bug Fix    : F12 & Ctrl F12 passed on to Wimp when focus in window