Это старая версия документа!
Содержание
CD-ROM
Для компакт-дисков используется стандартная файловая система ISO 9660. Современные диски могут использовать расширенные файловые системы, поддерживающие длинные имена файлов и строчные буквы - PlayStation подобные возможности не поддерживает. Более того, контроллер CD-привода накладывает на стандарт дополнительные ограничения: имена файлов должны соответствовать формату 8.3 (как в MS-DOS), а количество файлов и каталогов на одном диске ограничено.
Данные размещаются в секторах формата CD-XA (Mode 2). В отличие от обычного CD, на одной дорожке диска CD-XA может располагаться самая разнообразная информация: данные, звук, видео. Каждый сектор имеет свой собственный формат: если это произвольные данные, то сектор записывается в формате Form 1 (2048 байт выделяется на пользовательские данные и 304 байта - под служебную информацию), если же это потоковые аудио- или видеоданные, то для сектора используется формат Form 2 (под пользовательские данные отводится уже 2324 байт, поскольку данные для коррекции ошибок отсутствуют, есть только контрольные байты для их обнаружения).
Сектор
Подзаголовок (subheader)
Структура подзаголовка выглядит следующим образом:
- 1-й байт - номер файла (0x00..0xFF)
- 2-й байт - номер канала (0x00..0x0F), биты 5-7 всегда должны быть равны нулю
- 3-й байт - подрежим (Submode):
- бит 0 - конец записи (EOR). Устанавливается для всех дескрипторов тома, а также для всех секторов, являющихся концом файла - EOF
- биты 1, 2, 3 - видео, аудио, данные. Должен быть установлен только один из этих битов. Файлы формата STR помечаются как данные (а не как видео).
- бит 4 - триггер (для использования приложением)
- бит 5 - формат (Form): 0 = Form 1, 1 = Form 2
- бит 6 - реальное время (RT)
- бит 7 - конец файла (или конец каталога / таблицы путей / терминатора тома)
- 4-й байт - информация о кодировании (Coding Info). Для секторов данных этот байт равен нулю. Для секторов XA-ADPCM:
- биты 0-1 - моно/стерео (0 = моно, 1 = стерео, 2-3 = зарезервировано)
- бит 2 - частота дискретизации (0 = 37800 Гц, 1 = 18900 Гц, 2-3 = зарезервировано)
- биты 4–5 - битность (количество бит на отсчет): 0 = стандартно/4 бита, 1 = 8 бит, 2–3 = зарезервировано
- бит 6 - предыскажение (Emphasis): 0 = обычный режим/выключено, 1 = включено
- бит 7 - зарезервирован (0)
Подзаголовок для обычных секторов данных обычно имеет вид [0x00, 0x00, 0x08, 0x00].
