Сообщения без ответов | Активные темы Текущее время: 28 апр 2024, 07:00



Ответить на тему  [ Сообщений: 3 ] 
 [SMD] программирование звука 
Автор Сообщение
Сообщение 07 авг 2007, 18:35
Профиль

Зарегистрирован:
02 авг 2007, 20:03
Сообщения: 11
Возникли некоторые проблемы.
Данный код работает только под gens.
Интересует как правильно сделать задержку (оч. быстро играет) и заставить его работать не только на генс, но и на других эмуляторах.
звук в формате pcm 16khz, 8bit, mono.


Код:
       dc.l $00FFFE00,$200,$200,$200,$200
       dc.l $200,$200,$200,$200,$200,$200,$200,$200
       dc.l $200,$200,$200,$200,$200,$200,$200,$200
       dc.l $200,$200,$200,$200,$200,$200,$200
       dc.l $200,$200,$200,$200,$200
       dc.l $200,$200,$200,$200,$200,$200,$200,$200
       dc.l $200,$200,$200,$200,$200,$200,$200
       dc.l $200,$200,$200,$200,$200,$200,$200,$200
       dc.l $200,$200,$200,$200,$200,$200,$200
       dc.l $200                             '
       dc.b '                                '
       dc.b 'TEST                                            '
       dc.b 'TEST                                            '
       dc.b 'GM 00000000-00',$a5,$fb
       dc.b 'JD              ',$00,$00,$00,$00,$00,$02,$00,$00
       dc.b $00,$ff,$00,$00,$ff,$ff,$ff,$ff,'               '
       dc.b '                        '
       dc.b '                         '
       dc.b 'JUE             '

       
       move.b #$2B, $A04000
       move.b #$80, $A04001
       
       move.b #$B4, $A04000
       move.b #$C0, $A04001
       
       
       move.b #$2A,$A04000
         
       lea mus(pc), a0

main_loop: 
 
  move.b (a0)+, d0
  move.b d0, $A04001


  bra main_loop
       
mus:
        incbin music.pcm



Сообщение 07 авг 2007, 19:45
Профиль ICQ WWW

Зарегистрирован:
22 июл 2007, 06:16
Сообщения: 73
Откуда: Russia, Moscow
Задержку можно сделать пустым циклом (посчитать по времени выполнения команд). Как вариант - можно подвесить вывод в ЦАП на строчные прерывания - они идут с частотой 15625 Гц.

Но вообще, играть звук силами M68K - это кривой подход, для таких дел у SMD есть Z80. Для примера можешь посмотреть на мой 4-х канальный плеер, или поискать пример попроще - вроде в комплекте с SGCC был простенький одноканальный драйвер.


Сообщение 07 авг 2007, 21:05
Профиль

Зарегистрирован:
02 авг 2007, 20:03
Сообщения: 11
Спасибо.
Буду ковырять.


Показать сообщения за:  Поле сортировки  
Ответить на тему   [ Сообщений: 3 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 34


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF (mod by Zeru-j).
Русская поддержка phpBB