формат данных Q-подканала
Рис. 1.8. унок 8 0x021 Формат данных Q-подканала[Y33] [n2k34]
Поле Control определяет содержимое трека (аудио или данные), количество аудиоканалов (стерео или квадро), а так же указывает разрешается ли копировать данные или нет. В частности, последовательность "0110" обозначает, что в пользовательской части сектора (user-data) записаны цифровые данные и их копирование не возбраняется. Напротив, последовательность "0100" запрещает копирование данных с диска. Другими словами, если третийпервый слева, считая от нуля, т. е. 2 бит установлен, то копирование разрешено и, соответственно, запрещено, если сброшеннаоборот. Забавно, но большинство пишущих приводовсцов всегда сбрасывает этот бит в ноль, даже если на диск записываются файлы, созданные самим пользователем. Впрочем, копировщики (в том числе и штатные) целиком и полностью игнорируют эти нелепые запреты, а потому конечный пользователь даже не догадываться о том, каких проблем он избежал!
Поле q-Mode определяет формат представления данных в поле q-Data и для подавляющего большинства CD-ROM дисков оно равно единице.
Поле q-Data в режиме q-Mode == Mode 1 состоит из девяти однобайтовых полей, содержащих информацию о секторе (остальные режимы в силу их экзотичности не рассматриваются):
q TNO (Track Number) —– содержит в себе номер текущего трека (см. "трек"), принимающий значения от 01 до 99; магическое число 0xAA указывает на трек Lead-Out(см. "lead-out");
q INDEX —– содержит в себе индекс текущей секции внутри текущего трека: 00 – указывает на паузу, значения от 01 до 99 идентифицируют секцию с полезными данными; однако в настоящее время эта возможность не используется и индекс секции всегда равен либо нулю (audio-pause), либо единице (actual data); индекс трека Lead-Out должен быть равен нулю;
q MIN, SEC, FRAC —– время, проигрывания сектора от начала текущего трека (минуты: секунды: фреймы секунды [Y35] [n2k36] соответственно), так же называемое относительным временем проигрывания;
q ZERO —– это поле должно всегда быть равно нулю;
q A-MIN, A-SEC, A-FRAC —– время проигрывания диска от начала области данных (минуты: секунды: фреймы секунды соответственно), так же называемое абсолютным временем проигрывания.;
Поле CRC содержит контрольную сумму содержимого Q-канала подкода и вычисляется по следующему полиному G(x) == x16+x12+x5+1;