24.12.2013 Views

TOPS-10 Monitor Calls Manual Volume 2 AA-K039D ... - Trailing-Edge

TOPS-10 Monitor Calls Manual Volume 2 AA-K039D ... - Trailing-Edge

TOPS-10 Monitor Calls Manual Volume 2 AA-K039D ... - Trailing-Edge

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

RUN [CALLI 35]<br />

22.142 RUN [CALLI 35]<br />

FUNCTION<br />

Transfers execution control from the current program to another<br />

program. The monitor replaces both the high and low segments of your<br />

address space with the segments of the called program. The function<br />

of the RUN UUO is described in more detail in Chapter 2 <strong>Volume</strong> 1.<br />

CALLING SEQUENCE<br />

addr:<br />

MOVSI ac,start-addr-increment<br />

HRRI ac,addr<br />

RUN ac,<br />

error return<br />

SIXBIT/device/<br />

SIXBIT/filename/<br />

SIXBIT/extension/<br />

EXP 0<br />

/ XWD proj,prog \<br />

\ XWD O,addrl /<br />

/ XWD O,core \<br />

\ XWD -1"addr2 /<br />

ior zero<br />

iPPN word<br />

icore word<br />

In the calling sequence, the program supplies the following variables:<br />

o<br />

o<br />

start-addr-increment is an increment to the starting address<br />

of the called program. This increment is used to call<br />

indirect command files and should be 0 or 1. If any other<br />

value is used, the meddling bit is set for the job, unless<br />

the program is execute-only. For an execute-only program,<br />

this value can be only 0 or 1.<br />

addr is the address of the argument block, which is formatted<br />

like the ENTER argument block. See <strong>Volume</strong> 1, Chapter 11 for<br />

a description of ENTER/LOOKUP argument blocks.<br />

o core is the total amount of core to be reserved for the<br />

called program. This word must be included, but may be zero.<br />

For a program that contains both low and high segments, the<br />

amount of core required to load the high segment is<br />

subtracted from the core assignment first. The amount<br />

reserved for the low segment is the remainder.<br />

o addr2 contains a section offset indicating where the image<br />

should be loaded. Using this argument results in an error if<br />

the resulting section number is illegal.<br />

When the monitor returns control to the program after RUN monitor<br />

call, the accumulators are overwritten and Channel 0 is cleared.<br />

SUCCESS RETURN<br />

The new program is started at its new address plus<br />

start-addr-increment. The contents of ac may be changed on the<br />

return, and the new contents are unpredictable, because they vary from<br />

one monitor release to the next. The RUN call also performs an<br />

implicit RESET call.<br />

22-356

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!