User Tools

Site Tools


ibm:ibm1130-lib:dmsr2v12:s3fixi_lst

S3FIXI

Table Of Contents
  • [00021] LIBF FIXI -V1.
s3fixi.lst
ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov  1 19:25:08 2020
 
Source File: \s3fixi.asm 
                             1 | *************************************************** S3B00010
                             2 | *                                                 * S3B00020
                             3 | *   SUBROUTINE NAME-                              * S3B00030
                             4 | *      FULL NAME- I**J INTEGER FUNCTION.          * S3B00040
                             5 | *      CODE NAME- FIXI/FIXIX                      * S3B00050
                             6 | *   PURPOSE- THIS FUNCTION COMPUTES A SINGLE WORD * S3B00060
                             7 | *      INTEGER TAKEN TO A SINGLE WORD INTEGER     * S3B00070
                             8 | *      EXPONENT.                                  * S3B00080
                             9 | *   METHOD-SEE IBM 1130 SUBROUTINE LIBRARY MANUAL.* S3B00090
                            10 | *   CAPABILITIES AND LIMITATIONS- SEE IBM 1130    * S3B00100
                            11 | *      SUBROUTINE LIBRARY MANUAL.                 * S3B00110
                            12 | *   SPECIAL FEATURES- N/A                         * S3B00120
                            13 | *   ADDITIONAL INFORMATION-                       * S3B00130
                            14 | *      ESTIMATED EXECUTION TIME- SEE IBM 1130     * S3B00140
                            15 | *         SUBROUTINE LIBRARY MANUAL               * S3B00150
                            16 | *                                                 * S3B00160
                            17 | *************************************************** S3B00170
LIBF FIXI  -V1.
 
                            19 |       LIBR                                          S3B00190
                            20 |       ENT     FIXI                                  S3B00200
                            21 |       ENT     FIXIX                                 S3B00210
0000 D03D                   22 | FIXIX STO     IHOLD     STORE INTEGER BASE          S3B00220
0001 C400 0000              23 |       LD   L  *-*       CALL+1                      S3B00230
0003 6919                   24 |       STX   1 FXSAV+1   SAVE XR1                    S3B00240
0004 7005                   25 |       MDX     *+5                                   S3B00250
0005 D038                   26 | FIXI  STO     IHOLD     STORE INTEGER BASE          S3B00260
0006 C400 0000              27 |       LD   L  *-*       CALL+1                      S3B00270
0008 6914                   28 |       STX   1 FXSAV+1   SAVE XR1                    S3B00280
0009 6100                   29 |       LDX   1 0         XR1 = ZERO                  S3B00290
000A D003                   30 |       STO     *+3       STORE OP ADDR               S3B00300
000B 8034                   31 |       A       ONE       BUILD EXIT                  S3B00310
000C D012                   32 |       STO     FXEX+1                                S3B00320
000D 7580 0000              33 |       MDX  I1 *-*       MODIFY X1 BY OP ADDRESS     S3B00330
000F 1000                   34 |       NOP               IF MDX CAUSES BR,SLIP NOP   S3B00340
                            35 | *                                                   S3B00350
                            36 | *TAKE CARE OF ERROR CONDITION                       S3B00360
                            37 | *                                                   S3B00370
0010 280A                   38 |       STS     FXSTA     SAVE STATUS                 S3B00380
0011 C02C                   39 |       LD      IHOLD     GET INTEGER BASE            S3B00390
0012 4C20 0020R             40 |       BSC  L  FIXI1,Z   BE IF NOT ZERO              S3B00400
0014 C100                   41 |       LD    1 0         IF BASE ZERO, SET ACC TO    S3B00410
0015 4C30 001AR             42 |       BSC  L  EZERO,-Z  ZERO. GET EXPONENT.BR IF    S3B00420
0017 C02A                   43 |       LD      ERFL      PTV,OTHERWISE SET ERROR     S3B00430
0018 EB7C                   44 |       OR    3 124       INDR WORD (BIT 11) TO 1     S3B00440
0019 D37C                   45 |       STO   3 124       (ZERO TO NON-PTV EXPONENT)  S3B00450
                            46 | *                                                   S3B00460
                            47 | *EXIT                                               S3B00470
                            48 | *                                                   S3B00480
001A 1010                   49 | EZERO SLA     16        ZERO ACC FOR ZERO BASE      S3B00490
001B 2000                   50 | FXSTA LDS     *-*       RESTORE STATUS              S3B00500
001C 6500 0000              51 | FXSAV LDX  L1 *-*       RESTORE XR1                 S3B00510
001E 4C00 0000              52 | FXEX  BSC  L  *-*       EXIT                        S3B00520
                            53 | *                                                   S3B00530
                            54 | *CALCULATE I**J                                     S3B00540
                            55 | *                                                   S3B00550
0020 901F                   56 | FIXI1 S       ONE       IF BASE NOT ZERO,SUB 1      S3B00560
0021 4C18 0029R             57 |       BSC  L  EXONE,+-  BR IF BASE=+1.I**J=+1       S3B00570
0023 801D                   58 |       A       TWO                                   S3B00580
0024 4C20 002DR             59 |       BSC  L  *+7,Z     BR IF BASE NOT +1,-1,ZERO   S3B00590
0026 C100                   60 |       LD    1 0         BASE=-1.                  . S3B00600
0027 4C04 002BR             61 |       BSC  L  *+2,E     BR IF EXPONENT IS ODD       S3B00610
0029 C016                   62 | EXONE LD      ONE       I**J=+1                     S3B00620
002A 70F0                   63 |       MDX     FXSTA                                 S3B00630
002B C017                   64 |       LD      MASK      I**J=-1                     S3B00640
002C 70EE                   65 |       MDX     FXSTA                                 S3B00650
002D C100                   66 |       LD    1 0         GET EXPONENT                S3B00660
002E 4C18 0029R             67 |       BSC  L  EXONE,+-  BR IF EXPONENT=0.I**J=+1    S3B00670
0030 4C08 001AR             68 |       BSC  L  EZERO,+   BR EXPONENT NEG.I**J=ZERO O S3B00680
0032 1884                   69 |       SRT     4         EXPONENT PTV                S3B00690
0033 4C20 001AR             70 |       BSC  L  EZERO,Z   BR EXPONENT GT 15           S3B00700
0035 1084                   71 |       SLT     4         OTHERWISE RESTORE EXPONENT  S3B00710
0036 D008                   72 |       STO     COUNT     STORE AS A MPY COUNTER      S3B00720
0037 C008                   73 |       LD      ONE       ACCUMULATOR = +1            S3B00730
0038 A005                   74 | IJPL  M       IHOLD     INCR POWER OF BASE BY ONE   S3B00740
0039 18D0                   75 |       RTE     16        SHIFT TO ACCUMULATOR        S3B00750
003A 74FF 003FR             76 |       MDX  L  COUNT,-1  DECR COUNTER                S3B00760
003C 70FB                   77 |       MDX     IJPL      REPEAT                      S3B00770
003D 70DD                   78 |       MDX     FXSTA     BR OUT                      S3B00780
                            79 | *                                                   S3B00790
                            80 | *CONSTANTS AREA                                     S3B00800
                            81 | *                                                   S3B00810
003E 0000                   82 | IHOLD DC      0         STORE INTEGER BASE          S3B00820
003F 0000                   83 | COUNT DC      0         STORE INTEGER EXPONENT      S3B00830
0040 0001                   84 | ONE   DC      1         SINGLE WORD ONE             S3B00840
0041 0002                   85 | TWO   DC      2         SINGLE WORD TWO             S3B00850
0042 0010                   86 | ERFL  DC      /10       1 IN BIT POSITION 11        S3B00860
0043 FFFF                   87 | MASK  DC      /FFFF     SINGLE WORD MINUS ONE       S3B00870
0044                        88 |       END                                           S3B00880
 
There were no errors in this assembly
 
=== CROSS REFERENCES ==========================================================
Name  Val   Defd  Referenced
COUNT 003FR   83   72   76
ERFL  0042R   86   43
EXONE 0029R   62   57   67
EZERO 001AR   49   42   68   70
FIXI  0005R   26
FIXI1 0020R   56   40
FIXIX 0000R   22
FXEX  001ER   52   32
FXSAV 001CR   51   24   28
FXSTA 001BR   50   38   63   65   78
IHOLD 003ER   82   22   26   39   74
IJPL  0038R   74   77
MASK  0043R   87   64
ONE   0040R   84   31   56   62   73
TWO   0041R   85   58
ibm/ibm1130-lib/dmsr2v12/s3fixi_lst.txt ยท Last modified: 2023/08/06 13:34 by Site Administrator