NSFDRV
From NESdev Wiki
Jump to navigationJump to search
NSFDRV is to Include the information of sound driver to NSF.
Background
A some old sound driver for chiptune has bug as follows.
- In N163 audio, length of waveform is not set correctly.
- FDC audio is not enable.
NSFDRV is to slove this problem.
- NSF Player can detect sound driver, and can fix the bug of old sound driver such as mck.
- User can assert that user's NSF is original easily. (NSF is not ripped data from rom.)
- If occur BUG in sound driver, Developer can get information of version number from NSF file for the debug.
File Format
There is 8 bytes information of sound driver after NSF header. This 8 bytes information is on actual rom image of 6502.
offset # of bytes Function ---------------------------- $0000 - $007F NSF Header (128byte) $0080 - $0085 Name of sound driver (ASCII) $0086 Version integral number $0087 Version integral number
List of sound driver
ASCII : "OFGS " Binary : $4F $46 $47 $53 $20 $20
- FamiTracker NSF Driver (http://www.famitracker.com)
ASCII : "FTDRV " Binary : $46 $54 $44 $52 $56 $20
- NES Sound Driver & Library (http://shaw.la.coocan.jp/nsdl/)
ASCII : "NSDL " Binary : $4E $53 $44 $4C $20 $20
- Development code (for no-bug sound driver)
ASCII : " " Binary : $20 $20 $20 $20 $20 $20
Old chiptune sound driver have some bugs. Some NSF Player adjust this bug of old chiptune sound driver. But, It adjuster affect the new sound driver without bug. Therefore, this information is need now.
NSF Player detect the sound driver name. If sound driver have not bug, then adjuster is disable. If sound driver is unknown (old sound driver), then adjuster is enable.