Кому чего...Цитата:
Сообщение от newart
Лучше заказать у профи универсальный плеер, который сможет еще и звуки воспроизводить. Тогда не нужно будет каждый раз изобретать велосипед.
Вид для печати
Кому чего...Цитата:
Сообщение от newart
Лучше заказать у профи универсальный плеер, который сможет еще и звуки воспроизводить. Тогда не нужно будет каждый раз изобретать велосипед.
Что именно работать не будет? Плеер трогать не нужно. Нужно написать плеер звуков.Цитата:
Сообщение от The Exploited
патчить плеер - в любом случае. в оригинале он же все равно всегда, каждое прерывание пишет все регистры в т.ч. и того канала, который не используется в мелодииЦитата:
Сообщение от axor
В зависимости от мелодии выбираешь канал в который лучше выводит звуки (чтобы мелодия меньше искажалась), потом делаешь CALL player и выводишь аутами свои эффекты. Предварительно глушить канал смысла особого не вижу, эффекты обычно короткие и быстро проигрываются.
В коде выглядит это так:
на прерываниях:
...
CALL MUSIC
CALL SPLAY
...
Если нужно проиграть эффект делаем так:
LD HL,SOUND1
LD (SONG),HL
Код SPLAY:
Код:SPLAY LD HL,(SONG)
INC H
DEC H
RET Z
LD BC,#FFFD
LD A,4
OUT (C),A
LD B,#BF
LD A,(HL)
OUT (C),A
INC HL
LD B,#FF
LD A,5
OUT (C),A
LD B,#BF
LD A,(HL)
OUT (C),A
LD B,#FF
LD A,7
OUT (C),A
INC HL
IN A,(C)
AND #DB
OR (HL)
LD B,#BF
OUT (C),A
INC HL
LD A,#0A
LD B,#FF
OUT (C),A
LD B,#BF
LD A,(HL)
OUT (C),A
INC HL
LD (SONG),HL
LD A,(HL)
OR A
RET NZ
LD (SONG+1),A
(тут проверка включена ли музыка, если да, то Z)
RET Z
XOR A
LD BC,#FFFD
LD A,7
OUT (C),A
IN A,(C)
OR 36
LD B,#BF
OUT (C),A
RET
SONG DEFW 0
SOUND1 DEFB 180,10,32,10 ;ОДИН. КВ.
DEFB 180,10,32,11
DEFB 250,9,32,12
DEFB 250,9,32,13
DEFB 240,9,32,14
DEFB 240,9,32,15
DEFB 230,9,32,15
DEFB 230,9,32,15
DEFB 220,9,32,14
DEFB 220,9,32,13
DEFB 210,9,32,12
DEFB 210,9,32,11
DEFB 200,9,32,10
DEFB 200,9,32,8
DEFB 190,9,32,6
DEFB 190,9,32,5
DEFB 180,9,32,3
DEFB 180,9,32,2
DEFB 0
вообще это верно... про велосипед... :(
См. CSC:DejaVu. Там как раз 2-х канальная (2Ньюарт - не ущербная!) музыка с эффектами на 3-м канале. Ух ты, все работает, надо же!.. :)Цитата:
Сообщение от The Exploited