PicoCalc Python status?

Apparently even though not as friendly as Basic, Python on the PicoCalc can be in the region of 10x faster than the supplied MMBasic (PicoMite) yet most PicoCalc variants still seem to be in various beta states with their own issues.

Which is currently the best and does it include an editor like MMBasic ?. I’d want fully operational graphics, sound, mp3, keyboard, control of both backlights, I2C port control, external DS3231 RTC functions and built in editor etc. Too much to ask ?.

1 Like

I gave up on MicroPython for the PicoCalc a while ago. While I can appreciate the work that went into it, it never quite worked the way I expected it to. To be honest, I have always been more comfortable with Basic than Python, so part of that is on me.

Peter, the maintainer of PicoMite is kind of a cranky guy, but he is a very good and very dedicated programmer, I wish I had 10% of his skill. @adcockm has done a great job of porting PicoMite Basic to the PicoCalc and making the latest revisions available to us. MicoPython simply does not have that kind of support system.

1 Like

Same here, started with machine code in my teens and soon moved on to Basic on a variety of machines including in industry. I’ve programmed various machine codes INS8060, 6502, Z80, Motorolla 68K etc.. plus cobol, VAX command language and Fortran77. Dabbled with Python and C/C++ but nowhere near as friendly as Basic when properly coded. Used some fast compiling Basics too and contributed to the user manual for one :smiling_face_with_sunglasses:.

I’m a speed demon though so hanging on for a fast and well written Python in the near future… My sights are on RP2350 machine code too but dont hold your breath.

There should be no inherent reason why MicroPython (if using an RP2040 or RP2350 board) or CPython (if using a Luckfox Lyra) should not be doable on the PicoCalc. Even though I would probably stick with zeptoforth for most of my usage (for obvious reasons), I would be willing to at least try out Python on the PicoCalc once mine arrives.

Note that I think it is a bit much to expect Python to have things like MP3 playback and DS3231 RTC functions out of the box, as insisting on these things seems like a way to essentially exclude all options other than MMBasic off the bat.

If you want sheer speed without sacrificing interactivity, then you should look at zeptoforth! It compiles directly to machine code and provides a fully interactive development environment, and has a quite nice editor in the form of zeptoed. Yes, it currently does not have support for controlling things like the backlight, but those will come once I get an actual PicoCalc to work with rather than the jury-rigged setup I am using at the present.

Edit:

Oh, and if you want assembler, zeptoforth provides it as well! Note however that its assembler only supports ARMv6-M instructions intentionally, with an eye towards maintaining source compatibility with ARM Cortex-M0+ (i.e. RP2040), with the exception of also optionally supporting single-precision floating point instructions on ARM Cortex-M4F and ARM Cortex-M33.

Another edit:

Sound has arrived for zeptoforth on the PicoCalc. It now supports generating tones for fixed periods of time, along with a convenient beep for those who don’t like choosing a duration and pitch to annoy the user with. Also, for the sake of more annoyance, it has an optional, opt-in audible bell, so a sharp beep can be generated each time the user makes an error.

2 Likes