Get here DMC samples (4) from the Kirby's Adventure NSF

Discuss NSF files, FamiTracker, MML tools, or anything else related to NES music.

Moderator: Moderators

Post Reply
User avatar
Jarhmander
Formerly ~J-@D!~
Posts: 491
Joined: Sun Mar 12, 2006 12:36 am
Location: Rive nord de Montréal

Get here DMC samples (4) from the Kirby's Adventure NSF

Post by Jarhmander » Sun Mar 12, 2006 12:38 am

http://rapidshare.de/files/15292383/KIRBY.ZIP.html

A RapidShare link. It *would* be nice if they can be hosted directly on that server...

Edit:http://www.savefile.com/files3.php?fid=9256897 New link, direct download.

Well it is a long story... Because I discovered that there is no program to rip DMC samples from NSFs, I decided to rip myself those DMC samples... Because I know nothing of programming, I had to use an Hex editor (yep, really, believe it or not) to rip them from the original NSF (see below the full history), and because I thought that maybe some people here would like to have them, I decided to post that topic. Cute story <3 ^^ . Maybe later I'd rip DMC samples from Super Mario 3 ...

Oh — and enjoy using FamiTracker! http://user.tninet.se/~zxy965r/ft/

How I did

At the begin, I thought, "Oh, Gosh, how can I do?" and I quickly put a pencil in my eye and I cried. After I ate that eye I thought that it is impossible, because I hadn't 2 eyes. Then I discovered Famitracker. A day I e-mailed its programmer, for suggestions for his beta, and I asked a question, which is how dmc samples works. That cool guy gave me a good short n' smart explanation and everything became clear (or maybe I just stopped taking drugs o_O) so I thought, "OMG, a #@$% crappy DPCM is so dumb.". And then I thought, "According to that stupid format, which is 1-bit delta, and of the nature of the NES, it is impossible that the sound is compressed, or altered into the NSF. So it is certain that the sample is somewhere on that file as-is". Then I used CutKiller to cut the NSF into small pieces of 3 kb and using FamiTracker, I listened to all parts of the NSF into the DPCM channel and OMG I discovered that the samples were located at about the last 2 kb of the NSF. So using G-NSF I opened the NSF, went to track 13 (Boss music) and Muted all but the DPCM channel, and exported a WAV file. Then I used the Wave Editor under FL Studio to look at each sounds, I seeked on the Hex editor on the last 2 kb when and where the sound start/stop by reading the bits and understanding how the sound progress, I cut 4 pieces with a scalpel in that big hex string and Wow! Now I have 4 Kirby DMCs and my eye came back! and If you think that my method sucks and is imprecise, remember that I almost lost an eye by trying this way, and I'm also an evil smart guy (sometimes even geeky) , just listen to the sample on a good NSF compsing tool (e.g.: Famitracker) and you'll see the perfect sound I made, and if you dare laught at my work Chuck Norris will round-house kick you into another dimension.

~J-@D!~
Last edited by Jarhmander on Mon Mar 13, 2006 12:21 pm, edited 1 time in total.
((λ (x) (x x)) (λ (x) (x x)))

User avatar
Quietust
Posts: 1500
Joined: Sun Sep 19, 2004 10:59 pm
Contact:

Post by Quietust » Sun Mar 12, 2006 12:53 am

You know, you could have saved yourself a lot of trouble by just patching an emulator or NSF player to dump the PCM samples during playback.

Given the restriction of only dumping each PCM sample once, and logging the frequency each sample is played at, I reckon I could probably hack my own emulator to dump samples in 8-bit RAW format in about 15 minutes. After that, it would only be a matter of importing the raw data into one's favourite audio editor and exporting it as a WAV file.
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.

tepples
Posts: 21841
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples » Sun Mar 12, 2006 12:38 pm

Thanks for giving me an excuse to put my own DPCM ripper on my NES page. It works on any .nes or .nsf file by playing the whole thing as a DPCM sample and recording the output in an 8-bit PCM WAVE file.

User avatar
Jarhmander
Formerly ~J-@D!~
Posts: 491
Joined: Sun Mar 12, 2006 12:36 am
Location: Rive nord de Montréal

Post by Jarhmander » Sun Mar 12, 2006 3:27 pm

:?: I think you don't understand.... this is the 4 DMC file (1-bit delta PCMs) of the game (to use with any NES music composing tool)... not WAV files! And your DPCM ripper seems not to work very well, since it plays at slow speed all the NSF.

Quiestust, what you said seems interesting, but I didn't understand all your idea... Can you explain more?...
((λ (x) (x x)) (λ (x) (x x)))

User avatar
Jarhmander
Formerly ~J-@D!~
Posts: 491
Joined: Sun Mar 12, 2006 12:36 am
Location: Rive nord de Montréal

Post by Jarhmander » Tue Mar 14, 2006 1:51 pm

..-_-.. Zzz Zzz Zzz...
((λ (x) (x x)) (λ (x) (x x)))

tepples
Posts: 21841
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples » Tue Mar 14, 2006 2:09 pm

~J-@D!~ wrote::?: I think you don't understand.... this is the 4 DMC file (1-bit delta PCMs) of the game (to use with any NES music composing tool)... not WAV files!
This tool makes the DPCM easier to find in your manual method, replacing the cutkiller and famitracker steps. You can decode to .wav, find the appropriate sample offsets using any wave editor such as Audacity, and then rip the DPCM bitstreams manually with a hex editor.
And your DPCM ripper seems not to work very well, since it plays at slow speed all the NSF.
It rips them at 16800 Hz, which is close to the 16884 Hz speed of DPCM playback rate $C. I'm guessing that drum samples may be played at $E or $F; any wave editor can change the playback rate. A fully automatic DPCM ripper, based on the source code of an NES emulator, would emulate the .nsf and log the starting values of $4010-$4013 of all DPCM playback requests.

User avatar
Jarhmander
Formerly ~J-@D!~
Posts: 491
Joined: Sun Mar 12, 2006 12:36 am
Location: Rive nord de Montréal

Post by Jarhmander » Tue Mar 14, 2006 5:59 pm

^^ exact — and I know some1 who think he could do that (by hacking a NSF player.
((λ (x) (x x)) (λ (x) (x x)))

User avatar
Jarhmander
Formerly ~J-@D!~
Posts: 491
Joined: Sun Mar 12, 2006 12:36 am
Location: Rive nord de Montréal

Post by Jarhmander » Thu Mar 16, 2006 9:05 pm

Oh — That player now exist, and I use it! It rips DMCs very well!
((λ (x) (x x)) (λ (x) (x x)))

cartridge
Posts: 14
Joined: Tue Mar 14, 2006 5:31 pm

The Player (jsr, I mean... his player... nevermind)

Post by cartridge » Thu Mar 16, 2006 10:58 pm

Yeah, that player is unstoppable... I think that it does about everything, except that if ya play The Legend of Zelda (from '87... the first one) there is a strange instrument lurking in the dpcm section... and the dmc finder, well, can't figure it out. I also posted this at 2a03, for some of their expertise on the subject. Now, at the start is a "horn" followed by a "bell." This happens for the intro/title song, and the end credits song there is the "bell" again. Strange huh? I wonder if it is a dmc or not? (curious much)

User avatar
Jarhmander
Formerly ~J-@D!~
Posts: 491
Joined: Sun Mar 12, 2006 12:36 am
Location: Rive nord de Montréal

Post by Jarhmander » Fri Mar 17, 2006 1:22 pm

cartridge: lol ^^ it's because they are not DPCMs, it's the FDS extension! =D
((λ (x) (x x)) (λ (x) (x x)))

cartridge
Posts: 14
Joined: Tue Mar 14, 2006 5:31 pm

?

Post by cartridge » Fri Mar 17, 2006 3:05 pm

:shock: Wow! Well, they were convincing... right? :?:

User avatar
Jarhmander
Formerly ~J-@D!~
Posts: 491
Joined: Sun Mar 12, 2006 12:36 am
Location: Rive nord de Montréal

Post by Jarhmander » Fri Mar 17, 2006 10:40 pm

For sure ^^
((λ (x) (x x)) (λ (x) (x x)))

2wm
Posts: 2
Joined: Sun Jan 16, 2005 11:17 pm

Post by 2wm » Thu Mar 23, 2006 2:25 am

the bell and horn sounds in legend of zelda are on the FDS (famicom disk system) channel. if you have the famicom version of the zelda nsf (zelda no densetsu) and you look at the keyboard in nsfplay you'll notice activity on the FDS channel.

2wm
Posts: 2
Joined: Sun Jan 16, 2005 11:17 pm

Post by 2wm » Thu Mar 23, 2006 2:26 am

drrr...need to read all the posts before i reply.

Post Reply