Unofficial PicoCalc PicoMite/WebMite firmware release thread (V6.00.02)

i’ve tried searching for this but i can’t find it anywhere, is there a way to change the default folder or make picomite automatically run certain commands at boot? for example i want to start at “B:/mmbasic/” rather than having to manually go to drive B: and then chdir mmbasic every boot

EDIT: the search function is really bad here… i’ve come across this now only after figuring out how to do it by myself reading the user manual more closely: Thread for Picomite MMBasic issues - #2 by adcockm

TL;DR: edit a new file with

DRIVE "B:"
CHDIR "mmbasic"

then type in console

FLASH SAVE 1
OPTION AUTORUN ON 1
1 Like

My I also suggest to add a test if there is a “B:”.

I’m using the following:

IF MM.INFO(SDCARD) = "Ready" THEN
  DRIVE "B:"
ENDIF
4 Likes

I’m running into this as well, can you try this:

  1. Eject the SD card
  2. Start PicoMite
  3. Run files
  4. Insert the SD card
  5. Run files again

Does that stop the invalid address error? For me I find it only happens if I have the SD card inserted when I start the device…

No that didn’t help - unfortunately.

And it’s not the files command that causes the problem for me. It’s usually running a BASIC program. The program could be in Flash or SD card, I still get the error. However it’s only ever the first time I run a program. After that it is fine.

That’s a shame for me on the Pico1 that came with my board it seems to be related to the SD card but with a Pico2 from Pimoroni it doesn’t happen, confusing.

1 Like

removed some stuff Guh, it’s even more convoluted than just this. Turns out I’m still not entirely to the bottom of what is going on.

Got to the bottom of it though. It was cache, just not the cache I was expecting.

1 Like

has anyone tried this with the pimoroni pico plus 2w? neither the pico2 picomite or webmite seem to work for me, displaying nothing on the screen at boot

this seems like it might be an issue with the UF2 loader instead

MMbasic is up to 6.01.00RC3 now. Will you update your source when it goes final? Is there a simple procedure in place for porting the latest version source to PicoCalc? If so, then if you detail it, we could recompile the source ourselves and you wouldn’t have to worry about keeping up with official releases.

1 Like

Part of the reason I’ve been waiting as long as I have is the hope we’d have a working PicoMite and WebMite with the UF2loader first. Based on my own testing and reports from others, we’re not there yet for WebMite, and even PicoMite is doing dodgy thing sometimes (more than it would outside of the loader). @pelrun 's fork is based on my fork, and if I update it and start merging in changes Peter has made since then, it may make it difficult and more of a pain for pelrun to merge those changes in. I know from experience that Peter’s changes are rarely isolated, and kind of run roughshod all over the code, making merges more of a challenge. And if I move on with my fork, it might even mean that the UF2loader versions are “stuck” at that older version for a while, until I can merge pelrun’s fixes (once they are available) into mine, which would also be more of a pain. I don’t really want to see, or to maintain, two separate versions of PicoMite once it’s working well on the loader. It’s already confusing enough for new PicoCalc owners as it is with the defunct “.bin” loader that is the “official” one shipped on new PicoCalcs, and which will never application updates or builds for it.

Personally, I don’t really have much interest in running PicoMite/WebMite outside of the loader on PicoCalc. I’ve had more fun doing other things with my device, including dabbling with PicoMite test builds on it. I was hoping my next coding step with PicoMite/WebMite would be to get the loader stuff merged in, and then I could see about merging in whatever Peter has been doing since. The current version of my fork seemed mostly stable so it seemed like a reasonable thing to stop on for a while. I’m never sure whether to trust Peter’s releases, because too many times he’s eneded up releasing rushed fixes a day later, etc. I haven’t checked on what’s been posted on TheBackShed in a while though, but when I looked at the earlier updates since my fork was last updated, it looked like most of the changes wouldn’t affect anything much on PicoCalc anyway. I guess I should go take a look though.

I’m not sure it would help but maybe I should do a poll? If plenty of folks want a newer version of PicoMite/WebMite because of new features/fixes from the mainline version, then maybe it makes sense to do that and delay loader compatibility. But if the loader compatibility is more important to people then waiting might be the way to go, with an update to a single, loader compatible version later that could containue to track with the mainline builds.

1 Like

I fully agree because I have the same problem with the I2C&PicoCalc fixes that I am working on because I do not want to maintain a third version. If nothing goes wrong I should be finished by the end of the month, hopefully before V6.01 release because there are a few things that have been implemented badly that should not be carried over, and there is an important change for MMBasic that should go in to a new version.

Rebasing fixes on top of a changing branch is a bog standard maintenance task and not something I have any trouble doing repeatedly. So if you want to pull changes from Peter at any time then go ahead - I’ll update my branch PR to suit.

1 Like

I do not know how to do a PR, that I will have to learn after I have completed the changes that I am preparing.

If the loader version will run without the loader as well, then fine but if it’s an either/or situation, then I’d vote for a non-loader version. I am happy with MMBasic and have no need for Python, Pascal, C or any other software on my PicoCalc. I’d rather put the responsibility on the loader writer to make your port work than have you have that responsibility.

1 Like

Non-loader version for me too @adcockm , comes with coffee too remember lol. All I’d ask is to add the command for display backlight level, very much missed from your last and working very well build….

It’s not either/or - I wouldn’t do that to you! The entire rationale for uf2loader is that it doesn’t need specially built binaries, it will work with the same uf2 that runs directly.

None of the fixes I’m providing for picomite stop it from working without the loader - if that happens, it’s 100% a bug.

FYI, most of the time when I’m working on the patches I have apps directly flashed because of how I use the debugger.

Bless you! You’re my kind of programmer.

Attn: @adcockm It looks like there’s no reason to delay releasing updated versions. You shouldn’t even have to think about what @pelrun is doing. If there’s a problem running your firmware with his loader, he’ll do what’s necessary to get it to run.

I’ve installed the uf2 bootloader and picomite for it. Worked like a charm for several (test) sessions.

But now I get “Error: Invalid address - resetting” wich reboots and does the same again and again, and I am not sure if it comes from the firmware, the bootloader, or whatever it is that I have done.

I am pretty sure I shut it down being in pcc last time I used it. I changed to another firmware and when I came back to picomite it just didn’t work.

Short of reflashing the whole thing, what should I try to resolve this?

Ok…

:thinking:

I removed the batteries and relaunched. Now picomite works. Whatever was causing this issue came from something stored in memory?

Yeah, I knew the same U2F would work under the loader and without the loader. That’s why the loader projectis so incredibly useful and impressive!

What I wasn’t sure about was if updating the fork would make it difficult to keep things in sync by merging changes later. But sounds like that’s not an issue. I’ll look into updating the fork to the latest thing Peter has posted.

That seems weird to me. I’ve had the same issue multiple times, but assumed it was something going on in flash that was PicoMite was getting confused about. But I thought flash survived power loss, so… ¯_(ツ)_/¯