Page 1 of 1
NSF emulator in Go
Posted: Fri Jan 24, 2014 3:07 am
by dolmant
I have a fairly working NSF emulator written in Go. Tested on mac and linux. Doesn't have a lot a features, and has a poor lowpass and no highpass, but it works. Comes with megaman 3 to demo.
Some docs to get it running:
http://godoc.org/github.com/mjibson/mog/codec/nsf
Code:
https://github.com/mjibson/mog/tree/master/codec/nsf
After port audio is installed
$ go test github.com/mjibson/mog/codec/nsf
Doesn't yet support: DMC, bankswitching.
Re: NSF emulator in Go
Posted: Fri Jan 24, 2014 6:41 pm
by zzo38
I do not see the support of expansion audio either.
Re: NSF emulator in Go
Posted: Sat Jan 25, 2014 1:02 am
by dolmant
I have not yet come across that in my research, so I wasn't even aware it was missing. Thanks for pointing it out.
Re: NSF emulator in Go
Posted: Sat Jan 25, 2014 8:08 am
by tepples
Expansion audio isn't used in any game released in the Americas or Europe. So unless you need to cover NSFs of Japan-only games or homebrew NSFs composed by fans of Japan-only games, you can put it off for much later.
Re: NSF emulator in Go
Posted: Sat Jan 25, 2014 8:38 am
by rainwarrior
Expansions are very commonly used in NSFs being made today. A quick glance at the last Famicompo shows that about 40% of the original entries used an expansion, and I think it was even higher in previous years. At the Famitracker forums, I think most of the tunes posted use expansions, generally.
Re: NSF emulator in Go
Posted: Sat Jan 25, 2014 8:47 am
by tepples
Do these Famitracker forum users test their NSFs on a Famicom, on a modded NES, or only on an emulator?
Re: NSF emulator in Go
Posted: Sat Jan 25, 2014 8:50 am
by rainwarrior
All of those things are done by various users.
Jrlepage is the only person who regularly plays expansion NSFs on hardware though, since he imported a TNS-HFC3 to do it:
http://famitracker.com/forum/posts.php?id=3633
Many users have a PowerPak and a modded NES. Some of us have a Famicom as well.
Most users just use emulation.
Similar to anywhere else, really.