Okay, I've been working on importing kernel functions and making a unit xboxutils which currently just adds methods to eject and close the DVD tray. In so doing I am having the same problem of the program not running on the xbox anymore, just like when linking against openxdk. I suspect that the memory locations of the compiled procedures is changed from what is compiled into the code.

I made a simple program which changes the screen color after each procedure is called and have figured out that using units that are compiled when I compile my program works but using precompiled units like in ones in the rtl/fcl does not always work.

Andrew