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

User Tag List

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

Тема: AY и такты. Предельные возможности.

  1. #11
    Veteran Аватар для Hacker VBI
    Регистрация
    05.03.2013
    Адрес
    г. Канев, Украина
    Сообщений
    1,596
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    несколько моментов.
    1. учёт и выборка потока данных для psg
    2. потактовая чётность плеера
    ...
    3. 300 тактов не нужны

  2. #12
    Master
    Регистрация
    27.01.2005
    Сообщений
    889
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    170
    Поблагодарили
    136 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    О как активизировались то)

    - - - Добавлено - - -

    ld c,#FD ; один раз, 7 тактов
    ld de,#BFFF ; 10 тактов

    ;-----------------
    ; Вывод в один регистр HL = данные в формате <1байт номер регистра>, <1байт данные>;<1байт номер регистра>, <1байт данные>;<1байт номер регистра>, <1байт данные>;....
    ld b,e ; 4
    outi ; 16
    ld b,d ; 4
    outi ; 16
    ;----------ВСЕГО: 40 тактов

    Запись в 11 регистров - всего 440 тактов. И данные с кодом мешать не надо! Класс!
    Мозги вы тут собрались!)

    Если не управлять громкостью - то достаточно 8 регистров, то есть 320 тактов.

    А если учесть, что не каждые 1/50 секунды меняются все регистры, то достаточно ограничиться изменением
    6 регистров за раз (240 тактов). И все.

    Конечно, конвертор будет не очень простой. Нужен дамп регистров и анализ их изменения, чтобы генерировать
    последовательность только тех, что меняются. Но это реально.

    - - - Добавлено - - -

    Цитата Сообщение от Hacker VBI Посмотреть сообщение
    несколько моментов.
    1. учёт и выборка потока данных для psg
    2. потактовая чётность плеера
    ...
    3. 300 тактов не нужны
    Задача чисто "ради интереса"
    Последний раз редактировалось SfS; 01.08.2017 в 10:58.

  3. #13
    Guru Аватар для Shiny
    Регистрация
    19.01.2017
    Адрес
    г. Арзамас
    Сообщений
    2,125
    Записей в дневнике
    36
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    22
    Поблагодарили
    11 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SfS Посмотреть сообщение
    О как активизировались то)
    Цитата Сообщение от SfS Посмотреть сообщение
    Запись в 11 регистров - всего 440 тактов. И данные с кодом мешать не надо! Класс!
    еще бы не собраться - то ли толсто, то ли глупо.

  4. #14
    Master
    Регистрация
    27.01.2005
    Сообщений
    889
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    170
    Поблагодарили
    136 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну вот. Меня в троллинге обвиняют чтоли?) Ну стало мне интересно - написал. Заодно и более-менее оптимальное решение быстренько выяснилось.

  5. #15
    Guru Аватар для Shiny
    Регистрация
    19.01.2017
    Адрес
    г. Арзамас
    Сообщений
    2,125
    Записей в дневнике
    36
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    22
    Поблагодарили
    11 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    и что выйдет из решения? пердеж и бэквокал в виде огибающей? .psg проигрывателя иногда хватало за глаза

  6. #16
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    657
    Поблагодарили
    511 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SfS Посмотреть сообщение
    Полное управление AY (11 регистров, без управления огибающей): 42*11 = 462 такта.

    Управление тремя каналами. (6 регистров, только частота без громкости и шума): 42*6 = 252 такта. (УКЛАДЫВАЕМСЯ в 300 тактов с запасом! Два канала + шум или три канала без шума)
    не обязательно обновляеть все регистры за один фрейм (одна строка звучит от 3 фреймов и более...)
    это критично только для орнаментов
    но и они тоже могут быть на пониженной частоте 25ГЦ и не плохо звучить

    качество инструментов конечно снизится но не на столько уж прям


    правда могут всплыть дополнительные щелчки и булькания
    изза того что в этом фрейме не успели обновится 2-й рег частоты или если должен был быть большой перепад громкости и включение шума
    само же отставание в обновлении разных групп регистров услышать не реально
    сильно короткий интервал
    Последний раз редактировалось NEO SPECTRUMAN; 01.08.2017 в 16:16.

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

  8. #17
    Master
    Регистрация
    27.01.2005
    Сообщений
    889
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    170
    Поблагодарили
    136 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    не обязательно обновляеть все регистры за один фрейм (одна строка звучит от 3 фреймов и более...)
    Я об этом уже чуть раньше писал.
    Врядли регистры частоты будут меняться каждые 1/50 сек.

    Надеюсь товарищу, который хотел уложиться в 300 тактов не нужна музыка с супернаворотами)

  9. #18
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    657
    Поблагодарили
    511 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SfS Посмотреть сообщение
    Врядли регистры частоты будут меняться каждые 1/50 сек.
    в орнаментах они меняются с частотой 50Гц
    сами инструменты тоже могут менять частоту каждый фрейм так же как и громкость

    но когда важно уложится в такты на это можно подзабить
    (хотя орнаменты придется замедлять ручками в редакторе перед конвертированием)

    а супер навороты чувствительны к времянкам настолько что
    сами будут через раз работать на реале (тк нет переинициализации счетчиков у тона)
    не говоря уже о разных машинах с разными частотами процов\интов и Ау-ков
    Последний раз редактировалось NEO SPECTRUMAN; 01.08.2017 в 20:02.

  10. #19
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,055
    Спасибо Благодарностей отдано 
    219
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть еще вариант - перемежение кода отрисовки графики и звука. Например: рисуем одну линию - выводим один канал; рисуем вторую - выводим второй канал и т.д. В таком случае не очень важно, сколько тактов займет работа с AY в сумме; достаточно, чтобы эти такты хотя бы во фрагментированном виде были в наличии. В программах, выравненных по времянкам, часто встречаются задержки. Вот можно часть задержек перепилить на работу со звуком.

    - - - Добавлено - - -

    Во многих играх встречалась музыка с обновлением не каждый кадр. Например: во время игры Marauder выводит один раз за 3 кадра. А по музыке и не скажешь, что она технически ограничена. Хорошо постарался композитор, грамотно распорядился возможностями. Также один раз за 3 кадра обслуживается музыка на 4-м уровне Batman The Movie (уровень называется "Gotham City Parade"). И здесь музыка весьма неплохая.

    - - - Добавлено - - -

    Можно еще представить себе такой плеер, который каждый кадр обновляет только один канал. Музыка останется трехканальной. Композиторы вздохнут свободнее, а программист - уложится в 100 тактов за кадр

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

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

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

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

Похожие темы

  1. Новые возможности форума !
    от AAA в разделе Форум
    Ответов: 11
    Последнее: 13.07.2011, 09:06
  2. Интересный вопрос про циклы и такты
    от Володя Березин в разделе Программирование
    Ответов: 5
    Последнее: 09.02.2009, 07:12
  3. расширяем возможности ОСи)))
    от Sayman в разделе Оси
    Ответов: 0
    Последнее: 28.10.2008, 08:35
  4. Cчитаем такты... (2SMT)
    от rasmer в разделе Эмуляторы
    Ответов: 11
    Последнее: 10.08.2005, 07:29
  5. Новые возможности Unreal
    от razer в разделе Эмуляторы
    Ответов: 122
    Последнее: 26.02.2005, 02:05

Ваши права

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