Tuesday, November 29, 2022

Prometheus v2.97, Selection Box Rehearsal

Well, I spent a few hours in the night thinking through my recent changes and have worked out the necessary fixes for Prometheus. The problems weren't serious. The tracks have buffers there, ready for instruments. When playing, the instruments are copied to the tracks (not over the buffers). So, when stopped, the tracks have a record of the last instrument to play... the size of buffer they want is stored there and might not be the maximum, but if I zero the buffers based on those then that's still enough, actually optimal - there's no point in zeroing the areas of the buffer it doesn't need.

The cause of the crashes yesterday, was old and invalid pointers in the save file... pointers to the 'last instrument' of a long-ago played song. It's a certain fix (and good practice) to wipe these upon loading. I've never referenced those pointers before, so it's not been a problem, and indeed I've removed references to them anyway, as well as wiping.

One last problem was a strange 'pop' noise when live playing, but I think this was down to not clearing the newly reserved track buffers. The pop occurred fairly predictably (a godsend!) and on a track with a band-pass filter. It has no buffer but does use a few utility floating point variables, which are reserved. The buffers are wiped when an effect uses a buffer, but not for these new 'utility' effects, so I've now zeroed the buffers no matter what. It seems fine now.

Perhaps my changes are complete, this intense chapter of my life this year. Programming drives me crazy with its obsessions for perfection, its fear of bugs. It was this anxiety more than anything that made me give up programming: programmania nervosa.

After this, Deb came round for a first rehearsal of the Crewe Christmas show.

I, amazingly, seemed to remember all of the music. Deb remarked that it's exactly a year to the day since we rehearsed for the Crewe Tree of Light ceremony, and our commissioned work, Sky Robes of Celeste. We played it again today. It was a difficult rehearsal though. The new synth means all new sounds for many of the pieces, all new arrangements. Every show we've done has new arrangements and usually different instruments for almost every track; amazing. We're the sort of duo who would drag a double bass to the show for one 2-minute use of it, and use something else for the next performance.

Now, after Prometheus, this show can be my focus, and back to the painters album. I've done some work on 'Tycho Brahe the Noseless Astronomer' today.