ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:11 2020 Source File: \w1prtz2.asm PRTZ2 2 | LIBR W1K00020 3 | ENT PRTZ2 W1K00030 4 | *************************************************** W1K00040 5 | * * W1K00050 6 | *STATUS- VERSION 2, MODIFICATION 4 * W1K00060 7 | * * W1K00070 8 | *FUNCTION/OPERATION- * W1K00080 9 | * THIS SUBROUTINE IS TO REPLACE PRNTZ IN CORE * W1K00090 10 | * LOADS BY MEANS OF THE CONTROL RECORD *EQUAT * W1K00100 11 | * IT CONVERTS A CALLING SEQUENCE FOR PRNTZ INTO * W1K00110 12 | * A CALLING SEQUENCE FOR PRNT2. THEREFORE IT HAS* W1K00120 13 | * TO BE USED WHEN THE SCA IS IN OPERATION. * W1K00130 14 | * * W1K00140 15 | *ENTRY POINTS- * W1K00150 16 | * * PRTZ2-CALL PORTION FROM FORTRAN SFIO PROGRAM* W1K00160 17 | * * AP500-ERROR ROUTINE * W1K00170 18 | * THE SUBROUTINE IS ENTERED BY A LIBF TO PRTZ2 * W1K00180 19 | * * W1K00190 20 | *INPUT- * W1K00200 21 | * * XR1 CONTAINS THE OUTPUT BUFFER ADDRESS * W1K00210 22 | * * XR2 CONTAINS THE WORD COUNT * W1K00220 23 | * * W1K00230 24 | *OUTPUT- * W1K00240 25 | * * A CALLING SEQUENCE FOR PRNT2 TO PERFORM * W1K00250 26 | * SPACING AND PRINTING ON THE 1132 * W1K00260 27 | * * W1K00270 28 | *EXTERNAL REFERENCES- * W1K00280 29 | * * $1132 * W1K00290 30 | * * W1K00300 31 | *EXITS- * W1K00310 32 | * NORMAL- * W1K00320 33 | * * AP000, BACK TO SFIO * W1K00330 34 | * * W1K00340 35 | * ERROR- * W1K00350 36 | * * NONE * W1K00360 37 | * * W1K00370 38 | *TABLE/WORK AREAS-N/A * W1K00380 39 | * * W1K00390 40 | *ATTRIBUTES-RELOCATABLE * W1K00400 41 | * * W1K00410 42 | *NOTES-REGISTERS NOT SAVED * W1K00420 43 | * * W1K00430 44 | *************************************************** W1K00440 PRTZ2 007F 46 | $1132 EQU /7F CH 12 INDICATOR FOR 1132 W1K00460 47 | * W1K00470 0000 7002 48 | PRTZ2 MDX AP010 BRANCH PAST ENTRY POINT W1K00480 0001 4C80 0000 49 | AP000 BSC I *-* LIBF ENTRY POINT W1K00490 50 | * W1K00500 0003 C100 51 | AP010 LD 1 0 GET LINE CONTROL CHARACTER W1K00510 0004 D043 52 | STO AP900 *FROM BUFFER W1K00520 0005 6A43 53 | STX 2 AP901 STORE CHARACTER COUNT W1K00530 0006 C042 54 | LD AP901 EVENIZE W1K00540 0007 4804 55 | BSC E *THE CHARACTER W1K00550 0008 9041 56 | S AP902 *COUNT W1K00560 0009 1801 57 | SRA 1 CONVERT TO WORD COUNT AND W1K00570 000A D100 58 | STO 1 0 PLACE IN FRONT OF BUFFER W1K00580 000B 692F 59 | STX 1 AP060 SET I/O AREA ADDRESS W1K00590 60 | * W1K00600 000C 4C18 0022R 61 | BZ AP040 SKIP PACKING IF WC IS ZERO W1K00610 000E 74FF 0049R 62 | MDX L AP901,-1 SET CHARACTER COUNT W1K00620 63 | * W1K00630 0010 6680 003BR 64 | LDX I2 AP060 SET XR2 TO OUTPUT POINTER W1K00640 0012 7201 65 | MDX 2 1 *FOR PACKING BUFFER W1K00650 66 | * W1K00660 0013 7101 67 | AP020 MDX 1 1 INCREMENT INPUT POINTER W1K00670 0014 C200 68 | LD 2 0 LOAD ONE WORD W1K00680 0015 1008 69 | SLA 8 SHIFT LEFT W1K00690 0016 74FF 0049R 70 | MDX L AP901,-1 SKIP IF THRU W1K00700 0018 7003 71 | MDX AP030 BRANCH TO CONTINUE PACKING W1K00710 72 | * W1K00720 0019 E834 73 | OR AP906 BLANK IN SEC HALF OF WORD W1K00730 001A D100 74 | STO 1 0 STORE BACK IN BUFFER W1K00740 001B 7006 75 | MDX AP040 BRANCH TO CONTINUE W1K00750 76 | * W1K00760 001C EA01 77 | AP030 OR 2 1 OR IN SECOND HALF OF WORD W1K00770 001D D100 78 | STO 1 0 STORE BACK IN BUFFER W1K00780 001E 7202 79 | MDX 2 2 INCREMENT INPUT POINTER W1K00790 001F 74FF 0049R 80 | MDX L AP901,-1 SKIP IF THRU W1K00800 0021 70F1 81 | MDX AP020 GO INCREMENT INPUT POINTER W1K00810 82 | * W1K00820 0022 C025 83 | AP040 LD AP900 CHECK LINE CONTROL CHAR W1K00830 0023 9027 84 | S AP903 *FOR '1' W1K00840 0024 4C18 0041R 85 | BZ AP100 BR IF ZERO FOR SKIP TO CH1 W1K00850 86 | * W1K00860 0026 9025 87 | S AP904 CHECK FOR '+' W1K00870 0027 4C18 0035R 88 | BZ AP050 YES - PRINT SPACE SUPPRESS W1K00880 89 | * W1K00890 0029 C400 007F 90 | LD L $1132 CHECK CHAN 12 INDICATOR W1K00900 002B 4C20 0041R 91 | BNZ AP100 BR IF ON TO SKIP TO CHAN 1 W1K00910 92 | * W1K00920 002D 1765*58F2 93 | AP045 LIBF PRNT2 CALL PRNT2 W1K00930 002E 3D00 94 | DC /3D00 *FUNCTION SPACE ONE W1K00940 95 | * W1K00970 002F C018 96 | LD AP900 CHECK LINE CONTROL CHAR W1K00980 0030 901C 97 | S AP905 *FOR '0' W1K00990 0031 4C20 0035R 98 | BNZ AP050 BR IF NOT TO PRINT LINE W1K01000 0033 D014 99 | STO AP900 RESET LINE CONTROL W1K01010 0034 70F8 100 | B AP045 PERFORM ANOTHER SPACE W1K01020 101 | * W1K01030 0035 C480 003BR 102 | AP050 LD I AP060 LOAD WORD COUNT W1K01040 0037 4C18 003DR 103 | BZ AP070 EXIT IF ZERO W1K01050 104 | * W1K01060 0039 1765*58F2 105 | LIBF PRNT2 CALL PRNT2 W1K01070 003A 2010 106 | DC /2010 *FUNCTION PRINT W1K01080 003B 0000 107 | AP060 DC *-* *I/O AREA ADDRESS W1K01090 003C 0044R 108 | DC AP500 *ADDRESS OF ERROR ROUTINE W1K01100 109 | * W1K01110 003D 1765*58F2 110 | AP070 LIBF PRNT2 CALL PRNT2 W1K01120 003E 0000 111 | DC /0000 *FUNCTION TEST FOR BUSY W1K01130 003F 70FD 112 | B AP070 BRANCH IF BUSY W1K01140 0040 70C0 113 | B AP000 BRANCH TO EXIT W1K01150 114 | * W1K01160 0041 1765*58F2 115 | AP100 LIBF PRNT2 CALL PRNT2 W1K01170 0042 3100 116 | DC /3100 FUNCTION SKIP TO CHAN 1 W1K01180 0043 70F1 117 | B AP050 RETURN TO PRNT2 W1K01210 118 | * W1K01220 0044 0000 119 | AP500 DC *-* PRTZ2 ERROR ROUTINE W1K01230 0045 1010 120 | SLA 16 CLEAR ACCUMULATOR W1K01240 0046 4C80 0044R 121 | BSC I AP500 RETURN W1K01270 122 | * W1K01280 123 | * W1K01310 124 | * W1K01320 0048 0000 125 | AP900 DC *-* LINE CONTROL CHARACTER W1K01330 0049 0000 126 | AP901 DC *-* CHARACTER COUNT W1K01340 004A 0001 127 | AP902 DC 1 CONSTANT W1K01350 004B 00F1 128 | AP903 DC .1 SKIP TO CHAN 1 CODE W1K01360 004C FF5D 129 | AP904 DC .+-.1 SPACE SUPPRESS CODE W1K01370 004D 00F0 130 | AP905 DC .0 DOUBLE SPACE CODE W1K01380 004E 0040 131 | AP906 DC . BLANK W1K01390 132 | * W1K01400 004F 133 | END W1K01410 There were no errors in this assembly === CROSS REFERENCES ========================================================== Name Val Defd Referenced $1132 007F 46 90 AP000 0001R 49 113 AP010 0003R 51 48 AP020 0013R 67 81 AP030 001CR 77 71 AP040 0022R 83 61 75 AP045 002DR 93 100 AP050 0035R 102 88 98 117 AP060 003BR 107 59 64 102 AP070 003DR 110 103 112 AP100 0041R 115 85 91 AP500 0044R 119 108 121 AP900 0048R 125 52 83 96 99 AP901 0049R 126 53 54 62 70 80 AP902 004AR 127 56 AP903 004BR 128 84 AP904 004CR 129 87 AP905 004DR 130 97 AP906 004ER 131 73 PRTZ2 0000R 48