On Sun, 6 May 2018 18:07:02 -0500, Mike Schwab <mike.a.sch...@gmail.com> wrote:

>So, you will have a load module marked AM32.

That doesn't exist as far as I know. The module
can either be marked AM64 or the program can
switch to AM64 at startup. My preference is for
the module to be marked AM64.

>All instructions use
>only the lower half of the registers, no grande or high portion
>instructions.

Yes, it's a 32-bit program so only uses the
bottom 32 bits of all registers.

> The program loader gets memory at x'0000 0000 80000
>0000' (or the next location not in use)

I'm not expecting the program to be loaded
above 2 GiB. Only data would come from
above that. That way you can still switch
to AM31 so that you can invoke the READ
macro etc. At a later date, when READ is
made AM64-capable, the module can
potentially be loaded into RM32 space.

In addition, my intention was that when
LOC=32 memory is allocated, it starts at
the 4 GiB location and works down, rather
than starting at the 2 GiB location and
working up. That way you can do a
GETMAIN for 3 GiB and it should work.

> and loads your program, sets
>AM64 and calls your entry point.  Any interrupts or calls save all 64
>bits and when your program is resumed all 64 bits until it exits.

Calls to subroutines would not save all
64-bits. They are 32-bit applications and
only have 72-byte save areas. The upper
32 bits of each register are 0 so there is
no need to save them.

>Should work just fine if the starting address is x'0000 0001 0000
>0000' or x'0000 0002 0000 0000'

Those addresses are above 4 GiB, so that
is not part of the plan.

> since all calls should be in the 4GiB
>area.  Any instruction that loads an address into a register is
>controlled by the AMODE.

The loading of addresses are governed by
whether you use "L" or "LG", not the AMODE.

I am talking about 32-bit programs, so no
"LG" will ever be used, just a 32-bit "L".

BFN. Paul.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to