Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: foo_dumb (Read 311106 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

foo_dumb

Reply #175
Here's a bunch of Screamtracker2 modules which foo_dumb refuses to load:

Screamtracker3 v3.21 is able to load all of them but three: Batdance.stm, Putup10.stm, Putup11.stm.
Screamtracker2 v2.21/2.24/2.30 loads them all and i resaved every module with ST2 (marked with a trailing '!').

Foo_dumb is able to load all resaved modules but one: Sw!.stm. I resaved Sw.stm with ST3 to Sw.s3m which in turn foo_dumb is able to load.

Some of the refused STM-modules are accepted by foo_dumb (and ST3 as well) by changing their header at offset 1C from 0x02 to 0x1A (Putup10.stm, Putup11.stm) and offset 1C from 0x1B to 0x1A (Batdance.stm).

deus-ex - problem stm-modules.rar

foo_dumb

Reply #176
Uploaded a new version without bumping the version number because I don't feel like it.

2006-10-12 06:28 UTC - kode54
  • STM reader checks for more values after the song name. (Fixes several of the files above.)
  • STM reader reports the correct
      order list size. (It was reporting one less, which truncated all files, and broke Sw.stm because it only has a single order.)
  • STM reader ignores samples which are shorter than four bytes or
      have a default volume of zero. (Acidlamb.stm)

2006-10-08 03:51 UTC - kode54
  • Added CP437 graphics to text conversion functions.

Please note that Boom.stm and Bro.stm are both truncated and therefore broken. Although Bro.stm is less broken since it's only missing 8 bytes from the last sample, while Boom.stm is missing a good portion of the second to last sample, and all of the last sample.

foo_dumb

Reply #177
Is it a necessity to refuse broken Boom.stm and Bro.stm? Would allowing these to load break something else in foo_dumb or did you decide against it in favour of stability and security? I'm asking because every other application supporting STM-modules that i have tried did load these without stability issues, e.g. Screamtracker2, Screamtracker3, Schismtracker, BeroTracker Impulse, OpenModplugTracker.

Note: With the current update foo_dumb chokes on the resaved Acidlamb!.stm while it plays the original Acidlamb.stm just fine.

foo_dumb

Reply #178
Is it a necessity to refuse broken Boom.stm and Bro.stm? Would allowing these to load break something else in foo_dumb or did you decide against it in favour of stability and security? I'm asking because every other application supporting STM-modules that i have tried did load these without stability issues, e.g. Screamtracker2, Screamtracker3, Schismtracker, BeroTracker Impulse, OpenModplugTracker.

It's not so much stability issues as that the files will not play as originally intended. While Bro.stm may not sound far off with eight samples missing from a one-shot sample, Boom.stm is missing a whole sample. Strangely, I can only find this file in some obscure format, but not STM.

Note: With the current update foo_dumb chokes on the resaved Acidlamb!.stm while it plays the original Acidlamb.stm just fine.

Both work here.

I just uploaded another version, this time to fix a minor issue with pattern loops, which would break length probing of any file that had a pattern loop start on the first row of the first order of the song, but reset the loop start position on a later row before actually executing a loop. (Belfastu.it)


foo_dumb

Reply #180
Yes, but Acidlamb!.stm plays out of rhythm. Happens also with latest update.

I didn't really check that one until you mentioned the problem. Whatever originally created it marked several samples as non-existent by setting their default volume to zero, and whatever you used to resave it didn't catch that. So, the sample data shifted around to fill in the non-existing samples, and the missing data at the end was presumably filled in with silence. So, another broken file.

foo_dumb

Reply #181
... and whatever you used to resave it didn't catch that.

Screamtracker2 v2.30.


And once more:
Quote
Strangely, I can only find this file in some obscure format, but not STM.

Where can i access that file to take a look at it?

foo_dumb

Reply #182
jumping under trees.it : Order 00, Channel 04, a Trumpet falsely plays until the end of Order 05 (a forgotten virtual channel?) when it should have been silenced at the end of Order 00.

Foo_dumb v0.9.8.1/Foobar2000 crashes when trying to load this Impulsetracker (v2.07) module.


Strangely, I can only find this file in some obscure format, but not STM.

You still haven't answered where can i access that file (obscure format of Boom.stm).

foo_dumb

Reply #183
jumping under trees.it : Order 00, Channel 04, a Trumpet falsely plays until the end of Order 05 (a forgotten virtual channel?) when it should have been silenced at the end of Order 00.

The note is cut off by a note which references an instrument using an invalid/non-existent sample. This should cut off the note now.

Foo_dumb v0.9.8.1/Foobar2000 crashes when trying to load this Impulsetracker (v2.07) module.

This file references a zero-length sample, which DUMB in turn sets to a sample rate of 0. A change I made a long time ago in the code above may have had something to do with this crashing, as the zero-sample-rate note managed to get all the way to the resampler, which crashed dividing by zero. Even if a sample like that manages to get so far in the future, it won't make it far enough to crash.

I also took the liberty of bumping the version number a bit again, since I've accumulated so many random bug fixes since the last version bump. Woot.

Strangely, I can only find this file in some obscure format, but not STM.

You still haven't answered where can i access that file (obscure format of Boom.stm).

You can find the file at this page, but I have no idea what format it is, or how to play it.

foo_dumb

Reply #184
Strangely, I can only find this file in some obscure format, but not STM.

You still haven't answered where can i access that file (obscure format of Boom.stm).

You can find the file at this page, but I have no idea what format it is, or how to play it.

You mean Boom1MusicAntP.asc? It's an ASC Sound Master file, you can play it with AY Emul.


foo_dumb

Reply #186
Elemental Warriors, one of the few timeless (memorable) 669s, by Kenny Chou (C.C. Catch).

With the most recent foo_dumb 11/1/06, volume ramping/porta is just wrong.  Noticable in the intro, as well as breakdowns (pattern 17 for example) - sorry, but I'm not capable of running COMPOSR669 to get an exact dump. 

Elemental Warriors 669

foo_dumb

Reply #187
I am finding ImpulseTracker Modules showing up as v2.16. Most sound fine, but I am finding some that sound wrong in that some samples aren't playing for are being limited to higher frequencies only.

One example would be ""neotone note" by krii & distance" and another would be "only for you (friday mix)" by krii and wesi

Core (2006-11-25 08:21:34)
    foobar2000 core 0.9.4.2
foo_dumb.dll (2006-10-31 16:52:52)
    DUMB module decoder 0.9.8.2

EDIT: changed links to files that work as is.

foo_dumb

Reply #188
Another Impulse Tracker issue with latest foo_dumb, foobar2000 0.9.4.2 combo: Child of Space causes foo_dumb to die on load; I just loaded it OK into IT.

Soba, there's a long history of Impulse Tracker's 'random changes without documentation' that Lim has done.. if they're all identifying as 2.16, it's going to be using the 'very latest and greatest' changes, when if it's an older mod format and is corrupt, or was loaded, then subsequently saved in the new format, it will experience exactly these issues.

By coincidence, I've just been going through TextFiles' .ITs, and can happily report that it is showing them as the proper release.

foo_dumb

Reply #189
Nowhere.it by Ballistique crashes Foo_Dumb, used to work previously.

 

foo_dumb

Reply #190
...used to work previously.


Hey Deus!

I haven't forgotten about uploading more stuff.. I'm just in another country and the internet is pretty sketchy.  I'll setup my system to try to upload more as time permits.

Kode54, thanks again for foo_dumb!

foo_dumb

Reply #191
I haven't forgotten about uploading more stuff.. I'm just in another country and the internet is pretty sketchy.  I'll setup my system to try to upload more as time permits.

Hy neptho.

That's good to hear. I feared you had lost interest since it took quite a (unusual) long time for Coma to add your first upload. It happened that he was very occupied with his job at that time, but things have calmed down meanwhile.

foo_dumb

Reply #192
Here are the files in the Mod Archive's end-of-year-2006 update ZIP which don't load in foo_dumb:

new.zip, 734 KiB, 20 .xm and 1 .s3m

And here are the ones which I've reported earlier, but still aren't fixed nor have received comment, just in case they've been forgotten about:

it.zip, 1.40 MiB, 3 files
s3m.zip, 3.64 MiB, 17 files
xm.zip, 7.08 MiB, 14 files

In addition to that, are there any plans on supporting the sample compression used in some Impulse Tracker files in foo_dumb? (I've reported issa.it and sj-kboar.it as problematic due to this lack.)

P.S. http://kode54.foobar2000.org/ doesn't list STM in foo_dumb's supported extensions list.

foo_dumb

Reply #193
Foo_Dumb refuses to load the module egx-205.xm as beeing corrupted. When resaving this SkaleTracker XM-module with Fasttracker2 it is accepted by Foo_Dumb. XMPlay and MilkyTracker handle the SkaleTracker version fine, though.

Issues reported in Posts #186, #187, #188, #189, #190 and #193 yet remain unsolved/unanswered.

foo_dumb

Reply #194
2.it

foo_dumb detects two subsongs instead of single song. Probably due to empty pattern.
Sharing delusions since 1991.

foo_dumb

Reply #195
2007-01-24 09:37 UTC - kode54
  • Version is now 0.9.8.3.
2007-01-24 08:34 UTC - kode54
  • Implemented 669 effects properly.
2007-01-23 17:42 UTC - kode54
  • Fixed IT reader decompression to support compression+delta on files created with 2.15 or newer.
2007-01-22 16:40 UTC - kode54
  • Fixed MOD loading step in case any files fall through another loader first. (if asked twice.mod)
2007-01-21 19:47 UTC - kode54
  • Extended the volume ramping to include a bit of fixed ramp down on one-shot and sustain looped samples. (egx-205.xm. Let me know if this breaks anything, heh.)
2007-01-21 17:43 UTC - kode54
  • XM reader now ignores sample header length, as various files have this filled incorrectly. (egx-205.xm)
2007-01-21 14:21 UTC - kode54
  • Fixed a bug in renderer that would cause it to crash on any IT files which referred to an instrument number which was out of range in any used pattern. (x_child.it, Nowhere.it)
2006-12-26 06:41 UTC - kode54 (Woot, stealth update)
  • Fixed sample rate reporting for when extra dynamic info is turned off.
Current foo_dumb fails to load if asked twice.mod which used to work previously.

Oops, the new 669 signature check was passing on this file, then the respective loader failed, but the top level load function wasn't resetting the file pointer to the start before passing it to the MOD loader.

Elemental Warriors, one of the few timeless (memorable) 669s, by Kenny Chou (C.C. Catch).

With the most recent foo_dumb 11/1/06, volume ramping/porta is just wrong.  Noticable in the intro, as well as breakdowns (pattern 17 for example) - sorry, but I'm not capable of running COMPOSR669 to get an exact dump. 

Elemental Warriors 669

Effects were completely broken, in fact. I finally dug up a copy of Composer 669, and while it's not the last version released, the document does explain how effects work. Basically, one effect command runs until a new note or effect command is triggered. I also found a file which stopped portamento by issuing another portamento command with a value of zero, so that's another feature. Fixed portamento up and down also seem to be at half the speed of MOD/XM/IT/etc, at least judging from order 18 of Flux/sober.669. Fun stuff.


I am finding ImpulseTracker Modules showing up as v2.16. Most sound fine, but I am finding some that sound wrong in that some samples aren't playing for are being limited to higher frequencies only.

They show up as the format version number saved in the file. If you want the version of the tracker that saved the file, check the tech info.

As for the samples, it was a problem with the loader, which assumed compression plus delta encoding was only used by 2.15, and always enabled. Judging from these files, it would seem that newer versions can save samples like this, and marks them with an extra bit in the conversion flags. ModPlug, or at least Open ModPlug, appears to lack the code to produce IT 2.xx compressed samples, so it wasn't used to produce the samples as far as I know.

Another Impulse Tracker issue with latest foo_dumb, foobar2000 0.9.4.2 combo

Nowhere.it by Ballistique crashes Foo_Dumb, used to work previously.


Owned by illegal instrument number in pattern data. The code which handles instrument pitch pan wasn't checking that the instrument selected by the current channel was valid, so when pattern data contained values greater than the number of instruments present in the file, or perhaps missing instruments between the valid ones, it would crash. This code was also present in DUMB 0.9.2 and perhaps older versions, so I'm surprised it didn't show up sooner than a month ago. Speaking of which, I had a crash log from a friend, which was quite useful in locating the exact function, but I sat on it for a month. Meh.

Here are the files in the Mod Archive's end-of-year-2006 update ZIP which don't load in foo_dumb:

Oops, waited too long for these and they've been removed.

In addition to that, are there any plans on supporting the sample compression used in some Impulse Tracker files in foo_dumb? (I've reported issa.it and sj-kboar.it as problematic due to this lack.)

This is probably covered by the above sample compression fix.

P.S. http://kode54.foobar2000.org/ doesn't list STM in foo_dumb's supported extensions list.

Oops, forgot to add this, as well as J2B, DSM, and ASYLUM AMF.

Foo_Dumb refuses to load the module egx-205.xm as beeing corrupted. When resaving this SkaleTracker XM-module with Fasttracker2 it is accepted by Foo_Dumb. XMPlay and MilkyTracker handle the SkaleTracker version fine, though.

The sample header length field in the instrument header is supposed to contain 0x28, the fixed size of a sample header block. Instead, it contains 0xD6, the number of bytes remaining in the instrument header, including the length field. Oh well, the XM reader indicates that there have been files with zero in this field even in proper samples, so I've taken to ignoring it completely.

Issues reported in Posts #186, #187, #188, #189, #190 and #193 yet remain unsolved/unanswered.

No, I don't put things off for days, weeks, months, while I let video games demolish my abundant free time. No, sir.

foo_dumb

Reply #196
Awesome! Thanks, kode54.

foo_dumb

Reply #197
Ahh, finally. That was a long dry road till the next relase.

Just today it happened that i played mirage.it by Chris Jarvis after a long time again and noticed that beginning at Order 23 there is a sample which continues to play during the following Orders when it shouldn't. I just rechecked with the current release, the issue still remains.


I finally dug up a copy of Composer 669, and while it's not the last version released, the document does explain how effects work.

I have uploaded the most recent versions i was able to find of every important Tracker/Player for DOS and Windows platforms to MODLAND. All were repacked to RAR, with useless stuff not belonging to the application  removed (e.g. obsolete Board addvertisment).
For instance, Composer v1.3 is available here.

As for format documentations, i gathered a well of documents with an eye on most recent versions as well.
Composer 669 format descriptions: 1. and 2.


I don't put things off for days, weeks, months, while I let video games demolish my abundant free time. No, sir.
Hahaha, no problem, sir. Well deserved. 

foo_dumb

Reply #198
Ahh, finally. That was a long dry road till the next relase.

And now another quick release!

2007-01-26 23:42 UTC - kode54
  • Moved IT S70-S72 effects handling so they are processed after paired notes. I'm not even sure why I was handling those where I was in the first place, other than some comments and/or skeleton code that indicated that's where it was planned to go. Fixes mirage.it, which had notes hanging from as early as the third order. Oh, and it reduces the max channels required by spx-bubbles.it to just below 256. Yay.
  • Optimized volume ramping so there's less overhead on new notes and note cuts. Man I feel stupid for how I originally designed this.
  • Volume ramping on new note and note cut is now relative to the sample rate, with 0.75ms for quick/logarithmic and 5ms for linear. I really need to rethink this naming scheme, since the only thing that's logarithmic to go with that label now is fixed down ramping on one shot samples.
  • Integrated pattern looping changes from DUMB 0.9.3 that I initially avoided. This seem to fix Chip a'Choup 01.mod, although it was backfiring since it originally applied FT2 bug/behavior to MOD as well.
  • Implemented a SSE optimized version of the IT resonant filter function, which ended up twice as fast. Although in practice, at 44100Hz, the end result is up to 20% faster playback. Your mileage may vary, etc.
  • Version is now 0.9.8.4.

Just today it happened that i played mirage.it by Chris Jarvis after a long time again and noticed that beginning at Order 23 there is a sample which continues to play during the following Orders when it shouldn't. I just rechecked with the current release, the issue still remains.

Thanks for spotting this. The issue stood with the S70-S72 background note cut/off/fade effects, which were triggering before the notes they were paired with, so they would miss the last foreground note to play before the effect. The hanging notes just happened to have their envelopes turned off.

I have uploaded the most recent versions i was able to find of every important Tracker/Player for DOS and Windows platforms to MODLAND. All were repacked to RAR, with useless stuff not belonging to the application  removed (e.g. obsolete Board addvertisment).
For instance, Composer v1.3 is available here.

Yeah, thanks.  I kind of just used Google instead of checking modland. Mainly because I wasn't aware of their collection of trackers, or the speedy mirror.

As for format documentations, i gathered a well of documents with an eye on most recent versions as well.
Composer 669 format descriptions: 1. and 2.

Yeah, that second document is bundled with Composer 669. The first one isn't so useful, and is even misleading, suggesting that the effects are directly mapped from Protracker. I'm not sure of any players which handle the effect on/off behavior correctly. Even Impulse Tracker fails at perfect effects conversion, but then at least it tries to repeat the effects within patterns. Catching effects which run across pattern boundaries would require extra processing, and pattern duping for any reused patterns which are altered for effects. And then there's portamento up and down, which either have a different sensitivity, or don't run on the same number of ticks per row, or something. Hmm...

I don't put things off for days, weeks, months, while I let video games demolish my abundant free time. No, sir.
Hahaha, no problem, sir. Well deserved. 

I'll try not to lag behind so much, although I can't guarantee anything even with abundant free time. Sometimes I'm inspired to actually fix things, or better yet, implement new features, or optimize old features.

foo_dumb

Reply #199
Just a small question to a "newbie" like me:
Is it possible to implement the tfmx modules within this plugin? 

I searched through the whole foobar forum and couldn't find any relating thread. I know that there was an tfmx plugin for the old foobar 8.? version.