Trust us. It works. Try it (like many others). The math for the binder is no more involved than for a-cons. The loader usually has nothing to do. On Dec 17, 2015 4:51 PM, "Mark Boonie" <[email protected]> wrote:
> > But the Binder surely has no way of knowing what the displacement will > > be at run time. Whatever loads your routine (the main one - not the > > low storage one) needs to know the address difference and update the > > JLU at that time. How does it gain knowledge of the load point (0) of > > your called routine? Presumably the load process that loads your main > > routine doesn't also load a module starting at virtual address 0! > > In an earlier post in this thread I mentioned that the two CSECTs are > linked together (with many others) and then the resulting module is loaded > at location 0. CSECT A starts at <some mystery location within the > module> and CSECT B starts at <location 0 within the module>, so CSECT A > can use JLU to branch to a location in "low storage" (aka CSECT B) using > only the displacement from A to B within the load module. > > - mb >
