dsDoom music support?

Discussion in 'NDS - Emulation and Homebrew' started by Kippykip, Apr 21, 2013.

Apr 21, 2013

dsDoom music support? by Kippykip at 12:38 PM (1,661 Views / 0 Likes) 8 replies

  1. Kippykip
    OP

    Member Kippykip D E L E T T H I S

    Joined:
    Mar 30, 2013
    Messages:
    508
    Country:
    Australia
    Prdoom has a mp3 replacement support (e.g. if you want to change d_e1m1 to popcorn, rename a popcorn mp3 to e1m1.mp3 and place it in the root)

    I know that they most likely won't update it to read mus files and playback them, but why not the prdoom mp3 thingy? look in the config, you'll find some interesting stuff like the mp3 playback

    is there some code to allow the mp3 playback?
    I've ripped all the music from the iwads of doom (Doom, Doom 2, Tnt, Plut-something-)
    They are MIDS but I can convert them to mp3 like I did with wiiflow and we can enable it and then we have an almost finished DSDOOM! :D

    Edit:
    Code:
    # Music
    mus_e1m1                  "e1m1.mp3"
    mus_e1m2                  "e1m2.mp3"
    mus_e1m3                  "e1m3.mp3"
    mus_e1m4                  "e1m4.mp3"
    mus_e1m5                  "e1m5.mp3"
    mus_e1m6                  "e1m6.mp3"
    mus_e1m7                  "e1m7.mp3"
    mus_e1m8                  "e1m8.mp3"
    mus_e1m9                  "e1m9.mp3"
    mus_e2m1                  "e2m1.mp3"
    mus_e2m2                  "e2m2.mp3"
    mus_e2m3                  "e2m3.mp3"
    mus_e2m4                  "e2m4.mp3"
    mus_e2m5                  "e1m7.mp3"
    mus_e2m6                  "e2m6.mp3"
    mus_e2m7                  "e2m7.mp3"
    mus_e2m8                  "e2m8.mp3"
    mus_e2m9                  "e3m1.mp3"
    mus_e3m1                  "e3m1.mp3"
    mus_e3m2                  "e3m2.mp3"
    mus_e3m3                  "e3m3.mp3"
    mus_e3m4                  "e1m8.mp3"
    mus_e3m5                  "e1m7.mp3"
    mus_e3m6                  "e1m6.mp3"
    mus_e3m7                  "e2m7.mp3"
    mus_e3m8                  "e3m8.mp3"
    mus_e3m9                  "e1m9.mp3"
    mus_inter                "e2m3.mp3"
    mus_intro                "intro.mp3"
    mus_bunny                "bunny.mp3"
    mus_victor                "victor.mp3"
    mus_introa                "intro.mp3"
    mus_runnin                "runnin.mp3"
    mus_stalks                "stalks.mp3"
    mus_countd                "countd.mp3"
    mus_betwee                "betwee.mp3"
    mus_doom                  "doom.mp3"
    mus_the_da                "the_da.mp3"
    mus_shawn                "shawn.mp3"
    mus_ddtblu                "ddtblu.mp3"
    mus_in_cit                "in_cit.mp3"
    mus_dead                  "dead.mp3"
    mus_stlks2                "stalks.mp3"
    mus_theda2                "the_da.mp3"
    mus_doom2                "doom.mp3"
    mus_ddtbl2                "ddtblu.mp3"
    mus_runni2                "runnin.mp3"
    mus_dead2                "dead.mp3"
    mus_stlks3                "stalks.mp3"
    mus_romero                "romero.mp3"
    mus_shawn2                "shawn.mp3"
    mus_messag                "messag.mp3"
    mus_count2                "countd.mp3"
    mus_ddtbl3                "ddtblu.mp3"
    mus_ampie                "ampie.mp3"
    mus_theda3                "the_da.mp3"
    mus_adrian                "adrian.mp3"
    mus_messg2                "messag.mp3"
    mus_romer2                "romero.mp3"
    mus_tense                "tense.mp3"
    mus_shawn3                "shawn.mp3"
    mus_openin                "openin.mp3"
    mus_evil                  "evil.mp3"
    mus_ultima                "ultima.mp3"
    mus_read_m                "read_m.mp3"
    mus_dm2ttl                "dm2ttl.mp3"
    mus_dm2int                "dm2int.mp3"
    
    Located in PRBOOM.CFG
     
  2. elhobbs

    Member elhobbs GBAtemp Advanced Fan

    Joined:
    Jul 28, 2008
    Messages:
    669
    Country:
    United States
    there was a version of chocolate doom that was updated to included mus to midi conversion with playback on the ds using pate's adlib library. I cannot find a project page for it - only this old thread http://devkitpro.org/viewtopic.php?f=6&t=2689&start=20
    none of the links appear to work now though, but I do have a copy of the 0.4 source code.
     
  3. Foxi4

    Reporter Foxi4 On the hunt...

    pip
    Joined:
    Sep 13, 2009
    Messages:
    22,705
    Location:
    Gaming Grotto
    Country:
    Poland
    Adding MP3 support to dsDoom would be quite a task since it requires modifying ARM7 code. There are two libraries that I know of that support that format - ASLib which is greatly outdated, resource-monging and a part of the PALib kit and a library specifically-developed for dsQuake (a ported Helix library) - using either is not recommended. You can find both, but good luck modifying the project to support this. You're better off using module music since the bleeps and bloops could be easily modified into a soundbank and the standard devkitPro ARM7 core supports MaxMod.
     
  4. elhobbs

    Member elhobbs GBAtemp Advanced Fan

    Joined:
    Jul 28, 2008
    Messages:
    669
    Country:
    United States
    As a note cquake rather than dsquake has mp3 playback. Someone packaged up an updated version of the cquake mp3 playback library (helix with ds code) that fixes the left channel only playback in cquake. I did not have enough free ram for stereo playback in cquake so I dropped the right channel.
     
  5. elhobbs

    Member elhobbs GBAtemp Advanced Fan

    Joined:
    Jul 28, 2008
    Messages:
    669
    Country:
    United States
    Also, while I do not disagree that other methods are preferable, adding the cquake mp3 code would be rather easy. The library works with current libnds and the decode is all arm7 so it should not hurt performance too badly. Just add the start and stop calls and call the update once a frame in the main loop.
     
  6. Kippykip
    OP

    Member Kippykip D E L E T T H I S

    Joined:
    Mar 30, 2013
    Messages:
    508
    Country:
    Australia
    I've already extracted the midis

    I'll have a look :)
     
  7. elhobbs

    Member elhobbs GBAtemp Advanced Fan

    Joined:
    Jul 28, 2008
    Messages:
    669
    Country:
    United States
    The version of choc doom I am referring to doesn't require the music to be extracted and converted externally. It converts them as needed in game and then plays them. It avoids the issue of trying to redistribute the music in a different format and the copyright issues involved. And most people do not know how to convert mus to mp3.
     
  8. Foxi4

    Reporter Foxi4 On the hunt...

    pip
    Joined:
    Sep 13, 2009
    Messages:
    22,705
    Location:
    Gaming Grotto
    Country:
    Poland
    Ahh, yes - you are correct. I knew it was some version of Quake for the DS. ;)
    Tampering with the ARM7 Core isn't really recommended though unless you really know what you're doing - you might interfere with the communication between cores. :)
     
  9. elhobbs

    Member elhobbs GBAtemp Advanced Fan

    Joined:
    Jul 28, 2008
    Messages:
    669
    Country:
    United States
    The mp3 library uses the libnds FIFO library for arm7 communication which does not interfere with the core communication. It is the recommended method. Building something new for the arm7 does require a higher level of knowledge, but using something that is already built is not quite as involved. It uses the default arm7 file with 2 addional function calls. mp3_init(); once before the main loop and mp3_process(); inside the main loop. And adding the library to the makefile. So I think it probably falls into more of an advanced novice category. It does not require understanding core communications.
     

Share This Page