Hi Andy,
Thanks for the reply. sinesum is better but not perfect – the issue is that the cos() function is not the same on all four parts of the waveform, and those imperfections can cause fm to drift. You can build a symmetric table easily enough but since osc~ and cos~ are so important, they should be fixed. I'll submit a demo patch when I get home.

Matt

On Wed, Aug 4, 2021, 2:50 PM Andy Farnell <padawan12@obiwannabe.co.uk> wrote:

I always found that [tabosc4~] along with ability to fill arrays using
like csound gen message functions [sinesum( gives me all the accuracy
I needed for FM. Am I missing something in pull/106 about shorcomings
of [osc~]

andy

On Wed, Aug 04, 2021 at 10:55:02AM -0400, Matt Barber wrote:
> I'd love to get a symmetric cos table for stable FM:
>
> https://github.com/pure-data/pure-data/pull/106
>
> But I remember you were thinking about going another direction entirely
> with osc~?
>
> Thanks,
>
> Matt
>
> On Tue, Jul 13, 2021 at 1:23 PM Miller Puckette via Pd-dev <
> pd-dev@lists.iem.at> wrote:
>
> > (re-send - I had sent to pd-dev@iem.at but that now seems to be
> > defunct...)
> >
> > To Pd dev -
> > I'm going to try to get the next Pd release (0.52) out over the next month
> > or two.  My personal priorities for this release would be putting in a
> > message
> > backtrace mechanism (by overriding canvas_connect and pd_bind to go through
> > small proxy objects; this will have to be done at load time I think) and
> > to go back and try to figure out how to do tooltips without adding cruft to
> > the inlet structure.  (There's an ancient source-patch to provide tooltips
> > by Chris McCormichadn Guenter Geiger that I plan to start with -
> > https://sourceforge.net/p/pure-data/patches/264/).
> >
> > Before doing that I want to do some reorganizing - in porting Pd to
> > FreeRTOS
> > (so I can run it on an Espressif LyraT board, which I think takes only
> > about
> > 10 or 20% of the current that a Pi needs) I found out that I had to move
> > a few functions from one file to another.
> >
> > This might break some PRs, so... first of all would be to identify whatever
> > PRs are ready to merge so I can do that before I make incompatible changes.
> > Of course "stable development branch" first... then Dan's soundfile
> > updates...
> > then what?
> >
> > PS more ideas of mine (among many):
> > hot-reloading externs via a message to Pd
> > use a "unix binding" socket between Pd and pd-gui instead of localhost
> > generalize number/symbol box to allow displaying entire messages or lists
> >
> > cheers
> > Miller
> >
> >
> >
> >
> > _______________________________________________
> > Pd-dev mailing list
> > Pd-dev@lists.iem.at
> > https://lists.puredata.info/listinfo/pd-dev
> >

> _______________________________________________
> Pd-dev mailing list
> Pd-dev@lists.iem.at
> https://lists.puredata.info/listinfo/pd-dev