Aaru Dps Aaru Versions Save

Aaru Data Preservation Suite

v6.0.0-alpha9

1 year ago

WARNING THIS IS A PRE-RELEASE Images created with this version are not guaranteed to work, be repairable, or contain correct information.

Changes from 5.3.2 LTS

Added

- Adler checksum

  • SSSE3 implementation if supported by running host.

- Apple Data Compression algorithm

  • Use faster native library if supported by running host.

- Apple RLE compression algorithm

  • Use faster native library if supported by running host.

- Apple Universal Disk Image Format

  • Support for LZFSE compressed images (ULFO).
  • Support for XZ compressed images (ULMO).

- Atari Lynx cartridge dumps

  • Dumping by supported hardware.
  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.

- BZIP2 compression algorithm

  • Faster non-native implementation.
  • Use faster native library if supported by running host.

- Console

  • Use new console system that allows to show colors, tables and progress bars in command line.

- CRC32 checksum

  • ARM specific instructions if supported by running host.
  • PCLMUL implementation if supported by running host.

- CRC64 checksum

  • PCLMUL implementation if supported by running host.

- Dumping

  • Draw the MHDD log as an image.
  • For most spiral media (CD/DVD/BD) draw a graph with the dump status.
  • For non-spiral media draw a block map.

- FLAC compression algorithm

  • Use faster native library if supported by running host.

- LZFSE compression algorithm

  • Now available if native library is supported by running host.

- LZMA compression algorithm

  • Use faster native library if supported by running host.

- LZIP compression algorithm

  • Use faster native library if supported by running host.

- NES / Famicom cartridge dumps

  • Dumping by supported hardware.
  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.
  • Support for iNES and NES 2.0 formats

- Nintendo 64 cartridge dumps

  • Dumping by supported hardware.
  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.
  • Support for z64 and n64 formats.

- Nintendo Game Boy cartridge dumps

  • Dumping by supported hardware.
  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.

- Nintendo Game Boy Advance cartridge dumps

  • Dumping by supported hardware.
  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.

- Nintendo Game Boy Color cartridge dumps

  • Dumping by supported hardware.
  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.

- Retrode cartridge dumping hardware

  • Dumping Nintendo 64 cartridges.
  • Dumping Nintendo Game Boy cartridges.
  • Dumping Nintendo Game Boy Advance cartridges.
  • Dumping Nintendo Game Boy Color cartridges.
  • Dumping Sega Game Gear cartridges.
  • Dumping Sega Master System / Mark III cartridges.
  • Dumping Sega Mega Drive / Genesis cartridges.
  • Dumping Super Nintendo / Super Famicom cartridges.

- Sega 32X cartridge dumps

  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.
  • Dumping by supported hardware.

- Sega Game Gear cartridge dumps

  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.
  • Dumping by supported hardware.

- Sega Master System / Mark III cartridge dumps

  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.
  • Dumping by supported hardware.

- Sega Mega Drive / Genesis cartridge dumps

  • Full support for converting between smd and bin formats.
  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.
  • Dumping by supported hardware.

- Sega Pico cartridge dumps

  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.
  • Dumping by supported hardware.

- Super Nintendo / Super Famicom cartridge dumps

  • Support by print, convert, info, entropy, checksum, compare and create sidecar commands.
  • Dumping by supported hardware.

- ZSTD compression algorithm

  • Now available if native library is supported by running host.

Changes

  • All used checksums now call a much faster native library if supported.
  • CICM metadata XML sidecars are deprecated, new more complete JSON format is used instead.
  • Remove FreeBSD support code. Use aaruremote for dumping devices connected to FreeBSD systems.
  • Resume file is now in JSON format. XML resumes will be automatically replaced.
  • Use APTD for accessing ATA devices in Windows.

v5.3.2

1 year ago

This is a Long Term Support release, this release will be supported until the next LTS version is released.

With the publication of this version, version 5.3.1 LTS is deprecated and no longer supported.

PUBLIC SERVICE ANNOUNCEMENT

Please read http://blog.claunia.com/Aaru-Major-Bug-Advisory

IMPORTANT NOTICE

Due to a recent change in the Linux kernel drivers, any device report made with previous version of an ATA or ATAPI device are invalid and need to be re-done. Sorry for the inconveniences.

You can see what operating system versions have been tested with these here.

Fixed

- Aaru Image Format

  • DDT verification when its size on-image is bigger than 1MiB.
  • Parent block identifier in AaruFormat.
  • Track indexes in when a disc contains a hidden track.

- Apple DOS filesystem

  • Calculation of file sizes

- Apple Macintosh filesystem

  • Calculation of file sizes

- BlindWrite 5/6/7 disc images

  • Opening split images in Windows

- CDRWin cuesheet disc images

  • Do not report ISRC as present if no tracks contain ISRC data.

- Device report

  • Add workaround for device report the AccessTek/Optorite DD0203 drive.

- Devices

  • Add transfer size to ATA(PI) IDENTIFY (PACKET) DEVICE commands as required by a recent change in the Linux kernel API.

- Dumping

  • Correct offset fixing when trimming or re-reading errored audio sectors.
  • Do not set INDEX 1 to a value higher than what the TOC already said.

- FAT filesystem

  • Fix that first 2 FAT entries are not considered part of the allocation ones, allocating two more.
  • Return current clusters when a file overflows the FAT.

- ISO9660 filesystem

  • Do not try to interpret an 0-length Continuation Area.

- SGI Volume Header

  • Partition types not properly interpreted.

Changes

  • Do not allow dumping or converting to image formats that do not properly support hidden tracks when there is a hidden track in the media.
  • Update Newtonson.Json dependency due to security issues.

v5.3.2-rc2

1 year ago

This is a release candidate

This means it should contain no bugs but has not yet been tested extensively.

IMPORTANT NOTICE

Due to a recent change in the Linux kernel drivers, any device report made with previous version of an ATA or ATAPI device are invalid and need to be re-done. Sorry for the inconveniences.

You can see what operating system versions have been tested with these here.

Fixed

- Aaru Image Format

  • DDT verification when its size on-image is bigger than 1MiB.
  • Parent block identifier in AaruFormat.
  • Track indexes in when a disc contains a hidden track.

- BlindWrite 5/6/7 disc images

  • Opening split images in Windows

- CDRWin cuesheet disc images

  • Do not report ISRC as present if no tracks contain ISRC data.

- Device report

  • Add workaround for device report the AccessTek/Optorite DD0203 drive.

- Devices

  • Add transfer size to ATA(PI) IDENTIFY (PACKET) DEVICE commands as required by a recent change in the Linux kernel API.

- Dumping

  • Correct offset fixing when trimming or re-reading errored audio sectors.
  • Do not set INDEX 1 to a value higher than what the TOC already said.

- FAT filesystem

  • Fix that first 2 FAT entries are not considered part of the allocation ones, allocating two more.
  • Return current clusters when a file overflows the FAT.

- ISO9660 filesystem

  • Do not try to interpret an 0-length Continuation Area.

- SGI Volume Header

  • Partition types not properly interpreted.

Changes

  • Do not allow dumping or converting to image formats that do not properly support hidden tracks when there is a hidden track in the media.
  • Update Newtonson.Json dependency due to security issues.

v5.3.2-rc1

1 year ago

This is a release candidate

This means it should contain no bugs but has not yet been tested extensively.

IMPORTANT NOTICE

Due to a recent change in the Linux kernel drivers, any device report made with previous version of an ATA or ATAPI device are invalid and need to be re-done. Sorry for the inconveniences.

You can see what operating system versions have been tested with these here.

Fixed

- Aaru Image Format

  • DDT verification when its size on-image is bigger than 1MiB.
  • Parent block identifier in AaruFormat.
  • Track indexes in when a disc contains a hidden track.

- Device report

  • Add workaround for device report the AccessTek/Optorite DD0203 drive.

- Devices

  • Add transfer size to ATA(PI) IDENTIFY (PACKET) DEVICE commands as required by a recent change in the Linux kernel API.

- Dumping

  • Do not set INDEX 1 to a value higher than what the TOC already said.

Changes

  • Do not allow dumping or converting to image formats that do not properly support hidden tracks when there is a hidden track in the media.
  • Update Newtonson.Json dependency due to security issues.

v5.3.1

2 years ago

This is a Long Term Support release, this release will be supported until the next LTS version is released.

With the publication of this version, version 5.3.0 LTS is deprecated and no longer supported.

IMPORTANT NOTICE

Previous versions, as well as versions published before 5.3.1, have a bug in the CRC64 algorithm, so any sidecar, or checksum, created using older versions have incorrect values.

Added

- Device information

  • Add another Kingston vendor ID for SecureDigital.
  • Add MMC vendor ID for Nokia.

- Media types

  • Add MetaFloppy Mod I.
  • Add MetaFloppy.
  • Add CRVdisc.

Fixed

- Aaru Image Format

  • Do not skip blocks that have CRC as 0, as we do not set them for DDTs and CD Prefix/Suffix.
  • Fix reading long sectors when all suffixes and prefixes are standard.

- Device information

  • Fix endianness when decoding SD/MMC OCR register.

- Dumping

  • Fix detecting errors from OS buffered reads in Linux.
  • When dumping an SD/MMC card try to detect if OS buffered reads are failing, and max readable blocks using sequential commands, and downgrade accordingly. Now also detects cards that are totally unreadable.

- ISO9660 filesystem

  • Do not break when an ISO9660/HighSierra/CD-i directory spans several sectors if we only have a partial last sector read.
  • Do not try to decode empty path table in ISO9660/CD-i/HighSierra.

- Media detection

  • Do not try to read past directory sector in detection of media type.

Changes

  • Fix CRC64 calculations.

v5.3.0

2 years ago

This is a Long Term Support release, this release will be supported until the next LTS version is released.

Added

- Aaru Image Format

  • DVD CSS related structures.

- AaruRemote

  • Use system URI parser to parse AaruRemote endpoints. Allows to set different ports.

- Alcohol 120% disc image

  • Support for images created by CDRWin 10 and GameJack.
  • Support incorrect implementation of images with track 1 pregap made by UltraISO.

- Apple DOS interleaved disk images

  • Support for 13-sector Apple DOS images.

- Apple Universal Disk Image Format

  • Detect LZMA chunks.

- BlindWrite 4 disc image

  • Consider there is subchannel if we have a subchannel file, ignoring header.
  • Reverse engineer unknown field that adjusts the file offset per track.

- BlindWrite 5/6 disc image

  • Return empty data where only some tracks has subchannel.
  • Support split images.

- CDRWin cuesheet disc image

  • Check if media is a CD when generating track list.
  • Detect corrupt DVD images created by PowerISO and stop processing.
  • Detect incorrect images created by MagicISO.
  • Do not reconstruct long sectors when media is not a CD.
  • Set application to MagicISO when appropriate.
  • Show a message that DVD images created with MagicISO are most probably unrecoverable garbage.
  • Show error message when trying to convert multi-session Redump dumps.
  • Support Redump GD-ROM dumps.
  • Support writing with hidden tracks (NOT CD-i Ready).
  • Try to detect, and workaround, disc images that lack the first track data when there's a hidden track, as such created by PowerISO.

- CloneCD disc image

  • More possible values for track mode and index handling.
  • Process track entries.

- Device information

  • Check Extended CSD is empty on device info.

- Device report

  • Check support for SCSI READ LONG(16) in device report.
  • Try other ways of getting the SCSI MODE SENSE values that are more effective with certain devices.
  • Workaround firmware bug in Lite-On iHOS104.

- Devices

  • Better decoding of SecureDigital Card Register.
  • More fields to MultiMediaCard's Extended CSD.
  • Enlarge sense buffer to 64 bytes.

- Dumping

  • Do not cross into each session's first track pregap as this makes some drives fail.
  • Dumping of CSS disc key and title keys.
  • Enable storing decrypted CSS sectors.
  • Enable to continue dumping non-removable drives if serial number is different using the force option.
  • Implement reading SD/MMC using buffered OS calls.
  • Workaround some firmware bug in some audio CDs with hidden audio.
  • Write media tags to image even when aborted.
  • Write MMC/SD card registers to image before closing it.

- FAT filesystem

  • Check entire FAT validity to fix identifying between FAT12 and FAT16.
  • Check which FAT is valid (first or second) and use it for FAT12 and FAT16.
  • Do not return invalid argument when reading a 0-byte sized file.
  • Handle directory entries that contain a forward slash in the filename.
  • Handle empty directory entries.
  • Handle unallocated, but reserved, directories.
  • Set encoding before interpreting the BPB.
  • Support for FAT32 volumes that uses sectors field in BPB.

- HD-Copy disk image

  • Support for different or newer format.

- Image information

  • Show Pre-Recorded Information (PRI).

- ISO9660 filesystem

  • Do not stop processing a directory when there is 1 or more sectors of data left to process.
  • Mounting volumes with an invalid path table.

- Media detection

  • Detect ISO 15041 magneto-opticals
  • Detect SyJet disks using number of sectors.
  • Detect when DVD book type is different from drive's firmware profile.
  • PlayStation 5 Ultra HD Blu-ray game discs.
  • Ultra HD Blu-ray.
  • Xbox Game Disc 4 (Xbox One).

- Media images

  • DiskDupe (DDI) image format.

- Media information

  • Decode Pre-Recorded Information.
  • Decode smaller disc information from older DVD drives.
  • More media manufacturers.
  • Print Disc Key and Sector CMI information.
  • Print recordable Physical Format Information (PFI).
  • Show hidden track.

- Media scan

  • Allow scanning Audio CD on drives that don't allow READ(12) on them.

- Nero Burning ROM disc image

  • Detect incorrect images where the track mode does not match with the track sector size and try to workaround it.
  • Implement support for Nero Burning ROM 4 disc images.
  • Support alternate audio track mode number in disc images.
  • Support reading sector tags in MODE2 disc images.
  • Workaround from invalid images created by MagicISO with invalid session descriptors.
  • Workaround images created by MagicISO from DVD discs that contain a completely invalid description and a single track.
  • Workaround MagicISO bug in images with more than 15 tracks.

- RAW (sector by sector) disk image

  • Support setting sector size in raw image when the extension describes it.
  • Recognize Toast disc images by extension.

- SCSI response decoders

  • Decode fixed or descriptor SCSI sense in a single pass, use whichever was returned by drive.
  • Do not skip pages when decoding a page longer than the MODE SENSE buffer.

- Universal Disk Format filesystem

  • Recognize volumes that expected a 2048 bytes per sector device but are in a 512 bytes per sector image.
  • Set volume serial as volume set identifier.

- VirtualBox disk image

  • Support for version 1.1+ geometry.

Fixed

- Aaru Image Format

  • Images that got a wrong track end beyond a leadout on dumping.
  • Workaround for corrupt multisession AaruFormat images.

- AaruRemote

  • Ensure remotes pointing to a UNIX device node have the proper absolute path slash.

- Alcohol 120% disc image

  • Prevent writing non-long sectors.
  • Reading images with a hidden track.
  • Reading images with pregaps.
  • Setting session.
  • Taking account of session start pregaps when writing Alcohol 120% images.

- AmigaDOS filesystem

  • Guard identification against too small partitions.

- Apple New Disk Image Format

  • Prevent identifying obsolete UDIF images.

- Apple Universal Disk Image Format

  • Data offset.
  • Reading obsolete RO images, these require resource fork.
  • Sectors in obsolete RO images.

- BlindWrite 4 disc image

  • Reading images with pregaps.
  • Track flags.

- cdrdao disc image

  • Track properties.
  • Return session.

- CDRWin cuesheet disc image

  • Calculation of sizes when it has CDG tracks.
  • Completely wrong handling of PREGAP value.
  • Do not allow CD-only tags on non-CD media.
  • Reading track flag when track 1 has a pregap bigger than 150 sectors.
  • Sectors calculations.
  • Setting index sectors on multi-file images.
  • Skipping non-present pregap images when there is more than one.

- CloneCD disc image

  • Detection of track mode.
  • File offsets when reading multisession images.
  • Image size calculation.
  • Invert condition when retrieving flags.
  • Partitions on multi-session images.
  • Sessions.
  • Track 1 pregap.

- Commands

  • Do not crash without configuration when no argument is used.
  • Do not try to read arguments when there are none.

- CPCEMU Disk-File and Extended CPC Disk-File disk image

  • Interleaved sectors numbers.
  • Reading of images where the headers have different case.

- CP/M File System

  • Handling filenames that contain a forward slash.

- Devices

  • 48-bit ATA commands.
  • Block size for SD cards, that must always be read using 512b blocks even if their CSD says otherwise.
  • Block size from READ(16).
  • Correct transfer length type for MMC/SD cards.
  • Decoding MultiMediaCard Extended CSD.
  • Decoding of USB or FireWire serial numbers with control characters.
  • Decoding SecureDigital CID.
  • Detect SD/MMC READ_MULTIPLE_BLOCK in Windows.
  • Marshalling MultiMediaCard serial number from CID registers.
  • Overflow calculations of blocks when device has more than 0x7FFFFFFF blocks.
  • READ CAPACITY(16) block size calculation.
  • Stack corruption when sending multiple MMC/SD commands in Linux.

- DiscJuggler disc image

  • Be more lenient with unknown data images.
  • Correct image size.
  • Do not generate long sectors on non-CD media.
  • Offset problem preventing proper read of most images.
  • Processing images with MODE 2 tracks.
  • Subchannel types being set incorrectly.
  • Track flags not readable.

- Dumping

  • Creating sidecar from MMC trying to hash non-existing SD registers.
  • Non-CD optical media when drive does not return track list.
  • Pregap calculation on first tracks of each session when dumping CDs.
  • Re-setting track end when correctly reading a new subchannel that changes the next track start.
  • Speed calculations for very fast devices.
  • Stop processing sidecar when aborted.
  • Use a bigger buffer for READ TOC command that was preventing dumping > 90 track discs.

- FAT filesystem

  • Add a guard for FAT12 and FAT16 to prevent an exception on invalid FAT chains.
  • Clusters calculation in FAT12 and FAT16.
  • Fix reserved FAT entries.
  • Force identification of hard disk volumes made by Atari ST with FAT16 filesystems when they're not bootable.
  • In FAT filesystem, 0 means no time stored.
  • Interpretation of BPB value used by Atari ST in FAT16 partitions of type BIG GEMDOS.
  • Mounting a FAT filesystem that does not contain a valid FS_TYPE field and have invalid clusters.
  • Null reference exception in FAT filesystem when entry points to a cluster beyond volume.
  • Reading FAT when it has an odd number of clusters.
  • Regression in setting timestamps from FAT filesystems.

- Filesystems

  • Creation of destination folders when extracting files.
  • Extracting extended attributes

- Flash-Friendly File System (F2FS)

  • Guard against reading beyond partition end when identifying.

- Image conversion

  • Converting tape images using command line.

- Image verification

  • Off by one error when verifying disc images with tracks.

- ISO9660 filesystem

  • Extents not being created for 0 byte files in High Sierra, ISO9660 and CD-i volumes.
  • ISO9660, High Sierra and CD-i volumes where the directories span multiple sectors.

- Kreon firmware (XGD dumping and information)

  • Correct calculations on dumping and media information.
  • Ensure Kreon commands return proper error status.

- Media detection

  • Detecting CD-R and CD-RW when dumping if drive reports as CD-ROM.
  • DVD discs being detected always as -ROM when the drive returned this profile on dump.
  • Misdetecting optical discs as flash drives.
  • Number of blocks for 70Gb iomega REV.
  • XGD.

- Media images

  • Fix full TOC generation.

- Media scan

  • Calculating blocks to read when dumping or scanning MMC/SD.
  • Seeking test in SD/MMC media scan.

- Nero Burning ROM disc image

  • Incorrect size in multisession media.
  • Invalid pregaps detected.
  • Long sectors returning subchannel.
  • Reading MODE 1 sectors from track marked as MODE 2.
  • Returning long sectors in non-CD media.
  • Track starts and ends made no sense.
  • Unreadable track flags.
  • Wrong raw bytes per sector.
  • Wrong sessions in some media.

- Parallels disk image

  • Images bigger than 4GiB.

- QEMU Copy-On-Write disk image

  • Align structures when writing.

- QEMU Copy-On-Write v2 disk image

  • Tables calculations that crashed and made unreadable images.

- RAW (sector by sector) disk image

  • Getting tracks when writing raw image.
  • Returned track properties in raw ISO images.

- Reiser 3 filesystem

  • Volume label decoding.

- SCSI response decoders

  • Descriptor sense decoding.
  • Skip invalid EVPD page 80h if it contains non-ASCII characters.

- UNICOS filesystem

  • Guard against reading beyond partition end when identifying.

- Universal Disk Format filesystem

  • Regression in volume identification.

- VirtualBox disk image

  • Working with disk images bigger than 4GiB.

- VirtualPC disk image

  • Reading disk images bigger than 4GiB.
  • Reading dynamic images.

- Xbox FAT filesystem

  • Exchange access and creation timestamps.

Changes

  • Add command line to pause before exiting.
  • Clarify anonymouslity of stats sharing.
  • Consider 0 to be "current default timeout", otherwise some device commands / operating system combinations fail.
  • Create .xattrs folder only in root path of extracted volume.
  • Detect all unknown non-removable media as hard disk drives.
  • Detect USB flash drives that identify themselves as CD readers but are in reality just block devices.
  • Disable calculation of disc entropy on multisession discs.
  • Disable dumping with multisession except in AaruFormat and CDRWin formats until 6.0.
  • Disable force unit access in SCSI devices during media detection.
  • Do not allow converting multisession images to formats that don't support multisession.
  • Do not pre-calculate pregaps when dumping on a Plextor as some older models contains firmware bugs that crash the bus.
  • Do not write to subchannel log when there's none.
  • Ensure first-time setup is invoked even when another command is requested.
  • Fix calculating track entropy.
  • Fix extents creation from a list of extents to prevent overlapping extents to be added.
  • Guard several filesystems against crashes when identifying on a data buffer smaller than needed.
  • In image information, only show indexes if there's any index to show.
  • Move IRC to Libera.
  • Reduce seek times to 100 when scanning MMC/SD cards.
  • Rename image analyze command to filesystem info.
  • Use ATA Pass Through Direct API in Windows.
  • Use same codepath for calculating optical media tag sidecar fields dumping or from image.
  • Use SCSI reader detection of maximum supporter blocks to read at once when scanning non-CD media.

v5.3.0-rc2

2 years ago

v5.3.0-rc1

2 years ago

v5.2.0.3330

3 years ago

Added

- Aaru Image Format

  • Enable checksums by default when writing.

- Alcohol 120% disc image

  • Support writing PhotoCD.

- cdrdao disc image

  • Support writing PhotoCD.

- CDRWin cuesheet disc image

  • Support writing PhotoCD.

- CloneCD disc image

  • Support writing PhotoCD.

- Device report

  • Check DVD-RAM if the drive claims to be able to read any DVD based format.
  • Use features to see MMC drives read capabilities.

- ISO9660 filesystem

  • Support a block size different from 2048 bytes.

- Media detection

  • Handle calculating blank sectors when environment does not support MEDIUM SCAN command (consider all written and trim later).

- Media information

  • Add detection of 44Mb Bernoulli Box II disks.
  • Add detection of 150Mb Bernoulli Box II disks.
  • Add detection of ECMA-322 / ISO/IEC 22092 1024bps magneto-optical disks.
  • Add detection of ISO/IEC 10089 1024bps magneto-optical disks.
  • Add detection of ISO/IEC 14517 512bps and 1024bps magneto-optical disks.
  • Add detection of ISO/IEC 15286 2048bps and 1024bps media disks.
  • Add detection of SyQuest SQ400 disks.

Fixed

- Aaru Image Format

  • Fix reporting track flags and ISRCs on non-CD media.
  • Fix resuming subchannel and other CD structures.
  • Fix when writing subchannel that doesn't belong to any track.
  • Load more structures when resuming.
  • Remove check for track crossing when writing.

- AaruRemote

  • Catch when host is already an IP address.
  • Cover closing remote connection when socket is disposed.
  • Remove trailing slash on remote device command.

- AppleSingle filter

  • Do not try to open non-existing file.

- BlindWrite 4 disc image

  • Fix images that contain sectors 150 sectors of first track pregap.
  • Fix off by one track ends.
  • Fix track file offsets in BlindWrite 4 disc images.
  • If any track has subchannel, the subchannel sidecar file contains them for all tracks.

- BlindWrite 5/6 disc image

  • Add sessions.
  • Fix cross track detection.
  • Fix disc size calculation.
  • Fix length of tracks.
  • Fix negative index.
  • Fix setting track session.

- cdrdao disc image

  • Prevent empty ISRC from being added.

- CDRWin cuesheet disc image

  • Prevent empty ISRC from being added.

- CloneCD disc image

  • Fix indexes.

- DiscJuggler disc image

  • Do not try to read descriptors if there are none.
  • Fix cross track detection.

- Dumping

  • Add classifying rw full off 0xFF as being empty
  • Check MMC drive profile when dumping.
  • Consider RW subchannels as ok if some are all 0s and some are all 1s.
  • Consider the last sector of all the tracks on a DVD or Blu-ray as the last block on disc even if drive tells otherwise.
  • Continue printing SCSI sense buffer in error log even if we have an operating system error.
  • Disable FUA to fix reading from old SCSI disks.
  • Do not generate subchannels if aborted.
  • Do not recalculate logical track size when DVD drive returns a negative start.
  • Do not try to find SCSI read command if the medium is not written.
  • Ensure only unique bad blocks are saved in resume file.
  • Fix decoding of last digit of MCN subcode.
  • Fix detecting XGD3.
  • Fix log message when trimming found a blank block.
  • Fix MEDIUM SCAN SCSI command.
  • Fix retrieving CD drive offsets from database when model or manufacturer contains a slash.
  • Get back tracks, indexes, MCN and ISRCs from resumed file.
  • Guard against some firmware bugs when getting DVD/BD track number and length.
  • Handle calculating blank sectors when environment does not support MEDIUM SCAN command (consider all written and trim later).
  • Hardcode read command and blocks to read if we cannot calculate them for magneto-opticals.
  • If device returns "corrected error", consider it as a good read.
  • Use image capabilities when dumping CDs.

- FAT filesystem

  • Fix reading volume name from incorrect implementations that fill it with NULs.

- ISO9660 filesystem

  • Fix extended attributes.
  • Reject processing a path table that doesn't start with the root directory.

- MacBinary filter

  • Do not try to open non-existing file.

- Media detection

  • Do not decode invalid ATIP data.
  • Fix detection of CD-i Ready discs when negative offset and drive cannot read negative sectors.
  • Fix detection of dual layer DVDs.
  • Fix detection of hidden data track mode when drive returns it scrambled.
  • Fix detection of version 3 and upper DVD-RW and DVD-RW DL.
  • Fix negative offset calculating when detecting scrambled CD-i Ready.

- XZ filter

  • Fix crashing when file is too small.

- RAW (sector by sector) disk image

  • Fix capabilities.

Changes

  • Add new issue templates.
  • Add support for dumping CDs to images that only support cooked user data.
  • Allow to dump the video partition of XGD discs when forced is enable.
  • Allow user to choose maximum number of block to read at once when dumping media.
  • Change how pregap starting with 0 is calculated dumping versus converting.
  • Change method of reading subchannels in Plextor drives.
  • Continue trying filters when one raises an exception.
  • Do not dump multi-session CDs in Plextor drives connected to a USB bridge until it is fixed.
  • If there is an OS error only print the sense buffer if it contains data.
  • Mark FreeBSD code as obsolete. Pending removal.
  • Reverse used SCSI READ command, as some USB devices claim to support a later one but don't properly.
  • Scan blank blocks in magneto-optical disks before dumping, and do not treat them as errors.
  • Use track 1's first sector to check readability of CompactDisc media.

v5.1.0.3214

3 years ago

Added

- Aaru Image Format

  • Save Compact Disc track indexes in.
  • Support reading mode2 subheaders.
  • Support writing multi-session DVD/Blu-ray in Aaru Image Format and CDRWin.

- BlindWrite 4 disc image

  • Add reading subchannels.

- CDRWin cuesheet disc image

  • Support Redump GD-ROM variant.
  • Support writing multi-session DVD/Blu-ray in Aaru Image Format and CDRWin.
  • Write proper Lead-Out entry on CDRWin images.

- Device report

  • Add MediaTek command F1h subcommand 06h to device report.
  • Add test for reading Lead-Out using a trap disc.
  • Support creating device reports of MiniDisc Data drives.

- Devices

  • Add ATA commands for lock, unlock and eject.
  • Add READ TRACK INFORMATION command from SCSI MMC.

- Dumping

  • Add dumping MD DATA discs.
  • Add floptical detection.
  • Add list of files for media dump command.
  • Add option to eject media after a dump completes.
  • Add option to fix subchannel position.
  • Add option to fix subchannels.
  • Add option to retry bad subchannel sectors.
  • Add option to use list of output files when dumping media.
  • Detect disc type when dumping non-CD MMC devices.
  • Dump sessions and tracks on non-CD optical discs.
  • Enable accessing generic SCSI node in Linux.
  • Read SD/MMC devices one block at a time, as READ MULTIPLE is timing out, pending investigation.
  • Report and stop dump if pregaps cannot be preserved, unless forced.
  • Save error log on dump.
  • Save indexes on dump.
  • Support dumping CD-i Ready when drive returns data sectors as audio.
  • Use subchannel, if available, to set ISRC.
  • Use subchannel, if available, to set MCN.
  • Write subchannel log when dumping Compact Disc media.

- Image analysis

  • Print track indexes in image info.

- Image conversion

  • Add option to fix subchannels on image conversion.
  • Add option to generate subchannels.

- ISO9660 filesystem

  • Add interpretation of timezone offsets.
  • Check if PVD points to the real root directory, if not check path table, if neither do not mount.
  • Expose MODE2 subheaders as extended attributes.

- Media image formats

  • Add generation of RAW CD sectors from images that do only contains them cooked.

- Media information

  • Add detection of CD32 and CDTV discs.
  • Add detection of China Video Disc.
  • Add detection of HiFD floppies.
  • Add detection of Neo Geo CD discs.
  • Add detection of PhotoCD.
  • Add detection of Sony PlayStation Compact Disc.
  • Add detection of VideoCD and Super Video CD.
  • Add support for MD DATA drives.
  • Calculate all pregaps in media info.
  • Detect CD-i Ready when the drive returns data scrambled.
  • Implement detection of CD+G, CD+EG and CD+MIDI.
  • Show the reasons while a media type has been chosen on detection.

- Media types

  • Add China Video Disc media type.

- Metadata sidecar

  • Add media catalogue number, track isrc, flag and indexes.

Fixed

- Aaru Image Format

  • Clarify error message in case of corrupted prefix/suffix data.
  • Ensure FLAC buffer is finished correctly.
  • Fix marking CD track flags and ISRCs as present.
  • Fix setting indexes from track start and pregap.
  • Sectors with no entry in the DDTs to be considered not dumped.

- Acorn Advanced Disc Filing System

  • Fix identification of some variants.

- Alcohol 120% disc image

  • Fix message about incorrect images showing with correct images.
  • Fix saving proper pregap, length and offset.
  • Fix writing multi-session images.
  • Write extra field in Alcohol for tracks that don't have it (POINT>=A0h).

- BlindWrite 4 disc image

  • Fixed track offsets and pregaps in BlindWrite 4 images.

- BlindWrite 5/6 disc image

  • Fix identifying BlindWrite 5 vs 6.
  • Fix images that contain a non existent data file.
  • Fix multi-session images.
  • Fix reading ATIP.
  • Fix reading subchannels.

- cdrdao disc image

  • Fix writing indexes.

- CDRWin cuesheet disc image

  • Fix reading images that do not have track mode in all caps.
  • Fix reading multi-session images.
  • Fix writing indexes.

- CloneCD disc image

  • Fix reading multi-session images.
  • Fix subchannels.
  • Fix track solving.
  • Fix writing multi-session images.
  • Fix writing pregap mode.

- Database

  • Ensure not adding duplicate seen devices to database.

- Device report

  • Correctly handle report of pregap and Lead-in readability.
  • On device report try only a few sectors from track 1 pregap.

- Devices

  • Add SCSI MEDIUM SCAN command.
  • Do not show information about CD offsets in device info when device is not an MMC class device. Fixes #357
  • Fix getting serial from USB or FireWire.

- DiscJuggler disc image

  • Fix incorrect mode2 handling.
  • Fix indexes and track starts.
  • Fix partition calculations.
  • Fix session sequence in tracks.

- Dumping

  • Do not cross Lead-out in data tracks.
  • Do not show speed burst if they have not been set.
  • Fix calculating offset using scrambled read as audio when device is in database.
  • Fix detecting indexes in track 1.
  • Fix dumping when read subchannel is PQ only.
  • Fix infinite loop failing to cross Lead-Out dumping CDs.
  • Fix infinite loop on some CD track mode changes while dumping.
  • Fix not exiting when an image cannot be appended.
  • Fix opening SecureDigital / MultiMediaCard devices.
  • Fix pregap calculation in track mode changes when pregap ends in 0.
  • Fix reading OCR from newer versions of Linux sysfs.
  • Fix re-setting track pregap when a read subchannel indicates a different value.
  • Fix reversing list of bad blocks only if we're retrying backwards.
  • Fix setting track pregaps from subchannel.
  • Fix setting track subchannel type to the desired type.
  • Handle discs that have pregap ending in LBA 1 instead of ending in LBA 0.
  • If block 0 can not be read, try another random block before deciding media cannot be read, for SBC and ATA.
  • If track mode can not be guessed, try again after pregap.
  • Make pregap calculation faster in some drive/disc combinations.
  • On errors when dumping with INSITE floptical drives, always stop, as these drives have a SCSI bus quirk that makes them need a reset on modern software stacks after an error has been found.
  • Trim as audio when we know it is an audio sector, fixes some firmware bugs in audio pregap after a data track.
  • Update the pregap while dumping if found to be bigger than known one.
  • Use SCSI MEDIUM SCAN to find the first readable block.

- FAT filesystem

  • Do not try to read EAs from FAT16 directory entry field when it is a FAT32 volume.
  • Fix false positive in FAT identification.

- Image analysis

  • Do not calculate pregaps on non-CD optical disc images.

- Image conversion

  • Fix overwriting flags and isrc in all CD writable image formats.

- ISO9660 filesystem

  • Fix files of size 0.
  • Fix listing extended attributes for empty files.
  • Fix reading directories that span more than a sector when detecting media type.
  • Fix swapping location of big-endian path table in debug mode.
  • If use path table option is indicated, use it also for the root directory.

- MAME Compressed Hunks of Data

  • Disable support for CHD v5 until it can be fixed properly.
  • Fix indexes and pregap.

- Media information

  • Discard PMA without descriptors.
  • Display media sizes in international system units.

- Metadata sidecar

  • Disable trying to checksum between sessions, as all images throw an exception here.
  • Fix creating sidecar when a track's index 0 is negative.

- Nero Burning ROM disc image

  • Fix off by one error reading.
  • Fix reading multi-session images.

- Statistics

  • Fix sending media formats statistics.

Changes

  • Change database name to be more inclusive.
  • Move common subchannel code to decoders.
  • Optimize speed when reading subchannels.
  • Read with subchannel even if not supported by image or not asked by user.
  • Send statistics at program end, not start.