> On Wednesday, February 26, 2025 at 05:33:06 AM PST, Joseph Reichman > <reichman...@gmail.com> wrote:> The BCTG instruction is at location 2E60> > LONGDISP is at location A0 so the displacement is 2E60 - A0 = 2DC0
Joseph, You confused BCTG with JCTG. BCT and BCTG use an offset from a base register (calculated from USING label). JCTG & JCT are relative instructions based on the current PSW. Your calculation for a relative instruction is backwards (not AO-LONGDISP). If you used JCTG, then LONGDISP-PSW=A0-2E60= -2DC0. As for the G in BCTG, it means registers not used for addressing will be 64 bit instead of 32 bit. In this case, the count register will be 64 bit. Registers used for addressing are controlled by SETAMODE.