Dawno nie bylem w temacie i widze, ze FT ma export utworu do kodu zrodlowego.
Zrobilem na szybko prosta melodie, zapisalem do ASM.
Teraz jak to uzyc w kodzie NESASM? W kodzie nie widze rejestrow APU, wiec chyba
trzeba wiecej pokombinowac co i jak.
Pewnie nie raz bylo to juz na forach nesdev, ale z wygrzebaniem nie bedzie posto.
FT ma tez export do BIN - raw music data, moze latwiej jest taki export uzywac w NESASM?
Wczesniej uzywalem metody ladowania calego NSF - jednak to strata miejsca, bo np. prosta melodia napisana w FT2 po exporcie do BIN ma 60bajtow, a NSF 6000 bajtow.... Dlatego mocno interesuje mnie uzywanie exportow ASM lub BIN.
Tu kod tej melodyjki prostej po exporcie.
; FamiTracker exported music data
;
; 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
; Instruments
ft_inst_0:
.byte 0
; Sequences
; 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 64 ; pattern length
.byte 6 ; speed
.byte 150 ; tempo
.byte 0 ; initial bank
;
; Pattern and frame data for all songs below
;
ft_s0_frames:
.word ft_s0_f0
ft_s0_f0:
.word ft_s0_p0_c0, ft_s0_p0_c1, ft_s0_p0_c1, ft_s0_p0_c1, ft_s0_p0_c1
ft_s0_p0_c0:
.byte $B0, $03, $E0, $33, $3F, $35, $3D, $36, $3C, $38, $3A, $38, $3C, $36, $3D, $35, $3F, $33, $B2, $41
.byte $03
ft_s0_p0_c1:
.byte $00, $3F
; DPCM samples (located at DPCM segment)
.segment "DPCM"