User Tag List

Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 20 из 20

Тема: вопрос к SMT по исходникам анрила

  1. #11

    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    похоже, спектрум нашёл и прочитал данные. вероятно, ошибка в загрузчике TRD-файлов, который сформировал неверные CRC для секторов (можно загрузить и сразу выгрузить в формате UDI, а потом сравнить с windows-версией). однако CRC для адресных меток сформированы верно (63,9B для 6-го сектора)

  2. #12

    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    вернее, дело не в CRC (она, похоже, верная), а в том, что спектрум не нашёл код #10 в нужном месте системного сектора диска. либо TRD такой (c чистым 9-м сектором disc error - правильное поведение), либо данные не доходят до процессора из образа диска. всё равно проверь загрузчик TRD

  3. #13

    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SMT
    GriV, слишком общий вопрос. всё равно, что рассказать "из каких соображений" телевизор показывает картинку. развёрнутый ответ сейчас не могу дать
    Хорошо я подожду, но мне очень нужен этот ответ.
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  4. #14

    Регистрация
    10.05.2005
    Адрес
    Москва
    Сообщений
    715
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    оооо, точно, блин, вот же я идиот -- сплошные нули читаются ^____^
    нелюбовь к глобальным переменным меня подвела -- распихивая их по классам, не обратил внимания на конструкцию
    memset(this, 0, sizeof(FDD));

    короче, победа, РАБОТАЕТ! надо еще проверить разные загрузчики, и тп, и тд, но в целом можно сказать, что альфа-версия порта модуля эмуляции ВГ93 из UnrealSpeccy под линукс готова!

  5. #15

    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от GriV
    но мне очень нужен этот ответ
    это зачем "очень"?

    сейчас буду говорить много банальностей, умных прошу не читать ^_^

    итак, саундблястер играет звук идёт не непрерывным потоком, а небольшими буферами, состоящими из семплов, для удобства (у меня) по времени равными 1 кадру (1/50 сек.)

    имеем на входе переключение бита 4 в порту #FE в некоторые моменты в течение эмулируемого кадра, а на выходе хотим буфер со звуковыми сэмплами. если частота оцифровки 48khz, то размер буфера длиной в кадр равен 48000/50=960 семплов. теперь, задача, как заполнить этот буфер

    предположим, что в начале кадра (пентагон, 71680 тактов в кадре) состояние #FE было 0. а через 5000 тактов туда выведена 1, потом через 5000 тактов - опять 0, и т.д. (тон в 700 герц). тогда, очевидно, нужно начало буфера заполнить 0 до семпла номер 66 (5000/71680*960 - пропорция такая), потом от семпла 67 до семпла 133 (второй вывод на такте 10000, соотв. номер семпла 10000/71680*960) некоторым ненулевым значением, зависящим от установленной громкости спикера

    и так до конца буфера

    когда буфер готов, он ставится в очередь звуковой карты на проигрывание (таким образом, в текущий момент практически во всех эмуляторах играют буферы от прошлого и даже, более вероятно, позапрошлого или поза- поза- прошлых кадров, но приходится с этим мириться в обмен на другие прелести эмуляторов)

    в реальности мы видим, что из-за погрешностей округления при расчётах позиции семпла смены уровня, расстояния между фронтами в буфере не одинаковые, поэтому (и ещё по паре причин) возникают паразитные частоты (т.н. альясинг). что это такое и как с ними бороться, написано в любом более-менее уважающем себя учебнике по ЦОС, лучше мне и не сказать. рекомендую http://dsp-book.narod.ru

    ну если уж такая лень открыть учебник, может, когда-нить и накатаю популярную лекцию типа этой

  6. #16

    Регистрация
    11.02.2005
    Адрес
    【RB】
    Сообщений
    3,877
    Спасибо Благодарностей отдано 
    128
    Спасибо Благодарностей получено 
    131
    Поблагодарили
    81 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    Thumbs up

    Цитата Сообщение от boo_boo
    короче, победа, РАБОТАЕТ! надо еще проверить разные загрузчики, и тп, и тд, но в целом можно сказать, что альфа-версия порта модуля эмуляции ВГ93 из UnrealSpeccy под линукс готова!
    классно! поздравляем ! надеюсь сие чудо можно будет скомпилить под FreeBSD ? (в будущем )

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

  8. #17

    Регистрация
    10.05.2005
    Адрес
    Москва
    Сообщений
    715
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от breeze
    классно! поздравляем ! надеюсь сие чудо можно будет скомпилить под FreeBSD ? (в будущем )
    пасиб
    сам выдранный из US ВГ93-эмулятор под чем угодно соберется -- там только стандартные сишные библиотеки юзаются. ZX-эмуль, на котором экспериментирую сейчас -- искореженная глюкалка, если обычная глюкалка пашет под фрей, то и с этим хозяйством не должно быть проблем

  9. #18

    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    кста, выше я обшибся, не 700hz, а 350 в примере

  10. #19

    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Wink

    ладно я понял, меня как раз антиалиасинг интересует.
    Тут ведь дело в чём - например тот же dizzy выводит на стартовой заставке (оригинальная версия имеется в ввиду) вполне приличный музон - если просто тыркать состояние бипки в звуковой ряд, то ничего путёвого не выйдет - прото потому что в указанный отрезок времени - даже для 48кгц получается около 73 тактов - он (бипка) изменяет своё состояние и даже порой не один раз и конечно оттуда и вопрос. На реальном спекке как - имеется триггер на выходе бипки и SPK и имеется его внутренняя ёмкость которая приводит к немоментальному срабатыванию триггера - например в течении нескольких мкс изменяет свой уровень на противоположный (сигнал не прямоугольной формы). Т.е. в любом случае имеется немоментальный переход в противоположное состояние, а потом я изучил диаграммы, получаемые US - и получается так же - что сигнал у бипки изменяется не моментально прямоугольно - а через некоторое количество отсчётов - порядка 1-2 отсчётов выходного звукового ряда (48 кгц всё те же). Вот и оттуда вопрос - откуда этот "наклон" кривой изменения состояния бипки? Это его именно антиалиасинг даёт?
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  11. #20

    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    да

Страница 2 из 2 ПерваяПервая 12

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

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

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

Похожие темы

  1. Вопрос про ПЗУ
    от Eltaron в разделе Память
    Ответов: 14
    Последнее: 25.12.2005, 20:17
  2. вопрос про 555ТМ2
    от SMT в разделе Несортированное железо
    Ответов: 4
    Последнее: 23.12.2005, 15:05
  3. Такой вопрос:
    от GriV в разделе Музыка
    Ответов: 2
    Последнее: 12.11.2005, 01:22
  4. вОпрос по железу
    от Conan в разделе Несортированное железо
    Ответов: 61
    Последнее: 05.03.2005, 19:53

Ваши права

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