ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:07 2020
Source File: \pmondevs.asm
*SYSTEM SYMBOL TABLE 1 |
SYSTEM 1403 SUBROUTINE
3 | ABS
4 | * I SPLIT PMONITOR INTO EMONITOR AND PMONDEVS SO I COULD
5 | * GET THE PHASES SEPARATED.
6 | *************************************************** PMN11250
7 | * * PMN11260
8 | *STATUS - VERSION 2, MODIFICATION LEVEL 12 * PMN11270
9 | * * PMN11280
10 | *FUNCTION/OPERATION- * PMN11290
11 | * THIS IS A SUBROUTINE USED BY THE 1130 * PMN11300
12 | * MONITOR TO PERFORM THE FOLLOWING FUNCTIONS * PMN11310
13 | * ON THE 1403 PRINT DEVICE- * PMN11320
14 | * *SKIP TO CHANNEL 1. * PMN11330
15 | * *PRINT A LINE WITH ONE SPACE. * PMN11340
16 | * *SPACE IMMEDIATE. * PMN11350
17 | * * PMN11360
18 | *ENTRY POINTS- * PMN11370
19 | * *PR000+1 IS THE USER ENTRY. * PMN11380
20 | * *PR010 IS THE INTERRUPT ENTRY. * PMN11390
21 | * * PMN11400
22 | *INPUT- * PMN11410
23 | * *SKIP TO CHANNEL 1 * PMN11420
24 | * ACC = 7000 * PMN11430
25 | * EXT = ADDRESS OF HEADING I/O AREA * PMN11440
26 | * *PRINT A LINE WITH ONE SPACE * PMN11450
27 | * ACC = 7001 * PMN11460
28 | * EXT = ADDRESS OF I/O AREA * PMN11470
29 | * *SPACE IMMEDIATE * PMN11480
30 | * ACC = 7002 * PMN11490
31 | * EXT = ANYTHING * PMN11500
32 | * **THE I/O AREA CONSISTS OF ONE WORD OF WORD * PMN11510
33 | * COUNT FOLLOWED BY 0-60 WORD OF PACKED * PMN11520
34 | * EBCDIC CODE. * PMN11530
35 | * * PMN11540
36 | *OUTPUT- * PMN11550
37 | * THE MESSAGE IN THE I/O AREA IS PRINTED TO * PMN11560
38 | * THE 1403 PRINTER. * PMN11570
39 | * * PMN11580
40 | *EXTERNAL REFERENCES * PMN11590
41 | * $I403 * PMN11600
42 | * $IOCT 2-2 * PMN11610
43 | * $PBSY * PMN11620
44 | * $PGCT * PMN11630
45 | * $PRET * PMN11640
46 | * $PST4 * PMN11650
47 | * * PMN11660
48 | *EXITS- NORMAL * PMN11670
49 | * *SUBROUTINE RETURNS TO USER AFTER FUNCTION * PMN11680
50 | * HAS BEEN INITIATED. * PMN11690
51 | * *SUBROUTINE RETURNS TO INTERRUPT LEVEL * PMN11700
52 | * SUBROUTINE AFTER AN INTERRUPT HAS BEEN * PMN11710
53 | * SERVICED. * PMN11720
54 | * * PMN11730
55 | *EXITS-ERROR * PMN11740
56 | * *EXIT TO $PRET ON PRE-OPERATIVE ERROR. * PMN11750
57 | * *EXIT TO $PST4 ON POST-OPERATIVE ERROR. * PMN11760
58 | * * PMN11770
59 | *TABLES/WORK AREAS- * PMN11780
60 | * PR390 IS A 60-WORD AREA USED TO STORE THE * PMN11790
61 | * USERS CONVERTED MESSAGE AND TO PRINT IT. IT* PMN11800
62 | * IS ALSO USED TO PERFORM ONE TIME * PMN11810
63 | * INITIALIZATIONS THE INSTRUCTIONS OF WHICH * PMN11820
64 | * ARE WIPED OUT BY THE FIRST LINE MESSAGE. * PMN11830
65 | * * PMN11840
66 | *ATTRIBUTES- * PMN11850
67 | * *NATURALLY RELOCATABLE. * PMN11860
68 | * *REUSABLE. * PMN11870
69 | * * PMN11880
70 | *NOTES- NONE * PMN11890
71 | * * PMN11900
72 | *************************************************** PMN11910
SYSTEM 1403 SUBROUTINE
0000 74 | ORG 0 PMN11930
0000 0134 75 | DC PR475-PR000+1 WD CNT OF 1403 SUBR 2-9 PMN11950
0001 008C 76 | DC @1403 PHASE ID OF SYS 1403 SUBR PMN11960
SYSTEM 1403 SUBROUTINE
0002 4C00 0000 78 | PR000 BSC L *-* RETURN TO USER PMN11980
0004 7028 79 | MDX PR130 GO EXECUTE CALL PORTION PMN11990
0005 4C00 0000 80 | BSC L *-* RETURN TO ILS ROUTINE PMN12000
0006 81 | PR010 EQU *-1 INTERRUPT ENTRANCE PMN12010
82 | * PMN12020
83 | *XR2 SET TO 50 IN ORDER TO REFER TO CERTAIN PMN12030
84 | *LOCATIONS IN COMMA--$PBSY,$1403,$PST4--WITH PMN12040
85 | *SHORT INSTRUCTIONS PMN12050
86 | * PMN12060
0007 6232 87 | LDX 2 50 PMN12070
0008 081B 88 | XIO PR070-1 SENSE WITH RESET PMN12080
0009 D01A 89 | STO PR060 PMN12090
000A 1003 90 | SLA 3 CHECK FOR CARRIAGE INTRP PMN12100
000B 4810 91 | BSC - YES,JUMP PMN12110
000C 7005 92 | MDX PR020 NO,CHK.TRANS.COMPL.INTRP PMN12120
000D 74FF 0032 93 | MDX L $IOCT,-1 DECREMENT IOCS CNTR 2-2 PMN12130
000F 1000 94 | NOP IN CASE OF NO SKIP 2-2 PMN12140
0010 1810 95 | SRA 16 *YES,TURN OFF PROG.BUSY* PMN12150
0011 D204 96 | STO 2 $PBSY-50 *INDICATOR * PMN12160
0012 C011 97 | PR020 LD PR060 CHK FOR PMN12170
0013 1001 98 | SLA 1 TRANS.COMP.INTRPT PMN12180
0014 4810 99 | BSC - YES,GO MAKE PBUSY NEGATIVE PMN12190
0015 7005 100 | MDX PR040 NO,GO CHK FOR CHANNEL 12 PMN12200
0016 D204 101 | STO 2 $PBSY-50 I/O AREA FREE TO CHANGE PMN12210
0017 0812 102 | PR030 XIO PR100 *TEST FOR* PMN12220
0018 4804 103 | BSC E *PRINTER * PMN12230
0019 7007 104 | MDX PR050 *READY * PMN12240
001A 080D 105 | XIO PR090 INITIATE SPACE PMN12250
001B C008 106 | PR040 LD PR060 * SET CHANNEL 12 * PMN12260
001C 100C 107 | SLA 12 * SWITCH IF * PMN12270
001D 4810 108 | BSC - * CHANNEL 12 * PMN12280
001E 70E6 109 | MDX PR010-1 * INDICATOR * PMN12290
001F D24E 110 | STO 2 $1403-50 * IS ON. * PMN12300
0020 70E4 111 | MDX PR010-1 EXIT PMN12310
0021 C008 112 | PR050 LD PR100 LOAD NOT READY ERROR CODE PMN12320
0022 425B 113 | BSI 2 $PST4-50 TO POST -OPERATIVE ER TRAP PMN12330
0023 70F3 114 | MDX PR030 TRY AGAIN PMN12340
115 | * PMN12350
116 | *SYSTEM EQUATES PMN12360
117 | * PMN12370
118 | * PMN12380
0024 119 | BSS E 0 PMN12390
0024 0000 120 | PR060 DC 0 WORD TO SAVE DSW PMN12400
0025 AF01 121 | PR070 DC /AF01 WITH RESET PMN12410
0026 0000 122 | PR080 DC *-* PR390 ADDRESS OF OUTPUT AREA PMN12420
0027 AD00 123 | DC /AD00 IOCC FOR PRINT PMN12430
0028 0800 124 | PR090 DC /0800 USE THIS WD.FOR CHAN SKIP PMN12440
0029 AC00 125 | DC /AC00 IOCC FOR SPACE PMN12450
002A 9000 126 | PR100 DC /9000 NOT READY ERROR CODE PMN12460
002B AF00 127 | PR110 DC /AF00 SENSE WITHOUT RESET PMN12470
002C FF00 128 | PR120 DC /FF00 CON.TO ELIM.RIGHT 8 BITS PMN12480
129 | * PMN12490
130 | * PMN12500
002D D00A 131 | PR130 STO PR150 STORE FUNCTION CODE PMN12510
002E 694D 132 | STX 1 PR230+1 SAVE XR1 PMN12520
002F 6A4E 133 | STX 2 PR240+1 SAVE XR2 PMN12530
0030 6B4F 134 | STX 3 PR250+1 SAVE XR3 PMN12540
135 | * PMN12550
136 | *GO TO EXECUTE ONE TIME INITIALIZATIONS PMN12560
137 | * PMN12570
0031 707E 138 | PR140 MDX PR490 SWITCH INSTRUCTION PMN12580
139 | * PMN12590
0032 18D0 140 | RTE 16 ADDR.OF I/O AREA TO A REG. PMN12600
0033 D01F 141 | STO PR190+2 STORE IT IN INSTRUCTION PMN12610
0034 D05C 142 | STO PR290+1 FOR RETURN FROM CHN SKIP PMN12620
0035 D001 143 | STO *+1 *WORD COUNT* PMN12630
0036 6780 0000 144 | LDX I3 *-* *TO XR3 * PMN12640
145 | * PMN12650
0038 1000 146 | PR150 NOP BR TO PRINT, SKIP OR SPACE PMN12660
0039 705D 147 | MDX PR330 BRANCH TO SKIP SUBROUTINE PMN12670
003A 7007 148 | MDX PR160 GO TO PRINT A LINE PMN12680
003B 4063 149 | BSI PR340 IMMEDIATE SPACE PMN12690
003C 6C00 0036 150 | STX L0 $PBSY SET PROG.BUSY IND PMN12700
003E 08E9 151 | XIO PR090 INIT SPACE AND GO PMN12710
003F 703B 152 | MDX PR230 RESTORE REGISTERS AND EXIT PMN12720
153 | * 2-9 PMN12730
0040 C0E9 154 | PR155 LD PR100 LD NOT READY CODE /9000 2-9 PMN12740
0041 42EC 155 | BSI 2 $PRET-60 BR TO DISPLAY 2-9 PMN12750
156 | * PMN12760
157 | *CHECK IF THE TRANSFER COMPLETE INTERRUPT HAS BEEN PMN12770
158 | *RECEIVED,I.E.,LOOP TILL PBUSY GOES NEGATIVE.THEN PMN12780
159 | *CLEAR THE PRINTER OUTPUT AREA TO BLANKS PMN12790
160 | * PMN12800
0042 623C 161 | PR160 LDX 2 +60 NO. OF WDS. TO CLEAR=60 PMN12810
0043 08E6 162 | PR165 XIO PR110-1 SENSE DSW W/O RESET 2-9 PMN12820
0044 4804 163 | BSC E SKIP IF READY 2-9 PMN12830
0045 70FA 164 | MDX PR155 BR TO DISP NOT READY 2-9 PMN12840
0046 C2FA 165 | LD 2 $PBSY-60 LOOP TILL PBUSY IS NEG.OR PMN12850
0047 4830 166 | BSC Z- ZERO,MEANS I/O AREA,PR330 PMN12860
0048 70FA 167 | MDX PR165 IS FREE TO BE ALTERED PMN12870
0049 C04A 168 | LD PR310 LOAD BLANKS PMN12880
004A D600 0000 169 | PR170 STO L2 *-* PR390-1 CLEAR WORD PMN12890
004C 72FF 170 | MDX 2 -1 NEXT WORD,ARE WE DONE PMN12900
004D 70FC 171 | MDX PR170 NO,LOOP,YES START CONV PMN12910
172 | * PMN12920
173 | * PMN12930
174 | *PICK UP ONE WORD--2 CHARS-- FROM USERS I/O AREA PMN12940
175 | *CONVERT TO 1403 CODE FROM EBC AND STORE IN PMN12950
176 | *PRINTER OUTPUT AREA PMN12960
177 | * PMN12970
004E 6100 178 | PR180 LDX 1 0 INITIALIZE RIGHT-LEFT IND- PMN12980
004F 6600 0000 179 | LDX L2 *-* PR460 XR2=TABLE ADDRESS PMN12990
0051 10A0 180 | PR190 SLT 32 CLEAR ACC AND EXT PMN13000
0052 C700 0000 181 | LD L3 *-* LOAD WORD FROM USER AREA PMN13010
0054 1100 182 | SLA 1 SHIFT 8 OR NO-OP PMN13020
0055 E0D6 183 | AND PR120 ELIMINATE RIGHT HALF PMN13030
0056 4810 184 | BSC - SPECIAL CHAR.IF NOT NEG. PMN13040
0057 702B 185 | MDX PR270 GO PROCESS SPECIAL CHAR PMN13050
0058 1002 186 | SLA 2 1ST OR 2ND HALF OF TABLE PMN13060
0059 4802 187 | BSC C *UPPER CASE * PMN13070
005A 7001 188 | MDX *+1 *CHARACTERS * PMN13080
005B 7026 189 | MDX PR270-1 *TREATED AS BLANKS * PMN13090
005C 4808 190 | BSC + 1ST HALF REQUIRED,SKIP PMN13100
005D 720A 191 | MDX 2 10 2ND HALF REQUIRED, SET XR2 PMN13110
005E 1002 192 | SLA 2 SET CARRY IF RT.HALF TABLE PMN13120
005F 180C 193 | SRA 12 MOVE TO RT.HAND SIDE PMN13130
0060 D001 194 | STO *+1 COMPUTE TABLE INCREMENT PMN13140
0061 C600 0000 195 | PR200 LD L2 *-* LOAD 2-1403 CHARACTERS PMN13150
0063 4802 196 | BSC C CHK.CARRY FOR RT.OR LEFT PMN13160
0064 1008 197 | SLA 8 ISOLATE AND LEFT JUSTIFY PMN13170
0065 1808 198 | SRA 8 THE CHARACTER REQUIRED PMN13180
0066 1888 199 | SRT 8 SAVE CHARACTER PMN13190
0067 C0FA 200 | LD PR200+1 CHK.VALIDITY OF ORIGINAL PMN13200
0068 902D 201 | S PR260 EBC HALF CHAR.TREAT AS PMN13210
0069 4810 202 | BSC - SPECIAL IF GREATER PMN13220
006A 7017 203 | MDX PR270-1 THAN 9 PMN13230
006B 1090 204 | PR210 SLT 16 BRING BACK CHAR.SAVED PMN13240
006C 1900 205 | SRA 1 CHAR MOVES RT OR STAYS PUT PMN13250
006D 7100 206 | MDX 1 0 IS CHAR.RIGHT OR LEFT PMN13260
006E 7003 207 | MDX PR220 *RIGHT, GO TO WORD PMN13270
006F D0C8 208 | STO PR380 *LEFT, STORE IN TEMP LOC PMN13280
0070 7108 209 | MDX 1 8 SET XR1 FOR RIGHT SIDE PMN13290
0071 70DD 210 | MDX PR190-2 GO PROCESS RIGHT SIDE CHAR PMN13300
0072 E8C5 211 | PR220 OR PR380 COMBINE RIGHT-LEFT CHARS PMN13310
0073 D700 0000 212 | STO L3 *-* PR390-1 STORE IN PRINTER I/O AREA PMN13320
0075 73FF 213 | MDX 3 -1 NEXT WORD,ARE WE FINISHED PMN13330
0076 70D7 214 | MDX PR180 NO,GO PROCESS NEXT WORD. PMN13340
215 | * PMN13350
216 | * CHECK IF PRINTER READY AND NOT BUSY PMN13360
217 | * PMN13370
0077 4027 218 | BSI PR340 TO PRINTER BUSY ROUTINE PMN13380
0078 6C00 0036 219 | STX L $PBSY SET BUSY INDICATOR PMN13390
007A 08AB 220 | XIO PR080 INITIATE PRINT PMN13400
221 | * PMN13410
222 | * RESTORE XR1,2 AND 3 PMN13420
223 | * PMN13430
007B 6500 0000 224 | PR230 LDX L1 *-* RESTORE INDEX REGISTER 1 PMN13440
007D 6600 0000 225 | PR240 LDX L2 *-* RESTORE INDEX REGISTER 2 PMN13450
007F 6700 0000 226 | PR250 LDX L3 *-* RESTORE INDEX REGISTER 3 PMN13460
0081 7080 227 | MDX PR000 EXIT TO USERS ROUTINE PMN13470
228 | * PMN13480
229 | * PMN13490
230 | * PMN13500
231 | * ROUTINE TO CONVERT SPECIAL CHARATERS PMN13510
232 | * PMN13520
0082 C011 233 | LD PR310 FORCE BLANK CHARACTER PMN13530
0083 D01B 234 | PR270 STO PR340 STORE CHAR.IN TEMP.LOC. PMN13540
0084 620F 235 | LDX 2 15 XR2 = SPEC. TABLE CNT 212 PMN13550
0085 10A0 236 | PR280 SLT 32 CLEAR EXTENSION PMN13560
0086 C600 0000 237 | LD L2 *-* PR460+19 LD.CHAR FROM SPEC.TABLE PMN13570
0088 1888 238 | SRT 8 SAVE 1403 CHAR IN EXT PMN13580
0089 1008 239 | SLA 8 LEFT JUSTIFY EBC CHAR PMN13590
008A 9014 240 | S PR340 IS IT CHAR.WE WANT PMN13600
008B 4818 241 | BSC +- NO,SKIP PMN13610
008C 70DE 242 | MDX PR210 YES,GO GET 1403 EQUIVALENT PMN13620
008D 72FF 243 | MDX 2 -1 NEXT WORD IN TABLE PMN13630
008E 70F6 244 | MDX PR280 LOOP PMN13640
008F 70DB 245 | MDX PR210 NOT IN TABLE,TREAT AS BLK PMN13650
246 | * PMN13660
0090 247 | BSS E 0 PMN13670
0090 7001 248 | PR290 DC /7001 CALLING SEQUENCE FOR PMN13680
0091 0000 249 | DC *-* PRINTING A LINE PMN13690
0092 0000 250 | PR300 DC *-* PR370 ADDR OF CONTROL WORD PMN13700
0093 A900 251 | DC /A900 SKIP IOCC PMN13710
0094 7F7F 252 | PR310 DC /7F7F 1403 BLANK CHARACTERS PMN13720
0095 4040 253 | PR320 DC /4040 EBC BLANK CHAR--ODD LOC PMN13730
0096 000A 254 | PR260 DC 10 CONSTANT PMN13740
255 | * PMN13750
256 | * SKIP TO CHANNEL 1 PMN13760
257 | * PMN13770
0097 4007 258 | PR330 BSI PR340 BR TO CHECK BUSY, READY PMN13780
0098 6204 259 | LDX 2 +4 BIN TO DEC LOOP COUNTER PMN13790
0099 D27C 260 | STO 2 $1403-4 CLEAR CHANNEL 12 SWITCH PMN13800
009A 6C00 0036 261 | STX L0 $PBSY SET PROG.BUSY INDICATOR PMN13810
009C 08F5 262 | XIO PR300 SKIP TO NEW PAGE PMN13820
009D 704C 263 | MDX PR400 GO PROCESS PAGE NO PMN13830
264 | * PMN13840
265 | * CHECK IF PRINTER IS READY AND CARRIAGE NOT BUSY PMN13850
266 | * PMN13860
009E 4C00 0000 267 | BSC L *-* RETURN PMN13870
009F 268 | PR340 EQU *-1 PMN13880
00A0 0889 269 | XIO PR110-1 SENSE WITHOUT RESET PMN13890
00A1 4804 270 | BSC E TEST FOR PMN13900
00A2 7006 271 | MDX PR350 PRINTER NOT READY PMN13910
00A3 100D 272 | SLA 13 *LOOP * PMN13920
00A4 4820 273 | BSC Z * IF * PMN13930
00A5 70FA 274 | MDX PR340+1 *BUSY * PMN13940
00A6 7401 0032 275 | MDX L $IOCT,1 INCREMENT IOCS CNTR 2-2 PMN13950
00A8 70F5 276 | MDX PR340-1 * * PMN13960
00A9 C080 277 | PR350 LD PR100 LD.NOT READY ER.CODE PMN13970
00AA 4400 0028 278 | BSI L $PRET EXIT TO IOCS SOFT ER.TRAP PMN13980
00AC 70F3 279 | MDX PR340+1 TRY AGAIN PMN13990
280 | * PMN14000
00AD 70CD 281 | PR360 MDX PR230 INTERMEDIATE JUMP PMN14010
282 | * PMN14020
283 | * PMN14030
284 | *CHANNEL CONSTANT LOCATED IN 1ST. WORD OF SPACE IOC PMN14040
285 | * PMN14050
0028 286 | PR370 EQU PR090 PMN14060
287 | * PMN14070
288 | *USE WORD FOR TEMPORARY STORAGE PMN14080
289 | * PMN14090
0038 290 | PR380 EQU PR150 PMN14100
291 | * PMN14110
292 | * PMN14120
00AE 293 | PR390 BSS 60 PRINTER OUTPUT AREA PMN14130
294 | * PMN14140
295 | * PMN14150
296 | * CONVERT BINARY PAGE COUNT(PGCNT IN COMMA) TO PMN14160
297 | * PACKED EBCDIC DECIMAL CHARACTERS AND INSERT IN PMN14170
298 | * USERS PRINT AREA IN POSITIONS 5-8 (WORDS 3 AND 4 PMN14180
299 | * OF PRINT BUFFER) WITH ZERO SUPPRESSION. PMN14190
300 | * PMN14200
00EA 6780 0000 301 | PR400 LDX I3 *-* PR190+2 XR3=ADDR OF USER I/O BFR PMN14210
00EC C233 302 | LD 2 $PGCT-4 BINARY PAGE COUNT PMN14220
00ED 1890 303 | SRT 16 CONVERT TO DECIMAL BY PMN14230
00EE A8A7 304 | PR410 D PR260 REPETITIVE DIVISION BY 10 PMN14240
00EF 18D0 305 | RTE 16 OR IN /00F0 TO REMAINDER PMN14250
00F0 E81F 306 | OR PR450 TO GET EBC CHAR.FOR EACH PMN14260
00F1 D306 307 | STO 3 6 POSITION.STORE IN I/O BFR PMN14270
00F2 1010 308 | SLA 16 PMN14280
00F3 73FF 309 | MDX 3 -1 NEXT POSITION IN BUFFER PMN14290
00F4 72FF 310 | MDX 2 -1 DECR.LOOP COUNTER PMN14300
00F5 70F8 311 | MDX PR410 CONTINUE CONVERSION PMN14310
312 | * PMN14320
313 | * REPLACE LEADING ZEROS WITH BLANKS PMN14330
314 | * PMN14340
00F6 C307 315 | PR420 LD 3 +7 CHECK CHARACTER FOR PMN14350
00F7 F018 316 | EOR PR450 /00F0.REPLACE WITH BLANK PMN14360
00F8 4820 317 | BSC Z BRANCH IF PMN14370
00F9 7004 318 | MDX PR430 CHARACTER NOT ZERO PMN14380
00FA C09A 319 | LD PR320 REPLACE ZERO WITH PMN14390
00FB D307 320 | STO 3 +7 EBC BLANK CHAR. PMN14400
00FC 7301 321 | MDX 3 +1 NEXT CHAR PMN14410
00FD 70F8 322 | MDX PR420 CONTINUE SCAN FOR ZEROS PMN14420
323 | * PMN14430
324 | *PACK THE 4 CHARACTER EBC PAGE COUNT INTO 2 WORDS PMN14440
325 | * PMN14450
00FE 6780 0000 326 | PR430 LDX I3 *-* PR190+2 XR3=ADDR OF USER I/O BFR PMN14460
0100 C304 327 | PR440 LD 3 +4 *PACK THE * PMN14470
0101 1888 328 | SRT 8 *EBCDIC CHARACTERS * PMN14480
0102 C303 329 | LD 3 +3 *TWO PER WORD--1ST * PMN14490
0103 1088 330 | SLT 8 *TWO CHARACTERS * PMN14500
0104 D303 331 | STO 3 3 STORE PACKED CHARS IN I/O PMN14510
0105 C306 332 | LD 3 +6 *REPEAT * PMN14520
0106 1888 333 | SRT 8 *FOR * PMN14530
0107 C305 334 | LD 3 +5 *NEXT * PMN14540
0108 1088 335 | SLT 8 *TWO * PMN14550
0109 D304 336 | STO 3 4 *CHARACTERS* PMN14560
010A C88A 337 | LDD PR320 BLANK OUT PMN14570
010B DB05 338 | STD 3 5 2 WDS. OF USER I/O AREA PMN14580
339 | * PMN14590
340 | * INCREMENT PAGE COUNT BY ONE AND SET UP NEW PMN14600
341 | * CALLING SEQUENCE FOR USER TO PRINT HEADER RECORD PMN14610
342 | * PMN14620
010C 7401 0037 343 | MDX L $PGCT,1 PMN14630
010E C881 344 | LDD PR290 LD CALLING SEQ.FOR PRINT PMN14640
010F 709D 345 | MDX PR360 RESTORE REGISTERS AND EXIT PMN14650
346 | * PMN14660
347 | * CONSTANT USED IN BINARY TO DECIMAL CONVERSION PMN14670
348 | * OF PAGE COUNT. PMN14680
349 | * PMN14690
0110 00F0 350 | PR450 DC /00F0 CONSTANT TO CREATE EBC CHAR PMN14700
351 | * PMN14710
352 | * TABLE OF 1403 CHARACTERS--ALPHABETICS AND NUMERIC PMN14720
353 | * PMN14730
0111 7F7F 354 | PR460 DC /7F7F BLANK BLANK PMN14740
0112 6458 355 | DC /6458 A J PMN14750
0113 2519 356 | DC /2519 B K PMN14760
0114 261A 357 | DC /261A C L PMN14770
0115 675B 358 | DC /675B D M PMN14780
0116 681C 359 | DC /681C E N PMN14790
0117 295D 360 | DC /295D F O PMN14800
0118 2A5E 361 | DC /2A5E G P PMN14810
0119 6B1F 362 | DC /6B1F H Q PMN14820
011A 2C20 363 | DC /2C20 I R PMN14830
364 | * PMN14840
365 | * SECOND HALF OF TABLE PMN14850
366 | * PMN14860
011B 7F49 367 | DC /7F49 0 PMN14870
011C 7F40 368 | DC /7F40 1 PMN14880
011D 0D01 369 | DC /0D01 S 2 PMN14890
011E 0E02 370 | DC /0E02 T 3 PMN14900
011F 4F43 371 | DC /4F43 U 4 PMN14910
0120 1004 372 | DC /1004 V 5 PMN14920
0121 5145 373 | DC /5145 W 6 PMN14930
0122 5246 374 | DC /5246 X 7 PMN14940
0123 1307 375 | DC /1307 Y 8 PMN14950
0124 5408 376 | DC /5408 Z 9 PMN14960
377 | * PMN14970
378 | *SPECIAL CHARACTER TABLE.EBC CODE IN LEFT SIDE, PMN14980
379 | *1403 EQUIVALENT IN RIGHT PMN14990
380 | * PMN15000
0125 407F 381 | PR470 DC /407F BLANK PMN15010
0126 7E4A 382 | DC /7E4A EQUAL PMN15020
0127 7D0B 383 | DC /7D0B APOSTROPHE PMN15030
0128 614C 384 | DC /614C SLASH PMN15040
0129 5015 385 | DC /5015 AMPERSAND PMN15050
012A 6B16 386 | DC /6B16 COMMA PMN15060
012B 4D57 387 | DC /4D57 LEFT PAREN PMN15070
012C 6061 388 | DC /6061 MINUS PMN15080
012D 5B62 389 | DC /5B62 DOLLAR PMN15090
012E 5C23 390 | DC /5C23 ASTERISK PMN15100
012F 4E6D 391 | DC /4E6D PLUS PMN15110
0130 4B6E 392 | DC /4B6E PERIOD PMN15120
0131 5D2F 393 | DC /5D2F RIGHT PAREN PMN15130
0132 7C0B 394 | DC /7C0B AT SIGN = APOSTROPHE 212 PMN15133
0133 7B4A 395 | DC /7B4A POUND SIGN = EQUAL 212 PMN15136
396 | * PMN15140
397 | * PATCH AREA PMN15150
398 | * PMN15160
0134 1234 399 | DC /1234 INDICATING END OF PATCH AREA PMN15170
0135 5678 400 | PR475 DC /5678 2-9 PMN15180
401 | * PMN15190
402 | *ONE TIME INITIALIZATIONS STORED IN THE PRINTER PMN15200
403 | *OUTPUT AREA. THESE INSTRUCTIONS SET UP WORDS PMN15210
404 | *THAT ARE RELOCATABLE. PMN15220
405 | * PMN15230
00AE 406 | ORG PR390 PMN15240
00AE D082 407 | PR480 STO PR140 MAKE INSTRUCTION A NOP PMN15250
00AF 7082 408 | MDX PR140+1 RESUME PROCESSING PMN15260
00B0 6801 409 | PR490 STX *+1 STORE I-COUNTER PMN15270
00B1 6600 0000 410 | LDX L2 *-* XR2=PR490+1 PMN15280
00B3 7600 FF77 411 | MDX L2 PR370-PR490-1 XR2=PR370 PMN15290
00B5 6ADC 412 | STX 2 PR300 INIT PR300 TO PR370 PMN15300
413 | * PMN15310
00B6 72FE 414 | MDX 2 PR080-PR370 XR2=PR080 PMN15320
00B7 6A0B 415 | STX 2 PR500+1 INIT PR500+1 TO PR080 PMN15330
416 | * PMN15340
00B8 7600 00EB 417 | MDX L2 PR460-PR080 XR2=PR460 PMN15350
00BA 6A95 418 | STX 2 PR180+2 INIT PR180+2 TO PR460 PMN15360
419 | * PMN15370
00BB 7213 420 | MDX 2 19 XR2=PR460+19 PMN15380
00BC 6ACA 421 | STX 2 PR280+2 INIT PR280+2 TO PR460+19 PMN15390
422 | * PMN15400
00BD 7600 FF89 423 | MDX L2 PR390-1-PR460-19 XR2=PR390-1 PMN15410
00BF 6A8B 424 | STX 2 PR170+1 INIT PR170+1 TO PR390-1 PMN15420
00C0 6AB3 425 | STX 2 PR220+2 INIT PR220+2 TO PR390-1 PMN15430
426 | * PMN15440
00C1 7201 427 | MDX 2 +1 XR2=PR390 PMN15450
00C2 6E00 0000 428 | PR500 STX L2 *-* PR080 INIT PR080 TO PR390 PMN15460
429 | * PMN15470
00C4 72A5 430 | MDX 2 PR190+2-PR390 XR2=PR190+2 PMN15480
00C5 6A25 431 | STX 2 PR400+1 INIT PR400+1 TO PR190+2 PMN15490
00C6 6A38 432 | STX 2 PR430+1 INIT PR430+1 TO PR190+2 PMN15500
433 | * PMN15510
00C7 C001 434 | LD PR510 LOAD NOP INSTRUCTION PMN15520
00C8 70E5 435 | MDX PR480 GO STORE NOP,RESUM PROC. PMN15530
00C9 1000 436 | PR510 NOP NOP CONSTANT PMN15540
SYSTEM 1132 SUBROUTINE
438 | *************************************************** PMN15560
439 | *STATUS-VERSION 2, MODIFICATION 10 * PMN15570
440 | * * PMN15580
441 | *FUNCTION/OPERATION- * PMN15590
442 | * * PRINT WITH SINGLE SPACE AFTER PRINTING * PMN15600
443 | * * SKIP TO CHANNEL 1 * PMN15610
444 | * * IMMEDIATE SINGLE SPACE * PMN15620
445 | * * PMN15630
446 | *ENTRY POINTS- * PMN15640
447 | * * PN000+1 IS THE USER ENTRY * PMN15650
448 | * * PN010+1 IS THE INTERRUPT ENTRY * PMN15660
449 | * * PMN15670
450 | *INPUT- * PMN15680
451 | * * SKIP TO CHANNEL 1 * PMN15690
452 | * ACC = 7000 * PMN15700
453 | * EXT = ADDRESS OF I/O AREA (WORD COUNT) * PMN15710
454 | * THIS ADDRESS MUST BE ODD SO THAT FIRST * PMN15720
455 | * DATA WORD OF I/O AREA WILL BE AT AN * PMN15730
456 | * EVEN ADDRESS * PMN15740
457 | * * PRINT * PMN15750
458 | * ACC = 7001 * PMN15760
459 | * EXT = ADDRESS OF I/O AREA (WORD COUNT) * PMN15770
460 | * * SPACE * PMN15780
461 | * ACC = 7002 * PMN15790
462 | * * PMN15800
463 | *OUTPUT- * PMN15810
464 | * * A CARRIAGE SKIP TO CHANNEL 1 IS EXECUTED, * PMN15820
465 | * AND THE BINARY JOB PAGE COUNT ($PGCT) IS * PMN15830
466 | * CONVERTED TO DECIMAL IN THE USERS * PMN15840
467 | * I/O AREA. THE ACCUMULATOR AND EXTENSION * PMN15850
468 | * IS SET UP TO PRINT OUT OF THE SAME * PMN15860
469 | * I/O AREA BEFORE RETURNING TO THE USER * PMN15870
470 | * * A LINE IS PRINTED FOLLOWED BY A * PMN15880
471 | * SINGLE SPACE * PMN15890
472 | * * THE FORM IS SPACED ONE LINE * PMN15900
473 | * * PMN15910
474 | *EXTERNAL REFERENCES- * PMN15920
475 | * $1132 * PMN15930
476 | * $IOCT 2-2 * PMN15940
477 | * $PBSY * PMN15950
478 | * $PGCT * PMN15960
479 | * $PRET * PMN15970
480 | * * PMN15980
481 | *EXITS- * PMN15990
482 | * NORMAL- * PMN16000
483 | * * SUBROUTINE RETURNS TO USER AFTER * PMN16010
484 | * FUNCTION HAS BEEN INITIATED * PMN16020
485 | * * SUBROUTINE RETURNS TO POINT OF * PMN16030
486 | * INTERRUPTION AFTER AN INTERRUPT * PMN16040
487 | * (LEVEL 1) HAS BEEN SERVICED * PMN16050
488 | * ERROR * PMN16060
489 | * * $PRET WITH 6000 IN THE ACCUMULATOR WHEN * PMN16070
490 | * THE 1132 IS NOT READY TO INITIATE * PMN16080
491 | * A FUNCTION * PMN16090
492 | * * SUBROUTINE RETURNS TO USER WITH $1132 * PMN16100
493 | * SET NON-ZERO IF CHANNEL 12 IS SENSED * PMN16110
494 | * AFTER PRINTING * PMN16120
495 | * * PMN16130
496 | *TABLES/WORK AREAS-N/A * PMN16140
497 | * * PMN16150
498 | *ATTRIBUTES- * PMN16160
499 | * * NATURALLY RELOCATABLE * PMN16170
500 | * * SERIALLY REUSEABLE * PMN16180
501 | * * PMN16190
502 | *NOTES- * PMN16200
503 | * * THE ONLY ERROR DETECTED WITH THE 1132 * PMN16210
504 | * IS A PRINT SCAN CHECK. WHEN THIS OCCURS, * PMN16220
505 | * THE SUBROUTINE TAKES 47 IDLE PRINT CYCLES * PMN16230
506 | * BEFORE RETRYING THE CHARACTER ON WHICH THE * PMN16240
507 | * CHECK OCCURED. * PMN16250
508 | * * PMN16260
509 | * * PMN16270
510 | * *THIS ROUTINE WAS COMPLETELY REPLACED IN MOD 9* PMN16280
511 | * * PMN16290
512 | *************************************************** PMN16300
SYSTEM DEVICE SUBROUTINE FOR 1132
0000 514 | ORG 0 PMN16315
*SBRK 8D 515 | *SYS 1132 PMN16317
0000 0115 516 | DC PNEND-*+1 WORDCOUNT OF THIS PHASE PMN16320
0001 008D 517 | DC @1132 ID OF THIS PHASE PMN16330
SYSTEM DEVICE SUBROUTINE FOR 1132
519 | *************************************************** PMN16350
520 | * B S I E N T R Y P O I N T * PMN16360
521 | *************************************************** PMN16370
522 | * PMN16380
0002 4C00 0000 523 | PN000 BSC L *-* BSI IS TO SECOND WORD PMN16390
0004 7010 524 | MDX PN001 BR TO PROCESS REQUEST PMN16400
525 | * PMN16410
526 | * PMN16420
527 | * PMN16430
528 | *************************************************** PMN16440
529 | * I N T E R R U P T E N T R Y P O I N T * PMN16450
530 | *************************************************** PMN16460
531 | * PMN16470
0005 4C40 0000 532 | PN500 BOSC L *-* RETURN AND RESET LEVEL 1 PMN16480
0007 6959 533 | STX 1 PN591+1 SAVE INDEX 1 PMN16490
0008 6A5A 534 | STX 2 PN592+1 SAVE INDEX 2 PMN16500
0009 6B5B 535 | STX 3 PN593+1 SAVE INDEX 3 PMN16510
000A 285B 536 | STS PN594 SAVE STATUS PMN16520
000B D802 537 | STD PN595 SAVE ACC/EXT PMN16530
000C 7052 538 | MDX PN499 HOP AND JUMP TO PROCESS PMN16540
539 | * PMN16550
540 | * CERTAIN CONVENIENT CONSTANTS PMN16560
541 | * PMN16570
000D 4040 542 | PN064 DC /4040 EBCDIC MASK PMN16580
000E 543 | BSS E 0 PMN16590
544 | * PMN16600
000E 0000 0000 545 | PN595 DEC 0 SAVE ACC/EXT FOR LEVEL 1 PMN16610
0010 7001 546 | PN070 DC /7001 FOR AFTER EJECT PMN16620
0011 0000 547 | DC *-* HOLD ADDR OF COUNT PMN16630
0012 00F0 548 | PN240 DC /00F0 PMN16640
0013 000A 549 | PN910 DC 10 CONSTANT 10 PMN16650
0014 1600 550 | PN916 DC /1600 MASK FOR TEST READY/BUSY PMN16660
551 | * PMN16670
552 | * PMN16680
553 | * PMN16690
554 | *************************************************** PMN16700
555 | * P R O C E S S I N G O F T H E B S I * PMN16710
556 | *************************************************** PMN16720
557 | * PMN16730
0015 558 | PN001 EQU * PMN16740
559 | * PMN16750
560 | * SAVE INDEX REGISTERS FIRST PMN16760
561 | * PMN16770
0015 6945 562 | STX 1 PN091+1 SAVE INDEX 1 PMN16780
0016 6A46 563 | STX 2 PN092+1 SAVE INDEX 2 PMN16790
564 | * PMN16800
565 | * NOW SAVE THE FUNCTION CODE AS AN MDX PMN16810
566 | * PMN16820
0017 D017 567 | STO PN010 SAVE AS MDX *, *+1, *+2 PMN16830
568 | * PMN16840
569 | * NOW BE SURE THE ROUTINE IS FREE PMN16850
570 | * PMN16860
0018 6236 571 | LDX 2 $PBSY POINT TO BUSY INDICATOR PMN16870
0019 C200 572 | LD 2 0 GET BUSY INDICATOR PMN16880
001A 4820 573 | BSC Z PMN16890
001B 70FD 574 | MDX *-3 ELSE DWELL UNTIL FREE PMN16900
575 | * PMN16910
576 | * ROUTINE IS FREE -- SET IT BUSY AND SAVE ADDRESS PMN16920
577 | * PMN16930
001C C0FF 578 | LD *-1 GET A NEGATIVE PMN16940
001D D200 579 | STO 2 0 SET $PBSY=ROUT BSY/BUF NOT PMN16950
001E 1090 580 | SLT 16 ADDRESS TO ACC PMN16960
001F D001 581 | STO *+1 PMN16970
0020 6500 0000 582 | LDX L1 *-* X1=ADDR(COUNT) PMN16980
0021 583 | PN005 EQU *-1 PMN16990
0022 D0EE 584 | STO PN070+1 SAVE IN CASE EJECT PMN17000
585 | * PMN17010
586 | * NOW BE SURE THE PRINTER IS READY PMN17020
587 | * PMN17030
0023 087A 588 | PN007 XIO PN900 SENSE NO RESET PMN17040
0024 E0EF 589 | AND PN916 ISOLATE BOTH UNREADY+BUSY PMN17050
0025 4818 590 | BSC +- SKIP IF ANY HANGUP PMN17060
0026 7006 591 | MDX PN009 ALL READY--SET I/O COUNTER PMN17070
0027 1005 592 | SLA 5 NOT READY BIT TO BIT 0 PMN17080
0028 4810 593 | BSC - SKIP IF NOT READY PMN17090
0029 70F9 594 | MDX PN007 JUST BUSY--LOOP PMN17100
002A C079 595 | LD PN906 /6000--CODE FOR PRE-OP ERR PMN17110
002B 42F2 596 | BSI 2 $PRET-$PBSY GO TO PRE-OP ERROR TRAP PMN17120
002C 70F6 597 | MDX PN007 WHEN RETURN, TEST AGAIN PMN17130
598 | * PMN17140
599 | * WE ARE GOING TO START I/O. SET THE I/O COUNTER PMN17150
600 | * PMN17160
002D 7401 0032 601 | PN009 MDX L $IOCT,+1 INCR THE MASTER I/O COUNT PMN17170
602 | * PMN17180
603 | * NOW BRANCH TO APPROPRIATE ACTION ROUTINE PMN17190
604 | * PMN17200
002F 0000 605 | PN010 DC *-* SET TO MDX *, *+1,*+2 PMN17210
606 | * PMN17220
0030 7003 607 | MDX PN011 SKIP TO 1 PMN17230
0031 7037 608 | MDX PN120 PRINT PMN17240
609 | * PMN17250
610 | * PMN17260
611 | * PMN17270
612 | *************************************************** PMN17280
613 | * E X E C U T E S P A C E R E Q U E S T * PMN17290
614 | *************************************************** PMN17300
615 | * PMN17310
0032 0877 616 | PN100 XIO PN988 START THE CARRIAGE SPACE PMN17320
0033 7026 617 | MDX PN091 START THE RETURN TO CALLER PMN17330
619 | *************************************************** PMN17350
620 | * E X E C U T E E J E C T R E Q U E S T * PMN17360
621 | *************************************************** PMN17370
622 | * PMN17380
623 | * FIRST, CLEAR OFLO INDIC. ACC IS ALREADY ZERO AND PMN17390
624 | * INDEX 2 NOW POINTS TO $PBSY IN COMMA. PMN17400
625 | * PMN17410
0034 D249 626 | PN011 STO 2 $1132-$PBSY SET OFLO INDIC = 0 PMN17420
627 | * PMN17430
628 | * NOW START THE SKIP PMN17440
629 | * PMN17450
0035 086C 630 | XIO PN933 START SKIP PMN17460
631 | * PMN17470
632 | * NOW CONVERT AND INCREMENT THE PAGE NUMBER PMN17480
633 | * PMN17490
0036 C201 634 | LD 2 $PGCT-$PBSY GET PAGE NO. IN BINARY PMN17500
0037 7401 0037 635 | MDX L $PGCT,+1 INCREMENT FOR NEXT TIME PMN17510
0039 6204 636 | LDX 2 4 PMN17520
003A 1890 637 | SRT 16 MAKE INTO A DIVIDEND PMN17530
003B 1804 638 | PN013 SRA 4 PMN17540
003C D0F2 639 | STO PN010 STORE CURRENT ACCUM PMN17550
003D 1010 640 | SLA 16 PMN17560
003E A8D4 641 | D PN910 DIVIDE BY 10 PMN17570
003F 18D0 642 | RTE 16 PMN17580
0040 100C 643 | SLA 12 RMDR TO UPPER ACCUM PMN17590
0041 E8ED 644 | OR PN010 OR PREV ACCUMULATION PMN17600
0042 72FF 645 | MDX 2 -1 PMN17610
0043 70F7 646 | MDX PN013 DO MORE IF NOT DONE PMN17620
647 | * PMN17630
0044 7105 648 | MDX 1 +5 X1=ADDR(PAGENO)+2 PMN17640
0045 6910 649 | STX 1 PN016+1 SET INTO STORE INSTR PMN17650
0046 1890 650 | SRT 16 PMN17660
0047 62FE 651 | LDX 2 -2 MAJOR CYCLE COUNT PMN17670
0048 2000 652 | LDS 0 SET OVERFLOW OFF PMN17680
0049 6102 653 | PN014 LDX 1 2 SET MINOR CYCLE COUNT PMN17690
004A 1010 654 | SLA 16 CLEAR PMN17700
004B 1004 655 | PN015 SLA 4 PMN17710
004C 1084 656 | SLT 4 PMN17720
004D 4818 657 | BSC +- SKIP TO SET F-ZONE IF NONZ PMN17730
004E 4801 658 | BSC O SKIP IF OFLO OFF--RESETS O PMN17740
004F E8C2 659 | OR PN240 NON-ZERO--OR /00F0 PMN17750
0050 4820 660 | BSC Z SKIP IF STILL ZERO PMN17760
0051 2001 661 | LDS 1 IF NON-ZERO, SET OFLO ON PMN17770
0052 71FF 662 | MDX 1 -1 MINOR LOOP PMN17780
0053 70F7 663 | MDX PN015 PMN17790
0054 E8B8 664 | OR PN064 ASSURE EBCDIC--/4040 PMN17800
0055 D600 0000 665 | PN016 STO L2 *-* STORE EBC PAGENO IN HEADR PMN17810
0057 7201 666 | MDX 2 +1 INCR POINTER/COUNT PMN17820
0058 70F0 667 | MDX PN014 PMN17830
668 | * PMN17840
669 | * PAGE NUMBER NOW IN PLACE--SET UP ACC/EXT FOR PRNT PMN17850
670 | * PMN17860
0059 C8B6 671 | LDD PN070 /7001 AND ADDR PMN17870
672 | * PMN17880
673 | * PMN17890
674 | * PMN17900
675 | *************************************************** PMN17910
676 | * RETURN FROM BSI PROCESSING * PMN17920
677 | *************************************************** PMN17930
678 | * PMN17940
005A 6500 0000 679 | PN091 LDX L1 *-* RESTORE INDEX 1 PMN17950
005C 6600 0000 680 | PN092 LDX L2 *-* RESTORE INDEX 2 PMN17960
005E 70A3 681 | MDX PN000 RETURN TO CALLER PMN17970
682 | * PMN17980
683 | * PMN17990
684 | * PMN18000
685 | *************************************************** PMN18010
686 | * FORWARD LINK TO INTERRUPT PROCESSING * PMN18020
687 | *************************************************** PMN18030
688 | * PMN18040
005F 7058 689 | PN499 MDX PN501 BR TO PROCESS INTERRUPT PMN18050
690 | * PMN18060
691 | *************************************************** PMN18070
692 | * PMN18080
693 | * RETURN LINK FROM INTERRUPT PROCESSING * PMN18090
694 | *************************************************** PMN18100
695 | * PMN18110
0060 6500 0000 696 | PN591 LDX L1 *-* RESTORE INDEX 1 PMN18120
0062 6600 0000 697 | PN592 LDX L2 *-* RESTORE INDEX 2 PMN18130
0064 6700 0000 698 | PN593 LDX L3 *-* RESTORE INDEX 3 PMN18140
0066 2000 699 | PN594 LDS 0 RESTORE STATUS PMN18150
0067 C8A6 700 | LDD PN595 RESTORE ACC/EXT PMN18160
0068 709C 701 | MDX PN500 GO TO BRANCH OUT PMN18170
702 | * PMN18180
703 | * PMN18190
704 | * PMN18200
705 | *************************************************** PMN18210
706 | * E X E C U T E P R I N T R E Q U E S T * PMN18220
707 | *************************************************** PMN18230
708 | * PMN18240
709 | * FIRST, ESTABLISH ADDRESS FOR READ EMITTER IOCC PMN18250
710 | * PMN18260
0069 6801 711 | PN120 STX *+1 ADDR(PN120+1) PMN18270
006A 6600 0000 712 | LDX L2 *-* X2=ADDR(PN120+1) PMN18280
006C 723C 713 | MDX 2 PN907-PN120-1 X1=ADDR(PN907) PMN18290
006D 6A3A 714 | STX 2 PN902 SET ADDR INTO READ E IOCC PMN18300
715 | * PMN18310
716 | * NOW SET UP THE ADDRESSES FOR INTERRUPT SIZE AND PMN18320
717 | * FOR THE COUNT OF POTENTIALLY PRINTABLE CHARS PMN18330
718 | * PMN18340
006E 6916 719 | STX 1 PN124+1 SET ADDR IN TEST LOAD INST PMN18350
006F C100 720 | LD 1 0 ACC=WORDCOUNT PMN18360
0070 D001 721 | STO *+1 PMN18370
0071 7500 0000 722 | MDX L1 *-* X1=ADDR(RIGHTMOST WORD) PMN18380
0073 6958 723 | STX 1 PN503+1 SET ADDR IN LDX INSTR PMN18390
0074 D00D 724 | STO PN122+1 SET COUNT INTO LDX INSTR PMN18400
0075 9026 725 | S PN991 PMN18410
0076 1883 726 | SRT 3 COUNT/8--EXT WAS ALL ZERO PMN18420
0077 800B 727 | A PN123 ADD 'LDX 1 1' TO QUOT PMN18430
0078 D054 728 | STO PN504 SET LDX SCAN PTR PMN18440
0079 1010 729 | SLA 16 PMN18450
007A 1084 730 | SLT 4 ACC=2*REMAINDER PMN18460
007B D001 731 | STO *+1 PMN18470
007C 6500 0000 732 | LDX L1 *-* PMN18480
007E C021 733 | LD PN980 GET A /0002 PMN18490
007F 1100 734 | SLA 1 PMN18500
0080 D01C 735 | STO PN905 SAVE THE STOP BIT FOR INT PMN18510
0081 6600 0000 736 | PN122 LDX L2 *-* X2=WORDCOUNT PMN18520
0083 6101 737 | PN123 LDX 1 1 X1=INIT HAMMER COUNT+1 PMN18530
738 | * PMN18540
739 | * NOW COUNT THE NUMBER OF POTENTIALLY PRINTABLE PMN18550
740 | * CHARACTERS PMN18560
741 | * PMN18570
0084 C600 0000 742 | PN124 LD L2 *-* GET WORD FROM AREA PMN18580
0086 8017 743 | A PN940 ADD /BF00 PMN18590
0087 4802 744 | BSC C SKIP IF CHAR /00-/40 PMN18600
0088 7101 745 | MDX 1 +1 INCR HAMMER CNT IF GT /40 PMN18610
0089 1008 746 | SLA 8 SECOND CHAR TO UPPER ACC PMN18620
008A 8013 747 | A PN940 ADD /BF00 PMN18630
008B 4802 748 | BSC C SKIP IF CHAR /00-/40 PMN18640
008C 7101 749 | MDX 1 +1 INCR HAMMER CNT IF GT /40 PMN18650
008D 72FF 750 | MDX 2 -1 DECR AREA POINTER/COUNT PMN18660
008E 70F5 751 | MDX PN124 GET ANOTHER WORD PMN18670
752 | * PMN18680
753 | * IF NO CHARACTERS TO PRINT, DO A SPACE ONLY PMN18690
754 | * PMN18700
008F 6933 755 | STX 1 PN548 SET THE HAMMER COUNTER PMN18710
0090 71FF 756 | MDX 1 -1 SKIP IF NO CHARS GT /40 PMN18720
0091 7001 757 | MDX *+1 NOT ALL LT /40--CONTINUE PMN18730
0092 709F 758 | MDX PN100 JUST DO A SPACE PMN18740
759 | * PMN18750
760 | * NOW START THE PRINTER, THEN RETURN TO CALLER PMN18760
761 | * PMN18770
0093 6231 762 | LDX 2 49 SET MAX CYCLES + 1 PMN18780
0094 6A0D 763 | STX 2 PN949 SET THE 'BIG COUNT' PMN18790
0095 4019 764 | BSI PN520 CLEAR THE SCAN FIELD PMN18800
0096 C005 765 | LD PN991 GET A 1 PMN18810
0097 D2F6 766 | STO 2 $SCAN+7-49 SET SCAN COMPLETE BIT PMN18820
0098 D205 767 | STO 2 $PBSY-49 SET $PBSY TOTALLY BUSY PMN18830
0099 080C 768 | XIO PN956 START THE PRINTER PMN18840
009A 70BF 769 | MDX PN091 START THE RETURN TO CALLER PMN18850
770 | * PMN18860
771 | * PMN18870
772 | * PMN18880
773 | *************************************************** PMN18890
774 | *INTERMEDIATE RETURN LINK FROM INTERRUPT PROCESSNG* PMN18900
775 | *************************************************** PMN18910
776 | * PMN18920
009B 70C4 777 | PN590 MDX PN591 NECESSARY BECAUSE OF SHORT PMN18930
779 | *************************************************** PMN18950
780 | * I O C C S A N D C O N S T A N T S * PMN18960
781 | *************************************************** PMN18970
782 | * PMN18980
009C 783 | BSS E 0 PMN18990
784 | * PMN19000
009C 0001 785 | PN991 DC 1 CONSTANT 1 PMN19010
009D 0000 786 | PN905 DC *-* HOLD INIT SCAN STOP BIT PMN19020
009E 788 | PN900 EQU * PMN19040
009E BF00 789 | PN940 DC /BF00 TO FORCE GT /40 TO CARRY PMN19050
009F 3700 790 | DC /3700 SENSE *NO* RESET PMN19060
791 | * PMN19070
00A0 792 | PN901 EQU * PMN19080
00A0 0002 793 | PN980 DC /0002 MASK FOR SETTING SCAN STOP PMN19090
00A1 3701 794 | DC /3701 SENSE WITH *RESET* PMN19100
795 | * PMN19110
00A2 796 | PN933 EQU * PMN19120
00A2 0000 797 | PN949 DC *-* 'BIG COUNT' PMN19130
00A3 3404 798 | DC /3404 START CARRIAGE PMN19140
799 | * PMN19150
00A4 800 | PN966 EQU * PMN19160
00A4 6000 801 | PN906 DC /6000 PRE-OP ERROR CODE PMN19170
00A5 3402 802 | DC /3402 STOP CARRIAGE PMN19180
00A6 803 | PN956 EQU * PMN19190
00A6 0000 804 | PN907 DC *-* PLACE FOR EMITTER CHAR PMN19200
00A7 3480 805 | DC /3480 START PRINTER PMN19210
806 | * PMN19220
00A8 0000 807 | PN902 DC *-* ADDR(PN907) MUST BE PLUGGE PMN19230
00A9 3200 808 | DC /3200 READ EMITTER PMN19240
00AA 809 | PN988 EQU * PMN19250
00AA FF00 810 | PN955 DC /FF00 /FF00 FOR FORCING CARRY PMN19260
00AB 3401 811 | DC /3401 CARRIAGE SPACE PMN19270
812 | * PMN19280
00AC 813 | PN947 EQU * PMN19290
00AC 0000 814 | PN950 DC *-* HOLD CYCLE COUNT PMN19300
00AD 3440 815 | DC /3440 STOP PRINTER PMN19310
816 | * PMN19320
817 | * PMN19330
818 | * PMN19340
819 | *************************************************** PMN19350
820 | * SERVICE ROUTINE TO CLEAR SCAN FIELD * PMN19360
821 | *************************************************** PMN19370
822 | * PMN19380
00AE 4C00 0000 823 | BSC L *-* ENTRY/RETURN PMN19390
00AF 824 | PN520 EQU *-1 PMN19400
00B0 6120 825 | LDX 1 $SCAN X1=ADDR(SCANFIELD) PMN19410
00B1 189B 826 | SRT 27 SCAN-CHECK BIT TO BIT 31 PMN19420
00B2 10A0 827 | SLT 32 ACC/EXT=0, CARRY=SCAN-CHK PMN19430
00B3 D900 828 | STD 1 0 CLEAR FIRST TWO WORDS PMN19440
00B4 D902 829 | STD 1 2 CLEAR SECOND TWO WORDS PMN19450
00B5 D904 830 | STD 1 4 CLEAR THIRD TWO WORDS PMN19460
00B6 D906 831 | STD 1 6 CLEAR LAST TWO WORDS PMN19470
00B7 70F6 832 | MDX PN520-1 RETURN PMN19480
833 | *************************************************** PMN19490
834 | * CONTINUE THE PROCESSING OF LEVEL 1 INTERRUPT * PMN19500
835 | *************************************************** PMN19510
836 | * PMN19520
837 | * SENSE DSW -- DETERMINE IF PRINT RESPONSE PMN19530
838 | * PMN19540
00B8 08E7 839 | PN501 XIO PN901 SENSE WITH RESET PMN19550
00B9 4810 840 | BSC - SKIP IF IT IS PRINT RESP PMN19560
00BA 7036 841 | MDX PN600 BR IF *NOT* PRINT RESP PMN19570
842 | * PMN19580
843 | * IT IS A PRINT RESPONSE--ZERO THE SCAN FIELD AND PMN19590
844 | * SEE IF WE HAD A SCAN CHECK ON THE LAST CYCLE. PMN19600
845 | * THE ZERO-SCAN SERVICE ROUTINE SETS CARRY ON PMN19610
846 | * IF SCAN CHECK HAS OCCURRED. PMN19620
847 | * PMN19630
00BB 40F3 848 | BSI PN520 DO ZERO-SCAN-FIELD PMN19640
00BC 4802 849 | BSC C SKIP IF *NO* SCAN CHECK PMN19650
00BD 7048 850 | MDX PN847 SCAN CHECK--BR TO RECOVER PMN19660
851 | * PMN19670
852 | * NO SCAN-CHECK HAS OCCURRED. SEE IF WE ARE NOW IN PMN19680
853 | * IDLE CYCLES. PMN19690
854 | * PMN19700
00BE C0ED 855 | LD PN950 ACC=IDLE CYCLE COUNTER PMN19710
00BF 4820 856 | BSC Z SKIP IF *NOT* IN IDLE PMN19720
00C0 7049 857 | MDX PN800 IN IDLE--BR TO RESOLVE WHY PMN19730
858 | * PMN19740
859 | * NO SCAN-CHECK AND NOT IN IDLE. ONLY QUESTION PMN19750
860 | * LEFT IS WHETHER LAST CYCLE WAS THE LAST PRINT PMN19760
861 | * CYCLE THAT WAS NEEDED. PMN19770
862 | * PMN19780
00C1 08E6 863 | XIO PN902 READ EMITTER JUST IN CASE PMN19790
00C2 6600 0000 864 | LDX L2 *-* X2=COUNT OF REMAINING PMN19800
00C3 865 | PN548 EQU *-1 POSSIBLE HAMMER FIRES PMN19810
00C4 C0DD 866 | LD PN949 ACC=MAX REMAINING CYCLES PMN19820
00C5 90D6 867 | S PN991 SUBTRACT 1 PMN19830
00C6 D0DB 868 | STO PN949 STORE UPDATED VALUE PMN19840
00C7 72FF 869 | MDX 2 -1 TRY FORCE SKIP PMN19850
00C8 4808 870 | BSC + NO SKIP--TEST NO CYCL LEFT PMN19860
00C9 7022 871 | MDX PN599 BR IF WAS LAST PRINT CYCLE PMN19870
872 | * PMN19880
873 | * NO QUESTIONS LEFT. WE MUST SET UP THE SCAN FIELD PMN19890
874 | * PMN19900
00CA 7201 875 | MDX 2 +1 RESTORE HAMMER COUNT PMN19910
00CB 6700 0000 876 | PN503 LDX L3 *-* X3=ADDR(RIGHTMOST AREA) PMN19920
00CD 0000 877 | PN504 DC *-* SET TO LDX 1 SCAN-WD NO. PMN19930
00CE C8CD 878 | LDD PN905-1 ACC=XXX, EXT=STOP BIT PMN19940
879 | * PMN19950
880 | * NOW SCAN THE PRINT TEXT TO SET SCAN FIELD PMN19960
881 | * PMN19970
00CF C300 882 | PN513 LD 3 0 GET TWO CHARS FROM AREA PMN19980
00D0 F0D5 883 | EOR PN907 COMPARE FIRST TO EMIT CHAR PMN19990
00D1 2002 884 | LDS 2 SET CARRY ON PMN20000
00D2 4810 885 | BSC - AVOID ADD IF NEG--MAY OFLO PMN20010
00D3 80D6 886 | A PN955 CARRY ON AGAIN IF NOT EQ PMN20020
00D4 2806 887 | STS PN516 SET MDX * OR MDX *+2 PMN20030
00D5 1008 888 | SLA 8 SECOND CHAR TO UPPER ACC PMN20040
00D6 F0CF 889 | EOR PN907 PMN20050
00D7 4820 890 | BSC Z SKIP IF WAS EQUAL PMN20060
00D8 7002 891 | PN515 MDX *+2 NOT EQ--SKIP NEXT 2 INSTRS PMN20070
00D9 72FF 892 | MDX 2 -1 EQUAL--DECR HAMMER COUNT PMN20080
00DA C0C1 893 | LD PN991 EQUAL--SET SCAN BIT ON PMN20090
00DB 7000 894 | PN516 MDX * BECOMES *+2 IF 1ST NOT EQ PMN20100
00DC 72FF 895 | MDX 2 -1 EQUAL--DECR HAMMER COUNT PMN20110
00DD E8FA 896 | OR PN515 EQUAL--SET SCAN BIT ON PMN20120
00DE 1008 897 | SLA 8 GET RID OF FIRST 8 BITS PMN20130
00DF 1808 898 | SRA 8 OF POSSIBLE GARBAGE PMN20140
00E0 73FF 899 | MDX 3 -1 DECR AREA POINTER PMN20150
00E1 18C2 900 | RTE 2 INCORP SCAN BITS PMN20160
00E2 4810 901 | BSC - SKIP IF STOPPER CAME AROUN PMN20170
00E3 70EB 902 | MDX PN513 PMN20180
903 | * PMN20190
904 | * WE SKIP TO HERE WHEN A SCAN WORD IS TO BE STORED PMN20200
00E4 18D0 905 | RTE 16 ACC=SCAN-WD, EXT=STOPPER PMN20210
00E5 D11F 906 | STO 1 $SCAN-1 STORE INTO SCAN FIELD PMN20220
00E6 71FF 907 | MDX 1 -1 UPDATE SCAN PTR--SKIP IF 0 PMN20230
00E7 70E7 908 | MDX PN513 NOT LAST SCAN WORD--DO MOR PMN20240
909 | * PMN20250
910 | * WE SKIP TO HERE WHEN THE LAST SCAN WORD HAS BEEN PMN20260
911 | * STORED AND WE ARE ABOUT TO EXIT THE INTERRUPT. PMN20270
912 | * PMN20280
00E8 6ADA 913 | STX 2 PN548 STORE REMAINING HAMMER COU PMN20290
00E9 7401 0027 914 | PN580 MDX L $SCAN+7,+1 SET SCAN-COMPLETE BIT PMN20300
00EB 70AF 915 | MDX PN590 EXIT FROM INTERRUPT LEVEL PMN20310
916 | * PMN20320
917 | * WE COME HERE WHEN PREVIOUS CYCLE WAS LAST CYCLE. PMN20330
918 | * WE HAVE ALREADY TAKEN ONE EXTRA CYCLE FOR IDLE, PMN20340
919 | * AND MUST SET FOR 15 MORE. WE WILL ALSO SET PMN20350
920 | * THE $PBSY SWITCH TO INDICATE ROUTINE BUSY BUT PMN20360
921 | * BUFFER FREE. THEN WE MAY SET SCAN COMPLETE BIT PMN20370
922 | * AND EXIT THE INTERRUPT LEVEL. PMN20380
923 | * PMN20390
00EC 620F 924 | PN599 LDX 2 15 X2=REMAINING IDLE CYCLES PMN20400
00ED C0FF 925 | LD *-1 GET A NEGATIVE PMN20410
00EE D227 926 | STO 2 $PBSY-15 SET ROUT BUSY/BUF FREE PMN20420
00EF 6ABC 927 | PN589 STX 2 PN950 SET IDLE COUNT PMN20430
00F0 70F8 928 | MDX PN580 GO SET SCAN COMPLETE, EXIT PMN20440
929 | * PMN20450
930 | * PMN20460
931 | * PMN20470
932 | * NOT A PRINTER RESPONSE--MAYBE SKIP PMN20480
933 | * PMN20490
00F1 6100 934 | PN600 LDX 1 0 GIVE OURSELVES A BASE ADDR PMN20500
00F2 1001 935 | SLA 1 SKIP BIT TO BIT 0 PMN20510
00F3 4810 936 | BSC - SKIP IF IT WAS 'SKIP' PMN20520
00F4 700A 937 | MDX PN700 NOT SKIP--BR FOR SPACE PMN20530
00F5 1007 938 | SLA 7 CHAN 1 BIT TO BIT 0 PMN20540
00F6 4810 939 | BSC - SKIP IF IT WAS CHANNEL 1 PMN20550
00F7 70A3 940 | MDX PN590 NOT OUR CHAN--EXIT INTERRU PMN20560
00F8 08AB 941 | XIO PN966 STOP CARRIAGE PMN20570
942 | * PMN20580
943 | * COMMON CARRIAGE CONTROL EXIT PMN20590
944 | * PMN20600
00F9 74FF 0032 945 | PN650 MDX L $IOCT,-1 REDUCE MASTER I/O COUNT PMN20610
00FB 1000 946 | NOP IN CASE OF SKIP PMN20620
00FC 1010 947 | SLA 16 PMN20630
00FD D136 948 | STO 1 $PBSY SET ROUTINE TOTALLY FREE PMN20640
00FE 709C 949 | MDX PN590 GO START THE RETURN PMN20650
950 | * PMN20660
951 | * SPACE COMPLETE INTERRUPT PMN20670
952 | * PMN20680
00FF 1001 953 | PN700 SLA 1 SPACE BIT TO BIT 0 PMN20690
0100 4810 954 | BSC - SKIP IF SPACE INTERRUPT PMN20700
0101 7099 955 | MDX PN590 BR ON UNEXPECTED--RETURN PMN20710
0102 1802 956 | SRA 2 CHAN 12 TO BIT 15 PMN20720
0103 4804 957 | BSC E SKIP IF *NO* CHAN 12 PMN20730
0104 D17F 958 | STO 1 $1132 SET CHAN 12 ON PMN20740
0105 70F3 959 | MDX PN650 GO TO COMMON CARRIAGE EXIT PMN20750
960 | * PMN20760
961 | * PMN20770
962 | * PMN20780
963 | * RECOVERY FROM SCAN CHECK PMN20790
964 | * PMN20800
0106 622E 965 | PN847 LDX 2 46 SET 46 *MORE* DEAD CYCLES PMN20810
0107 6AA4 966 | STX 2 PN950 SET IDLE COUNTER PMN20820
0108 6278 967 | LDX 2 120 WE MUST FORGET ABOUT OPTI- PMN20830
0109 70DE 968 | MDX PN580-1 MIZING HAMMER FIRES NOW PMN20840
969 | * PMN20850
970 | * IN A DELAY--DISCOVER WHY PMN20860
971 | * PMN20870
010A 9091 972 | PN800 S PN991 SUBTRACT 1 PMN20880
010B D0A0 973 | STO PN950 PUT BACK CYCLE PMN20890
010C 4808 974 | BSC + SKIP IF ANY IDLE LEFT PMN20900
010D C116 975 | LD 1 $PBSY-$SCAN PMN20910
010E 4810 976 | BSC - SKIP IF IN BUF FREE MODE PMN20920
010F 70D9 977 | MDX PN580 ELSE, MERE DELAY--RETURN PMN20930
0110 7401 0027 978 | MDX L $SCAN+7,+1 PMN20940
0112 0899 979 | XIO PN947 TIME TO STOP THE PRINTER PMN20950
0113 0896 980 | XIO PN988 AND START A SPACE PMN20960
0114 7086 981 | MDX PN590 NOW WE CAN RETURN PMN20970
982 | * PMN20980
983 | * PMN20990
984 | * PMN21000
0115 985 | PNEND EQU * PMN21010
SYSTEM CONSOLE PRINTER SUBROUTINE
987 | *************************************************** PMN21030
988 | * * PMN21040
989 | *STATUS - VERSION 2, MODIFICATION LEVEL 12 * PMN21050
990 | * * PMN21060
991 | *FUNCTION/OPERATION- * PMN21070
992 | * *RESTORE (SPACE 5 LINES) * PMN21080
993 | * *WRITE * PMN21090
994 | * *SPACE ONE LINE * PMN21100
995 | * * PMN21110
996 | *ENTRY POINTS- * PMN21120
997 | * *CP000+1 IS THE USER ENTRY. * PMN21130
998 | * *CP020+1 IS THE INTERRUPT ENTRY. * PMN21140
999 | * * PMN21150
1000 | *INPUT- * PMN21160
1001 | * *RESTORE * PMN21170
1002 | * ACC = 7000 * PMN21180
1003 | * EXT = ADDRESS OF PAGE HEADING BUFFER * PMN21190
1004 | * *WRITE * PMN21200
1005 | * ACC = 7001 * PMN21210
1006 | * EXT = ADDRESS OF I/O AREA * PMN21220
1007 | * *SPACE * PMN21230
1008 | * ACC = 7002 * PMN21240
1009 | * EXT = ANYTHING * PMN21250
1010 | * **THE I/O AREA CONSISTS OF ONE WORD OF WORD * PMN21260
1011 | * COUNT FOLLOWED BY PACKED EBCDIC. * PMN21270
1012 | * * PMN21280
1013 | *OUTPUT- * PMN21290
1014 | * THE MESSAGE IN THE I/O AREA IS PRINTED TO * PMN21300
1015 | * THE KEYBOARD. * PMN21310
1016 | * * PMN21320
1017 | *EXTERNAL REFERENCES- * PMN21330
1018 | * $I405+1 * PMN21340
1019 | * $IOCT 2-2 * PMN21350
1020 | * $KCSW * PMN21360
1021 | * $PBSY * PMN21370
1022 | * $PRET * PMN21380
1023 | * $PST4 * PMN21390
1024 | * * PMN21400
1025 | *EXITS- NORMAL * PMN21410
1026 | * *SUBROUTINE RETURNS TO USER AFTER FUNCTION * PMN21420
1027 | * HAS BEEN INITIATED. * PMN21430
1028 | * *SUBROUTINE RETURNS TO INTERRUPT LEVEL * PMN21440
1029 | * SUBROUTINE AFTER AN INTERRUPT HAS BEEN * PMN21450
1030 | * SERVICED. * PMN21460
1031 | * * PMN21470
1032 | *EXITS- ERROR * PMN21480
1033 | * *EXIT TO $PRET ON PRE-OPERATIVE ERROR. * PMN21490
1034 | * *EXIT TO $PST4 ON POST-OPERATIVE ERROR. * PMN21500
1035 | * * PMN21510
1036 | *TABLES/WORK AREAS- * PMN21520
1037 | * CP480 IS A TABLE OF EBCDIC TO ROTATE AND * PMN21530
1038 | * TILT INLINE CODE. * PMN21540
1039 | * * PMN21550
1040 | *ATTRIBUTES- * PMN21560
1041 | * *NATURALLY RELOCATABLE. * PMN21570
1042 | * *REUSABLE. * PMN21580
1043 | * * PMN21590
1044 | *NOTES- BEFORE RETURNING TO THE CALLER A CHECK IS * PMN21600
1045 | * MADE FOR THE PRESENCE OF THE SYSTEM KEYBOARD* PMN21610
1046 | * SUBROUTINE IN CORE. IF IT IS, RETURNING IS * PMN21620
1047 | * DELAYED UNTIL CONSOLE PRINTING IS COMPLETED * PMN21630
1048 | * TO PREVENT POSSIBLE OVER-LAPPING. * PMN21640
1049 | * * PMN21650
1050 | *************************************************** PMN21660
SYSTEM CONSOLE PRINTER SUBROUTINE
0000 1052 | ORG 0 PMN21680
*SBRKSMC 8E 1053 | *SYS CONSOLE PRINTER V2M03 PMN21690
0000 011E 1054 | DC CP530-CP000 WC OF SYS CP SUBR 2-1 PMN21700
0001 008E 1055 | DC @CPTR PHASE ID OF SYS CP SUBR PMN21710
SYSTEM CONSOLE PRINTER SUBROUTINE
0002 4C00 0000 1057 | CP000 BSC L *-* ENTER HERE FROM MAIN (+2) PMN21730
0004 700D 1058 | MDX CP090-1 BR TO SERVICE CALL PMN21740
1059 | * * PMN21750
0005 4C00 0000 1060 | CP020 BSC L *-* ENTER HERE ON INTRPT (+5) PMN21760
0007 C004 1061 | LD CP040 INITLZ SYSTEM TRAP ADDR PMN21770
0008 D02C 1062 | STO CP110+1 OF 'TEST DEV RDY' SUBR PMN21780
0009 7066 1063 | MDX CP480 BR TO SERVICE INTERRUPT2-1 PMN21790
1064 | * * PMN21800
000A 0008 1065 | CP025 DC 8 IBT INCREMENT PMN21810
000B 0006 1066 | CP030 DC 6 PAGE HDR INCREMENT PMN21820
000C 008D 1067 | CP040 DC $PST4 ADDR OF INT TRAP ADDR PMN21830
000D 0028 1068 | CP050 DC $PRET ADDR OF CALL TRAP ADDR PMN21840
000E FFE7 1069 | CP060 DC CP020-CP010 ADDR DISPLACEMENT PMN21850
000F 0000 1070 | CP070 DC 0 INTRPT ADDR MINUS DISP PMN21860
0010 1071 | BSS E 0 PMN21870
0010 7001 1072 | CP080 DC /7001 PRNT FUNC CODE PMN21880
0011 0000 1073 | DC *-* PAGE HDR ADDR PMN21890
1074 | * * PMN21900
0012 D024 1075 | STO CP120 SET UP FUNCTION PMN21910
0013 C400 0036 1076 | CP090 LD L $PBSY TEST SUBROUTINE BUSY PMN21920
0015 4820 1077 | BSC Z SKIP ON NOT BUSY PMN21930
0016 70FC 1078 | MDX *-4 LOOP ON BUSY PMN21940
1079 | * * PMN21950
0017 6C00 0036 1080 | STX L0 $PBSY SET SUBROUTINE BUSY PMN21960
0019 D0F7 1081 | STO CP080+1 SAVE FOR INTRPT EXIT PMN21970
001A D04E 1082 | STO CP210 SET LFT/RT INDR TO LFT PMN21980
001B D04C 1083 | STO CP200 AND CARRIER RET INDR TO Z PMN21990
001C 6A59 1084 | STX 2 CP510+2 SAVE XR2 2-2 PMN22000
001D 6B5A 1085 | STX 3 CP510+4 SAVE XR3 2-2 PMN22010
1086 | * * PMN22020
001E 68F0 1087 | CP010 STX CP070 COMPUTE RELATIVE ADDR PMN22030
001F C0EF 1088 | LD CP070 *OF INTERRUPT ENTRY PMN22040
0020 80ED 1089 | A CP060 FOR ILS04 BRANCH TABLE PMN22050
0021 D0ED 1090 | STO CP070 PMN22060
0022 C400 00D4 1091 | LD L $I405+1 FETCH ADDR OF ILS04 IBT PMN22070
0024 80E5 1092 | A CP025 PMN22080
0025 D002 1093 | STO *+2 SAVE KB/CP ENTRY ADDR PMN22090
0026 C0E8 1094 | LD CP070 SET UP THE INTERRUPT ADDR PMN22100
0027 D400 0000 1095 | STO L *-* IN THE IBT PMN22110
0029 C0E3 1096 | LD CP050 CALL SYSTEM TRAP ADDR PMN22120
002A D00A 1097 | STO CP110+1 TO 'TEST DEV RDY' SUBR PMN22130
002B 4002 1098 | BSI CP100 GO TO TEST DEVICE READY PMN22140
002C 700A 1099 | MDX CP120 GO TO DETRMINE FUNCTION PMN22150
1100 | * * PMN22160
002D 4C00 1101 | DC /4C00 BRANCH OUT PMN22170
002E 0000 1102 | CP100 DC *-* OF READY TEST PMN22180
002F 083A 1103 | XIO CP320-1 SENSE AND RESET PMN22190
0030 1005 1104 | SLA 5 PMN22200
0031 4810 1105 | BSC - SKIP ON DEVIC NOT RDY PMN22210
0032 70FA 1106 | MDX CP100-1 GO TO RET ON DEVIC RDY PMN22220
1107 | * * PMN22230
0033 C036 1108 | LD CP330 ERROR CD FOR DEVC NOT RDY PMN22240
0034 4400 0000 1109 | CP110 BSI L *-* TO ACC AND GO TO WAIT PMN22250
0036 70F8 1110 | MDX CP100+1 TRY AGAIN PMN22260
1111 | * * PMN22270
0037 0000 1112 | CP120 DC *-* FUNCTION BRANCH PMN22280
0038 7002 1113 | MDX CP130 *TO HERE ON RESTORE PMN22290
0039 7040 1114 | MDX CP140 *TO HERE ON PRINT PMN22300
003A 7053 1115 | MDX CP180 *TO HERE ON SKIP - BRANCH PMN22310
1116 | * TO XEQ CARR RET AND EXIT * PMN22320
003B C031 1117 | CP130 LD CP410 SET FOR FIVE PMN22330
003C D02B 1118 | STO CP200 CARR RETURNS AND PMN22340
003D 18D0 1119 | RTE 16 FETCH I/O AREA ADDR PMN22350
003E D0D2 1120 | STO CP080+1 SAVE I/O AREA ADDRESS 2-1 PMN22360
003F D018 1121 | STO CP136+1 2-1 PMN22370
0040 D002 1122 | STO *+2 2-1 PMN22380
0041 6204 1123 | LDX 2 4 XR2 EQUALS WORD COUNT 2-1 PMN22390
0042 6700 0000 1124 | LDX L3 *-* XR3 POINT TO I/O AREA 2-1 PMN22400
0044 C400 0037 1125 | LD L $PGCT FETCH PAGE COUNT 2-1 PMN22410
0046 1890 1126 | SRT 16 2-1 PMN22420
0047 A824 1127 | CP132 D CP340 CONVERT 2-1 PMN22430
0048 18D0 1128 | RTE 16 *PAGE 2-1 PMN22440
0049 E824 1129 | OR CP420 *COUNT 2-1 PMN22450
004A D306 1130 | STO 3 6 *TO 2-1 PMN22460
004B 1010 1131 | SLA 16 *UNPACKED 2-1 PMN22470
004C 73FF 1132 | MDX 3 -1 *EBCDIC 2-1 PMN22480
004D 72FF 1133 | MDX 2 -1 2-1 PMN22490
004E 70F8 1134 | MDX CP132 2-1 PMN22500
004F C307 1135 | CP134 LD 3 7 REPLACE 2-1 PMN22510
0050 F01D 1136 | EOR CP420 *LEADING 2-1 PMN22520
0051 4820 1137 | BSC Z *ZEROS 2-1 PMN22530
0052 7004 1138 | MDX CP136 *WITH 2-1 PMN22540
0053 C01B 1139 | LD CP470 *BLANKS 2-1 PMN22550
0054 D307 1140 | STO 3 7 2-1 PMN22560
0055 7301 1141 | MDX 3 1 2-1 PMN22570
0056 70F8 1142 | MDX CP134 2-1 PMN22580
0057 6700 0000 1143 | CP136 LDX L3 *-* 2-1 PMN22590
0059 C304 1144 | LD 3 4 PACK 2-1 PMN22600
005A 1888 1145 | SRT 8 *FOUR 2-1 PMN22610
005B C303 1146 | LD 3 3 *CHARACTER 2-1 PMN22620
005C 1088 1147 | SLT 8 *PAGE 2-1 PMN22630
005D D303 1148 | STO 3 3 *COUNT 2-1 PMN22640
005E C306 1149 | LD 3 6 *TO 2-1 PMN22650
005F 1888 1150 | SRT 8 *TWO 2-1 PMN22660
0060 C305 1151 | LD 3 5 *WORDS 2-1 PMN22670
0061 1088 1152 | SLT 8 2-1 PMN22680
0062 D304 1153 | STO 3 4 2-1 PMN22690
0063 C80B 1154 | LDD CP470 CLEAR TEMPORARLY 2-1 PMN22700
0064 DB05 1155 | STD 3 5 *USED WORDS 2-1 PMN22710
0065 7401 0037 1156 | MDX L $PGCT,1 INCREMENT THE PAGE CNT 2-1 PMN22720
0067 7026 1157 | MDX CP180 BRANCH FOR CARR RETURNS2-1 PMN22730
1158 | * 2-1 PMN22740
1159 | * CONSTANTS AND WORK AREAS 2-1 PMN22750
1160 | * 2-1 PMN22760
0068 1161 | BSS E 0 2-1 PMN22770
0068 0000 1162 | CP200 DC *-* CARRIAGE RETURN INDIC 2-1 PMN22780
0069 0000 1163 | CP210 DC *-* LEFT/RIGHT INDICATOR 2-1 PMN22790
006A 2000 1164 | CP330 DC /2000 'DEVICE NOT READY' CODE2-1 PMN22800
006B 0F01 1165 | CP320 DC /0F01 SENSE AND RESET IOCC 2-1 PMN22810
006C 000A 1166 | CP340 DC 10 BINARY TO EBCDIC DIVISOR PMN22820
006D 0004 1167 | CP410 DC 4 NO. OF CARRIAGE RETURNS2-1 PMN22830
006E 00F0 1168 | CP420 DC /00F0 BINARY TO EBCDIC MASK 2-1 PMN22840
006F 4040 1169 | CP470 DC /4040 PACKED EBCDIC BLANKS 2-1 PMN22850
0070 702F 1170 | CP480 MDX CP220 BR TO SERVICE INTERRUPT2-1 PMN22860
0071 40BC 1171 | CP490 BSI CP100 BR TO SENSE DEVICE RDY 2-1 PMN22870
0072 7069 1172 | MDX CP305 BRANCH TO PRINT 2-1 PMN22880
0073 7091 1173 | CP500 MDX CP020 RETURN TO ILS04 2-1 PMN22890
0074 C89B 1174 | CP510 LDD CP080 FUNC CODE / I/O AREA 2-1 PMN22900
0075 6600 0000 1175 | LDX L2 *-* RESTORE XR2 2-2 PMN22910
0077 6700 0000 1176 | LDX L3 *-* RESTORE XR3 2-2 PMN22920
0079 7088 1177 | MDX CP000 RETURN TO CALLER 2-1 PMN22930
1178 | * 2-1 PMN22940
1179 | * INSTRUCTION REMOVED 2-2 PMN22950
007A 18D0 1180 | CP140 RTE 16 FETCH AND STORE 2-1 PMN22960
007B D00B 1181 | STO CP160+1 ADDRESS OF 2-1 PMN22970
007C D003 1182 | STO *+3 I/O AREA PMN22980
007D 8067 1183 | A CP400 PMN22990
007E D064 1184 | STO CP380 PMN23000
007F 6680 0000 1185 | LDX I2 *-* WD CNT TO XR2 PMN23010
1186 | * * PMN23020
0081 6833 1187 | STX CP250+1 PMN23030
0082 C032 1188 | CP150 LD CP250+1 PMN23040
0083 8060 1189 | A CP390 ADDR OF TEMP STORAGE PMN23050
0084 D030 1190 | STO CP250+1 I/O AREA ADDR TO PMN23060
0085 D03B 1191 | STO CP270+1 INLINE CODING PMN23070
1192 | * * PMN23080
0086 C600 0000 1193 | CP160 LD L2 *-* SCAN FOR TRAILING BLANKS PMN23090
0088 90E6 1194 | S CP470 FROM END OF I/O AREA 2-1 PMN23100
0089 4820 1195 | BSC Z SKIP IF WD IS A BLANK PMN23110
008A 7002 1196 | MDX CP170 BRANCH OUT TO SCAN PMN23120
008B 72FF 1197 | MDX 2 -1 DECR WD CNT AND PMN23130
008C 70F9 1198 | MDX CP160 CONTINUE SCAN PMN23140
1199 | * * PMN23150
008D 6A54 1200 | CP170 STX 2 CP370 SET ACTUAL WD CNT PMN23160
1201 | * INSTRUCTION REMOVED 2-2 PMN23170
008E C057 1202 | CP180 LD CP430 SET UP AND PMN23180
008F D058 1203 | STO CP450 EXECUTE A CARR RETURN PMN23190
0090 684D 1204 | STX CP350 ADDRESS OF BUFFER PMN23200
0091 C04C 1205 | CP190 LD CP350 COMPUTED AND STORED PMN23210
0092 804E 1206 | A CP360 FOR IOCC WORD PMN23220
0093 D04A 1207 | STO CP350 PMN23230
1208 | * * PMN23240
0094 0849 1209 | XIO CP350 PMN23250
0095 7401 0032 1210 | MDX L $IOCT,1 INCREMENT INTRPT CNTR 2-2 PMN23260
0097 7400 007C 1211 | MDX L $KCSW,0 IS CPSYS SUBR IN CORE PMN23270
0099 7001 1212 | MDX *+1 YES, SKIP TO HANG IN PMN23280
009A 7004 1213 | MDX *+4 NO, GO TO RETURN PMN23290
1214 | * * PMN23300
009B C400 0036 1215 | LD L $PBSY IS SUBROUTINE BUSY PMN23310
009D 4820 1216 | BSC Z SKIP TO RETURN PMN23320
009E 70FC 1217 | MDX *-4 LOOP UNTIL NOT BUSY PMN23330
1218 | * * PMN23340
009F 70D4 1219 | MDX CP510 RETURN TO CALLER 2-1 PMN23350
1220 | * * PMN23360
1221 | *************************************************** PMN23370
1222 | * THIS BLOCK OF CODING SERVICES * PMN23380
1223 | * THE INTERRUPT * PMN23390
1224 | *************************************************** PMN23400
00A0 08C9 1225 | CP220 XIO CP320-1 PMN23410
00A1 C0C6 1226 | LD CP200 TEST CARR RET IND PMN23420
00A2 4820 1227 | BSC Z SKIP TO CHECK WD CNT ON Z PMN23430
00A3 7009 1228 | MDX CP230 GO TO HANDLE RESTORE PMN23440
00A4 C03D 1229 | LD CP370 DETRM FUNC REQUESTED PMN23450
00A5 4820 1230 | BSC Z SKIP ON SKIP FUNCTION PMN23460
00A6 700A 1231 | MDX CP240 BRANCH TO SERVICE PRINT PMN23470
1232 | * *REQUEST * PMN23480
00A7 D400 0036 1233 | STO L $PBSY TURN OFF SUBR BUSY INDR PMN23490
00A9 74FF 0032 1234 | MDX L $IOCT,-1 DECREMENT IOCS CNTR 2-2 PMN23500
00AB 1000 1235 | NOP IN CASE OF SKIP 2-2 PMN23510
00AC 70C6 1236 | MDX CP500 RETURN TO ILS04 2-1 PMN23520
00AD C0BA 1237 | CP230 LD CP200 PMN23530
00AE 9036 1238 | S CP400 DECR THE CARR RET INDR PMN23540
00AF D0B8 1239 | STO CP200 PMN23550
00B0 702A 1240 | MDX CP300+4 GO TO EXEC CARR RET PMN23560
1241 | * * PMN23570
00B1 C0B7 1242 | CP240 LD CP210 DETM WHICH HALF OF PACKED PMN23580
00B2 4820 1243 | BSC Z EBC WORD TO HANDLE PMN23590
00B3 7007 1244 | MDX CP260 BRANCH TO HANDLE RIGHT PMN23600
1245 | * * PMN23610
00B4 C480 0000 1246 | CP250 LD I *-* SKIP TO HERE TO HANDLE LFT PMN23620
00B6 1808 1247 | SRA 8 FETCH WRD, SHIFT OUT RT PMN23630
00B7 D030 1248 | STO CP450 AND STORE INTO BUFFER PMN23640
00B8 C0FF 1249 | LD *-1 PMN23650
00B9 D0AF 1250 | STO CP210 SET INDR TO HANDLE RT PMN23660
00BA 700C 1251 | MDX CP280-1 GO TO CONVERT PMN23670
1252 | * * PMN23680
00BB 1010 1253 | CP260 SLA 16 SET INDR TO PMN23690
00BC D0AC 1254 | STO CP210 HANDLE LEFT PMN23700
00BD C024 1255 | LD CP370 DECR WORD COUNT PMN23710
00BE 9026 1256 | S CP400 PMN23720
00BF D022 1257 | STO CP370 PMN23730
00C0 C480 0000 1258 | CP270 LD I *-* FETCH WORD, AND PMN23740
00C2 E024 1259 | AND CP440 DELETE RIGHT HALF PMN23750
00C3 D024 1260 | STO CP450 STORE INTO BUFFER PMN23760
00C4 C01E 1261 | LD CP380 INCR I/O AREA POINTER PMN23770
00C5 801F 1262 | A CP400 PMN23780
00C6 D01C 1263 | STO CP380 PMN23790
1264 | * * PMN23800
00C7 6807 1265 | STX CP290+1 COMPUTE THE PMN23810
00C8 C006 1266 | CP280 LD CP290+1 *EFFECTIVE ADDRESS PMN23820
00C9 801F 1267 | A CP460 *OF THE CONV TABLE PMN23830
00CA D004 1268 | STO CP290+1 *AND STORE IT INLINE PMN23840
00CB D00C 1269 | STO CP300+1 PMN23850
00CC 6131 1270 | LDX 1 +49 PMN23860
00CD C01A 1271 | LD CP450 FETCH WORD PMN23870
00CE F500 0000 1272 | CP290 EOR L1 *-* PMN23880
00D0 1008 1273 | SLA 8 SHIFT OUT CONSOLE CODE PMN23890
00D1 4818 1274 | BSC +- SKIP IF NO COMPARE PMN23900
00D2 7004 1275 | MDX CP300 END SEARCH - CHAR FOUND PMN23910
00D3 71FF 1276 | MDX 1 -1 PMN23920
00D4 70F8 1277 | MDX CP290-1 CONTINUE SEARCH PMN23930
1278 | * * PMN23940
00D5 C014 1279 | LD CP520 INVALID CHAR DETECTED 2-3 PMN23950
00D6 7002 1280 | MDX CP300+2 GO TO PRINT A BLANK PMN23960
1281 | * * PMN23970
00D7 C500 0000 1282 | CP300 LD L1 *-* PMN23980
00D9 E006 1283 | AND CP310 DELETE EBC PMN23990
00DA D00D 1284 | STO CP450 SET FOR IOCC PMN24000
1285 | * * PMN24010
00DB 7095 1286 | MDX CP490 BR TO SENSE DEVICE RDY 2-1 PMN24020
1287 | * * PMN24030
00DC 0801 1288 | CP305 XIO CP350 PRINT PMN24040
00DD 70CE 1289 | MDX CP230-1 GO TO RET FROM INTRPT PMN24050
1290 | *************************************************** PMN24060
1291 | * FOLLOWING IS A TABLE OF CONSTANTS * PMN24070
1292 | * * PMN24080
1293 | *************************************************** PMN24090
00DE 1294 | BSS E 0 PMN24100
00DE 0000 1295 | CP350 DC *-* AREA ADDR FOR CONSOLE PMN24110
00DF 0902 1296 | DC /0902 IOCC FOR WRITE ON CONSOLE PMN24120
00E0 FF00 1297 | CP310 DC /FF00 MASKING CONSTANT 2-1 PMN24130
00E1 0057 1298 | CP360 DC CP450-CP190 ADDRESSING DISP PMN24140
00E2 0000 1299 | CP370 DC 0 WORD COUNT PMN24150
00E3 0000 1300 | CP380 DC 0 I/O AREA ADDR PMN24160
00E4 0061 1301 | CP390 DC CP380-CP150 ADDRESSING DISP PMN24170
00E5 0001 1302 | CP400 DC 1 CONSTANT ONE PMN24180
00E6 8100 1303 | CP430 DC /8100 IOCC FOR CARR RET PMN24190
00E7 00FF 1304 | CP440 DC /00FF MASKING CONSTANT PMN24200
00E8 0000 1305 | CP450 DC *-* INPUT BUFFER PMN24210
00E9 0021 1306 | CP460 DC CP520-CP280-1 ADDR DISP 2-1 PMN24220
1307 | *************************************************** PMN24230
1308 | * THE CONV CP480 FOLLOWING CONSISTS * PMN24240
1309 | * OF 49 ACCEPTABLE CONSOLE CODES IN * PMN24250
1310 | * BITS 0-7, AND THEIR CORRESPONDING * PMN24260
1311 | * EBCDIC REPRESENTATION IN BITS 8-15 * PMN24270
1312 | *************************************************** PMN24280
00EA 2140 1313 | CP520 DC /2140 BLANK 2-1 PMN24290
00EB C4F0 1314 | DC /C4F0 0 PMN24300
00EC FCF1 1315 | DC /FCF1 1 PMN24310
00ED D8F2 1316 | DC /D8F2 2 PMN24320
00EE DCF3 1317 | DC /DCF3 3 PMN24330
00EF F0F4 1318 | DC /F0F4 4 PMN24340
00F0 F4F5 1319 | DC /F4F5 5 PMN24350
00F1 D0F6 1320 | DC /D0F6 6 PMN24360
00F2 D4F7 1321 | DC /D4F7 7 PMN24370
00F3 E4F8 1322 | DC /E4F8 8 PMN24380
00F4 E0F9 1323 | DC /E0F9 9 PMN24390
00F5 3CC1 1324 | DC /3CC1 A PMN24400
00F6 18C2 1325 | DC /18C2 B PMN24410
00F7 1CC3 1326 | DC /1CC3 C PMN24420
00F8 30C4 1327 | DC /30C4 D PMN24430
00F9 34C5 1328 | DC /34C5 E PMN24440
00FA 10C6 1329 | DC /10C6 F PMN24450
00FB 14C7 1330 | DC /14C7 G PMN24460
00FC 24C8 1331 | DC /24C8 H PMN24470
00FD 20C9 1332 | DC /20C9 I PMN24480
00FE 7CD1 1333 | DC /7CD1 J PMN24490
00FF 58D2 1334 | DC /58D2 K PMN24500
0100 5CD3 1335 | DC /5CD3 L PMN24510
0101 70D4 1336 | DC /70D4 M PMN24520
0102 74D5 1337 | DC /74D5 N PMN24530
0103 50D6 1338 | DC /50D6 O (ALPHA) PMN24540
0104 54D7 1339 | DC /54D7 P PMN24550
0105 64D8 1340 | DC /64D8 Q PMN24560
0106 60D9 1341 | DC /60D9 R PMN24570
0107 98E2 1342 | DC /98E2 S PMN24580
0108 9CE3 1343 | DC /9CE3 T PMN24590
0109 B0E4 1344 | DC /B0E4 U PMN24600
010A B4E5 1345 | DC /B4E5 V PMN24610
010B 90E6 1346 | DC /90E6 W PMN24620
010C 94E7 1347 | DC /94E7 X PMN24630
010D A4E8 1348 | DC /A4E8 Y PMN24640
010E A0E9 1349 | DC /A0E9 Z PMN24650
010F 004B 1350 | DC /004B PERIOD PMN24660
0110 F65D 1351 | DC /F65D RIGHT PARENTHESIS PMN24670
0111 FE4D 1352 | DC /FE4D LEFT PARENTHESIS PMN24680
0112 DA4E 1353 | DC /DA4E PLUS PMN24690
0113 4450 1354 | DC /4450 AMPERSAND PMN24700
0114 405B 1355 | DC /405B DOLLAR SIGN PMN24710
0115 D65C 1356 | DC /D65C ASTERISK PMN24720
0116 C27E 1357 | DC /C27E EQUAL PMN24730
0117 8460 1358 | DC /8460 MINUS PMN24740
0118 BC61 1359 | DC /BC61 SLASH PMN24750
0119 806B 1360 | DC /806B COMMA PMN24760
011A E67D 1361 | DC /E67D APOSTROPHE PMN24770
011B 047C 1362 | DC /047C AT SIGN 212 PMN24771
011C C07B 1363 | DC /C07B POUND SIGN 212 PMN24772
011D DE4C 1364 | DC /DE4C LESS THAN 212 PMN24773
011E 066C 1365 | DC /066C PERCENT 212 PMN24774
1366 | * PMN24780
011F 1367 | BSS 1 PATCH AREA 2-2 PMN24790
0120 0000 1368 | CP530 DC 0 *AREA 2-1 PMN24800
SYSTEM 2501/1442 SUBROUTINE
1370 | *************************************************** PMN24820
1371 | * * PMN24830
1372 | *STATUS - VERSION 2, MODIFICATION LEVEL 12 * PMN24840
1373 | * * PMN24850
1374 | *FUNCTION/OPERATION- * PMN24860
1375 | * THIS IS A SUBROUTINE USED BY THE 1130 * PMN24870
1376 | * MONITOR TO PERFORM THE FOLLOWING FUCTIONS * PMN24880
1377 | * ON THE 2501 CARD READ DEVICE AND THE 1442-5 * PMN24890
1378 | * CARD PUNCH DEVICE- * PMN24900
1379 | * *READ A CARD FROM THE 2501. * PMN24910
1380 | * *PUNCH A CARD TO THE 1442-5. * PMN24920
1381 | * * PMN24930
1382 | *ENTRY POINTS- * PMN24940
1383 | * *RP000+1 IS THE USER ENTRY. * PMN24950
1384 | * *RP020+1 IS THE INTERRUPT LEVEL 4 ENTRY. * PMN24960
1385 | * *RP040+1 IS THE INTERRUPT LEVEL 0 ENTRY. * PMN24970
1386 | * * PMN24980
1387 | *INPUT * PMN24990
1388 | * *READ A CARD FROM THE 2501 * PMN25000
1389 | * ACC = 7000 * PMN25010
1390 | * EXT = ADDRESS OF I/O AREA * PMN25020
1391 | * *PUNCH A CARD TO THE 1442-5 * PMN25030
1392 | * ACC = 7001 * PMN25040
1393 | * EXT = ADDRESS OF I/O AREA * PMN25050
1394 | * *READ A CARD FROM THE 2501 * PMN25060
1395 | * ACC = 7002 * PMN25070
1396 | * EXT = ADDRESS OF I/O AREA * PMN25080
1397 | * *FEED A CARD THROUGH THE 1442-5 * PMN25090
1398 | * ACC = 7003 * PMN25100
1399 | * EXT = ANYTHING * PMN25110
1400 | * **THE I/O AREA CONSISTS OF ONE WORD OF * PMN25120
1401 | * COLUMN COUNT (MUST BE HEX 50 FOR A READ * PMN25130
1402 | * FUNCTION) FOLLOWED BY THAT MANY WORDS * PMN25140
1403 | * WHICH IN THE CASE OF A PUNCH FUNCTION ARE * PMN25150
1404 | * 12 BIT LEFT JUSTIFIED CARD CODE THE LAST * PMN25160
1405 | * OF WHICH IS A PUNCH STOP BIT. * PMN25170
1406 | * * PMN25180
1407 | *OUTPUT- * PMN25190
1408 | * *READ- THE CARD JUST READ IS IN THE I/O AREA* PMN25200
1409 | * IN 12 BIT LEFT JUSTIFIED CARD CODE. * PMN25210
1410 | * *PUNCH- THE I/O AREA WAS PUNCHED TO CARD. * PMN25220
1411 | * * PMN25230
1412 | *EXTERNAL REFERENCES- * PMN25240
1413 | * $CTSW * PMN25250
1414 | * $IBSY * PMN25260
1415 | * $IOCT 2-2 * PMN25270
1416 | * $LAST * PMN25280
1417 | * $PRET * PMN25290
1418 | * * PMN25300
1419 | *EXITS- NORMAL * PMN25310
1420 | * *SUBROUTINE RETURNS TO USER AFTER FUNCTION * PMN25320
1421 | * HAS BEEN INITIATED. * PMN25330
1422 | * *SUBROUTINE RETURNS TO INTERRUPT LEVEL * PMN25340
1423 | * SUBROUTINE AFTER AN INTERRUPT HAS BEEN * PMN25350
1424 | * SERVICED. * PMN25360
1425 | * * PMN25370
1426 | *EXITS- ERROR * PMN25380
1427 | * EXIT TO $PRET ON NOT READY CONDITION * PMN25390
1428 | * *DISPLAYING HEX 1000 FOR 1442-5. * PMN25400
1429 | * *DISPLAYING HEX 4000 FOR 2501. * PMN25410
1430 | * * PMN25420
1431 | *TABLES/WORK AREAS- NONE * PMN25430
1432 | * * PMN25440
1433 | *ATTRIBUTES- * PMN25450
1434 | * *NATURALLY RELOCATABLE. * PMN25460
1435 | * *REUSABLE. * PMN25470
1436 | * * PMN25480
1437 | *NOTES- NONE * PMN25490
1438 | * * PMN25500
1439 | *************************************************** PMN25510
SYSTEM 2501/1442 SUBROUTINE
0000 1441 | ORG 0 PMN25530
*SBRKDD 8F 1442 | *SYS 2501/1442 V2M02 PMN25540
0000 0000 1443 | DC 0 WORD CNT OF SYS 2501 SUBR PMN25550
0001 008F 1444 | DC @2501 PHASE ID OF SYS 2501 SUBR PMN25560
SYSTEM 2501/1442 SUBROUTINE
0002 4C00 0000 1446 | RP000 BSC L *-* ENTER 2ND WORD OF INSTR PMN25580
0004 7077 1447 | MDX RP320 BR TO PROCESS CALL PMN25590
1448 | * PMN25600
0005 4C00 0000 1449 | RP020 BSC L *-* END OF CARD INTERRUPT PMN25610
0007 700C 1450 | MDX RP080 PROCESS END OF CARD INTRP PMN25620
1451 | *************************************************** PMN25630
1452 | * PMN25640
1453 | * PROCESS PUNCH REQUEST INTERRUPT PMN25650
1454 | * PMN25660
0008 4C40 0000 1455 | RP040 BOSC L *-* LEVEL 0 INT -1442 ONLY- PMN25670
000A D835 1456 | STD RP480 SAVE ACC AND EXT PMN25680
000B 2806 1457 | STS RP060 SAVE STATUS PMN25690
000C 0835 1458 | XIO RP500 PUNCH A COLUMN PMN25700
000D C034 1459 | LD RP500 INCR COLUMN ADDRESS PMN25710
000E 803B 1460 | A RP640 *FOR PUNCH PMN25720
000F D032 1461 | STO RP500 PMN25730
0010 0833 1462 | XIO RP540-1 SENSE WITH RESET LEVEL 0 PMN25740
0011 C82E 1463 | LDD RP480 RELOAD ACC AND EXT PMN25750
0012 2000 1464 | RP060 LDS 0 RESET STATUS PMN25760
0013 70F4 1465 | MDX RP040 TURN OFF INTERRUPT PMN25770
1466 | * PMN25780
1467 | *************************************************** PMN25790
0014 0829 1468 | RP080 XIO RP200-1 SENSE DSW WITH RESET PMN25800
0015 1002 1469 | SLA 2 PMN25810
0016 4828 1470 | BSC +Z ERROR INDICATOR ON PMN25820
0017 701B 1471 | MDX RP140 BRANCH IF YES PMN25830
0018 1001 1472 | SLA 1 NO ERROR. IS LAST CARD PMN25840
0019 4828 1473 | BSC +Z *INDICATOR ON. PMN25850
001A 7036 1474 | MDX RP220 BRANCH IF YES PMN25860
001B 1010 1475 | RP100 SLA 16 PMN25870
001C D400 0013 1476 | STO L $IBSY CLEAR PROGRAM BUSY INDIC PMN25880
001E 74FF 0032 1477 | MDX L $IOCT,-1 DECREMENT IOCS CNTR 2-2 PMN25890
0020 1000 1478 | NOP IN CASE OF SKIP 2-2 PMN25900
1479 | * PMN25910
1480 | * BEFORE EXIT TEST IF THE CARD READ IN IS A CONTROL PMN25920
1481 | * CARD,INDICATED BY //BLANK IN COLUMNS 1-3,IF SO, PMN25930
1482 | * SET THE CONTROL CARD SWITCH--CTLSW--IN LOW CORE PMN25940
1483 | * PMN25950
0021 C022 1484 | LD RP520 LOAD ADDRESS OF I/O AREA PMN25960
0022 D001 1485 | STO RP120+1 STORE IN PMN25970
0023 6600 0000 1486 | RP120 LDX L2 *-* INDEX REGISTER 2 PMN25980
0025 C202 1487 | LD 2 2 LOAD SECOND WORD PMN25990
0026 18D0 1488 | RTE 16 PLACE IN EXTENSION PMN26000
0027 C201 1489 | LD 2 1 FIRST WORD IN ACC PMN26010
0028 9825 1490 | SD RP720 TEST FOR // PMN26020
0029 4818 1491 | BSC +- SKIP IF ACC NON-ZERO PMN26030
002A 18D0 1492 | RTE 16 ACC = 0, CHECK IF EXT = 0 PMN26040
002B 4820 1493 | BSC Z NO,RETURN TO ILS04 PMN26050
002C 70D8 1494 | MDX RP020 PMN26060
002D C203 1495 | LD 2 3 CHECK THIRD WORD FOR PMN26070
002E 4820 1496 | BSC Z ZERO--BLANK COL.IN CARD PMN26080
002F 70D5 1497 | MDX RP020 NO,RETURN TO ILS04 PMN26090
0030 6C00 000F 1498 | STX L0 $CTSW FOUND //BLANK,SET SWITCH PMN26100
0032 70D2 1499 | MDX RP020 RETURN TO ILS04 PMN26110
0033 C010 1500 | RP140 LD RP520 PMN26120
0034 D00D 1501 | STO RP500 RESET ADDRESSES TO FIRST PMN26130
0035 D012 1502 | STO RP600 RESET TO ADDRESS OF WD CNT PMN26140
0036 C008 1503 | LD RP200 WHICH DVC IS IN USE PMN26150
0037 4804 1504 | BSC E SKIP IF 1442 PMN26160
0038 7002 1505 | MDX RP160-1 *ELSE TEST 2501 PMN26170
0039 401E 1506 | BSI RP240+1 TEST 1442 READY PMN26180
003A 7001 1507 | MDX RP160 TO REPEAT LAST FUNCTION PMN26190
003B 4028 1508 | BSI RP280+1 TEST 2501 READY PMN26200
003C 080B 1509 | RP160 XIO RP620-1 REPEAT LAST FUNCTION PMN26210
003D 70C7 1510 | MDX RP020 RETURN TO ILS04 PMN26220
1511 | * PMN26230
1512 | **************************************M************ PMN26240
1513 | * PMN26250
1514 | * CONSTANTS PMN26260
1515 | * PMN26270
003E 1516 | BSS E 0 PMN26280
003E 1401 1517 | RP180 DC /1401 START 1442 PCH IOCC E PMN26290
003F 1702 1518 | RP200 DC /1702 SNS LEV 4 WITH RESET O PMN26300
0040 0000 1519 | RP480 DC *-* SAVE ACCUMULATOR E PMN26310
0041 0000 1520 | DC *-* SAVE EXTENSION O PMN26320
0042 0000 1521 | RP500 DC *-* CURRENT COL ADDRESS E PMN26330
0043 1100 1522 | DC /1100 PUNCH A COLUMN O PMN26340
0044 0000 1523 | RP520 DC *-* RESTART INFORMATION E PMN26350
0045 1701 1524 | RP540 DC /1701 SENSE LEVEL 0 WITH RESET O PMN26360
0046 4E00 1525 | RP560 DC /4E00 INITIATE 2501 READ E PMN26370
0047 4F01 1526 | RP580 DC /4F01 SENSE 2501 WITH RESET O PMN26380
0048 0000 1527 | RP600 DC *-* WD CNT ADRS FOR 2501 E PMN26390
0049 0000 1528 | RP620 DC *-* PRESET CONTROL FUNCTION O PMN26400
004A 0001 1529 | RP640 DC 1 CONSTANT E PMN26410
004B 1402 1530 | RP660 DC /1402 FEED CARD FROM 1442 O PMN26420
004C 1000 1531 | RP680 DC /1000 CONSTANT E PMN26430
004D 1702 1532 | RP700 DC /1702 SENSE LEV 4 W/RESET 1442 O PMN26440
004E 3000 1533 | RP720 DC /3000 CONSTANTS,REPRESENT SLASH PMN26450
004F 3000 1534 | DC /3000 IN IBM CARD CODE PMN26460
0050 4000 1535 | RP740 DC /4000 CONSTANT PMN26470
1536 | *************************************************** PMN26480
1537 | * PMN26490
1538 | * LAST CARD SUBROUTINE PMN26500
1539 | * PMN26510
0051 C0ED 1540 | RP220 LD RP200 PMN26520
0052 4804 1541 | BSC E 1442, SET $LAST POSITIVE PMN26530
0053 C0FF 1542 | LD *-1 2501, SET $LAST NEGATIVE212 PMN26540
0054 D400 0033 1543 | STO L $LAST PMN26560
0056 70C4 1544 | MDX RP100 PMN26570
1545 | * PMN26580
1546 | * 1442-5 READY TEST PMN26590
1547 | * PMN26600
0057 4C00 0000 1548 | RP240 BSC L *-* PMN26610
0059 08F2 1549 | XIO RP700-1 SENSE 1442 W/RESET PMN26620
005A 4804 1550 | BSC E FALL THRU IF NR PMN26630
005B 7003 1551 | MDX RP260 TO DISPLAY ERROR CODE PMN26640
005C C0F0 1552 | LD RP700 CHANGE 2501 SENSE W/RESET PMN26650
005D D0E1 1553 | STO RP200 *TO 1442 SENSE W/RESET PMN26660
005E 70F8 1554 | MDX RP240 1442 IS READY PMN26670
005F C0EC 1555 | RP260 LD RP680 FETCH DISPLAY CODE PMN26680
0060 4400 0028 1556 | BSI L $PRET TO PREOPERATIVE ERROR TRAP PMN26690
0062 70F6 1557 | MDX RP240+2 RETEST PMN26700
1558 | * PMN26710
1559 | * 2501 READY TEST PMN26720
0063 4C00 0000 1560 | RP280 BSC L *-* PMN26730
0065 08E0 1561 | XIO RP580-1 SENSE 2501 W/RESET PMN26740
0066 4804 1562 | BSC E FALL THRU IF NOT READY PMN26750
0067 7003 1563 | MDX RP300 TO SETUP ERROR CODE PMN26760
0068 C0DE 1564 | LD RP580 CHANGE 1442 SENSE W/RESET PMN26770
0069 D0D5 1565 | STO RP200 *TO 2501 SENSE W/RESET PMN26780
006A 70F8 1566 | MDX RP280 2501 IS READY PMN26790
006B C0E4 1567 | RP300 LD RP740 FETCH DISPLAY CODE PMN26800
006C 4400 0028 1568 | BSI L $PRET TO PREOPERATIVE ERROR TRAP PMN26810
006E 70F6 1569 | MDX RP280+2 RETEST FOR READY PMN26820
1570 | * PMN26830
1571 | **************************************M************ PMN26840
1572 | * PMN26850
1573 | * 2501 READER CALL PROCESSING PMN26860
1574 | * PMN26870
006F 40F4 1575 | RP400 BSI RP280+1 TO TEST 2501 READY PMN26880
0070 C0D5 1576 | LD RP560 SET UP CTRL IOCC TO START PMN26890
0071 D0D7 1577 | STO RP620 *2501 READER PMN26900
0072 18D0 1578 | RTE 16 ROTATE I/O AREA ADDR IN PMN26910
0073 D0D4 1579 | STO RP600 WORD COUNT PMN26920
0074 D0CF 1580 | RP420 STO RP520 SAVE FOR RESTART PROC PMN26930
0075 6C00 0013 1581 | STX L0 $IBSY TURN ON BUSY INDICATOR PMN26940
0077 7401 0032 1582 | MDX L $IOCT,1 INCREMENT IOCS CNTR 2-2 PMN26950
0079 08CE 1583 | RP410 XIO RP620-1 START DEVICE PMN26960
007A 2000 1584 | RP440 LDS 0 RESET STATUS PMN26970
007B 7086 1585 | MDX RP000 RETURN TO CALLING PROGRAM PMN26980
1586 | * PMN26990
1587 | *************************************************** PMN27000
1588 | * PMN27010
1589 | * GENERAL CALL PROCESSING PMN27020
1590 | * PMN27030
007C 28FD 1591 | RP320 STS RP440 SAVE STATUS PMN27040
007D D003 1592 | STO RP360 DECODE CALLING FUNCTION PMN27050
007E 7400 0013 1593 | RP340 MDX L $IBSY,0 TEST PROGRAM BUSY PMN27060
0080 70FD 1594 | MDX RP340 LOOP UNTIL NOT BUSY PMN27070
0081 0000 1595 | RP360 DC *-* TO CONTAIN MDX INSTRUC PMN27080
0082 70EC 1596 | MDX RP400 READ PMN27090
0083 700C 1597 | MDX RP460 PUNCH PMN27100
0084 70EA 1598 | MDX RP400 READ PMN27110
1599 | * PMN27120
1600 | *************************************************** PMN27130
1601 | * PMN27140
1602 | * 1442 FEED CALL PROCESSING PMN27150
1603 | * PMN27160
0085 40D2 1604 | RP380 BSI RP240+1 TEST READY ON 1442-5 PMN27170
0086 C0C4 1605 | LD RP660 SETUP FEED IOCC PMN27180
0087 D0C1 1606 | STO RP620 PMN27190
0088 C400 0033 1607 | LD L $LAST TEST LAST CARD INDICATOR PMN27200
008A 4818 1608 | BSC +- SKIP IF ON PMN27210
008B 70E9 1609 | MDX RP420+1 GO SET BUSY + START FEED PMN27220
008C 1010 1610 | SLA 16 PMN27230
008D D400 0033 1611 | STO L $LAST CLEAR LAST CARD INDICATOR PMN27240
008F 70E9 1612 | MDX RP410 DO NOT SET BUSY ON PMN27250
1613 | * PMN27260
1614 | *************************************************** PMN27270
1615 | * PMN27280
1616 | * 1442 PUNCH CALL PROCESSING PMN27290
1617 | * PMN27300
0090 40C7 1618 | RP460 BSI RP240+1 TO TEST 1442 READY PMN27310
0091 C0AC 1619 | LD RP180 SETUP CONTROL IOCC TO PMN27320
0092 D0B6 1620 | STO RP620 START CARD PUNCH PMN27330
0093 18D0 1621 | RTE 16 PMN27340
0094 80B5 1622 | A RP640 BUMP TO ADDR OF DATA WD 1 PMN27350
0095 D0AC 1623 | STO RP500 SET UP ADDR OF FIRST COL PMN27360
0096 70DD 1624 | MDX RP420 TO SET BUSY AND START PMN27370
1625 | * PMN27380
1626 | * PMN27390
1627 | * PATCH AREA PMN27400
1628 | * PMN27410
0097 1629 | BSS /9D-* PATCH AREA 212 PMN27420
009D 2542 1630 | DC /2542 PMN27430
SYSTEM 1442/1442 SUBROUTINE
1632 | *************************************************** PMN27450
1633 | * * PMN27455
1634 | *STATUS - VERSION 2, MODIFICATION LEVEL 12 * PMN27460
1635 | * * PMN27470
1636 | *FUNCTION/OPERATION- * PMN27480
1637 | * * READ WITHOUT CONVERSION * PMN27490
1638 | * * PUNCH * PMN27500
1639 | * * READ WITH CONVERSION (SEE NOTES) * PMN27510
1640 | * * FEED * PMN27520
1641 | * * PMN27530
1642 | *ENTRY POINTS- * PMN27540
1643 | * * CD000+1 IS THE USER ENTRY * PMN27550
1644 | * * CD010+1 IS THE END OF CARD INTERRUPT ENTRY * PMN27560
1645 | * * CD016+1 IS THE COLUMN INTERRUPT ENTRY * PMN27570
1646 | * * PMN27580
1647 | *INPUT- * PMN27590
1648 | * * READ WITHOUT CONVERSION * PMN27600
1649 | * ACC = 7000 * PMN27610
1650 | * EXT = ADDRESS OF I/O AREA (WORD COUNT) * PMN27620
1651 | * * PUNCH * PMN27630
1652 | * ACC = 7001 * PMN27640
1653 | * EXT = ADDRESS OF I/O AREA (WORD COUNT) * PMN27650
1654 | * LAST COLUMN TO BE PUNCHED CONTAINS * PMN27660
1655 | * 1142 PUNCH STOP BIT (BIT 12) * PMN27670
1656 | * * READ WITH CONVERSION * PMN27680
1657 | * ACC = 7002 * PMN27690
1658 | * EXT = ADDRESS OF I/O AREA (WORD COUNT) * PMN27700
1659 | * * FEED * PMN27710
1660 | * ACC = 7003 * PMN27720
1661 | * * PMN27730
1662 | *OUTPUT- * PMN27740
1663 | * * I/O AREA OF 80 WORDS CONTAINING ALL * PMN27750
1664 | * COLUMN IMAGES OF CARD JUST READ * PMN27760
1665 | * * PUNCHED CARD, THE NUMBER OF COLUMNS PUNCHED * PMN27770
1666 | * DETERMINED BY THE POSITION OF THE * PMN27780
1667 | * 1442 PUNCH STOP BIT * PMN27790
1668 | * * CARD (OR CARDS) ADVANCED ON STATION * PMN27800
1669 | * IN 1442. FROM READ STATION TO PUNCH * PMN27810
1670 | * STATION, OR FROM PUNCH TO STACKER * PMN27820
1671 | * * PMN27830
1672 | *EXTERNAL REFERENCES- * PMN27840
1673 | * $CTSW * PMN27850
1674 | * $IBSY * PMN27860
1675 | * $IOCT 2-2 * PMN27870
1676 | * $PRET * PMN27880
1677 | * $PST4 * PMN27890
1678 | * * PMN27900
1679 | *EXITS- * PMN27910
1680 | * NORMAL- * PMN27920
1681 | * * SUBROUTINE RETURNS TO USER AFTER * PMN27930
1682 | * FUNCTION HAS BEEN INITIATED * PMN27940
1683 | * * SUBROUTINE RETURNS TO POINT OF * PMN27950
1684 | * INTERRUPTION AFTER A COLUMN INTERRUPT * PMN27960
1685 | * (LEVEL 0) HAS BEEN SERVICED * PMN27970
1686 | * * SUBROUTINE RETURNS TO INTERRUPT LEVEL * PMN27980
1687 | * SUBROUTINE (ILS04) AFTER THE END OF CARD * PMN27990
1688 | * INTERRUPT HAS BEEN SERVICED * PMN28000
1689 | * ERROR- * PMN28010
1690 | * * $PRET WITH 1000 IN THE ACCUMULATOR WHEN * PMN28020
1691 | * THE 1442 IS NOT READY TO INITIATE A * PMN28030
1692 | * FUNCTION * PMN28040
1693 | * * $PST4 WITH 1000 IN THE ACCUMULATOR WHEN * PMN28050
1694 | * AN ERROR HAS OCCURRED AND THE 1442 IS * PMN28060
1695 | * NOT READY TO RETRY THE FUNCTION * PMN28070
1696 | * * SUBROUTINE RETURNS TO USER WITH $CTSW * PMN28080
1697 | * SET NON-ZERO AFTER A MONITOR CONTROL * PMN28090
1698 | * CARD (// IN COLUMNS 1-2) HAS BEEN READ * PMN28100
1699 | * * SUBROUTINE RETURNS TO USER WITH $LAST * PMN28110
1700 | * SET NON-ZERO IF 1442 IS IN LAST * PMN28120
1701 | * CARD SEQUENCE * PMN28130
1702 | * * PMN28140
1703 | *TABLES/WORK AREAS-N/A * PMN28150
1704 | * * PMN28160
1705 | *ATTRIBUTES- * PMN28170
1706 | * * NATURALLY RELOCATABLE * PMN28180
1707 | * * SERIALLY REUSEABLE * PMN28190
1708 | * * PMN28200
1709 | *NOTES- * PMN28210
1710 | * CONVERSION OF INPUT TO UNPACKED EBCDIC IS * PMN28220
1711 | * PROVIDED BY THE SYSTEM KEYBOARD AND THE * PMN28230
1712 | * SYSTEM PAPER TAPE SUBROUTINES. THIS * PMN28240
1713 | * CONVERSION IS NOT PERFORMED BY EITHER * PMN28250
1714 | * SYSTEM CARD SUBROUTINE BECAUSE OF SPEED * PMN28260
1715 | * PERFORMANCE CONSIDERATIONS. AN ENTRY POINT * PMN28270
1716 | * FOR READ WITH CONVERSION WAS PROVIDED TO * PMN28280
1717 | * RELIEVE THE CALLING PROGRAM OF DEVICE * PMN28290
1718 | * DEPENDENT CODING * PMN28300
1719 | *************************************************** PMN28310
SYSTEM 1442/1442 SUBROUTINE
0000 1721 | ORG 0 PMN28330
*SBRKGPW 90 1722 | *SYS 1442/1442 V2M04 PMN28340
0000 00AB 1723 | DC CD990-CD000+1 WORD CNT OF SYS 1442 PMN28350
0001 0090 1724 | DC @1442 PHASE ID OF SYS 1442 PMN28360
SYSTEM 1442/1442 SUBROUTINE
0002 4C00 0000 1726 | CD000 BSC L *-* EXIT/ENTRY PMN28380
0004 7050 1727 | MDX CD080 GO TO CALL PROCESSING PMN28390
1728 | * PMN28400
1729 | * END OF CARD INTERRUPT (LEVEL 4) PMN28410
1730 | * PMN28420
0005 4C00 0000 1731 | CD010 BSC L *-* EXIT/ENTRY PMN28430
0007 700C 1732 | MDX CD020 PMN28440
1733 | * PMN28450
1734 | * COLUMN INTERRUPTS (LEVEL 0) PMN28460
1735 | * PMN28470
0008 4C40 0000 1736 | CD016 BOSC L *-* EXIT (LEVEL 0 OFF)/ENTER PMN28480
000A D873 1737 | STD CD190 SAVE ACC AND EXTENSION PMN28490
000B 2806 1738 | STS CD018 SAVE STATUS INDICATORS PMN28500
000C 0873 1739 | XIO CD210 RESET LEVEL 0 DSW PMN28510
000D 0876 1740 | XIO CD250 READ OR PUNCH COLUMN PMN28520
000E C075 1741 | LD CD250 ADD 1 TO COLUMN ADDRESS PMN28530
000F 8076 1742 | A CD240 OF READ OR PUNCH COLUMN PMN28540
0010 D073 1743 | STO CD250 IOCC FOR NEXT COLUMN PMN28550
0011 C86C 1744 | LDD CD190 RELOAD ACC AND EXTENSION PMN28560
0012 2000 1745 | CD018 LDS 0 RELOAD STATUS INDICATORS PMN28570
0013 70F4 1746 | MDX CD016 GO TO LEVEL 0 EXIT PMN28580
1747 | * PMN28590
0014 6500 0028 1748 | CD020 LDX L1 $PRET ADDRESS OF SOFTWARE TRAP PMN28600
0016 086B 1749 | XIO CD215 PMN28610
0017 1003 1750 | SLA 3 SAVE ERROR BIT IN CARRY PMN28620
0018 D075 1751 | STO CD280 SAVE SHIFTED DSW 2-9 PMN28630
0019 4802 1752 | BSC C IF NO ERROR CHECK LAST CARD PMN28640
001A 701F 1753 | MDX CD050 ERROR CONTINUE AT CD050 PMN28650
001B 4828 1754 | BSC +Z MINUS IF LAST CARD 2-7 PMN28660
001C 7006 1755 | MDX CD030 BR IF LAST CARD 2-7 PMN28670
001D C072 1756 | LD CD188 2-9 PMN28680
001E 4818 1757 | BSC +- TEST IF LAST OP WAS SKIP2-9 PMN28690
001F 7003 1758 | MDX CD030 CONTINUE IF NOT SKIP 2-9 PMN28700
0020 1010 1759 | SLA 16 2-9 PMN28710
0021 D06E 1760 | STO CD188 RESET SKIP INDICATOR 2-9 PMN28720
0022 7023 1761 | MDX CD060 CONT WITH PREVIOUS FUNCT2-9 PMN28730
1762 | * 2-9 PMN28740
1763 | * PMN28750
1764 | * NO ERRORS IN CARD JUST COMPLETED PMN28760
1765 | * PMN28770
0023 1010 1766 | CD030 SLA 16 PMN28780
0024 D1EB 1767 | STO 1 $IBSY-X1 SET I/O BUSY SW = ZERO PMN28790
0025 74FF 0032 1768 | MDX L $IOCT,-1 DECREMENT IOCS CNTR 2-2 PMN28800
0027 1000 1769 | NOP IN CASE OF SKIP 2-2 PMN28810
0028 C057 1770 | LD CD210 FETCH ADDR OF 1ST COLUMN PMN28820
0029 D001 1771 | STO CD034+1 AND INITLZ LDX INSTRUCTION PMN28830
002A 6600 0000 1772 | CD034 LDX L2 *-* PMN28840
002C C201 1773 | LD 2 +1 PMN28850
002D 18D0 1774 | RTE 16 PLACE FIRST TWO COLUMNS PMN28860
002E C200 1775 | LD 2 0 IN ACC AND EXTENSION PMN28870
002F 985F 1776 | SD CD280+1 SD FROM ODD LOC FOR // 2-9 PMN28880
0030 4818 1777 | BSC +- PMN28890
0031 18D0 1778 | RTE 16 CHECK 1ST TWO COLUMNS PMN28900
0032 4820 1779 | BSC Z FOR DOUBLE SLASH (//) PMN28910
0033 70D1 1780 | MDX CD010 EXIT IF NOT EQUAL PMN28920
0034 C202 1781 | LD 2 +2 IF EQUAL CHECK 3RD PMN28930
0035 4820 1782 | BSC Z COLUMN FOR BLANK PMN28940
0036 70CE 1783 | MDX CD010 EXIT IF NOT EQUAL PMN28950
0037 6C00 000F 1784 | STX L0 $CTSW SET RECORD TRAP SW NON-ZERO PMN28960
0039 70CB 1785 | MDX CD010 GO TO LEVEL 4 EXIT PMN28970
1786 | * PMN28980
1787 | * CARD JUST COMPLETED WITH ERROR INDICATOR ON PMN28990
1788 | * PMN29000
003A C052 1789 | CD050 LD CD230 IF FUNCTION WAS PUNCH, PMN29010
003B F04E 1790 | EOR CD204 DO NOT SKIP 1ST CARD PMN29020
003C 4818 1791 | BSC +- PMN29030
003D 7008 1792 | MDX CD060 FUNCTION IS PUNCH PMN29040
003E C045 1793 | LD CD250 READ FUNCTION 2-9 PMN29050
003F F040 1794 | EOR CD210 2-9 PMN29060
0040 4818 1795 | BSC +- IF NO COL READ 2-9 PMN29070
0041 7003 1796 | MDX CD055 *SET SKIP INDICATOR 2-9 PMN29080
0042 C04B 1797 | LD CD280 IF COLS READ 2-9 PMN29090
0043 4810 1798 | BSC - *AND LAST CD, SKIP 2-9 PMN29100
0044 7001 1799 | MDX CD060 *ELSE DO NOT SET SKIP 2-9 PMN29110
0045 684A 1800 | CD055 STX 0 CD188 SET SKIP INDICATOR 2-9 PMN29120
0046 0839 1801 | CD060 XIO CD210 TEST FOR 1442 READY PMN29130
0047 4804 1802 | BSC E IF BIT 15 OF ACC = 1, PMN29140
0048 7009 1803 | MDX CD070 1442 IS NOT READY PMN29150
1804 | * PMN29160
1805 | * 1442 IS READY FOR RE-INITIATION OF OPERATION PMN29170
1806 | * PMN29180
0049 C046 1807 | LD CD188 IF SKIP 1ST CARD INDICATOR PMN29190
004A 4818 1808 | BSC +- IS ON, TAKE O5E FEED CYCLE PMN29200
004B 7002 1809 | MDX CD066 SKIP IND IS NOT ON PMN29210
004C 0839 1810 | XIO CD240 INITIATE FEED OPERATION PMN29220
004D 70B7 1811 | MDX CD010 GO TO LEVEL 4 EXIT PMN29230
004E C031 1812 | CD066 LD CD210 RESET COLUMN IOCC PMN29240
004F D034 1813 | STO CD250 FOR FIRST COLUMN PMN29250
0050 083B 1814 | XIO CD220 RESTART LAST OPERATION PMN29260
0051 70B3 1815 | MDX CD010 GO TO LEVEL 4 EXIT PMN29270
1816 | * PMN29280
1817 | * 1442 IS NOT READY TO REPEAT LAST OPERATION PMN29290
1818 | * PMN29300
0052 C039 1819 | CD070 LD CD220 1442 NOT READY CODE = 1000 PMN29310
0053 4165 1820 | BSI 1 $PST4-X1 WAIT AT INTRPT 4 TRAP PMN29320
0054 70F1 1821 | MDX CD060 REPEAT TEST FOR 1442 READY PMN29330
1822 | * PMN29340
1823 | * CONTINUE CALL PROCESSING PMN29350
1824 | * PMN29360
0055 2823 1825 | CD080 STS CD120 SAVE STATUS INDICATORS PMN29370
1826 | * PMN29380
1827 | * DECODE FUNCTION IN ACC PMN29390
1828 | * PMN29400
0056 D000 1829 | STO CD090 PMN29410
0057 0000 1830 | CD090 DC *-* BRANCH TO PROPER FUNCTION PMN29420
0058 700C 1831 | MDX CD100 7000 = READ W/O CONVERSION PMN29430
0059 7021 1832 | MDX CD130 7001 = PUNCH PMN29440
005A 700A 1833 | MDX CD100 7002 = READ WITH CONV. PMN29450
1834 | * PMN29460
1835 | * 7003 = FEED A CARD PMN29470
1836 | * PMN29480
005B 4036 1837 | BSI CD140+1 COMMON INITLZ SUBROUTINE PMN29490
005C 0829 1838 | XIO CD240 FEED CARD PMN29500
005D C400 0033 1839 | LD L $LAST IF LAST CARD, NO EOC PMN29510
005F 4818 1840 | BSC +- INTRPT AFTER CARD FEED. PMN29520
0060 7014 1841 | MDX CD110+1 THEREFORE CLEAR LAST CARD PMN29530
0061 1010 1842 | SLA 16 IND, BUT DO NOT SET I/O PMN29540
0062 D400 0033 1843 | STO L $LAST BUSY SWITCH NON-ZERO. PMN29550
0064 7014 1844 | MDX CD120 GO TO LOAD STATUS PMN29560
1845 | * PMN29570
1846 | * FUNCTION IS READ PMN29580
1847 | * PMN29590
0065 402C 1848 | CD100 BSI CD140+1 COMMON INITLZ SUBROUTINE PMN29600
0066 C017 1849 | LD CD190 GET I/O AREA ADDR 2-3 PMN29610
0067 18D0 1850 | RTE 16 GET DSW BACK TO ACC 2-3 PMN29620
0068 1003 1851 | SLA 3 TEST IF LAST CARD READ 2-3 PMN29630
0069 4810 1852 | BSC - *BY USER PROG 2-3 PMN29640
006A 7005 1853 | MDX CD101 *NO BRANCH 2-3 PMN29650
006B 081A 1854 | XIO CD240 *YES,FEED CARD FROM PNCH2-3 PMN29660
006C 1010 1855 | SLA 16 PMN29670
006D D400 0033 1856 | STO L $LAST PMN29680
006F 7036 1857 | MDX CD184 BR TO DISPLAY NOT RDY 2-3 PMN29690
0070 C817 1858 | CD101 LDD CD200 SET-UP CONTROL 1442 IOCC PMN29700
0071 D01B 1859 | CD102 STO CD230 TO START READER OR PUNCH PMN29710
0072 18D0 1860 | RTE 16 SET-UP COLUMN 1442 IOCC PMN29720
0073 D011 1861 | STO CD260 TO READ OR PUNCH A COLUMN PMN29730
0074 0817 1862 | CD110 XIO CD220 START READER OR PUNCH PMN29740
0075 7401 0032 1863 | MDX L $IOCT,1 INCREMENT IOCS CNTR 2-2 PMN29750
0077 6C00 0013 1864 | STX L0 $IBSY SET I/O BUSY SW NON-ZERO PMN29760
0079 2000 1865 | CD120 LDS 0 RELOAD STATUS INDICATORS PMN29770
007A 7087 1866 | MDX CD000 GO TO CALL EXIT PMN29780
1867 | * PMN29790
1868 | * FUNCTION IS PUNCH PMN29800
1869 | * PMN29810
007B 4016 1870 | CD130 BSI CD140+1 COMMON INITLZ SUBROUTINE PMN29820
007C C80D 1871 | LDD CD204 SET-UP PUNCH IOCC'S PMN29830
007D 70F3 1872 | MDX CD102 CONTINUE FIXING IOCC'S PMN29840
1873 | * IOCC'S AND CONSTANTS PMN29850
1874 | * PMN29860
007E 1875 | BSS E 0 ADJUST IC TO EVEN PMN29870
007E 1876 | CD190 BSS 2 SAVE OF ACC AND EXTENSION PMN29880
0080 0000 1877 | CD210 DC *-* RESET 1ST COLUMN ADDR PMN29890
0081 1701 1878 | DC /1701 SENSE 1442 DSW (RESET 0) PMN29900
0082 0000 1879 | CD215 DC 0 1ST WORD OF SENSE DSW IOCC PMN29910
0083 1702 1880 | DC /1702 SENSE DSW , LEVEL 4 W/RESET PMN29920
0084 0000 1881 | CD250 DC *-* CURRENT COLUMN ADDRESS PMN29930
0085 0000 1882 | CD260 DC *-* READ OR PUNCH COLUMN IOCC PMN29940
0086 0001 1883 | CD240 DC 1 INCREMENTS COL. ADDR PMN29950
0087 1402 1884 | DC /1402 IOCC FEED CARD PMN29960
0088 1404 1885 | CD200 DC /1404 START READER WHEN AT CD230 PMN29970
0089 1200 1886 | DC /1200 READ COLUMN WHEN AT CD260 PMN29980
008A 1401 1887 | CD204 DC /1401 START PUNCH WHEN AT CD230 PMN29990
008B 1100 1888 | DC /1100 PUNCH COLUMN WHEN AT CD260 PMN30000
008C 1000 1889 | CD220 DC /1000 1442 NOT READY DISPLAY PMN30010
008D 0000 1890 | CD230 DC *-* START READER OR PUNCH IOCC PMN30020
008E 0000 1891 | CD280 DC *-* SHIFTED DEVICE STATUS WD2-9 PMN30030
008F 3000 1892 | DC /3000 COL IMAGE // (ODD ADDR) 2-9 PMN30040
0090 0000 1893 | CD188 DC *-* SKIP 1ST CARD INDICATOR PMN30050
0028 1894 | X1 EQU $PRET XR1 INSTRUCTION POINTER PMN30060
1895 | * PMN30070
1896 | * COMMON INITIALIZATION SUBROUTINE PMN30080
1897 | * PMN30090
0091 4C00 0000 1898 | CD140 BSC L *-* EXIT/ENTRY PMN30100
0093 7400 0013 1899 | CD150 MDX L $IBSY,0 LOOP UNTIL LAST FUNCTION PMN30110
0095 70FD 1900 | MDX CD150 COMPLETE AND IBUSY = ZERO PMN30120
0096 08E9 1901 | CD160 XIO CD210 TEST FOR 1442 READY PMN30130
0097 4804 1902 | BSC E IF BIT 15 OF ACC = 1, PMN30140
0098 7006 1903 | MDX CD180 1442 IS NOT READY PMN30150
1904 | * PMN30160
1905 | * 1442 READY TO INITIATE OPERATION PMN30170
1906 | * PMN30180
0099 18D0 1907 | RTE 16 PUT I/O AREA ADDR IN ACC PMN30190
009A D0E3 1908 | STO CD190 SAVE I/O AREA ADDR 2-3 PMN30200
009B 80EA 1909 | A CD240 ADD 1 TO FORM COL. 1 ADDR PMN30210
009C D0E7 1910 | STO CD250 SET-UP ADDR OF COLUMN IOCC PMN30220
009D D0E2 1911 | STO CD210 FOR 1ST COLUMN PMN30230
009E 70F2 1912 | MDX CD140 GO TO EXIT COMMON SUBRTNE PMN30240
1913 | * PMN30250
1914 | * 1442 NOT READY TO INITIATE OPERATION PMN30260
1915 | * PMN30270
009F 1003 1916 | CD180 SLA 3 SAVE ERROR BIT IN CARRY PMN30280
00A0 C0B6 1917 | LD CD090 NO SKIP OF 1ST CARD PMN30290
00A1 F0E4 1918 | EOR CD240 WHEN FUNCTION IS PUNCH PMN30300
00A2 4818 1919 | BSC +- FUNCTION = PUNCH IF NOT 0 PMN30310
00A3 7002 1920 | MDX CD184 PUNCH PMN30320
00A4 4802 1921 | BSC C FUNCTION = READ. IF CARRY PMN30330
00A5 68EA 1922 | STX 0 CD188 SET, SKIP 1ST CARD PMN30340
00A6 C0E5 1923 | CD184 LD CD220 DISPLAY 1442 NOT READY CODE PMN30350
00A7 4400 0028 1924 | BSI L $PRET WAIT AT PREOPERATIVE TRAP PMN30360
00A9 70EC 1925 | MDX CD160 REPEAT TEST FOR 1442 READY PMN30370
1926 | * PMN30380
00AA 1927 | BSS /AC-* 212 PMN30390
00AC FFFF 1928 | CD990 DC /FFFF *AREA PMN30400
SYSTEM 1134/1055 SUBROUTINE
1930 | *************************************************** PMN30420
1931 | * * PMN30430
1932 | *STATUS- VERSION 2, MODIFICATION LEVEL 7 * PMN30440
1933 | * * PMN30450
1934 | *FUNCTION/OPERATION- * PMN30460
1935 | * *READ WITHOUT CONVERSION (EBCDIC) * PMN30470
1936 | * *READ WITH CONVERSION (PTTC/8) * PMN30480
1937 | * *PUNCH (EBCDIC) * PMN30490
1938 | * * PMN30500
1939 | *ENTRY POINTS- * PMN30510
1940 | * *PI000+1 IS THE USER ENTRY. * PMN30520
1941 | * *PT010+1 IS THE INTERRUPT ENTRY. * PMN30530
1942 | * * PMN30540
1943 | *INPUT- * PMN30550
1944 | * *READ WITHOUT CONVERSION * PMN30560
1945 | * ACC = 7000 * PMN30570
1946 | * EXT = ADDRESS OF I/O AREA * PMN30580
1947 | * *READ WITH CONVERSION * PMN30590
1948 | * ACC = 7002 * PMN30600
1949 | * EXT = ADDRESS OF I/O AREA * PMN30610
1950 | * *PUNCH * PMN30620
1951 | * ACC = 7001 * PMN30630
1952 | * EXT = ADDRESS OF I/O AREA * PMN30640
1953 | * **THE I/O AREA CONSISTS OF ONE WORD OF WORD * PMN30650
1954 | * COUNT FOLLOW BY THAT NUMBER OF WORDS OF * PMN30660
1955 | * PACKED EBCDIC. * PMN30670
1956 | * * PMN30680
1957 | *OUTPUT- * PMN30690
1958 | * *I/O AREA IN UNPACKED EBCDIC. * PMN30700
1959 | * *PUNCHED EBCDIC TAPE. * PMN30710
1960 | * * PMN30720
1961 | *EXTERNAL REFERENCES- * PMN30730
1962 | * $CTSW * PMN30740
1963 | * $IBSY * PMN30750
1964 | * $IOCT 2-2 * PMN30760
1965 | * $PRET * PMN30770
1966 | * $PST4 * PMN30780
1967 | * * PMN30790
1968 | *EXITS- NORMAL * PMN30800
1969 | * *SUBROUTINE RETURNS TO USER AFTER FUNCTION * PMN30810
1970 | * HAS BEEN INITIATED. * PMN30820
1971 | * *SUBROUTINE RETURNS TO INTERRUPT LEVEL * PMN30830
1972 | * SUBROUTINE AFTER A INTERRUPT HAS BEEN * PMN30840
1973 | * SERVICED. * PMN30850
1974 | * * PMN30860
1975 | *EXITS- ERROR * PMN30870
1976 | * *$PRET WITH 3000 IN THE ACCUMULATOR WHEN * PMN30880
1977 | * DEVICE NOT READY. * PMN30890
1978 | * * PMN30900
1979 | *TABLES/WORK AREAS- * PMN30910
1980 | * PT780 IS A 119 WORD TABLE OF PTTC/8 TO * PMN30920
1981 | * EBCDIC CONVERSION WITH PTTC/8 IN BITS 0-7 * PMN30930
1982 | * AND EBCDIC IN BITS 8-16. * PMN30940
1983 | * * PMN30950
1984 | *ATTRIBUTES- * PMN30960
1985 | * *NATURALLY RELOCATABLE. * PMN30970
1986 | * *REUSABLE. * PMN30980
1987 | * * PMN30990
1988 | *************************************************** PMN31000
SYSTEM 1134/1055 SUBROUTINE
0000 1990 | ORG 0 PMN31020
*SBRKSMC 91 1991 | *SYS 1134/1055 V2M02 PMN31030
0000 016B 1992 | DC PT790-*-1 WORD CNT OF SYS 1134 SUBR PMN31040
0001 0091 1993 | DC @1134 PHASE ID OF SYS 1134 SUBR PMN31050
SYSTEM 1134/1055 SUBROUTINE
0002 4C00 0000 1995 | PT000 BSC L *-* ENTRY FROM MAIN (+2) PMN31070
0003 1996 | ORG *-1 PMN31080
0003 00F5 1997 | DC PT780 ADDR OF CONV TBL FOR ASM PMN31090
0004 7008 1998 | MDX PT040 GO TO SERVICE PMN31100
0005 4C00 0000 1999 | PT010 BSC L *-* ENTRY FROM INTRPT (+5) PMN31110
0007 C003 2000 | LD PT020 INITLZ SYST TRAP ADDR PMN31120
0008 D04B 2001 | STO PT160+1 TO 'TEST DEV RDY' SUBR PMN31130
0009 704C 2002 | MDX PT170 GO TO SERVICE INTRPT PMN31140
2003 | * * PMN31150
000A 0001 2004 | PT015 DC 1 CHANGED BY THE ASM PMN31160
000B 008D 2005 | PT020 DC $PST4 ADDR OF INTRPT TRAP ADDR PMN31170
000C 0028 2006 | PT030 DC $PRET ADDR OF CALL TRAP ADDR PMN31180
2007 | * * PMN31190
000D D015 2008 | PT040 STO PT060 SET UP FOR FUNCTION BRANCH PMN31200
000E C400 0013 2009 | LD L $IBSY TEST SUBR BUSY INDR. PMN31210
0010 4820 2010 | BSC Z PMN31220
0011 70FC 2011 | MDX *-4 LOOP UNTIL NOT BUSY PMN31230
2012 | * * PMN31240
0012 D075 2013 | STO PT310 INITLZ THE CASE SWITCH PMN31250
0013 D073 2014 | STO PT300 AND FILL-MODE SWITCH PMN31260
2015 | * TO ZERO * PMN31270
0014 C0F7 2016 | LD PT030 CALL SYSTEM TRAP ADDR PMN31280
0015 D03E 2017 | STO PT160+1 TO 'TEST DEV RDY' SUBR PMN31290
0016 18D0 2018 | RTE 16 PMN31300
0017 D003 2019 | STO *+3 FETCH THE WORD COUNT PMN31310
0018 80F1 2020 | A PT015 AND I/O AREA ADDR PMN31320
0019 D071 2021 | STO PT340 AND ASSIGN THEM PMN31330
001A C400 0000 2022 | LD L *-* TO IN-LINE STORAGE PMN31340
001C D070 2023 | STO PT360 PMN31350
001D 6842 2024 | STX 0 PT200+1 PMN31360
001E C041 2025 | PT050 LD PT200+1 COMPUTE RELATIVE ADDR PMN31370
001F 8069 2026 | A PT320 OF I/O AREA POINTER. PMN31380
0020 D03F 2027 | STO PT200+1 INITLZ IN-LINE PMN31390
0021 D020 2028 | STO PT130+1 CODING PMN31400
0022 D05F 2029 | STO PT270+1 PMN31410
2030 | * * PMN31420
0023 0000 2031 | PT060 DC 0 FUNCTION BR (MDX *+ ) PMN31430
0024 7002 2032 | MDX PT080 *TO HERE FOR READ EBC PMN31440
0025 7003 2033 | MDX PT090 *TO HERE FOR PUNCH,AND PMN31450
0026 D068 2034 | PT070 STO PT380 *TO HERE FOR READ PTTC/8 PMN31460
0027 C064 2035 | PT080 LD PT350 SET READ INDR PMN31470
0028 7001 2036 | MDX PT090+1 PMN31480
2037 | * * PMN31490
0029 C060 2038 | PT090 LD PT330 PMN31500
002A D063 2039 | STO PT370 PMN31510
002B D400 0013 2040 | STO L $IBSY TURN ON SUBR BUSY INDR PMN31520
002D 4019 2041 | BSI PT140 GO TO SENSE DEVICE RDY PMN31530
002E 7401 0032 2042 | MDX L $IOCT,1 INCREMENT IOCS CNTR 2-2 PMN31540
2043 | * * PMN31550
0030 C05D 2044 | PT100 LD PT370 SET UP IOCC WORD PMN31560
0031 1008 2045 | SLA 8 FOR READ/PUNCH PMN31570
0032 E85D 2046 | OR PT390 PMN31580
0033 D065 2047 | STO PT460+1 PMN31590
2048 | * * PMN31600
0034 6863 2049 | STX 0 PT460 COMPUTE THE BUFFER PMN31610
0035 C062 2050 | PT110 LD PT460 ADDRESS FOR THE PMN31620
0036 805A 2051 | A PT400 IOCC INST PMN31630
0037 D060 2052 | STO PT460 PMN31640
2053 | * * PMN31650
0038 C055 2054 | LD PT370 DETERMINE WHAT SERVICE PMN31660
0039 4804 2055 | BSC E REQUESTED PMN31670
003A 7006 2056 | MDX PT130 GO TO PUNCH PMN31680
2057 | * * PMN31690
003B 085A 2058 | XIO PT450 EXEC A READER START PMN31700
2059 | * * PMN31710
003C C060 2060 | LD PT510 SET TO COUNT FIRST 3 CHAR PMN31720
003D D05E 2061 | STO PT500 AS THEY ARE READ IN PMN31730
2062 | * * PMN31740
003E C05F 2063 | LD PT520 INITLZ SLASH CTR PMN31750
003F D060 2064 | STO PT540 TO 3 PMN31760
2065 | * * PMN31770
0040 70C1 2066 | PT120 MDX PT000 EXIT PMN31780
2067 | * * PMN31790
0041 C480 0000 2068 | PT130 LD I *-* PMN31800
0043 D057 2069 | STO PT480 PMN31810
2070 | * * PMN31820
0044 0853 2071 | XIO PT460 PUNCH FIRST WORD PMN31830
0045 70FA 2072 | MDX PT120 RETURN TO MAIN PMN31840
2073 | * * PMN31850
0046 4C00 2074 | DC /4C00 BRANCH BACK TO CALLER PMN31860
0047 0000 2075 | PT140 DC *-* ENT HERE TO TEST DEVICE PMN31870
0048 C045 2076 | LD PT370 DETM DEVICE REQUESTED PMN31880
0049 4804 2077 | BSC E PMN31890
004A 7001 2078 | MDX *+1 SKIP TO SENSE PUNCH PMN31900
004B 7002 2079 | MDX PT150-1 GO TO SENSE READER PMN31910
2080 | * * PMN31920
004C C045 2081 | LD PT410 MODIFY SHIFT INSTR TO PMN31930
004D D001 2082 | STO PT150 SENSE FOR PUNCH PMN31940
2083 | * * PMN31950
004E 0845 2084 | XIO PT430 SENSE AND RESET PMN31960
004F 1005 2085 | PT150 SLA 5 TEST FOR I/O PMN31970
0050 4810 2086 | BSC - DEVICE READY PMN31980
2087 | * * PMN31990
0051 70F4 2088 | MDX PT140-1 GO TO RETURN FROM TEST PMN32000
2089 | * * PMN32010
0052 C041 2090 | LD PT420 ERROR CD TO ACC AND PMN32020
0053 4400 0000 2091 | PT160 BSI L *-* GO TO WAIT IF NOT RDY PMN32030
0055 70F8 2092 | MDX PT150-1 TRY AGAIN PMN32040
2093 | *************************************************** PMN32050
2094 | * * PMN32060
2095 | * THIS BLOCK OF CODING SERVICES * PMN32070
2096 | * AN INTERRUPT FOR READ/PUNCH * PMN32080
2097 | * * PMN32090
2098 | *************************************************** PMN32100
0056 083D 2099 | PT170 XIO PT430 SENSE AND RESET PMN32110
0057 1001 2100 | SLA 1 PMN32120
0058 4810 2101 | BSC - DETM SERVICE REQUEST PMN32130
0059 701F 2102 | MDX PT260 PUNCH REQUEST PMN32140
005A 083D 2103 | PT180 XIO PT460 READ A WORD PMN32150
2104 | * * PMN32160
005B C033 2105 | PT190 LD PT380 PMN32170
005C 4820 2106 | BSC Z BRANCH IF NO CONV REQUEST PMN32180
005D 7060 2107 | MDX PT670 OTHERWISE, GO TO CONVERT PMN32190
005E C03C 2108 | LD PT480 PMN32200
005F D480 0000 2109 | PT200 STO I *-* STORE THE WORD PMN32210
0061 C029 2110 | LD PT340 INCR THE I/O AREA POINTER PMN32220
0062 8027 2111 | A PT330 PMN32230
0063 D027 2112 | STO PT340 PMN32240
0064 C028 2113 | LD PT360 DECR THE WORD COUNT PMN32250
0065 9024 2114 | S PT330 PMN32260
0066 D026 2115 | STO PT360 PMN32270
0067 4830 2116 | BSC -Z PMN32280
0068 7008 2117 | MDX PT230 CHECK FILL-MODE SWITCH PMN32290
2118 | * * PMN32300
0069 1010 2119 | PT210 SLA 16 PMN32310
006A D024 2120 | STO PT380 PMN32320
006B D400 0013 2121 | STO L $IBSY TURN OFF SUBR BUSY INDR PMN32330
006D 74FF 0032 2122 | MDX L $IOCT,-1 DECREMENT IOCS CNTR 2-2 PMN32340
006F 1000 2123 | NOP IN CASE OF SKIP 2-2 PMN32350
0070 7094 2124 | PT220 MDX PT010 EXIT PMN32360
2125 | * * PMN32370
0071 C015 2126 | PT230 LD PT300 PMN32380
0072 4818 2127 | BSC +- TEST FILL-MODE SWITCH PMN32390
0073 7002 2128 | MDX *+2 BRANCH IF OFF PMN32400
0074 C047 2129 | LD PT640 OTHERWISE, FILL OUT PMN32410
0075 70E9 2130 | PT240 MDX PT200 RECORD WITH BLANKS PMN32420
2131 | * * PMN32430
0076 40D0 2132 | PT250 BSI PT140 GO TO TEST DEVC RDY PMN32440
0077 081E 2133 | XIO PT450 START THE READER PMN32450
0078 70F7 2134 | MDX PT220 GO TO RETURN FROM INTRPT PMN32460
2135 | * * PMN32470
2136 | * * PMN32480
0079 C013 2137 | PT260 LD PT360 DECR THE WORD COUNT PMN32490
007A 900F 2138 | S PT330 PMN32500
007B D011 2139 | STO PT360 PMN32510
007C 4808 2140 | BSC + PMN32520
007D 70EB 2141 | MDX PT210 GO TO EXIT PMN32530
007E C00C 2142 | LD PT340 INCR THE I/O AREA POINTER PMN32540
007F 800A 2143 | A PT330 PMN32550
0080 D00A 2144 | STO PT340 PMN32560
2145 | * * PMN32570
0081 C480 0000 2146 | PT270 LD I *-* FETCH WORD INTO BUFFER PMN32580
0083 D017 2147 | STO PT480 PMN32590
0084 40C2 2148 | PT280 BSI PT140 GO TO SENSE DEVICE RDY PMN32600
2149 | * * PMN32610
0085 0812 2150 | PT290 XIO PT460 PUNCH A WORD PMN32620
0086 70E9 2151 | MDX PT220 GO TO EXIT PMN32630
2152 | * * PMN32640
0087 0000 2153 | PT300 DC 0 FILL-MODE SWITCH PMN32650
0088 0000 2154 | PT310 DC 0 PTTC/8 CASE IND PMN32660
2155 | *************************************************** PMN32670
2156 | * * PMN32680
2157 | * * PMN32690
2158 | * FOLLOWING IS A TABLE OF * PMN32700
2159 | * CONSTANTS AND STORAGE LOCATIONS * PMN32710
2160 | * * PMN32720
2161 | *************************************************** PMN32730
0089 006D 2162 | PT320 DC PT340-PT050 ADDR DISPLACEMENT PMN32740
008A 0001 2163 | PT330 DC /0001 PUNCH FUNC INDR PMN32750
008B 0000 2164 | PT340 DC 0 STORAGE FOR I/O ADDRESS PMN32760
008C 0002 2165 | PT350 DC /0002 RD FUNC INDR PMN32770
008D 0000 2166 | PT360 DC 0 STORAGE FOR WD CNT PMN32780
008E 0000 2167 | PT370 DC 0 RD/PNCH IND SWTCH PMN32790
008F 0000 2168 | PT380 DC 0 CONVERSION SWITCH PMN32800
0090 1800 2169 | PT390 DC /1800 PAPER TAPE AREA CODE PMN32810
0091 0066 2170 | PT400 DC PT480-PT110 ADDR DISPLACEMENT PMN32820
0092 1007 2171 | PT410 DC /1007 SHFT INSTR FOR PNCH SENSE PMN32830
0094 2172 | BSS E 0 PMN32840
0094 3000 2173 | PT420 DC /3000 DEVICE NOT RDY ERROR CODE PMN32850
0094 2174 | PT430 EQU PT420 PMN32860
0095 1F01 2175 | DC /1F01 SENSE AND RESET PMN32870
0096 1000 2176 | PT490 DC /1000 PTTC/8 CODE FOR SPACE PMN32880
0096 2177 | PT450 EQU PT490 PMN32890
0097 1C10 2178 | DC /1C10 THE READER PMN32900
0098 0000 2179 | PT460 DC *-* I/O CONTROL COMMAND PMN32910
0099 0000 2180 | DC 0 PUNCH OR READ PMN32920
009A 3100 2181 | PT470 DC /3100 PTTC/8 CODE FOR SLASH PMN32930
009B 0000 2182 | PT480 DC *-* STORAGE FOR I/O DATA PMN32940
009C 0000 2183 | PT500 DC 0 INITIAL INPUT CNTR PMN32950
009D 0004 2184 | PT510 DC 4 CONSTANT FOUR PMN32960
009E 0003 2185 | PT520 DC 3 CONSTANT 3 PMN32970
2186 | *************************************************** PMN32980
2187 | * ENTER HERE TO CHECK INPUT * PMN32990
2188 | * FOR A MONITOR CONTROL RECORD * PMN33000
2189 | *************************************************** PMN33010
009F 700B 2190 | PT530 DC /700B BR TO * +11 PMN33020
00A0 0000 2191 | PT540 DC 0 SLASH COUNTER PMN33030
2192 | * PMN33040
00A1 C0FE 2193 | PT550 LD PT540 ENTER HERE TO CHK FOR PMN33050
00A2 90E7 2194 | S PT330 A CONTROL RECORD PMN33060
00A3 D0FC 2195 | STO PT540 DECR SLASH INDR PMN33070
00A4 4820 2196 | BSC Z SKIP IF TWO SLASHES CHEKED PMN33080
2197 | * * PMN33090
00A5 7008 2198 | MDX PT570 GO CHK FOR A SLASH PMN33100
2199 | * * PMN33110
00A6 C0F4 2200 | LD PT480 PMN33120
00A7 90EE 2201 | S PT490 IS 3RD CHAR A BLANK PMN33130
00A8 4820 2202 | BSC Z YES - SKIP PMN33140
00A9 7003 2203 | MDX PT560 NO - GO TO EXIT PMN33150
00AA C0DF 2204 | LD PT330 PMN33160
00AB D400 000F 2205 | STO L $CTSW IND INPUT IS CTRL RECORD PMN33170
2206 | * * PMN33180
00AD 7031 2207 | PT560 MDX PT730-1 EXIT PMN33190
2208 | * * PMN33200
00AE C0EC 2209 | PT570 LD PT480 PMN33210
00AF 90EA 2210 | S PT470 CHECK FOR A SLASH PMN33220
00B0 4818 2211 | BSC +- SKIP IF NOT A SLASH PMN33230
00B1 70FB 2212 | MDX PT560 GO TO EXIT PMN33240
2213 | * * PMN33250
2214 | * * PMN33260
00B2 1010 2215 | SLA 16 SET CNT TO AVOID PMN33270
00B3 D0E8 2216 | STO PT500 FURTHER CHECKING PMN33280
00B4 70F8 2217 | MDX PT560 CHECKING AND EXIT PMN33290
2218 | *************************************************** PMN33300
2219 | * * PMN33310
2220 | * THIS BLOCK OF CODING PROVIDES * PMN33320
2221 | * FOR CONVERSION FROM PTTC/8 TO EBC. * PMN33330
2222 | * ALL OF THE CODING WHICH FOLLOWS IS * PMN33340
2223 | * CONCERNED WITH, AND ONLY WITH, * PMN33350
2224 | * THIS CONVERSION. * PMN33360
2225 | *************************************************** PMN33370
00B5 00FF 2226 | PT580 DC /00FF CONSTANT TO MASK BITS 0-7 PMN33380
00B6 FF00 2227 | PT582 DC /FF00 PTTC/8 2-7 PMN33390
00B7 8000 2228 | PT590 DC /7F00-/FF00 2-7 PMN33400
00B8 8F00 2229 | PT600 DC /0E00-/7F00 *CODE PMN33410
00B9 6000 2230 | PT610 DC /6E00-/0E00 *FOR PMN33420
00BA 8000 2231 | PT620 DC /8000 *SPECIAL PMN33430
00BB 6F00 2232 | PT630 DC /DD00-/6E00 *CHARACTERS PMN33440
00BC 0040 2233 | PT640 DC /0040 EBC BLANK PMN33450
00BD 0015 2234 | PT660 DC PT780-PT730 ADDR HELP FOR CONV PMN33460
2235 | * * PMN33470
00BE C0DC 2236 | PT670 LD PT480 COME HERE ON CONV REQ PMN33480
00BF 90F6 2237 | S PT582 IS CHARACTER SUPERDELETE2-7 PMN33490
00C0 4818 2238 | BSC +- NO,SKIP 2-7 PMN33500
00C1 70B4 2239 | MDX PT250 YES,GO TO EXIT 2-7 PMN33510
00C2 90F4 2240 | S PT590 IS CHAR A DELETE PMN33520
00C3 4818 2241 | BSC +- NO, BRANCH PMN33530
00C4 70B1 2242 | MDX PT250 YES, GO TO EXIT PMN33540
00C5 90F2 2243 | S PT600 IS CHAR AN UP CASE PMN33550
00C6 4820 2244 | BSC Z YES, SKIP PMN33560
00C7 7003 2245 | MDX PT690 NO, BRANCH PMN33570
00C8 C0F1 2246 | LD PT620 INDICATE CASE AND PMN33580
00C9 D0BE 2247 | PT680 STO PT310 SET CASE SWITCH PMN33590
00CA 70AB 2248 | MDX PT250 GO TO EXIT PMN33600
2249 | * * PMN33610
00CB 90ED 2250 | PT690 S PT610 IS CHAR A LOW CASE PMN33620
00CC 4818 2251 | BSC +- NO, SKIP PMN33630
00CD 70FB 2252 | MDX PT680 YES, GO TO SET INDR PMN33640
00CE 90EC 2253 | PT700 S PT630 IS CHAR A NEW LINE PMN33650
00CF 4818 2254 | BSC +- NO, SKIP PMN33660
00D0 7001 2255 | MDX PT710 YES, GO TO SET INDR PMN33670
00D1 7008 2256 | MDX PT720 NO, GO TO TABLE LOOK-UP PMN33680
2257 | * * PMN33690
2258 | * * PMN33700
00D2 C0C9 2259 | PT710 LD PT500 TEST FOR FIRST CHAR A NEW PMN33710
00D3 F0C9 2260 | EOR PT510 * LINE PMN33720
00D4 4818 2261 | BSC +- NO, SKIP PMN33730
00D5 70A0 2262 | MDX PT250 GO TO EXIT PMN33740
2263 | * * PMN33750
00D6 C0FF 2264 | LD *-1 SET FILL SWITCH PMN33760
00D7 D0AF 2265 | STO PT300 TO ON PMN33770
00D8 709B 2266 | MDX PT230+3 BR TO FILL RECORD W/BLANKS PMN33780
00D9 709B 2267 | PT715 MDX PT240 PMN33790
2268 | * * PMN33800
00DA C0C1 2269 | PT720 LD PT500 PMN33810
00DB 90AE 2270 | S PT330 DECR CHAR CNT PMN33820
00DC D0BF 2271 | STO PT500 PMN33830
00DD 4830 2272 | BSC -Z SKIP TO CONVERT PMN33840
2273 | * * PMN33850
00DE 70C2 2274 | MDX PT550 BR TO SAVE FIRST 3 CHAR PMN33860
00DF 6809 2275 | STX PT750+1 INITILZ TBL ADDR FOR PMN33870
00E0 C008 2276 | PT730 LD PT750+1 *LOOPING TO SCAN THE PMN33880
00E1 80DB 2277 | A PT660 *CONV TABLE PMN33890
00E2 D006 2278 | STO PT750+1 PMN33900
00E3 D00E 2279 | STO PT760+1 PMN33910
00E4 6500 0077 2280 | LDX L1 PT785-PT780 SIZE OF CONVERSION TABLE PMN33920
00E6 C0B4 2281 | PT740 LD PT480 FETCH WORD PMN33930
00E7 E8A0 2282 | OR PT310 DETM UPPER/LOWER CASE FOR PMN33940
00E8 F500 0000 2283 | PT750 EOR L1 *-* COMPARE WITH TBL ENTRY PMN33950
00EA 1808 2284 | SRA 8 SHIFT OUT EBC PMN33960
00EB 4818 2285 | BSC +- SKIP IF NON ZERO RESULT PMN33970
00EC 7004 2286 | MDX PT760 GO TO TREAT CONV CHAR PMN33980
00ED 71FF 2287 | MDX 1 -1 DECR LOOP COUNTER PMN33990
00EE 70F7 2288 | MDX PT740 LOOP THRU SCAN PMN34000
2289 | * * PMN34010
00EF C005 2290 | LD PT780 INVALID CHAR DETECTED, GO PMN34020
00F0 7002 2291 | MDX PT770 TO ST FF IN STRING PMN34030
2292 | * * PMN34040
00F1 C500 0000 2293 | PT760 LD L1 *-* FETCH CONV CHAR PMN34050
00F3 E0C1 2294 | PT770 AND PT580 CLEAR OUT PTTC/8 HALF PMN34060
00F4 70E4 2295 | MDX PT715 PMN34070
2296 | *************************************************** PMN34080
2297 | * * PMN34090
2298 | * * PMN34100
2299 | * FOLLOWING IS A TABLE WITH * PMN34110
2300 | * 119 ACCEPTABLE PTTC/8 CODES * PMN34120
2301 | * IN BITS 0-7, AND THEIR CORRESPONDING * PMN34130
2302 | * EBCDIC REPRESENTATION IN BITS 8-15. * PMN34140
2303 | * * PMN34150
2304 | * * PMN34160
2305 | * * PMN34170
2306 | *************************************************** PMN34180
00F5 0050 2307 | PT780 DC /0050 INVAL CHAR CODE PMN34190
00F6 704E 2308 | DC /704E AMPERSAND PMN34200
00F7 0B7E 2309 | DC /0B7E POUND PMN34210
00F8 207D 2310 | DC /207D AT PMN34220
00F9 954D 2311 | DC /954D PERCENT PMN34230
00FA 825D 2312 | DC /825D LESS THAN PMN34240
00FB 6D05 2313 | DC /6D05 HORIZONTAL TAB PMN34250
00FC 5E16 2314 | DC /5E16 BACKSPACE PMN34260
00FD 4C14 2315 | DC /4C14 RESTORE PMN34270
00FE 3D25 2316 | DC /3D25 LINE FEED PMN34280
00FF 3E26 2317 | DC /3E26 END OF BLOCK PMN34290
0100 1040 2318 | DC /1040 SPACE PMN34300
0101 01F1 2319 | DC /01F1 1 PMN34310
0102 02F2 2320 | DC /02F2 2 PMN34320
0103 13F3 2321 | DC /13F3 3 PMN34330
0104 04F4 2322 | DC /04F4 4 PMN34340
0105 15F5 2323 | DC /15F5 5 PMN34350
0106 16F6 2324 | DC /16F6 6 PMN34360
0107 07F7 2325 | DC /07F7 7 PMN34370
0108 08F8 2326 | DC /08F8 8 PMN34380
0109 19F9 2327 | DC /19F9 9 PMN34390
010A 1AF0 2328 | DC /1AF0 0 (NUMERIC) PMN34400
010B E1C1 2329 | DC /E1C1 A PMN34410
010C E2C2 2330 | DC /E2C2 B PMN34420
010D F3C3 2331 | DC /F3C3 C PMN34430
010E E4C4 2332 | DC /E4C4 D PMN34440
010F F5C5 2333 | DC /F5C5 E PMN34450
0110 F6C6 2334 | DC /F6C6 F PMN34460
0111 E7C7 2335 | DC /E7C7 G PMN34470
0112 E8C8 2336 | DC /E8C8 H PMN34480
0113 F9C9 2337 | DC /F9C9 I PMN34490
0114 D1D1 2338 | DC /D1D1 J PMN34500
0115 D2D2 2339 | DC /D2D2 K PMN34510
0116 C3D3 2340 | DC /C3D3 L PMN34520
0117 D4D4 2341 | DC /D4D4 M PMN34530
0118 C5D5 2342 | DC /C5D5 N PMN34540
0119 C6D6 2343 | DC /C6D6 O (ALPHA) PMN34550
011A D7D7 2344 | DC /D7D7 P PMN34560
011B D8D8 2345 | DC /D8D8 Q PMN34570
011C C9D9 2346 | DC /C9D9 R PMN34580
011D B2E2 2347 | DC /B2E2 S PMN34590
011E A3E3 2348 | DC /A3E3 T PMN34600
011F B4E4 2349 | DC /B4E4 U PMN34610
0120 A5E5 2350 | DC /A5E5 V PMN34620
0121 A6E6 2351 | DC /A6E6 W PMN34630
0122 B7E7 2352 | DC /B7E7 X PMN34640
0123 B8E8 2353 | DC /B8E8 Y PMN34650
0124 A9E9 2354 | DC /A9E9 Z PMN34660
0125 EB5F 2355 | DC /EB5F LOGICAL NOT PMN34670
0126 F04E 2356 | DC /F04E PLUS PMN34680
0127 DB5A 2357 | DC /DB5A EXCLAMATION MARK PMN34690
0128 C06D 2358 | DC /C06D UNDERSCORE PMN34700
0129 BB4F 2359 | DC /BB4F LOGICAL OR PMN34710
012A A04A 2360 | DC /A04A CENT PMN34720
012B B16F 2361 | DC /B16F QUESTION MARK PMN34730
012C 994D 2362 | DC /994D LEFT PARENTHESIS PMN34740
012D 9A5D 2363 | DC /9A5D RIGHT PARENTHESIS PMN34750
012E 8B7F 2364 | DC /8B7F QUOTE PMN34760
012F 817E 2365 | DC /817E EQUAL PMN34770
0130 935E 2366 | DC /935E SEMICOLON PMN34780
0131 847A 2367 | DC /847A COLON PMN34790
0132 967D 2368 | DC /967D APOSTROPHE PMN34800
0133 876E 2369 | DC /876E GREATER THAN PMN34810
0134 885C 2370 | DC /885C ASTERISK PMN34820
0135 6B4B 2371 | DC /6B4B PERIOD PMN34830
0136 5B5B 2372 | DC /5B5B DOLLAR SIGN PMN34840
0137 4060 2373 | DC /4060 DASH PMN34850
0138 3B6B 2374 | DC /3B6B COMMA PMN34860
0139 3161 2375 | DC /3161 SLASH PMN34870
013A ED05 2376 | DC /ED05 NO GRAPHIC PMN34880
013B FC04 2377 | DC /FC04 NO GRAPHIC PMN34890
013C FA79 2378 | DC /FA79 NO GRAPHIC PMN34900
013D DE16 2379 | DC /DE16 NO GRAPHIC PMN34910
013E CF17 2380 | DC /CF17 NO GRAPHIC PMN34920
013F CC14 2381 | DC /CC14 NO GRAPHIC PMN34930
0140 CA49 2382 | DC /CA49 NO GRAPHIC PMN34940
0141 AC24 2383 | DC /AC24 NO GRAPHIC PMN34950
0142 B025 2384 | DC /B025 NO GRAPHIC PMN34960
0143 BE26 2385 | DC /BE26 NO GRAPHIC PMN34970
0144 AF27 2386 | DC /AF27 NO GRAPHIC PMN34980
0145 AA69 2387 | DC /AA69 NO GRAPHIC PMN34990
0146 9C34 2388 | DC /9C34 NO GRAPHIC PMN35000
0147 9F37 2389 | DC /9F37 NO GRAPHIC PMN35010
0148 9040 2390 | DC /9040 NO GRAPHIC PMN35020
0149 7C04 2391 | DC /7C04 NO GRAPHIC PMN35030
014A 6181 2392 | DC /6181 NO GRAPHIC PMN35040
014B 6282 2393 | DC /6282 NO GRAPHIC PMN35050
014C 7383 2394 | DC /7383 NO GRAPHIC PMN35060
014D 6484 2395 | DC /6484 NO GRAPHIC PMN35070
014E 7585 2396 | DC /7585 NO GRAPHIC PMN35080
014F 7686 2397 | DC /7686 NO GRAPHIC PMN35090
0150 6787 2398 | DC /6787 NO GRAPHIC PMN35100
0151 6889 2399 | DC /6889 NO GRAPHIC PMN35110
0152 79C0 2400 | DC /79C0 NO GRAPHIC PMN35120
0153 7A4B 2401 | DC /7A4B NO GRAPHIC PMN35130
0154 4F17 2402 | DC /4F17 NO GRAPHIC PMN35140
0155 5797 2403 | DC /5797 NO GRAPHIC PMN35150
0156 5898 2404 | DC /5898 NO GRAPHIC PMN35160
0157 4999 2405 | DC /4999 NO GRAPHIC PMN35170
0158 4AD0 2406 | DC /4AD0 NO GRAPHIC PMN35180
0159 5191 2407 | DC /5191 NO GRAPHIC PMN35190
015A 5292 2408 | DC /5292 NO GRAPHIC PMN35200
015B 4393 2409 | DC /4393 NO GRAPHIC PMN35210
015C 5494 2410 | DC /5494 NO GRAPHIC PMN35220
015D 4595 2411 | DC /4595 NO GRAPHIC PMN35230
015E 4696 2412 | DC /4696 NO GRAPHIC PMN35240
015F 2F27 2413 | DC /2F27 NO GRAPHIC PMN35250
0160 2C24 2414 | DC /2C24 NO GRAPHIC PMN35260
0161 32A0 2415 | DC /32A0 NO GRAPHIC PMN35270
0162 23A1 2416 | DC /23A1 NO GRAPHIC PMN35280
0163 34A2 2417 | DC /34A2 NO GRAPHIC PMN35290
0164 25A3 2418 | DC /25A3 NO GRAPHIC PMN35300
0165 26A4 2419 | DC /26A4 NO GRAPHIC PMN35310
0166 37A5 2420 | DC /37A5 NO GRAPHIC PMN35320
0167 38A6 2421 | DC /38A6 NO GRAPHIC PMN35330
0168 29A7 2422 | DC /29A7 NO GRAPHIC PMN35340
0169 2AE0 2423 | DC /2AE0 NO GRAPHIC PMN35350
016A 1F37 2424 | DC /1F37 NO GRAPHIC PMN35360
016B 1C34 2425 | DC /1C34 NO GRAPHIC PMN35370
016C 0D35 2426 | PT785 DC /0D35 PMN35380
016D 2427 | BSS 0 PATCH AREA 2-7 PMN35390
016D 0000 2428 | PT790 DC 0 *AREA PMN35400
SYSTEM KEYBOARD SUBROUTINE
2430 | *************************************************** PMN35420
2431 | * * PMN35430
2432 | *STATUS - VERSION 2, MODIFICATION 12 * PMN35440
2433 | * * PMN35450
2434 | *FUNCTION/OPERATION- * PMN35460
2435 | * INPUT FROM THE KEYBOARD, CONVERT TO EBCDIC * PMN35470
2436 | * AND PRINT INPUT TO THE CONSOLE PRINTER. * PMN35480
2437 | * * PMN35490
2438 | *ENTRY POINTS- * PMN35500
2439 | * *KB000+1 IS THE USER ENTRY. * PMN35510
2440 | * *KB020+1 IS THE INTERRUPT ENTRY. * PMN35520
2441 | * * PMN35530
2442 | *INPUT- * PMN35540
2443 | * ACC = 7002 * PMN35550
2444 | * EXT = ADDRESS OF I/O AREA * PMN35560
2445 | * *THE I/O AREA CONSISTS OF ONE WORD * PMN35570
2446 | * INDICATING HOW MANY WORDS ARE TO BE INPUT * PMN35580
2447 | * FROM THE KEYBOARD FOLLOW BY A BUFFER OF * PMN35590
2448 | * THAT MANY WORDS. * PMN35600
2449 | * * PMN35610
2450 | *OUTPUT- * PMN35620
2451 | * THE I/O AREA BUFFER WILL CONTAIN THE * PMN35630
2452 | * KEYBOARD INPUT IN UNPACKED EBCDIC. THE * PMN35640
2453 | * KEYBOARD INPUT IS ALSO PRINTED TO THE * PMN35650
2454 | * CONSOLE PRINTER. * PMN35660
2455 | * * PMN35670
2456 | *EXTERNAL REFERENCES- * PMN35680
2457 | * $CTSW * PMN35690
2458 | * $I405+1 * PMN35700
2459 | * $IBSY * PMN35710
2460 | * $KCSW * PMN35720
2461 | * $PRET * PMN35730
2462 | * $PST4 * PMN35740
2463 | * * PMN35750
2464 | *EXITS- NORMAL * PMN35760
2465 | * *SUBROUTINE RETURNS TO USER AFTER FUNCTION * PMN35770
2466 | * HAS BEEN INITIATED. * PMN35780
2467 | * *SUBROUTINE RETURNS TO INTERRUPT LEVEL * PMN35790
2468 | * SUBROUTINE AFTER AN INTERRUPT HAS BEEN * PMN35800
2469 | * SERVICED. * PMN35810
2470 | * * PMN35820
2471 | *EXITS- ERROR * PMN35830
2472 | * *EXIT TO $PRET ON PRE-OPERATIVE ERROR. * PMN35840
2473 | * *EXIT TO $PST4 ON POST-OPERATIVE ERROR. * PMN35850
2474 | * * PMN35860
2475 | *TABLES/WORK AREAS- * PMN35870
2476 | * *KB660 IS A TABLE OF IBM CARD CODE (12 BIT * PMN35880
2477 | * HOLLERITH - BITS 0-11) * PMN35890
2478 | * *KB670 IS A TABLE OF EBCDIC TO ROTATE AND * PMN35900
2479 | * TILT INLINE CODE. (BITS 0-7 RAT AND BITS * PMN35910
2480 | * 8-15 EBCDIC) * PMN35920
2481 | * * PMN35930
2482 | *ATTRIBUTES- * PMN35940
2483 | * *NATURALLY RELOCATABLE. * PMN35950
2484 | * *REUSABLE. * PMN35960
2485 | * * PMN35970
2486 | *NOTES- BEFORE RETURNING TO THE CALLER A CHECK IS * PMN35980
2487 | * MADE FOR THE PRESENCE OF THE SYSTEM * PMN35990
2488 | * CONSOLE PRINTER SUBROUTINE IN CORE. IF IT* PMN36000
2489 | * IS, RETURNING IS DELAYED UNTIL OPERATION * PMN36010
2490 | * IS COMPLETED TO PREVENT POSSIBLE * PMN36020
2491 | * OVERLAPPING. * PMN36030
2492 | * * PMN36040
2493 | *************************************************** PMN36050
SYSTEM KEYBOARD SUBROUTINE
0000 2495 | ORG 0 PMN36070
*SBRKSMC 92 2496 | *SYS KEYBOARD V2M00 PMN36080
0000 0173 2497 | DC KB680-*-1 WORD CNT OF SYS KB SUBR PMN36090
0001 0092 2498 | DC @KBCP PHASE ID OF SYS KB SUBR PMN36100
SYSTEM KEYBOARD SUBROUTINE
0002 4C00 0000 2500 | KB000 BSC L *-* ENTER HERE FROM MAIN (+2) PMN36120
0003 2501 | ORG *-1 PMN36130
0003 0140 2502 | DC KB670 ADDR OF CONV TBL FOR ASM PMN36140
0004 700E 2503 | MDX KB070-1 BR TO SERVICE CALL PMN36150
0005 4C00 0000 2504 | KB020 BSC L *-* ENTER HERE ON INTRPT (+5) PMN36160
0007 C007 2505 | LD KB030 INITLZ SYSTEM TRAP ADDR PMN36170
0008 D03F 2506 | STO KB130+1 TO 'TEST DEVICE RDY' SUBR PMN36180
0009 704E 2507 | MDX KB180 GO TO SERVICE PMN36190
2508 | * * PMN36200
000A 0001 2509 | KB022 DC 1 CHANGED BY THE ASM PMN36210
000B 0008 2510 | KB025 DC 8 CONSTANT EIGHT 212 PMN36212
000C 2511 | BSS E 0 212 PMN36213
000C 0000 2512 | KB160 DC 0 PERM STORAGE FOR ORIG 212 PMN36214
000D 0000 2513 | KB170 DC 0 WD CNT & I/O AREA ADDR 212 PMN36215
000E 1005 2514 | KB330 DC /1005 SLA 5 212 PMN36216
000F 008D 2515 | KB030 DC $PST4 ADDR OF INTRPT TRAP ADDR PMN36230
0010 0028 2516 | KB040 DC $PRET ADDR OF CALL TRAP ADDR PMN36240
0011 0000 2517 | KB050 DC 0 INTRPT ADDR MINUS DISP PMN36250
0012 FFEA 2518 | KB060 DC KB020-KB010 ADDR DISPLACEMENT PMN36260
0013 D014 2519 | STO KB080 SET UP FUNC PMN36270
0014 7400 0013 2520 | KB070 MDX L $IBSY,0 LOOP UNTIL BUSY 212 PMN36280
0016 70FD 2521 | MDX KB070 *INDICATOR IS ZERO 212 PMN36290
0017 6C00 0013 2522 | STX L0 $IBSY SET SUBR BUSY PMN36310
0019 1010 2523 | SLA 16 ZERO ACCUMULATOR 212 PMN36315
001A D07B 2524 | STO KB150 INITLZ FILL SWITCH TO ZERO PMN36320
2525 | * * PMN36330
001B 68F5 2526 | KB010 STX 0 KB050 COMPUTE RELATIVE ADDR PMN36340
001C C0F4 2527 | LD KB050 OF INTRPT ENTRY PMN36350
001D 80F4 2528 | A KB060 FOR ILS04 BRANCH TABLE PMN36360
001E D0F2 2529 | STO KB050 PMN36370
001F C400 00D4 2530 | LD L $I405+1 FETCH ADDR OF ILS04 IBT PMN36380
0021 80E9 2531 | A KB025 PMN36390
0022 D002 2532 | STO *+2 SAVE KB/CP ENTRY ADDR PMN36400
0023 C0ED 2533 | LD KB050 SET UP THE INTRPT ADDR PMN36410
0024 D400 0000 2534 | STO L *-* IN THE IBT PMN36420
0026 C0E9 2535 | LD KB040 CALL SYSTEM TRAP ADDR PMN36430
0027 D020 2536 | STO KB130+1 TO 'TEST DEVC RDY' SUBR PMN36440
0028 0000 2537 | KB080 DC *-* FUNTION BRANCH PMN36450
0029 70D8 2538 | MDX KB000 *TO HERE ON IGNORE & RET PMN36460
002A 70D7 2539 | MDX KB000 *TO HERE ON IGNORE & RET PMN36470
002B 1090 2540 | SLT 16 *TO HERE ON RD/PRNT W/CON PMN36480
002C D005 2541 | STO KB090+1 PMN36490
002D 80DC 2542 | A KB022 COMPUTE I/O AREA ADDR PMN36500
002E D061 2543 | STO KB280 AND WORD COUNT, AND PMN36510
002F D0DC 2544 | STO KB160 ASSIGN THEM STORAGE PMN36520
0030 D07F 2545 | STO KB310+1 PMN36530
0031 C400 0000 2546 | KB090 LD L *-* PMN36540
0033 D05D 2547 | STO KB290 PMN36550
0034 D0D8 2548 | STO KB170 PMN36560
2549 | * * PMN36570
0035 C0D8 2550 | LD KB330 SET UP TO PMN36580
0036 D00C 2551 | STO KB120+1 TEST CONSOLE READY PMN36590
0037 685A 2552 | STX 0 KB370 COMPUTE THE BUFFER ADDR PMN36600
0038 C059 2553 | KB100 LD KB370 *FOR THE IOCC PMN36610
0039 8069 2554 | A KB350 *AND THE ADDR PMN36620
003A D057 2555 | STO KB370 *OF THE I/O AREA PMN36630
003B 8052 2556 | A KB260 *PT FOR INLINE CODING PMN36640
003C D06F 2557 | STO KB400+2 *AND STORE IN PMN36650
003D D068 2558 | STO KB410+1 *THE CODE PMN36660
2559 | * * PMN36670
003E 4002 2560 | BSI KB110+1 GO TO SENSE DEVICE STATUS PMN36680
003F 700A 2561 | MDX KB140 GO TO PRINT PMN36690
2562 | * * PMN36700
0040 4C00 2563 | KB110 DC /4C00 PMN36710
0041 0000 2564 | DC *-* ENTER HERE TO PMN36720
0042 0851 2565 | KB120 XIO KB390-1 TEST DEVICE READY PMN36730
0043 1005 2566 | SLA 5 PMN36740
0044 4810 2567 | BSC - SKIP IF NOT RDY PMN36750
0045 70FA 2568 | MDX KB110 BRNCH OUT IF RDY PMN36760
0046 C04D 2569 | LD KB380 NOT RDY, PMN36770
0047 4400 0000 2570 | KB130 BSI L *-* TRAP OUT TO WAIT PMN36780
0049 70F8 2571 | MDX KB120 TRY AGAIN PMN36790
2572 | * * PMN36800
004A C057 2573 | KB140 LD KB460 SET TO PRINT PMN36810
004B D047 2574 | STO KB370+1 ONE CHAR/CONTROL PMN36820
004C C057 2575 | LD KB420 PMN36830
004D D041 2576 | STO KB270 PMN36840
004E 7401 0032 2577 | MDX L $IOCT,1 INCREMENT IOCS CNTR 2-2 PMN36850
0050 0841 2578 | XIO KB370 XEQ CARR RET PMN36860
0051 C045 2579 | KB145 LD KB321 LOAD /2002 212 PMN36870
0052 4400 0028 2580 | BSI L $PRET PRE-OP ERROR TRAP 212 PMN36875
0054 7400 0013 2581 | MDX L $IBSY,0 BUSY? 212 PMN36880
0056 70FA 2582 | MDX KB145 ELSE, LOOP 212 PMN36890
0057 70AA 2583 | MDX KB000 RETURN TO CALLER 212 PMN36895
2584 | * * PMN36950
2585 | *************************************************** PMN37000
2586 | * * PMN37010
2587 | * THIS SECTION OF CODING * PMN37020
2588 | * SERVICES THE INTERRUPT * PMN37030
2589 | * * PMN37040
2590 | *************************************************** PMN37050
2591 | * * PMN37060
0058 083B 2592 | KB180 XIO KB390-1 SENSE AND RESET PMN37070
0059 4828 2593 | BSC +Z TEST BIT 0 PMN37080
005A 7004 2594 | MDX KB200 GO TO SERVICE PRINT INTRPT PMN37090
005B 1001 2595 | SLA 1 PMN37100
005C 4828 2596 | BSC +Z TEST BIT 1 PMN37110
005D 7078 2597 | MDX KB590 GO TO SERVICE RD INTRPT PMN37120
005E 70A6 2598 | KB190 MDX KB020 EXIT PMN37130
005F C02F 2599 | KB200 LD KB270 WAS INTERRUPT CAUSED BY 212 PMN37140
0060 9074 2600 | S KB530 *BACKSPACE 212 PMN37145
0061 4818 2601 | BSC +- NO 212 PMN37150
0062 700D 2602 | MDX KB210 YES, GO PRINT A SLASH 212 PMN37160
0063 74FF 0032 2603 | MDX L $IOCT,-1 DECREMENT I/O COUNTER 212 PMN37170
0065 1000 2604 | NOP IN CASE OF SKIP 212 PMN37180
0066 C028 2605 | LD KB270 WAS INTERRUPT CAUSED BY 212 PMN37190
0067 903C 2606 | S KB420 * CARRIAGE RETURN 212 PMN37200
0068 4818 2607 | BSC +- NO 212 PMN37210
0069 702E 2608 | MDX KB300 YES, GO HANDLE 212 PMN37220
2609 | * * PMN37230
006A C05B 2610 | LD KB470 CHECK SLASH INDR PMN37240
006B 4818 2611 | BSC +- SKIP IF ON PMN37250
006C 700F 2612 | MDX KB230 IF OFF, BRANCH TO HANDLE PMN37260
2613 | * * PMN37270
006D 9020 2614 | S KB260 HAVE 2 SLASHES BEEN PRINTD PMN37280
006E D057 2615 | STO KB470 PMN37290
006F 4820 2616 | BSC Z YES, SKIP PMN37300
0070 7078 2617 | KB210 MDX KB600 NO, GO TO PRINT A SLASH PMN37310
2618 | * * PMN37320
2619 | * * PMN37330
0071 C89A 2620 | LDD KB160 RESTORE ORIG I/O AREA PMN37340
0072 D81D 2621 | STD KB280 ADDR AND WD COUNT PMN37350
2622 | * * PMN37360
0073 C030 2623 | LD KB420 SET TO DO CARR RET PMN37370
0074 D01A 2624 | KB220 STO KB270 PMN37380
2625 | * * PMN37390
0075 C098 2626 | LD KB330 SET UP TO PMN37400
0076 D0CC 2627 | STO KB120+1 TEST CONSOLE RDY PMN37410
0077 C02A 2628 | LD KB460 PRINT FUNC TO IOCC PMN37420
0078 D01A 2629 | STO KB370+1 PMN37430
2630 | * * PMN37440
0079 40C7 2631 | BSI KB110+1 GO TO SENSE DEVICE RDY PMN37450
2632 | * PMN37460
007A 0817 2633 | XIO KB370 EXEC PRINT PMN37470
007B 7089 2634 | MDX KB020 EXIT PMN37480
2635 | * PMN37490
007C C04B 2636 | KB230 LD KB490 IS BCKSP INDR ON PMN37500
007D 4830 2637 | BSC -Z NO, SKIP PMN37510
007E 700B 2638 | MDX KB250 YES, GO TO RELEASE THE KEY PMN37520
2639 | * * PMN37530
007F C011 2640 | KB240 LD KB290 PMN37540
0080 900D 2641 | S KB260 DECR THE WD CNT PMN37550
0081 D00F 2642 | STO KB290 TEST FOR ZERO PMN37560
0082 4818 2643 | BSC +- SKIP IF NOT ZERO PMN37570
0083 702B 2644 | MDX KB310 GO TO SET SUBR NOT BUSY PMN37580
0084 C00B 2645 | LD KB280 PMN37590
0085 8008 2646 | A KB260 INCR THE I/O AREA PT PMN37600
0086 D009 2647 | STO KB280 PMN37610
2648 | * * PMN37620
0087 C00E 2649 | LD KB150 TEST FILL SWITCH PMN37630
0088 4820 2650 | BSC Z SKIP IF OFF PMN37640
0089 7020 2651 | MDX KB400 GO TO HANDLE IF ON PMN37650
2652 | * * PMN37660
008A C060 2653 | KB250 LD KB340 SET UP TO PMN37670
008B D0B7 2654 | STO KB120+1 TEST KEYBOARD RDY PMN37680
2655 | * * PMN37690
008C C036 2656 | LD KB360 SET UP IOCC AND GO TO PMN37700
008D 70EA 2657 | MDX KB220+4 GO SELECT KEYBOARD PMN37710
2658 | * * PMN37720
2659 | * * PMN37730
008E 2660 | BSS E 0 PMN37750
008E 0001 2661 | KB260 DC 1 CONSTANT ONE PMN37760
008F 0000 2662 | KB270 DC *-* IOCC BFR PMN37770
0090 0000 2663 | KB280 DC *-* I/O AREA POINTER PMN37780
0091 0000 2664 | KB290 DC *-* WORD COUNT PMN37790
0092 2665 | BSS E 0 212 PMN37796
0092 0000 2666 | KB370 DC *-* IOCC TO RD/PRNT 212 PMN37797
0093 0000 2667 | DC *-* * 212 PMN37798
0094 2000 2668 | KB380 DC /2000 KB NO READY CODE 212 PMN37799
0095 0F01 2669 | KB390 DC /0F01 FUNC CODE TO SNS DSW 212 PMN37800
0096 0000 2670 | KB150 DC 0 FILL WITH BLANKS SWITCH PMN37802
0097 2002 2671 | KB321 DC /2002 HALT FOR // TYP 212 PMN37805
2672 | * * PMN37810
0098 C03B 2673 | KB300 LD KB495 LOAD ERASE/BKSP INDR 212 PMN37811
0099 4818 2674 | BSC +- IF ON, SKIP 212 PMN37812
009A 7003 2675 | MDX KB305 ELSE, GO RELEASE KEY 212 PMN37814
009B 7401 0032 2676 | MDX L $IOCT,1 INCREMENT I/O COUNTER 212 PMN37816
009D 1000 2677 | NOP MAY SKIP 212 PMN37818
009E 1010 2678 | KB305 SLA 16 ZERO 212 PMN37820
009F D034 2679 | STO KB495 *ERASE/BKSP INDR 212 PMN37825
00A0 D0EE 2680 | STO KB270 CLEAR THE BUFFER PMN37830
00A1 70E8 2681 | MDX KB250 GO TO RELEASE THE KEY PMN37840
2682 | * * PMN37850
00A2 0902 2683 | KB460 DC /0902 PRINT FUNC CODE 212 PMN37855
00A3 0057 2684 | KB350 DC KB270-KB100 ADDRESS DISPLACEMENT 212 PMN37857
00A4 8100 2685 | KB420 DC /8100 CONSOLE CODE CARR RET 212 PMN37858
00A5 D480 0000 2686 | KB410 STO I *-* PUT EBC INTO I/O AREA 212 PMN37860
00A7 7401 0032 2687 | MDX L $IOCT,1 INCR I/O COUNTER 212 PMN37861
00A9 70CB 2688 | MDX KB220+1 GO TO PRINT 212 PMN37862
00AA C01C 2689 | KB400 LD KB480 PUT BLANK CHARACTER 212 PMN37863
00AB D480 0000 2690 | STO I *-* *INTO I/O AREA 212 PMN37864
00AD D0E8 2691 | STO KB150 SET TO FILL I/O AREA 212 PMN37865
00AE 70D0 2692 | MDX KB240 *WITH BLANKS 212 PMN37866
00AF 6500 0000 2693 | KB310 LDX L1 *-* INITLZ INPUT ADDR TO XR1 PMN37870
00B1 C100 2694 | LD 1 0 PMN37880
2695 | * * PMN37890
00B2 9011 2696 | S KB440 WERE THEY SLASHES PMN37900
00B3 4820 2697 | BSC Z SKIP ON YES PMN37910
00B4 700A 2698 | MDX KB320 BR TO EXIT ON NO PMN37920
00B5 C101 2699 | LD 1 1 PMN37930
00B6 900D 2700 | S KB440 PMN37940
00B7 4820 2701 | BSC Z SKIP IF 2ND WD IS A SLASH, PMN37950
00B8 7006 2702 | MDX KB320 OTHERWISE BRANCH PMN37960
2703 | * * PMN37970
00B9 C102 2704 | LD 1 2 FETCH THIRD WRD PMN37980
00BA 900C 2705 | S KB480 IS IT A SPACE PMN37990
00BB 4820 2706 | BSC Z SKIP ON YES PMN38000
00BC 7002 2707 | MDX KB320 BR TO EXIT ON NO PMN38010
2708 | * * PMN38020
00BD 6C00 000F 2709 | STX L0 $CTSW RECORD WAS A CTL TYPE PMN38030
00BF 1010 2710 | KB320 SLA 16 CLEAR ACC PMN38040
00C0 D400 0013 2711 | STO L $IBSY TURN OFF SUBROUTINE BUSY PMN38050
00C2 709B 2712 | MDX KB190 EXIT PMN38080
2713 | * * PMN38090
2714 | * * PMN38120
00C3 0C00 2715 | KB360 DC /0C00 FUNC CODE TO RELEASE KEY PMN38160
00C4 0061 2716 | KB440 DC /0061 EBC CODE FOR A SLASH PMN38320
00C5 0A00 2717 | KB450 DC /0A00 FUNC CODE TO READ PMN38330
00C6 0000 2718 | KB470 DC 0 SLASH INDR PMN38350
00C7 0040 2719 | KB480 DC /0040 EBC SPACE PMN38360
00C8 0000 2720 | KB490 DC 0 BCKSP INDR PMN38370
2721 | *************************************************** PMN38380
2722 | * * PMN38390
2723 | *THIS BLOCK OF CODING HANDLES THE CONVERSION OF * PMN38395
2724 | * 12-BIT HOLLERITH TO EBCDIC AND CONSOLE * PMN38400
2725 | * PRINTER CODE * PMN38410
2726 | * * PMN38420
2727 | *************************************************** PMN38430
00C9 C0FE 2728 | KB500 LD KB490 PMN38440
00CA 80C3 2729 | A KB260 INCR BCKSP PMN38450
00CB D0FC 2730 | STO KB490 INDR BY ONE PMN38460
2731 | * * PMN38470
00CC C0C3 2732 | LD KB280 DECREMENT PMN38475
00CD 90C0 2733 | S KB260 *I/O PMN38480
00CE D0C1 2734 | STO KB280 * POINTER PMN38485
00CF C0C1 2735 | LD KB290 INCREMENT PMN38510
00D0 80BD 2736 | A KB260 *WORD PMN38520
00D1 D0BF 2737 | STO KB290 PMN38540
00D2 C002 2738 | LD KB530 SET TO DO A BACKSPACE PMN38550
00D3 70A0 2739 | KB505 MDX KB220 DO BACKSPACE 212 PMN38560
2740 | * * PMN38570
2741 | * * PMN38580
00D4 0000 2742 | KB495 DC *-* ERASE/BKSP INDR 212 PMN38600
00D5 1100 2743 | KB530 DC /1100 CP CODE FOR BCKSP PMN38610
00D6 C0EE 2744 | KB590 LD KB450 SET UP IOCC PMN38690
00D7 D0BB 2745 | STO KB370+1 PMN38700
00D8 08B9 2746 | XIO KB370 READ ONE CHAR PMN38710
2747 | * * PMN38720
00D9 C0B5 2748 | LD KB270 FETCH CHAR JUST READ PMN38730
00DA 9014 2749 | S KB540 IS IT A BACKSPACE PMN38740
00DB 4818 2750 | BSC +- NO, SKIP PMN38750
00DC 70EC 2751 | MDX KB500 YES, GO HANDLE PMN38760
2752 | * * PMN38770
00DD 1010 2753 | SLA 16 TURN OFF PMN38780
00DE D0E9 2754 | STO KB490 BACKSPACE INDR PMN38790
2755 | * * PMN38800
00DF C0AF 2756 | LD KB270 FETCH CHARACTER PMN38810
00E0 900F 2757 | S KB550 IS IT AN END-OF-MESSAGE PMN38820
00E1 4818 2758 | BSC +- NO, SKIP PMN38830
00E2 70C7 2759 | MDX KB400 GO TO HANDLE PMN38840
2760 | * * PMN38850
00E3 900D 2761 | S KB560 IS IT AN ERRASE PMN38860
00E4 4820 2762 | BSC Z YES, SKIP PMN38870
00E5 700E 2763 | MDX KB630-1 NO, GO TO CONV CHAR PMN38880
2764 | * * PMN38890
00E6 6102 2765 | LDX 1 2 SET SLASH INDICATOR 212 PMN38900
00E7 69DE 2766 | STX 1 KB470 *TO TWO 212 PMN38910
00E8 68EB 2767 | STX KB495 SET ERASE INDR ON 212 PMN38915
00E9 7401 0032 2768 | KB600 MDX L $IOCT,1 INCR IO COINTER 212 PMN38920
00EB 1006 2769 | KB340 DC /1006 PMN38921
00EC C001 2770 | LD KB510 GO TO PRINT PMN38924
00ED 70E5 2771 | MDX KB505 A SLASH 212 PMN38930
00EE BC00 2772 | KB510 DC /BC00 PRINT SLASH 212 PMN38932
00EF 0004 2773 | KB540 DC /0004 BACKSPACE CODE 212 PMN38933
00F0 0008 2774 | KB550 DC /0008 EOM CODE 212 PMN38934
00F1 FFFA 2775 | KB560 DC /0002-/0008 ERASE CODE 212 PMN38935
00F2 0015 2776 | KB570 DC KB660-KB630 ADDR DISPLACEMENT 212 PMN38936
00F3 0036 2777 | KB580 DC KB670-KB660 ADDR DISPLACEMENT 212 PMN38937
2778 | *************************************************** PMN38940
2779 | * * PMN38950
2780 | *PERFORM A TABLE LOOK-UP TO CONVERT INPUT CHAR- * PMN38960
2781 | * ACTER TO EBCDIC AND CONSOLE PRINTER CODE * PMN38970
2782 | * * PMN38990
2783 | *************************************************** PMN39000
00F4 6808 2784 | STX 0 KB640+1 COMPUTE THE PMN39010
00F5 C007 2785 | KB630 LD KB640+1 EFFECTIVE ADDRESSES PMN39020
00F6 80FB 2786 | A KB570 OF BOTH CONV TABLES PMN39030
00F7 D005 2787 | STO KB640+1 AND STORE THEM TO PMN39040
00F8 80FA 2788 | A KB580 INLINE CODING PMN39050
00F9 D00B 2789 | STO KB650+1 PMN39060
00FA 6235 2790 | LDX 2 +53 SIZE OF TABLE PMN39070
00FB C093 2791 | LD KB270 FETCH CHAR PMN39080
00FC F600 0000 2792 | KB640 EOR L2 *-* COMPARE WITH TABLE ENTRY PMN39090
00FE 4818 2793 | BSC +- SKIP IF NO COMPARE PMN39100
00FF 7004 2794 | MDX KB650 CHAR FOUND-END OF SEARCH PMN39110
0100 72FF 2795 | MDX 2 -1 DECR LOOP COUNTER PMN39120
0101 70F9 2796 | MDX KB640-1 LOOP TO CONTINUE SEARCH PMN39130
2797 | * * PMN39140
0102 C03D 2798 | LD KB670 INVALID CHAR DETECTED PMN39150
0103 7002 2799 | MDX KB650+2 GO TO PRINT A BLANK PMN39160
2800 | * * PMN39170
0104 C600 0000 2801 | KB650 LD L2 *-* FETCH CORESPOND TABL2 ENT PMN39180
0106 D088 2802 | STO KB270 SET TO PRINT IT PMN39190
0107 1008 2803 | SLA 8 SHIFT OUT CONSOLE CODE PMN39200
0108 1808 2804 | SRA 8 RIGHT JUSTIFY EBC PMN39210
0109 709B 2805 | MDX KB410 GO TO HANDLE PMN39220
2806 | *************************************************** PMN39230
2807 | * BITS 0-11 = IBM CARD CODE * PMN39240
2808 | *************************************************** PMN39250
010A 0000 2809 | KB660 DC 0 TBL ADJUSTMENT FOR ASM PMN39260
010B 8000 2810 | DC /8000 AMPERSAND PMN39270
010C 0420 2811 | DC /0420 POUND PMN39280
010D 0220 2812 | DC /0220 AT PMN39290
010E 2220 2813 | DC /2220 PERCENT PMN39300
010F 8220 2814 | DC /8220 LESS THAN PMN39310
0110 0000 2815 | DC /0000 SPACE PMN39320
0111 2000 2816 | DC /2000 0 PMN39330
0112 1000 2817 | DC /1000 1 PMN39340
0113 0800 2818 | DC /0800 2 PMN39350
0114 0400 2819 | DC /0400 3 PMN39360
0115 0200 2820 | DC /0200 4 PMN39370
0116 0100 2821 | DC /0100 5 PMN39380
0117 0080 2822 | DC /0080 6 PMN39390
0118 0040 2823 | DC /0040 7 PMN39400
0119 0020 2824 | DC /0020 8 PMN39410
011A 0010 2825 | DC /0010 9 PMN39420
011B 9000 2826 | DC /9000 A PMN39430
011C 8800 2827 | DC /8800 B PMN39440
011D 8400 2828 | DC /8400 C PMN39450
011E 8200 2829 | DC /8200 D PMN39460
011F 8100 2830 | DC /8100 E PMN39470
0120 8080 2831 | DC /8080 F PMN39480
0121 8040 2832 | DC /8040 G PMN39490
0122 8020 2833 | DC /8020 H PMN39500
0123 8010 2834 | DC /8010 I PMN39510
0124 5000 2835 | DC /5000 J PMN39520
0125 4800 2836 | DC /4800 K PMN39530
0126 4400 2837 | DC /4400 L PMN39540
0127 4200 2838 | DC /4200 M PMN39550
0128 4100 2839 | DC /4100 N PMN39560
0129 4080 2840 | DC /4080 O PMN39570
012A 4040 2841 | DC /4040 P PMN39580
012B 4020 2842 | DC /4020 Q PMN39590
012C 4010 2843 | DC /4010 R PMN39600
012D 2800 2844 | DC /2800 S PMN39610
012E 2400 2845 | DC /2400 T PMN39620
012F 2200 2846 | DC /2200 U PMN39630
0130 2100 2847 | DC /2100 V PMN39640
0131 2080 2848 | DC /2080 W PMN39650
0132 2040 2849 | DC /2040 X PMN39660
0133 2020 2850 | DC /2020 Y PMN39670
0134 2010 2851 | DC /2010 Z PMN39680
0135 8420 2852 | DC /8420 PERIOD PMN39690
0136 4120 2853 | DC /4120 RIGHT PARENTHESIS PMN39700
0137 8120 2854 | DC /8120 LEFT PARENTHESIS PMN39710
0138 80A0 2855 | DC /80A0 PLUS PMN39720
0139 4420 2856 | DC /4420 DOLLAR SIGN PMN39730
013A 4220 2857 | DC /4220 ASTERISK PMN39740
013B 00A0 2858 | DC /00A0 EQUAL PMN39750
013C 4000 2859 | DC /4000 DASH PMN39760
013D 3000 2860 | DC /3000 SLASH PMN39770
013E 2420 2861 | DC /2420 COMMA PMN39780
013F 0120 2862 | DC /0120 APOSTROPHE PMN39790
0140 2150 2863 | KB670 DC /2150 CODES FOR INVALID CHAR PMN39800
0141 444E 2864 | DC /444E AMPERSAND PMN39810
0142 C07B 2865 | DC /C07B POUND 212 PMN39820
0143 047C 2866 | DC /047C AT 212 PMN39830
0144 066C 2867 | DC /066C PERCENT 212 PMN39840
0145 DE4C 2868 | DC /DE4C LESS THAN 212 PMN39850
0146 2140 2869 | DC /2140 BLANK PMN39860
0147 C4F0 2870 | DC /C4F0 0 PMN39870
0148 FCF1 2871 | DC /FCF1 1 PMN39880
0149 D8F2 2872 | DC /D8F2 2 PMN39890
014A DCF3 2873 | DC /DCF3 3 PMN39900
014B F0F4 2874 | DC /F0F4 4 PMN39910
014C F4F5 2875 | DC /F4F5 5 PMN39920
014D D0F6 2876 | DC /D0F6 6 PMN39930
014E D4F7 2877 | DC /D4F7 7 PMN39940
014F E4F8 2878 | DC /E4F8 8 PMN39950
0150 E0F9 2879 | DC /E0F9 9 PMN39960
0151 3CC1 2880 | DC /3CC1 A PMN39970
0152 18C2 2881 | DC /18C2 B PMN39980
0153 1CC3 2882 | DC /1CC3 C PMN39990
0154 30C4 2883 | DC /30C4 D PMN40000
0155 34C5 2884 | DC /34C5 E PMN40010
0156 10C6 2885 | DC /10C6 F PMN40020
0157 14C7 2886 | DC /14C7 G PMN40030
0158 24C8 2887 | DC /24C8 H PMN40040
0159 20C9 2888 | DC /20C9 I PMN40050
015A 7CD1 2889 | DC /7CD1 J PMN40060
015B 58D2 2890 | DC /58D2 K PMN40070
015C 5CD3 2891 | DC /5CD3 L PMN40080
015D 70D4 2892 | DC /70D4 M PMN40090
015E 74D5 2893 | DC /74D5 N PMN40100
015F 50D6 2894 | DC /50D6 O (ALPHA) PMN40110
0160 54D7 2895 | DC /54D7 P PMN40120
0161 64D8 2896 | DC /64D8 Q PMN40130
0162 60D9 2897 | DC /60D9 R PMN40140
0163 98E2 2898 | DC /98E2 S PMN40150
0164 9CE3 2899 | DC /9CE3 T PMN40160
0165 B0E4 2900 | DC /B0E4 U PMN40170
0166 B4E5 2901 | DC /B4E5 V PMN40180
0167 90E6 2902 | DC /90E6 W PMN40190
0168 94E7 2903 | DC /94E7 X PMN40200
0169 A4E8 2904 | DC /A4E8 Y PMN40210
016A A0E9 2905 | DC /A0E9 Z PMN40220
016B 004B 2906 | DC /004B PERIOD PMN40230
016C F65D 2907 | DC /F65D RIGHT PARENTHESIS PMN40240
016D FE4D 2908 | DC /FE4D LEFT PARENTHESIS PMN40250
016E DA4E 2909 | DC /DA4E PLUS PMN40260
016F 405B 2910 | DC /405B DOLLAR SIGN PMN40270
0170 D65C 2911 | DC /D65C ASTERICK PMN40280
0171 C27E 2912 | DC /C27E EQUAL PMN40290
0172 8460 2913 | DC /8460 MINUS PMN40300
0173 BC61 2914 | DC /BC61 SLASH PMN40310
0174 806B 2915 | DC /806B COMMA PMN40320
0175 E67D 2916 | DC /E67D APOSTROPHE PMN40330
2917 | * * PMN40340
0176 2918 | KB675 BSS /175-*+1 PATCH AREA 212 PMN40350
0175 2919 | KB680 EQU *-1 212 PMN40360
SYSTEM 2501/1442 CONVERSION SUBROUTINE
2921 | *************************************************** PMN40380
2922 | *STATUS-VERSION 2, MODIFICATION 12 * PMN40390
2923 | * * PMN40400
2924 | *FUNCTION/OPERATION- * PMN40410
2925 | * CONVERT IBM CARD CODE TO UNPACKED EBCDIC * PMN40420
2926 | * * PMN40430
2927 | *ENTRY POINTS- * PMN40440
2928 | * SP000+1 IS THE USER ENTRY * PMN40450
2929 | * * PMN40460
2930 | *INPUT- * PMN40470
2931 | * ACC = ADDRESS OF I/O AREA (WORD COUNT) * PMN40480
2932 | * * PMN40490
2933 | *OUTPUT- * PMN40500
2934 | * EIGHT WORD BUFFER SPECIFIED BY INPUT FILLED * PMN40510
2935 | * WITH UNPACKED,RIGHT-JUSTIFIED EBCDIC * PMN40520
2936 | * CHARACTERS * PMN40530
2937 | * * PMN40540
2938 | *EXTERNAL REFERENCES-N/A * PMN40550
2939 | * * PMN40560
2940 | *EXITS- * PMN40570
2941 | * NORMAL- * PMN40580
2942 | * SUBROUTINE RETURNS TO USER AFTER * PMN40590
2943 | * ALL EIGHTY COLUMNS HAVE BEEN * PMN40600
2944 | * CONVERTED * PMN40610
2945 | * ERROR-N/A * PMN40620
2946 | * * PMN40630
2947 | *TABLES/WORK AREAS- * PMN40640
2948 | * * PMN40650
2949 | * SP130 IS A TABLE OF EBCDIC, TWO CHARACTERS * PMN40660
2950 | * PER WORD. THE RIGHT HALF OF EACH ENTRY * PMN40670
2951 | * CONVERTS FROM CARD CODE OF LEFT HALF * PMN40680
2952 | * PLUS A NINE ROW PUNCH. THE ENTRIES ARE * PMN40690
2953 | * ARRANGED BY CARD CODE ZONES TO ALLOW * PMN40700
2954 | * THE SUBROUTINE DIRECT ACCESS * PMN40710
2955 | * * PMN40720
2956 | *ATTRIBUTES- * PMN40730
2957 | * * NATURALLY RELOCATABLE * PMN40740
2958 | * * SERIALLY REUSEABLE * PMN40750
2959 | * * PMN40760
2960 | *NOTES-N/A * PMN40770
2961 | *************************************************** PMN40780
SYSTEM 2501/1442 CONVERSION SUBR
0000 2963 | ORG 0 PMN40800
*SBRKGPW 93 2964 | *SYS 2501/1442 CONVERSION V2M00 PMN40810
0000 00B9 2965 | DC SP990-SP000+1 WORD CNT OF SYS CD CNV PMN40820
0001 0093 2966 | DC @CDCV PHASE ID OF SYS CD CNV PMN40830
SYSTEM 2501/1442 CONVERSION SUBR
0002 4C00 0000 2968 | SP000 BSC L *-* EXIT/ENTRY PMN40850
0004 282E 2969 | STS SP074 SAVE STATUS INDICATORS PMN40860
0005 692A 2970 | STX 1 SP070+1 SAVE XR1 PMN40870
0006 6A2B 2971 | STX 2 SP072+1 SAVE XR 2 PMN40880
0007 D003 2972 | STO SP020+1 INITIALIZE LOAD AND STORE PMN40890
0008 D023 2973 | STO SP060+1 WITH ADDRESS OF I/O AREA. PMN40900
0009 6250 2974 | LDX 2 80 XR2 = COLUMN COUNT PMN40910
000A C600 0000 2975 | SP020 LD L2 *-* FETCH HOLLERITH CARD COLUMN PMN40920
000C D028 2976 | STO SP090 SAVE FOR LATER RELOAD PMN40930
000D 1886 2977 | SRT 6 PACK 12,11,0 ROWS NEXT TO PMN40940
000E 1807 2978 | SRA 7 8,9 ROWS AND STORE PMN40950
000F 1883 2979 | SRT 3 *IN EXTENSION PMN40960
0010 C024 2980 | LD SP090 RELOAD COLUMN IN ACC PMN40970
2981 | * PMN40980
2982 | * DETERMINE WHICH ROWS OF ROWS 1-7 ARE PUNCHED PMN40990
2983 | * PMN41000
0011 610A 2984 | LDX 1 10 PMN41010
0012 E023 2985 | AND SP100 ZERO ALL ROWS EXCEPT 1-7 PMN41020
0013 1140 2986 | SLCA 1 PMN41030
0014 1001 2987 | SLA 1 IS MULTIPLE PUNCH IN 1-7 PMN41040
0015 4818 2988 | BSC +- PMN41050
0016 7002 2989 | MDX SP030 NO MULTIPLE PUNCHES PMN41060
0017 C020 2990 | LD SP120 USE AMPERSAND (ASM--FF) PMN41070
0018 7012 2991 | MDX SP060 TO INDICATE INVALID PUNCH PMN41080
2992 | * PMN41090
2993 | * COLUMN CONTAINS VALID PUNCH PMN41100
2994 | * PMN41110
0019 691B 2995 | SP030 STX 1 SP090 XR1 = 0 IF NO 1-7 PUNCH, PMN41120
001A C01A 2996 | LD SP090 * = 1 IF 7 PUNCH PMN41130
001B 1084 2997 | SLT 4 * = 7 IF 1 PUNCH PMN41140
001C D008 2998 | STO SP050+1 ADD 12,11,0,AND 8 ROWS PMN41150
001D D017 2999 | STO SP090 PMN41160
001E 6808 3000 | STX 0 SP052+1 BUILD ADDRESS FOR PMN41170
001F C007 3001 | SP040 LD SP052+1 INDEXED LOAD INST AT SP052 PMN41180
0020 8016 3002 | A SP110 PMN41190
0021 D005 3003 | STO SP052+1 PMN41200
0022 C012 3004 | LD SP090 PMN41210
0023 1091 3005 | SLT 17 STORE 9 ROW IN CARRY PMN41220
0024 6500 0000 3006 | SP050 LDX L1 *-* XR1 = TABLE LOOK-UP ADDRESS PMN41230
0026 C500 0000 3007 | SP052 LD L1 *-* LOAD TABLE ENTRY PMN41240
3008 | * PMN41250
3009 | * IF 9 PUNCH, USE RIGHT HALF OF ENTRY PMN41260
3010 | * PMN41270
0028 4802 3011 | BSC C IF CARRY SET PMN41280
0029 1008 3012 | SLA 8 USE RIGHT-HALF, OTHERWISE PMN41290
002A 1808 3013 | SRA 8 USE LEFT-HALF OF ENTRY PMN41300
002B D600 0000 3014 | SP060 STO L2 *-* STORE CHAR IN BUFFER PMN41310
002D 72FF 3015 | MDX 2 -1 CHANGE COLUMN POINTER PMN41320
002E 70DB 3016 | MDX SP020 TO CONVERT NEXT COLUMN PMN41330
002F 6500 0000 3017 | SP070 LDX L1 *-* RELOAD XR 1 PMN41340
0031 6600 0000 3018 | SP072 LDX L2 *-* RELOAD XR 2 PMN41350
0033 2000 3019 | SP074 LDS 0 RELOAD STATUS INDICATORS PMN41360
0034 70CD 3020 | MDX SP000 GO TO EXIT PMN41370
3021 | * PMN41380
3022 | * CONSTANTS (OTHER THAN TABLE) USED BY ROUTINE PMN41390
3023 | * PMN41400
0035 0000 3024 | SP090 DC *-* TEMPORARY STORE FOR COLUMN PMN41410
0036 1FC0 3025 | SP100 DC /1FC0 MASK OUT ALL ROWS BUT 1-7 PMN41420
0037 001C 3026 | SP110 DC SP130-SP040 DISP. TO BUILD SP052 PMN41430
0038 00EF 3027 | SP120 DC /00EF INVALID CHAR CODE 2-8 PMN41440
3028 | * PMN41450
0039 3029 | BSS 2 PATCH AREA 2-9 PMN41460
3030 | ************************************************2-9 PMN41470
3031 | * *2-9 PMN41480
3032 | * DUP DUMP / STORE EBCDIC USES THIS TABLE *2-9 PMN41490
3033 | * TO CONVERT TO CARD CODE. SP130 IS EXPECTED *2-9 PMN41500
3034 | * TO BE AT RELATIVE ADDR /3B. ANY CHANGE *2-9 PMN41510
3035 | * WILL NECESSITATE CHANGING XE900 IN DUP DUMP*2-9 PMN41520
3036 | * AND RI900 IN DUP DCTL. *2-9 PMN41530
3037 | ************************************************2-9 PMN41540
3038 | * PMN41550
3039 | * EBCDIC CHARACTER TABLE - BASED ON PMN41560
3040 | * PACKED HOL ( 1-7 ROW COMPLEMENT, 12, PMN41570
3041 | * 11,0,8 ROWS ... RIGHT CHAR IF 9 ROW) PMN41580
3042 | * PMN41590
3043 | * EBCDIC,HOL ROW PUNCHES, LEFT,RIGHT PMN41600
3044 | * PMN41610
003B 40F9 3045 | SP130 DC /40F9 BLANK,(9) BLANK 9 PMN41620
003C F838 3046 | DC /F838 8,(9) 8 PMN41630
003D F0E9 3047 | DC /F0E9 0,(9) ZERO Z PMN41640
003E E828 3048 | DC /E828 0,8,(9) Y PMN41650
003F 60D9 3049 | DC /60D9 11,(9) DASH R PMN41660
0040 D818 3050 | DC /D818 11,8,(9) Q PMN41670
0041 D0A9 3051 | DC /D0A9 11,0,(9) PMN41680
0042 A868 3052 | DC /A868 11,0,8,(9) PMN41690
0043 50C9 3053 | DC /50C9 AMPSND I 2-8 PMN41700
0044 C808 3054 | DC /C808 12,8,(9) H PMN41710
0045 C089 3055 | DC /C089 12,0,(9) PMN41720
0046 8848 3056 | DC /8848 12,0,8,(9) PMN41730
0047 6A99 3057 | DC /6A99 12,11,(9) PMN41740
0048 9858 3058 | DC /9858 12,11,8,(9) PMN41750
0049 70B9 3059 | DC /70B9 12,11,0,(9) PMN41760
004A B878 3060 | DC /B878 12,11,0,8,(9) PMN41770
3061 | * PMN41780
004B F737 3062 | DC /F737 7,(9) 7 EOT PMN41790
004C 7F3F 3063 | DC /7F3F 7,8,(9) PMN41800
004D E727 3064 | DC /E727 7,0,(9) X PRE PMN41810
004E 6F2F 3065 | DC /6F2F 7,0,8,(9) PMN41820
004F D717 3066 | DC /D717 7,11,(9) P IDL PMN41830
0050 5F1F 3067 | DC /5F1F 7,11,8,(9) PMN41840
0051 A767 3068 | DC /A767 7,11,0,(9) PMN41850
0052 AFEF 3069 | DC /AFEF 7,11,0,8,(9) PMN41860
0053 C707 3070 | DC /C707 7,12,(9) G DEL PMN41870
0054 4F0F 3071 | DC /4F0F 7,12,8,(9) PMN41880
0055 8747 3072 | DC /8747 7,12,0,(9) PMN41890
0056 8FCF 3073 | DC /8FCF 7,12,0,8,(9) PMN41900
0057 9757 3074 | DC /9757 7,12,11,(9) PMN41910
0058 9FDF 3075 | DC /9FDF 7,12,11,8,(9) PMN41920
0059 B777 3076 | DC /B777 7,12,11,0,(9) PMN41930
005A BFFF 3077 | DC /BFFF 7,12,11,0,8,(9) PMN41940
3078 | * PMN41950
005B F636 3079 | DC /F636 6,(9) 6 UC PMN41960
005C 7E3E 3080 | DC /7E3E 6,8,(9) EQUAL PMN41970
005D E626 3081 | DC /E626 6,0,(9) W EOB PMN41980
005E 6E2E 3082 | DC /6E2E 6,0,8,(9) PMN41990
005F D616 3083 | DC /D616 6,11,(9) O BS PMN42000
0060 5E1E 3084 | DC /5E1E 6,11,8,(9) PMN42010
0061 A666 3085 | DC /A666 6,11,0,(9) PMN42020
0062 AEEE 3086 | DC /AEEE 6,11,0,8,(9) PMN42030
0063 C606 3087 | DC /C606 6,12,(9) F LC PMN42040
0064 4E0E 3088 | DC /4E0E 6,12,8,(9) PLUS PMN42050
0065 8646 3089 | DC /8646 6,12,0,(9) PMN42060
0066 8ECE 3090 | DC /8ECE 6,12,0,8,(9) PMN42070
0067 9656 3091 | DC /9656 6,12,11,(9) PMN42080
0068 9EDE 3092 | DC /9EDE 6,12,11,8,(9) PMN42090
0069 B676 3093 | DC /B676 6,12,11,0,(9) PMN42100
006A BEFE 3094 | DC /BEFE 6,12,11,0,8,(9) PMN42110
3095 | * PMN42120
006B F535 3096 | DC /F535 5,(9) 5 RS PMN42130
006C 7D3D 3097 | DC /7D3D 5,8,(9) PMN42140
006D E525 3098 | DC /E525 5,0,(9) V LF PMN42150
006E 6D2D 3099 | DC /6D2D 5,0,8,(9) PMN42160
006F D515 3100 | DC /D515 5,11,(9) N NL PMN42170
0070 5D1D 3101 | DC /5D1D 5,11,8,(9) ) PMN42180
0071 A565 3102 | DC /A565 5,11,0,(9) PMN42190
0072 ADED 3103 | DC /ADED 5,11,0,8,(9) PMN42200
0073 C505 3104 | DC /C505 5,12,(9) E HT PMN42210
0074 4D0D 3105 | DC /4D0D 5,12,8,(9) ( PMN42220
0075 8545 3106 | DC /8545 5,12,0,(9) PMN42230
0076 8DCD 3107 | DC /8DCD 5,12,0,8,(9) PMN42240
0077 9555 3108 | DC /9555 5,12,11,(9) PMN42250
0078 9DDD 3109 | DC /9DDD 5,12,11,8,(9) PMN42260
0079 B575 3110 | DC /B575 5,12,11,0,(9) PMN42270
007A BDFD 3111 | DC /BDFD 5,12,11,0,8,(9) PMN42280
3112 | * PMN42290
007B F434 3113 | DC /F434 4,(9) 4 PN 2-7 PMN42300
007C 7C3C 3114 | DC /7C3C AT-SIGN 2-8 PMN42310
007D E424 3115 | DC /E424 4,0,(9) U BYP PMN42320
007E 4D2C 3116 | DC /4D2C PERCENT PMN42330
007F D414 3117 | DC /D414 4,11,(9) M RES PMN42340
0080 5C1C 3118 | DC /5C1C 4,11,8,(9) * PMN42350
0081 A464 3119 | DC /A464 4,11,0,(9) PMN42360
0082 ACEC 3120 | DC /ACEC 4,11,0,8,(9) PMN42370
0083 C404 3121 | DC /C404 4,12,(9) D PF PMN42380
0084 5D0C 3122 | DC /5D0C LESS THAN PMN42390
0085 8444 3123 | DC /8444 4,12,0,(9) PMN42400
0086 8CCC 3124 | DC /8CCC 4,12,0,8,(9) PMN42410
0087 9454 3125 | DC /9454 4,12,11,(9) PMN42420
0088 9CDC 3126 | DC /9CDC 4,12,11,8,(9) PMN42430
0089 B474 3127 | DC /B474 4,12,11,0,(9) PMN42440
008A BCFC 3128 | DC /BCFC 4,12,11,0,8,(9) PMN42450
3129 | * PMN42460
008B F333 3130 | DC /F333 3,(9) 3 PMN42470
008C 7B3B 3131 | DC /7B3B POUND SIGN 2-8 PMN42480
008D E323 3132 | DC /E323 3,0,(9) T PMN42490
008E 6B2B 3133 | DC /6B2B 3,0,8,(9) COMMA PMN42500
008F D313 3134 | DC /D313 3,11,(9) L PMN42510
0090 5B1B 3135 | DC /5B1B 3,11,8,(9) / PMN42520
0091 A363 3136 | DC /A363 3,11,0,(9) PMN42530
0092 ABEB 3137 | DC /ABEB 3,11,0,8,(9) PMN42540
0093 C303 3138 | DC /C303 3,12,(9) C PMN42550
0094 4B0B 3139 | DC /4B0B 3,12,8,(9) . PMN42560
0095 8343 3140 | DC /8343 3,12,0,(9) PMN42570
0096 8BCB 3141 | DC /8BCB 3,12,0,8,(9) PMN42580
0097 9353 3142 | DC /9353 3,12,11,(9) PMN42590
0098 9BDB 3143 | DC /9BDB 3,12,11,8,(9) PMN42600
0099 B373 3144 | DC /B373 3,12,11,0,(9) PMN42610
009A BBFB 3145 | DC /BBFB 3,12,11,0,8,(9) PMN42620
3146 | * PMN42630
009B F232 3147 | DC /F232 2,(9) Z PMN42640
009C 7A3A 3148 | DC /7A3A 2,8,(9) PMN42650
009D E222 3149 | DC /E222 2,0,(9) S PMN42660
009E E02A 3150 | DC /E02A 2,0,8,(9) PMN42670
009F D212 3151 | DC /D212 2,11,(9) K PMN42680
00A0 5A1A 3152 | DC /5A1A 2,11,8,(9) PMN42690
00A1 A262 3153 | DC /A262 2,11,0,(9) PMN42700
00A2 AAEA 3154 | DC /AAEA 2,11,0,8,(9) PMN42710
00A3 C202 3155 | DC /C202 2,12,(9) B PMN42720
00A4 4A0A 3156 | DC /4A0A 2,12,8,(9) PMN42730
00A5 8242 3157 | DC /8242 2,12,0,(9) PMN42740
00A6 8ACA 3158 | DC /8ACA 2,12,0,8,(9) PMN42750
00A7 9252 3159 | DC /9252 2,12,11,(9) PMN42760
00A8 9ADA 3160 | DC /9ADA 2,12,11,8,(9) PMN42770
00A9 B272 3161 | DC /B272 2,12,11,0,(9) PMN42780
00AA BAFA 3162 | DC /BAFA 2,12,11,0,8,(9) PMN42790
3163 | * PMN42800
00AB F131 3164 | DC /F131 1,(9) 1 PMN42810
00AC 7939 3165 | DC /7939 1,8,(9) PMN42820
00AD 6121 3166 | DC /6121 1,0,(9) SLASH PMN42830
00AE 6929 3167 | DC /6929 1,0,8,(9) PMN42840
00AF D111 3168 | DC /D111 1,11,(9) J PMN42850
00B0 5919 3169 | DC /5919 1,11,8,(9) PMN42860
00B1 A1E1 3170 | DC /A1E1 1,11,0,(9) PMN42870
00B2 A020 3171 | DC /A020 1,11,0,8,(9) PMN42880
00B3 C101 3172 | DC /C101 1,12,(9) A PMN42890
00B4 4909 3173 | DC /4909 1,12,8,(9) PMN42900
00B5 8141 3174 | DC /8141 1,12,0,(9) PMN42910
00B6 8000 3175 | DC /8000 1,12,0,8,(9) NUL PMN42920
00B7 9151 3176 | DC /9151 1,12,11,(9) PMN42930
00B8 9010 3177 | DC /9010 1,12,11,8,(9) PMN42940
00B9 B171 3178 | DC /B171 1,12,11,0,(9) PMN42950
00BA B030 3179 | SP990 DC /B030 1,12,11,0,8,(9) 2-9 PMN42960
SYSTEM 1134/1055 CONVERSION SUBROUTINE
3181 | *************************************************** PMN42980
3182 | * * PMN42990
3183 | *STATUS- VERSION 2, MODIFICATION LEVEL 0 * PMN43000
3184 | * * PMN43010
3185 | *FUNCTION- THE NATURE OF THE SYSTEM PAPERTAPE * PMN43020
3186 | * SUBROUTINE IS SUCH THAT THE CONVERSION * PMN43030
3187 | * FROM PAPERTAPE CODE TO EBCDIC * PMN43040
3188 | * CODE IS AN INTEGRAL PART OF SAID * PMN43050
3189 | * SUBROUTINE. THEREFORE, THE SYSTEM * PMN43060
3190 | * PAPERTAPE CONVERSION SUBROUTINE IS A * PMN43070
3191 | * DUMMY SUBROUTINE CONSISTING OF AN * PMN43080
3192 | * ENTRY FOLLOWED IMMEDIATELY BY A RETURN * PMN43090
3193 | * TO THE CALLER. THE PURPOSE OF THIS * PMN43100
3194 | * DUMMY CONVERSION SUBROUTINE IS TO * PMN43110
3195 | * PROVIDE COMPATABILITY BETWEEN ALL * PMN43120
3196 | * SYSTEM I/O DEVICE SUBROUTINES. * PMN43130
3197 | * * PMN43140
3198 | *ENTRY- DP000 * PMN43150
3199 | * * PMN43160
3200 | *EXIT- DP000+1 * PMN43170
3201 | * * PMN43180
3202 | *TABLES/WORK AREAS- N/A * PMN43190
3203 | * * PMN43200
3204 | *ATTRIBUTES- RE-USABLE * PMN43210
3205 | * * PMN43220
3206 | *************************************************** PMN43230
DUMMY 1134/1055 CONVERSION
0000 3208 | ORG 0 PMN43250
*SBRKSMC 94 3209 | *SYS 1134/1055 CONVERSION V2M00 PMN43260
0000 0003 3210 | DC 3 SYS PAPER TAPE CONV WD CNT PMN43270
0001 0094 3211 | DC @PTCV PHASE ID FOR SYS 1134 CONV PMN43280
0002 4C00 0000 3212 | DP000 BSC L *-* DUMMY CONV ENTRY PMN43290
0004 70FD 3213 | MDX DP000 RETURN PMN43300
SYSTEM KEYBOARD CONVERSION SUBROUTINE
3215 | *************************************************** PMN43320
3216 | * * PMN43330
3217 | *STATUS- VERSION 2, MODIFICATION LEVEL 0 * PMN43340
3218 | * * PMN43350
3219 | *FUNCTION- THE NATURE OF THE SYSTEM KEYBOARD * PMN43360
3220 | * SUBROUTINE IS SUCH THAT THE CONVERSION * PMN43370
3221 | * FROM HOLL TO CP CODE AND TO EBCDIC * PMN43380
3222 | * CODE IS AN INTEGRAL PART OF SAID * PMN43390
3223 | * SUBROUTINE. THEREFORE, THE SYSTEM * PMN43400
3224 | * KEYBOARD CONVERSION SUBROUTINE IS A * PMN43410
3225 | * DUMMY SUBROUTINE CONSISTING OF AN * PMN43420
3226 | * ENTRY FOLLOWED IMMEDIATELY BY A RETURN * PMN43430
3227 | * TO THE CALLER. THE PURPOSE OF THIS * PMN43440
3228 | * DUMMY CONVERSION SUBROUTINE IS TO * PMN43450
3229 | * PROVIDE COMPATABILITY BETWEEN ALL * PMN43460
3230 | * SYSTEM I/O DEVICE SUBROUTINES. * PMN43470
3231 | * * PMN43480
3232 | *ENTRY- DK000 * PMN43490
3233 | * * PMN43500
3234 | *EXIT- DK000+1 * PMN43510
3235 | * * PMN43520
3236 | *TABLES/WORK AREAS- N/A * PMN43530
3237 | * * PMN43540
3238 | *ATTRIBUTES- RE-USABLE * PMN43550
3239 | * * PMN43560
3240 | *************************************************** PMN43570
DUMMY KEYBOARD CONVERSION
0000 3242 | ORG 0 PMN43590
*SBRKSMC 95 3243 | *SYS KEYBOARD CONVERSION V2M00 PMN43600
0000 0003 3244 | DC 3 SYS KEYBOARD CONV WD CNT PMN43610
0001 0095 3245 | DC @KBCV PHASE ID FOR SYS KB/CP CONV PMN43620
0002 4C00 0000 3246 | DK000 BSC L *-* DUMMY ENTRY FOR CONV PMN43630
0004 70FD 3247 | MDX DK000 IMMEDIATE RETURN TO CALLER PMN43640
3248 | *
00F0 3249 | ORG DZ000-2 KNITTEL
*SBRKSMC 96 3250 | *DISKZ V2M00 KNITTEL
DISKZ
3252 | *************************************************** PMN05590
3253 | * * PMN05600
3254 | *STATUS - VERSION 2, MODIFICATION 11 * PMN05610
3255 | * * PMN05620
3256 | *PROGRAM NAME- * PMN05630
3257 | * *FULL NAME-FORTRAN/SYSTEM DISK I/O SUBROUTINE * PMN05640
3258 | * *CALLING SEQUENCE- * PMN05650
3259 | * LDD PARAM * PMN05660
3260 | * BSI L DZ000 * PMN05670
3261 | * WHERE PARAM IS THE LABEL OF A DOUBLE-WORD * PMN05680
3262 | * CELL CONTAINING THE FUNCTION CODE AND THE * PMN05690
3263 | * ADDR OF THE I/O BUFFER,I.E., ADDR OF WD CNT. * PMN05700
3264 | * SEE 'CAPABILITIES' FOR DISCUSSION OF PARAM- * PMN05710
3265 | * ETERS. * PMN05720
3266 | * PMN05730
3267 | *PURPOSE- * PMN05740
3268 | * TO PROVIDE A SUBROUTINE TO PERFORM DISK OPERA-* PMN05750
3269 | * TIONS. THIS SUBROUTINE IS INTENDED FOR USE BY * PMN05760
3270 | * MONITOR PROGRAMS AND USER PROGRAMS WRITTEN IN * PMN05770
3271 | * FORTRAN. THUS,IT IS INTENDED FOR USE IN AN * PMN05780
3272 | * ERROR-FREE ENVIRONMENT. * PMN05790
3273 | * * PMN05800
3274 | *METHOD- * PMN05810
3275 | * DISKZ REQUIRES A BUFFER,THE LENGTH OF WHICH IS* PMN05820
3276 | * 2 GREATER THAN THE NO. WORDS TO BE READ/WRIT- * PMN05830
3277 | * TEN. * PMN05840
3278 | * * PMN05850
3279 | *CAPABILITIES AND LIMITATIONS- * PMN05860
3280 | * THE WD CNT,AS WELL AS DZ000,MUST BE ON AN EVEN* PMN05870
3281 | * BOUNDARY,MUST BE IN THE RANGE 0-32767. THE * PMN05880
3282 | * DRIVE CODE MUST BE IN BITS 1-3 OF THE SECTOR * PMN05890
3283 | * ADDR,WHICH FOLLOWS THE WD CNT. THE FUNCTION * PMN05900
3284 | * INDICATOR MUST BE XX00 FOR A READ OR XX01 FOR * PMN05910
3285 | * A WRITE,WHERE 'XX' MEANS ANY 2 HEXADECIMAL * PMN05920
3286 | * CHARACTERS. A WD CNT OF ZERO INDICATES A SEEK.* PMN05930
3287 | * (READ OR WRITE MAY BE INDICATED.) AUTOMATIC * PMN05940
3288 | * SEEKING IS PROVIDED AS A PART OF READ/WRITE. * PMN05950
3289 | * A WRITE IS ALWAYS WITH A READ-BACK-CHECK. * PMN05960
3290 | * DISKZ MAKES NO PREOPERATIVE PARAMETER CHECKS. * PMN05970
3291 | * * PMN05980
3292 | *SPECIAL FEATURES- * PMN05990
3293 | * DISKZ PROVIDES ONLY THOSE FUNCTIONS MENTIONED * PMN06000
3294 | * ABOVE. DISK1 AND DISKN OFFER THIS BASIC SET OF* PMN06010
3295 | * FUNCTIONS PLUS OTHERS. * PMN06020
3296 | * * PMN06030
3297 | *************************************************** PMN06040
DISKZ
3299 | * PROVIDE PARAMETERS FOR SYSTEM LOADER PMN06060
3300 | * PMN06070
00F0 3301 | BSS E 0 PMN06080
00F0 00EF 3302 | DC $ZEND-* DISKZ WORD COUNT PMN06090
00F1 FF6A 3303 | DC -@DZID PHASE ID PMN06100
00F2 00E8 3304 | DC $ZEND-6-*+1 ADDR OF SLET EXTRACT PMN06110
00F3 0001 3305 | DC 1 NO. ENTRIES IN SLET EXTRACT PMN06120
00F2 3306 | ORG *-2 PMN06130
DISKZ
00F2 0000 3308 | DZ000 DC *-* ENTRY POINT PMN06150
00F3 7400 00EE 3309 | MDX L $DBSY,0 LOOP UNTIL OPERATION IN PMN06160
00F5 70FD 3310 | MDX *-3 *PROGRESS IS COMPLETE PMN06170
00F6 7002 3311 | MDX DZ020 BR AROUND INT ENTRY POINT PMN06180
3312 | * PMN06190
3313 | * INTERRUPT ENTRY POINT PMN06200
3314 | * PMN06210
00F7 0000 3315 | DZ010 DC *-* INTERRUPT ADDRESS PMN06220
00F8 7018 3316 | MDX DZ180 BR TO SERVICE INTERRUPT PMN06230
00F9 690B 3317 | DZ020 STX 1 DZ100+1 SAVE XR1 PMN06240
00FA 6A0C 3318 | STX 2 DZ100+3 SAVE XR2 PMN06250
00FB 1008 3319 | SLA 8 SHIFT INDICATOR 8 BITS PMN06260
00FC D03C 3320 | STO DZ945 SAVE FUNCTION INDICATOR PMN06270
00FD 18D0 3321 | RTE 16 PMN06280
00FE D05A 3322 | STO DZ235+1 SAVE ADDR OF THE I/O AREA PMN06290
00FF 7054 3323 | MDX DZ230 BR TO CONTINUE PMN06300
0100 4C00 0000 3324 | DZ060 BSC L *-* BR TO SERVICE THE INTERRUPT PMN06310
3325 | * PMN06320
3326 | * START ALL DISK OPERATIONS PMN06330
3327 | * PMN06340
0102 690F 3328 | DZ070 STX 1 DZ180+1 SAVE ADDR OF THE I/O AREA PMN06350
0103 0822 3329 | XIO DZ904 START AN OPERATION PMN06360
3330 | * PMN06370
3331 | * RETURN TO USER PMN06380
3332 | * PMN06390
0104 6500 0000 3333 | DZ100 LDX L1 *-* RESTORE XR1 PMN06400
0106 6600 0000 3334 | LDX L2 *-* RESTORE XR2 PMN06410
0108 C0EE 3335 | LD DZ010 INTERRUPT ENTRY 2-6 PMN06420
0109 4C98 00F2 3336 | BSC I DZ000,+- NO,MONITOR ENTRY 2-6 PMN06430
010B D003 3337 | STO DZ110+1 YES,INT ENTRY 2-6 PMN06440
010C 1810 3338 | SRA 16 RESET 2-6 PMN06450
010D D0E9 3339 | STO DZ010 *INT ENTRY 2-6 PMN06460
010E 4C00 0000 3340 | DZ110 BSC L *-* 2-6 PMN06470
0110 1000 3341 | NOP DUMMY OP 2-6 PMN06480
3342 | * PMN06490
3343 | * SERVICE ALL INTERRUPTS PMN06500
3344 | * PMN06510
0111 6500 0000 3345 | DZ180 LDX L1 *-* ADDR OF I/O AREA TO XR1 PMN06520
0113 6600 00F2 3346 | LDX L2 DZ000 ADDR OF DZ000 TO XR2 PMN06530
0115 0816 3347 | XIO DZ910 SENSE THE DSW PMN06540
0116 D0C6 3348 | STO $DDSW SAVE THE DSW PMN06550
0117 4810 3349 | BSC - SKIP IF ERROR BIT SET 2-6 PMN06560
0118 70E7 3350 | MDX DZ060 BRANCH IF ERROR BIT NOT SET PMN06570
0119 C80A 3351 | DZ185 LDD DZ902 RESTORE WORD COUNT PMN06580
011A D900 3352 | STD 1 0 *AND SECTOR ADDRESS PMN06590
011B 74FF 00EE 3353 | MDX L $DBSY,-1 SKIP IF 16 RETRIES DONE PMN06600
011D 703A 3354 | MDX DZ235 BRANCH IF LESS THAN 16 PMN06610
3355 | * PMN06620
3356 | * TRAP OUT TO POSTOPERATIVE TRAP PMN06630
3357 | * PMN06640
011E C80F 3358 | LDD DZ912 1+SCTR ADDR TO EXTENSION PMN06650
011F C011 3359 | LD DZ915 PMN06660
0120 4293 3360 | DZ190 BSI 2 $PST2-X2 BR TO POSTOPERATIVE ER TRAP PMN06670
0121 7034 3361 | MDX DZ232 RETRY OPERATION 2-6 PMN06680
3362 | * PMN06690
3363 | * CONSTANTS AND WORK AREAS PMN06700
3364 | * PMN06710
0122 3365 | BSS E 0 PMN06720
3366 | * EVEN-NUMBERED LABELS ARE ON EVEN BOUNDARIES PMN06730
0122 0001 3367 | DZ900 DC 1 CONSTANT,READ-AFTER-SEEK WD CNT PMN06740
0123 0000 3368 | DZ901 DC 0 CURRENT ARM POSITION PMN06750
0124 0000 3369 | DZ902 DC *-* LAST TWO WORDS OF SECTOR PMN06760
0125 0000 3370 | DC *-* *PREVIOUSLY READ PMN06770
0126 0000 3371 | DZ904 DC *-* IOCC FOR OPERATION CURRENTLY PMN06780
0127 0000 3372 | DZ905 DC *-* *BEING PERFORMED PMN06790
0128 0000 3373 | DZ906 DC *-* SAVE AREA FOR IOCC FOR PMN06800
0129 0000 3374 | DZ907 DC *-* *USER-REQUESTED OPERATION PMN06810
012A 0122 3375 | DZ908 DC DZ900 IOCC FOR READ PMN06820
012B 0000 3376 | DZ909 DC *-* *AFTER SEEK PMN06830
012C 0000 3377 | DZ910 DC *-* 2ND WORD OF SEEK IOCC PMN06840
012D 0000 3378 | DZ911 DC *-* SENSE IOCC PMN06850
012E 0000 3379 | DZ912 DC *-* INTERMEDIATE WORD COUNT PMN06860
012F 0000 3380 | DZ913 DC *-* ADDR OF NEXT SEQUENTIAL SECTOR PMN06870
0130 5002 3381 | DZ914 DC /5002 WRITE SELECT/POWER UNSAFE INDR PMN06880
0131 5004 3382 | DZ915 DC /5004 READ/WRITE/SEEK ERROR INDICATOR PMN06890
0132 FEC0 3383 | DZ916 DC -320 TO BE USED TO SIMULTANEOUSLY PMN06900
0133 0001 3384 | DC 1 *DECR WD CNT, INCR SCTR ADDR PMN06910
0134 0080 3385 | DZ920 DC /0080 READ CHECK BIT FOR IOCC PMN06920
0135 0600 3386 | DZ925 DC /0600 2ND WD OF READ IOCC W/O AREA CD PMN06930
0136 0008 3387 | DZ930 DC 8 NO. SECTORS PER CYLINDER PMN06940
0137 5000 3388 | DZ935 DC /5000 NOT READY DISPLAY CODE PMN06950
0138 0FF8 3389 | DZ940 DC /0FF8 'AND' OUT DR CODE, SCTR ADDR PMN06960
0139 0000 3390 | DZ945 DC *-* FUNC INDICATOR (0=READ,1=WRITE) PMN06970
013A 0701 3391 | DZ950 DC /0701 SENSE IOCC W/O AREA CODE PMN06980
013B 0007 3392 | DZ955 DC /0007 'AND' OUT ALL BUT SCTR NO. PMN06990
013C 000A 3393 | DZ960 DC $DCYL-$CYLN BASE DEFECTIVE CYL ADDR PMN07000
013D 009F 3394 | DZ965 DC $ACDE BASE AREA CODE ADDR PMN07010
013E FFFB 3395 | DZ970 DC $CYLN-$ACDE BASE ARM POSITION ADDR PMN07020
013F 0000 3396 | DZ975 DC *-* 2ND WORD OF READ CHECK IOCC PMN07030
0140 0400 3397 | DZ980 DC /0400 2ND WD OF SEEK IOCC W/O AREA CD PMN07040
0141 0141 3398 | DZ985 DC 321 NO. WORDS PER SECTOR (W/ ADDR) PMN07050
0142 0000 3399 | DZ990 DC *-* CURRENT SECTOR NO. PMN07060
0143 FFFF 3400 | DZ995 DC -1 MASK FOR COMPLEMENTING PMN07070
3401 | * PMN07080
3402 | * RESERVED FOR SAVING CORE ON A DUMP ENTRY TO SKEL PMN07090
3403 | * PMN07100
0144 3404 | BSS 2 THIS AREA MUST BE AT $CIBA+319 PMN07110
00F2 3405 | X2 EQU DZ000 PMN07120
3406 | * PMN07130
3407 | * PMN07140
3408 | * PMN07150
0146 1810 3409 | DZ210 SRA 16 PMN07160
0147 D0A6 3410 | STO $DBSY CLEAR BUSY INDICATOR PMN07170
0148 74FF 0032 3411 | MDX L $IOCT,-1 DECREMENT IOCS COUNTER PMN07180
014A 1000 3412 | NOP PMN07190
014B 70B8 3413 | MDX DZ100 TO EXIT PMN07200
3414 | * PMN07210
3415 | * PREPARE TO TRAP OUT ON 'POWER UNSAFE' CONDITION PMN07220
3416 | * PMN07230
014C C8D7 3417 | DZ215 LDD DZ902 RESTORE WORD COUNT 2-6 PMN07240
014D D900 3418 | STD 1 0 *AND SECTOR ADDRES 2-6 PMN07250
014E C0E1 3419 | LD DZ914 PMN07260
014F 70D0 3420 | MDX DZ190 BR TO TPAP OUT PMN07270
3421 | * PMN07280
3422 | * PREPARE TO TRAP OUT ON 'NOT READY' CONDITION PMN07290
3423 | * PMN07300
0150 C0E6 3424 | DZ220 LD DZ935 FETCH ERROR CODE PMN07310
0151 4400 0028 3425 | BSI L $PRET BR TO PREOPERATIVE ERR TRAP PMN07320
0153 7038 3426 | MDX DZ340 RETRY THE OPERATION PMN07330
3427 | * PMN07340
3428 | * STATEMENTS MOVED 2-1 PMN07350
3429 | * PMN07360
0154 7401 0032 3430 | DZ230 MDX L $IOCT,1 INCREMENT IOCS COUNTER PMN07370
0156 6211 3431 | DZ232 LDX 2 @TCNT TURN BUSY INDICATOR ON 2-10 PMN07380
0157 6A96 3432 | STX 2 $DBSY * 2-6 PMN07390
0158 6500 0000 3433 | DZ235 LDX L1 *-* ADDR I/O AREA TO XR1 PMN07400
015A C900 3434 | LDD 1 0 PMN07410
015B D8C8 3435 | STD DZ902 SAVE WORD COUNT, SCTR ADDR PMN07420
015C D8D1 3436 | STD DZ912 PMN07430
015D 1810 3437 | DZ240 SRA 16 PMN07440
015E 1084 3438 | SLT 4 DRIVE CODE IN BITS 12-15 PMN07450
015F D00E 3439 | STO DZ280+1 PMN07460
0160 80DC 3440 | A DZ965 COMPUTE AND STORE THE PMN07470
0161 D01C 3441 | STO DZ330+1 *ADDR OF THE AREA CODE PMN07480
0162 80DB 3442 | A DZ970 COMPUTE AND STORE THE PMN07490
0163 D034 3443 | STO DZ350+1 *ADDR OF THE ARM POSITION PMN07500
0164 80D7 3444 | A DZ960 ADD IN BASE DT ADDR PMN07510
0165 8008 3445 | A DZ280+1 ADD IN THE DRIVE PMN07520
0166 8007 3446 | A DZ280+1 *CODE TWICE MORE PMN07530
0167 D006 3447 | STO DZ280+1 PMN07540
0168 62FD 3448 | LDX 2 -3 INITIALIZE COUNTER FOR LOOP PMN07550
0169 69BE 3449 | STX 1 DZ906 PMN07560
016A C101 3450 | LD 1 1 FETCH DESIRED SECTOR ADDR PMN07570
016B E0CC 3451 | AND DZ940 'AND' OUT SECTOR NO. PMN07580
016C D101 3452 | DZ250 STO 1 1 *AND DRIVE CODE PMN07590
016D 9400 0000 3453 | DZ280 S L *-* SUB DEFECTIVE CYLINDER ADDR PMN07600
016F 4828 3454 | BSC Z+ SKIP IF BAD CYLINDER PMN07610
0170 7007 3455 | MDX DZ300 BR TO CONTINUE PROCESSING PMN07620
0171 C101 3456 | LD 1 1 PMN07630
0172 80C3 3457 | A DZ930 INCREMENT SCTR ADDR BY 8 PMN07640
0173 7401 016E 3458 | MDX L DZ280+1,1 POINT TO NEXT DEFECTIVE CYL PMN07650
0175 7201 3459 | MDX 2 1 SKIP AFTER 3RD PASS PMN07660
0176 70F5 3460 | MDX DZ250 COMPARE W/ NEXT DEF CYL ADR PMN07670
0177 D101 3461 | STO 1 1 SCTR ADDR WITH 3 DEF CYL2-4 PMN07680
3462 | * PMN07690
3463 | * CONSTRUCT THE 2ND WORD OF ALL IOCC'S PMN07700
3464 | * PMN07710
0178 6600 00F2 3465 | DZ300 LDX L2 DZ000 ADDR OF DZ000 TO XR2 PMN07720
017A C23D 3466 | LD 2 DZ913-X2 FETCH SECTOR ADDRESS PMN07730
017B E249 3467 | AND 2 DZ955-X2 'AND' OUT ALL BUT SECTOR NO PMN07740
017C D250 3468 | STO 2 DZ990-X2 SAVE SECTOR NO. PMN07750
017D C400 0000 3469 | DZ330 LD L *-* FETCH AREA CODE PMN07760
017F EA4E 3470 | OR 2 DZ980-X2 'OR' IN SEEK FUNCTION CODE PMN07770
0180 D23A 3471 | STO 2 DZ910-X2 SEEK IOCC MINUS DIRECTION PMN07780
0181 EA43 3472 | OR 2 DZ925-X2 'OR' IN READ FUNCTION CODE PMN07790
0182 D239 3473 | STO 2 DZ909-X2 IOCC FOR READ-AFTER-SEEK PMN07800
0183 EA50 3474 | OR 2 DZ990-X2 'OR' IN SECTOR NO. PMN07810
0184 9247 3475 | S 2 DZ945-X2 COMPLETE READ/WRITE CODE PMN07820
0185 D237 3476 | STO 2 DZ907-X2 2ND WD OF READ/WRITE IOCC PMN07830
0186 EA42 3477 | OR 2 DZ920-X2 'OR' IN READ CHECK BIT PMN07840
0187 8247 3478 | A 2 DZ945-X2 PMN07850
0188 D24D 3479 | STO 2 DZ975-X2 2ND WD OF READ CHECK IOCC PMN07860
0189 EA48 3480 | OR 2 DZ950-X2 'OR' IN SENSE IOCC BITS PMN07870
018A D23B 3481 | STO 2 DZ911-X2 COMPLETED SENSE IOCC PMN07880
018B CA3C 3482 | LDD 2 DZ912-X2 1+SCTR ADDR TO EXTENSION PMN07890
018C 0A3A 3483 | DZ340 XIO 2 DZ910-X2 SENSE FOR DISK READY PMN07900
018D D2EB 3484 | STO 2 $DDSW-X2 SAVE THE DSW PMN07910
018E 4828 3485 | BSC Z+ SKIP UNLESS POWER UNSAFE OR PMN07920
018F 70BC 3486 | MDX DZ215 *WRITE SELECT, BR OTHERWISE PMN07930
0190 1002 3487 | SLA 2 BR TO PREOPERATIVE ERR TRAP PMN07940
0191 4828 3488 | BSC Z+ *IF DISK NOT READY, SKIP PMN07950
0192 70BD 3489 | MDX DZ220 *OTHERWISE PMN07960
3490 | * STATEMENTS REMOVED 2-1 PMN07970
0193 1002 3491 | SLA 2 CHECK FOR ARM AT HOME 2-11 PMN07980
0194 4828 3492 | BSC +Z SKIP IF NOT HOME 2-11 PMN07990
0195 7010 3493 | MDX DZ390+1 BR TO VERIFY ARM AT HOM2-11 PMN08000
3494 | * 2-11 PMN08010
3495 | * 3 INSTRUCTIONS REMOVED 2-11 PMN08020
3496 | * 2-11 PMN08025
0196 C101 3497 | LD 1 1 FETCH DESIRED CYLINDER ADDR PMN08030
0197 9400 0000 3498 | DZ350 S L *-* SUBTRACT ARM POSITION PMN08040
0199 4818 3499 | BSC +- SKIP IF SEEK NECESSARY PMN08050
019A 701B 3500 | MDX DZ400 BRANCH TO PERFORM OPERATION PMN08060
3501 | * PMN08070
3502 | * SEEK PMN08080
3503 | * PMN08090
019B 1893 3504 | SRT 19 PUT NO. CYLINDERS IN EXT PMN08100
019C 180F 3505 | SRA 15 + OR - SIGN TO BIT 15 PMN08110
019D 1002 3506 | SLA 2 SHIFT SIGN TO BIT 13 PMN08120
019E EA3A 3507 | OR 2 DZ910-X2 "OR"