Neat! It seems the main drawback is that you only have 4GB of virtual memory. I wonder whether it would be possible to create some sort of hybrid that allows access to more memory. (himem? long-pointers? separating data/code/stack into different regions?)