ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:07 2020 Source File: \r2faxb.asm 1 | *************************************************** R2C00010 2 | * * R2C00020 3 | * SUBROUTINE NAME- * R2C00030 4 | * FULL NAME- STANDARD PRECISION FLOATING- * R2C00040 5 | * POINT A**B FUNCTION. * R2C00050 6 | * CODE NAME- FAXB/FAXBX * R2C00060 7 | * PURPOSE- THIS SUBPROGRAM COMPUTES A STANDARD * R2C00070 8 | * PRECISION FLOATING POINT NUMBER TAKEN TO A * R2C00080 9 | * STANDARD PRECISION FLOATING POINT EXPONENT.* R2C00090 10 | * METHOD-SEE IBM 1130 SUBROUTINE LIBRARY MANUAL.* R2C00100 11 | * CAPABILITIES AND LIMITATIONS- SEE IBM 1130 * R2C00110 12 | * SUBROUTINE LIBRARY MANUAL. * R2C00120 13 | * SPECIAL FEATURES- N/A * R2C00130 14 | * ADDITIONAL INFORMATION- * R2C00140 15 | * ESTIMATED EXECUTION TIME- SEE IBM 1130 * R2C00150 16 | * SUBROUTINE LIBRARY MANUAL * R2C00160 17 | * * R2C00170 18 | *************************************************** R2C00180 CALL FAXB -V1. 20 | SPR R2C00200 21 | ENT FAXB R2C00210 22 | ENT FAXBX R2C00220 0000 0000 23 | FAXBX DC *-* CALL+1 R2C00230 0001 691B 24 | STX 1 EXIT+1 SAVE XR1 R2C00240 0002 C400 0000R 25 | LD L FAXBX CALL+1 TO ACCUMULATOR R2C00250 0004 7005 26 | MDX COM R2C00260 0005 0000 27 | FAXB DC *-* CALL+1 R2C00270 0006 6916 28 | STX 1 EXIT+1 SAVE XR1 R2C00280 0007 C400 0005R 29 | LD L FAXB CALL+1 TO ACCUMULATOR R2C00290 0009 6100 30 | LDX 1 0 XR1=ZERO R2C00300 000A D003 31 | COM STO *+3 R2C00310 000B 8026 32 | A ONE BUILD EXIT R2C00320 000C D012 33 | STO EXIT+3 R2C00330 000D 7580 0000 34 | MDX I1 *-* OPND ADDRESS INTO XR1 R2C00340 000F 1000 35 | NOP IF MDX CAUSES BR,SKIP NOP R2C00350 0010 C37E 36 | LD 3 126 SIGN OF A TO ACCUMULATOR R2C00360 0011 4C18 0020R 37 | BSC L TEST,+- BR TO TEST IF A=0 R2C00370 0013 C100 38 | LD 1 0 SIGN OF B TO ACCUMULATOR R2C00380 0014 4C18 0027R 39 | BSC L SPEC,+- BR TO SPEC IF A NOT 0, B=0 R2C00390 40 | * R2C00400 41 | *IF A NOT ZERO AND B NOT ZERO,CALC A**B R2C00410 42 | * R2C00420 0016 064D*5000 43 | CALL FLN NATURAL LOG OF A R2C00430 0018 0651*7A27 44 | LIBF FMPYX B*LNA R2C00440 0019 0000 45 | DC 0 EFFECTIVE ADDRESS OF B R2C00450 001A 069D*7540 46 | CALL FXPN E**B*LNA=A**B R2C00460 001C 6500 0000 47 | EXIT LDX L1 *-* RESTORE XR1 R2C00470 001E 4C00 0000 48 | BSC L *-* EXIT R2C00480 49 | * R2C00490 50 | *IF A=O,B NOT NEG,SET A**B=O R2C00500 51 | * R2C00510 0020 C100 52 | TEST LD 1 0 SIGN OF B TO ACCUMULATOR R2C00520 0021 4C08 002DR 53 | BSC L FERR,+ BR TO FERR IF B NOT PLUS R2C00530 0023 10A0 54 | SLT 32 CLEAR ACC AND EXT R2C00540 0024 D37D 55 | STO 3 125 A**B=ZERO R2C00550 0025 DB7E 56 | STD 3 126 R2C00560 0026 70F5 57 | MDX EXIT R2C00570 58 | * R2C00580 59 | *IF A NOT ZERO AND B=O,SET A**B=+1 R2C00590 60 | * R2C00600 0027 C00D 61 | SPEC LD FONE+1 LD FAC WITH EXPONENT OF +1 R2C00610 0028 D37D 62 | STO 3 125 R2C00620 0029 1090 63 | SLT 16 CLEAR EXTENSION R2C00630 002A C009 64 | LD FONE R2C00640 002B DB7E 65 | STD 3 126 LD +1 INTO MANTISSA OF FAC R2C00650 002C 70EF 66 | MDX EXIT R2C00660 67 | * R2C00670 68 | *IF A=0 AND B NOT PTV,SET ERROR INDR R2C00680 69 | * R2C00690 002D C003 70 | FERR LD ERRB SET ERROR INDICATOR ON R2C00700 002E EB7C 71 | OR 3 124 BIT 9 OF (XR3)+124 R2C00710 002F D37C 72 | STO 3 124 R2C00720 0030 70EB 73 | MDX EXIT R2C00730 74 | * R2C00740 75 | *CONSTANTS AREA R2C00750 76 | * R2C00760 0031 0040 77 | ERRB DC /40 BIT 9 R2C00770 0032 0001 78 | ONE DC 1 SINGLE WORD ONE R2C00780 0034 4000 0081 79 | FONE DEC 1.0 FLT PT ONE R2C00790 0036 80 | END R2C00800 There were no errors in this assembly === CROSS REFERENCES ========================================================== Name Val Defd Referenced COM 000AR 31 26 ERRB 0031R 77 70 EXIT 001CR 47 24 28 33 57 66 73 FAXB 0005R 27 29 FAXBX 0000R 23 25 FERR 002DR 70 53 FONE 0034R 79 61 64 ONE 0032R 78 32 SPEC 0027R 61 39 TEST 0020R 52 37