BYTEMAN, не забудь сделать 2 режима скорости записи - нормальный и турбо.
BYTEMAN, не забудь сделать 2 режима скорости записи - нормальный и турбо.
УКНЦ, ДВК-3, Ленинград-1 (48 кб)
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Турбо - это в 2 раза быстрее?
С уважением, Александр.
Scorpion ZS-256 Turbo+ GMX-2048
SID-Blaster/ZX
Музей ретрокомпьютеров в Минске!
Здесь ничего нет => http://byteman.by
И здесь тоже --->>> http://bytespace.by
А вот кол-во битов во втором пилот-тоне по барабану, главное что бы не мало было (не менее 300). Начало данных определяется по биту "0", т.к. байт в любом случае начинается им, так что их там и более 2000 может быть. Ищет бит "0" подпрограмма по адресу 130336, и счетчика ожидания там нет, производит поиск долго и упорно, если только не будет ошибки чтения или не нажмут "СТОП".
Сейчас я по умолчанию использую частоту дискретизации 22050.
Можно ли для турбо просто в загаловке файла прописать частоту 44100? Или импульсы раскачигарки надо оставлять такие, какие в нормальном режиме?
---------- Post added at 11:47 ---------- Previous post was at 11:46 ----------
Может быть я неправильно что-то сделал, но когда я ставлю 2000, то сразу после пилота (когда начинаются данные) идёт щелчок из динамика - загрузка начинается сначала.
С уважением, Александр.
Scorpion ZS-256 Turbo+ GMX-2048
SID-Blaster/ZX
Музей ретрокомпьютеров в Минске!
Здесь ничего нет => http://byteman.by
И здесь тоже --->>> http://bytespace.by
Интересно - а можно ли скормить загрузчику УКНЦ образ ленты для PDP с RT-11 (или другой системой)?
УКНЦ, ДВК-3, Ленинград-1 (48 кб)
Arseny, у меня вопрос - не пробовал на УКНЦ записывать с повышенной скоростью?
У меня со скоростью 2400 не получилось, происходил срыв записи (ошибка записи бита). Все дело в том, что драйвер магнитофона написан не очень рационально, используется много вызовов подпрограмм, что сильно замедляет работу. Фактически там работают два потока - один фоновой подготавливает очередной бит, проверяет нажатие на "СТОП", а другой - вызывается по прерываниям от программируемого таймера и записывает очередной подготовленный бит. Когда записывается последний импульс бита счетчик импульсов сбрасывается и первый должен подготовить очередной бит и установить счетчик импульсов, но при скорости записи 2400 не успевает это сделать.
Скорость записи определяется содержимым ячеек 23304 (длина импульса бита "0") и 23306 (длина импульса бита "1"). Соответственно значение 23306 должно быть в 2 раза меньше значения 23304.
Для одинарной скорости 1200 бод:
23304 - 320
23306 - 150
Для двойной скорости 2400 бод:
23304 - 150
23306 - 64
У меня получалось записывать побыстрее, где-то посередине между 1200 и 2400.
Программа TAPE об ошибке записи не сообщает.
---------- Post added at 13:05 ---------- Previous post was at 13:00 ----------
Происходит ошибка чтения. Можно прервать нажатием "СТОП" (придется жать быстро раз десять), а потом нажатием "Пробел" исполнить загрузчик в пошаговом режиме. Когда будет команда на загрузку (курсор перестанет мигать) скормить данные и при выходе из загрузки посмотреть ячейку ОЗУ ЦП 1110, там в младшем байте будет код ошибки.
С уважением, Александр.
Scorpion ZS-256 Turbo+ GMX-2048
SID-Blaster/ZX
Музей ретрокомпьютеров в Минске!
Здесь ничего нет => http://byteman.by
И здесь тоже --->>> http://bytespace.by
Вряд ли, ленточные устройства то же были блочными. Те же CT: и MT: могли
по командам перематываться вперед-назад и читать нужные блоки данных.
Но существовала ПЛОС - перфоленточная операционная система, вот ее может и можно приспособить.
---------- Post added at 13:11 ---------- Previous post was at 13:10 ----------
Да. Сперва исполняется программа загрузки из системного ПЗУ, которая копируется в ОЗУ ЦП. Вот она и прерывается.
Хорошо. Код ошибки вечером сообщу. Думаю сегодня уже доделать сохранение основного блока. Возможно, уже завтра выложу работоспособную версию.
зы. Я как всё делал: я взял wav-файл от УКНЦ уже готовый (брал UKNC_CAT.wav). Вырезал из него образы для бита 1, бита 0 и импульсов раскачигарки. Нормализовал до уровня -1dB, подровнял немного. Вставил полученные семплы в программу. Написал процедурку ByteWrite и WordWrite. Ну и процедуру для заполнения загрузчика в соответствии с входным SAV.
---------- Post added at 12:19 ---------- Previous post was at 12:18 ----------
Поэтому будет сложно реализовать режим ТУРБО с коэфф. не кратным 2^n.
С уважением, Александр.
Scorpion ZS-256 Turbo+ GMX-2048
SID-Blaster/ZX
Музей ретрокомпьютеров в Минске!
Здесь ничего нет => http://byteman.by
И здесь тоже --->>> http://bytespace.by
Проблема решена. 2000 работает нормально.
Вот выложил то, что пока есть. О багах отписывайтесь пожалуйста здесь, или на мыло sash-a(тяф)nm(тчк)ru.
http://sash-a.nm.ru/SAV2WAV.exe
С уважением, Александр.
Scorpion ZS-256 Turbo+ GMX-2048
SID-Blaster/ZX
Музей ретрокомпьютеров в Минске!
Здесь ничего нет => http://byteman.by
И здесь тоже --->>> http://bytespace.by
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)