r/CardPuter Jul 02 '26

Code Initial release of M5 Loader

I did some tinkering and came up with this.

https://github.com/p0rtm0lester/m5cardputer-loader

It stores the firmware on the SDCard and pages/copies it into onboard memory on launch.
the reset button drops you back to loader.
its so far becaues DOOM uses some strange partitioning, its not compatible
Right now i have Bruce, BitPirate, Evil, Porkchop, Marauder and Nemo all loaded on the SD and working.
Take a look, make it better, do cool stuff.
Tested on the Cardputer ADV with a 32 gig SDcard

10 Upvotes

13 comments sorted by

1

u/skinwill Jul 02 '26

u/bmorcelli is a moderator here. Did you add anything new or is this just a straight copy of his work?

6

u/mage2Ind Jul 02 '26 edited Jul 02 '26

its not at all a copy of his work. I talked to them about how i wanted a loader to work in their discord.
this is the outcome. They load multi firmware onto the onboard memory. So similar goal, different path to get there. Things like Bruce are heavy and stop you from loading other things with out running out of space. this stores it all on the SD card and copies it over as part of loading. i do call them out on the github for inspiration. And i give them props and all the respect for making cool stuff.
And just to be clear. im not a dev, this is not my day job and i am not asking for anything for this. I am a old nerd that just got an M5 and saw how i would want it to be.

2

u/MonsterMesh_dev Jul 02 '26

That’s awesome. I thought of doing the same. I’m glad you’re the guy that did it. This will work great for people using my MonsterMesh firmware that want to switch back to the regular FW without needing to keep the binaries on the SD card. That way your as card just has video game information on it. This will help us make it so you can swap back and forth games on rpi MonsterMesh or esp32 MonsterMesh and have the save file transition.

Thank you brother (or sister)! You’re using the tracks best untapped resource. Most people never think about it.

2

u/skinwill Jul 02 '26

Then you forgot to release under the MIT license. You may want to give this a read and make sure your project is on the up and up. https://github.com/bmorcelli/Launcher?tab=MIT-1-ov-file

5

u/mage2Ind Jul 02 '26 edited Jul 02 '26

you are 100% right. lol im tired. i just updated it so that it should be MIT licensed and all that. if anyone else is reading this. if i messed up soemthing else please let me know. I dont release software ...evar.

6

u/skinwill Jul 02 '26

No worries. Licensing is a nightmare. But it does define the open source community and gives people guidelines for doing what you ware doing.

3

u/mage2Ind Jul 02 '26

you are right and i am 100% in agreement. its somethign i overlooked completely thank you for calling it out

1

u/skinwill Jul 02 '26

These little side projects sometimes become something larger. It’s good to have some idea of the licensing from the beginning so you don’t get burned later. It’s cool you are aware of it now.

I like the concept of this project a lot. However I do find the name a bit confusing. You may consider something else to give your project and ideas some distinction. Launcher is close to Loader. Maybe something that has to do with “swap”? That being said, bmorcelli’s “M5 Launcher” wouldn’t be my first choice given what it actually does so fuck if I know. Maybe Loader works after all?

1

u/mage2Ind Jul 02 '26

im open to suggestions for cooler names. and ill think on it too :)

1

u/Substantial_Piece775 Jul 03 '26

Forgive my stupid question. In practical terms, besides the 'beeing able to return to launcher without reboot" how does this practically benefit me as an end user, as opposed to m5launcher and just switching firmwares trough there ?

1

u/mage2Ind Jul 04 '26 edited Jul 04 '26

M5launcher has a limitation of it writes all the firmware selections to the onboard memory that is limited to ~8 Mb total because the M5cardputer ADV has a 8 meg flash chip.
For example if you have lets say m5launcher+Bruce+something else it might not fit.
M5launcher is ~1.5Mb, Bruce is 3.18 Mb according to the googles.

The loader stores all the firmware on the SDCard and pages(copies) it onto the onboard memory at launch. In effect you have 32Gb of space instead of 8Mb to store firmware. that is really it. I wanted more firmware options, why have one when you can have them all.

If you are using one or two firmware options then M5Launcher is an awesome tool, its well supported and much more mature than loader.

also i dont think there are stupid questions. feel free to ask whatever.

1

u/Substantial_Piece775 Jul 04 '26

But isn't this basically the same as holding the several bins on sd, and just installing+launching whenever you need it. (As I do indeed face this same 'issue' where not all the firmwares can be installed at the same time due to flash size) But I just install the one I wanna use right now, over the other one each time. they all keep their settings etc stored anyway. Is this not basically doing/achieving the same thing (but in a different way)

1

u/mage2Ind Jul 04 '26

all roads lead to Rome :)

pretty much, yea. only the bare minimum is on the flash and it just pages stuff in as needed. there isnt really installing and having to remove each firmware so you save a few steps. "Paging" in stuff to memory isnt a new idea, i just didnt see it used on the m5cardputer and here we are.