ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:07 2020
Source File: \s1empy.asm
1 | *************************************************** S1G00010
2 | * * S1G00020
3 | * SUBROUTINE NAME- * S1G00030
4 | * FULL NAME- EXTENDED PRECISION FLOATING- * S1G00040
5 | * POINT MULTIPLY SUBPROGRAM. * S1G00050
6 | * CODE NAME- EMPY/EMPYX * S1G00060
7 | * PURPOSE- THIS SUBPROGRAM COMPUTES THE PRODUCT * S1G00070
8 | * OF TWO EXTENDED PRECISION FLOATING-POINT * S1G00080
9 | * NUMBERS. * S1G00090
10 | * METHOD-SEE IBM 1130 SUBROUTINE LIBRARY MANUAL.* S1G00100
11 | * CAPABILITIES AND LIMITATIONS- SEE IBM 1130 * S1G00110
12 | * SUBROUTINE LIBRARY MANUAL. * S1G00120
13 | * SPECIAL FEATURES- N/A * S1G00130
14 | * ADDITIONAL INFORMATION- * S1G00140
15 | * ESTIMATED EXECUTION TIME- SEE IBM 1130 * S1G00150
16 | * SUBROUTINE LIBRARY MANUAL * S1G00160
17 | * * S1G00170
18 | *************************************************** S1G00180
LIBF EMPY -V1.
20 | LIBR S1G00200
21 | EPR S1G00210
22 | ENT EMPY LIBF S1G00220
23 | ENT EMPYX S1G00230
0000 6926 24 | EMPYX STX 1 EMX1+1 SAVE XR1 S1G00240
0001 C400 0000 25 | LD L *-* LOADER INSERT. S1G00250
0003 7004 26 | MDX EMC S1G00260
0004 6922 27 | EMPY STX 1 EMX1+1 SAVE XR1 S1G00270
0005 C400 0000 28 | LD L *-* LOADER INSERT. S1G00280
0007 6100 29 | LDX 1 0 SUPPRESS INDEXING. S1G00290
0008 D003 30 | EMC STO *+3 STORE ADDR OF OPND S1G00300
0009 8022 31 | A MCN+1 INCR ADDR BY ONE S1G00310
000A D01F 32 | STO MX+1 BUILD EXIT S1G00320
000B 7580 0000 33 | MDX I1 *-* OPND ADDRESS INTO XR1. S1G00330
000D 1000 34 | NOP IF MDX CAUSES BR,SKIP NOP S1G00340
35 | * S1G00350
36 | *COMPUTE PRODUCT S1G00360
37 | * S1G00370
000E C37D 38 | CMN LD 3 125 GET FAC EXPONENT S1G00380
000F 8100 39 | A 1 0 ADD ARGUMENT EXPONENT S1G00390
0010 901A 40 | S MCN CORR FACTOR OF 128 S1G00400
0011 D37D 41 | STO 3 125 PRODUCT EXPONENT INTO FAC S1G00410
0012 C102 42 | LD 1 2 GET ARGUMENT MANTISSA S1G00420
0013 18D0 43 | RTE 16 INTO ACC AND EXT S1G00430
0014 C101 44 | LD 1 1 S1G00440
0015 2750*4000 45 | LIBF XMD MULTIPLY FRACTIONS. S1G00450
0016 DB7E 46 | STD 3 126 STORE IN FAC S1G00460
47 | * S1G00470
48 | *GET ABSOLUTE VALUE OF MANTISSA AND NORMALIZE S1G00480
49 | * S1G00490
0017 4C10 001BR 50 | BSC L *+2,- BR IF NON-NEG S1G00500
0019 10A0 51 | SLT 32 IF NEG,REVERSE SIGN S1G00510
001A 9B7E 52 | SD 3 126 S1G00520
001B 1081 53 | SLT 1 S1G00530
001C 4C08 0024R 54 | BSC L NONP,+ BR IF NOT PTV S1G00540
001E C37D 55 | LD 3 125 IF PTV,GET EXPONENT S1G00550
001F 900C 56 | S MCN+1 AND DECR BY ONE S1G00560
0020 D37D 57 | STO 3 125 S1G00570
0021 CB7E 58 | LDD 3 126 GET MANTISSA AND S1G00580
0022 1081 59 | SLT 1 SHIFT LEFT ONE S1G00590
0023 DB7E 60 | STD 3 126 S1G00600
0024 4818 61 | NONP BSC +- BR IF MANTISSA NON-ZERO S1G00610
0025 D37D 62 | STO 3 125 ZERO CHARACTERISTIC S1G00620
0026 6500 0000 63 | EMX1 LDX L1 RESTORE XR1. S1G00630
0028 0605*90C0 64 | LIBF FARC ERROR ROUTINE S1G00640
0029 4C00 0000 65 | MX BSC L *-* EXIT. S1G00650
66 | * S1G00660
67 | *CONSTANTS AREA S1G00670
68 | * S1G00680
002B 0080 69 | MCN DC 128 CONSTANT TO SCALE EXPONENT S1G00690
002C 0001 70 | DC 1 SINGLE WORD ONE S1G00700
002D 71 | END S1G00710
There were no errors in this assembly
=== CROSS REFERENCES ==========================================================
Name Val Defd Referenced
CMN 000ER 38
EMC 0008R 30 26
EMPY 0004R 27
EMPYX 0000R 24
EMX1 0026R 63 24 27
MCN 002BR 69 31 40 56
MX 0029R 65 32
NONP 0024R 61 54