2016-11-02 17 views
3

私はNESアセンブリ(6502アセンブリ)でゲームをビルドする必要があります。私はそれにいくつかの音楽を入れたいですが、手でNES APUのコードを書くことは、本当に、本当に痛いです。だから誰かがMixcraftのような音楽シーケンサーを知っているかどうか疑問に思っていたが、コンパイルする前に自分のコードに後で入れることができる.asmファイルを出力する。.asmファイルを出力するMIDIシーケンサー

私はこのトピックをmusic.stackexchangeで扱うべきですか?

ありがとうございます!

+0

このようなプログラムが存在するかどうかはわかりませんが、NES APUの[いくつかのドキュメント](http://wiki.nesdev.com/w/index.php/APU)を見ると、見えません各ジェネレーターごとに1つのチャンネルを使用するMIDIファイルと、それらのジェネレーター(エンベロープなど)のプロパティーを示すいくつかのチャンネルを使用してASMにコンパイルするのは難しいでしょう。ちょっとした考え。 – Linuxios

答えて

0

かなりの研究の後、私はこれを行うための小さなソフトウェアを見つけました。それはFamiTracker here's the download pageと呼ばれています。

インターフェイスは本当にすばらしくなく、少し慣れていますが、率直に言って、私は必要なものを本当に達成しています。それはすべてのNESチャンネル(2xスクエア、1xトライアングルと1xノイズ)を持っています。私は正常に私が.asmファイルに作成した非常にシンプルな曲をエクスポート(そしてここでの結果だ)しているが:

; FamiTracker exported music data: musique.ftm 
; 

; Module header 
    .word ft_song_list 
    .word ft_instrument_list 
    .word ft_sample_list 
    .word ft_samples 
    .byte 0 ; flags 
    .word 3600 ; NTSC speed 
    .word 3000 ; PAL speed 

; Instrument pointer list 
ft_instrument_list: 
    .word ft_inst_0 
    .word ft_inst_1 

; Instruments 
ft_inst_0: 
    .byte 16 
    .word ft_seq_2a03_4 

ft_inst_1: 
    .byte 17 
    .word ft_seq_2a03_10 
    .word ft_seq_2a03_9 

; Sequences 
ft_seq_2a03_4: 
    .byte $05, $FF, $00, $00, $02, $01, $02, $03, $02 
ft_seq_2a03_9: 
    .byte $04, $FF, $00, $00, $03, $03, $03, $03 
ft_seq_2a03_10: 
    .byte $05, $FF, $00, $00, $0C, $0A, $08, $07, $06 

; DPCM instrument list (pitch, sample index) 
ft_sample_list: 

; DPCM samples list (location, size, bank) 
ft_samples: 


; Song pointer list 
ft_song_list: 
    .word ft_song_0 

; Song info 
ft_song_0: 
    .word ft_s0_frames 
    .byte 1 ; frame count 
    .byte 128 ; pattern length 
    .byte 6 ; speed 
    .byte 60 ; tempo 
    .byte 0 ; initial bank 


; 
; Pattern and frame data for all songs below 
; 

; Bank 0 
ft_s0_frames: 
    .word ft_s0f0 
ft_s0f0: 
    .word ft_s0p0c0, ft_s0p0c1, ft_s0p1c2, ft_s0p0c1, ft_s0p0c1 
; Bank 0 
ft_s0p0c0: 
    .byte $82, $00, $E1, $31, $29, $2C, $31, $33, $2A, $2E, $33, $35, $2E, $31, $35, $84, $36, $03, $82, $00 
    .byte $35, $31, $2C, $35, $33, $2C, $2A, $33, $2C, $29, $25, $2C, $84, $31, $03, $7F, $5F 

; Bank 0 
ft_s0p0c1: 
    .byte $00, $7F 

; Bank 0 
ft_s0p1c2: 
    .byte $82, $03, $E1, $31, $E0, $30, $2E, $2C, $2A, $29, $2C, $25, $84, $7F, $5F 


; DPCM samples (located at DPCM segment) 

私は実際に私のゲームで音楽を挿入する方法を見つけるためには至っていません。私はそれに従う手続きについてはあまりよく分かりません。この回答を最新のものにしておきます。

関連する問題