
intercept accesses to memory-mapped hardware (such as the GPU) that the XBE messes with directly. Doing the first is called high-level emulation (HLE) and is fairly straightforward, although certainly not trivial. Doing the second is called virtualization, and is goddamned painful.
If you want to modify an existing XBE, you'll have to disassemble it, make sense of it the hard way, and modify it at the asm level.