For Windows
Home Music 3D Art Utilities Source Code Search Site Forums About Me Contact Accessibility
Overview of Tune Smithy
Download Tune Smithy
Lambdoma Music Therapy
Lissajous patterns
Microtonal Explorations
Retune music keyboard
Microtonal features for composers
Retuning Midi File Player
Microtonal Scales and Tunings
Metronome for Rhythms and Polyrhythms
Chord Player
Play & Create Tunes that play endlessly
Musical e-cards
Mouse & PC keyboard music
Mouse & Joystick Theremin
Audio Pitch Tracer
Sounds Harmonic Analysis
Chord Synthesis
Waveform Player

Bug fixes
up to December 2003

FTS upload December 21 (UK time)

When you resize one of the windows that lets all its items resize with it then rather than just do it once, it was redoing them all several times with a lot of activity on the screen - fixed.

The new option to suggest a keyboard mapping had a few bugs in it which showed up with some of the scales and arpeggios - fixed now.

The Lissajous 3D screen saver stopped whenever it ran FTS to make its background music. There it was a simple thing - FTS runs minimised rather than hidden and remains visible for a short time after the screen saver stops. This lets you restore it if you want to save its latest randomised tune - that is okay but the minimised icon mustn't be highlighted ("activated" in Windows jargon), which it was also doing, as that stops the screen saver immediately. Fixed.

FTS upload December 18 (UK time)

When you use the pitch bend wheel to retune a chord with many pitches in it all changing in pitch simultaneously and with the notes resounding at different points in the slide and using custom voices, then notes can get stuck on or get out of pitch with each other - fixed.

Some other minor fixes in the GUI - things not updating immediately when you change settings, and a couple of check and radio boxes that didn't appear to do anything when you clicked on them, that kind of thing, can't remember all the details now as I just fixed them immediately as soon as I noticed them.

FTS upload December 11 (UK time)

Some of the new voice menus played patches that were out by one - the ones with voice numbers starting from 1 instead of 0 and with the PatchAt syntax for finding the instrument numbers in the file - fixed.

The retuning midi player may play with an irregular rythm if you have a p.c.keyboard window showing at the same time, possibly also even if it wasn't showing. When it was visible, the problem was that it was repeatedly refreshing the display for the p.c.keyboard window - fixed.

If you play from the PC keyboard at the same time as the retuning midi player simultaneously you can get thread lock - program stops responding. Fixed that.

Then to make sure it doesn't stop responding because of thread block again, it has a thread block tester which will now automatically free the situation after a half second or so, if this type of thread block does recur (had it already but it wasn't working in all possible situations before). Hopefully won't occur again anyway and I have set the threadblock tester to pop up alerts in the debug build so if it happens there I will find out and fix it.

Thread block can happen if you have several asynchronous things going on (playing tune, and working with GUI to play another tune from PC keyboard say) and the program needs to make sure that the various events from the different threads don't get in each other's way - you can sometimes find yourself in a situation where two parts of the program are each waiting for the other to move, or even where part of the program is waiting for itself, and so gets blocked. It then waits for ever and so stops responding. That is what was happening here.

FTS upload December 4 (UK time)

If you play the chord progression plaer and simultaneously play from PC keyboard then FTS seizes up and stops responding. This was because of thread lock - fixed.

File | Save As brings up your newly saved file in an unaddressed e-mail. That is because it was doing Save As And E-mail by mistake, sorry.

Chord progression player wasn't responding to F11 to stop all play. Also it wasn't resonding to Alt + P to play the tune from the main window (played a fractal tune instead).

If you set the Arpeggio to not show 0s in one of the other views, then in the chord progression player view it doesn't play the chords properly - fixed.

Bs | Scales Options | Mean Tone Scale - doesn't explain well what the octave stretch is. One might well assume that it stretches all the notes, but that isn't how it works here. Rather it increases the size of the "octave" interval of repetition that the scale gets reduced into. So you need to adjust the comma as well as the octave shift if you want a stretched scale. Improved exposition of this.

The section on roman numerals for the chord progression player was very poorly expressed I felt - hopefully a bit better now. Other small improvements in the GUI.

4th December

In the roman numerals notation, vii and VII should have diminished fifths (tritones) and were playing perfect fifths instead - fixed.

The Cj and Ck7s were identical and both had a 9/10 for teh seventh instead of 16/9 and 9/5 respectively - fixed

The u for undecimal notation had no effect.. Anyway now it is used for undertones, and to get undecimal you now need to use ud as in Cud7.

If you go to File | Open and browse to the FTS Extra Shortcuts folder then choose to show all the files there to find out what is in it, and choose to open one of those files, nothing happens, which may seem puzzling. The reason is because it is a .lnk shortcut, a file type which was not recogised by FTS for opening. So now it will start up the shortcut if you open it in that way. E.g.if you open the chord progression player shortcut via that route from within FTS, it will start up another copy of FTS as a chord progression player. Actually if you open any shortcut from File | Open in FTS, it will now start up whatever app that shortcut points too, and with the arguments specified in the shortcut.

29th November

This bug shows up in the chord progression player, when you choose Retune scale to chord roots with a scale with more notes in some semitones than others. Example: start with conventional just intonation and then add in many shades of third such as 7/6, 9/7, 11/9 etc so that part of the scale has two or more notes per semitone. Then the chord plays in tune but gets rotated around to unexpected positions, maybe the E will be a 4/3 or some such. It happened because the way it worked out how many scale degrees are needed to rotate the scale to the desired position assumed the notes were more or less evenly distributed - fixed.

Before there was a limit on how small you could make the scale steps for equal tempered scales for the chord progression player of 0.01 cents. Now you can use an equal tempered scale with the steps pretty much as small as you like, e.g. 0.00001 cents - fixed

The File | Unlock entry was shown as File | User Info for users who haven't bought the program yet - fixed.

24th November

The musical e-cards weren't showing the desired fonts - fixed.

14th November

Out | Notes In Play | Refresh for Note Offs - even when unselected still refreshes the window when the notes get switched off for the chord progression player and chord / arpeggio / scale playing - fixed.

The just intonatiion retuning with diesis shifts sometimes causes unnecessary diesis shifts. It happens because sometimes it finds an interval of a 6/5 say with a previous chord when it could have found an octave or unison - fixed.

This only deals with some of the diesis shifits. The reason is that it can't look ahead of course, and that may be needed on occasion. Nor is it very good at looking back as it only looks back two chords and a note four chords back may be just a quarter note or so away and the diesis shift from those notes may be very noticeable too. I may later be able to do something about the look back, so it can look back a bit further. But look forward is of course only possible with leisure time retuning.

Incidentally the order in which the notes in a chord are played is important for the diesis shifts as the first note played sets the pitch for the entire chord. So if you want to ensure that a particular note in the next chord gets tuned with the previous chord, then if possible make sure it is played first, e.g. by adding a very short tied grace note before it so that it gets played say a millisecond or so before the other ones in the chord. But sometimes there will be no way one can ensure that is played at the best pitch except by rewriting the piece.


Previous chord
C D tuned as 1/1 9/8

Next chord:

If the A is played first it will tune it as 10/9 5/3 perhaps, so the D then will be diesis shifted. Might even be a broken chord with the D delayed for a beat or two.

Here is a recording of this comma shift as adaptively retuned in FTS:


If on the other hand, the D is first in the new chord, it will tune the A as 27/16 which is surely what one would desire.  

Only leisure time retuning can ever hope to get the best solution available for this one too.

Could also have larger shifts than this too.

E.g. C Eb then Eb F#. Then play A C. If played as a slightly broken chord in that order it will play the A a minor third above the F#, and the C of course at a pure minor third above the A, so it will get shifted in pitch by a major diesis from the original C which is a really noticeable shift.

Here we go - real_time_adap_ji_diesis_shift

The two loud notes are both supposed to be the same note, C. But the strict just intonation adaptive tuning more or less forces a diesis shift of nearly a quarter tone between them - unless one could look ahead in which case one would know that the second one is on its way and be able to plan in advance for it with the pitch of the preceding A. There is just no way , looking at the progression up to that point. to know where it will go next. Maybe the F# is the important note and no C will be heard again for many seconds.

Once again it is clear the final solution has to be leisure time retuning to get the best possible results. As observed before, with comma pumps and the stacked major or minor chords, some diesis shifts and comma shifts are inevitable in strict adaptive j.i. But leisure time retuning could minimize the number and sometimes eliminate them entirely or shift them around in the piece to make them less obvious.

11th November

Out | Just Intonation Retuning | JI Pitch drift and chords | Log to text

This logs the text to a file. It could already do that but I forgot to put the button here, so I suppose this would count as a bug fix.

If you run the installer when FTS is already running you get an Abort Retry Ignore type message. Fixed - now option pops up to close FTS so that the install can continue. Was doing this before but had got disabled somehow.

If you enter a scale as e.g. 0.5 for 0.5 cents then it gets recorded as the unison scale 1/1 1/1 - fixed. (the last number in the 0.5 was getting ignored in this situation).

Preset rhythm for the chord progression player is missing its first beat - fixed.

10th November

Sorry, the Out | Retune to j.i. harmony had got disabled in a recent upload, only worked if you set it to play on several midi out devices at once - fixed.

Some of the links in the help contents list (left hand pane in the help window) open up in the contents pane rather than in the help pane - fixed.

8th November

Various bugs to do with data entry for the rhythm for the chord progression player and how it treated bar lines and punctuation. - all fixed

Also if you enter 0 (zero) for the rhythm instead of O (capital O) it interprets it as a note of zero length. Since the two are visually identical then this is confusing. So it now treats both as a quarter note. If perchance you do want a note of zero length, then add a decimal point 0.0 (perhaps not so likely anyone will but who knows...). - fixed.  

Also if you have it set to pause before note ons after patch changes from Out | Options | Midi Out / Save Timings then this pause gets applied at the start of the progression and shortens the first note played in the progression - fixed  

6th November

The Extra Chord Symbols window was buggy and not working as expected - fixed.

The cycle endlessly check box for the chord progression player doesn't register anything when you check it (actually it did switch on / off but there was no indication of that except to play the progression and see what happened) - fixed.

The Save Extra Chord Symbols check box didn't register anything and didn't do anything in the player window - fixed.

Timing of the first note in the progression was a bit temperamental. May be fixed now but if not try selecting Out | Open Now before you play the progression for the first time, play, wait a bit, then try again.

Also if you had nothing at all in the Rhythm field, and Set rhythm selected, then it didn't play a regular beat - fixed.

3rd November

When you show the current scale in SCALA it changes the current directory for FTS to the SCALA one too so that if you then go to File | Open you will find that you are browsing the files in the SCALA folder - fixed.

2nd November

This fixes a bug with the just intonation retuning - if you use it to retune from a keyboard with the pitch bend wheel adjusted away from concert pitch it doesn't work correctly - fixed.

31st October evening.

Quite a few of the chords still not right - sorry. Should be okay now - fixed.

Here is a clip of some of the ones it can play, with others possible following the same patterns:



C, Cm, Csus2, Csus4, Cadd2, Cadd9, Cadd4, Cmadd2, Cmadd9, Cmadd4, Cadd2add4, Cmadd2add4, Caug, Cdim, Cdim7, C5, C6, Cm6, C6/9, Cm6/9, C6/7, Cm6/7, Cmaj6/7, C7, Cm7, Cmaj7, C7sus4, C7sus2, C7add4, Cm7add4, C9, Cm9, Cmaj9, C9sus4, C11, Cm11, Cmaj11, C13, Cm13, Cmaj13, C13sus4, Cmmaj7, CmM7, Cmmaj9, CmM9, C7#9, C7b9, C7#5, C7b5, Cm7#5, Cm7b5, Cmaj7#5, Cmaj7b5, C9#5, C9b5, C7aug9, C7dim9, C7aug5, C7dim5, Cm7aug5, Cm7dim5, Cmaj7aug5, Cmaj7dim5, C9aug5, C9dim5. (some are repetitions of the same chord spelt differently).

Be sure to let me know if you have any symbols to add - or if you happen to notice anything not right in the list indeed.

If you start a midi file recording before playing any notes in th session, then you get the resets at the head of the file such as setting the midi pitch bend range done twice - once when the recording starts, then again when Midi Out is opened - fixed.

When you remake all the Scala related files, some of the lists of modes don't get given links to the lists of modes for presets scales - fixed.

31st October

The notes for the polyrhythm metronome were getting panned back and forth as they played. This was caused by the controller messages getting out of order because of some code to make sure all the notes for each beat get played crisply together at the same moment of time - fixed

- Well it depends on your midi device. Some set the pan value for a note to whatever value it was when the note was played and if it does that then should work fine to have several notes in the non melodic percussion channel simultaneously with different pan values. Otherwise you may need to switch off the panning of thenotes for the metronome, and there is nothing one can do about that if it is the situation. Alternatively - use melodic instruments as they can be played on any channel apart from the non melodic percussion one so the problem of having simultaneous notes differeing in the pan controller value in the same channel doesn't arise.

When you show the polyrhythm metronome player you may get a message that a file is missing - until you edit the drop list. Anyway it is fixed now. Also a visible square blob in the window above the volume bar was removed.

30th October

Various bug fixes for the chord progression player chord translation - particularly for the roman numerals notation, some of the chord symbols were ignored or treated as identical to other ones - fixed.

Theremin - if pitch of 1/1 is shifted from concert pitch and you choose to show lines for the scale note positions, it doesn't show them in the correct positino on the window - fixed.

Lambdoma view | Show Freq not showing the check mark when you select it - fixed

Bs | Tempo and Volume for Tune | Vary timing by seed Pos - the Vary To field wasn't doing anything - the amount it got speeded up or slowed down was instead set to be the same as the Vary most at field. Fixed.

24th October

If you play FTS along with Lissajous 3D running and set so that the shape changes in response to FTS chords, and then just play from the PC keyboard without playing a fractal tune, the shape changes don't happen. (FTS wasn't checking to see if LJ 3D was present or not in that situation so didin't send it any information about the chords you play - this bug got introduced with the speed optimisations in FTS a few weeks ago) - fixed

22nd October

Was ignoring notes relayed from the non melodic percussion channel - fixed.

21st October

When you change the scale selection in the midi relaying views, with Sync Arp selected, the selection of arpeggio should reset to the appropriate Major scale or Diatonic mode in the list of arpeggios, so that it will be suitably tuned when playing the arpeggio from the white keys - but wasn't doing that - fixed.

When you change the scale selection, with Sync Arp selected, may get an access violation on rare occasions - fixed.

17th October 2003

Some midi clips with key signatures in them may not play correctly in the retuning midi player, also the hex dump for them from FTS may not display correctly. What it is is that I hadn't realised that you can have just the number of sharps or flats and leave out the field which says whether it is a minor or major key, so the event can be shorter than expected. The meta event includes the length of the meta event as its first field, but I had just ignored that thinking the length wouldn't vary. Similarly with all meta events now the length gets read, just in case - fixed.

Various bug fixes with the new adaptive just intonation option. Mainly, they were preventing it from tuning very well when the pitch drifted far from its original position.

Fixed a bug that could cause notes to get clipped short when there are in fact channels in play for them to play in - only affects midi clips with much changing of pitch bends as they continue, so showed up with the new just intonation adaptive tuning, particulary when I tried it with a really challenging midi clip, fast with many notes and pitch changes - fixed.

15th October 2003

All sound offs abruptly clipping the end of some of the notes in the flute part in the CPE Bach retuned piece - could have had similar things in other pieces - result of not using the channels for the pitch bends as efficiently as it could so that it was needing to change the pitch bend immediately in a channel that had just played a flute note, rather than use one of the channels with no notes in play - fixed.

10th October 2003

Oops - last upload I switched off the sound for the PC keyboard by mistake - fixed.

6th October 2003

 When you relay from another program (not likely to happen with midi keyboard), if it sends two identical note ons at once in the same midi in channel then FTS plays them both, but can only switch one of them off, and so you get a stuck note. Fixed - well - now FTS doesn't attempt to play both in this situation, so at least you can hear the music without stuck notes.

In some of the fractal tunes - such as Ascending above the clouds - if a sustained note in the accompaniment is for the same pitch as the melody line then it may get cut off - fixed.

3rd October 2003

View | Player | Theremin Opts | Full screen window - the theremin plays fine but doesn't show anything in the window - fixed.

View | Midi Keyboard Retuning | Scale Retuning - things to do with the interface needed attention (see What's new ) - and I think there were some bugs too - at any rate, didn't work too well in practice. - fixed.

1st October 2003

If you show an Arpeggio window (or Seed or Scale window), after playing a note in it, then you may find that from then on until you change the scale or arpeggio or otherwise change the pitches to be played, all notes may get played without pitch bends, i.e. in twelve equal, even though they are shown as pitch bent appropriately in the Notes in Play window. Could happen in other situations too. Didn't affect midi files saved as you play.

Why it happened: The pitch bends were getting sent as desired, but then they all would get anulled by a reset routine which was called when the notes get switched off when you change the keyboard focus away from the Arpeggio window. Then later notes would get played without pitch bends on assumption that they were okay. Fixed.

Retune to Just Intonation chords (comma shifts) - was retuning to a small interval like 9/8 when you play it ascending second but not when descending - Fixed.

Same option - not retuning when you play from PC keyboard - Fixed.

Also with the new the Retune to Just Intonation - after you switch it on, if you switch it off again you find it is still retuning to 5 limit j.i.! - Fixed.

File | Number Options | Ratios - when you use the option to show approximate ratios with a tolerance of so many cents, the ^ notation to set a maximum power wasn't working as it should. E.g. 2^6 3^4 should show 400.0 as 81/64, while any smaller value for either exponent should show it as 400.0. Fixed.

If you show the Note Played window before any notes have been played, then you get a handled exception. Fixed.

29th September 2003 - just a few minutes later

This is a very minor bug fix. Probably no need to redownload if you have just got the last update of a few minutes ago.  

Symptom: If you select one of the Just Intonation type options again when it is already selected, then it changes the check state for Retune to Just Intonation chords (comma shifts) even though you aren't selecting it yourself - selects or unselects it as a side effect. Fixed.

The confusion arose because originally the Just Intonation types were all toggle on / off options, so they got switched off if you selected them a second time, but I think this approach is clearer.

So - the way it works now is that when Retune to Just Intonation chords (comma shifts) is selected then it retunes to just intonation (preset to 5 limit normally), then the type of just intonation is set using the Just Intonation type menu. Then the type you have chosen remains selected there when you switch off the just intonation retuning - so you can switch it on / off and it remembers your preferred type from last time you did it, which I htink perhaps is the approach most useful to the user.

Incidentally later I will probably make a proper window for this option where you can if you wish set all the individual intervals that you would like to have justly tuned (to within octave equivalence). It may also get integrated wtih the chords in some way; not sure how yet.

29th September 2003

Symptom: Midi files saved from FTS may cause midi players to crash when played.

This happens when Files | Midi File Options | More Options | Microseconds per beat somehow gets set to 0. The midi file gets saved with a tempo indication of 0, and this causes the players to crash with a divide error - probably because of a divide by 0. This bug also causes all the times in the midi file to be saved at a value of 0 because with tempo 0 there is no time increment to use to record the times. So any midi files saved with this setting are unrecoverable - sorry about that!

Fixed - now whenever a value of 0 is found for the tempo then it resets to the standard values. 250 is normal for the ticks per beat, and 500000 for the microseconds per beat, so you have a beat every half second (metronome mark 120) and 250 midi ticks time resolution for each beat, i.e. 500 midi ticks per second. If one wants to vary that then it is done in the More Options window.

Symptom This window also was missng the box for the metronome mark field - Fixed.

Symptom: When you play the chord progression using the play button in Bs | Seed Options | Arpeggios as Chord Progr. then the last chord gets left out. Also if you have it set to play chords then other chords in the progression may have missing notes - Fixed.

Symptom: In Bs | Seed Options | Arpeggios as Chord Progr, if you have it set to play chords (from the double quaver play button) rather than sequences or broken chords, then some of the chords in the progression may have missing notes - Fixed.

Symptom Also in this window - when you choose the option to retune the tonic to the chord root, this works when the progression is played in the main window fractal tune but when the chord progression is played using the play button in this dialog it doesn't retune the tonic - Fixed.

Symptom: A couple of the help files just showed garbage when you opened them in your browser. The reason was that the html source code had somehow got saved in rich text format instead of plain text, which of course the browser wouldn't expect - Fixed.

25th September 2003

Parts | Shift by arpeggio degree wasn't functioning as it should. It should shift all the notes up a particular number of degrees in the arpeggio.

Instead it was functioning more like Parts | Shift by arpeggio degree as modulation - but with a bug in it too so really it wasn't retuning to anything particularly.

Normally on discovering something like this which will affect the way the tunes play, I would add it in as a new option and get FTS to auto-update previously saved files that use it. Here, I'm assuming those who tried it out found it buggy and so no-one has used it. Be sure to let me know if you do need it for a tune you have saved or something and I'll re-instate this bug as a feature so that you can continue to play your files. I'd normally do that anyway but haven't here as it seemed quite possible that no-one might have used it at all.


23rd September 2003

The new I, V, IV , ii etc notation of the last upload wasn't working as it should - read everything as I! Sorry about that - fixed now.

20th September 2003

This time a major bug fix for the MFX plug in - it was only retuning notes well if monophonic in each channel, and was frequently cutting off extra notes in chords in longer passages of music. Now works fine.

For those curious about the details: the problem was caused by note offs from the Mfx Plug in getting relayed to FTS somewhat out of sequence - because they use twodifferent models - MFX uses a note + duration method and FTS uses note on and off as they happen and in the conversion from one to another the note offs that FTS needed to keep track of the notes were getting out of sequence and some getting lost. As a result it was stopping notes from sounding as a result of the option to make sure you don't play the same note twice at the same time in the same channel (the two Out | Options | More Options | Same note polyph. options). There was another bug as well, can't remember what it was now, but it was much esier to fix, fixed that one first.

Though this fixes a fair number of the issues with the MFX plug in, I wouldn't like to say that I'm sure I have fixed everything yet. The interaction between FTS, the MFX plug in and Sonar is quite complex to debug unfortunately with two simultaneous apps running multimedia so that millisecond timing of events count - and they use different conventions for sending the notes too! I'll be doing more investigating and welcome bug reports.

Another bug: the options under Out | Options | Controller Options | Auto forget for various controllers wasn't always working as it should. In some particular circumstances you could start FTS up and find that it still has the reset all controller in play from the end of the previous session (depending on where in the start up sequence the midi devices get opened) - and this can anull the effect of the pitch bends - result being that the tuning auto resets to twelve equal :-(. Fixed!.

Also a number of other less major fixes. Sometimes if you change the voice while keeping Midi open then you will find that some of the notes still get played using the preivious instrument (clears on close / re-open Midi Out). This is fixed. Sometimes if you have a varying pitch bend wheel position that continues to vary as you play new notes then you find that as you play a new note with an old one still held down then the new note gets cut off when you release the old note - fixed.

I think those are the main ones though I fixed quite a few and didn't keep a record of everything I fixed.

5th September 2003

When you show a dialog then the hourglass flutters for a while - this happens when tool tips get added to the window because it was getting the text for the tool tip from a hidden rich edit window and the operation to find the text was slow enough to show up an hourglass briefly for each tool tip (so a lot of flutters if many to add to the dialog). Fixed by using a much faster method to find the tool tip text which also doesn't show an hourglass at all.

Lambdoma keyboard option to show the otonality and utonality information in the Notes Played window - not working - fixed.

The drop list of devices for recording and playing back the recording to temporary memory had no effect - whichever one you chose it would use the Microsoft Sound Mapper to choose the one you have set as your preset audio device - fixed.

The next bug applies to the parts window - where you enter a partial name of an instrument in the field below the list of voices, e.g. Ob for oboe, and it gets auto completed

This only worked for the melodic Midi voices. Now will also work for non melodic percussion and also for any custom voices you may have on the menus. Fixed.

In Windows 98 with Internet Explorer 5, if you start FTS straight away before you see any tool tips in any other program or on the task bar, then show a tool tip in FTS, and if you then close it and hover the mouse over the task bar then you get the illegal operation message at the moment that the tool tip text should appear. Same thing happens if you show a tool tip in any other program after FTS. Only solution then is to reboot. Sorry! - fixed.

I think this was only an issue for IE5 + Win 98 because there is a related bug that only happens if you are debugging a program in Win 98 + IE 5 - if you show a tool tip in the debugged program before you show it in any other program then when you exit the program then other programs crash as soon as they are about to show a tool tip. Normally it only affects developers running programs in a debugger but for some reason has affected the release for FTS too - or maybe a related bug. Anyway fixed now.

10th August 2003

Bs | Scales to make & Opts | SCALA scales | Make all the SCALA related files - when it makes the modes list for nine equal, makes the "Pelog" one as a mode that ascends one way and descends another way - that is because the quote there was treated by FTS as a signal to do a separate descending mode - fixed.

When you show the current scale using Bs | Scale and then put it into play mode then when midi relaying you just hear a low rumble (lowest possible midi note or somewhere thereabouts I think). Fixed.

22nd June

Important bug fix!

Note. There has been an important bug fix for Lissajous 3D. It can cause out of memory errors in other programs that you have running at the same time if you run one of its animations for a long period of time, or a shorter period on a fast computer - fixed.

For details see:

If you are using Lissajous 3D with Fractal Tune Smithy or indeed on its own, you should re-download it.

The rest of these bugs mainly affect players who explore the Lambdoma scale, and product and rectangular scales using the Lambdoma keyboard picture. One of them also may affect you if you make a circulating arpeggio : a 0 1 2 3 4 0 type thing - to ensure that you can only play notes within a particular small compass of pitches whatever key you press. This is a technique you can use, e.g. for bagpipe scales or scales which used measured pitches of marimbas and other small range ethnic instruments - such as the 1/1 7/4 1/1 ... type bagpipe scales mentioned in the previous announcement..

View | Lambdoma

- if you show the dots to place above the music keyboard and then change between the quadrants or make the entire 16 by 16 Lambdoma then the dots may get squashed into one side of the picture or be out of view in it. Okay when you close the dots and music keyboard pictures and reshow them - fixed.

When you play the Lambdoma notes by moving the mouse around in the dots window then nothing shows up in the Notes Played window even when you have it set to show mouse notes (this would also affect the small range bagpipe and ethnic type scale arpeggios). - fixed.

If you make a product scale or lattice and have a different instrument for each part in the parts window you would expect the instruments to play each row of the keyboard - since these options are done by making a shifted version of the scale for each part, then each row of the keyboard plays one of the parts. However instead all the notes play on the intrument for the highlighted part in the Parts window - fixed.

20th June

Bs | Arpeggio and Scale Play button options | Asc Desc | Endlessly ascending works fine, but Endlessly descending doesn't play correctly. What it was is that the endlessly descending scale used the volume envelope for the corresponding position in the endlessly ascending scale, e.g. the volume envelope for degree 1 instead of the second last note, and so on - fixed.

p.c. keyboard - the standard setting here is to play the highlighted part in the Parts window (or the one that gets highlighted if you show it).

If the part to play is octave shifted, it plays the pitch correctly, and normally shows it correctly, but while the key is pressed down, changes the displayed ratio to the non octave shifted version of it - fixed.

Various bug fixes for Out | Options | Midi out / save Timing | Midi Relaying Speed Check. Main one - if the relaying app changes the channel then the test wouldn't find the note again after it got relayed around - fixed.

Bs | Scale | Synth Wav, or Bs | Arpeggio | Synth Wave - shows "Halt" there until you press the button rather than the other way round - fixed.

Scale drop list | More Scales drop lists | Bagpipes scales - quite a few start 1/1 7/4 (or whatever it is) 1/1 then up the scale - and for these, you need another modes (arpeggios) list, to take account of the extra note. Supplied it.

Also the bagpipe drone preset for Bs | Scales Options | Drones didn't have a correct modes lists for Highland Bagpipe with 7o4 and detuned octave.- fixed. Also updated the scales drop list Bagpipe scales.lsc accordingly to use the new modes list.

Note when I update a file already in FTS I advance the original date by just a few minutes or hours - so that though it is new it will still be dated perhaps to some date in 2002 or whatever. This makes sure that if you have edited it yourself then the installer won't replace your version because it is set to replace files if newer. If you still see the old version here maybe you have edited it at some point - using the Ed button, even if perhaps you didn't chagne it at all - if so delete bagpipe scales.lsc and run the installer again. or install into a new folder.

10th June

The pause key shortcut to turn the PC keyboard around in the lambdoma switches off the next note played - fixed (was because pause key is used also as shortcut to pause fractal tunes).

Changed the preset position for the rotation to a three quarters turn - quarter turn turns the keyboard upside down so is confusing.

Midi relaying standard settings were setting the range for midi notes to play to 10 to 110 as for the fractal tunes (prevents them going too low or high in long fractal tunes) - should be 0 to 127 so that you have no restriction on the notes you can play - fixed.

9th June

The music keyboard and dots windows have the menu options for a lockable window in their system menu - but they have no effect - fixed.

When you switch on the debug log in order to help locate a bug it almost immediately switches itself off again - fixed  

7th June

Not remembering window positions or which wndows to show at the start of each session, or which view to show from one session to the next. Sorry about that - a missed out line of code which meant it was no longer saving all that info at the end of the session - fixed.

Lambdoma keyboard - if you use it with com port 2 then the notes played get displaced eight units to the right in the display area. This is because of the new multiquadrant option - should only do the displacement when that option is selected- fixed.

A bit more work on the auto harmony shortcut keys for the lambdoma view - the O and U ones with the pure auto harmony option didn't switch off the dependence on the direction of melodic moveemnt- fixed..

If the first two notes of a randomised seed are identical and you get a randomised fibonacci rhythm, resulting tune may consist of repeating notes only - fixed by setting them to different values from each other if this happens.

Help | Overview | Musical Note Intervals | Newbie Notes | Find all the best ratios for a scale in cents - was only searching to the next denumerator above or below the optimal one - but as it is searching for a prime limit ratio should go as far as the tolerance set, unless user chooses to reduce the search range to speed up the calculation - fixed.

N.B. FTS uses a similar method for File | Number Options | Ratios options | Tolerance in cents for approximate ratios in the case where the numbers involved are small and the number of primes used is large - but that didn't have this bug, it was only in the javascript.

3rd June

When using FTS on older machines you may notice the hourglass flutter for a while before a new window appears - with a fast machine this happens so quickly as to be barely noticeable. Fixed - well got it down to one flutter or so. It is caused by FTS adding tool tips to the window.

If you play the theremin and at the same time play the Lambdoma auto harmony chords with the chords set to play a new part for each note of the chord, and if you also have it set so that each part plays its notes on the same numbered midi out channel, then the theremin resets to a range of +- two semitones - this happened because they share the same channel - the auto harmony chords needed to take account of the theremin and leave it's channel (s) free - fixed.

May 26th evening

Out | Options | More Options | Skip voice selections - when you select it, seems to have no effect, doesn't change to show aas selected (but does in the main wndow) - fixed.

This was a bit of old code from the time when FTS could only have one midi out device open at a time.   Now it is a three state check box - when you select it, it skips midi out patches for all the devices, and when you unselect it, doesn't skip any for any of the devices. If it has been previously set to skip them for some then it is shown as indeterminate.   So now its shown the same way as the one in Out | Multiple Midi Out Devices - selected parts - except that clicking on that one selects / unselects it for the highlighted part(s) while here it does it for them all. 

Lambdoma drone and auto harmony notes not getting switched off when used with Out | Play on several devices at once - fixed.

May 26th 

Out | Options | Out Channs - not saving the settings for the next session - fixed.

Still getting some randomised tunes that are only a few seconds long repeated - fixed.

The new Synth Wave button for View | Analyse Midi Voice works fine, but for the New Arpeggios and Scale windows - not making the correct pitches at all - fixed.

Installer making incorrect entry in Registry for the program icon for the tune smithy file association - was

"C:\Program Files\Fractal Tune Smithy\Fractal Tune Smithy.exe.0"

Should be a comma at the end:

"C:\Program Files\Fractal Tune Smithy\Fractal Tune Smithy.exe,0"

This meant it couldn't find the icon so the association just uses the windows default icon.

Now, you will see the Tune smithy red snowflake icon opposite the .ts files in folder listings.

If you show the Parts window, close it and then reshow it, it loses its menu - fixed

Meaning of the dots window in the main window isn't clear - tool tip explained, but not very well - idea is that you place it above the keyboard picture to show where the arpeggio notes are - new tool tip to explain it better - fixed.

May 25th

View | Lambdoma | Auto Harmony | Auto harmony chords with each note - the accompanying chords remain on and don't switch off - not even with F12 - new bug for this option introduced with a recent upload - fixed.

Also - the F12 all sound off now switches off all the notes in FTS as before, but as an extra step, also calls the midi routine to switch off any outstanding ones - this shouldn't be needed as FTS keeps recod of them all - except in the case of an FTS bug such as the previous one..

Another bug fix for the com ports input for multi-quadrant Lambdoma. Also purges the com port now whenever you close or open it in case it gets closed in the middle of a read operation.

Finally - Lambdoma users only - if the midi out device selected on the out menu is already open in another app when you start FTS then you may get two or more messages to say the device is already open - once for Midi In if you also use FTS for midi keyboard work - and once for each com port you have open - fixed.

May 22nd

When FTS starts you get several separate icons shown in the task bar - one for each window you have in use, and one more for the program as a whole - instead of just a single icon as before - fixed.

Some work on making it better for the screen saver - maybe you will need to re-download FTS for the screen saver when it is ready.

The randomised tune with randomised seed may occasionally still make a very short tune of a few notes that get repeated - fixed.

A bit more bug fixing of Com input for the Lambdoma multi-quadrant option - fixed

May 21st Evening

- somehow left out the Scales for parts check box which should be at top left of the Scales for Parts window - fixed.

May 21st

When you midi relay a clip with pan values in it, sometimes they may get ignored. Here this is caused by the option Out | Options | Pan | Auto Pan. The standard setting here is selected, however, combined with Auto pan for fractal tune only. This should mean that FTS will auto pan the fractal tunes if one is playing at the time, but receive pan from midi in if a fractal tune isn't playing (algo comp users who set a value for the pan for their tunes will find that this switches off auto pan). However it was ignoring the pan values from midi in in this situation instead - unintended - fixed.

Very occasionally, when you save a tune smithy file and then re-open it later you may find it has got the scale values wrong, usually extremely high. What happened is that it gets saved using the Scala convention that decimal point = cents - but then got read again by old code that didn't use that convention - fixed

Any .ts files you saved in the past which may have been affected by this will be read correctly now.

May 19 later in day:

 If you install the update of FST posted earlier today in Windows XP / NT / 2K you may get an error messsage: The procedure entry point ThunkConnect32 could not be located in the dynamic link library Kernel32.dll

It's because I included a copy of one of the Windows 98 dlls so that FTS can call it to detect low resources in Windows 95 / 98 / ME - this is the dll that gets installed with the Resource Meter, and I did it so that FTS can detect them in Windows 95 / 98 / ME even if the resource meter hasn't been installed yet.

I placed it in the FTS folder rather than the System folder, and the name of the dll is changed too, so thought that would cause no problems for other operating systems. What I hadn't realised is that this dll can't be loaded in Windows XP, so FTS should only load it if it is in windows 95 / 98 / ME. So that is what it does now. Otherwise, it will delete it - fixed. Sorry about this.

May 19:

Pan bug - fixed a bug that would occasionally cause the melody line for one part to pan over to the pan position of another part for a note or two. If you have made fractal tunes with this bug and liek the effect and want to re-enable it you can do so from Out | Options | More Options | Enable Bugs

Tool tips - when you hover the mouse over a tool you may see an hourglass appear briefly before the tool tip appears - fixed.

Arpeggios that ascend / descend - not always played correctly from the PC keyboard - e.g. if you have the pc. keyboard set up to play accidentals as well - fixed.

When you set the PC keyboard to play non melodic percussion from Bs | PC keyboard notes to play... (and this got left out of the midi relaying menus too - fixed) then the PC keyboard layout shows the ratos or cents values of the scale rather than the names of the non melodic percussion instruments which one might expect to see at that point - fixed.

View | Lambdoma | Auto harmony.... (as it now is) | Broken chords - the timing of these broken chords was irregular and erratic - fixed.

Most recent modes list doesn't get remmebered for next session - fixed.

If you have your configuration settings file for FTS gets larger than 10 K, later settings don't get read from it though saved to it okay - fixed.

In | Options | Scale for Parts Presets | CPs sets - selections from the CPS sets not getting reduced to the octave - fixed.

View | Analyse Midi Voice | Freq. Analysis | Recording (temp).. - Though the waveform displays accurately when you zoom right in, when you zoom out the waveform is often a bit irregular and not as expected - fixed. (this didn't affect the frequency analysis which naturally uses the highest resolution view on the waveform of course).

Help | Overview | User Guide 2 | Wave format non melodic percussion - isn't switching off the notes. Mainly you notice it when the tune ends, or if there is a gap between notes long enough so that it can stop sounding in which case it doesn't get sounded again - fixed.

April 25

When you click for the help for a window, then click on a link in the contents list for the help that shows up, it gets shown in a new window rather than in the frame on the same page - fixed

April 23

Newly introduced bug:

Under some conditions, you may get an exception message in FTS while the tune plays - the Exception handler pops up. Alternatively, a message may pop up saying "Couldn't read from ..." with random characters for the file name there - this is because of a bit of code activating that was meant to only happen if FTS gets started up from another program which passes the path to a list of midi clips for retuning via shared memory - and because nothing had been put into that shared memory for it to read, you get this nonsense file name message or an exception instead. The code got activated because of a bit of programming I had done in preparation for the tool tips. - fixed..

April 18

A few of the window links to the help don't link to the correct place in the help - fixed (some dont' have any help yet - that's another matter and I'll do that soon). Also incorrect url for the link to Midi Yoke - fixed..

Bs | Arpeggio & Scale Playback | Stop playback of ... at

- not working properly for scales with arpepggio set to follow scale - gets set to first scale degree instead - fixed.

When you resize Bs | Tune (or Notes Played) the text for the Options button may get cut - fixed.

April 17

Bs | Seed Options | Undo Changes - wasn't working any more - fixed.

Voices | Custom Voices | Edit Custom melod. voice | Edit Instr - if you use Select Voice or Non melodic percussion - it always pops up the Voice menu - reasonable - but if you actually want to add non melodic percussion and, say, go to main window and choose to show Non Melod. perc., you may find it gets selected into the highlighted part in the Parts window instead of the instrument for that custom voice. Now has two buttons there for Voice and for Non Melod percussion, and it's fixed.

Bs | Seed | Apply (as it is now called) - if you select "With timings" here, then they don't get applied to the main window - the times get copied into the main window as desired, but then they get treated as an alphanumeric seed rather than timings - that's because the semicolon that starts the timing info in the all in one field main window seed got treated as punctuation actually and was ignored - anyway it's fixed.

April 16

Bs | Notes Played | Options | Intervals - not showing all the lambdoma intervals there - fixed.

Bs | Find Seed from recording | Re-find or find marked notes - not working - fixed.

When you show the waveform of your recording to temporary memory - it shows non existent half waves in some of the silent parts of the recording at times - fixed.

A few more minor bugs fixed - one of them - in the File | Midi File Options | Make web page of fractal tunes - not showing the two note images on that window. Also similarly for the time out screen that pops up at the end of 10 minutes session in freeware mode - no dancing notes show there any more - fixed.

April 12

Bs | Notes Played (or Tunes) - this is a bit erratic when used in the midi relaying views. or indeed when playing from PC keyboard. That's because it uses the notion of a Seed to decide how to space out the notes, which only really makes good sense when displaying a fractal tune. Now it has an option to show the width in Secs or Seeds, with Secs more appropriate for the Midi relaying views - fixed.

Contents page when opened without frames opens all links to other parts of the same page in a new window - fixed.

View | Lambdoma | Options - now can switch off the log. Also now can show the timings in the log. This is all to help with any debugging in future should it be needed.

View | Analyse Midi Voice | Show partials as text file... - for the option to Add harmonic series analysis, it used the standard deviation when it should have used the formula for the standard devieaatin of the mean (you divide by the square root of the number of values). So the error margin there was far too large.

Help for this view didn't mention the significance of the How much to analyse (secs) field - this is important because only the amount of time set there gets analysed even if you make a bigger clip. Anyway it is now explained clearly I hope.

A few links in the help pointed to bookmarks that don't exist any more or are on other pages - fixed (all the ones I know about so far). I'll run a complete link test of the help again before next upload.

If you have Lissajous Options | Always show this number of cycles... set, e.g. to 6 (which is the preset), and then make a Lissajous figure with less than 6 cycles, it won't fade all the way to red - e.g. the 1/1 : 1/1 circle was mostly blue - fixed.

April 10

When you pitch bend a sustained note, then if you have released the keys, the notes don't bend in pitch. There were also a few bugs in the pitch bending of chords. Fixed all the bugs so it will now pitch bend all chords and sustained notes fine, and turned the original bug into a new feature Out | Options | Pitch bend held notes only as you'll see in What's new

Main window button to play an arpeggio doesn't work if you choose to play it descending and choose one like the melodic minor that ascends one way and descends another way - fixed.

Bs | Notes Played | Options | Notes As | Intervals - not working as intended - fixed.

April 5

Broken link for help for Parts window - fixed.

FTS wasn't receiving Com port data from the Lambdoma Keyboard in XP - now fixed.

If you show the Lambdoma keyboard picture in FTS and use the new Set Duration option, notes get highlighted for as long as you hold them down rather than staying highlighted until they switch off at the end of the duration as one would expect - fixed.

April 4.

This is a bug that only surfaces if you save a really huge midi file - one that takes some time for FTS to generate and save. E.g. save one of the faster fractal tunes as a midi file to play for hours or days, - this may take a few minutes for FTS to make it on a slower machine (making a file maybe hundreds of Kb or megabytes in size - huge for midi!). Perhaps the most likely reason to do this is to find out how long the tune will play for if it goes through all its layers, as explained in the help for Bs | Seeds Options | Fibonacci rhythm.

You will find that FTS stops responding until the midi file save is complete, e.g. you can't move it around on the screen. Nor can you stop it by pressing on the Stop button or by pressing F11 as one usually can - fixed - now you can do all those things.

April 3

Views | Analys Midi Voice - when you click the play button to start the recording, you get an error message and nothing happens. Same thing if you try the oscilloscope. This is because recently when I re-organised the code to solve the dissappearing captions problem, some initialisation code for the waveform got skipped and a value that should have been set to 1 to indicate ordinary PCM waveform audio remained at 0. Sorry - Fixed.

March 31.

Bs | Lissajou Options | Minimum time to show each image - doesn't pause for the desired time - fixed.

Bs | Lissajou Options | Save As... - if you save while a fractal tune is still playing, the lissajou figure may change between when you see it and when you complete the save. Fixed - by switching off the Lissajou update until the save is done, so you always save the picture you see, rather than the next one it makes or the one it is in the middle of making when you do the save (if it is in the middle of making another one at the time, it gets discarded before you see it).

Title bar text sometimes vanishes again in the main window and Parts window etc - fixed

The Lissajou figure sometimes shows an extra line not part of the figure so far, or a triangle joining it to an earlier point - fixed.

Lissajou figure which continues rather than joining up sometimes doesn't fade out, or not completely, for the option to draw it slowly as it is made - fixed.

March 29

The new custom list boxes are for unsorted lists only - these won't work properly with sorted lists - but got used for them, particularly the Organise (F2) | Overview windows - fixed.

Some code to optimise the new custom lists so that they will refesh more quickly in fast fractal tunes bypassed - works now - fixed.

Bs | Record to File Options - if you record as say an mp3, the text at the bottom of the window shows the file size of the .WAV file as the recording progresses - because it records it as a .WAV file then converts it. That wasn't clearly expressed. Now clearly indicates that it is the size of the .WAV file, and then (new feature) shows the file size of e.g. the .mp3 once Lame has finished encoding it.

March 28

When you close a window in FTS sometimes you end up with no window active (caption highlighted). This can confuse those who use FTS with a screen reader as it no longer is set to read an FTS window, and you need to Alt + tab to get back to FTS again - fixed..

If you do a multi-selection of a voice into several consecutive channels in the Parts window, including the non melodic percussion part (which is mainly intended for relaying non melodic percussion from Midi In from e.g. a notation software program using non melodic percussion), the non melodic percussion gets set to the medley of percussion, rather than just being ignored as would be more apprporiate - fixed.

March  25

Bs | Scales Drop List (and Arpeggios Drop List) - the Add Link button there wasn't working exactly as intended - fixed. Also the message it shows now explains better how it works. Also, you can now link to a list of scales file you have already made by entering the file name in the definition box and the description you want to show for the link into the description box.

Fixed a few bugs in View | Colours with some of the fields there not synchronising properly. Also made some of the text and messages clearer.

If you have a drop list of scales showing in the main window which isn't in the FTS folder - e.g. the Scala Scales drop list - and if you have another drop list of scales of the same name in the FTS folder, then when you exit and start FTS again you will now see the one in the FTS folder instead of the one you had at the end of the last session - fixed

Search / sort of scales - slowed down tremendously by a bug which meant FTS would scan all the way to the end of a scale every time it reads one of the entries in the scale, rather than just reading each one as it comes - fixed. Reading of the .ini files also slowed down by similar bug - fixed.

The text on the PC keyboard layout picture and Lambdoma keyboard rathre too low and wide, if you resize the window to be wide and low - fixed.

March 22

Colour box section for custom colours - layout and the way this worked was a bit unclear - fixed.

Slower start up for FTS than it used to have - fixed.

Fractal tunes often play rather slower than they used to, and can be sluggish at responding when you click on buttons etc. - this was because of a bug - fixed.

Also changed "caption" to "title bar" where it occurs (a few places in the help), because caption is a programmer's term for title bar - I hadn't realised it was a technical term.

Similarly: "defaults" to "standard settings", or "presets" - again default is a computing technical term, which I hadn't realised.

Found a few slightly out of date sections of the help and brought them up to date.

March 18

Views | Lambdoma - now when you make one of the quadrants - calls the scale "First Quadrant", Second, etc. - as is most helpful for users of the Lambdoma keyboard. Also titles the main window with the scale description.

P.c. keyboard layout window - Goes blank on change scale or notation - fixed.

P.c. keyboard layout window - adds the word cents or Hz for those notations which need them - which makes the font very small to fit the available space - fixed

March 13

Bug fixes: 

Fixed a number of broken links in the help pages. Views | Retuning midi player | Standard Settings button not setting a few things that can affect it after playing fractal tunes - fixed by resetting the fractal tune too when this button is pressed. Same for the Midi Relaying | Standard Settings. Browse button for retuning midi player not refreshing the drop list of midi files - and the Open dialog it brings up defaults to files of type tune smithy files sometimes instead of midi files - fixed  

March 11 2003

MFX plug in - if you are a freebie user, then it immediately pops up the message to say that your session has timed out - fixed.

Drone - if you have it set to switch off the drone after a time delay, sometimes the drone note doesn't get switched off - fixed.

Lambdoma view - if you edit the pitch in the From field for this view, then the Pitch window and the keyboard picture (if set to show integer frequencies) don't show the change straight away - fixed.

Also if you edit the pitch in the From field, from then on the lambdoma keyboard plays transposed too high in pitch - what was happening here is that as you enter, say, 256 as the new pitch, you first type 2 so momentarily it gets set to 2 Hz, which is too low in pitch for a midi note - so FTS compensated by setting the lambdoma ratio to an appropriate number so you get the pitch of midi note 0 as the 1/1 of the Lambdoma - but didn't update the ratio field at that point. Result is that the lambdoma got transposed higher than you wished it to be from that point onwards. Fixed.

FTS may stop responding for a while when you click to record a midi clip, if it is set to start the recording at the first note - fixed

Musical e-cards browse button doesn't work - fixed

A couple of broken links for the ? icons that bring up the help for a window - fixed

Seeds for layers window help link incorrect - fixed

Tempo Map - when you edit the name for the region, only affects first name, and also only after you highlight another region.

Bs | Seed Options | Seed Symmetries - it shows the note numbers as e.g. 2 - 6 but you have to enter them as 2 3 4 5 6 if you want to edit it - fixed

Views | Play fractal Tune | Musical E-cards | Picture and Tune | Browse (for picture) - the gif file name in the window doesn't update when you click Ok after you open the file - fixed.

When you play notes on the lambdoma keyboard they don't show up in the tune window - fixed.

Ctrl + Alt + X Shortcut to show the rectangular scale / lambdoma keyboard window has no effect - fixed

December 19, 4 AM

When you play a really fast tune with hundreds of notes per second, like virtuoso_violin_with_flute, now you have no timing glitches, but it may be very hard to click on the stop button to stop it.

Reason it happens is that the tune is far higher priority than the mouse click, and so to fix it, I found a way of detecting the mouse click from within the tune so that you can still stop it instantly with a click even in ultra fast tunes. (Technical details - it checks to see if the mouse key is pressed down using this Windows routine: if(GetAsyncKeyState(VK_LBUTTON)<0), and if it is, then checks to see if it is within the rectangle defining the stop or pause buttons. If it is, switches off all notes and pauses until the button is released. Pauses for up to two seconds after that to give the main window procedure time to stop the tune if needed - can take that long because the tune is so high priority) 


December 19

When you play a very fast tune, e.g. a polyrhythm, then you get occasional time glitches - brief pauses in the tune of about a sixteenth of a second or so. This was caused because FTS detects that it has been unable to refresh the time so far for the tune field in the main window, so pauses briefly to give it time to update. Completely unecessary to do it that way and it is now done another way that still lets that field update as soon as there is any time available to do it, and doesn't pause the tune to do it. The thing is that the tunne at real time is ultra high priority. Possibly if the tune is very fast with many successive notes, this field may not update so frequently as it normally does -but better that than timing glitches!

If the tune is really really fast incidentally, like thousands of notes per second, FTS starts skipping notes to let them get played, and keeps doing so until it gets up to date with the current position in the tune again.

NB. one can use the F11 short cut to stop the tune instantly if it is ultra fast and FTS gets a little sluggish to respond to a click on the stop button.


December 18

Yesterday's upload with the new code to play MTS sysexes on several devices at once generates a stack fault if you use MTS sysexes on one Midi Out device plus ordinary pitch bend retuning simultaneously on another, and then in addition add a drone. The exception handler won't be able to recover from this type of a situation, and FTS will just close- sorry - fixed.

December 16

In | Options | Play Arp From - this was confusing to use because if e.g. you choose one of the Follow Scale options then you can no longer choose the Arpeggio options - because the Arpeggio has got set to Follow Scale. Similarly if you choose one of the Diatonic options. This was fixed by keeping track of the most recent arpeggio in use every time you make a selection for Follow Scale or Diatonic, and then resetting the arpeggio back to it if one chooses one of the Arpeggio options - goes to a default arpeggio of alternate notes if one hasn't had any others before that point in the session - fixed.

When you use Out | Use MTS Tuning Programs in combination with Out | Play on several devices at once, it doesn't work - only one of the devices gets retuned - fixed - and now you can use MTS Tuning programs on some devices and the "instant pitch bends" way of retuning on other ones, with all of them playing simultaneously. This is something one may often want to do as for instance the FM7 is mono timbral so if you want several instruments playing at once on the FM7, you need to relay to it from several different Midi Yoke Junction midi out devices. Here is an example - played on two copies of the FM7 simultaneously, and using tuning programs.

File | Reset Check Boxes etc for the lambdoma and FTS views brings up the message to ask if you want to reset to the defaults for those views - better to skip the message there - fixed.

Removed Bs | Scales Options | Add Ed buttons for M.w. drop list, - because those buttons are always shown now - fixed.

If you have a device selected for output, and it is also selected in the list of devices when you have several open at once, and you play on it first as a single device, thenn select Out | Play on several devices at once you get an error message that the device is already in use and can't be opened - fixed.

December 14

Bs | Record to File | Start recording just before tune starts - shows on for off and vice versa. Also defaults to on when it should default to off.

When it is set to "on" then the recording starts either at start of tune or at first note. When recording in audio format, with this option, the first note is a cue note which doesn't sound. - idea is you add an extra non sounding note just before the start of the piece to cue the recording on.

That's fine, all explained in the help, and the icons show that the program is waiting for the next note to play. However, this option should not be the default. Also, the user will maybe want to switch the option off, find they can't because of that check box that looks as if it is off when it is on, and get confused. Since a fair number of users do use FTS to record in audio formats this is a significant bug fix, so updated the version number to 2.21.

Highlight for Out | Multiple Midi Out Devices - Selected Parts - if the number of devices is more than the height of the list, list contents jump after you highlight the last item - fixed.

Space bar as a sustain pedal - when used to sustain repeated notes all played from the same midi in or PC keyboard key then when you release the space bar then only the last of those gets switched off - fixed by letting it only play one note at a time - fixed.

Note, this implementation of a space bar sustain isn't quite the same as use of a normal sustain pedal (which you can also use with FTS of course), as that may let one cummulatively play the same note many times with all those notes sustained to make a chorus type effect. If you try that with the space bar sustain option as currently implemented in FTS, you will find only the first note sounds.

Bs | Scales Options | SCALA Scales | Make SCALA scales and modes drop lists - Also, select SCALA .cmd file to use | Make drop lists of modes (LMD files) from SCALA list of modes - error message pops up when the list is complete - happens when the entry to it gets added to Bs | Scales | More Scales drop list because it tried to add it before the original file got closed so that it couldn't re-open it to add the extra link back to the More Scales drop list - fixed.

December 08

When you play tunes like the arabic_17_tone_maqam_Iraq.ts with exceedingly short notes, many notes don't get played at all - not just the very short ones, but long ones too. Fixed.

When using in freeware mode, you get the time out message while playing the example tunes from the drop lists - these are supposed to be free in freeware mode - fixed.

December 07

Forgot to add a reset to pitch bend of 0 (8192 in miid pitch bend units) if no pitch bend messages have been received yet for the option to retune for the next note only - fixed.

December 06

Fixed some bugs in Bs | Scales drop lists - the window you use for editing a drop list of scales.

Exception occurs (though handled by the FTS exception handler so that you can continue normally) if you click the icon to show the help on a computer with no file association for html files - fixed.

Bs | Scales Options | Sort Scales or Arpeggios list | Sort Now has no effect - fixed.

December 04

The new Quicktime option gives notes that glide to pitch instead of being on pitch straight away. Fixed with a message to alert user that with QT one may need to apply a delay before pitch bends.

Also had some bugs in the option to set pitch bends in advance for all the notes of the arpeggio meaning that it didn't set all the channels to the desired pitches, just some of them. This option was also off by default - now set to on by default. It is a way of making sure that in most situations the pitch bends are all already as desired before the tune even starts or you start playing. Only if you need more than 15 notes in the arpeggio or if you need special effects - then you may need the pitch bends in the middle of the tune - or for things liek the Fibonacci tone scape - fixed as best it can.

When you play a non octave scale using the play button next to the Scale box in the main window, the playback may stop at the last note before the octave - fixed.

Bs | Arpeggio | -> Scale button to copy the arpeggio as a scale into the main window doesn't set the main window arpeggio to 0 1, just sets the arpeggio description to Follow scale - fixed.

Set the maximum number of Quicktime devices to two for the scroll bar in Out | Midi Out Devices - Parts to Play | How many "Quicktime's to show". That's because QT works fine with up to 31 independent channels for the pitch bends, equivalent to two devices + non melodic percussion, but doesn't seem to work after that so well - possibly something to do with the way it is done, so more to be researched on that.

December 02

Out | Play on several devices at once - no sound - fixed.

Ctrl + C shortcut saves a file instead of Ctrl + S - fixed.

Custom voices with two instruments playing the same note at the same time (E.g. Voices | Custom voices | Flute + Oboe) often play just one of the notes - fixed.

November 27

When you make the SCALA drop list of scales from Bs | Scales Options | SCALA Scales | Make all the SCALA related files, it starts with a link to Scales | More Scales... - this is intended - but then that becomes the default selection when you open the list, when the default selection should be one of the scales. Fixed - and now whenever you open a list with the default set to a link to another list, FTS will move the default selection down to the next scale in the list, fi any, so it is also fixed for any scales drop lists you may have already made before.

Automated dating of the upload announcement e-mail template, download page, and What's new in this upload page to match the date shown in Help | About in FTS - to prevent recurrence of recent glitches when I forgot to set all those dates to match each other - should be fixed from now on....

Had Ctrl + C as the shortcut to save a file instead of Ctrl + S - fixed.

26th November

When you enter a scale in cents by hand, if the first note in the scale after the 1/1 is less than 0.1 cents, it gets read as a scale in the harmonic series notation rather than a normal scale. I.e. a scale such as 1/1 0.05 cents ... would be read instead as an additive harmonic series like scale with 0.05 cents as the first term - fixed.

The buttons in the Make musical e-card window say Make card, Make card with border, etc, rather than Send card - fixed.

24th November

Bs | Scale... and Freq. analysis | Options | Frequency spectrum Layout both have the same shortcut (as shown using Help | Add shortcuts to window captions) of Alt + Shift + S. Fixed by making the shortcut for Frequency spectrum Layout Alt + Shift + Z.

Various bug fixes in the relative cents options in File | Number Options

Also bug fix in the drop list of scales for the Bs | Scales window - not showing them properly when selected (was treating them as harmonic series notation).

21st November - evening

Several windows are called Config in the Help which are now called Options in the program itself - also some of the messages in FTS refer to "Config" where it should say "Options" - fixed.

21st November

When you choose File | New - already shows it with an * in the title - should only do that once you change it - fixed.

When you type Test into the Seed box, changes the seed - that's because it was reading it as "Tes" before you type in the final "t" - and that was interpreted as unambiguously alphanumeric, so read as an alphanumeric seed even without that option selected.- fixed - now you are recommended to type #test, and the # ends the seed for the alphanumeric seeds.

19th November

When you remake the audio clips for a web page or musical geometry model and choose to convert the previously recoreded .Wav files into the new format, no error messages if the old versions of the files can't be deleted because they are in use by another application - fixed. Also when you replace old versions of the files, sometimes conversion of mp3s results in files of zero length - seems that you need to leave a small amount of time after deleting the file before remaking it in Lame - fixed.

When you enter the bit rate into Bs | Record to file options | Mp3 bit-rate - doesn't change it (only the scroll bar changes it) - fixed.

Fractal tunes that have seeds with notes that are extremely short, or of zero length getting notes stuck on - fixed.

Sometimes FTS tries to find a new channel for pitch bends when there is one already free, and not finding another one free, does an unnecessary all sound off. More generally, often spreads the notes over more channels than are needed - fixed.

18th November a bit later:

Bug fix for last upload in option to make audio clips for file names in a web page - wasn't converting the first two characters of the file names into characters suitable for urls, sorry - fixed.

18th November

When you play monomode but not legato from the PC keyboard, with the option to retune to the previous note in play when you release second note of a trill, not doing the pitch bends properly - fixed.

16th November

Various bug fixes for the MFX plug in which wasn't behaving quite as expected. Still work in progress but the main things are now fixed I think.

If you have Out | Options | Midi Output Channels set to a single channel and the polyphony there set to 1 for monophonic playing and then play two notes which are both near to the same 12 equal note and let them overlap, when you play the second note the first note gets switched off automatically as desired, but when you raise the key for the old note the new note then gets cut off too (both use the same note number in this situation) - fixed.

Parts | Mod Trem, Portamento / Legato etc. - if you click on the header for the column to show one of the controllers and then show another one, and you don't have the controllers overview window showing, it just sets the focus to the old one, instead of showing a new window for the new controller. E.g. if you show Legato controller and then click for Monomode it will just highlight the Legato window unless you close that window first - fixed.

If you play monophonic triple or more note trills in a tuning requring a cluster of close together notes with some of the notes in twelve equal - e.g. in 24-et - then one of the notes may sound a major third too low (with a pitch bend of -200 cents instead of + 200 cents) - fixed.

11th November

Buttons | Arpeggio / Scale playback | Make a list of arpeggios, broken chords or chords into audio files...

With the /MAKE_CLIPS_FOR_AND_REPLACE <web page file name> instruction in the list of files to make, when it changes e.g. "1 3/7 1/7 5/7.mid" to 1_3o7_1o7_5o7.mid to make it into a file name suitable for use in urls, it wasn't replacing the spaces by underlines - fixed.

When making e.g. mp3s, would save as 1_3o7_1o7_5o7.mp3.wav and convert to 1_3o7_1o7_5o7.mp3, - should save as 1_3o7_1o7_5o7.wav so that you can make all the types of audio clip from the same original .wav files. Fixed.

More blank captions fixed in the same way as for 10th November - reducing size of callbacks, also sometimes other procs called by them too - fixed.

10th November later in day

Bs | Scales Options | MOS - the Repeat generating intervals at field defaulted to 2/1 - should be 3/2.

10th November

Sometimes the main window caption and the menus show blank when FTS first runs - then show up when you touch them. Solution - reduced the size of the main window callback function to 1200 lines of code - with the rest of it in another routine. Don't know why this method works, but it does; maybe there is some limitation on the maximum size of a callback function in Windows - fixed.

9th November

Pitch | Note To Track - the edit field to the right thtat shows the pitch, midi note etc as the tune plays shouldn't be editable - you enter the freq. for the 1/1/ of the scale in the lower right of this window instead - fixed.

In | Options | Kbd Regions window - some things here unclearly expressed - fixed.

Reduced the maximum size of a module in the .exe file to help deal with a problem of menus and captions that disappear.

8th Nov later in day

In | Options | More Options | Start tune when a note is played from midi in (a "cue" note), and skip that note - only waits for one second for the next note after the cue note, which is rather short - increased that to ten seconds.

8th Nov

If you go to Views | Analyse Recording or Midi Voice and then click on the menu you may get repeatedly asked if you want to set to the defaults for this view, until you use Ctrl + Yes to say you don't want to see that message again in the session - fixed.

6th November

Some bug fixes in the option to make midi clips for all the chords in a list of files - fixed

If you use Ctrl + Yes to the Yes / No type messages to say you always want to answer yes to them, it stops showing the message as expected, but it makes yor default answer no (sorry!) - fixed.

Out | Options | Midi out / save timing | Add pause at start of midi file - unselecting has no effect - fixed

3rd Nov. evening

Bs | Record Control doesn't show the Sound Volume control on some systems - should now find it no matter where you have it installed, because it checks the registry entry for it and looks in the location specified in the command string, and if not pops up a message suggesting where to place it so FTS can find it (e.g. in Windows or System folder).

Bs | Recording to Temporary Memory | Options | Find Region to trim

- layout not clearly expressed - changed it to read Trim Margin Left [ ... ] ^ v Right [ ... ] ^ v - to set the amount of the margin for the trim.

2nd Nov. evening

When you change the bank for a part from Parts | Bank while the tune is playing, it doesn't take effect immedeaitley, only when you change to another voice and back again. Fixed.

If you click on Out | Options | More Options | Send patch before every note, you get a message asking if you want to use Tuning programs - fixed.

2nd November

Bs | Recording to Temporary Memory | Options | Find Region to trim - wasn't working properly with sixteen bit data - fixed. Also now works for stereo recordings

When saving in waveform audio format, file name loses the ".wav" extension sometimes - gets the "wav" included as part of the file name- fixed.

Bs | Recording to Temporary Memory | Options | Recording & Playback - always resets to Microsoft Sound Mapper at the start of the session - fixed.

1st November later in day

Bs | Record To File | Bit rate - not shown for the Ogg Vorbis file format - fixed.

1st November

When saving in the Ogg Vorbis formats .ogg and .vorbis the method using SOX and .dlls didn't work - so used new method - FTS calls the command line encoders and decoders for those formats now - fixed

Seed | Options | What to show on keyboard picture | Show untransposed keys - when untransposing, not untransposed to the correct position - fixed.

29th October

Bs | Seed Options | Seeds for Layers - only shows the first couple or so notes of each seed here - fixed.

flute_recorder_bell_partials.ts - not using the correct values for the bell partials for the recorder custom voice playing partials of the bell - fixed. Also added the ref to the original partials to the Tune Info

File | Save As Midi to save fractal tunes directly into midi format not working - fixed.

Some duplicate and similar entries in the fractal tunes drop lists - fixed

28th October

Seeds times beginning "" read as 0 from saved fractal tunes (including the example fractal tunes in the drop lists) - only affects the last upload (upload for 26th Oct is okay). Sorry! - fixed.

27th October

Bs | Arpeggio window - if you expand the arpeggio to wider than the text field available you can no longer edit it there to add new notes (no auto h-scroll as one has with most of the other drop list edit fields in FTS) - fixed.

Bs | Record to file Config | Start midi recording on 1st note not working any more- fixed.

Bug in save to midi if you record while playing the seed (midi file gets saved in incorrect format and won't play) - fixed.

bird calls with Afro Carribean percussion fractal tune - sound stops after a few notes are played. - fixed.

If you edit the seed in the Seed as Text window and reduce the number of notes, the number of notes in the seed in the main window or the seed as text window until you play the tune or hide / show the window. Changed this so that the arpeggio pos. field is the one that changes the number of notes in the main window. The volumes and times fields change those values, but not the number of seed notes - volumes or times beyond the end of the seed just get ignored.

Also not converting the characters to numbers when you have Bs | Seed Options | Alphabet Seeds | Alphabet / digit seeds selected, without Show literal translation for this seed

Here the problem is that if you don't have it set to show the literal translation, then the seed needs to be treated as the numbers instead - because you have to be able to read the field in the way it gets shown in case user edits it. However, if you paste a seed in with no spaces between the characters, and starting with a letter of the alphabet or '0' then this means it can't be a number, has to be an alphanumeric seed - adn then it is okay to convert the characters to numbers. So, fixed perhaps as well as is possible.

26th October

File | Number Options | Calculator. If you enter a formula with spaces into the calculator, only calculates it as far as the first space (unless you put it in brackets). This is as intended for the scales as each entry ends at the next space - but for the calculator white space should be allowed anywhere as it is only a single value that needs to be calculated - fixed.

A couple of the fractal tunes are far too fast, and too high - ones affected are

1.082a | flute3_with_accompaniment.ts

1.082a | jazz_scale.ts

This happened because the seed starts with a 1 - and when you do that, the number of levels affects the way the melody sounds (usually one starts the seed with a 0). I had set all the layers to 50 to give more flexibility for the option to randomise the fractal tunes, but should have left these at their original value of 11 to avoid changing the sound of the fractal tunes. Fixed.

If you use the F11 shortcut to stop a tune, then go to Bs | Record to file Config and use the x button there to make a hex dump of a midi file, then the hex dump comes up blank (shows 0 bytes instead of the true file size) - fixed.

25th October

Button to play the seed, either in main window or Seed window always plays it full volume, and ignores the volume set for the highlighted part in the Parts window, or for the main window - fixed.

When you use keyboard methods to move the cursor for the mouse theremin, as an alternative to using the mouse (see tip of the day 8) then this sometimes changes pitch of the note in short abrupt fluctuations - unless the theremin window happens to be neatly aligned with the top left of the screen - fixed.

Added extra sustain to three of the fractal tunes - arabic_17_tone_maqam_Iraq.ts, arabic_17_tone_maqam_ussaq.ts and virtuoso_violin_with_flute.ts - that's because I did them originally on the SB LIve! S/W synth which does them with extra resonances after the note off. This sort of thing can be quite variable from one synth to another. On the Roland Sound Canvas the notes for these tunes may be so short on a fast machine that you don't hear them at all because they get cut off before even the beginning of the attack - fixed.

24th October

Organise windows (O) button | Tune Smithy Overview | Go to non default - always shows the scales and arpeggios drop lists as changed, as well as the scale / arp as text as changed when the scale or arpeggio is anything different from the default - fixed.

All the fractal tunes now have a drone on the first note! (inadvertent result of the drone bug fix on 22nd :-( ) - fixed.

22nd October

Bs | Seed Options | Drone Doesn't always start the drone if you haven't yet played a note - fixed.

Bs | Seed Options | Alphabet seeds | Alphabet volumes has no effect except to hide / show the minimum and maximum volumes. Changed it to a label rather than a check box - and whether to use volumes or not is now set in the Seed as Text window. Ditto for the Alphabet times - fixed.

When you adjust the alphabet volumes range, and ditto for the times, seed doesn't change in response until you edit it in the Seed as Text window - fixed.

When you select With timings, or With Volumes from Bs | Seeds, doesn't show / hide the Volumes and Timings windows immediately, as intended - fixed.

18th October

Some html tag errors in the help - fixed, and checked in an html validator.

When you record fractal tune changes as you play, then play it back complete with pauses, you get breaks in the tune with the notes switched off between each section of the tune and the next - fixed, with much smoother transition now.

Some fields not being updated as soon as they should - e.g. when you record fractal tune changes as the tune progresses and then stop the tune, the last time in the tempo map window isn't updated then, only when you replay the tune - fixed.

New tab key shortcut to change the scale as you play from PC keyboard has no effect - fixed.

When you look at detailed view of audio recording, zoomed out quite a way and at the end rather than beginning of the recording, not showing it correctly - fixed.

Check boxes to apply with times, volumes and pauses not synchronised for all the New Seed windows - fixed.

14th October

View | Analyse Midi Voice: Time in main window keeps running after you click the stop button if the note length is high, say 60 secs - until the time for the note runs out - fixed.

11th October afternoon

Occasional memory allocation error can occur when editing the scales drop list - shows up as an error message in the debugger - not sure if anything would happen in the release and if so, the exception handler would probably handle it - anyway it's fixed.

11th October

Error occurs when you open the Scales | More Scales | Canright's exs from Superparticular Pentatonics - was result of a newly introduced bug in an option used in this drop list to add a 2/1 at the end of every scale in the file - fixed.

View | Analyse Midi Voice | Freq Analysis | Config | Freq spectrum Config | Show as bar chart - when you unselect this, it makes the frequency spectrum graph by joining together the top left corners of each bar in the bar chart. Should join together the middle points. Result is that though it finds the partials centred correctly for clear partials, they look slightly off centre in the default non bar chart view - the partials themselves were already correct, but this way of showing the spectrum is misleading if you position the partials yourself by eye in the non bar charts view - fixed.

Parts | More | Portamento and Legato - if you select Portamento and Monomode without Legato (ok with legato) - then it remaps notes to new channels as the note changes which isn't desirable as then the portamento slide comes from the wrong previous note each time. You need to make sure that each new note for a part gets played in the same channel as the previous note for that part when playing portamento just as you do for legato - fixed.

9th October

In Windows 95 the icon (with white squares) which you click to bring up the PC Keyboard layout window gets shown as rrom PC keyb with clipped text, instead of the icon. Actually this is text that is supposed to be heard by blind users who navigate using a screen reader and is supposed to read Play from PC keyboard (the screen reader programs read the entire text whether clipped or not). All the icon buttons have extra text for blind users. Anyway, I'd forgotten to select a check box for this button to say that it is an icon based button. Shows okay in Wni 98 anyway which is why it wasn't spotted earlier - fixed.

6th October

Help | Contents | Test My Midi Player - broken links for the midi clips to play - fixed.

21st September

When you make a fractal tune consisting of a single chord - e.g. using Bs | Arpeggio / Scale Playback | Make chord / broken chord / arpeggio into seed the chord sometimes has a ragged start with the notes not starting crisply in time - fixed.

18th September

File | Midi File Options | Midi Out / Save timing | Add pause at start of midi file - not working with the option to make a list of midi clips from the file names - fixed.

14th September

Buttons | Scales Options | Scala Scales | Make all the SCALA related files - error messages, and the files not made - fixed.

When you use Buttons | Scales Options | Scala Scales | Show current scale in SCALA also makes or shows the notes for the current window in .doc format (= the f8 shortcut to add notes to a window) - fixed.

12th September

No help icon for the new Buttons | Seed Options | Alphabet Seeds window - fixed.

Buttons | Arpeggio / Scale playback | Figuration Not playing correctly. Turned out that it was skipping the first note of the figuration, which put everything out of sync - fixed.

FTS used to let one use , and . interchangeably to input values, because it is easy to type on instead of the other - but this is confusing if you paste a comma separated list of numbers with no spaces between them, as it then treats the commas as decimal points, so reverted to the original method of treating commas and periods separately - fixed.

Astonishment.ts example tune - plays very low in pitch. This is because I increased the number of layers to 50, as a result of increasing the maximum number of layers - but for this fractal tune the melody you get is affected by the number of layers because the seed doesn't start at 0. So reset it to the original value.

Also Parts | Choose parts by | Other | No overlapping notes in same part - state of the check box not saved for this fractal tune - also should be on for this tune - the scrunchy chords are as I originally had it (actually the tune was made before the check box was added to the dialog) and because of this bug was unchecked - fixed.

1st September

Buttons | Tune Info - was getting saved to the .ini file only, and not to the Tune Smithy file - it is intended as a way of adding information to the fractal tune files you save - fixed.

When playing from PC keyboard, if you choose to show the characters to play from the keyboard on the picture, and then move the mouse over it, then as the selection changes, doesn't show the correct characters if you choose to start the scale from bottom left of the keyboard - fixed.

Exception sometimes occurs on exit after you have been playing a fractal tune - fixed.

22nd August.

If you play a fractal tune with Out | Play several at once selected, and then stop and then start again, you get an error message that the midi devices are already in use - fixed.

When you have Play several at once unselected, you can multi select the lists in Out | Midi out devices - Parts to Play but you only get a single highlight for the list you click on. It should multi-select them all (so you can enable / disable ports before you open them all in one go) - fixed.

If you close Mdi In you get an error message too - this is because of a recent option to let FTS receive sysexes and relay them on - when it reset the buffers to receive sysexes on closing midi in, the procedure that processes the buffers sent out new buffers again which is what caused the error - fixed.

19th August

Buttons | Tune - nothing shown here - fixed.

File | Midi File Options | Make Web page of fractal tunes - stops working after you unlock FTS :-( - fixed.

15th August

If you use Ctrl + Yes on a Yes No message to skip in the future it works, but if you do this with an Ok or Ok Cancel message it has no effect - fixed.

14th August

Buttons | PC keyboard Notes to play - help icon took you to an old section of the help which no longer exists, - the help for this window is in Help | User Guide 2 - fixed.

Out | Options | Cusomise voices menu names (was Use GM default instrument names) - when selected, if you edit the name for the instrument names list to make a new list, you get an error message to say that your new file doesn't exist yet (which of course it doesn't, but that's okay) - fixed.

Buttons | Seed Options | Fibonacci rhythm | Custom rhythm | Play Fibonacci rhythm - when you select this, the other fields in this window remain disabled and you need to hide it and show it again to enable them - they should get enabled immediately - fixed.

8th August evening

When you save a fractal tune using File | Save As | Files of Type | Tune Smithy Files (*.ts), then it shows the entire path as well as the file in the file name field - fixed.

8th August

When you do a save of the fractal tune in midi format using File | Save As | Files of type | Midi file, the status line in the main window showing how much time is saved to the midi clip doesn't refresh properly - it updates while the tune is being saved, but there is no last refresh at the end - as a result the time shown here is often just a little short of the time that was actually saved - the time you see if you play the midi clip - fixed.

30th July

Fixed a number of broken links in the help for FTS (some on-line sites, and some internal links too).

The equation parser didn't recognise unary minus in some situations such as 3^-(2^3) - fixed.

Freeze in Windows 95 which may possibly have been caused by the method used by FTS for synchronising threads for memory allocation in Win 95. So, reverted to the more normal Windows methods in the place of dlmalloc which it currently uses.

15th July

A couple of broken links in the help Help | Overview | Register - fixed.

14th July

Occasional delays of 50 milliseconds or more when sending sysexes to the FM7 - this turned out to be a timing issue in FTS itself, now fixed, and the option in FTS to delay note ons after sysexes now defaults to unselected.

MFX Plug in not working at all as reported on 10th July, because of the protection of the .exe files - fixed (thanks to great support from the protection scheme developers) - FTS can now communicate with the plug in while protected, and it has been added back in to the installer.

Out | Use MTS tuning programs was often sending sysexes more than once for notes that didn't need to be retuned as they were already in the tuning table - fixed.

10th July

Exception sometimes occurs when opening Midi Out if the device is already in use by another application - handled by the FTS exception handler, but shouldn't happen - fixed.

Size of mean tone comma defaults to 1/1 instead of 81/80 (until you select it from the drop list of commas) - fixed.

MFX plug doesn't work in the release. This turns out to be because of the protection of the .exe files to prevent the code gen being cracked, which is preventing FTS from communicating directly with the MFX plug in. I'm investigating to see if I can find a work around for this. Meanwhile, removed the MFX option from the installer.

Buttons | Seed Options | Polyrhythms | Auto adjust to keep slowest rhythm at the same tempo - idea is, once it is selected, then you can change the polyrhythm as you like and the slowest beat stays constant in speed - this is working fine. However, when you select it, the tune will be faster than it was when it was unselected.

Fixed by auto adjusting the main window note length whenever you select / unselect this option with Play Polyrhythm selected.

Added a thread block tester. It checks to see if any threads have been blocked for more than four seconds, and if so, releases the block. This is in case thread block ever occurs again in a future release - in normal circumstances a thread will never get blocked for as long as four seconds in FTS - the block is usually for a minute fraction of a millisecond, or occasionally a bit longer for ones that block a thread during refresh of a window. In the debug version a message will pop up if this ever happens to alert me to it so that I can fix it. In the release, it will just get de-blocked if necessary with no message.

8th July

If you show a Seed window, and play some notes in it, after that the main window play button for the fractal tune no longer has any effect - fixed.

This was because of a new measure I added in recently to help with synchronisation of the threads. What had happened is that one part of the program was going into a section of code and not notifiying the rest of the program that it had left it again, which was the source of the bug.

7th July

Buttons | Scales Options | Make MOS or Hyper-MOS... - not showing this window when you click on it - fixed.

When you read a scale using File | Open | Files of type | SCALA scales (*.scl) with the Scale / Arpeggio as text window showing, the scale refreshes in the main window but not in the Scale / Arp as text window - fixed.

6th July,

Error message when one tries to start FTS in Win 95:

Cannot find import; DLL may be missing, corrupt or wrong
version. File "KERNEL32.dll", function "InterlockedCompareExchange"
(error 127)

- fixed - this happened because this is a routine for Windows 98 or later, so I used an alternative (less optimised) implementation of it instead.

Musical E-cards - messages in several paragraphs shown as a single paragraph in the card- that's because it wasn't inserting <BR> tags for them into the html for the card - fixed.

If you choose a font for the card, not showing the text in that font - fixed.

5th July

The new MFX plug in wasn't relaying pitch bends or changing channels after the first audition of a clip - fixed.

Not saving in the new W2S (wave to seed) format - fixed.

Some bugs in the new version for the tempo map - fixed.

24th June

Mouse theremin works but joystick theremin not responding to the joystick properly - fixed.

Bug fixes in the 21st June upload - but it seems I forgot to rename it after uploading it, so no-one will have donwloaded it anyway.

21st June

Reg code bug - if you downloaded the most recent FTS beta upload, it probabaly won't recognise that you are registered. Sorry if that happened - the result of commenting out a line of code :-(. - fixed

N.B. maybe this is a good moment to mention that when I release FTS 1.09 I'm going to need to change the registration system. I'll e-mail new reg codes to all registered users.

More Windows XP bug fixes.

Oscilloscope sometimes waits a long time before it shows the new waveform when you start play, and when it does show it, only responds at a fixed rate of one update per second whatever value you set for the oscilloscope refresh rate- fixed.

Stationery + 3D attachment template leaves out the 3D attachment - fixed.

12th June

FTS 1.09 beta wasn't working in Windows XP (also not in NT / 2K).

Debugged it in this OS, and it is now working fine.

23rd May,

Monophonic legato trills by holding down first note while you repeatedly play the second note of the trill not working - it was automatically switching off the previous note before applying the new pitch bends - not necessary in this situatin and stops the trills working properly - fixed.

10th May,

When you use Buttons | Scales Options | SCALA Scales | Make / Remake Scales and modes drop lists... | Make list of scales... with Add scales drop lists (LSC files) to the More Scales drop list... selected, your new drop list doesn't get added to the More Scales drop list as it should - fixed.

6th May

Views | Play Fractal Tune | Theremin Config - Mouse right button controller - not switching off when the button is released - fixed.

Some bugs in playback of the fractal tunes, including dropping some of the constituent notes of custom voices when there are enough channels available to play them all - fixed.

Pan bug - sometimes when playing the fractal tunes, notes for one instrument get panned to the position of another instrument (also would affect other controllers used with the fractal tunes) - fixed.

Some other bugs too minor to list them all here (e.g. some entries shown multiple times in the tune smithy overview window). - fixed

25th April

No longer able to play the Fibonacci rain shower fractal tune (just does a single percussion note for it) - fixed

Installer - changed the TS file association content-type back to "application/octet-stream" (had set it to "text/plain") - difference is that if you click on the link to a TS file in a web page and it's MIME type is text/plain, you show it as text in the browser. If it is application/octet-stream then you open it with whatever program is associated with the file type. It needs to be set to application/octet-stream for the links to example ts files in the help to work.

File | Midi File Options | Gallery - can't change it from the default times of 4 and 8 mins - fixed.

Selecting from arpeggios drop list while the overview windows are shown has no effect - fixed.

When using tuning programs instead of pitch bends, + custom voices, some channel changes when you have close together notes (ones that would require identical midi notes for the pitch bends + midi note needing least pitch bend method) - fixed.

18th April

Fractal tunes using Parts | Order of Play | By layer with simultaneous notes - this only affects the fractal tunes - plays all the parts of some of the fractal tunes using the same voice. This was result of repositioning the note ons in the fractal tunes so that all the notes of a chord were played together after all the pitch bends and effects for the note (for crisper chords when very large numbers of notes are involved) - the note ons also got played after the patch changes too, so only the last one applied - fixed.

Not reading the starting pitch for the older fractal tunes - all resetting to the default of 1/1 = middle c - fixed.

(sorry, prev. upload didn't fix this)

18th April

Not reading the starting pitch for the fractal tunes - all resetting to the default of 1/1 = middle c - fixed.

Out | Options | Tuning Programs - when used with custom voices, many extra patch change midi messages, and when used with single note retuning, retunes each note of a custom voice individually - better to retune them all in one multple note "single note retuning message" just before the custom voice notes are played - fixed.

15th April

Main window views - First time you show the main window views after installing, they are all done to the same size - fixed.

N.B. reason for making the main window views resizable is that if one uses very large fonts for a dialog menu, it reduces the amount of space available for the dialog itself. So if one needs large characters in order to be able to read the menus, one may want to resize the main window views and any of the other views with menus in order to see the whole of the dialog.

15th April

Joystick theremin no longer playing in response to joystick since a recent upload - fixed.

File | Reset Check boxes etc, and Views | Midi Relaying | Reset All disables the sustain pedal - fixed.

Midi in controllers not relaying to correct parts when one chooses parts by midi input channel - fixed.

Details: it resets In | Options | Kbd Config | Accidentals as to Sustain pedal toggles flats / sharps - that is a new default. Idea is that with the optione Only use if arp starts @a, one can set up arpeggios to use the sustain pedal to select accidentals, or not, as one wishes - and it would only come into play for those arpeggios - a few in the presets list and ones one makes oneself. Means that when one selects the 19-et and 31-et presets one can immediately use the sustain pedal to select accidentals without having to read the help and select it from the drop list. This overrideds the sustain pedal so that it selects accidentals instead as intended. However, bug in coding caused this option to switch off the sustain pedal for all arpeggios whether beginning with @a or not - fixed.

Clipped text for some of the check boxes etc. - fixed.

Some Midi relay settings not saved from one session to the next - fixed.

Some bugs with the theremin including occasional high pitch notes out of sequence (for angle of exactly 0 or pi radians) - fixed.

Astonishment.ts - some notes not sustaining as they did in FTS 1.082 release - fixed. Turned out to be a newly discovered bug in 1.082 - that Parts | Choose channels by | Other | No overlapping notes in same part has no effect in the 1.082 release, and astonishment.ts has this set on. Fixed by ignoring this setting when reading fractal tunes saved from FTS 1.082 or earlier (rather late in the day to release a bug fix for it for FTS 1.082 and it has never been reported).

29th March

File | Reset Scales / Arpeggios - you get asked if you want to save the drop list whenever you do this if you haven't made a custom reset for it - fixed.

28th March

Seed etc. window - when you show the note names, shows sharps as e.g. C sharpb instead of D4b - fixed.

Various odds and ends sorted out while doing the help (can't remember them all) - fixed.

26th March

Buttons | Arpeggos drop list and Buttons | Scales drop list not always changing correctly when you add / replace entries or make new links - fixed.

Typing a charcter such as 's' into the Scale keyboard or dots to play a note instead activates the S shortcut key, in this case, Select all - fixed.

Various bug fixes for the harmonic series notation. - fixed

24th March 2002 - a bit later in the day

Some of the drop lists that show note numbers and so forth don't change teh selection - e.g. if you highlight one of the regions in the Keybaord Regions window, you find the note names don't change. The drop list of notes in all the possible formats does change actually, if you check, but the selection doesn't get updated accordingly - fixed.

24th March 2002

Bug in save of scale to .ts files and .ini with n-tet notation. Saves in n-tet notation, - wasn't intended to do so. They could normally be read okay even so, but at present they get corrected by the compensation for the buggy save in n-tet notation that was added for 15th February. There is no way to correct for both, so now I've added a check box

Bug in save of scale to .ts files and .ini with n-tet notation. What happened is that they got saved in n-et notation, then when read, gets corrected by the bug fix for the buggy save of tune smithy files that use scales in n-et notation in the beta preview before tet notation that was added for 15th February .

There is no way for FTS to correct for both automatically as both use the same notation.. Sorry about that.

So, for files saved using the recent beta preview (earlier this month), just update the beta preview and they will read okay. For older ts files saved using the beta previw from the beginning of this year, if the scale isn't right when you read them, select

Buttons | Seed etc | Config | Correct for buggy save of scale to .ts files in some beta preview uploads (before 15th Feb 2002)

and read them again, and they should read okay. . Unselect this box once you've finished using it, so that you can read the newer files okay

23rd March 2002

If one has File | Number Options | Use SCALA convention: decimal point = cents unselected, then save to .scl format for scales in cents prefixes all the cents values with ', e.g. '100.00000. SCALA won't be able to read them as it isn't standard for the SCALA scale format. FTS doesn't expect this eitehr in a .scl file, however, added option to skip the ' if found, so if you have saved any .scl files like this, you can at least read them back into FTS and re-save them. Or, just edit them and remove the extra characters. Sorry about this. Fixed.

22nd March 2002

Main window plays harmonic series okay, and playing subharmonic series as intended for negative note seed numbers when the scale is the harmonic series, but not playing subharmonic series if you define it instead using h 1/2 as the scale (i.e. as descending scale rather than descending notes in ascending scale) - fixed.

Scale window not showing this version of the subharmonic scale correctly, ditto for the mixed harmonic scales - some work still to do on this (blue dots not shown correctly for subharmonic scale).

16th March 2002

Last upload had some debug code in it that will be activated when in 256 colour mode and slow up start up in this display mode - sorry - fixed.

The two bugs from 15th March weren't fixed completely - okay now.

15th March 2002

File | Number format options - always resets to Scala notation decimal point = cents at start of session, and doesn't keep some of the other values from one session to next -fixed.

If you unselect File | Auto save config, then at start of next session, the scale resets to a scale with a negative cents value instead of the default (12-et) - fixed.  


13th March 2002

In | Options | Configure Midi Kbd | Notation as Accidentals | Sound effects - this wasn't working at all, at least, not doing anything sensible, and looking the code it is clear I just added it in, left it mid edit and never finished it - I have no memory of trying it out either - fixed.

When you have arpeggio prefixed with @a to indicate that one can use the sustain pedal (or other method) to toggle sharps / flats, then it doesn't get read properly from the .ts file - fixed.

12th March 2002 afternoon

Views | Analyse Recording or Midi voice | Show recording - not refreshing when you click the Stop rec. button. - fixed

Also, Play & Play detail button for playing the recording, for this view , starts play when you press it and stops when you release, instead of starting play when you release the button, and needing another click to stop play - fixed

12th March 2002

Parts | More | Portamento and Legato | Ok to use monophonic legato type trills - not pitch bending correctly when trilling between notes that are close together in pitch - fixed

Out | Notes In play | Show ratios etc instead of pitch bends - not showing these correctly - fixed.

Out | Options | Resets | Do pitch bends for all the notes of the main window arpeggio before opening Midi out and whenever arp. or scale changes - not sending the pitch bends for all the mid out ports when only some of them play the first part - fixed.

Also for this option - not refreshing the window always to show the new values, and not updating when you start to play the fractal tune and a few things like that - fixed.

Mono mode only works if you show Out | Options | Controllers in Play for the Mono Mode controller at least once in the session first - fixed.

If you select Views | Colours | Custom button images and unselect Custom background you see the tranparency colour as a square of colour for the button (e.g. magenta) instead of the window background colour - fixed.

For 256 colour display, buttons show a square of nearly the correct colour for the background, but not quite - fixed.

6th March 2002

Background texture for dialog not showing correctly in 256 colour display mode - now using popularity algorithm for the background texture - fixed (more or less anyway).

2nd March 2002

If one uses FTS with a keyboard that sends active sense messages, then FTS can crash - exit immediately with a blue screen type error message - when Midi Out and Midi In are both open. This happens with two of the three midi synths of my SB Live ! soundcard, and happens at once, whenever FTS sends an active sense message to it. Solution: to not relay them, and add a check box to select to relay them if it is desired, plus a warning message before selecting it. This is new because in earlier versions of the beta preview, FTS didn't relay the active sense messgages.

The check box is In | Options | More Options | Relay active sense - defaults to unselected. Fixed

In | Options | Scales for Parts presets - adds an extra 0 factor at the end - fixed.

When you have File | Number Options | Show Herz selected, if you then change the pitch using the Pitch window, the main window scale continues to show the old herz values - fixed.

Various other bug fixes to do with the File | Number Options window (I can't remember them all).

Out | Options | Pan | Auto pan by scale pos has no effect - fixed.

Parts | More | Amp Var... and Pitch Var... - values saved to the .ts file but not read from it when you open it again - fixed - and as the info is in the .ts file, any files one may have saved earlier with this option will be read okay. - fixed

Parts | More | Amp Var... and Pitch Var... - when in effect, vibrato is supposed to start at x = 0 for the start of each note, but was only doing so for the pitch variation, and then, only if you had both effects in play for the part - fixed.

21st Feb 2002

If you have the option selected to open the midi in port at the start of the session, and it is already in use by another program, FTS waits for it to become free before starting, which isn't a sensible thing for it to do - fixed.

Parts window - if you use Alt + click to copy a part, it does it, but doesn't refresh the lists so it looks as if nothing has happened, until you close the window and show it again - fixed.

Midi relay file format *.rly - only saving the info that affects the fractal tune, scale arp etc, not the keyboard regions, controllers etc - fixed.

Keyboard regions not being saved properly to .rly and .ini file - gets out by one when you save and re-open - fixed (plus this will fix any other bugs there are of the same type as they all use the same code).

If you save a drop list of arpeggios with the Steps tick box selected, and some of them,like melodic minor, ascend one way and descend another way, those ones aren't saved correctly - fixed

Various niggling bug fixes in In | Options | Scales for Parts Presets.

Fractal tune ignores the descending mode of an arpeggio that has distinct ascending / descending modes - fixed.

old waterwheel.ts, and astonishment.ts, have some notes cut off short in the 1.082 version, and sustained in the new version. For instance, in the old waterwheel, the first phrase by the flute ends with a note cut off suddenly, while in new version it is sustained into the next phrase - the new version is as it should be as it has Parts | Order of play | Other | Sustain all notes to next note for same part selected.

This turns out to be caused by a bug in the 1.082 release, and it is rather hard to add code to duplicate it in 1.09 - I've tried, but after reproducing the bug faithfully, and combining it with the FTS 1.082 method of allocating pitch bends, it still doesn't manifest in exactly the same way as before - instead, after adding the bug back in, too many notes get cut off short. Oher parts of the code have also been changed since then. I think perhaps one may just have to accept that occasionally some notes get sustained a bit longer in new version and if one wants to hear the exact amounts of sustain produced by the earlier buggy version, one needs to use FTS 1.082 - sorry - not fixed, and not likely to be fixed either prob. - but I'll give it some more thought.

15th February

Auto sync of Arpeggios with the scale is syncing the description only - the arpeggio stays as it was - fixed.

Save of scale to TS file is incorrect - uses the n-tet notation for some notes, and when using this notation it also adds 1 to all the scale entries. E.g. if you save and re-open the African xylophone, then you will find it no longer sounds the same. Fixed for now by making it so that it no longer saves in the n-tet notation (which is as it was originally, and as intended - okay if one saves to enough decimal places of precision to recover the notation when one wants to show the notes in that format). Also, to keep compatibility with any files saved using the buggy version, if it finds the n-tet notation in the saved scale, it corrects for the error. So it can read any files you have saved in this format - fixed.

14th February

Not saving the formula for Parts | Choose Parts by | Other to the TS files - fixed.

Apologies to algo-comp users of FTS!

Buttons | Scale... - bug in selection of notes if you play notes on the PC keyboard to select notes from the scale to make a new scale - okay if you use the mouse - fixed.

Pitch of 1/1 window - if you use up / down arrow with focus set to the scroll bars, it moves the pitch up for the down arrow and down for the up arrow. Can't do anything about this easily, as I want it to be left for the left arrow and right for the right arrow with horizontal scroll bars for the notes and the horizontal scroll bars respond to the up arrow key in the same way as the left arrow. However, did do a vertical scroll bar for the frequency - sort of fixed...

13th February

When you click on the record to midi or record to Wav buttons in Views | Many Controls, the icon doesn't chagne to show that you are recording - fixed.

When playing with separate ascending and descening arpeggio from the PC keyboard, like melodic minor, or say, 0 1 3 | 0 2 3, then sometimes playing okay in ascending and descending modes depending on the previous notes, and sometimes not. It was because it was taking account of key releases as well as key presses, and what one got depended on whether one released a key on the PC keyboard before playing the next note - fixed.

Various bugs in the FFT and wave counting section - but as that is very much mid edit anyway, I haven't kept track of what they all are.

8th February

Update of FFT window for log plot frequency axis for large FFT sample size was slow - fixed.

7th February 2002

Not reading the partials saved from the FFT view correctly - fixed.

Buttons | Scale window not responding correctly when you click to select notes (bug introduced with new extension to both negative and positive numbers for the degrees when clicking to select notes) - and some other related bugs in this window - fixed.

6th February

Buttons | Seed | Config | Play from PC keyboard options | Play -> triangular lattice vectors - the ratios showing as decimals such as 1.5, 1.2 instead of 3/2, 6/5 - fixed.

Mouse and keyboard note playing for the Seed window - some delays before the note sounds on occasion - fixed

5th February

Quite a few bugs in the Seeds window, especially to do with shifting the zero position of the seed, and playing the seed using the Alt +. (full stop) short cut - all fixed

- except that if you record a seed shifted up and the number of notes in the scale isn't an exact multiple or divisor of the repeat for the arpeggio, then you will hear a transformed seed rather than the one that starts the fractal tune - explained in the help, and now you also get a message explaining the situation if you change the zero position for such a scale / arp. That will prob. be left as it is, as it is explained.

Views | Scales work - can't change to this main window view - shows the Midi relaying view instead - fixed.

Buttons | Scale | Play (or Edit) | Shift + enter to make an echo of the picture with the dots, or keyboard - not responding to mouse moves or button clicks to change the selection of notes etc. - fixed.

If you have a scale with the notes on several lines in another document, and paste it into the Buttons | Scale box, then instead of the notes being put all on one line, they are put on multiple lines, so that you can only see one of the notes in the box (though they show okay in the picture with the dots) - fixed.

If you use the N: prefix at the start of a scale to indicate that all ratios of a scale are in n-tet style notation (fractions of an octave) rather than ratios, e.g. 4/19 for 4th degree of 19-tet, it works fine, but if it is lower case n:, the values are read as herz instead (misreading it at h:) - fixed.

Main window | Note length shows large number of significant places instead of the number set using File | Number options sig figs - fixed

Buttons | Note time options | Time for one note, Time for 10th note of Arpeggio and Volume for 10th note of Arpeggio - not updating when scroll bar is pressed - fixed

File | Number options | Alternative cents notation | Radix - not updating when scroll bar is pressed,. - fixed

When the Alternative cents notation is selected, the Show cents as diffs from 12-tet didn't work. Example: to base 5, 5-tet is 0 100 200 300 400 1000, so one would want to show cents diffs from those values instead, i.e. cents diffs from 5-tet - fixed.

Renamed File | Decimal notation | to n-tet or small ratios which is what it is now.

Buttons | Seed options | Fibonacci rhythm | First Fibonacci layer - not updating when scroll bar is pressed - fixed

2nd February

Various bug fixes in the Buttons | Seed / Scale / Arpeggio windows. Main ones: you can't select the Main radio button. Not setting the keyboard focus to the keyboard or dots when you move the mouse over it to activeate it. - all fixed.

28th January

Various bugs in the FFT sections found while working on the new FFT main view - fixed.

Resource leak when changing views, + if you do it many times, FTS can't show main window and exits - fixed.

Buttons | Seed Options | Multiple Und0 | Ctrl + Z and Ctrl + Y for fractal tunes not working - fixed. (N.b. this only is implemented for fractal tunes, not for midi relaying and other settings).

Also done it so that if you do Ctrl + Z back until you reach the original tune, it removes the * from the title to show that the tune has changed.

Volume as edit field - the fractal tune doesn't respond immediately to the change of volume, as it does when you have the volume as a graphic - fixed.

Some bug fixes for the Scale window. This is the main one:

If you show a Scale window, and also show the fine tune controls for the window, under some circumstances, when you move the mouse over the keyboard to sound the notes, all the notes get retuned upwards or downwards to the neighbouring notes to either side (until all you have left of your new scale are the two notes 1/1 and 2/1) - fixed.

File | Number Options | Ratios Options | Tolerance in cents - if this is set to non zero : slow memory leak of a few bytes every time a scale is refreshed while program is running (clears up on exit session) - fixed.

22nd January

Various bug fixes for the user interface (scroll bars, text, etc) for the In | Options | kbd regions dialog.

Buttons | Seed Options | Fibonacci Rhythm | Custom Rhythm | replace L by - if you edit this field and then play the fractal tune straight away, then rhythm isn't played correctly (okay if you save and re-open, or exit and start a new session, or unselect then re-select the fibonacci rhythm) - fixed.

Buttons | Seed Options | Fibonacci Rhythm | Fibonacci tone scapes | Find companion ratios now or Keep companion ratios optimised for pitch drift e- the companion ratios limited to the same range of values as is used when finding all the first row ratios - so if you enter a large ratio, it won't be able to find the companion ratios for it - fixed

21st January

Recording in Midi format from FTS while playing: first patch for each midi channel not recorded in the midi file - Sorry! - fixed

Many windows don't have enough space for the button images if one makes custom images for them that fill a 32*32 bitmap (the ones with the program all happen to have a fairly wide transparent margin) - fixed.

Buttons | Tune | Options | Notes as | Ratio, Ratio from previous note renamed to Interval, Interval from previous note

Buttons | Tune | Options | Notes as | Interval, Interval from previous note when you click Play Scale, this shows cents instead of ratios for scales that show as pure ratios in the main window - reason for this is that it shows the cents value sent to midi out, with a drop in resolution because of the use of midi pitch bend units, rather than the internally used value - fixed by changing this to the internally used value.

Buttons | Tune | Options | Notes as | Note-name - if one has the C' C c c' c'' type notation selected in the notes drop lists such as Pitch | Note it shows them all as upper case instead of upper / lower depending on whether note is above middle c - fixed.

Buttons | Record config. Shows the X... hex dump button for WAVE (*.wav) selected as the format - only relevant for MIDI format - fixed.

17th January

Buttons | Seed... | New Seed, scale or arpeggio options | note names - when one selects it, text changes to 1, when unselected, changes to 0 - fixed.

With the custom buttons and background selected (as it is by default now), sometimes crashes on exit. I.e. you exit from the program, and at that point get the message that it has done something illegal and will be terminated - usual thing in C, zero valued pointer, this time, because one of the subroutines was given a zero valued pointer by Windows and was trying to use it, which is "illegal" - fixed

Sometimes when you click a button or a tick box, the text for another button or tick box vanishes - only when one has a custom background - fixed.

Note that if you click on a tick box and hold the mouse down and move the mouse cursor, the box vanishes until you release it. This I can't fix at present, and it may not be possible to fix it while getting everything else working okay with the custom background. However users don't usually drag with the mouse in the middle of clicking a tick box or radio button so I think this is okay. If anyone does mind about this, fix is to switch off the custom background bitmap.

13th January

Views | Midi Keyboard Retuning | Presets for scales dep. on parts... (same as In | Options | Presets... button) - for the tonality diamond and free tonality diamond, instead of entire left part of keyboard playing the inversion of the scale, only the leftmost octave or so does - fixed.

Ditto: if one chooses the Free tonality diamond, and then does a fair number of root control changes, then the minimisation of 1/1 drift stops working and the pitch played by the 1/1 starts to drift. What happens is that the root gets large as one applies repeated changes of the root. The transposition as degrees in the arpeggio was restricted to the range -100 to 100 which eventually is too small to compensate for the change of root.

Now, if root gets large, it gets transposed back into the vicinity of the original octave of the scale, and then the transposition is adjusted accordingly, to keep both numbers small. (Also the restriction on the size of the transposition is removed now). Fixed.

Messages that one gets about making the scale first before clicking the buttons somewhat confusing - fixed.

Views | Midi Keyboard Retuning | Presets for scales dep. on parts... | Scales for Parts...|Skip single note results for factor selection (this tick box shows up if one does one of the CPS sets) should default to selected, so that e.g. if one plays keys to both select and unselect the same CPS set factor, it leaves one at the previous selection - fixed.

8th January

Main window views - Fractal tunes drop list - not showing the fractal tune name - fixed.

Show Views | Menu Only and then any of the other views and the scale and arpeggio drop lists go blank (need to reset using e.g. File | New or File | Reset Scales and File | Reset Modes) - fixed.

Rename File | Reset Modes to File | Reset Arpeggios list.

21st December,

If one has Out | Options | Mid Out Channels set to just a single channel (say, channel 2), and play a piece that requres more than one note playing at once, then rather than cut off the first note when second is played, FTS plays the second note in channel 1. That's not right, user has said that they are only to be played on channel 2 (maybe synth isn't set up to receive notes at all in channel 1) - fixed.

20th December, evening

Buttons | Scale fields not changing the main / Arp as text - the arpeggio description and definition window arpeggio - fixed.

20th December

In | Options | More Options | Relay directly from MIDI In to Midi Out (for use with record play along hex dump, switches off at end of session).... - not recording correctly to midi file. Same thing as the aftertouch bug of a while back - using the default of two data bytes for each message, which is okay for relaying to Windows as Windows always expects to be sent two bytes, and resets the number of bytes as needed depending on the midi event - but when saving to file, one needs to program for this, saving the correct numbers of bytes for each type of event. Relaying directly to midi out bypassed the FTS programming for this. Fixed for all the short messages. Not implemented or tested for sysexes of more than two bytes..

18th December 2001   - a few minutes after the previous upload.

File | Midi File Options, and File | Midi File Options | More Options... some fields shown blank and tick boxes ticks not shown - fixed.

About box will still show yesterday as the upload date - fixed.

18th December

Fixed some clipped text in dialogs.

In the last couple of experimental beta uploads, saving to midi as one plays or relays may ignore the file name in the Buttons | Record Config box, and instead uses the most tune smithy file name that one saved to most recently. Fixed.

When one opens a midi file for a hex dump, if it has text events that need to be wrapped to several lines, multi-line text is shown correctly, prefixed with ";"s, however the later bytes are shown in the file commented out by being prefixed with ";" when it should be a ":". Such a hex dump can't be conveted back to bytes using b2hedit until one goes through and replaces those ";"s with ":"s - fixed.

Highlighting an entry far down in the Organise Windows (yellow O icon) | Overviews lists of windows causes the list to scroll up until the highlight is just out of sight at the bottom of the list - fixed.

With the new custom background texture, the main window buttons with images vanish if you click, hold the mouse button down, and then drag while keeping it held down - fixed.

Buttons | Note timing options | Tempo map highlighted zone - the text within this region gets lost when one has a background texture - fixed by re-arranging the window and removing the text "Highlighted Zone" from the group box - the line round the controls. The method for replacing the background with texture doesn't work at present for a group box with text, so this is a solution. Same kind of thing in various other windows with group boxes. - fixed.

17th December

Buttons | Seed... | Play button not changing to a Stop icon when it is pressed - fixed.

15th December

Some of the check boxes etc. for the new dialogs not updating - fixed.

In | Options... | More Options... | Ignore midi in patches - box can't be ticked - fixed.

Out | Options... | Close midi out when inactive - box can't be unticked - fixed.

Parts... | More... | Ranges... - if one has Sync to Pitch ticked, then as one changes pitch in the Pitch window, the range (compass) of each part changes in synchrony. E.g. recorder, C5 to D7' changing to F4 to G6. Working fine, but the note name and midi note number for the highlighted row not being updated if one changes the pitch while the Ranges window is shown - fixed

Out | Controllers for Parts | Controllers in play not responding to changes in the controller drop list - fixed

Values for controllers sometimes not changing in the dialogs when changed from Midi In - fixed.

When pan is changed from midi In, this has no effect if one has Out | Options | Auto pan by parts, or auto pan by pos in scale ticked. Fixed by automatically switching off the auto pan in this siuation.

13th December

When a Bank Select message is sent, one should resend the patches for any voices in play, e.g. if keeping same patch number and changing from one bank to another. Fixed.

12th December

Some text fields in the new controllers windows not responding to scroll bars, or entries not changing when the text below it is edited, and so forth - fixed.

Seed as text volumes and times only changing main window seed if one has Buttons | Note timing options | vary volume with pos on arp. / mode, and note time by note height respectively, ticked (there isn't supposed to be any connection between these,it's just a glitch) - fixed.

Out | Notes in play | Refresh after note offs not working. - done

Missing help and organise windows icon for pitch and colours window - fixed.

Parts | Octave shifts for channel not read from the .ts file (so e.g. african jungle no longer sounded the same) - fixed.

11th December

Out | Close when inactive can't be ticked - fixed.

Use SCALA convention dec. pt eq. cents not remembered from one session to the next - fixed

Many controls View | Cents or small ratios not ticked - fixed

Out | Notes in Play | Refresh after note offs not working - fixed.

Simultaneous note ons with same note number and patch getting relayed on the same channel.

Apparently, some high end synths and soundcards do support this, but many don't - not recommended for making midi clips for general use. Added tick box Out | Options | Same note polyph for single voice. Defaults to unticked, and when unticked, if you play same note twice, e.g. because you have keyboard mapping that sends two keys to the same note, they are played on separate channels, so only one gets switched off at a time.

9th December

Vibrato and tremulo for Midi out, by continuous stream of expression and pitch bending messages. This was result of Parts | Amp Var... and Pitch Var... defaulted to on, should default to Off - fixed.

Ticking In | Open now has no effect - fixed

Ticking In | Open at start of session has no effect - fixed.

When clicking on the FTS desktop shortcut created by the new installer you get message "Couldn't read from Open" - fixed.

Blank caption on start up - fixed.

Not reading the midi keyboard map from the .ini file: In | Options | Kbd config | Play Arpeggio With - fixed

Pitch bends of 0 shown as the likes of 1.23456789 e-11 etc instead of 0 for Out | Options | Notes in play - fixed.

8th December

Time for one note not saved properly to .ts file / read from it not working . Also reset of note length - resets on open / save, and not on reset. This only affects yesterdays new experimental upload = fixed.

7th December

Midi out options | Close midi out when inactive can't be ticked - fixed.

File | Number Options | Use scala convention decimal point eq cents not saved to .ini - fixed

OPen midi in at start of session - ticked n the menu, but the box not showing the tick - fixed.

In | Options | Sync seed / scale / arp. - can't tick it. - fixed

New Scale | add to main window drop list doesn't work properly - fixed

Values such as n(1/19) shown when one resets all the numbers, for the cents and small ratios. - this is for one of the ohter options - fixed.

23rd November

Too many pitch bend messages - not settling down to one pitch bend per channel for scales needing less than 15 pitch bends as it should. - fixed

Tune info window not showing the correct duration first time it is shown - fixed.

21st November

A pitch bend of exactly - 200 cents (pitch bend value 0), is not applied. - fixed

This will happen rarely as most bends FTS uses are in the range -50 to 50 cents, but could happen as result of pitch bend added to notes already having a bend.

Main situation one will notice it is when one does the FTS midi pitch bend test - type #test into the musical seed box and click the play button, you should hear a repeated note consisting of, say, note 58 (Bb) + 200 cents, and note 62 (D) - 200 cents, which of course should be the same notes - used to check ones soundcard or synth is applying pitch bends correctly.

For the new preset for Margo Schulter's sesquisexta - should select In | Options | Configure Midi Keyboard | Drop list: Custom - stop auto synchronising 1/1, so that one can set the positions of the 1/1s in the two halves of the keyboard independently - fixed.

18th November

Retuning midi player bug: getting timing wrong if note is longer than a fifth of a second and you have Buttons | Note timing options | More... | Time by previous note selected - fixed.

16th November

Midi in Pan of 64 not relayed - fixed.

15th November

No ticks showing for the voices menu for the midi groups of voices such as Piano, Chromatic percussion etc when you tick a voice within it - fixed.

When In | Options | Scales by Tracks | Sound roots is unticked, plays midi note 1 for the roots instead of being silent for them - fixed.

10th November

If you enter a scale in cents with File | Number options | Use SCALA convention: decimal point = cents ticked, and last note of scale is in cents, and you do it with no white space at the end, the last note is read as 1/1 - fixed.

Help icon for Buttons | Seed Options | Fibonacci rhythm shows the help for the fibonacci tonescape - fixed.

9th November

File | File Associations |

In | Options | Configure Midi Keyboard | Set Pitch Bend Range - if you change this away from the MIDI default of 2 semitones, Scale / Seed / Arpeggio windows not playing correct pitches - fixed.

When Out | Auto pan by track number is ticked, if you play a fractal tune with several voices, then follow it with one with a single track only, the voice gets panned to the various positions of the previous fractal tune instead of staying in the one place - fixed.

The asterisk next to the Note options... button in the main window Advanced Tune Smithying / Original views to show if any note timing options are in effect didn't show up if one ticked Note timing Options | Tempo map - fixed. Also added check marks to the buttons menu for Buttons | Note timing options... and Buttons | Seeds Options...

In | Options | Presets | White keys play mode, black play accidentals (if any), play highlighted track - changed it back to play track 1, and done it so that if you select any of the presets, it sets the highlighted track to track 1.

In | Options | Presets for mapping regions of keyboard...

Added Track 1 back in as an option, and got the Highl. Track. showing properly when selected, and the text box able to accept h (= highlighted track) as an entry.

If you play a fractal tune, and click on the main window Record to Midi to stop the recording, sometimes you get message "Error reported while sending data to Midi Out - Midi out close", "Undefined external error" - fixed.

Also, skipping the midi resets for the end of the midi recording, to reset the pitch bends and controllers when finished - fixed

(Though modern midi players do this anyway at start of clip, and if you halt playback before that point, you are going to be left with pitch bend retuned channels anyway whatever messages one puts in the clip.)

6th November

If you change the fractal tune using the drop list of fractal tunes while a tune is playing, then many of the edit fields (such as time for one note, tracks, etc.) don't work anymore until you exit and start a new session, and you can only change values using the spin controls etc. - fixed.

When Buttons | Seeds Options... | Multiple Scales... | Sync with muliple seeds is ticked, the Multiple scales window shows places for scales beyond the last seed in the list (though you can't select a scale into them) - fixed.

Voices and Non melodic percussion menu left out of the Ctrl + tab navigation between FTS windows - fixed.

Some resizing / re-organising of windows, including creating new window: Buttons | Seeds Options... | Fibonacci rhythm... | Fibonacci tonescapes... | Optimisation config... with the optimisation controls from the Fibonacci tonescapes.. window, and reducing size of windows that were too large to fit on 640*480 screen with normal size fonts (which I use as a max. size for window for FTS).

4th November

Retuning midi player getting the timing wrong when playing some midi files - fixed (was because it wasn't taking account of running status in the midi file).

When recording to a midi file, changes in channel pressure were saved as a two byte message with second byte 0, when it should be a single byte message. This caused glitches in playback of the recorded midi clip, as part of the next message was read as a time rather than the next message - fixed.

In | Options | Configure Midi Keyboard | Set Pitch Bend Range - if you change this away from the MIDI default of 2 semitones, doesn't always remember the changed pitch bend range, e.g. when you start a new session - or close and re-open midi out (effect was synth dependent) - fixed.

With non default pitch bend range, if you pitch bend far enough so that the note needs to resound, sometimes it gets stuck on - prob. fixed.

2nd November

Custom voice as Timbre dialog - all fields showing blank - fixed. Opening previously saved lists of partials (type *.tbr) had no effect - fixed.

When one has Out | Ok to use several ports at once ticked, though the ports get selected / unselected as desired for playing, only one of the ports gets ticked at a time on the menu - fixed.

1st November

I'd made the Tracks list multiple selection as a try out, meaning to put it back to single selection for the upload.

So, it doesn't have code for handling this, sorry!

Put it back to single selection - fixed.

Idea of the multiple selection is that one can select a voice into several tracks in one go. Alsoselect consecutive midi voices into the tracks by some keyboard shortcut, say, using Ctrl + click on the first voice. E.g. highlight eight tracks and Ctrl + click on Piano will place the 8 piano voices into them - useful when trying out soundbanks / fonts. However, it was just an idea I was thinking over, and not intended for the upload.

[2nd Nov: multiple selection for the Tracks window is now working]

Also I added option to choose highlighted channel for midi in, similar to the new processing for the PC keyboard voice, but hadn't yet added anything to the Midi in processing to take account of this - fixed.

31st October:

Some bug fixing of the FFT section.

The file asssociations you can make from File | File Associations by ticking one of the boxes for one of the file types such as .ts only work if name for the Fractal tune smithy folder has no spaces in it - fixed.

27th October upload 3

When Config | FFT Config | Log plot frequency axis was ticked, FFT detail view didn't show correct region - fixed

Blank fields showing in the FFT Peak detection dialog - fixed.

27th October upload 2

Bug fix - realised that if one goes beyond the range of a 32 bit integer with the tick count, will cause a glitch in the rhythm, so now tick count just cycles around the ticks for a single "bar". Also means that one can get extra pauses at end of each "bar" if one wants that by changing the number of ticks for the bar after entering the polyrhythm.

23rd October 2001 p.m.:

Main window: Show volume as text box (the < button) - shows label and scroll bar, but not the text box- fixed.

23rd October

Various bug fixes. Main one, the multiple seeds option, which applies for some fractal tunes (such as the golden ratio cello tune) was no longer working as it used to - getting the seeds okay, but resetting number of seeds to 0 - fixed.

9th October 2001 p.m.

Affects anyone who might register for first time using the upload earlier today (9th Oct). If one hides the registration window at start up (by unticking the new tick box), then registers, then FTS forgets that you have registered when next section starts (because the code to show the startup reg window also checked that you were registered, and unticking the box bypassed that check). - fixed

8th October 2001

Was still timing out for the play along from PC keyboard - which was the situation originally and I intended to change it to unlimited play from PC keyboard. - fixed.

Not showing the help and organise windows buttons in the pitch and colours dialogs and a few other ones (they are there but invisible because the icon isn't drawn) - fixed.

4th October 2001:

On showing window then closing again (e.g. with Escape or Alt + F4), one wants the focus to return to the main window, especially for keyboard users, and wasn't doing that - fixed.

For new retuning midi player: if playing an already tuned file as 12-tet + pitch bends to keep the tuning, resets to 12-tet if you close and re-open midi out while it is playing. (Has no effect if retuning a 12-tet file to some other temperament or scale, as there aren't any pitch bends in the file itself.)

Same happens while midi relaying - if you use the pitch bend wheel to bend the pitch away from the current scale that you are retuning to, and then close and re-open the midi out while keeping the pitch bend wheel held away from the middle position, then the midi note relayed will reset to no extra pitch bend.

Decided that instead, one wants to remember all the midi in pitch bends on closing and re-opening the midi out. Resets them if midi in is closed and reopened.

Now instead, it resets the midi in records of pitch bends etc. just before it starts to retune a file, in case it has no pitch bend information in it (and is intended to be in 12-tet), as otherwise the notes would just be played with all the current midi in pitch bends, e.g. from previously retuned file.

This behaviour is fine for both midi relaying from midi keyboard and playing a midi file to retune it = fixed.

Still not refreshing the Midi files drop list for the retuning midi player when you change the folder - fixed

Stop playback of midi not stopping if pause is pressed - fixed.

3rd October 2001:

In | Options | Configure Midi Keyboard | Repeat Scale / Arpeggio at keyboard "octave" padding out with duplicate notes if nec. not working properly - fixed.

New retuning mid player - wasn't pausing for the correct time for some notes - fixed

Out | Close when inactive - new option recently added - can't untick it - fixed. 

Also, this option closes midi out when switching between FTS windows (instead of just when switching to another app), and closes midi out even if there are still notes sounding, instead of waiting for the playing to end first - fixed.

2nd October 2001:

Midi files drop list for the retuning midi player wasn't refreshing automatically if one changed the current folder, e.g. by opening a file from File | Open.

28th September 2001:

Fixed bug prevented use of the Gene Ward Smith transformations in conjunction with root control.

17th September 2001:

Fixed crash of FTS that happened on showing the Midi Keyboard Regions window when running FTS in NT or Windows 2000.


Test Midi File Player & Sound card / Synth
Download Tune Smithy
Tune Smithy Manual - in new window (or popup)
Search Manual
FAQ - new win. (popup)
What's new
Purchase Tune Smithy
To find this feature:
Look on your desktop for:
Tasks for Tune Smithy
Acceptable Use Policy
Special Offers
Site Designed with advice from Sojo Media (Thanks!)
© Robert Walker 2008
tool tips by overlib