I know that if you use VESA there's an interrupt you can call to get the base address for the SVGA memory... last I remember, though, I tried it out when I was doing dos 32bit protected mode assembler, and found that the memory mapping scheme for even a simple 800x600 16bit was DIFFICULT to work...