Gavinmc42 wrote: ↑
Mon Aug 28, 2017 2:26 pm
But if you do code in C on Pi's you need to consider that OS called Linux that thinks it is in charge.
Gavin I write in C baremetal all the time and never go near linux, you lost me with this statement? Or where you talking about people coding C on linux and it is just worded strang
I was just comparing Python/Linux against C/Linux, not C baremetal, and yes I do look at your C code to see how you do things
One day I hope to understand it all
I can read C much easier than any other language, I just choose not to use it so I can expand my brain and skill set.
Baremetal Python is an interesting idea and someone will do it, probably based on C compiled interpreter and a Hardware Abstraction Layer.
There is now enough hardware source code for USB, GPIO, Framebuffer etc for this to be ported, C and Pascal.
Script interpreters on baremetal is something we have talked about on the Ultibo forum.
Probably because it is easier to do this in FPC because it is taking stuff already done in the PC world and Ultibo compiles it and sometimes it just works. That has more to do with the Free Pascal creed of compile everywhere and the cleanness of the source, none of that register reading writing assembly mess. But you can still do inline assembler in FPC if you want too.
There is a FPC Lua interpreter , someone could do a Micropython one in Ultibo, all the low level hardware stuff and framebuffer already works.
Ultibo could turn into a script interpreter engine for any language. If a non pro-coder like me can make shell extensions then anything could be done. A full BASH command language running on Ultibo? Why? because we can
A DOS look alike could even be done, "dir" is just an alias for "ls" etc. If Ultibo can make a kernel.img that takes commands like DOS or BASH what is it?
I have never written for Linux at Kernel/OS level and I will never understand it in detail, it is just too big.
Yet I can see how even I can now make an OS with baremetal.
And of course Ultibo is FPC and has native multicore features, I could make a multicore OS and not even need to know anything about registers. That is more than just baremetal, it is something else?
Why use baremetal? Because we can.
With Ultibo QEMU you don't even need any metal now
Micropython on Ultibo QEMU on anything that runs QEMU?
Baremetal VCOS/EGL, yep progress is getting made and there is a forum thread on baremetal camera.
Hanging out waiting for the Ultibo 64bit stuff to be complete, then NEON can be used faster and we can skip those VPU/QPU's.
Even though we have a good Idea on most of the VC4 registers now, we still don't know everything and lack of example code restricts use of things like hardware VG/Scalers. So we have to use Linux, Blobs and Python etc.
More clues will appear as Eric backports from VC5?
That is just the graphics stuff, but camera ISP etc, I keep getting told it's too hard, it' s 500 man years.
Every one needs a hobby in retirement
But I am preaching to the converted, you guys know this anyway.
Some noob might find this post and be inspired
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges