Difference between revisions of "PROTRACKER372 JP AYFIX H"
From MSX MUSIC WIKI
(Created page with "AYFIX C��m��� г ;Эта программа демонстрирует, сколько ;разных звуков можно получить на одной ;...") (Tags: Mobile edit, Mobile web edit) |
(Tags: Mobile edit, Mobile web edit) |
||
Line 1: | Line 1: | ||
AYFIX C��m��� г | AYFIX C��m��� г | ||
− | ; | + | ;このプログラムは、同じtone+ envの組み合わせで、トニックの位相を変え、O、Pキーで位相を回転させて、いくつかの異なる音が得られるかを示しています! |
− | |||
− | |||
− | |||
− | |||
ORG #6000 | ORG #6000 | ||
− | ; | + | ;AYの全レジスタをゼロにする |
LD DE,#E00 | LD DE,#E00 | ||
DEC D | DEC D | ||
Line 15: | Line 11: | ||
HALT | HALT | ||
LD DE,#7FF | LD DE,#7FF | ||
− | CALL OUTAY ; | + | CALL OUTAY ;トーンを禁止する |
LD DE,#800 | LD DE,#800 | ||
− | CALL OUTAY ; | + | CALL OUTAY ;エンベロープを禁止する |
− | |||
CALL 8020 ;BREAK | CALL 8020 ;BREAK | ||
RET NC | RET NC | ||
− | ; | + | ;位相を調整する (下記参照) |
LD HL,WAIT | LD HL,WAIT | ||
LD A,#DF | LD A,#DF | ||
Line 31: | Line 26: | ||
JR C,$+3 | JR C,$+3 | ||
DEC (HL) | DEC (HL) | ||
− | ; | + | ;画面に位相を表示する |
LD B,(HL) | LD B,(HL) | ||
LD HL,#5800 | LD HL,#5800 | ||
Line 42: | Line 37: | ||
JR NZ,$-3 | JR NZ,$-3 | ||
− | ; | + | ;トーン周波数をゼロにする |
LD DE,#000 | LD DE,#000 | ||
CALL OUTAY | CALL OUTAY | ||
LD DE,#100 | LD DE,#100 | ||
CALL OUTAY | CALL OUTAY | ||
− | ; | + | ;現在、トーンカウンターは固定位置にあります。 |
− | ; | + | ;「オン」または「オフ」の2つの位置のいずれかに音色フラグがあります。 |
LD HL,#3C*8 ;период тональника | LD HL,#3C*8 ;период тональника | ||
LD D,#0 | LD D,#0 |
Revision as of 02:39, 1 March 2020
AYFIX C��m��� г
;このプログラムは、同じtone+ envの組み合わせで、トニックの位相を変え、O、Pキーで位相を回転させて、いくつかの異なる音が得られるかを示しています! ORG #6000 ;AYの全レジスタをゼロにする LD DE,#E00 DEC D CALL OUTAY JR NZ,$-4 LLL HALT LD DE,#7FF CALL OUTAY ;トーンを禁止する LD DE,#800 CALL OUTAY ;エンベロープを禁止する CALL 8020 ;BREAK RET NC ;位相を調整する (下記参照) LD HL,WAIT LD A,#DF IN A,(-2) RRA JR C,$+3 INC (HL) RRA JR C,$+3 DEC (HL) ;画面に位相を表示する LD B,(HL) LD HL,#5800 LD (HL),255 INC L DJNZ $-3 JR Z,$+7 LD (HL),0 INC L JR NZ,$-3 ;トーン周波数をゼロにする LD DE,#000 CALL OUTAY LD DE,#100 CALL OUTAY ;現在、トーンカウンターは固定位置にあります。 ;「オン」または「オフ」の2つの位置のいずれかに音色フラグがあります。 LD HL,#3C*8 ;период тональника LD D,#0 LD E,L CALL OUTAY ;устанавливаем (мл.) LD D,#1 LD E,H CALL OUTAY ;устанавливаем (ст.) ;делаем задержку для сдвига фазы тональника WAIT=$+1 LD B,1 WAIT0 LD A,8 DEC A JR NZ,$-1 DJNZ WAIT0 ;теперь тональник в выбранной нами фазе F ;но из-за непредсказуемости флага эта фаза может быть F+180° LD DE,#7FE CALL OUTAY ;разрешаем тональник LD DE,#810 CALL OUTAY ;разрешаем огибающую LD DE,#B1E CALL OUTAY ;устанавливаем период огибающей LD DE,#D0E CALL OUTAY ;уст.тип огибающей (E) ;теперь огибающая в начальной фазе. ;слушаем... LD B,3 HALT DJNZ $-1 JR LLL OUTAY LD BC,#FFFD OUT (C),D LD B,#BF OUT (C),E RET L8df4=$-2 module=#C000 END ELSE END module INCBIN "si*.m" ENDIF ORG tab_frq ;INCBIN "tb_ST DD F80E10