@JonnyMac said:
Version 7.3.0 doesn't understand a PNut constant (this works in Propeller Tool and Spin Tools).
Thanks for catching this Jon. Chip added p_invert_out as an alias for p_invert_output, but I didn't notice that change (the table in flexspin was created based on an older version of the docs, I guess). I've added that and p_true_out to github and they'll be in the next release.
@Rayman said:
@ersmith The "shell.c" example doesn't seem to compile in FlexProp IDE...
In which version of FlexProp, and on which OS? It works for me with 7.4.2 on Linux. I seem to recall that there was a bug in shell.c in an earlier version (7.4.0 perhaps?)
It makes use of a variadic function for debug prints. See
typedef struct sx1268_handle_s
{
...
void (*debug_print)(const char *const fmt, ...); /**< point to a debug_print function address */
}
When trying to compile with flexcc, I get
/tmp/test.c:33: error: Bad number of parameters in call to debug_print: expected 2 found 1
if the function is called without any argument beyond the format part for a simple print-statement without any actual string interpolation.
GCC eats this just fine.
I'm on the latest and greatest release I'd say:
Propeller Spin/PASM Compiler 'FlexSpin' (c) 2011-2025 Total Spectrum Software Inc. and contributors
Version 7.4.2-HEAD-v7.4.2 Compiled on: Aug 31 2025
Any suggestions welcome.
Edit: I just saw that there's no actual string interpolation used, so for some immediate progress I just redefined the debug function to be non-variadic. I still think this is a bug (and would prefer to use the driver unaltered of obvious reasons).
Comments
Version 7.3.0 doesn't understand a PNut constant (this works in Propeller Tool and Spin Tools).
Thanks for catching this Jon. Chip added
p_invert_out
as an alias forp_invert_output
, but I didn't notice that change (the table in flexspin was created based on an older version of the docs, I guess). I've added that andp_true_out
to github and they'll be in the next release.@ersmith The "shell.c" example doesn't seem to compile in FlexProp IDE...
In which version of FlexProp, and on which OS? It works for me with 7.4.2 on Linux. I seem to recall that there was a bug in shell.c in an earlier version (7.4.0 perhaps?)
Thanks @ersmith Guess just having a hard time keeping up to date... Think that was 7.3...
I'm trying to the this driver working: https://github.com/libdriver/sx1268
It makes use of a variadic function for debug prints. See
When trying to compile with flexcc, I get
if the function is called without any argument beyond the format part for a simple print-statement without any actual string interpolation.
GCC eats this just fine.
I'm on the latest and greatest release I'd say:
Any suggestions welcome.
Edit: I just saw that there's no actual string interpolation used, so for some immediate progress I just redefined the debug function to be non-variadic. I still think this is a bug (and would prefer to use the driver unaltered of obvious reasons).
@deets thanks for the bug report. It is fixed in github in version 7.4.4.
Hi Eric,
I was playing with flexspin and think I found a problem with the P1 converter.
This spin code:
Produced this pasm code:
But the cmps phsx, #16 wc isn't right because phsx used in the destination field gets the shadow register value, not the count.
Changing to this works:
I though you might want to know about this.
Interestingly, this spin code:
Produced this pasm code:
Which is expected and correct.