Инструменты пользователя

Инструменты сайта


cd_rom

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
cd_rom [2026/10/21 16:52] – geckocd_rom [2026/10/21 17:34] (текущий) – gecko
Строка 1: Строка 1:
 ====== CD-ROM ====== ====== CD-ROM ======
  
-Для компакт-дисков используется стандартная файловая система ISO 9660. Данные размещаются в секторах формата CD-XA (Mode 2). Современные диски могут использовать расширенные файловые системы, поддерживающие длинные имена файлов и строчные буквы - PlayStation подобные возможности не поддерживает. Более того, контроллер CD-привода накладывает на стандарт дополнительные ограничения: имена файлов должны соответствовать формату 8.3 (как в MS-DOS), а количество файлов и каталогов на одном диске ограничено.+PlayStation оснащена CD-приводом двойной скорости. Пропускная способность - 150 KB/s или 300 KB/s в зависимости от режима скорости. Буфер данных составляет 32 KiB.
  
-В отличие от обычного CD, на одной дорожке диска CD-XA может располагаться самая разнообразная информация: данные, звук, видео. Каждый сектор имеет свой собственный формат: если это компьютерные данные, то сектор записывается в формате  Form 1 (2048 байт выделяется на пользовательские данные и 304 байта - под служебную информацию), если же это потоковые аудио- или видеоданные, то для сектора используется формат Form 2 (под пользовательские данные отводится уже 2324 байт, поскольку данные для коррекции ошибок отсутствуют, есть только контрольные байты для их обнаружения).+Для данных используется стандартная файловая система ISO 9660. Поддерживается только уровень 1: имена файлов ограничены форматом 8.3, как в MS-DOS (8 символов на имя, 3 на расширение, только прописные буквы), максимальная глубина вложенности папок - 8 уровней, фрагментация не допускается.
  
-===== Сектор =====+Данные размещаются в секторах формата CD-XA (Mode 2). В отличие от обычного CD, на одной дорожке диска CD-XA может располагаться самая разнообразная информация: компьютерные данные, звук, видео. В Mode 1 (стандартный CD-ROM) нельзя смешивать данные разного типа на одной дорожке. Mode 2 позволяет контроллеру на лету определять, куда отправлять информацию из сектора: видеопоток - на графический чип, аудиопоток - в звуковой вывод, обеспечивая синхронизацию. 
 + 
 +Каждый сектор имеет свой собственный формат: если это произвольные данные, то сектор записывается в формате Form 1 (2048 байт выделяется на пользовательские данные и 304 байта - под служебную информацию), если же это потоковые аудио- или видеоданные, то для сектора используется формат Form 2 (под пользовательские данные отводится уже 2324 байт, поскольку данные для коррекции ошибок отсутствуют, есть только контрольные байты для их обнаружения). 
 + 
 +===== Сектор Mode 2 ===== 
 + 
 +Структура сектора Mode 2 Form 1: 
 + 
 +  * 12 байт - код синхронизации: [0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00] 
 +  * 4 байта - заголовок (header) 
 +  * 4 байта - подзаголовок (sunheader) 
 +  * 2048 байт - полезная нагрузка (данные) 
 +  * 4 байта - EDC (контрольная сумма для проверки целостности данных) 
 +  * 276 байт - ECC ([[reed_solomon_code|код Рида-Соломона]] для коррекции ошибок) 
 + 
 +Mode 2 Form 2, который используется для потоковых мультимедиа-данных, отличается отсутствием блока коррекции ошибок: 
 + 
 +  * 12 байт - код синхронизации 
 +  * 4 байта - заголовок 
 +  * 4 байта - подзаголовок 
 +  * 2324 байт - полезная нагрузка (аудио- или видеоданные) 
 +  * 4 байта - EDC.
  
 ==== Подзаголовок (subheader) ==== ==== Подзаголовок (subheader) ====
  
-Структура подзаголовка выглядит следующим образом:+Подзаголовок состоит из 4 байт. Структура подзаголовка выглядит следующим образом:
  
-  * 1-й байт - номер файла (0x00..0xFF) +  * 1-й байт - для Form 2: номер файла (0x00..0xFF) 
-  * 2-й байт - номер канала (0x00..0x0F), биты 5-7 всегда должны быть равны нулю+  * 2-й байт - для Form 2: номер канала (0x00..0x0F), биты 5-7 всегда должны быть равны нулю
   * 3-й байт - подрежим (Submode):   * 3-й байт - подрежим (Submode):
     * бит 0 - конец записи (EOR). Устанавливается для всех дескрипторов тома, а также для всех секторов, являющихся концом файла - EOF     * бит 0 - конец записи (EOR). Устанавливается для всех дескрипторов тома, а также для всех секторов, являющихся концом файла - EOF
-    * биты 1, 2, 3 - видео, аудио, данные. Должен быть установлен только один из этих битов. Файлы формата STR помечаются как данные (а не как видео).+    * биты 1, 2, 3 - видео, аудио, данные. Должен быть установлен только один из этих битов. Файлы формата [[STR]] помечаются как данные (а не как видео).
     * бит 4 - триггер (для использования приложением)     * бит 4 - триггер (для использования приложением)
-    * бит 5 - формат (Form): 0 = Form 1 (данные объемом 0x800 байт), 1 = Form 2 (данные объемом 0x914 байт)+    * бит 5 - формат (Form): 0 = Form 1, 1 = Form 2
     * бит 6 - реальное время (RT)     * бит 6 - реальное время (RT)
     * бит 7 - конец файла (или конец каталога / таблицы путей / терминатора тома)     * бит 7 - конец файла (или конец каталога / таблицы путей / терминатора тома)
-  * 4-й байт - информация о кодировании (Coding Info). Для секторов данных этот байт равен нулю. Для секторов XA-ADPCM:+  * 4-й байт - информация о кодировании (Coding Info). Для секторов данных этот байт равен нулю. Для секторов [[XA|XA-ADPCM]]:
     * биты 0-1 - моно/стерео (0 = моно, 1 = стерео, 2-3 = зарезервировано)     * биты 0-1 - моно/стерео (0 = моно, 1 = стерео, 2-3 = зарезервировано)
     * бит 2 - частота дискретизации (0 = 37800 Гц, 1 = 18900 Гц, 2-3 = зарезервировано)     * бит 2 - частота дискретизации (0 = 37800 Гц, 1 = 18900 Гц, 2-3 = зарезервировано)
cd_rom.1792601577.txt.gz · Последнее изменение: — gecko

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki