
Сообщение от
FreemanZlat
Заметил, что PlayZX не читает многие tap/tzx (пример, новая Dizzy 8). Надеюсь, с этим плеером проблем не будет.
Также хочется, чтоб была возможность перематывать / выбирать блоки, с которых воспроизводить.
Я уже думал про блоки. Формат TZX имеет тип блока StopTheTape.
Но поскольку в тек реализации все конвертится в один Wav файл на этом этапе я могу только сделать паузу подлиннее.
Идея выливать ленту как группу файлов меня уже посещала. Здесь надо подумать, поскольку возникают сложности с проигрывателем.
- - - Добавлено - - -
Сейчас поддерживаются след блоки
Код:
switch (blockType) {
case 0x10:
return new StandardSpeedDataBlock(index, _reader);
case 0x11:
return new TurboSpeedDataBlock(index, _reader);
case 0x12:
return new PureToneBlock(index, _reader);
case 0x13:
return new PulseSequenceBlock(index, _reader);
case 0x14:
return new PureDataBlock(index, _reader);
case 0x20:
return new PauseOrStopTheTapeBlock(index, _reader);
case 0x21:
return new GroupStartBlock(index, _reader);
case 0x22:
return new GroupEndBlock(index, _reader);
case 0x30:
return new TextDescriptionBlock(index, _reader);
case 0x32:
return new ArchiveInfoBlock(index, _reader);
case 0x33:
return new HardwareTypeBlock(index, _reader);
default:
throw new ArgumentError(
'Unexpected type $blockType of block #$index');
}