Важная информация

User Tag List

Страница 4 из 5 ПерваяПервая 12345 ПоследняяПоследняя
Показано с 31 по 40 из 49

Тема: Портативный плеер для оцифровки кассет Специалиста

  1. #31
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Физика там простая - обычный манчестер. А логика еще проще: серия 0, потом все как описано тут. Так как свойство манчестера с самосинхронизацией позволяет получить как прямой так и инверсный код, то при приеме синхробайта если он был 0E6H, то все байты принимаются как есть, если он был 19H, то все байты перед сохранением инвертируются. Способ приема (подпрограмма загрузки вышеуказанных компов) следующий: ждем перепада, ждем константу загрузки, считываем бит. Повторяем. отличие режима поиска синхробайта от загрузки байта в следующем: при поиске синхробайта (счетчик бит 0FFH) подпрограмма после каждого принятого бита сравнивает с синхробайтом, а при загрузке байта (счетчик бит 08H) просто загружает 8 бит подряд. Из-за того, что при загрузке блока кодов между вызовами выгрузки байта есть несколько команд (увеличение указателей, сравнение на конец) то второй полупериод последнего бита в байте несколько удлинен. Поэтому звук раккорда (серия байтов 00H) слышится "рванной". Однако, при правильной синхронизации эти задержки попадают на аналогичные при загрузке файла и не влияют в реальном железе.

    ---------- Post added at 11:23 ---------- Previous post was at 09:25 ----------

    Отрезал чисто игру Adventures и собрал статистику по длительностям полупериодов:
    Код:
    Загружено 8639781 сэмплов (34559124 байт).
    Value:  9 Position: 26,895 Count: 1
    Value: 10 Position: 26,519 Count: 2
    Value: 11 Position: 41,316 Count: 2
    Value: 12 Position: 26,819 Count: 3
    Value: 13 Position:  5,684 Count: 519
    Value: 14 Position:  0,000 Count: 17059
    Value: 15 Position:  0,001 Count: 154455
    Value: 16 Position:  0,001 Count: 144395
    Value: 17 Position:  0,478 Count: 20661
    Value: 18 Position:  0,026 Count: 9768
    Value: 19 Position:  0,004 Count: 10190
    Value: 20 Position:  1,373 Count: 4492
    Value: 21 Position:  5,716 Count: 1798
    Value: 22 Position:  5,789 Count: 518
    Value: 23 Position: 29,255 Count: 3
    Value: 28 Position: 56,909 Count: 1
    Value: 29 Position:  1,399 Count: 243
    Value: 30 Position:  1,375 Count: 11584
    Value: 31 Position:  1,359 Count: 15509
    Value: 32 Position:  1,360 Count: 24446
    Value: 33 Position:  1,357 Count: 8902
    Value: 34 Position:  1,362 Count: 1651
    Value: 35 Position:  1,401 Count: 2915
    Value: 36 Position:  1,379 Count: 5813
    Value: 37 Position:  5,896 Count: 5037
    Value: 38 Position: 59,742 Count: 51
    Отчетливо видно, что граница между коротким и длинным у нас 23<LoadConst<28. Т.е., надежное число будет 25 или 26. Так же видны выпадающие из общей картины единичные полупериоды, попробую их проанализировать.

    ---------- Post added at 11:58 ---------- Previous post was at 11:23 ----------

    Подправил и вот что получил:
    Код:
    Загружено 8639781 сэмплов (34559124 байт).
    Value: 12 Position: 41,326 Count: 2
    Value: 13 Position:  5,684 Count: 520
    Value: 14 Position:  0,000 Count: 17061
    Value: 15 Position:  0,001 Count: 154457
    Value: 16 Position:  0,001 Count: 144398
    Value: 17 Position:  0,478 Count: 20663
    Value: 18 Position:  0,026 Count: 9770
    Value: 19 Position:  0,004 Count: 10189
    Value: 20 Position:  1,373 Count: 4490
    Value: 21 Position:  5,716 Count: 1797
    Value: 22 Position:  5,789 Count: 518
    Value: 23 Position: 21,480 Count: 1
    Value: 29 Position:  1,399 Count: 243
    Value: 30 Position:  1,375 Count: 11584
    Value: 31 Position:  1,359 Count: 15510
    Value: 32 Position:  1,360 Count: 24448
    Value: 33 Position:  1,357 Count: 8901
    Value: 34 Position:  1,362 Count: 1650
    Value: 35 Position:  1,401 Count: 2915
    Value: 36 Position:  1,379 Count: 5813
    Value: 37 Position:  5,896 Count: 5037
    Value: 38 Position: 59,742 Count: 51
    
    19L: 0000..79FF = 7712 : 766C
    19R: FFFF..79FF = 0000 : 79FF
    
    20L: 0000..79FF = 9BC1 : 766C
    20R: 0000..79FF = 6FD2 : 766C
    
    21L: 0000..79FF = C9AF : 766C
    21R: 0000..79FF = C8D7 : EDD8
    
    22L: 0000..79FF = 7E74 : 766C
    22R: 0000..79FF = 4A58 : EDD8
    
    23L: 0000..79FF = 4A58 : EDD8
    23R: 0000..79FF = 4A58 : EDD8
    
    24L: 0000..79FF = 4A58 : EDD8
    24R: 0000..79FF = 4A58 : EDD8
    
    25L: 0000..79FF = 4A58 : EDD8
    25R: 0000..79FF = 4A58 : EDD8
    
    26L: 0000..79FF = 4A58 : EDD8
    26R: 0000..79FF = 4A58 : EDD8
    
    27L: 0000..79FF = 4A58 : EDD8
    27R: 0000..79FF = 4A58 : EDD8
    Поведение на константах от 23 до 27 вполне предсказуемо. Ниже 19 и выше 27 файл не распознаваем.

  2. #31
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #32
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В общем, продолжу я кассету, а эту игру помечу как невосстановимая. Если на другой кассете она мне встретится - я ее сюда вставлю.

  4. #33
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Итак, третью кассету выложил, и тут же на следующей нашел ADVENTURE. Попробуем из нее вытянуть!

  5. #34
    Master
    Регистрация
    21.08.2006
    Адрес
    Ижевск
    Сообщений
    910
    Спасибо Благодарностей отдано 
    20
    Спасибо Благодарностей получено 
    272
    Поблагодарили
    149 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    ...в конце, где у Adventures идет чередование битов 1 и 0 (характерный тон для 55 или АА) в запорченном дубле идут непрерывно, а в более нормальном прерываются на какие-то данные. Т.е., дубли чем-то отличаются, возможно второй дубль выгружали после запуска игры и она себе что-то там нагадила.
    Скорее всего так и есть - "мониторная" сумма совпала, но сама прога ругается. Если пропустить проверку суммы внутри программы, то запускается.

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    ...на следующей нашел ADVENTURE. Попробуем из нее вытянуть!
    Сравним...
    Вложения Вложения

  6. #35
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от DDp Посмотреть сообщение
    Сравним...
    По звуку похоже на испорченный дубль, так что возможно даже оригинал. А чем "считал"?
    Последний раз редактировалось HardWareMan; 09.03.2014 в 15:51.

  7. #36
    Guru
    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    13,560
    Спасибо Благодарностей отдано 
    1,223
    Спасибо Благодарностей получено 
    1,754
    Поблагодарили
    683 сообщений
    Mentioned
    67 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    По звуку похоже на испорченный дубль, так что возможно даже оригинал. А чем "считал"?
    У него свои какие-то хитрые программы или способы, он не рассказывает)

  8. #37
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Обнаружена программа на бэйсике Service. Для понимания его формата я загрузил этот самый Сервис с другой кассеты вне очереди, прогнал ИДой, но так и не вкурил. Если у бэйсика Магика и практика тупо груз-им до 3х нулей подряд (первый 0 - конец строки и 2 следующих 0 это номер следующей строки, если он равен 0 то конец программы), а затем контролька, то у Сервиса контролек нет. Несколько раз распознал, что получилось то и воткнул в кассету.

    Опять этот RAMFOS. Кто-нибудь может внятно объяснить его принцип кодирования?

    Обманул я вас. Это не РАМФОС а Лэйаут. Библиотечка. У него походу свой формат, вот сижу и ковыряю.

    Судя по коду, кодировка полным периодом, как у Спектрума. Однако, каждый байт имеет старт-бит (длинный период), затем 8 бит данных, причем 1 кодируется длинным периодом, а 0 двумя короткими а в конце два стоп-бита 0 (т.е. 4 коротких периода). Таким образом, у каждого байта своя синхра. Попробую получить сырец.
    Последний раз редактировалось HardWareMan; 09.03.2014 в 21:47.

  9. #38
    Master
    Регистрация
    21.08.2006
    Адрес
    Ижевск
    Сообщений
    910
    Спасибо Благодарностей отдано 
    20
    Спасибо Благодарностей получено 
    272
    Поблагодарили
    149 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Лэйаут. Библиотечка. У него походу свой формат, вот сижу и ковыряю.
    Судя по коду, кодировка полным периодом, как у Спектрума. Однако, каждый байт имеет старт-бит (длинный период), затем 8 бит данных, причем 1 кодируется длинным периодом, а 0 двумя короткими а в конце два стоп-бита 0 (т.е. 4 коротких периода). Таким образом, у каждого байта своя синхра. Попробую получить сырец.
    Может не стоит так мучаться, а выложить wav?!
    Наверное, наоборот, длиный период - "0", два коротких - "1" (hint: "msx")

  10. #39
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от DDp Посмотреть сообщение
    Может не стоит так мучаться, а выложить wav?!
    Наверное, наоборот, длиный период - "0", два коротких - "1" (hint: "msx")
    Может. Я не знаю, откуда они Лэйаут вытянули. Держи ВАВку, сделай мне коды и я еще одну кассету положу. Кстати, Адвенчура считалась на ура, скорректирую предыдущую вместе с добавлением новой. http://hwm.mine.nu/LAYOUT.RAR
    И таки ты прав: 0 - длинный, 1 два коротких.
    Последний раз редактировалось HardWareMan; 09.03.2014 в 22:18.

  11. #40
    Master
    Регистрация
    21.08.2006
    Адрес
    Ижевск
    Сообщений
    910
    Спасибо Благодарностей отдано 
    20
    Спасибо Благодарностей получено 
    272
    Поблагодарили
    149 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Держи ВАВку, сделай мне коды и я еще одну кассету положу.
    Да, формат MSX.
    Возможно, "свой" формат заголовка: 0A 03 [10 символов имени] 00 00 00 00
    Скорость в тут 1450, у MSX - 1200.
    Во вложении бинарник в MSXном формате CAS
    и синтезированый из него WAV (скорость 1200).
    Вложения Вложения
    Последний раз редактировалось DDp; 10.03.2014 в 00:19. Причина: Напутал со скоростью. При скорости 1200 bps, "1" = 2400Гц.

Страница 4 из 5 ПерваяПервая 12345 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Оцифровки с кассет формата "Леший"
    от AlexFantasy в разделе Софт
    Ответов: 6
    Последнее: 20.08.2012, 10:26
  2. Портативный клон At Games 16-in-1
    от tnt23 в разделе SEGA
    Ответов: 13
    Последнее: 30.05.2012, 07:19
  3. Ответов: 41
    Последнее: 27.09.2006, 18:12
  4. Ответов: 12
    Последнее: 22.09.2006, 01:24

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •