@pipper
Had a quick look at your latest version with the fix for doubleheight rendering and it seems to work just fine. I will have a more indepth look later. I have not checked how you have achieved it but I was thinking (like karlos) that maybe you could just clear the least significant bit or test and add/sub 1 if it was odd but if you have plans to rewrite the floor/ceiling render routines that's cool.
As ever awesome job