gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS homebrew announcements > libXM7 1.04 XM/MOD replay library & updated xm7Play

#171544 - sverx - Wed Nov 25, 2009 4:01 pm

I'm happy to announce the release of libXM7 version 1.04 :)

Some bugs were patched and MOD replay has been introduced. Now it loads and play MOD modules of the following subtypes:

Code:
- M.K., M!K! and FLT4 module subtypes 4 channels modules
- OCTA, CD81 and FLT8 module subtypes 8 channels modules
- TDZx module subtype 1 to 3 channels modules
- xCHN module subtype 2 to 9 channels modules
- xxCH module subtype 10 to 16 channels modules


and also features the on-the-fly sample change capability used in many ProTracker modules. This has been set as the default replay style for MOD tunes, but you can deactivate it (or you can activate it on XMs... lol).

Documentation, complete changelog, support forum, examples, demos, etc... look here -> http://wcms.teleion.it/users/cgq/nds/libxm7/

XM7Play r2009-006 XM/MOD Player
Based on libXM7 1.04 of course, no other big changes since previous version. It plays XM/MOD modules with up to 16 channels directly from your FAT memory card. Download here -> http://wcms.teleion.it/users/cgq/nds/libxm7/xm7play.r2009-006.zip

Feedback is always appreciated. :) Also please point to me those XM/MOD modules that the player can't reproduce properly. Thanks!

#171547 - Kojote - Wed Nov 25, 2009 10:59 pm

updated XM7Play, yay \o/ :) thanks!
_________________
Kojote
PDRoms - Retroguru - Giana's Return - Speckdrumm

#171557 - sverx - Thu Nov 26, 2009 9:03 am

Thank you! :D

#171559 - headspin - Thu Nov 26, 2009 10:45 pm

This was easy to implement into a pure asm project that didn't use libnds and used IPC for sending a pointer to the arm7. Most people should be using FIFO for projects these days but either way it's quite easy to setup.

Great library, very easy to implement into projects, low resource usage, highly recommended!
_________________
Warhawk DS | Manic Miner: The Lost Levels | The Detective Game

#171561 - sverx - Fri Nov 27, 2009 9:16 am

In the example source code you can download from the documentation page, I'm using FIFO to let arm9 side of the library communicate with arm7 side (start/stop tunes). (libXM7 actually was born before the FIFO system was released into libnds and retained the chance to work without it even today...)

Quote:
Great library, very easy to implement into projects, low resource usage, highly recommended!


I owe you some advertising now ;) By the way I think that the best there has been to 'integrate' it with zlib so that we could gzip the 36 tunes (shrinking the size to 60% of the original) and store them in the NDS (either using -or not- a filesystem) and I really wondered then to see that uncompressing and loading a tune took just some (one hundred? two?) millisecond... it's a very interesting solution that I guess many other projects could benefit.

(I'm talking about Manic Miner in the Lost Levels, of course, Flash/HK/Lobo/SpaceFractal great homebrew :) Adv served ;) )