U5FLIPR

Table Of Contents
  • [00004] OVERLAY FROM DISK TO LOCAL/SOCAL AREA
u5flipr.lst
ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov  1 19:25:10 2020
 
Source File: \u5flipr.asm 
OVERLAY FROM DISK TO LOCAL/SOCAL AREA
 
                             2 | *************************************************** U5D00020
                             3 | *                                                 * U5D00030
                             4 | *   PROGRAM NAME- LOCAL/SOCAL FLIPPER             * U5D00040
                             5 | *      CODE NAME- FLIPR                           * U5D00050
                             6 | *   FUNCTION/OPERATION-                           * U5D00060
                             7 | *      THIS PROGRAM IS INCLUDED IN A CORE LOAD    * U5D00070
                             8 | *      IF ANY SUBROUTINES USED ARE LOCALS OR ARE  * U5D00080
                             9 | *      IN SOCALS. FLIPPER IS USED TO READ THE     * U5D00090
                            10 | *      OVERLAY FROM DISK INTO THE LOCAL/SOCAL AREA* U5D00100
                            11 | *      IN CORE AT THE POINT IN EXECUTION WHEN THE * U5D00110
                            12 | *      SUBROUTINE IS CALLED. IT THEN BRANCHES TO  * U5D00120
                            13 | *      EXECUTE THE SUBROUTINE THAT HAS BEEN CALL- * U5D00130
                            14 | *      ED. IN THE CASE OF A CALL SUBROUTINE,FLIPP-* U5D00140
                            15 | *      ER SIMULATES A BSI FROM THE LOCATION WHER  * U5D00150
                            16 | *      THE CALL WAS ACTUALLY MADE. BEFORE FETCHING* U5D00160
                            17 | *      A SUBROUTINE,FLIPPER CHECKS TO SEE IF IT IS* U5D00170
                            18 | *      ALREADY IN THE LOCAL/SOCAL AREA. IF SO,    * U5D00180
                            19 | *      FLIPPER IMMEDIATELY BRANCHES TO THE SUB-   * U5D00190
                            20 | *      ROUTINE.                                   * U5D00200
                            21 | *   ENTRY POINTS-                                 * U5D00210
                            22 | *      THIS PROGRAM HAS SIX ENTRY POINTS          * U5D00220
                            23 | *      ***  FOR LIBF LOCALS.                      * U5D00230
                            24 | *         INDEX REGISTER 2 IS SET TO THE ADDRESS  * U5D00240
                            25 | *         OF THE FIRST PARAMETER IN THE CALLING   * U5D00250
                            26 | *         SEQUENCE. THE CALLING SEQUENCE IS AS    * U5D00260
                            27 | *         FOLLOWS--                               * U5D00270
                            28 | *                   BSI  L  FL010                 * U5D00280
                            29 | *                   DC      WORD COUNT            * U5D00290
                            30 | *                   DC      SECTOR ADDRESS        * U5D00300
                            31 | *                   DC      ENTRY POINT           * U5D00310
                            32 | *      ***  FOR CALL LOCALS.                      * U5D00320
                            33 | *         INDEX REGISTER TWO IS SET TO THE ADDRESS* U5D00330
                            34 | *         OF THE FIRST PARAMETER IN THE CALLING   * U5D00340
                            35 | *         SEQUENCE. THE CALLING SEQUENCE IS AS    * U5D00350
                            36 | *         FOLLOWS--                               * U5D00360
                            37 | *                   DC      *-*    LINK WORD      * U5D00370
                            38 | *                   BSI  L  FL020                 * U5D00380
                            39 | *                   DC      WORD COUNT            * U5D00390
                            40 | *                   DC      SECTOR ADDRESS        * U5D00400
                            41 | *                   DC      ENTRY POINT           * U5D00410
                            42 | *      ***  FOR FUNCTION SUBROUTINES.             * U5D00420
                            43 | *         INDEX REGISTER TWO IS SET TO ZERO AS    * U5D00430
                            44 | *         AN INDICATOR THAT THIS ENTRY WAS USED.  * U5D00440
                            45 | *         THIS SECTION IS ENTERED VIA A BSI TO    * U5D00450
                            46 | *         FL200.                                  * U5D00460
                            47 | *      *** FOR ARITHMETIC SUBROUTINES.            * U5D00470
                            48 | *         INDEX REGISTER TWO IS SET TO ZERO AS AN * U5D00480
                            49 | *         INDICATOR THAT THIS ENTRY WAS USED.     * U5D00490
                            50 | *         THIS SECTION IS ENTERED VIA A BSI TO    * U5D00500
                            51 | *         FL210.                                  * U5D00510
                            52 | *      ***  FOR EVERYTHING IN THE FIO SOCAL       * U5D00520
                            53 | *         INDEX REGISTER TWO IS SET TO 2 AS AN    * U5D00530
                            54 | *         INDICATOR OF AN FIO SOCAL. THIS SECTION * U5D00540
                            55 | *         IS ENTERED VIA A BSC TO FL220.          * U5D00550
                            56 | *      ***  FOR EVERYTHING IN THE DISK FIO SOCAL. * U5D00560
                            57 | *         INDEX REGISTER TWO IS SET TO 4 AS AN    * U5D00570
                            58 | *         INDICATOR OF A DISK FIO SOCAL. THIS     * U5D00580
                            59 | *         SECTION IS ENTERED VIA A BSC TO FL230.  * U5D00590
                            60 | *   INPUT- SEE ENTRY POINT AND CALLING SEQUENCE   * U5D00600
                            61 | *         INFORMATION.                            * U5D00610
                            62 | *   OUTPUT- THE SUBROUTINE CALLED IS READ INTO    * U5D00620
                            63 | *      THE OVERLAY AREA FROM DISK.                * U5D00630
                            64 | *   EXTERNAL REFERENCES-                          * U5D00640
                            65 | *      DZ000 -- ENTRY POINT FOR THE DISK I/O      * U5D00650
                            66 | *               SUBROUTINE.                       * U5D00660
                            67 | *      $WRD1 -- FIRST WORD OF CI HEADER           * U5D00670
                            68 | *      $IOCT    IOCS COUNTER                      * U5D00680
                            69 | *      $DBSY    DISK BUSY INDR                    * U5D00690
                            70 | *      $LSAD    RELATIVE ADDR OF LOCAL SECTOR     * U5D00700
                            71 | *   ERROR CONDITIONS- NONE RECOGNIZED             * U5D00710
                            72 | *   NOTES- NONE                                   * U5D00720
                            73 | *                                                 * U5D00730
                            74 | *************************************************** U5D00740
OVERLAY FROM DISK TO LOCAL/SOCAL AREA
 
                            76 |       ENT     FLIPR                                 U5D00760
0000 0000                   77 | FL000 DC      *-*       CONTENTS OF ACCUMULATOR     U5D00770
0001 0000                   78 |       DC      *-*       CONTENTS OF EXTENSION       U5D00780
                            79 | *                                                   U5D00790
                            80 | * ENTRY POINT FOR  LIBF LOCALS                      U5D00800
                            81 | *                                                   U5D00810
0001R                       82 | FL010 EQU     *-1       ENTRY POINT FOR LIBF LOCALS U5D00820
0002 282D                   83 |       STS     FL140     SAVE STATUS                 U5D00830
0003 6A2B                   84 |       STX   2 FL130+1   SAVE XR2                    U5D00840
0004 6680 0001R             85 |       LDX  I2 FL010     ADDR OF PARAMETERS TO XR1   U5D00850
0006 D8F9                   86 |       STD     FL000     SAVE ACCUMULATOR, EXTENSION U5D00860
0007 C202                   87 |       LD    2 2         FETCH LOCAL EXECUTION ADDR  U5D00870
0008 7010                   88 |       MDX     FL100                                 U5D00880
                            89 | *                                                   U5D00890
                            90 | * ENTRY POINT FOR CALL LOCALS                       U5D00900
                            91 | *                                                   U5D00910
0009 0000                   92 | FL020 DC      *-*       ENTRY POINT FOR CALL LOCALS U5D00920
000A 2825                   93 |       STS     FL140     SAVE STATUS                 U5D00930
000B 6A23                   94 |       STX   2 FL130+1   SAVE XR2                    U5D00940
000C 6680 0009R             95 |       LDX  I2 FL020                                 U5D00950
000E D8F1                   96 |       STD     FL000     SAVE ACCUMULATOR, EXTENSION U5D00960
000F C050                   97 |       LD      FL910     SET UP RETURN ADDR TO       U5D00970
0010 D022                   98 |       STO     FL200     *RETURN TO FL050            U5D00980
0011 7008                   99 |       MDX     FL110                                 U5D00990
0012 6680 0009R            100 | FL050 LDX  I2 FL020     ADDR OF PARAMETERS TO XR2   U5D01000
0014 C2FD                  101 |       LD    2 -3        SIMULATE A BSI TO THE SUB-  U5D01010
0015 D680 0002             102 |       STO  I2 2         *ROUTINE WHICH WAS CALLED   U5D01020
0017 C202                  103 |       LD    2 2         CONTINUE SIMULATION BY SET- U5D01030
0018 8049                  104 |       A       FL920     *TING UP A BSC TO ENTRY+1   U5D01040
0019 D019                  105 | FL100 STO     FL200     STORE EXIT ADDR             U5D01050
001A C201                  106 | FL110 LD    2 1         FETCH SCTR ADDR FROM LOCAR  U5D01060
001B 8400 0075             107 |       A    L  $LSAD     ADJUST SCTR ADDR            U5D01070
001D 9047                  108 |       S       FL998+1   BRANCH IF THE DESIRED LOCAL U5D01080
001E 4C18 002ER            109 |       BSC  L  FL130,+-  *IS ALREADY IN CORE         U5D01090
0020 8044                  110 |       A       FL998+1                               U5D01100
0021 D043                  111 |       STO     FL998+1   *UA/FXA OR WORKING STORAGE  U5D01110
0022 C200                  112 |       LD    2 0         STORE THE                   U5D01120
0023 D040                  113 |       STO     FL998     *WORD COUNT                 U5D01130
0024 C03E                  114 |       LD      FL925     FETCH ADDR OF LOCAL AREA    U5D01140
0025 7400 0032             115 | FL115 MDX  L  $IOCT,0   WAIT OUT ANY PENDING INTER- U5D01150
0027 70FD                  116 | FL120 MDX     *-3       *RUPTS BEFORE OVERLAYING    U5D01160
                           117 | *                                                   U5D01170
                           118 | * FETCH THE DESIRED LOCAL/SOCAL                     U5D01180
                           119 | *                                                   U5D01190
0028 1890                  120 |       SRT     16                                    U5D01200
0029 4400 00F2             121 |       BSI  L  DZ000     FETCH DESIRED LOCAL/SOCAL   U5D01210
002B 7400 00EE             122 |       MDX  L  $DBSY,0   LOOP UNTIL LOCAL/SOCAL HAS  U5D01220
002D 70FD                  123 |       MDX     *-3       *BEEN READ INTO CORE        U5D01230
002E 6600 0000             124 | FL130 LDX  L2 *-*       RESTORE XR2                 U5D01240
0030 2000                  125 | FL140 LDS     0         RESTORE STATUS              U5D01250
0031 C8CE                  126 |       LDD     FL000     RESTORE ACCUMULATOR         U5D01260
0032 4C00 0000             127 |       BSC  L  *-*       EXIT FROM FLIPPER           U5D01270
                           128 | *                                                   U5D01280
                           129 | * ENTRY POINT FOR FUNCTION SUBROUTINES              U5D01290
                           130 | *                                                   U5D01300
0033R                      131 | FL200 EQU     *-1                                   U5D01310
0034 6AFA                  132 |       STX   2 FL130+1   SAVE XR2                    U5D01320
0035 D8CA                  133 |       STD     FL000     SAVE ACCUMULATOR, EXTENSION U5D01330
0036 74FE 0033R            134 |       MDX  L  FL200,-2                              U5D01340
0038 6200                  135 |       LDX   2 0         ARITH/FUNC INDICATOR TO XR2 U5D01350
0039 700C                  136 |       MDX     FL300     BR TO SAVE STATUS           U5D01360
                           137 | *                                                   U5D01370
                           138 | * ENTRY POINT FOR ARITHMETICS                       U5D01380
                           139 | *                                                   U5D01390
003A 6AF4                  140 | FL210 STX   2 FL130+1   SAVE XR2                    U5D01400
003B 6200                  141 |       LDX   2 0         ARITH/FUNC INDICATOR TO XR2 U5D01410
003C 7005                  142 |       MDX     FL250     BR TO SAVE ACCUMULATOR,EXT  U5D01420
                           143 | *                                                   U5D01430
                           144 | * ENTRY POINT FOR EVERYTHING IN THE FIO SOCAL       U5D01440
                           145 | *                                                   U5D01450
003D 6AF1                  146 | FL220 STX   2 FL130+1   SAVE XR2                    U5D01460
003E 6202                  147 |       LDX   2 2         FIO INDICATOR TO XR2        U5D01470
003F 7002                  148 |       MDX     FL250     BR TO SAVE ACCUMULATOR,EXT  U5D01480
                           149 | *                                                   U5D01490
                           150 | * ENTRY POINT FOR EVERYTHING IN THE DISK FIO SOCAL  U5D01500
                           151 | *                                                   U5D01510
0040 6AEE                  152 | FL230 STX   2 FL130+1   SAVE XR2                    U5D01520
0041 6204                  153 |       LDX   2 4         DISK FIO INDICATOR TO XR2   U5D01530
0042 D8BD                  154 | FL250 STD     FL000     SAVE ACCUMULATOR, EXTENSION U5D01540
0043 C600 0050R            155 |       LD   L2 FL380     PREPARE TO RETURN TO 3RD WD U5D01550
0045 D0ED                  156 |       STO     FL200     *OF DUMMY SOCAL ENTRY IN TV U5D01560
0046 28E9                  157 | FL300 STS     FL140     SAVE STATUS                 U5D01570
0047 CE00 005AR            158 |       LDD  L2 FL900     FETCH SCTR ADDR,WD CNT      U5D01580
0049 8400 0075             159 |       A    L  $LSAD     *OF DESIRED SOCAL AND       U5D01590
004B 18D0                  160 |       RTE     16        *ADJUST IT TO UA/FXA OR WS  U5D01600
004C DC00 0000             161 |       STD  L  *-*       STORE PARAMS IN SOCAL AREA  U5D01610
004DR                      162 | FL350 EQU     *-1       CORE ADDR OF THE SOCAL AREA U5D01620
004E C012                  163 |       LD      FL915     PUT MDX TO *-9 (*-12 IF ALL U5D01630
004F D400 0000             164 |       STO  L  *-*       *3 SOCALS USED) IN 3RD WD   U5D01640
0050R                      165 | FL380 EQU     *-1                                   U5D01650
0051 D400 0000             166 |       STO  L  *-*       *OF DUMMY ARITH,FIO ENTRIES U5D01660
0053 D400 0000             167 |       STO  L  *-*       *ALSO DKFIO IF IT IS USED   U5D01670
0055 C0D1                  168 |       LD      FL120     PUT MDX TO *-3 IN 3RD WD OF U5D01680
0056 D680 0050R            169 |       STO  I2 FL380     *DUMMY TV ENT FOR THIS SOCL U5D01690
0058 C0F4                  170 |       LD      FL350     FETCH ADDR OF SOCAL AREA    U5D01700
0059 70CB                  171 |       MDX     FL115     *AND BR TO FETCH THE SOCAL  U5D01710
                           172 | *                                                   U5D01720
                           173 | * CONSTANTS AND WORK AREAS                          U5D01730
                           174 | * EVEN-NUMBERED LABELS ARE ON EVEN BOUNDARIES       U5D01740
                           175 | *                                                   U5D01750
                           176 | * THE 6 WORDS STARTING AT FL900 CONTAIN THE SCTR    U5D01760
                           177 | * ADDRESS AND WORD COUNT FOR EACH OF THE SOCALS.    U5D01770
                           178 | *                                                   U5D01780
005A                       179 | FL900 BSS  E  6    WD CNT, SCTR ADDR FOR ALL SOCALS U5D01790
                           180 | *                                                   U5D01800
                           181 | * FL120 AND FL915 ARE STORED IN THE 3RD WORD OF THE U5D01810
                           182 | * DUMMY TV ENTRIES FOR SOCALS, FL120 IN THE TV ENT- U5D01820
                           183 | * -RY OF THE SOCAL IN THE SOCAL AREA, FL915 IN THE  U5D01830
                           184 | * OTHER ENTRY(IES). IF OPTION 1 IS EMPLOYED, FL915  U5D01840
                           185 | * IS AN MDX TO *-9. IF OPTION 2 IS EMPLOYED, IT IS  U5D01850
                           186 | * AN MDX TO *-12.                                   U5D01860
                           187 | *                                                   U5D01870
0060 0012R                 188 | FL910 DC      FL050                                 U5D01880
0061                       189 | FL915 BSS     1    MDX *-9 OR MDX *-12              U5D01890
0062 0001                  190 | FL920 DC      1                                     U5D01900
0063 0064R                 191 | FL925 DC      FL998 ADDR OF LOCAL OVERLAY AREA      U5D01910
                           192 | *                                                   U5D01920
                           193 | * THE LOCAL OVERLAY AREA, INCLUDING THE WORD        U5D01930
                           194 | * COUNT AND SECTOR ADDRESS                          U5D01940
                           195 | *                                                   U5D01950
0064                       196 |       BSS  E  0                                     U5D01960
0064 0000                  197 | FL998 DC      *-*  WORD COUNT OF LOCAL              U5D01970
0065 0000                  198 |       DC      *-*  SCTR ADDR OF LOCAL               U5D01980
                           199 | *                                                   U5D01990
                           200 | *                                                   U5D02000
                           201 | *                                                   U5D02010
0000R                      202 | FLIPR EQU     FL000                                 U5D02020
00F2                       203 | DZ000 EQU     /F2  ENTRY POINT FOR DISK I/O ROUTINE U5D02030
007B                       204 | $WRD1 EQU     /7B  ADDR OF 1ST WD OF CI HEADER      U5D02040
0032                       205 | $IOCT EQU     50   IOCS COUNTER                     U5D02050
00EE                       206 | $DBSY EQU     /EE  DISK BUSY INDICATOR              U5D02060
0075                       207 | $LSAD EQU     /75  RELATIVE ADDR OF LOCAL SCTR ADDR U5D02070
0066                       208 |       END                                           U5D02080
 
There were no errors in this assembly
 
=== CROSS REFERENCES ==========================================================
Name  Val   Defd  Referenced
$DBSY 00EE   206  122
$IOCT 0032   205  115
$LSAD 0075   207  107  159
$WRD1 007B   204
DZ000 00F2   203  121
FL000 0000R   77   86   96  126  133  154  202
FL010 0001R   82   85
FL020 0009R   92   95  100
FL050 0012R  100  188
FL100 0019R  105   88
FL110 001AR  106   99
FL115 0025R  115  171
FL120 0027R  116  168
FL130 002ER  124   84   94  109  132  140  146  152
FL140 0030R  125   83   93  157
FL200 0033R  131   98  105  134  156
FL210 003AR  140
FL220 003DR  146
FL230 0040R  152
FL250 0042R  154  142  148
FL300 0046R  157  136
FL350 004DR  162  170
FL380 0050R  165  155  169
FL900 005AR  179  158
FL910 0060R  188   97
FL915 0061R  189  163
FL920 0062R  190  104
FL925 0063R  191  114
FL998 0064R  197  108  110  111  113  191
FLIPR 0000R  202