Дампинг дисков

 

Чтобы сделать дамп

1. Нужны пиратские диски для PS1. Если у вас есть хотя бы один, вы в деле!

2. Рабочий привод с большим позитивным офсетом. А лучше два, причём от разных производителей. Если второго нет, вам придётся сходить в магазин и купить его. Шучу. Впрочем, если есть возможность повторно сдампить игру на резаке друга, соседа, любовницы, воспользуйтесь ею (возможностью, а не любовницей, хотя одно другому...).

3. Некоторые программы, а именно IsoBuster, Exact Audio Copy V0.99 prebeta 5 и CDMage. Также могут понадобиться CloneCD и psxt001z.

4. И самое главное - желание разобраться, как это делается.


Приступая к работе

Прежде чем совать диск в привод, его нужно хорошенько очистить. Однако, если вы не знаете, как это правильно делается, оставьте эту затею, чтобы в итоге не остаться с куском пластика на руках, который можно выбросить в форточку.

Сначала нужно определить, является игра моно- или мультитрековой. Оригинальные версии могут служить ориентриом лишь отчасти, поскольку для пиратов законов не существует, они по им одним известным причинам могли как выкинуть родные треки (чаще всего жертвой оказывался так называемый dummy track), так и впихнуть совершенно левые. Первый Dino Crisis хороший тому пример. Сборники - отдельный разговор.

Вставьте диск в дисковод и запустите IsoBuster. В левом окне (сразу под маркой вашего привода) отображено количество треков в игре. Видите ноту в кружочке на изображении ниже? Это означает, что игра мультитрековая. Если не видите (не на этом изображении, разумеется), значит, однотрековая. Музыкальных треков может быть сколько угодно.


Дампинг однотрековых игр

В данном случае всё просто - щёлкаете правой кнопкой мышки на Track 01, затем выбираете Extract Track 01 и Extract RAW Data (2352 bytes/block) (*.bin, *.iso). Если же в процессе возникнут ошибки чтения (если диск находится в неудовлетворительном состоянии, этого стоит ожидать) и появится окошко с выбором пропустить/заменить нечитаемые сектора, лучше отказаться и сделать другую попытку, перезапустив IsoBuster и/или заново вставив диск. В настройках можно выставить, чтобы образы по умолчанию создавались в формате .bin. Для этого в Options > GUI > Image Files > ISO / BIN / TAO нужно убрать галочку с Default to *.ISO file extension instead of *.BIN. Неважно, какой формат вы предпочтёте, на выходе получится абсолютно одинаковый файл, только с разными расширениями. Идельным вариантом было бы снимать дампы дважды, используя при этом разные приводы.

После извлечения дамп желательно проверить на ошибки с помощью CDMage. Запустите программу, нажмите File > Open... и выберите Track 01. Существует два способа открыть образ - с файлом разметки и без. В первом случае выбирается *.cue (или *.ccd), остальное подхватывается автоматом, но поскольку при извлечении первого трека файл cue sheet не создаётся, нужно открыть трек напрямую. CDMage уточнит, какой именно тип образа открывается, выберите второй пункт - M2/2352 track (*.bin;*.tao;*.iso;*.img;*.bwi). Затем Action > Scan For Corruption.

Если программа выдаст сообщение "Image has no errors.", значит, скорее всего, всё в порядке (плохие дампы без ошибок чтения встречаются нечасто). Если же в образе присутствуют ошибки (чаще всего повреждаются звуковые (*.XA) и видео (*.STR) файлы), диск стоит сдампить и проверить повторно. В случае "естественных" ошибок контрольные суммы обоих дампов совпадут, если же они вызваны внешними факторами, контрольные суммы будут отличаться. В последнем случае получится плохой дамп, и снять хороший, скорее всего, не удастся. И хотя это могут быть некритичные ошибки, исправление которых превращает плохой дамп в хороший, утверждать это наверняка можно лишь при наличии хорошего дампа. Так же настойчивость порой творит чудеса и всегда остаётся шанс снять правильный дамп с энного раза.


Дампинг мультитрековых игр. Часть первая. Настройка.

Дампинг мультитрековых игр занимает больше времени и требует больше внимания, ибо напортачить очень просто, особенно новичку. На форуме redump.org время от времени случаются вбросы по поводу того, что способ снятия дампов с помощью Exact Audio Copy устарел. Не знаю, может у местных дамперов на компе по два Plextor-а стоит, но насколько велики шансы, что у среднестатического пользователя, который захочет помочь проекту psxforever, сыщется хотя бы один? EAC же доступный и относительно простой способ снять правильный образ со своего мультитрекового диска.

Запустите EAC и отмените мастера настройки. Выберите Параметры EAC и во вкладке Общие смените язык на английский. Поскольку я предпочитаю английский интерфейс, то и настройка будет плясать от него. Потом можете поменять обратно, хоть на русский язык, хоть на упрощённый китайский.

В выпадающем списке вверху слева выберите дисковод, для которого будет осуществляться настройка. Настраивать нужно каждый привод, если у вас он не один. Виртуальные приводы не понадобятся.

Выберите EAC > EAC Options... (или нажмите F9) > Extraction.

Уберите галочку с "No use of null samples for CRC calculations".
Также во вкладке "Error recovery quality" выберите "High".

EAC > Drive Options... (или F10) > Extraction Method.

Кликните на "Detect Read Features" и дождитесь окончания процесса.
В "Secure Modes" выберите " Secure Mode".

EAC > Drive Options... > Offset / Speed

Поставьте галочку на "Overread into Lead-In and Lead-Out".

EAC > Drive Options... > Gap Detection

Во вкладке "Gap/Index retrieval method" выберите "Detection method A".
Во вкладке "Detection accuracy" выберите "Secure".

EAC > Compression Options... (или F11) > Waveform

Во вкладке "Wave format" выберите "Microsoft PCM Convertor".
Во вкладке "Sample format" выберите "44,100 kHz; 16 Bit; Stereo".
Поставьте галочку на "Do not write WAV header to file".
Под "File extension for headerless files" вместо ".raw" введите ".bin"

Конфигурация закончена. Осталось узнать офсет чтения своего привода на сайте Accuraterip. Без этой информации вы можете сделать что угодно, даже отыскать Эльдорадо, только не снять правильный дамп мультитрековой игры с помощью IsoBuster и EAC.


Дампинг мультитрековых игр. Часть вторая. Извлечение треков.

Дампинг мультитрековых игр включает в себя два основных этапа - извлечение первого трека (содержащего данные игры) и извлечение аудиотреков (содержащих музыку, речь, звуки, а порой и тишину).

Перед тем, как начать работу с IsoBuster, нужно определить прегап первого аудиотрека с помощью EAC. Вставьте диск в дисковод, запустите программу, выберите Action > Detect Gaps (или F4).

90% мультитрековых игр или около того имеют двухсекундную паузу (те самые 150 секторов, которые так любят залечивать ламеры). В некоторых играх может встечаться пауза продолжительностью 1.74 секунд (149 секторов). Если вдруг вам встретится 1.74, существует большая вероятность того, что диск поцарапан или загрязнён, и прога просто не может правильно определить прегап. В таком случае попробуйте очистить диск и/или перезапустите EAC и повторите действие, обычно помогает. Если аудиотреков много, и 1.74 скачет от трека к треку, это верный признак того, что с диском имеются проблемы. В таком случае определяйте прегап до тех пор, пока он не станет равным 2. Без этого правильно извлечь аудиотреки не получится. Также паузы можно узнать с помощью CloneCD, который снимает образы лучше любой другой подобной утилиты (увы, с учётом офсета чтения каждого конкретного привода). Если аудиотрек всего один, для определения паузы по-любому придётся использовать CloneCD, поскольку у EAC с этим делом имеются некоторые трудности. Вообще, как можно заметить, все проги с изъянами, но использование их в комплексе позволяет получить идеальный дамп.

Итак, предположим, что все паузы оказались равны 2.00 (150 секторов) и у нас имеется привод с офсетом чтения 667 (один из самых распространённых офсетов приводов, если не ошибаюсь).

Запустите IsoBuster, щёлкните правой кнопкой мышки на Track 02 и выберите Sector View. Откроется окно, напоминающее hex-редактор.

Нас интересует число в окошке слева от RAW (справа от LBA), в данном случае оно равно 74218. Из него нужно вычесть 149 (на 1 меньше, чем число секторов паузы). Время вспомнить арифметику или воспользоваться калькулятором (второе предпочтительнее). Получим число 74069.

Введите его в окошко. Должны показаться двоичные данные, которые нужно посчитать. В каждом ряду 16 байт, каждые 4 байта составляют один сэмпл, соответственно 1 полный ряд это 4 сэмпла.

В нашем случае мы имеем 14 полных рядов (14 * 4 = 56 сэмплов) + четыре байта (1 сэмпл) в последнем, неполном ряду. Итого 57 сэмплов.

Нажмите на левую красную стрелочку, привод должен отреагировать и выдать сообщение, выберите Пропустить и посмотрите, чем заполнен 74068 сектор, это могут быть как нули, так и двоичные данные. Если двоичные данные занимают сектор полностью (у нас именно такой случай), значит, к полученной раннее сумме сэмплов нужно прибавить ещё 588 (если частично, считайте, только очень внимательно). 57 + 588 = 645. 645 - это наш комбинированный офсет в данном конкретном случае, на приводе с другим офсетом чтения получится другое значение, как и в случае с другой игрой на этом.

Зная комбинированный офсет, легко вычислить офсет записи, используя следующую формулу:

Офсет записи = Комбинированный офсет - Офсет чтения

При этом значения могут быть отрицательными или положительными, так что важно следить за вычислениями. В нашем случае это -22.

-22 = +645 - +667

Закройте окно с бинарными данными, щёлкните правой кнопкой мышки на Track 01 > Extract From-To. В строку Length (LBA) вбейте число 74068 и нажмите Start Extraction. Это нужно для того, чтобы избавиться от гапа, который глупенький IsoBuster присобачивает в конце первого трека, отчего файл будет большего размера (на 352800 байт). Такой же неправильный увеличенный первый трек можно получить, если просто щёлкнуть правой кнопкой мышки по Track 01 > Extract Track 01 > Extract RAW Data. Внизу обязательно должен быть выбран пункт Raw data.

Первый трек успешно извлечён! Следующий шаг - извлечение аудиотреков. Полученный комбинированный офсет (напомню, что для каждого диска его нужно определять заново, даже если он уже есть в базе) введите в окошко Offset / Speed в Drive Options... под "Use sample offset correction".

Выберите Action > Detect Gaps (или нажмите F4) и "Append Gaps To Next Track". Затем выберите Action > Test & Copy Selected Tracks > Compressed (или нажмите Shift+F6) и нажмите Сохранить. В зависимости от количества/размера аудиоданных, состояния диска/привода, магнитных бурь на Солнце и курса доллара, время извлечения может существенно варьироваться.

После того, как все треки будут извлечены, последовательно нажимаете OK/Create Log/Сохранить/OK. Последний штрих - выберите в меню Action > Create CUE Sheet > Current Gap Settings...

Дампинг игр, где присутствует один дататрек и один аудиотрек, производится аналогичным образом. Однако EAC имеет баг с определением гапа в таких дисках. Недостающие байты тишины нужно добавить в начало второго трека с помощью утилиты psxt001z. Для этого проще всего воспользоваться батником. Если каким-то невероятным образом вы до сих пор не обзавелись хотя бы одним (который выполнял бы за вас по клику нудную и однообразну работу), самое время приобщиться к этому чуду.

Создайте новый текстовый файл, впишите/скопируйте внутрь строки приблизительно такого содержания:

@echo off
cls
psxt001z.exe --gen pregap.bin 352800
copy /b pregap.bin + Track02.bin PerfectTrack02.bin

Названия файлов могут отличаться, это не принципиально. Сохраните файл и смените его расширение на .bat. Поместите psxt001z, батник и аудиотрек в одну папку и запустите батник. Вуаля!

На этом ВСЁ! Если где-то были допущены неточности или опечатки, или просто непонятны некоторые моменты, пишите.