FamiStudio NES music editor
Moderator: Moderators
Re: FamiStudio NES music editor
Wow! Looks amazing! Thanks you!
Re: FamiStudio NES music editor
Looks cool. I'll test it out in some time. Thanks.
Re: FamiStudio NES music editor
What's the "guidelines" for using music from FamiStudio in your own NES-productions (demos/games/whatever)? I was perhaps expecting some kind of music replayer sourcecode attached but it doesn't seem to be included? Does people use NSF's only or?
Re: FamiStudio NES music editor
Hello!
You can export to many formats: WAV, NSF, NES ROM, FamiTracker Text, FamiStudio Text and FamiTone2 (More info here: https://famistudio.org/doc/importexport/). Some of those, the text formats especially, open the door to exporting to pretty much any sound engine. Next version will have command line support for exporting and I definitely would like to add support for more sound engines in the future.
There is a "FamiStudio" sound engine in there, which is my Frankenstein version of FamiTone2, but I dont advertise or recommend using it because the code is not super-clean or optimized. I intend to clean it up when i start using it in my own game and release it officially one day.
If you are curious: https://github.com/BleuBleu/FamiStudio/ ... mistudio.s
That's pretty much it, use the tool as you wish, its there, its free, do whatever you want!
-Mat
Re: FamiStudio NES music editor
Ok, so I can export to a FamiTone2 assembler file, which in fact is the song/pattern data. Then I'll need the replayer in my code I guess. How much RAM (and where) are used for playback?
Re: FamiStudio NES music editor
Yes exactly, it will spit out FamiTone2 ASM that you can compile with your game.
You can also take the long way and export FamiTracker Text and use the regular FamiTone2 toolset. But i did fix a few issue with his exporter in FamiStudio, so i think you'll be happy with what FamiStudio generates.
As far as memory usage goes, this is more of a question for Shiru (author of FamiTone2) but from his readme, this is the base memory usage (+ your music data, or course).
Code: Select all
RAM: 186
Zero Page: 3
ROM: 1636
EDIT2: One thing i currently dont support (but also plan to add since i will need it for my game) is the SFX export for FamiTone2. Again if you have urgent needs for this, it can be added.
-Mat
Re: FamiStudio NES music editor
I guess it's relevant to know which addresses the replayer needs aswell?
Re: FamiStudio NES music editor
Well the rest is just you using FamiTone2 as usual. At this point FamiStudio is completely out of the picture.
You include the assembly file that it generated for you, you call FamiToneInit and you give it the pointer to your song data (which comes from the generated assembly) and call FamiToneMusicPlay.
Example generated file from FamiStudio:
Code: Select all
;this file for FamiTone2 library generated by FamiStudio
famistudio_tutorial_music_data:
.byte 1
.word @instruments
.word @samples-3
.word @song0ch0,@song0ch1,@song0ch2,@song0ch3,@song0ch4,307,256
; ... rest of the file is not shown ...
Code: Select all
; Initialize with your music data
ldy #<famistudio_tutorial_music_data
ldx #>famistudio_tutorial_music_data
lda #1 ; NTSC
jsr FamiToneInit
; Play song #0
lda #0
jsr FamiToneMusicPlay
Re: FamiStudio NES music editor
I have no knowledge of FamiTone2 whatsoever, but it didn't seem that straightforward to get it running (NESASM completely hated my attempts anyway..).
You don't have a "FamiStudio" musicformat except for the XML-exports that's suitable for NES-binaries?
You've never considered writing your own replayer?
You don't have a "FamiStudio" musicformat except for the XML-exports that's suitable for NES-binaries?
You've never considered writing your own replayer?
Re: FamiStudio NES music editor
As I said, there is a FamiStudio sound engine, but its a FamiTone2-derivative, so you wont like it haha! Plus its not well tested or optimized, so I dont recommend it at all.oRBIT2002 wrote: ↑Thu Jun 04, 2020 12:20 pm I have no knowledge of FamiTone2 whatsoever, but it didn't seem that straightforward to get it running (NESASM completely hated my attempts anyway..).
You don't have a "FamiStudio" musicformat except for the XML-exports that's suitable for NES-binaries?
You've never considered writing your own replayer?
Maybe you should tell me a bit more what you want to achieve so i can help you find the best solution!
For example, if you just want to hear your music on a NES, there is the ROM export which is gonna give you a ROM that you can just run. But if you are making a game, that's not helpful. For a game, you will likely have to figure out how to make a sound engine work, I assume other sound engine (ggsound, plenty) have very similar setup to FamiTone2.
-Mat
Re: FamiStudio NES music editor
I'm interested in a replayer that's easy to implement and use. As a former demo-coder (sort of anyway) on the Commodore Amiga platform and I'd like to try to code some stuff on the NES aswell.
On the Amiga we just included a replayer and play our music but on the NES, well, things are a little bit more complicated at the moment. But with a replayer-source, that isn't tuned just for one specific assembler, and is well documented.. Well, it would be nice.
On the Amiga we just included a replayer and play our music but on the NES, well, things are a little bit more complicated at the moment. But with a replayer-source, that isn't tuned just for one specific assembler, and is well documented.. Well, it would be nice.
Re: FamiStudio NES music editor
Got it.oRBIT2002 wrote: ↑Thu Jun 04, 2020 10:10 pm I'm interested in a replayer that's easy to implement and use. As a former demo-coder (sort of anyway) on the Commodore Amiga platform and I'd like to try to code some stuff on the NES aswell.
On the Amiga we just included a replayer and play our music but on the NES, well, things are a little bit more complicated at the moment. But with a replayer-source, that isn't tuned just for one specific assembler, and is well documented.. Well, it would be nice.
Then you have 3 main choices, i think: FamiTone2, GGSound and Plenty. Afaik, they are all available for the 3 main assemblers, except Plenty with does not support NESASM, but dont quote me on this!
They all have pretty good doc, Plenty probably having the most detailed one. FamiTone2 has a big readme.txt file and GGSound has a solid readme on github.
-Mat
Re: FamiStudio NES music editor
I found some FamiTone2 example I experimented with but I can't get it to play anything.
I got the example code from https://shiru.untergrund.net/code.shtml and I stripped the example from just about everything but the music-code but I'm probably doing something wrong. I'm using ASM6.
Anyone see anything obvious?
I got the example code from https://shiru.untergrund.net/code.shtml and I stripped the example from just about everything but the music-code but I'm probably doing something wrong. I'm using ASM6.
Anyone see anything obvious?
- Attachments
-
- demo2.zip
- (18.44 KiB) Downloaded 189 times
Re: FamiStudio NES music editor
Got it running, NMI was causing problems. But the music doesn't sound as it sounds in FamiStudio (or exported as a NES-ROM) so there's still something wrong. I attach a new example if anyone's interested.
- Attachments
-
- demo.zip
- (11.96 KiB) Downloaded 196 times