ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:10 2020 Source File: \u7calpr.asm CALPR -CALL SYSTEM PRINT SUBR 2 | * JUNE 20,1967 U7A00020 3 | ENT CALPR U7A00030 4 | *************************************************** U7A00040 5 | * STATUS- VERSION 1 * U7A00050 6 | * * U7A00060 7 | * FUNCTION/OPERATION- * U7A00070 8 | * *CALPR CALLS IN THE SYSTEM PRINT SUBROUTINE. * U7A00080 9 | * A VARIABLE NUMBER OF LINES MAY BE PRINTED * U7A00090 10 | * WITH ONE CALL IF THEY ARE SETUP IN MEMORY. * U7A00100 11 | * ALL LINES OF PRINT MUST BE PRECEDED BY A * U7A00110 12 | * WORD COUNT. THE WORD COUNT ADDRESS MUST BE * U7A00120 13 | * ODD SO THE PRINT LINE CAN BEGIN WITH AN EVEN* U7A00130 14 | * ADDRESS. SKIP TO A NEW PAGE AND PRINT A HDNG* U7A00140 15 | * IS ALSO DONE. * U7A00150 16 | * * U7A00160 17 | * ENTRY POINTS- * U7A00170 18 | * *CALPR- CALLING SEQUENCE IS * U7A00180 19 | * CALL CALPR * U7A00190 20 | * DC ADDRESS ADDRESS OF O/P LINE * U7A00200 21 | * DC N NO OF LINE TO BE PRINTED * U7A00210 22 | * * U7A00220 23 | * INPUT-N/A * U7A00230 24 | * * U7A00240 25 | * OUTPUT- * U7A00250 26 | * * LINES OF PRINT ON PRINCIPAL PRINT DEVICE * U7A00260 27 | * * U7A00270 28 | * * U7A00280 29 | * EXTERNAL REFERENCES- * U7A00290 30 | * SUBROUTINES- * U7A00300 31 | * * FSLEN * U7A00310 32 | * * FSYSU * U7A00320 33 | * COMMA/DCOM- * U7A00330 34 | * * $PBSY * U7A00340 35 | * * U7A00350 36 | * EXITS * U7A00360 37 | * NORMAL- CA590 * U7A00370 38 | * * U7A00380 39 | * TABLES/WORK AREAS- * U7A00390 40 | * * CA900 * U7A00400 41 | * CA901 * U7A00410 42 | * CA902 * U7A00420 43 | * CA903 * U7A00430 44 | * * U7A00440 45 | * ATTRIBUTES- * U7A00450 46 | * * RELOCATABLE * U7A00460 47 | * * U7A00470 48 | * NOTES- * U7A00480 49 | * N/A * U7A00490 50 | * * U7A00500 51 | * * U7A00510 52 | * * U7A00520 53 | * * U7A00530 54 | * * U7A00540 55 | *************************************************** U7A00550 CALPR- CALL SYSTEM PRINT SUBR 57 | *************************************************** U7A00570 58 | *************************************************** U7A00580 59 | * U7A00590 0000 0000 60 | CALPR DC *-* U7A00600 0001 6D00 0053R 61 | STX L1 CA580+1 SAVE INDEX REGISTER U7A00610 0003 6E00 0055R 62 | STX L2 CA582+1 U7A00620 0005 6600 0058R 63 | LDX L2 CX U7A00630 0007 C0F8 64 | LD CALPR GET PARAMETERS U7A00640 0008 D00A 65 | STO CA015+1 U7A00650 0009 8050 66 | A CA801 COMPUTE LINE CNT ADDRESS U7A00660 000A D00B 67 | STO CA020+1 U7A00670 000B 804E 68 | A CA801 COMPUTE RETURN ADDRESS U7A00680 000C D206 69 | STO 2 CA900-CX U7A00690 000D C207 70 | LD 2 CA901-CX FETCH ADDRESS OF PTR SUBR U7A00700 000E 4820 71 | BSC Z SKIP IF NOT IN MEMORY U7A00710 000F 7002 72 | MDX CA015 U7A00720 73 | * U7A00730 0010 4400 0043R 74 | BSI L CA300 FETCH PTR SUBR U7A00740 75 | * U7A00750 0012 C400 0000 76 | CA015 LD L *-* FETCH O/P ADDRESS U7A00760 0014 D208 77 | STO 2 CA902-CX U7A00770 0015 C400 0000 78 | CA020 LD L *-* FETCH LINE CNT U7A00780 0017 D209 79 | STO 2 CA903-CX U7A00790 0018 4818 80 | BSC +- U7A00800 0019 7012 81 | MDX CA200 GO TO HDNG PRINT U7A00810 82 | *************************************************** U7A00820 83 | * PRINT THE NUMBER OF LINES REQUESTED * U7A00830 84 | *************************************************** U7A00840 001A C208 85 | CA100 LD 2 CA902-CX LD WD CNT OF PRT LINE U7A00850 001B 1890 86 | SRT 16 U7A00860 001C C204 87 | LD 2 CA811-CX FETCH FUNCTION CODE U7A00870 001D 4680 0007 88 | BSI I2 CA901-CX TO PRINT U7A00880 001F 7400 0036 89 | MDX L $PBSY,0 U7A00890 0021 70FD 90 | MDX *-3 U7A00900 91 | *************************************************** U7A00910 92 | * INCR. O/P ADDRESS FOR THE NEXT LINE * U7A00920 93 | * TEST FOR LAST LINE PRINTED * U7A00930 94 | *************************************************** U7A00940 95 | * U7A00950 0022 C680 0008 96 | LD I2 CA902-CX COMPUTE ADDRESS OF U7A00960 0024 8208 97 | A 2 CA902-CX *NEXT LINE U7A00970 0025 8202 98 | A 2 CA801-CX U7A00980 0026 D208 99 | STO 2 CA902-CX U7A00990 100 | * U7A01000 0027 74FF 0061R 101 | MDX L CA903,-1 SKIP AFTER LINE U7A01010 0029 70F0 102 | MDX CA100 PRINT NEXT LINE U7A01020 103 | * U7A01030 002A 4C00 0052R 104 | BSC L CA580 GO TO RETURN U7A01040 CALPR- PRINT HEADING 106 | *************************************************** U7A01060 002C C208 107 | CA200 LD 2 CA902-CX FETCH O/P ADDRESS U7A01070 002D 1890 108 | SRT 16 U7A01080 002E C02C 109 | LD CA810 FETCH FUNCTION CODE U7A01090 002F 4680 0007 110 | BSI I2 CA901-CX SKIP TO CHAN 1 U7A01100 0031 7400 0036 111 | MDX L $PBSY,0 U7A01110 0033 70FD 112 | MDX *-3 U7A01120 0034 4680 0007 113 | BSI I2 CA901-CX PRINT HDNG U7A01130 0036 7400 0036 114 | MDX L $PBSY,0 U7A01140 0038 70FD 115 | MDX *-3 U7A01150 0039 C208 116 | LD 2 CA902-CX U7A01160 003A 1890 117 | SRT 16 U7A01170 003B C205 118 | LD 2 CA812-CX U7A01180 003C 4680 0007 119 | BSI I2 CA901-CX SPACE 1 LINE U7A01190 003E 7400 0036 120 | MDX L $PBSY,0 U7A01200 0040 70FD 121 | MDX *-3 U7A01210 122 | * U7A01220 123 | * U7A01230 124 | * U7A01240 125 | * U7A01250 0041 4C00 0052R 126 | BSC L CA580 GO TO RETURN U7A01260 127 | * U7A01270 CALPR- FETCH SYSTEM PRINT SUBR 129 | *************************************************** U7A01290 130 | * CALL FSLEN TO GET WD CNT AND SCTR ADDR OF SUBR * U7A01300 131 | *************************************************** U7A01310 132 | * U7A01320 0043 0000 133 | CA300 DC *-* ENTRY-EXIT U7A01330 0044 6E00 004ER 134 | STX L2 CA319+1 U7A01340 0046 0689*3155 135 | CA302 CALL FSLEN U7A01350 0048 0099 136 | DC 153 PHASE ID U7A01360 0049 4818 137 | BSC +- SKIP IF FOUND U7A01370 004A 70FB 138 | MDX CA302 TRY AGAIN U7A01380 139 | * U7A01390 140 | *************************************************** U7A01400 141 | * CALL IN SYSTEM PRINT SUBROUTINE * U7A01410 142 | *************************************************** U7A01420 143 | * U7A01430 004B 068A*88A4 144 | CALL FSYSU U7A01440 004D 6600 0000 145 | CA319 LDX L2 *-* U7A01450 004F D207 146 | STO 2 CA901-CX STORE ENTRY ADDRESS U7A01460 0050 4C80 0043R 147 | BSC I CA300 U7A01470 148 | * U7A01480 CALPR ENDING 150 | *************************************************** U7A01500 151 | * RESTORE INDEX REGISTERS AND RETURN TO USER * U7A01510 152 | * * U7A01520 153 | *************************************************** U7A01530 154 | * U7A01540 0052 6500 0000 155 | CA580 LDX L1 *-* XR 1 U7A01550 0054 6600 0000 156 | CA582 LDX L2 *-* XR 2 U7A01560 0056 4C80 005ER 157 | CA590 BSC I CA900 RETURN U7A01570 158 | * U7A01580 CALPR-CONSTANTS 160 | *************************************************** U7A01600 0058 0000 161 | CX DC *-* DUMMY U7A01610 162 | * U7A01620 0059 0000 163 | CA800 DC 0 U7A01630 005A 0001 164 | CA801 DC 1 U7A01640 005B 7000 165 | CA810 DC /7000 FUNCTION CODES U7A01650 005C 7001 166 | CA811 DC /7001 U7A01660 005D 7002 167 | CA812 DC /7002 U7A01670 0036 168 | $PBSY EQU /36 PRINC PTR BUSY INDR,NON-ZERO=BSY U7A01680 CALPR- WORKING STORAGE 170 | *************************************************** U7A01700 005E 171 | BSS E 0 U7A01710 005E 0000 172 | CA900 DC *-* CALLER RETURN ADDRESS U7A01720 005F 0000 173 | CA901 DC *-* ADDR OF SYS PTR RTN U7A01730 0060 0000 174 | CA902 DC *-* ADDR OF FIRST LN OF PRT U7A01740 0061 0000 175 | CA903 DC *-* LINE CNT U7A01750 176 | * U7A01760 0062 177 | END U7A01770 There were no errors in this assembly === CROSS REFERENCES ========================================================== Name Val Defd Referenced $PBSY 0036 168 89 111 114 120 CA015 0012R 76 65 72 CA020 0015R 78 67 CA100 001AR 85 102 CA200 002CR 107 81 CA300 0043R 133 74 147 CA302 0046R 135 138 CA319 004DR 145 134 CA580 0052R 155 61 104 126 CA582 0054R 156 62 CA590 0056R 157 CA800 0059R 163 CA801 005AR 164 66 68 98 CA810 005BR 165 109 CA811 005CR 166 87 CA812 005DR 167 118 CA900 005ER 172 69 157 CA901 005FR 173 70 88 110 113 119 146 CA902 0060R 174 77 85 96 97 99 107 116 CA903 0061R 175 79 101 CALPR 0000R 60 64 CX 0058R 161 63 69 70 77 79 85 87 88 96 97 98 99 107 110 113 116 118 119 146