[solved/fixed] Crash with scl to xrni tool

I was trying to be clever and make my own scl tuning file but it just crashed Renoise when I tried to use it.

I’m running Mac OSx Mavericks with Renoise 3.0.1

Steps to reproduce:

  1. Apply this tuning file to a sample using scl_to_xrni tool

Other .scl files seem to work ok and I’m not sure why my custom one doesn’t they are just text files with note hz values, maybe I’m doing something wrong but still, it shouldn’t crash.

The first thing I noticed is that your .scl is not actually formatted correctly according to the standard file format, as described here: http://www.huygens-fokker.org/scala/scl_format.html

The first non-comment line should be a description. If you provide no description, then it must simply be a blank line.

The second non-comment line should be an integer describing the number of tunings in the file. In your case, 10.

Also, it’s not strictly necessary, but I think it’s good practise to represent exact cents values with a trailing decimal place, even if it is simply a zero.

So I first tweaked your scale file to look like this instead:

! dimtetacopy.scl
kickass scale by afta8

However… It still crashed, haha.

Upon further inspection, I see that your file was using Mac style line endings. This of course makes sense given that you’re on a Mac, but for some reason this seems to be (partly?) responsible for the crash. If I re-save the file with either Windows or Unix style line endings, then it loads quite happily.

The crash log does reveal some more details that we’ll have to investigate more closely.

For the moment, you can at least tweak your .scl file and get it to load.

Thanks dblue, got it working using the Renoise scripting editor… didn’t know mac style line endings were a thing!

The crash should not happen with 3.0.1. Problem is that the tool spits out an error in a coroutine: http://forum.renoise.com/index.php/topic/42702-fixed-301-lua-api-crash-with-error-in-coroutines-processslicer/

Regarding line-endings: This breaks scl parsing here because Lua’s io.lines implementation does not support Mac styled line endings: