This week I have mostly been crafting my own UECIDE core for programming the Raspberry Pi directly on the Raspberry Pi.
I started with the arduPi library from Cooking Hacks, but TBH it's a nasty bit of code. Yes, it works, but stylistically it's horrendous. It's full of messy messy pointer arithmetic to get at all the registers, and it's just completely uninteligable.
So I have been writing my own code from scratch, only using their pointer code for pointers (har har).
It's much much cleaner, and I am using proper structs and unions for accessing the memory mapped register blocks. Eveything in it is OO driven - even the underlying GPIO driver is a C++ class. Much nicer
So far I have basic GPIO (digitalRead / digitalWrite / pinMode) working, and and working SPI library. Later on today I will be adding analogWrite for the hardware PWM port, and maybe even with software PWM for the non-hardware ports, and I need to add things like pulseIn(), shiftIn() / shiftOut(), etc.
For tone() I think I'm going to just have to use the proper audio output
But it works, so far. Compiling is done with the native GCC compiler already installed in raspbian, and when you "upload" the sketch to the board it executes it in a UXTerm with sudo (sudo is needed to access the hardware registers).
There's a version in the plugins at the moment, but it was a first attempt using arduPi's code, so ignore it. I'll push a proper preview version out later on.