11.07.2015 Views

Program Logic Manual - All about the IBM 1130 Computing System

Program Logic Manual - All about the IBM 1130 Computing System

Program Logic Manual - All about the IBM 1130 Computing System

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Dummy one - word entry in CALL TV(if necessary) to ensure odd addressfor FACLast Second First Indicators FAC Last Second FirstLIBF LIBF LIBF CA LL CALL CALL151 I- I I I I I I I Jf.48— LowCore tt_HighCoreL_Figure 10. Layout of <strong>the</strong> Transfer VectorLIBF TV CALL TV COMMONTransfer Vectorfetching it first, if necessary. It does likewise fora SOCAL, except that it is never entered if a subprogramis called that is a part of <strong>the</strong> SOCAL currentlyin <strong>the</strong> SOCAL area (see Linkage to <strong>the</strong> <strong>System</strong>Overlays).The Flipper Table immediately precedes <strong>the</strong>flipper. It consists of a 6-word entry for each entrypoint specified in <strong>the</strong> LOCAL information in <strong>the</strong> SCRA(for a given mainline) that is referenced by a CALLand a 5-word entry for each entry point referenced bya LIBF'. If a subprogram has more than one entrypoint but only one is specified in <strong>the</strong> LOCAL information(a specified LOCAL), <strong>the</strong>re is a Flipper Tableentry for each entry point referenced in <strong>the</strong> coreload.The format of a 5-word (LIBF) entry in <strong>the</strong>Flipper Table is as follows:WordDescription1-2 BSI L FL0003 Word count of <strong>the</strong> subprogram4 Sector address of <strong>the</strong> subprogram5 Entry point address in <strong>the</strong> subprogramThe format of a 6-word (CALL) entry in <strong>the</strong>Flipper Table is as follows:WordDescription1 Link word2-3 BSI L FLO104 Word count of <strong>the</strong> subprogram5 Sector address of <strong>the</strong> subprogram6 Entry point address in <strong>the</strong> subprogramLinkage to <strong>the</strong> <strong>System</strong> Overlays (SOCALs)In order to assure very fast transfer to a subprogramthat is a part of a SOCAL that is in core storage ata given time, special transfer vector entries aremade for SOCAL subprograms. They are differentfrom <strong>the</strong> standard LIBF and CALL linkages, and <strong>the</strong>yare different from <strong>the</strong> linkage to a LOCAL. TheSOCAL transfer time is approximately 20 microseconds,compared to 150-180 microseconds 'to aLOCAL. (Both timings assume a 3.6 microsecondstorage cycle.)Figure 11 shows an entry in <strong>the</strong> LIBF TV for anin-core subprogram (entry 2) and <strong>the</strong> special Linkagein <strong>the</strong> LIBF TV for SOCAL subprograms (entries3-8). Entry 1 is <strong>the</strong> LIBF TV entry for a SOCALsubprogram. The "disp" is a displacement to <strong>the</strong>second word of <strong>the</strong> linkage for <strong>the</strong> SOCAL in which<strong>the</strong> subprogram is found.The example represented in Figure 11 is one thatrequires SOCAL option 2; TV entries 5 and 8 wouldnot appear if option 1 were used. Entry 1 is <strong>the</strong>last entry in <strong>the</strong> LIBF TV, i. e. , <strong>the</strong> highestaddressedword of <strong>the</strong> transfer vector. Suppose that(1) a LIBF to FADD were made and (2) SOCAL 1 werenot in core. The LIBF would be a BSI to <strong>the</strong> firstword of entry 1, which would <strong>the</strong>n BSI to <strong>the</strong> secondword of entry 3. Entry 3 would MDX to <strong>the</strong> firstword of entry 6, which would transfer control to <strong>the</strong>LOCAL/SOCAL flipper subroutine (FLIPR) atFL230, <strong>the</strong> entry point in FLIPR for fetching <strong>the</strong>arithmetic subprograms. The flipper would fetchSOCAL 1, change <strong>the</strong> third word of entry 3 to MDXto *-3, and BSC to <strong>the</strong> first word of entry 3, which<strong>the</strong>n transfers control to FADD. The flipper wouldalso ensure that <strong>the</strong> third words of entries 4 and 5were both MDX to *-12.38

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

Saved successfully!

Ooh no, something went wrong!