Code: Select all
runnsf -a 0 -x 0 < song.nsf | play2a03 -f S16_LE -r 44100 | aplay -t raw -f S16_LE -r 44100Moderator: Moderators
Code: Select all
runnsf -a 0 -x 0 < song.nsf | play2a03 -f S16_LE -r 44100 | aplay -t raw -f S16_LE -r 44100Code: Select all
Loading NSF player program
Loading test.nsf
Guardian Legend
Miyamo Shant
1988 Irem/Compile
NSF init finished. 367 instructions. CPU: 1215 cycles PPU: 10.7 lines
NSF playing... (ESC to quit)
NSF play stopped.
Max CPU: 3512 cycles Max PPU: 30.90 lines
Average CPU: 1878 cycles Average PPU: 16.52 lines
4772291 frames played - 1325 minute(s), 11 second(s)
That'd be an interesting project: a MIDI to NSF converter. Then you could stick another pipe on the front. "We need to go deeper."hippadrone wrote:I (naively) thought that the NSF format was something more like MIDI.
When I worked with (a modded version of) FamiTone, its tool for creating sound effects first turned an NSF into a write log (like NSF to VGM) and then processed the write log into a sound effect definition for inclusion in an program using FamiTone (like VGM to NSF). An NSF round-tripped to VGM and back will never be as small as the original, except in a few special cases with a converter specially designed to detect envelopes of instruments. It's like the difference between creating level with individual tiles and the object-based level format of a Super Mario game.rainwarrior wrote:You could write an NSF to VGM converter: an existing NSF player could be modified to produce logs of the register writes and timings, which would let you automatically produce VGM files out of NSF files, if you needed such a thing. (A VGM to NSF converter is also possible, I suppose.)