Nun, nach ziemlich viel Forschung, fand ich eine kleine Software, die mir dies ermöglicht. Es heißt FamiTracker here's the download page.
Die Schnittstelle ist wirklich nicht so toll und es dauert ein bisschen gewöhnungsbedürftig, aber ehrlich gesagt, es erreicht wirklich, was ich brauche. Es hat alle NES-Kanäle (2x Square, 1x Triangle und 1x Noise). Obwohl ich erfolgreich ein sehr einfaches Lied exportiert haben, die ich in eine .asm erstellt haben (und hier ist das Ergebnis):
; 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)
habe ich noch einen Weg finden, um tatsächlich die Musik in meinem Spiel einfügen. Ich bin mir nicht ganz sicher, wie ich vorgehen soll. Ich werde diese Antwort auf dem neuesten Stand halten.
Ich weiß nicht, ob ein solches Programm existiert, aber wenn man auf [einige Dokumentation] (http://wiki.nesdev.com/w/index.php/APU) der NES APU schaut, sieht es nicht aus als wäre es zu schwierig, eine MIDI-Datei mit einem Kanal für jeden Generator und ein paar Kanälen aufzunehmen, die die Eigenschaften dieser Generatoren (Hüllkurve usw.) anzeigen, und sie nach ASM zu kompilieren. Nur ein Gedanke. – Linuxios