Collecting MMBasic code examples for PicoCalc

I’ll probably regret doing this… But I felt like the MMBasic code that has been shared on the forums, and posted to GitHub and other websites (sometimes without even being mentioned on the forums), was difficult to find and even more difficult to use as learning examples since it is so spread out and easily missed.

So I’ve made an attempt to try to index things. I opted for a TiddlyWiki, since I haven’t used one in a while, and it makes it easier to manage and wrangle content like this. It isn’t ideal for displaying the information or for collaborative editing, but it has a nice search feature that I wanted to leverage.

I’ve posted a draft version here, which contains references to all the MMBasic programs I’m aware of that have been written for the PicoCalc. I haven’t indexed individual programs from some of the larger GitHub repos (which I listed under “TODO”). I have no intention of indexing MMBasic code that has not been created for, or at least tested on the PicoCalc. And I’ll only include code that is posted online at another site (preferably with descriptions, and options for comments and discussion) like GitHub, the ClockworkPi Forum, etc. If the source file is long, or split across multiple files, then I’ll add a reference to the repo, but the source won’t be included in the wiki. An example of this is Z-MIM.

So why do this? Well, it’s not just a way to gather this code together. For small enough examples that are included in full in the wiki, the search function can be used. So you can search for specific MMBasic commands and then find example code that uses them. It’s not perfect, since some MMBasic commands are relatively common words and search may bring up unrelated results. I’m also hoping the descriptions and comments in the code provide some useful search opportunities as well. So, for instance, you can already find a couple of examples in here that use the FRAMEBUFFER or code that uses BOX or ARC.

Since some of this code is actively being worked on, it might change if source is already included in the wiki. For known active projects (based on activity), I’ll just link to the relevant website(s) and only add the code later when it looks like it is “done”.

For now, a temporary link to the wiki is here. At some point I’ll probably move it to a more permanent location.

What do you think?

Do you know of any repositories of MMBasic code I’ve missed?
(I don’t plan on indexing or pointing to anything on TheBackShed since it may or may not work on the PicoCalc. It’s already its own repository, of sorts.)

4 Likes

I’m not sure why you would regret doing this, other than a lot more work for you, but I appreciate your effort.
Thank you

1 Like

Yeah, it’s really just the idea of committing to more stuff, especially since I have unfinished business with the PicoCalc PicoMite release. I probably shouldn’t have put that in the post though. But this is something I’ve been thinking about for a while, and I finally felt like there was enough of a body of source code appearing that it was worth attempting. At worst case, it’s probably “productive procrastination” which is not something I’m unfamiliar with. :wink:

Site has been updated with a somewhat better theme, more code examples, some fonts, and screenshots for the programs that are more visual (and the fonts).

The Tiddlywiki has seen a lot of updates recently:

There are many really cool examples of procedural art from TheBackShed, some fun animations from VanzT’s repo, several games (including a nice looking Backgammon), some examples that use GPIO to drive LEDs and “detect” stuff, and probably other things I’m forgetting.

It takes a few seconds to load, but you can search all the code included. I’ve also broken things out into categories, provided lots of screenshots, and done some cleanup. I’ve worked through most of the code I know about on the forums here, and what I’ve found on GitHub, with the exception of a couple of the larger repositories, specifically: cjstoddard’s, M57’s, and rlauzon54’s. I’ll work through these in time though I’ll hold off on adding anything that looks like a “work in progress”.

The button at the top right of the wiki can be used to download the entire wiki locally (which will function offline), and then you can have your own local snapshot copy with all the course code, images, examples, etc.

1 Like

LOL, everything I do is a work in progress. Like my Fallout themed UI, I never did think of anything to put on the DATA screen. The Tomato/Cowboy Bebop/RadicalEdward UI is the same story, neat idea for a UI, but no idea as to what the program should actually do. Feel free to repost anything I have there.

1 Like