half way to knoware
should realy build a standard api for pixel drawing