Ура, свершилось!!! Соберу свой "Океан". :v2_cheer:
Вид для печати
Ура, свершилось!!! Соберу свой "Океан". :v2_cheer:
А там есть печатная плата? Может собрать энтузиастов и заказать?
L Juriy, пожалуйста выложите все остальные записи касет для "океан 240", думаю b2m, скоро заэмулирует этот компьютер.
:mad_std: Это монитор не из комплекта Океана-240.2.
В файле tmo240.asm сообщение
************************************************** *
Turbo MONITOR Ver 2.0 for 13.11.93 (C)AZMaster"
************************************************** *
:smile:
В файле 0xE000_Monitor.bin сообщение
"HARDWARE MONITOR+ V1"
В моей комплектации монитор выводит сообщение
"240/7 MONITOR":smile:
Похоже существовало несколько мониторов:eek_std:
ну да... это сколько кода можно былоб запхнуть вместо этих звездочег...
Кто-нибудь писал Azmaster`у на мыло, задавал вопросы по поводу его реализации "Океана"?
По поводу монитора прояснить ситуацию могли бы дампы ПЗУ L Juriy`я, но к сожалению их пока нет... Можно было бы сравнить.
L Juriy, расскажите, если не трудно, происхождение "содержимого" ваших ПЗУ. Каков первоисточник?
KokaF77,
Куплена плата и содержимое ПЗУ на кассете в Томске в Политехническом институте у ребят. которые имели связи с разработчиками.
L Juriy, по странному стечению обстоятельств, печатка моего "Океана" тоже из Томска. :)
Написал на мыло Azmaster`у буду ждать ответа. Может он что-нибудь прояснит... :v2_conf2:
KokaF77, а у Вас есть чистая плата? Можете ее отсканировать с двух сторон?
Могу попробовать сделать скан печатки из журнала "МПСиС" в хорошем качестве, если необходимо.
L Juriy, можно Вас попросить оцифровывать с большей частотой дискретизации? Просто у Океана-240 довольно большая частота магнитофонной записи, и например при частоте дискретизации 44100Гц полупериоды будут в диапазоне 6-12 сэмплов, а порог, с которым сравнивается - где-то 9. А т.к. обычно длины полупериодов получаются плюс-минус один-два сэмпла, то даже при 44100Гц нет гарантии от ошибок. Что уж говорить про 22050Гц (это то, что было выложено для примера).
На данный момент в эмуляторе считывается то, что было в эмуляторе записано, а вот Ваша запись - нет.
Подтверждаю, "длинный" полупериод в вашей записи в среднем 5 сэмплов. С "коротким" еще хуже.
marinovsoft, я так понял, Вы пытались сконвертировать данные. Возможно, Вам будет полезна следующая информация:
- один бит кодируется одним полупериодом, 0 - короткий, 1 - длинный
- биты выводятся начиная с младшего
- байт синхронизации - F5, т.е. следующая последовательность: 10101111
- перед байтом синхронизации идёт байт 00, а перед байтом 00 четыре очень длинных полупериода (соответствует примерно 6,5 коротких или 3,5 длинных).
---------- Post added at 22:24 ---------- Previous post was at 22:16 ----------
И ещё, измерять нужно не ширину положительного или отрицательного полупериода, а расстояние между максимумами/минимумами.
b2m, как Вам сказать, наудачу попробовал прогнать через свою корветовскую утилитку. А форматец-то хитрый...
KokaF77, если можно, сделайте, пожалуйста, и отправьте мне на мыло gryphon1(a)bk.ru
b2m,
Вот тут запись что просили.
У меня оцифровано в стереоj на 44 и сохранено в формате FLAC.
Формат блока записи(по программе) следующий.
1 запись 5 с частотой 588 гц
2 запись 3 с частотой 588
3 запись 5 с частотой 588
4 запись 3 с частоой 588
......
запись F5 признак данных
запись FFFF или 0000
запись 128 байт из буфера
запись FFFF или 0000
запись 0
Примерно так.
Биты пишутся чередоваием 5 3 5 3 5 3 5 3 или 3 5 3 5 3 5 3 5
0 пишется частотой 4166
1 пишется частотой 2374
Да формат записи Фазоимпульсная модуляция.
К сожалению, опять промах - слишком громко. Максимумы и минимумы были "срезаны", а именно они играют важную роль в данном типе записи.
b2m,
Придется заново оцифровывать.
Оцифровывал как для РК86.
Ламерский вопрос, как эмулятору подсунуть этот файл?
Попробуй вот этот.
b2m, Уже нашел, спасибо.
Не читается, гоняю свои оцифовки.
Уже лучше. После небольшой конвертации стали появляться осмысленные буковки ("wwedite parametr"), даже имя файла один раз считалось KR04.BAS. Но ошибки чтения почти в каждом блоке. Непонятно, то-ли качество записи хромает, то-ли алгоритм перевода в еденички-нули...
b2m, А что за конвертация?
Файл был пребразован из стерео в моно, может здесь собака порылась.
Программа Audacity под Ubuntu. Я ею делаю все преобразования.
А варианта эмулятора под Linux не найдется ?
А то запускаю в виртуал боксе.
L Juriy, выкладывайте файл в таком виде, как он был записан. Дополнительные преобразования b2m сделает сам при необходимости. Следите, чтобы не было сильного клиппинга при записи, и чтобы средний уровень не был очень малым. ИМХО, на -5Дб будет норм.
Варианта для линуха нет, и ближайшее время не будет.
Моно-стерео роли не играет, других преобразований желательно не делать.
Конвертация простая: ниспадающий сигнал преобразуется в уровень, соответствующий нулю, возрастающий - еденице. Таким образом можно без изменения эмулятора проверить версию об алгоритме преобразования сигнала в нули/еденицы. Пока не очень удачно, непонятно почему.
---------- Post added at 20:44 ---------- Previous post was at 20:03 ----------
М-да. Если измерять расстояние между экстремумами, то встречаются нули по 9 сэмплов, и еденицы по 10 сэмплов. Через эмулятор это явно не пройдёт, слишком уж тонкая эта грань. Можно попытаться конвертор замутить, формат-то уже известный, но и там нет гарантий от ошибок. Такое чувстро, запись всё-же пострадала от времени. В программе ширина полупериодов достаточно сильно отличается для нуля и еденицы (360 и 660 тиков таймера), почти в два раза. Если принять за середину 9 сэмплов, то нули и еденицы должны быть 6-7 и 11-12 сэмплов.
L Juriy, а на реале часто ошибки чтения были?
b2m, На плохих кассетах встречались, а так в основном стабильно было.
Обычно на касету писал по два раза.
Касета 4 похоже сильно пострадала, а вот на ней то и должны быть монитор и все стальное.
b2m, а можете для таких тупых как я подробнее объяснить формат кодирования "1" и "0", с обозначениями на идеальной сигналограмме. Например, для Корвета я описывал формат так http://marinovsoft.narod.ru/korvet/basic_korvet.pdf
marinovsoft, Постом выше я писал как кодируется 1 и 0.
В описании Океана пишут следующее:
При фазоимпульсном способе записи логическая информация кодируется интервалами между переходами сигнала из одного логиского состояния в другое. Таким образом, при считывании данных задача состоит в том чтобы с минимальной погрешностью измерять временные интервалы между пиками воспроизводимого сигнала.
Рисунок можно посмотреть в журнале МПСС №4 за 1986г стр.78
Вот и вся информция.
При считывании используется прерывание от 53 счетчика
который предварительно программируется на осчет.(временной интервал).
Это уже из прогпаммы чтения в мониторе.:redface:
Измеряем время (количество сэмплов) от минимума до максимума, если меньше 9 (при 44100Гц) то ноль, больше - еденица. Далее от текущего максимума до следующего минимума, и т.д. Короче, расстояние между соседними минимумом и максимумом определяет значение бита.
уважаемые, извините за ламерский вопрос: а наклон головки регулировался (для достижения максимальной звонкости)?
да, и лучше аплоудить файлы всё-таки в стерео, нестабильность (перекосы) ленты не так будут влиять на АЧХ.
нифигасебе магнитофонный узел у океана ...
tape out - 3bit DAC (mpss86-05 p73 dd67 C0-C2)
tape in - тоже 2 бита на вход (D78 b2-b3)
аппаратный фильтр 10khz
амплитудный детектор
т.е. в этом режиме он аппаратно детектирует пики ...
и нужо только длительности посчитать
и скорость 6000бод
+ "детектор межблочных промежутков" (87_3_85)
2b2m: простой 0/1 детектор не покатит :)
по крайней мере для ФИМ
Ну дык, океанологи делали :)
Они ещё и для измерения промежутков времени используют третий режим таймера, который обычно для формирования меандра используется.
А трёхбитный DAC всё равно как однобитный используется (выводится 3 и 5, только лишь в конце устанавливается 4). А вход тоже однобитный, второй бит используется только как детектор паузы (и то в драйвере не используется).
Можно конвертор для обкатки получить?:v2_wink2:
Вот, пожалуйста. Но учти, запускать исключительно с двумя параметрами: входной .wav файл и выходной файл. В качестве входного может быть только wav 44100Гц моно 16 бит. Никаких сообщений программа не выдаёт (это просто тестовая программка).
Увы блин, плохие новости.
На всех своих оцифрованных, по по новому касетах, я так и не нашел монитора
для своего Океана. Остались только распечатки.
Вариант еще считать с РФ4, но пока промблема с программатором.
Сам Океан не запускается, и есть подозрение именно из-за этой РФ ки с монитором.
Один раз уже такое было, пока не перепрошил не запускался.
Коввыряю дальше.
А нельзя ли распечатки отсканировать, почистить и от-OCR-ить? а потом как-нибудь сконвертировать в бинарники, наваяв скриптец.
tnt23, Так и придется сделать.
Правда распечатка на DZM-180 была сделана.
Качество не фонтан.
Короче не быстро.