Ringed Disc Dumping Guide

From Redump Wiki

(Difference between revisions)
Jump to: navigation, search
(Dumping)
Line 1: Line 1:
-
'''Ringed Discs''' have physical separators[https://web.archive.org/web/20220611141152if_/https://i.ebayimg.com/images/g/6l8AAOSwBxJgjOFU/s-l1600.jpg], preventing the disc to be properly dumped by typical means. This guide is for data only discs, data + audio tracks needs a different procedure to get the right .cue file. Note: this guide is not for Dreamcast / GD-Roms which also have rings, see [[ GD-Rom Dumping Guide]].
+
'''Ringed Discs''' have physical separators[https://web.archive.org/web/20220611141152if_/https://i.ebayimg.com/images/g/6l8AAOSwBxJgjOFU/s-l1600.jpg], preventing the disc to be properly dumped by typical means.
 +
*Note: this guide is not for Dreamcast / GD-ROMs which also have rings, see [[GD-ROM Dumping Guide]].
 +
*Warning: This is a long process, make sure you have set aside adequate time before using this guide. Ring dumping is exceptionally difficult and can take multiple days of work.
 +
*This guide assumes you are using Windows and have basic Windows Command Prompt knowledge, if you are having difficulties, consult the Redump forums for assistance.
-
==CD Dumping==
+
==CD-ROM Dumping==
===Hardware Required===
===Hardware Required===
-
* [http://wiki.redump.org/index.php?title=DiscImageCreator:_Optical_Disc_Drive_Compatibility Compatible Plextor]
+
* [http://wiki.redump.org/index.php?title=DiscImageCreator:_Optical_Disc_Drive_Compatibility Any DIC Compatible Drive]
-
* Liteon/HP SOHD-167T
+
* Liteon/HP SOHD-167T (Unsure if firmware matters, needs testing)
===Tools Required===
===Tools Required===
* [https://github.com/saramibreak/DiscImageCreator DIC]/[https://github.com/SabreTools/MPF MPF]
* [https://github.com/saramibreak/DiscImageCreator DIC]/[https://github.com/SabreTools/MPF MPF]
* [https://www.redfox.bz/en/clonecd.html CloneCD] (Free Trial)
* [https://www.redfox.bz/en/clonecd.html CloneCD] (Free Trial)
-
* [https://github.com/saramibreak/EccEdc/ ECCEDC.exe] (Optional)
+
* [https://github.com/saramibreak/EccEdc/releases/tag/20200126 ECCEDC.exe] (Old Version)
* [http://forum.redump.org/post/79852/#p79852 CDArchive]
* [http://forum.redump.org/post/79852/#p79852 CDArchive]
-
*[http://ftp.ntu.edu.tw/pub/cpatch/c/cdmage/source/cdmage1-02-1b5.rar CDMage]
+
* [http://ftp.ntu.edu.tw/pub/cpatch/c/cdmage/source/cdmage1-02-1b5.rar CDMage]
 +
* [https://github.com/namazso/OpenHashTab OpenHashTab] (Or any other hashing software with CRC32, MD5, and SHA-1 support.)
===Dumping===
===Dumping===
-
'''Step 1''': First attempt to dump the ring protected disc in DIC/MPF using a compatible Plextor drive. This is to acquire information about the disc and generate logs, the actual dump does not matter and is not complete. If the dump does complete without errors, it is not a ring protected disc. During the dump, DIC may/should freeze once it reaches the sector that the ring protection starts. At this point, pause DIC by clicking into the console window (possible to do this in Windows 10 and Windows 11, probably doesn't work in Linux), and eject the disc from the drive. Afterwards, continue the DIC dump by pressing Enter in the console window. This allows DIC to skip the ring entirely as there is no disc in the drive. Once you believe DIC has passed all of that ring's protected sectors, pause DIC again, insert the disc, and wait for Windows to detect the disc. Once the disc has been detected by Windows it is safe to continue the DIC dump. Repeat for multiple rings. Once DIC is finished you will have generated logs for the disc containing information such as the offset and PVD. You might want to also try to dump the disc with DIC without using the /c2 parameter for an easier task.
+
'''Step 0''': First determine if your disc is actually ring protected. To do this, examine the data side of the disc and look for [https://web.archive.org/web/20220611141152if_/https://i.ebayimg.com/images/g/6l8AAOSwBxJgjOFU/s-l1600.jpg visible dark circle(s)]. If you are unsure, attempt a normal dump or post an image in the Redump forums for assistance.
 +
'''Step 1''': Before dumping, first we will acquire metadata for submission using DIC. Begin a normal dumping process with your DIC-compatible drive with /c2 disabled. When it encounters the ring errors (it'll get stuck) click in the console window to freeze the process. Eject the disc at this time, and then continue the DIC process by hitting enter. After 10000 or so sectors (it doesn't have to be precise), freeze the process again, re-insert the disc, and then start the process again. Allow DIC to finish normally at this time and save the output info and logs for later. If multiple rings are present, you may be required to do the eject method multiple times.
-
'''Step 2''': Move the disc over to the SOHD-167T drive, this will be used for the rest of the guide. Open CloneCD, select "Read to Image file," select the SOHD-167T drive at the top, select the "Protected PC Game" profile, and click Next. Save the IMAGE file wherever you'd like in an easy to access spot for future Command Prompt access. IMPORTANT: Put a checkmark where it asks to create a Cue-Sheet (.CUE) file, this is required for future steps. Allow CloneCD to finish dumping, this may take a while and may appear like it is making no progress, but let it continue. CloneCD will skip the ring protected sectors and generate a (nearly) complete dump. The drive will eject the disc on completion, remember to insert it back when the dump is complete.
+
'''Step 2''': Move the disc over to the SOHD-167T drive, this will be used for the rest of the guide. Open CloneCD, select the "Read to Image file" button, and select the SOHD-167T drive. Right click the "Protected PC Game" profile. Go to the "Error Handling" tab and disable all options including "Intelligent Bad Sector Scanner" and "Fast Error Skip Settings" then hit OK, select the profile, and proceed to the next screen. IMPORTANT: Check the box where it asks to create a Cue-Sheet (.CUE) file, this is required for future steps. Save the IMAGE file wherever you'd like in an easy to access spot for future Command Prompt access. Begin the dumping process at this time. Allow CloneCD to finish dumping, this will take a while and may appear like it is making no progress, but let it continue. CloneCD will skip the ring protected sectors and generate a (nearly) complete dump. The drive will eject the disc on completion, remember to insert it back when the dump is complete.
 +
'''Step 3''': Now we will be using ECCEDC.exe to detect what sectors have errors in our CloneCD IMG file. Open a Command Prompt in the location you placed ECCEDC.exe and run the following command:<br>
 +
''ECCEDC.exe checkex <location of IMAGE.'''cue''' file>''<br>
 +
ECCEDC.exe should have generated a log file (IMAGE.cue_EdcEcc_Track_1.txt). Open and search for the first line that says "2336 bytes have been already replaced at 0x55." The LBA of this line is your first ring sector. Scroll to the last uninterrupted instance and that is your last ring sector. Document this range somewhere, and repeat if there are multiple rings.
-
'''Step 3''': Open the CloneCD log after (or before) it finishes by clicking "Tool > Log ..." in the CloneCD window. The log will show what sectors were skipped but it may not be exact. To see what exact sectors are missing we will want to run the CloneCD IMAGE.IMG file through ECCEDC.exe. Open a command prompt window (Win + R, type CMD, Enter). Navigate to where you placed ECCEDC.exe and run the command: "ECCEDC.exe checkex <location of IMAGE.cue file>". ECCEDC will generate a log in that location (IMAGE.cue_EdcEcc_Track_1.txt), navigate to it and open it (it's recommend to use Notepad++ because the file is large and makes Notepad lag). Press CTRL + F to open the Find window and search for the first line that says "2336 bytes have been already replaced at 0x55". This is where the ring protection starts. Make a note somewhere of the sector this starts and ends in (It may only be one sector). Repeat for all rings. When you are done you should have a range that the ring protection covers (Ex. 215808-220474).
+
'''Step 4''': Open an elevated (admin) Command Prompt window where you placed CDArchive.exe and run the following command after filling in the required information:<br>
 +
''cdarchive.exe --mode=ext --extrdrive=<DriveLetter>  --extrstart=<FIRSTRingSector> --extrend=<LASTRingSector> --extroverread=0 --extrretries=100 --extrskip=1000 --extrdirection=<f or b> --extrdiscmode="cd" --extrsectdir="<SectorExtractionDirectory>" --extrrefcue="<PathToIMAGE.cue>"''<br>
 +
"SectorExtractionDirectory" is where the successfully read new sectors into the ring will be placed. "extrdirection" can be f for forward or b for backwards, supposedly the SOHD drive reads better backwards but this is unconfirmed. Once the command is run, CDArchive will attempt to read sectors at the edges of the ring protection (the end if you used b, the start if you used f). If CDArchive is not able to read a sector after multiple attempts, it is safe to assume that's all that can be read. The drive may get hot, if this happens give the drive a break, as it will not read as well when it is overheating. Attempt to read into the start and end of every ring present. When you are satisfied, move on to the next step.
 +
'''Step 5''': While still in the Command Prompt and navigated to where CDArchive.exe is, run the following command after filling in the required information:<br>
 +
''cdarchive.exe --mode=mer --merdiscmode=cd --mersrcdir="<SectorExtractionDirectory>" --meroutcue="<PathToIMAGE.cue>"''<br>
 +
This will merge all the newly acquired sectors by CDArchive into the CloneCD IMG. Copy all of the acquired sectors into your .ZIP DIC log file for staff examination.
-
'''Step 4''': Open an elevated Command Prompt window. In the Windows search bar, type "CMD", right click "Command Prompt" and click "Open as Administrator". Navigate in CMD to where you placed CDArchive and run the following command after filling in the required information:
+
'''Step 6''': IMPORTANT: Before starting this step, create a backup copy of the IMG, CCD, SUB, and CUE files. Store them somewhere safe as this step can compromise your dump. After that is done, open CDMage and drag your copy of the .CUE file into the window. Click the "Action" tab at the top, then "Scan For Corruption." Click Scan and allow CDMage to check all sectors. If none are repaired, you can delete your backup copy of the files and move to the next step. If any are repaired, save the file and the copies of the files become your new main files for the rest of the process. Please include a note in your submission if sectors were repaired with CDMage.
-
'''Template''':
+
'''Step 6.5''': (Only required if CDMage repaired any sectors) Open a Command Prompt and navigate back to ECCEDC.exe is placed. Run the following command on your CDMage repaired .CUE file:<br>
 +
''ECCEDC.exe fix <location of IMAGE.'''cue''' file>''<br>
 +
This will repair sectors corrupted by a CDMage bug (Sectors which are already filled with 0x55 pattern are edited to fill a reserved field with 0x00 value).
-
'''cdarchive.exe --mode=ext --extrdrive=<DriveLetter> --extrstart=0 --extrend=<LASTSectorOfRingProtection> --extroverread=0 --extrretries=50 --extrskip=1000 --extrdirection=b --extrdiscmode="cd" --extrsectdir="<SectorExtractionDirectory>" --extrrefcue="<LocationOfIMAGE.cue>"'''
+
'''Step 7''': Now we will be using ECCEDC.exe to gather updated ring sector ranges. Open a Command Prompt in the location you placed ECCEDC.exe and run the following command again:<br>  
 +
''ECCEDC.exe checkex <location of IMAGE.'''cue''' file>''<br>
 +
ECCEDC.exe should have generated a log file (IMAGE.cue_EdcEcc_Track_1.txt). Open and search for the first line that says "2336 bytes have been already replaced at 0x55." The LBA of this line is your first ring sector. Scroll to the last uninterrupted instance and that is your last ring sector. Document this range somewhere, and repeat if there are multiple rings. These are your final ranges and must be included in your Redump submission comments.
-
'''Example''':
+
'''Step 8''': If you have installed OpenHashTab, right click your latest IMG file and click "Hashes." OpenHashTab will generate new hashes for you to include in your !submissioninfo file and Redump submission.
-
'''cdarchive.exe --mode=ext --extrdrive=E --extrstart=0 --extrend=220474 --extroverread=0 --extrretries=50 --extrskip=1000 --extrdirection=b --extrdiscmode="cd" --extrsectdir="D:\CDArchive\Extracted" --extrrefcue="D:\Dumps\IMAGE.cue"'''
+
'''Step 9''': Submit the disc and all logs gathered to Redump normally. Include updated ring ranges in comments.
-
 
+
-
CDArchive will attempt to read sectors at the end of the ring protection. If CDArchive gets stuck on one sector after multiple attempts, you may move on to the start of the protection and attempt to read those sectors. Repeat for all rings. This process will likely take several hours. If your drive feels like it is overheating, give it a break and let it cool down. Hot drives don't work as well for reading sectors.
+
-
 
+
-
 
+
-
'''Step 5''': While still in the command prompt and navigated to where CDArchive is, run the following command filling in the required information:
+
-
 
+
-
'''Template''':
+
-
 
+
-
'''cdarchive.exe --mode=mer --merdiscmode=cd --mersrcdir="<SectorExtractionDirectory>" --meroutcue="<LocationOfIMAGE.cue>"'''
+
-
 
+
-
'''Example''':
+
-
 
+
-
'''cdarchive.exe --mode=mer --merdiscmode=cd --mersrcdir="D:\CDArchive\Extracted" --meroutcue="D:\Dumps\IMAGE.cue"'''
+
-
 
+
-
This will merge all the newly required sectors and complete the dump.
+
-
 
+
-
 
+
-
'''Step 6''': Before sending the dump informations to Redump, check the image file with the CDMage tool. If there's some errors, repair them. The yellow sectors only needs to be repaired, red sectors are empty and missing, because of the ring protection.
+
-
 
+
-
 
+
-
'''Step 7''': - it's necessary to use eccedc with parameter -fixex at the end of dumping process. This is needed because CDMage has a bug. If you attempt to repair all the sectors in an image, the sectors which are already filled with 0x55 pattern, they will be erroneously damaged by filling reserved field with 0x00 value (8 bytes IIRC). EccEcc with fixex command restores full 2352 bytes with 0x55 value. It's not a critical bug (images can be repaired at any time, but it's better to have it correct in first place).
+
===CDArchive Variables===
===CDArchive Variables===
Line 69: Line 65:
  --extrrefcue -> is for the CloneCD cue file related to the previous image file
  --extrrefcue -> is for the CloneCD cue file related to the previous image file
-
==DVD Dumping==
+
==DVD-ROM Dumping==
===Hardware Required===
===Hardware Required===
-
* Any DVD Drive (Unconfirmed)
+
* Any DVD-ROM Drive (Unconfirmed)
CDArchive is used for dumping Ring Protected DVDs. As it's explained [http://forum.redump.org/post/79852/#p79852 here] in the command line you'll have to use "--extrdiscmode=dvd" and a special cue file with this information:
CDArchive is used for dumping Ring Protected DVDs. As it's explained [http://forum.redump.org/post/79852/#p79852 here] in the command line you'll have to use "--extrdiscmode=dvd" and a special cue file with this information:

Revision as of 00:02, 14 September 2023

Ringed Discs have physical separators[1], preventing the disc to be properly dumped by typical means.

  • Note: this guide is not for Dreamcast / GD-ROMs which also have rings, see GD-ROM Dumping Guide.
  • Warning: This is a long process, make sure you have set aside adequate time before using this guide. Ring dumping is exceptionally difficult and can take multiple days of work.
  • This guide assumes you are using Windows and have basic Windows Command Prompt knowledge, if you are having difficulties, consult the Redump forums for assistance.

Contents

CD-ROM Dumping

Hardware Required

Tools Required

Dumping

Step 0: First determine if your disc is actually ring protected. To do this, examine the data side of the disc and look for visible dark circle(s). If you are unsure, attempt a normal dump or post an image in the Redump forums for assistance.

Step 1: Before dumping, first we will acquire metadata for submission using DIC. Begin a normal dumping process with your DIC-compatible drive with /c2 disabled. When it encounters the ring errors (it'll get stuck) click in the console window to freeze the process. Eject the disc at this time, and then continue the DIC process by hitting enter. After 10000 or so sectors (it doesn't have to be precise), freeze the process again, re-insert the disc, and then start the process again. Allow DIC to finish normally at this time and save the output info and logs for later. If multiple rings are present, you may be required to do the eject method multiple times.

Step 2: Move the disc over to the SOHD-167T drive, this will be used for the rest of the guide. Open CloneCD, select the "Read to Image file" button, and select the SOHD-167T drive. Right click the "Protected PC Game" profile. Go to the "Error Handling" tab and disable all options including "Intelligent Bad Sector Scanner" and "Fast Error Skip Settings" then hit OK, select the profile, and proceed to the next screen. IMPORTANT: Check the box where it asks to create a Cue-Sheet (.CUE) file, this is required for future steps. Save the IMAGE file wherever you'd like in an easy to access spot for future Command Prompt access. Begin the dumping process at this time. Allow CloneCD to finish dumping, this will take a while and may appear like it is making no progress, but let it continue. CloneCD will skip the ring protected sectors and generate a (nearly) complete dump. The drive will eject the disc on completion, remember to insert it back when the dump is complete.

Step 3: Now we will be using ECCEDC.exe to detect what sectors have errors in our CloneCD IMG file. Open a Command Prompt in the location you placed ECCEDC.exe and run the following command:
ECCEDC.exe checkex <location of IMAGE.cue file>
ECCEDC.exe should have generated a log file (IMAGE.cue_EdcEcc_Track_1.txt). Open and search for the first line that says "2336 bytes have been already replaced at 0x55." The LBA of this line is your first ring sector. Scroll to the last uninterrupted instance and that is your last ring sector. Document this range somewhere, and repeat if there are multiple rings.

Step 4: Open an elevated (admin) Command Prompt window where you placed CDArchive.exe and run the following command after filling in the required information:
cdarchive.exe --mode=ext --extrdrive=<DriveLetter> --extrstart=<FIRSTRingSector> --extrend=<LASTRingSector> --extroverread=0 --extrretries=100 --extrskip=1000 --extrdirection=<f or b> --extrdiscmode="cd" --extrsectdir="<SectorExtractionDirectory>" --extrrefcue="<PathToIMAGE.cue>"
"SectorExtractionDirectory" is where the successfully read new sectors into the ring will be placed. "extrdirection" can be f for forward or b for backwards, supposedly the SOHD drive reads better backwards but this is unconfirmed. Once the command is run, CDArchive will attempt to read sectors at the edges of the ring protection (the end if you used b, the start if you used f). If CDArchive is not able to read a sector after multiple attempts, it is safe to assume that's all that can be read. The drive may get hot, if this happens give the drive a break, as it will not read as well when it is overheating. Attempt to read into the start and end of every ring present. When you are satisfied, move on to the next step.

Step 5: While still in the Command Prompt and navigated to where CDArchive.exe is, run the following command after filling in the required information:
cdarchive.exe --mode=mer --merdiscmode=cd --mersrcdir="<SectorExtractionDirectory>" --meroutcue="<PathToIMAGE.cue>"
This will merge all the newly acquired sectors by CDArchive into the CloneCD IMG. Copy all of the acquired sectors into your .ZIP DIC log file for staff examination.

Step 6: IMPORTANT: Before starting this step, create a backup copy of the IMG, CCD, SUB, and CUE files. Store them somewhere safe as this step can compromise your dump. After that is done, open CDMage and drag your copy of the .CUE file into the window. Click the "Action" tab at the top, then "Scan For Corruption." Click Scan and allow CDMage to check all sectors. If none are repaired, you can delete your backup copy of the files and move to the next step. If any are repaired, save the file and the copies of the files become your new main files for the rest of the process. Please include a note in your submission if sectors were repaired with CDMage.

Step 6.5: (Only required if CDMage repaired any sectors) Open a Command Prompt and navigate back to ECCEDC.exe is placed. Run the following command on your CDMage repaired .CUE file:
ECCEDC.exe fix <location of IMAGE.cue file>
This will repair sectors corrupted by a CDMage bug (Sectors which are already filled with 0x55 pattern are edited to fill a reserved field with 0x00 value).

Step 7: Now we will be using ECCEDC.exe to gather updated ring sector ranges. Open a Command Prompt in the location you placed ECCEDC.exe and run the following command again:
ECCEDC.exe checkex <location of IMAGE.cue file>
ECCEDC.exe should have generated a log file (IMAGE.cue_EdcEcc_Track_1.txt). Open and search for the first line that says "2336 bytes have been already replaced at 0x55." The LBA of this line is your first ring sector. Scroll to the last uninterrupted instance and that is your last ring sector. Document this range somewhere, and repeat if there are multiple rings. These are your final ranges and must be included in your Redump submission comments.

Step 8: If you have installed OpenHashTab, right click your latest IMG file and click "Hashes." OpenHashTab will generate new hashes for you to include in your !submissioninfo file and Redump submission.

Step 9: Submit the disc and all logs gathered to Redump normally. Include updated ring ranges in comments.

CDArchive Variables

--mode -> Could be "ext" (extract) or "mer" (merge), to extract or merge sectors;
--extrdrive -> Drive Letter for SOHD-167T
--extrstart -> Start of sector range you want CDArchive to scan
--extrend -> End of sector range you want CDArchive to scan
--extroverread -> Read X amount of sectors before/after the range (Helpful for resetting drive to a "valid" state)
--extrretries -> Number of times CDArchive will attempt to read a sector before moving on
--extrskip -> Number of unread sectors until stopping, count resets upon successful sector read.
--extrdirection -> Can be "f" (Forwards) or "b" (Backwards) for which direction you want CDArchive to scan. Backwards is recommended.
--extrdiscmode -> Media type (CD or DVD)
--extrsectdir -> Folder where you will place the extracted sectors (remember to create this folder before running this application)
--extrrefcue -> is for the CloneCD cue file related to the previous image file

DVD-ROM Dumping

Hardware Required

  • Any DVD-ROM Drive (Unconfirmed)

CDArchive is used for dumping Ring Protected DVDs. As it's explained here in the command line you'll have to use "--extrdiscmode=dvd" and a special cue file with this information:

FILE "FILE.ISO" BINARY 
 TRACK 01 MODE3/2048
   INDEX 01 00:00:00 

See the CD Dumping section for command examples and templates.

Personal tools