Я сейчас работаю над этим. Первой задачей было выжать максимальную скорость из стандартного загрузчика ПЗУ. А теперь уже можно писать свой загрузчик. Пока что проблема в определении производительности: замеряю подпрограмму, она длится 80 тактов – вроде бы всё логично, по командам так и должно получаться. Заставляю эту же программу читать WAV (с частотой дискретизации вычисленной по формуле N*80) – съезжает синхронизация. Подгоняю частоту WAVа и оказывается что подпрограмма выполняется 82 такта. Как такое может быть – непонятно. Продолжаю исследования.
Update: Удалось добиться скорости 6066 бод - это в два с лишним раза быстрее, чем здесь: https://www.instagram.com/p/BwAfRFXjKJK/
Я пока не сверяю контрольную сумму, но на вид картинка грузится без ошибок. Проблема в том, что частоту дискретизации WAV я подобрал экспериментально (чтобы периоды настроечного тона считывались целое число раз), но эта частота никак не укладывается в целое число тактов процессора (84.6 тактов?!). Формулы нет. Всё наугад. Это чревато тем, что другая БК0010 может и не прочитать WAV с такой частой. Нужны добровольцы с БК0010 для тестов.





Ответить с цитированием