Ported bitmap. Still doesn't work 100%, but good enough to move on