プログラム的に音楽を鳴らしてみる試み。


けいおん! 第2話見てたら打ち込みたくなったので試してみた。


チャルメラ

;
;CHARUMERA SOUND
;

PLYSND:
	TIA	0AH
	CAL SUND		;ド・
	TIA	0BH
	CAL SUND		;レ・
	TIA	0CH
	CAL SUND		;ミ・
	TIA	6
	CAL TIMR
	TIA	0BH
	CAL SUND		;レ・
	TIA	0AH
	CAL SUND		;ド・
	TIA	3
	CAL TIMR
	
	TIA	0AH
	CAL SUND		;ド・
	TIA	0BH
	CAL SUND		;レ・
	TIA	0CH
	CAL SUND		;ミ・
	TIA	0BH
	CAL SUND		;レ・
	TIA	0AH
	CAL SUND		;ド・
	TIA	0BH
	CAL SUND		;レ・
	
	TIA	6
	CAL TIMR
	
ENDSND:
	JUMP	ENDSND
アドレス	命令	命令コード 
00	TIA	8 
01	<A>	A 
02	CAL	E 
03	_SUND	B 
04	TIA	8 
05	<B>	B 
06	CAL	E 
07	_SUND	B 
08	TIA	8 
09	<C>	C 
0A	CAL	E 
0B	_SUND	B 
0C	TIA	8 
0D	<6>	6 
0E	CAL	E 
0F	_TIMR	C 
10	TIA	8 
11	<B>	B 
12	CAL	E 
13	_SUND	B 
14	TIA	8 
15	<A>	A 
16	CAL	E 
17	_SUND	B 
18	TIA	8 
19	<3>	3 
1A	CAL	E 
1B	_TIMR	C 
1C	TIA	8 
1D	<A>	A 
1E	CAL	E 
1F	_SUND	B 
20	TIA	8 
21	<B>	B 
22	CAL	E 
23	_SUND	B 
24	TIA	8 
25	<C>	C 
26	CAL	E 
27	_SUND	B 
28	TIA	8 
29	<B>	B 
2A	CAL	E 
2B	_SUND	B 
2C	TIA	8 
2D	<A>	A 
2E	CAL	E 
2F	_SUND	B 
30	TIA	8 
31	<B>	B 
32	CAL	E 
33	_SUND	B 
34	TIA	8 
35	<6>	6 
36	CAL	E 
37	_TIMR	C 
38	JUMP	F 
39	<3>	3 
3A	<8>	8 

これだけで59ニブルも消費。
任意の1音鳴らすだけで4ニブルって思えば小さく見えるけど
実際ちょっとしたフレーズを打ち込むとなると結構消費するんだなーと。


それに自動演奏モードと違い
音の長さを指定することができないから
音階同士の間はウエイトで無音取ってあげなければならないという苦労っぷり。


そんな手の掛かる GMC-4 が結構気に入ってたりするわけですが。