Front page   Edit Diff Backup Upload Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes
* NSFplug [#u101d970]

NSFplug is a NSF player plugin for Winamp and KbMediaPlayer. It supports
NES/Famicom internal APU and 6 external sound devices. 

** Requirements [#r8381db9]

- Pentium III 500MHz or higher CPU (1GHz or higher is recomended)
- Windows 2000 or Windows XP operating system.
- Winamp 2.9x, Winamp 5.xx, KbMediaPlayer 2.28 or later.

** Download [#o11e4317]

- [[NSFplug for Winamp:http://dsa.sakura.ne.jp/arc/wa2nsf/wa2nsf061209.zip]] (19-Dec-2006)
- [[NSFplug for KbMediaPlayer:http://dsa.sakura.ne.jp/arc/kbnsf/latest/kbnsf060505.zip]] (05-May-2006)
- [[NSFplug for Winamp:http://dsa.sakura.ne.jp/arc/bin/wa2nsf/wa2nsf061209.zip]] (19-Dec-2006)
- [[NSFplug for KbMediaPlayer:http://dsa.sakura.ne.jp/arc/bin/kbnsf/latest/kbnsf060505.zip]] (05-May-2006)
- [[Source:http://dsa.sakura.ne.jp/arc/src/xgm/xgmapp061209s.zip]] (09-Dec-2006)

** Features [#iae1eb0e]

- Internal sound device emulation.
-- Square x 2, Triangle x 1, Noise x 1, Delta PCM x 1
- External sound device emulation.
-- FDS (Wavetable x 1)
-- MMC5 (Square x 2)
-- Sunsoft5B (Square x 3 + Noise x 1. Similar to the AY-3-8910)
-- Namco106 (Wavetable x 8)
-- VRC6 (Square x 2, Saw x 1)
-- VRC7 (FM x 6; reduced OPLL) 
- Filter emulation
-- High pass, Low pass and DC cutoff filter.
- Meta information handling 
-- Supports playlist file compatible with NEZplug (only for Winamp).
-- Supports Taginfo compatible with KbMediaPlayer.
- Automatic loop time detection.
- Real-time information display (only for Winamp).

#ref(NSFplug/keyboard.png);

** Ports [#f479ea98]

NSFplug is ported to some other environments. I thank RuRuRu and Boukichi for
their efforts.

- [[for foobar2000 (NSF input):http://www.vesta.dti.ne.jp/~tsato/soft_fb2kv9.html#foo_input_nsf]] by [[RuRuRu:http://www.vesta.dti.ne.jp]]
- [[for MacOSX (ChipPlay):http://www.emucamp.com/boukichi/osx/]] by Boukichi

** Acknowledgements [#hed0bc1a]

I thank the authors of the following marverous documents. If these documents were not available online, I could not implement NSFplug. Especially, I thank Mamiya, the author of NEZplug for his CPU emulation code. NSFplug uses his accurate 'Km6502' CPU emulation code from NEZplug. 

Further, I also thank users for their bug reports and useful comments. 

- NES Music Format Spec, Kevin Horton, http://nesmusic.zophar.net/txt/nsfspec.txt , 2000 
- The NES sound channel guide 1.8, Brad Taylor, http://nesdev.parodius.com/NESSOUND.txt , 2000 
- Delta modulation channel tutorial 1.0, Brad Taylor, http://nesdev.parodius.com/DMC.txt , 2000 
- VRCVI CHIP INFO, Kevin Horton, http://nesdev.parodius.com/vrcvi.txt , 1999 
- VRCVII CHIP INFO, Kevin Horton, http://nesdev.parodius.com/vrcvii.txt , 1999 
- Nintendo Disksystem Sound no shiryou, Norix, http://nesdev.parodius.com/FDSSOUND.txt , 2002 
- APU_FDS.cpp in VirtuaNES source archive, Norix, http://virtuanes.s1.xrea.com/ , 2002 
- NEZplug source archive, Mamiya, http://nezplug.sourceforge.net/ , 2002 
- Winamp2 Input Plugin-in SDK, Nullsoft, http://www.winamp.com/nsdn/winamp2x/dev/plugins/in.jhtml , 1998 
- NSFripper he no michi, Izumi, http://nesmusic.zophar.net/ripper.html , 2000 
- Namcot 106 Mapper information, goroh, http://www.geocities.co.jp/SiliconValley/2368/docs/namco.txt , 1997 
- MMC5 information, goroh, http://www.geocities.co.jp/SiliconValley/2368/docs/mmc5.txt , 1998 
- NES APU Reference, blargg, http://www.slack.net/~ant/nes-emu/apu_ref.txt , 2003