After a rethink of my approch and some realisations about how the arc. works I realised that my method of just mallocing memory was doomed to fail.
This is because the gfx hardware requires a real physical address to read from, not a virtual address as I'd get, as such while I could reserve the memory the final image was.. well.. garbage [grin]
So, as I got into the shower it hit me, mmap!
The idea was so simple it was genius, simply mmap a section of physical memory into my address space, I can write to it and the hardware can read from it.. ahah!
So, a quick look at the memory map shows that the framebuffer space is infact large enuff to take a 24bbp framebuffer, so we ask the fb devices for their physical memory location and then mmap them so they are big enuff for the 24bbp display to fit, clear and blit away.
damn i'm happy about that, heh
Practical upshot; I now have a way of drawing to a 24bpp framebuffer [grin]
As its a physical address it can even be accessed from the 2nd CPU, huzzah!
Now, to work on other more cunning stuff and to understand the potential 'issues' with my method and normal new/malloc operations...