ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:05 2020 Source File: \jjcdface.asm CFACE- RESIDENT COMMA 2 AUG 67 2 | ABS J1000020 0005 3 | $CIBA EQU /5 ADDR OF CIB ON MASTER CARTRIDGE J1000030 0006 4 | $CH12 EQU /6 CHANNEL 12 INDR,NON-ZERO=CHAN 12 J1000040 0007 5 | $COMN EQU /7 WORD COUNT OF COMMON J1000050 000E 6 | $CORE EQU /E CORE SIZE,/1000=4K,/2000=8K,ETC) J1000060 000F 7 | $CTSW EQU /F MCR SW,NON-ZERO=// RECD TRAPPED J1000070 0010 8 | $DADR EQU /10 SCTR ADDR OF PROG TO BE FETCHED J1000080 0011 9 | $DABL EQU /11 IOCC FOR SCA RESET (ODD ADDR) J1000090 0012 10 | $DREQ EQU /12 INDR FOR REQUESTED V. DISK I/O J1000100 0013 11 | $IBSY EQU /13 PRINC I/O BUSY INDR,NON-ZERO=BSY J1000110 0014 12 | $HASH EQU /14 WORK AREA FOR MONITOR PROGRAMS J1000120 0028 13 | $PRET EQU /28 ADDR PREOPERATIVE ERROR TRAP J1000130 002C 14 | $IREQ EQU /2C ADDR OF INT REQUEST SUBROUTINE J1000140 002D 15 | $ULET EQU /2D ADDR OF LET, LOGICAL DRIVE 0 J1000150 0032 16 | $IOCT EQU /32 IOCS CTR,0=NO I/O IN PROGRESS J1000160 0033 17 | $LAST EQU /33 LAST CD INDR,NON-ZERO=LAST CARD J1000170 0034 18 | $NDUP EQU /34 INHIBIT DUP SW,NON-ZERO=NO DUP J1000180 0035 19 | $NXEQ EQU /35 INHIBIT EXEC SW,NON-ZERO=NO EXEQ J1000190 0036 20 | $PBSY EQU /36 PRINC PTR BUSY INDR,NON-ZERO=BSY J1000200 0037 21 | $PGCT EQU /37 PAGE NO. FOR PAGE HEADINGS J1000210 0038 22 | $EXIT EQU /38 ADDR CALL EXIT ENTRY POINT J1000220 0039 23 | $LINK EQU /39 ADDR CALL LINK ENTRY POINT J1000230 003F 24 | $DUMP EQU /3F ADDR OF CALL DUMP, ENTRY POINT J1000240 0077 25 | $DCDE EQU /77 DRIVE CODE FOR CORE LOAD BLDR J1000250 0078 26 | $PHSE EQU /78 NO. OF PHASE CURRENTLY IN CORE J1000260 0079 27 | $UFIO EQU /79 ARM POSITION IN UNFORMATTED AREA J1000270 007A 28 | $WSDR EQU /7A WORKING STORAGE DRIVE CODE J1000280 007B 29 | $WRD1 EQU /7B LOAD ADDR FOR CURR USER CORE LD J1000290 007C 30 | $KCSW EQU /7C INHIBIT INPUT/PRINT OVERLAP SW J1000300 007D 31 | $UFDR EQU /7D UNFORMATTED I/O DRIVE CODE J1000310 007E 32 | $CPTR EQU /7E CHANNEL 12 INDICATOR FOR CP J1000320 007F 33 | $1132 EQU /7F CHANNEL 12 INDICATOR FOR 1132 J1000330 0080 34 | $1403 EQU /80 CHANNEL 12 INDICATOR FOR 1403 J1000340 0081 35 | $PST1 EQU /81 ADDR POSTOP ERROR TRAP,LEVEL 1 J1000350 0085 36 | $PST2 EQU /85 ADDR POSTOP ERROR TRAP,LEVEL 2 J1000360 0089 37 | $PST3 EQU /89 ADDR POSTOP ERROR TRAP,LEVEL 3 J1000370 008D 38 | $PST4 EQU /8D ADDR POSTOP ERROR TRAP,LEVEL 4 J1000380 0091 39 | $STOP EQU /91 ADDR PROGRAM STOP KEY TRAP J1000390 0095 40 | $FPAD EQU /95 FILE PROTECT ADDR (ADJ),LOG DR 0 J1000400 009A 41 | $CYLN EQU /9A ARM POSITION FOR LOGICAL DRIVE 0 J1000410 009F 42 | $ACDE EQU /9F AREA CODE FOR LOGICAL DRIVE 0 J1000420 00A4 43 | $DCYL EQU /A4 1ST DEF CYL ADDR, LOGICAL DR 0 J1000430 00B3 44 | $I200 EQU /B3 ENTRY POINT TO ILS FOR LEVEL 2 J1000440 00B8 45 | $I205 EQU /B8 J1000450 00B9 46 | $IBT2 EQU $I205+1 ADDR OF IBT FOR LEVEL 2 J1000460 00C4 47 | $I400 EQU /C4 ENTRY POINT TO ILS FOR LEVEL 4 J1000470 00D3 48 | $I405 EQU /D3 J1000480 00D4 49 | $IBT4 EQU $I405+1 ADDR OF IBT FOR LEVEL 4 J1000490 00D5 50 | $I410 EQU /D5 J1000500 00EE 51 | $DBSY EQU /EE DISK BUSY INDR,NON-ZERO=DK BUSY J1000510 01CB 52 | $BYSW EQU /1CB BYPASS SW,NOP IF FETCHING SOCAL J1000520 00F2 53 | DZ000 EQU /0F2 DISKZ ENTRY POINT J1000530 01E0 54 | $ZEND EQU /1E0 ADDR 1+LAST WORD OF DISKZ J1000540 7FA0 56 | C EQU /7FA0 CATCO POINTER SET TO MIDDLE J1000560 57 | *************************************************** J1000570 58 | * * J1000580 59 | * INDEX REG 1 IS SET TO .C. WHEN CATCO IS FORMED * J1000590 60 | * FOR USE BY ALL OF DUP FUNCTIONS. ANY DUP ROUT * J1000600 61 | * USING XR 1 FOR OTHER REASONS MUST RESTORE. * J1000610 62 | * ALL VALUES IN CATCO HAVE LABELS EQUATED TO THE * J1000620 63 | * VALUE THAT INDICATES THEIR RELATIVE LOCATION * J1000630 64 | * FROM .C. * J1000640 65 | * * J1000650 66 | *************************************************** J1000660 67 | * * J1000670 68 | * CATCO DCOM IMAGE * J1000680 69 | * EQUIVALENCES USED TO REFERENCE CATCO WITH XR1 * J1000690 70 | * * J1000700 71 | *************************************************** J1000710 FF84 72 | #NAME EQU 4-/80 NAME OF PROGRAM J1000720 FF86 73 | #DBCT EQU 6-/80 DISK BLOCK COUNT OF PROGRAM J1000730 FF87 74 | #FCNT EQU 7-/80 FILES SW,ZERO = NO FILES J1000740 FF88 75 | #SYSC EQU 8-/80 NON-ZERO,SYSTEM CARTRIDGE J1000750 FF89 76 | #JBSW EQU 9-/80 JOB SW,NON-ZERO='T' MODE J1000760 FF8A 77 | #CBSW EQU 10-/80 CLB SW,NON-ZERO=STORECI J1000770 FF8B 78 | #LCNT EQU 11-/80 NO. OF LOCALS J1000780 FF8C 79 | #MPSW EQU 12-/80 NON-ZERO, CORE MAP DESIRED J1000790 FF8D 80 | #MDF1 EQU 13-/80 NO. OF DUP CTRL RCDS J1000800 FF8E 81 | #MDF2 EQU 14-/80 ADDR OF MODIF BUFFER J1000810 FF8F 82 | #NCNT EQU 15-/80 NO. OF NOCALS J1000820 FF90 83 | #ENTY EQU 16-/80 RELATIVE ENTRY ADDR OF PROG J1000830 FF91 84 | #RP67 EQU 17-/80 IF NON-ZERO,1442 MOD 6,7 J1000840 85 | * J1000850 86 | * NEGATIVE VALUE REPRESENTS DEFAULT CONDITION * J1000860 FF92 87 | #TODR EQU 18-/80 DR CODE OF 'TO' DRIVE J1000870 FF93 88 | #FRDR EQU 19-/80 DR CODE OF 'FROM' DRIVE J1000880 89 | * * J1000890 FF94 90 | #FHOL EQU 20-/80 ADDR OF LARGEST FXA HOLE J1000900 FF95 91 | #FSZE EQU 21-/80 BLK CNT LARGEST HOLE IN FXA J1000910 FF96 92 | #UHOL EQU 22-/80 ADDR OF LARGEST UA HOLE J1000920 FF97 93 | #USZE EQU 23-/80 BLK CNT LARGEST HOLE IN UA J1000930 FF98 94 | #DCSW EQU 24-/80 NON-ZERO=DUP CALL J1000940 FF99 95 | #PIOD EQU 25-/80 PRINC. I/O INDICATOR J1000950 FF9A 96 | #PPTR EQU 26-/80 PRINC. PRINTER INDICATOR J1000960 FF9B 97 | #CIAD EQU 27-/80 WD NO. SCTR 0,CIL ADDR J1000970 FF9C 98 | #ACIN EQU 28-/80 AVAILABLE CARTRIDGE INDR2-8 J1000980 FF9D 99 | #GRPH EQU 29-/80 2250 INDICATOR 2-8 J1000990 FF9E 100 | #GCNT EQU 30-/80 NO. G2250 RECORDS 2-8 J1001000 FF9F 101 | #LOSW EQU 31-/80 LOCAL-CALLS-LOCAL INDR 2-8 J1001010 FFA0 102 | #X3SW EQU 32-/80 SPECIAL ILS SWITCH 2-8 J1001020 FFA1 103 | #ECNT EQU 33-/80 NO. OF EQUAT RCDS 2-8 J1001030 FFA3 104 | #ANDU EQU 35-/80 END OF UA (ADJ) LOG DR 0-4 J1001040 FFA8 105 | #BNDU EQU 40-/80 END OF UA (BASE) LOG DR 0-4 J1001050 FFAD 106 | #FPAD EQU 45-/80 FILE PROTECT ADDR (BASE) J1001060 FFB2 107 | #PCID EQU 50-/80 CART ID, PHYS DR 0-4 J1001070 FFB7 108 | #CIDN EQU 55-/80 CART ID, LOG DR 0-4 J1001080 FFBC 109 | #CIBA EQU 60-/80 CIB ADDR, LOG DR 0-4 J1001090 FFC1 110 | #SCRA EQU 65-/80 SCRA, LOG DR 0-4 J1001100 FFC6 111 | #FMAT EQU 70-/80 WS FORMAT, LOG DR 0-4 J1001110 FFCB 112 | #FLET EQU 75-/80 FLET ADDR, LOG DR 0-4 J1001120 FFD0 113 | #ULET EQU 80-/80 LET ADDR, LOG DR 0-4 J1001130 FFD5 114 | #WSCT EQU 85-/80 WS BLK CNT, LOG DR 0-4 J1001140 FFDA 115 | #CSHN EQU 90-/80 CUSHION END SCTR ADDR, 0-4 J1001150 0001 116 | #DCOM EQU 1 SCTR ADDR OF DCOM J1001160 0007 117 | #HDNG EQU 7 SCTR WITH PAGE HEADING J1001170 0FB0 118 | @SBFR EQU /FB0 2-8 J1001180 CONCATENATED COMMON AREA (CATCO) 120 | *************************************************** J1001200 121 | * * J1001210 122 | * CATCO IOAR HDRS FOR DUP PHASES J1001220 123 | * * J1001230 124 | *************************************************** J1001240 FFF0 125 | ORG -/10 J1001250 FFF0 126 | DCHDR BSS 2 DUP CONTROL PH02 J1001260 FFF2 127 | STHDR BSS 2 STORE PH03 J1001270 FFF4 128 | FLHDR BSS 2 FILEQ PH04 J1001280 FFF6 129 | DMHDR BSS 2 DUMP PH05 J1001290 FFF8 130 | DLHDR BSS 2 DUMPLET PH06 J1001300 FFFA 131 | DTHDR BSS 2 DELETE PH07 J1001310 FFFC 132 | DFHDR BSS 2 DEFINE PH08 J1001320 FFFE 133 | DXHDR BSS 2 DUP EXIT PH09 J1001330 0000 134 | UCHDR BSS 2 DUP UPCOR PH13 J1001340 0002 135 | PIHDR BSS 2 PRINCIPAL I/O BLOCK PH14 J1001350 0004 136 | SIHDR BSS 2 PRINC I/O (W/O KB) BLK PH15 J1001360 0006 137 | PTHDR BSS 2 PAPER TAPE I/O BLOCK PH16 J1001370 0008 138 | CIHDR BSS 2 CI PHASE READ BY CL BUILDER J1001380 000A 139 | MUHDR BSS 2 MACRO UPDATE PH206 2-8 J1001390 000C 140 | D2HDR BSS 2 DUP CONTROL 2 PH205 2-8 J1001400 CFACE- CATCO DUP SWITCHES 142 | *************************************************** J1001420 143 | * J1001430 144 | * CATCO DUP SWITCHES * J1001440 145 | * WORDS USED FOR COMMUNICATION OF DATA J1001450 146 | * BETWEEN DUP ROUTINES. J1001460 147 | * * J1001470 148 | * INITIALIZED TO ZERO BY .REST. OF DUPCO * J1001480 149 | * J1001490 150 | *************************************************** J1001500 000E 151 | CL1 EQU * J1001510 000E 152 | ASMSW BSS 1 NON ZERO IF DEFINE VOID ASM J1001520 000F 153 | BITSW BSS 1 NON ZERO TO ALLOW MDUMP-S J1001530 0010 154 | BLKSW BSS 1 NON ZERO IF BYPASSING REC J1001540 0011 155 | CIERR BSS 1 ERROR NO DETECTED BY PH 17 J1001550 0012 156 | CISW BSS 1 NON ZERO IF STORE CI J1001560 0013 157 | CLBSW BSS 1 NON ZERO IF PRECI EXECUTED J1001570 0014 158 | CNTNO BSS 1 RECORD NO BEING PCHD OR RD J1001580 159 | * * J1001590 160 | * .DATSW. IS FILLED WITH THE CNT FIELD OF THE * J1001600 161 | * DUP CONTROL RECORD. * J1001610 162 | * USED PRIMARILY FOR DATA MOVEMENT, BUT ALSO IS * J1001620 163 | * USED FOR COUNT OF RECORDS TO READ AFTER A * J1001630 164 | * STORE CI DUP CONTROL RECORD. * J1001640 0015 165 | DATSW BSS 1 RECORDS VALUE IN CNT FIELD J1001650 0016 166 | DBADR BSS 1 DB ADDR OF REFERENCED PROG J1001660 0017 167 | DELSW BSS 1 ADDR OF REQ LET ENTRY - 1 J1001670 0018 168 | DFNSW BSS 1 NON ZERO IF DEFINE FXA J1001680 0019 169 | DKSAD BSS 1 DK SCTR ADDR W/O DR CODE J1001690 001A 170 | DUMPP BSS E 2 LAST LIMITS FOR PRNTR DUMP J1001700 001C 171 | FORSW BSS 1 NON ZERO IF DEFINE VOID FOR J1001710 001D 172 | FRWS BSS 1 NON ZERO IF FROM FLD IS WS J1001720 001E 173 | FXSW BSS 1 NON ZERO IF FIXED AREA REQD J1001730 001F 174 | HOLSW BSS 1 NON ZERO IF NO CONV REQD J1001740 0020 175 | IOSW BSS 1 NON ZERO IF IN/OUT REQD J1001750 176 | * * J1001760 177 | * DUMPLET SWITCH - ZERO IF NOT DUMPLET/DUMPFLET * J1001770 178 | * PLUS VALUE REQUIRES PRINT OF BOTH LET/FLET* J1001780 179 | * NEG. VALUE REQUIRES PRINT OF FLET ONLY * J1001790 0021 180 | LETSW BSS 1 NON ZERO,PRINT LET OR FLET* J1001800 0022 181 | LSTLF BSS 1 LAST LET/FLET SECT PROCESSD J1001810 0023 182 | MODSW BSS 1 NON ZERO IF STORE MOD FUNC J1001820 0024 183 | NAMSW BSS 1 NON ZERO IF NAME IN LET/F J1001830 0025 184 | NEGSW BSS 1 NON ZERO IF SHRINKING FXA J1001840 0026 185 | PGMHL BSS 1 WORD COUNT OF THE PROG HDR J1001850 0027 186 | PRSW BSS 1 NON ZERO IF PRINTING OUTPUT J1001860 0028 187 | PTSW BSS 1 NON ZERO IF PAPER TAPE REQD J1001870 0029 188 | SKWDS BSS 1 WDS TO SEARCH IN L/F SECT J1001880 002A 189 | STCSW BSS 1 NON ZERO IF STORE DATA CI J1001890 002B 190 | STSW BSS 1 NON ZERO IF STORE TYPE J1001900 002C 191 | TEMP1 BSS E 1 1ST WD OF BINEB OUTPUT J1001910 002D 192 | TEMP2 BSS 1 2ND WD OF BINEB OUTPUT J1001920 002E 193 | TOWS BSS 1 NON ZERO IF TO FIELD IS WS J1001930 002F 194 | T3MSW BSS 1 TYPE 3,4 SOCAL LEVEL CELL J1001940 0030 195 | UASW BSS 1 NON ZERO IF USER AREA REQD J1001950 0031 196 | WSSW BSS 1 NON ZERO IF WORK STG REQD J1001960 0032 197 | XEQSW BSS 1 NON ZERO IF NOT RET FR GET J1001970 0033 198 | EBCSW BSS 1 NON ZERO IF EBC DATA OP 2E2 J1001980 0034 199 | HDNSW BSS 1 NON ZERO IF NAME IN HDR 2-8 J1001990 0035 200 | RPGSW BSS 1 NON Z IF DEFINE VOID RPG2-8 J1002000 0036 201 | DFLSW BSS 1 NON ZERO IF *DFILE 2-8 J1002010 0037 202 | BSS 1 RESERVED FOR ADDITION 2-8 J1002020 0037 203 | CL2 EQU *-1 J1002030 CFACE- CATCO DUP SWITCHES 205 | *************************************************** J1002050 206 | * * J1002060 207 | * CATCO DUP SWITCHES * J1002070 208 | * INITIALIZED BY DCTL AND NOT RESET BY .REST. * J1002080 209 | * * J1002090 210 | *************************************************** J1002100 0038 211 | IOREQ BSS 1 MON-ZERO,AUX I/O SET REQ J1002110 0039 212 | PH2 BSS 1 NON-ZERO IF DCTL IN CORE J1002120 003A 213 | PH3 BSS 1 NON-ZERO IF STORE IN CORE J1002130 003B 214 | PH4 BSS 1 NON-ZERO IF DUMP IN CORE J1002140 215 | ************************************************2-8 J1002150 216 | * 2-8 J1002160 217 | * CATCO SWITCH INITIALIZED TO ZERO 2-8 J1002170 218 | * BY CCAT SUBR AND SET BY MACRO UPDATE PROGRAM2-8 J1002180 219 | * 2-8 J1002190 220 | ************************************************2-8 J1002200 003C 221 | DUPCR BSS 1 NON ZERO IF DUP CTRL RCD2-8 J1002210 222 | *************************************************** J1002220 223 | * * J1002230 224 | * CATCO DUP SWITCHES SET BY CCAT SUBR * J1002240 225 | * * J1002250 226 | *************************************************** J1002260 003D 227 | ADDR2 BSS 1 KB INTERRUPT ADDRESS J1002270 003E 228 | KBREQ BSS 1 CONTENTS OF LOC 13 J1002280 229 | * THE FOLLOWING SWITCH IS SET TO INDICATE THE J1002290 230 | * PRINCIPAL INPUT DEVICE J1002300 231 | * - IS PAPER TAPE J1002310 232 | * 0 IS CARD J1002320 233 | * + IS KEYBOARD J1002330 003F 234 | INOUT BSS 1 PRINCIPAL INPUT SWITCH J1002340 235 | * J1002350 0040 236 | PTPON BSS 1 NON-ZERO IF PAPER TP ON SYS J1002360 237 | *************************************************** J1002370 238 | * * J1002380 239 | * LEVEL 4 INTERRUPT BRANCH TABLE * J1002390 240 | * ADDRESSES. INITIALIZED BY CCAT, * J1002400 241 | * AND CARD/PAPER TAPE INTERFACES. * J1002410 242 | * * J1002420 243 | *************************************************** J1002430 0049 244 | ORG /0049 J1002440 0049 245 | IBT BSS 9 9 WD INTRPT BRANCH TABLE J1002450 246 | *************************************************** J1002460 247 | * * J1002470 248 | * CATCO I/O ADDRESSES REQUIRED BY DUP * J1002480 249 | * * J1002490 250 | *************************************************** J1002500 0052 251 | P1442 BSS E 2 SYS 1442 IOAR HEADER J1002510 0054 252 | PRPAR BSS 2 DEFAULT LIMITS TO PRINT J1002520 0056 253 | PHDUP BSS 1 LAST DUP PHASE IN CORE J1002530 0057 254 | CRBUF BSS 1 81 WD BFR FOR DUP CTRL RCDS J1002540 0058 255 | DCADR BSS 1 ADDR FOR DUP CTRL IOAR HDR J1002550 0059 256 | HDBUF BSS 1 ADDR OF PAGE HEADING BFR J1002560 005A 257 | IOBLK BSS 1 ADDR OF DUP I/O PHASE J1002570 005B 258 | SDBUF BSS 1 STORE/DUMP BUFFER J1002580 005C 259 | LETAR BSS 1 ADDR OF LET SEARCH BUFFER J1002590 005D 260 | PEBUF BSS 1 41 WD BFR FOR PACKED EBCDIC J1002600 005E 261 | THIS BSS 1 ADDR OF DOUBLE BFR, BFR 1 J1002610 005F 262 | NEXT BSS 1 ADDR OF DOUBLE BFR, BFR 2 J1002620 00F2 264 | DISKZ EQU DZ000 DISKZ ENTRY POINT J1002640 01DE 265 | B EQU $ZEND-2 J1002650 01DE 266 | DMPLC EQU B IOAR CORE ADDR FOR DMPLT J1002660 01DE 267 | EXITC EQU B IOAR CORE ADDR FOR DEXIT J1002670 01DE 268 | MUPC EQU B IOAR CORE ADDR FOR MUP 2-8 J1002680 11E0 269 | DCTL EQU B+/1002 ENTRY ADDRESS OF DCTL J1002690 11DE 270 | DCTLC EQU B+/1000 IOAR CORE ADDR FOR DCTL J1002700 21DE 271 | WSDC EQU B+/2000 IOAR CORE ADDR FOR STORE J1002710 41DE 272 | DUMPC EQU B+/4000 IOAR CORE ADDR FOR DDUMP J1002720 7DB0 273 | DUPCO EQU /7DB0 ADDR OF RESIDENT DUPCO J1002730 7F1E 274 | CATCO EQU /7F20-2 ADDR OF DCOM IOAR HEADER J1002740 275 | * * J1002750 276 | * DUPCO ENTRY POINTS...USED WITH INDIRECT BSI * J1002760 277 | * * J1002770 7DB0 278 | ORG DUPCO J1002780 7DB0 279 | BINEB BSS 1 CONVERSION BINARY TO EBCDIC J1002790 7DB1 280 | WRTDC BSS 1 WRITE DCOM(S) SUBROUTINE J1002800 7DB2 281 | ENTER BSS 1 SAVE XR-S AND CONDITIONS J1002810 7DB3 282 | GET BSS 1 READ FROM DISK USING DISKZ J1002820 7DB4 283 | LEAVE BSS 1 HANDLES ALL EXITS FROM DUP J1002830 7DB5 284 | LINE BSS 1 SPACES PRINTER 1 LINE J1002840 7DB6 285 | MASK BSS 1 INHIBITS KB INT REQUEST J1002850 7DB7 286 | MDUMP BSS 1 PRINTS SELECTED CORE LOC-S J1002860 7DB8 287 | PAGE BSS 1 SKIPS TO NEXT PAGE J1002870 7DB9 288 | PHID BSS 1 RECORDS PHASE ID J1002880 7DBA 289 | PHIDM BSS 1 RECORDS PHASE AND MODIFIER J1002890 7DBB 290 | PRINT BSS 1 USE SYS PR SUBR TO PRINT J1002900 7DBC 291 | PUT BSS 1 WRITES TO DISK USING DISKZ J1002910 7DBD 292 | REST BSS 1 RESTORE CATCO,GO TO DCTL J1002920 7DBE 293 | RTURN BSS 1 RESTORE XR-S AND CONDITIONS J1002930 294 | * * J1002940 295 | * INPUT/OUTPUT PARAMETERS , CORE ADDRESSES * J1002950 296 | * * J1002960 7D91 297 | BUF6 EQU DUPCO-/1F ADDR OF PAGE HEADING BUFFER J1002970 7C50 298 | PRPNT EQU BUF6-/141 IOAR ADDR FOR PRINC.PTR J1002980 7A06 299 | IOADR EQU BUF6-/38B START OF I/O INTERFACE J1002990 7A0A 300 | GETHO EQU IOADR+4 ENTRY FOR READING HOLL TYPE J1003000 7A0B 301 | GETBI EQU IOADR+5 ENTRY FOR READING BINARY J1003010 7A0C 302 | PACKB EQU IOADR+6 ENTRY TO PACK BINARY J1003020 7A0D 303 | PCHBI EQU IOADR+7 ENTRY TO PUNCH BINARY J1003030 79B5 304 | BUF1 EQU IOADR-/51 ADDR OF NEXT BUFFER J1003040 7963 305 | BUF2 EQU BUF1-/52 ADDR OF THIS BUFFER J1003050 7925 306 | BUF3 EQU BUF2-/3E ADDR OF PACKED EBC BUFFER J1003060 78D3 307 | BUF4 EQU BUF3-/52 ADDR OF CONTROL RCD BUFFER J1003070 7782 308 | BUF5 EQU IOADR-/284 ADDR OF LET SCTR BFR J1003080 0640 309 | BUF7 EQU BUF5-/7142 ADDR OF STORE/DUMP BFR J1003090 DUP CFACE PROLOGUE 06FEB67 DD 311 | * * J1003110 312 | *************************************************** J1003120 313 | * * J1003130 314 | *STATUS - VERSION 2, MODIFICATION LEVEL 12 * J1003140 315 | * * J1003150 316 | *FUNCTION/OPERATION--THIS PROGRAM SERVES AS AN * J1003160 317 | * INTERFACE WITH I/O WHEN THE 1442 OR 2501 IS THE* J1003170 318 | * PRINCIPAL I/O DEVICE. IT ENABLES VARIOUS DUP * J1003180 319 | * FUNCTIONS TO PERFORM ONE OR MORE OF THE * J1003190 320 | * FOLLOWING OPERATIONS. * J1003200 321 | * 1.READ A CARD IN IBM CARD CODE AND CONVERT * J1003210 322 | * THE CONTENTS TO PACKED EBC CHARACTERS. * J1003220 323 | * 3.READ A BINARY CARD (NO CONERSION) * J1003230 324 | * 4.CONVERT DATA FROM CARD BINARY(ONE COLUMN * J1003240 325 | * PER WORD) TO PACKED BINARY(4 COLS.PER 3 * J1003250 326 | * WORDS)--THE CARD IS CHECK-SUMMED IF REQD. * J1003260 327 | * 5.PUNCH A CARD FROM AN 80 WORD BUFFER. * J1003270 328 | * THERE ARE 4 ENTRY POINTS TO THIS PROGRAM(SEE * J1003280 329 | * BELOW),ONE EACH FOR THE FUNCTIONS LISTED ABOVE.* J1003290 330 | * UPON ENTRY TO EACH OF THESE FUNCTIONS,ALL ENTRY* J1003300 331 | * CONDITIONS ARE SAVED(REGISTERS AND STATUS)AND * J1003310 332 | * THE PHASE ID.IS RECORDED BY DOING A BSI TO * J1003320 333 | * PHIDM IN DUP CONTROL. PRIOR TO EXITING BACK TO * J1003330 334 | * THE CALLING PROGRAM, THE SAVED CONDITIONS ARE * J1003340 335 | * RESTORED BY DOING A BSI TO RTURN IN DUP CONTROL* J1003350 336 | * * J1003360 337 | * ENTRY POINTS.THERE ARE FOUR ENTRY POINTS, * J1003370 338 | * EACH CORRESPONDING TO ONE OF THE 4 FUNCTIONS * J1003380 339 | * LISTED UNDER FUNCTION/OPERATION.THE CALLING * J1003390 340 | * SEQUENCE IS AS FOLLOWS. * J1003400 341 | * BSI I GETHO * J1003410 342 | * BSI I GETBI * J1003420 343 | * BSI I PACKB * J1003430 344 | * BSI I PCHBI J1003440 345 | * - - * J1003450 346 | * - - * J1003460 347 | * - - * J1003470 348 | * GETHO DC IC000 * J1003480 349 | * GETBI DC IC200 * J1003490 350 | * PACKB DC IC300 * J1003500 351 | * PCHBI DC IC400 * J1003510 352 | * * J1003520 353 | *INPUT * J1003530 354 | * 1.GETHO(IC000)-DUP.CONTROL RECORDS * J1003540 355 | * 2.CONV(IC100)-IBM CARD CODE RECORDS * J1003550 356 | * 3.GETBI(IC200)-BINARY CARDS READ BY DCTL,STORE * J1003560 357 | * 4.PACKB(IC300)-CARD BINARY FORMAT(1 COL/ WORD) * J1003570 358 | * 5.PCHBI(IC400)- * J1003580 359 | * * J1003590 360 | *OUTPUT * J1003600 361 | * 1.GETHO(IC000)-PACKED EBC IN PEBUF * J1003610 362 | * 3.GETBI(IC200)- * J1003620 363 | * 4.PACKB(IC300)-PACKED BINARY(4 COLS/3 WDS) * J1003630 364 | * 5.PCHBI(IC400)-BINARY CARDS * J1003640 365 | * * J1003650 366 | *EXTERNAL ROUTINES-THE FOLLOWING EXTERNAL * J1003660 367 | * SUBROUTINES ARE USED * J1003670 368 | * 1.PHIDM IN DUP.CONTROL TO SAVE CONDITIONS,AND* J1003680 369 | * RECORD PHASE ID * J1003690 370 | * 2.2501/1442 SYSTEM I/O ROUTINE TO READ CARDS * J1003700 371 | * 3.CDCNV,SYSTEM CONVERSION SUBROUTINE TO * J1003710 372 | * CONVERT FROM HOLLERITH TO UNPACKED EBC * J1003720 373 | * 4 RTURN,SUBROUTINE IN DUPCO TO RESTORE * J1003730 374 | * CONDITIONS * J1003740 375 | * * J1003750 376 | *EXITS-NORMAL * J1003760 377 | * GETHO- IC008-2 * J1003770 378 | * GETBI- IC210 * J1003780 379 | * PACKB- IC340+2 * J1003790 380 | * A6L THE ABOVE EXITS ARE RETURNS TO DUP CONTROL.* J1003800 381 | * ALL EXITS ARE PERFORMED BY A BSC INDIRECT INST.* J1003810 382 | * * J1003820 383 | *EXITS- ERRORS * J1003830 384 | * IN THE PACKB FUNCTION IF AN INCORRECT * J1003840 385 | * CHECKSUM IS DETECTED,AN ERROR EXIT IS * J1003850 386 | * PERFORMED TO .LEAVE. SUBROUTINE IN DUPCO * J1003860 387 | * WITH AN ERROR CODE OF 71(DECIMAL) * J1003870 388 | * * J1003880 389 | *TABLES/WORK AREAS * J1003890 390 | * 1. GETHO(IC000) USES AN 81 WORD INPUT BUFFER * J1003900 391 | * SPECIFIED BY .CRBUF. IN CATCO, AND A * J1003910 392 | * 41 WORD OUTPUT BUFFER .PEBUF. * J1003920 393 | * 3 GETBI(IC200)-USES AN 81 WORD INPUT BUFFER * J1003930 394 | * SPECIFIED BY .THIS. * J1003940 395 | * 4 PACKB(IC300)USES .NEXT. AS AN INPUT/OUTPUT* J1003950 396 | * BUFFER FOR PACKING BINARY INFORMATION * J1003960 397 | * 5 PCHBI(IC400)USES AN 81 WORD OUTPUT BUFFER * J1003970 398 | * SPECIFIED BY .NEXT. TO PUNCH A CARD. * J1003980 399 | * * J1003990 400 | *ATTRIBUTES-- ABSOLUTE. THIS PROGRAM IS ASSEMBLED * J1004000 401 | *AT SYMBOLIC LOCATION .IOADR.,IT IS BROUGHT INTO * J1004010 402 | *CORE BY THE CCAT MODULE OF DUPCO AND IS THEN * J1004020 403 | *RESIDENT FOR THE REMAINDER OF TIME THAT DUP * J1004030 404 | *MAINTAINS CONTROL. * J1004040 405 | * * J1004050 406 | *NOTES-- THIS PROGRAM HAS NO WAITS * J1004060 407 | * * J1004070 408 | * * J1004080 409 | *************************************************** J1004090 CFACE--DUP 1442/2501 CARD INTERFACE 7A06 411 | ORG IOADR J1004110 7A06 0000 412 | DC *-* SYSTEM LOADER PUTS WD.CNT. J1004120 7A07 000A 413 | DC 10 PHASE ID FOR CARD INTERFACE J1004130 7A08 0000 414 | DC *-* ADDR.OF SYSTEM I/O SUBR. E J1004140 7A09 0000 415 | DC *-* ADDR.OF SYSTEM CONVERSION O J1004150 416 | * J1004160 417 | * J1004170 418 | * THE FOLLOWING 5 WORDS ARE ADDRESSES OF THE I/O * J1004180 419 | * INTERFACE ENTRY POINTS -- GETHO,CONV,GETBI * J1004190 420 | * PACKB AND PCHBI. J1004200 421 | * J1004210 7A0A 7A0E 422 | DC IC000 ENTRY FOR GETHO J1004220 7A0B 7A86 423 | DC IC200 ENTRY FOR GETBI J1004230 7A0C 7A9A 424 | DC IC300 ENTRY FOR PACKB J1004240 7A0D 7AD3 425 | DC IC400 ENTRY FOR PCHBI J1004250 426 | *************************************************** J1004260 427 | * SUBROUTINE ENTERED VIA.GETHO.,THIS SUBROUTINE * J1004270 428 | * READS A CARD ,CHECKS TO SEE IF IT CONTAINS * J1004280 429 | * //,*S,*M OR *D IN THE 1ST 2 COLS. IF SO, THE 2-8 J1004290 430 | * CARD IS CONVERTED FIRST TO UNPACKED EBC (VIA * J1004300 431 | * .CONV2.) AND FINALLY TO PACKED EBC(VIA.PACKE.)* J1004310 432 | *************************************************** J1004320 7A0E 0000 433 | IC000 DC *-* GETHO ENTRY--RD CD.IN HOLL J1004330 7A0F 4480 7DBA 434 | BSI I PHIDM TO DUPCO TO SAVE CONDITIONS J1004340 7A11 0800 435 | DC /0800 AND REGISTER PHASE 1D J1004350 7A12 4480 7DB2 436 | BSI I ENTER SAVE CONDITIONS J1004360 437 | * J1004370 7A14 6680 7FF7 438 | LDX I2 CRBUF+C STORE A ONE IN BIT 15 J1004380 7A16 C849 439 | LDD D1 OF FIRST TWO WORDS OF J1004390 7A17 DA01 440 | IC005 STD 2 1 CARD I/O AREA J1004400 441 | * J1004410 7A18 6300 442 | LDX 3 0 SET SWITCH FOR CARD READING J1004420 7A19 C157 443 | LD 1 CRBUF ADDR.OF I/O AREA IN ACCUM J1004430 7A1A 4047 444 | BSI RPCHN GO READ A CARD J1004440 445 | * J1004450 7A1B C133 446 | LD 1 EBCSW IF STOREDATAE OP 2E2 J1004460 7A1C 4C20 7A28 447 | BSC L IC007,Z *BYPASS CHECK. 2E2 J1004470 448 | * 2E2 J1004480 7A1E C202 449 | IC006 LD 2 2 LOOP TILL COLS 1 AND 2 J1004490 7A1F 4C04 7A1E 450 | BSC L IC006,E HAVE BEEN READ IN. J1004500 451 | * J1004510 7A21 CA01 452 | LDD 2 1 J1004520 7A22 981E 453 | SD SLASH CHECK FOR // IN COLS 1-2 J1004530 7A23 4820 454 | BSC Z J1004540 7A24 700B 455 | MDX IC010 NO,CHECK FOR * IN COL 1 2E2 J1004550 456 | * J1004560 7A25 18D0 457 | RTE 16 J1004570 7A26 4C20 7A2E 458 | BSC L IC008,Z NOT // OR *, SET BLKSW 2E2 J1004580 459 | * J1004590 7A28 7400 0013 460 | IC007 MDX L $IBSY,0 FOUND //,*S,*M OR *D SIT2-8 J1004600 7A2A 70FD 461 | MDX *-3 TILL WHOLE CARD READ IN J1004610 462 | * J1004620 7A2B 401A 463 | BSI CONV2 GO CONVERT TO EBC J1004630 464 | * J1004640 7A2C 4C80 7A0E 465 | BSC I IC000 RETURN TO DUP CONTROL J1004650 466 | * OR TO STOREDATAE 2E2 J1004660 467 | * J1004670 7A2E D110 468 | IC008 STO 1 BLKSW SET BLANK CARD SWITCH,NONZR J1004680 469 | * J1004690 7A2F 70FC 470 | MDX IC008-2 RETURN TO DUP CONTROL J1004700 471 | * J1004710 7A30 980D 472 | IC010 SD KONAS CHECK FOR *S 2-3 J1004720 7A31 4C20 7A2E 473 | BSC L IC008,Z BR IF NOT * IN COL 1 2-3 J1004730 7A33 18D0 474 | RTE 16 LOOK FOR S IN COL 2 2-3 J1004740 7A34 4C18 7A28 475 | BSC L IC007,+- FOUND *S, MUST CONVERT 2-3 J1004750 476 | * 2-3 J1004760 7A36 900B 477 | S KONM TEST FOR M IN COL 2 2-8 J1004770 7A37 4C18 7A28 478 | BSC L IC007,+- BR TO CONVERT IF FOUND 2-8 J1004780 479 | * 2-8 J1004790 7A39 9009 480 | S KOND LOOK FOR D IN COL 2 2-3 J1004800 7A3A 4C18 7A28 481 | BSC L IC007,+- FOUND *D, MUST CONVERT 2-3 J1004810 7A3C 70F1 482 | MDX IC008 NOT //,*S,*M, OR *D, 2-8 J1004820 483 | * *SO SET BLKSW 2-8 J1004830 484 | * 2-3 J1004840 485 | * THE ABOVE CODING HAS BEEN MADE MORE EFFICIENT 2-3 J1004850 486 | * TEST FOR M IN COL 2 ADDED TO IMPLEMENT MUP 2-8 J1004860 487 | * 2-3 J1004870 488 | *************************************************** J1004880 489 | * J1004890 490 | * CONSTANTS J1004900 491 | * J1004910 492 | *************************************************** J1004920 7A3D 0050 493 | D80 DC 80 CONS FOR WD CNT J1004925 7A3E 494 | BSS E 0 J1004930 7A3E 121F 495 | KONAS DC /121F DOUBLE CON FOR DETECT- E J1004940 7A3F F800 496 | DC /F800 *ING *S IN COLS 1 AND 2 O J1004950 7A40 0000 497 | CLCNT DC 0 WD.USED TO STORE COL.COUNT E J1004960 7A41 3000 498 | SLASH DC /3000 SLASH CHAR.IN HOLLERITH CDE.O J1004970 7A42 1A00 499 | KONM DC /1A00 CON FOR DETECTING M 2-8 J1005000 7A43 4000 500 | KOND DC /4000 CON FOR DETECTING D 2-8 J1005010 7A44 7000 501 | H7000 DC /7000 CODE FOR SYS.I/O SUBR-RD.CD. J1005020 7A45 7003 502 | H7003 DC /7003 CODE FOR SYS 1442 SUBR-FEED J1005030 503 | * J1005050 504 | *************************************************** J1005060 505 | * CONV2--THIS CLOSED SUBROUTINE LINKS TO THE SYSTEM J1005070 506 | *I/O CONVERSION ROUTINE. THE UNPACKED RESULT IN EBC J1005080 507 | * IS THEN PACKED TWO CHARACTERS PER WORD J1005090 508 | *************************************************** J1005100 7A46 0000 509 | CONV2 DC *-* J1005110 7A47 C157 510 | LD 1 CRBUF ADDR OF I/O BUF.IN ACCUM. J1005120 7A48 D00B 511 | STO PA010+1 INITIALIZE INSTRUCTION J1005130 512 | * J1005140 513 | *GO TO SYS.I/O RTN TO CONVERT TO UNPACKED EBCDIC J1005150 514 | * J1005160 7A49 4480 7A09 515 | BSI I GETHO-1 J1005170 516 | *************************************************** J1005180 517 | *************************************************** J1005190 518 | *SUBROUTINE TO PACK THE EBC CHARACTERS FROM AN 81 * J1005200 519 | * WORD BUFFER TO A 41 BUFFER. * J1005210 520 | *************************************************** J1005220 7A4B 6228 521 | PACKE LDX 2 /28 SET WORD-COUNT OF 40 IN 1ST J1005230 7A4C 6E80 7FFD 522 | STX I2 PEBUF+C WORD OF PACKED BUFFER. J1005240 7A4E 6251 523 | LDX 2 81 XR2= UNPACKED WORD-COUNT+1 J1005250 7A4F 6328 524 | LDX 3 40 XR3= PACKED BUFFER WD.COUNT J1005260 7A50 C15D 525 | LD 1 PEBUF INIT.INSTRUCTION TO J1005270 7A51 D007 526 | STO PA020+1 STORE PACKED BUFFER J1005280 527 | * J1005290 7A52 72FE 528 | PA005 MDX 2 -2 NEXT UNPACKED WORDS J1005300 7A53 CE00 0000 529 | PA010 LDD L2 *-* PICK UP TWO UNPACKED WORDS J1005310 7A55 18D0 530 | RTE 16 AND FORM J1005320 7A56 1008 531 | SLA 8 TWO PACKED CHARACTERS J1005330 7A57 18C8 532 | RTE 8 IN ACCUMULATOR J1005340 7A58 D700 0000 533 | PA020 STO L3 *-* STORE 2 PACKED CHARS J1005350 534 | * J1005360 7A5A 73FF 535 | MDX 3 -1 NEXT ADDR IN PACKED BUFFER J1005370 7A5B 70F6 536 | MDX PA005 LOOP J1005380 537 | * J1005390 7A5C 4480 7DBE 538 | BSI I RTURN TO DUPCO,RESTORE CONDITIONS J1005400 539 | * J1005410 7A5E 4C80 7A46 540 | BSC I CONV2 EXIT J1005420 7A60 541 | BSS E 0 ASSURE EVEN BOUNDARY 212 J1005422 7A60 0001 542 | D1 DC 1 CONSTANT OF 1 J1005424 7A61 0003 543 | D3 DC 3 CONSTANT OF 3 J1005426 544 | *************************************************** J1005430 545 | * RPCHN--THIS CLOSED SUBROUTINE PERFORMS THE * J1005440 546 | * PRELIMINARY INSTRUCTIONS NECESSARY TO READ OR * J1005450 547 | * PUNCH A RECORD,IT THEN GOES TO THE SYSTEM I/O * J1005460 548 | *SUBROUTINE WITH THE APPROPRIATE CALLING SEQUENCE * J1005470 549 | *************************************************** J1005480 550 | * J1005490 7A62 0000 551 | RPCHN DC *-* J1005500 7A63 D00C 552 | STO RP010+1 I/O BUFFER ADDR. STORED IN J1005510 7A64 18D0 553 | RTE 16 RP010 INSTR.AND IN Q REG. J1005520 554 | * J1005530 7A65 C0A2 555 | LD GETHO-2 ********************** J1005540 7A66 80FA 556 | A D3 *SET UP INTERRUPT * J1005550 7A67 D14E 557 | STO 1 IBT+5 *LEVEL ADDRESSES IN * J1005560 7A68 D14F 558 | STO 1 IBT+6 *ILS04 AND IN LOC * J1005570 7A69 80F7 559 | A D3 *0008 * J1005580 7A6A D400 0008 560 | STO L 8 ********************** J1005590 7A6C 1810 561 | SRA 16 INITIALIZE BLANK J1005600 7A6D D110 562 | STO 1 BLKSW CARD SWITCH TO ZERO J1005610 563 | * J1005620 7A6E C0CE 564 | LD D80 WORD COUNT IN 1ST WORD J1005630 7A6F D400 0000 565 | RP010 STO L *-* OF I/O AREA J1005640 566 | * J1005650 7A71 7400 0013 567 | MDX L $IBSY,0 SKIP IF NOT BUSY J1005660 7A73 70FD 568 | MDX *-3 LOOP TILL NOT BUSY J1005670 7A74 7300 569 | MDX 3 0 SKIP IF READING J1005690 7A75 7007 570 | MDX RP015 J1005700 571 | * * J1005710 7A76 C400 0033 572 | LD L $LAST J1005720 7A78 4C08 7A7D 573 | BNP RP015 BRANCH IF NOT 1442 212 J1005730 574 | * * J1005740 7A7A C0CA 575 | LD H7003 J1005750 7A7B 4480 7A08 576 | BSI I GETHO-2 FEED TO EJECT LAST CARD J1005760 577 | * * J1005770 7A7D C0F2 578 | RP015 LD RP010+1 J1005780 7A7E 18D0 579 | RTE 16 BFR ADDR TO ACC EXTENSION J1005790 7A7F C0C4 580 | LD H7000 CODE TO READ A CARD J1005800 7A80 7300 581 | MDX 3 0 IS CARD PUNCHING REQUIRED J1005810 7A81 80DE 582 | A D1 YES,MAKE ACCUM 7001,PCH.CD J1005820 7A82 4480 7A08 583 | BSI I GETHO-2 NO,7000 OK,GOTO SYS I/O RTN J1005830 584 | * J1005840 7A84 4C80 7A62 585 | BSC I RPCHN RETURN J1005850 586 | ************************************************2E2 J1005860 587 | * 2E2 J1005870 7A86 588 | BSS 0 CDFACE PATCH AREA 2-8 J1005880 589 | * 2E2 J1005890 590 | * 2E2 J1005900 591 | *************************************************** J1005910 592 | * SUBROUTINE ENTERED VIA .GETBI., THIS SUBR. * J1005920 593 | * READS A CARD INTO A BUFFER SPECIFIED BY.THIS. * J1005930 594 | *************************************************** J1005940 7A86 0000 595 | IC200 DC *-* GETBI ENTRY--GET BINARY REC J1005950 7A87 4480 7DBA 596 | BSI I PHIDM TO DUPCO TO SAVE CONDITIONS J1005960 7A89 0800 597 | DC /0800 AND RECORD PHASE ID. J1005970 7A8A 4480 7DB2 598 | BSI I ENTER SAVE CONDITIONS J1005980 599 | * J1005990 7A8C 6680 7FFE 600 | LDX I2 THIS+C * SET BIT 15 IN WORD 4 OF* J1006000 7A8E C0D1 601 | LD D1 * OF CARD BUFFER BEFORE * J1006010 7A8F D204 602 | STO 2 4 * GOING OUT TO RD A CD * J1006020 603 | * J1006030 7A90 C15E 604 | LD 1 THIS ADDR. OF CARD INPUT BUFR J1006040 7A91 6300 605 | LDX 3 0 SET SWITCH FOR CARD READING J1006050 7A92 40CF 606 | BSI RPCHN GO READ A CARD INTO THIS J1006060 607 | * J1006070 7A93 C204 608 | IC210 LD 2 4 *LOOP TILL COL.4 OF * J1006080 7A94 4C04 7A93 609 | BSC L IC210,E *CARD HAS BEEN READ * J1006090 610 | * J1006100 7A96 4480 7DBE 611 | BSI I RTURN TO DUPCO,RESTORE CONDITIONS J1006110 612 | * J1006120 7A98 4C80 7A86 613 | BSC I IC200 RETURN TO DUP CONTROL J1006130 614 | * J1006140 615 | *************************************************** J1006150 616 | * IC300,THE SUBROUTINE TO PACK BINARY CARDS,FROM * J1006160 617 | * 1 COL/WD TO 4 COLS/3 WORDS.INPUT IS FOUND IN * J1006170 618 | *(NEXT) AND PACKED INTO THE SAME BUFFER. * J1006180 619 | *************************************************** J1006190 620 | * J1006200 7A9A 0000 621 | IC300 DC *-* PACKB ENTRY,PACK BIN.SUBR. J1006210 7A9B 4480 7DBA 622 | BSI I PHIDM TO DUPCO TO SAVE CONDITIONS J1006220 7A9D 0800 623 | DC /0800 AND RECORD PHASE ID J1006230 7A9E 4480 7DB2 624 | BSI I ENTER SAVE CONDITIONS J1006240 625 | * J1006250 7AA0 6248 626 | LDX 2 72 J1006260 7AA1 6A9E 627 | STX 2 CLCNT COLUMN COUNT = 72 J1006270 7AA2 6680 7FFF 628 | LDX I2 NEXT+C *XR2=ADDR OF 1ST INPUT WD. J1006280 7AA4 6780 7FFF 629 | LDX I3 NEXT+C *XR3=ADDR.OF 1ST OUTPUT WD. J1006290 630 | * ACC AND EXT J1006300 7AA6 CA01 631 | IC310 LDD 2 1 ABC0DEF0 LD.COLS 1 AND 2 J1006310 7AA7 1804 632 | SRA 4 0ABCDEFO J1006320 7AA8 1084 633 | SLT 4 ABCDEFOO 1ST WORD IN A J1006330 7AA9 D301 634 | STO 3 1 ABCD STORE 1ST WD. J1006340 635 | * J1006350 7AAA 1888 636 | SRT 8 ..ABCDEF J1006360 7AAB C203 637 | LD 2 3 GHI0CDEF LD.COL.3 J1006370 7AAC 18C8 638 | RTE 8 EFGHIOCD 2ND.WORD IN A J1006380 7AAD D302 639 | STO 3 2 EFGH STORE 2ND WD. J1006390 640 | * J1006400 7AAE 188C 641 | SRT 12 ...EFGHI J1006410 7AAF C204 642 | LD 2 4 JKL0FGHI LD.COL.4 J1006420 7AB0 18C4 643 | RTE 4 IJKLOFGH 3RD.WORD IN A J1006430 7AB1 D303 644 | STO 3 3 IJKL STORE 3RD.WD. J1006440 645 | * J1006450 7AB2 7204 646 | MDX 2 4 INCREMENT INPUT COUNTER J1006460 7AB3 7303 647 | MDX 3 3 INCREMENT OUTPUT COUNTER J1006470 7AB4 74FC 7A40 648 | MDX L CLCNT,-4 DECR.COL.CNT,ARE WE DONE J1006480 7AB6 70EF 649 | MDX IC310 NO,PACK NEXT 4 COLS. J1006490 650 | * J1006500 651 | *DONE PACKING,NOW DO CHECKSUM J1006510 652 | * J1006520 7AB7 C115 653 | LD 1 DATSW DO NOT CHECKSUM IF THIS IS J1006530 7AB8 4C20 7ACF 654 | BSC L IC340,Z DATA, DATSW NONZERO J1006540 655 | * J1006550 7ABA C3CC 656 | LD 3 -52 ALSO IF CHECKSUM IS ZERO J1006560 7ABB 4C18 7ACF 657 | BSC L IC340,+- J1006570 658 | * J1006580 7ABD 7401 7FB4 659 | MDX L CNTNO+C,1 STEP CARD COUNT NO. J1006590 7ABF 6236 660 | LDX 2 54 J1006600 7AC0 C114 661 | LD 1 CNTNO SEQUENCE NO. J1006610 7AC1 83CB 662 | IC320 A 3 -53 ADD WORD FROM PACKED BUFR J1006620 7AC2 4C02 7AC5 663 | BSC L IC325,C BR IF CARRY ON J1006630 7AC4 7001 664 | MDX IC330 DO NOT ADD 1 IF CARRY OFF J1006640 7AC5 809A 665 | IC325 A D1 ADD 1 WHEN CARRY IS ON J1006650 7AC6 7301 666 | IC330 MDX 3 1 NEXT WORD TO ADD J1006660 7AC7 72FF 667 | MDX 2 -1 HAVE WE DONE 54 WORDS J1006670 7AC8 70F8 668 | MDX IC320 NO,DO NEXT J1006680 7AC9 9096 669 | S D1 IS CKSUM OK? J1006690 7ACA 4C18 7ACF 670 | BSC L IC340,+- YES, RETURN TO DUPCO J1006700 7ACC 4480 7DB4 671 | BSI I LEAVE NO, GO TO SUBROUTINE IN J1006710 7ACE 005A 672 | DC 90 *DUPCO WITH ERROR CODE J1006720 673 | * J1006730 7ACF 4480 7DBE 674 | IC340 BSI I RTURN RESTORE CONDITIONS J1006740 675 | * J1006750 7AD1 4C80 7A9A 676 | BSC I IC300 EXIT J1006760 677 | * J1006770 678 | *************************************************** J1006780 679 | * ENTRY TO PUNCH BINARY RECORDS * J1006790 680 | *************************************************** J1006800 681 | * J1006810 7AD3 0000 682 | IC400 DC *-* J1006820 7AD4 4480 7DBA 683 | BSI I PHIDM TO DUPCO TO SAVE CONDITIONS J1006830 7AD6 0800 684 | IC410 DC /0800 AND RECORD PHASE ID. J1006840 7AD7 4480 7DB2 685 | BSI I ENTER SAVE CONDITIONS J1006850 686 | * J1006860 7AD9 6680 7FFF 687 | LDX I2 NEXT+C * PUT A PUNCH STOP * J1006870 7ADB 6301 688 | LDX 3 1 SET SWITCH TO PUNCH CARDS J1006880 7ADC C15F 689 | LD 1 NEXT ADDRI/O AREA ADDR IN ACC J1006890 7ADD 4400 7A62 690 | BSI L RPCHN GO PUNCH A CARD J1006900 691 | * J1006910 7ADF 4480 7DBE 692 | BSI I RTURN RESTORE REGISTERS J1006920 693 | * J1006930 7AE1 4C80 7AD3 694 | BSC I IC400 EXIT J1006940 695 | *************************************************** J1006950 7AE3 696 | END IC000 J1006960 There were no errors in this assembly Program transfer address = 7A0E === CROSS REFERENCES ========================================================== Name Val Defd Referenced #ACIN FF9C 98 #ANDU FFA3 104 #BNDU FFA8 105 #CBSW FF8A 77 #CIAD FF9B 97 #CIBA FFBC 109 #CIDN FFB7 108 #CSHN FFDA 115 #DBCT FF86 73 #DCOM 0001 116 #DCSW FF98 94 #ECNT FFA1 103 #ENTY FF90 83 #FCNT FF87 74 #FHOL FF94 90 #FLET FFCB 112 #FMAT FFC6 111 #FPAD FFAD 106 #FRDR FF93 88 #FSZE FF95 91 #GCNT FF9E 100 #GRPH FF9D 99 #HDNG 0007 117 #JBSW FF89 76 #LCNT FF8B 78 #LOSW FF9F 101 #MDF1 FF8D 80 #MDF2 FF8E 81 #MPSW FF8C 79 #NAME FF84 72 #NCNT FF8F 82 #PCID FFB2 107 #PIOD FF99 95 #PPTR FF9A 96 #RP67 FF91 84 #SCRA FFC1 110 #SYSC FF88 75 #TODR FF92 87 #UHOL FF96 92 #ULET FFD0 113 #USZE FF97 93 #WSCT FFD5 114 #X3SW FFA0 102 $1132 007F 33 $1403 0080 34 $ACDE 009F 42 $BYSW 01CB 52 $CH12 0006 4 $CIBA 0005 3 $COMN 0007 5 $CORE 000E 6 $CPTR 007E 32 $CTSW 000F 7 $CYLN 009A 41 $DABL 0011 9 $DADR 0010 8 $DBSY 00EE 51 $DCDE 0077 25 $DCYL 00A4 43 $DREQ 0012 10 $DUMP 003F 24 $EXIT 0038 22 $FPAD 0095 40 $HASH 0014 12 $I200 00B3 44 $I205 00B8 45 46 $I400 00C4 47 $I405 00D3 48 49 $I410 00D5 50 $IBSY 0013 11 460 567 $IBT2 00B9 46 $IBT4 00D4 49 $IOCT 0032 16 $IREQ 002C 14 $KCSW 007C 30 $LAST 0033 17 572 $LINK 0039 23 $NDUP 0034 18 $NXEQ 0035 19 $PBSY 0036 20 $PGCT 0037 21 $PHSE 0078 26 $PRET 0028 13 $PST1 0081 35 $PST2 0085 36 $PST3 0089 37 $PST4 008D 38 $STOP 0091 39 $UFDR 007D 31 $UFIO 0079 27 $ULET 002D 15 $WRD1 007B 29 $WSDR 007A 28 $ZEND 01E0 54 265 'SBFR 0FB0 118 ADDR2 003D 227 ASMSW 000E 152 B 01DE 265 266 267 268 269 270 271 272 BINEB 7DB0 279 BITSW 000F 153 BLKSW 0010 154 468 562 BUF1 79B5 304 305 BUF2 7963 305 306 BUF3 7925 306 307 BUF4 78D3 307 BUF5 7782 308 309 BUF6 7D91 297 298 299 BUF7 0640 309 C 7FA0 56 438 522 600 628 629 659 687 CATCO 7F1E 274 CIERR 0011 155 CIHDR 0008 138 CISW 0012 156 CL1 000E 151 CL2 0037 203 CLBSW 0013 157 CLCNT 7A40 497 627 648 CNTNO 0014 158 659 661 CONV2 7A46 509 463 540 CRBUF 0057 254 438 443 510 D1 7A60 542 439 582 601 665 669 D2HDR 000C 140 D3 7A61 543 556 559 D80 7A3D 493 564 DATSW 0015 165 653 DBADR 0016 166 DCADR 0058 255 DCHDR FFF0 126 DCTL 11E0 269 DCTLC 11DE 270 DELSW 0017 167 DFHDR FFFC 132 DFLSW 0036 201 DFNSW 0018 168 DISKZ 00F2 264 DKSAD 0019 169 DLHDR FFF8 130 DMHDR FFF6 129 DMPLC 01DE 266 DTHDR FFFA 131 DUMPC 41DE 272 DUMPP 001A 170 DUPCO 7DB0 273 278 297 DUPCR 003C 221 DXHDR FFFE 133 DZ000 00F2 53 264 EBCSW 0033 198 446 ENTER 7DB2 281 436 598 624 685 EXITC 01DE 267 FLHDR FFF4 128 FORSW 001C 171 FRWS 001D 172 FXSW 001E 173 GET 7DB3 282 GETBI 7A0B 301 GETHO 7A0A 300 515 555 576 583 H7000 7A44 501 580 H7003 7A45 502 575 HDBUF 0059 256 HDNSW 0034 199 HOLSW 001F 174 IBT 0049 245 557 558 IC000 7A0E 433 422 465 696 IC005 7A17 440 IC006 7A1E 449 450 IC007 7A28 460 447 475 478 481 IC008 7A2E 468 458 470 473 482 IC010 7A30 472 455 IC200 7A86 595 423 613 IC210 7A93 608 609 IC300 7A9A 621 424 676 IC310 7AA6 631 649 IC320 7AC1 662 668 IC325 7AC5 665 663 IC330 7AC6 666 664 IC340 7ACF 674 654 657 670 IC400 7AD3 682 425 694 IC410 7AD6 684 INOUT 003F 234 IOADR 7A06 299 300 301 302 303 304 308 411 IOBLK 005A 257 IOREQ 0038 211 IOSW 0020 175 KBREQ 003E 228 KONAS 7A3E 495 472 KOND 7A43 500 480 KONM 7A42 499 477 LEAVE 7DB4 283 671 LETAR 005C 259 LETSW 0021 180 LINE 7DB5 284 LSTLF 0022 181 MASK 7DB6 285 MDUMP 7DB7 286 MODSW 0023 182 MUHDR 000A 139 MUPC 01DE 268 NAMSW 0024 183 NEGSW 0025 184 NEXT 005F 262 628 629 687 689 P1442 0052 251 PA005 7A52 528 536 PA010 7A53 529 511 PA020 7A58 533 526 PACKB 7A0C 302 PACKE 7A4B 521 PAGE 7DB8 287 PCHBI 7A0D 303 PEBUF 005D 260 522 525 PGMHL 0026 185 PH2 0039 212 PH3 003A 213 PH4 003B 214 PHDUP 0056 253 PHID 7DB9 288 PHIDM 7DBA 289 434 596 622 683 PIHDR 0002 135 PRINT 7DBB 290 PRPAR 0054 252 PRPNT 7C50 298 PRSW 0027 186 PTHDR 0006 137 PTPON 0040 236 PTSW 0028 187 PUT 7DBC 291 REST 7DBD 292 RP010 7A6F 565 552 578 RP015 7A7D 578 570 573 RPCHN 7A62 551 444 585 606 690 RPGSW 0035 200 RTURN 7DBE 293 538 611 674 692 SDBUF 005B 258 SIHDR 0004 136 SKWDS 0029 188 SLASH 7A41 498 453 STCSW 002A 189 STHDR FFF2 127 STSW 002B 190 T3MSW 002F 194 TEMP1 002C 191 TEMP2 002D 192 THIS 005E 261 600 604 TOWS 002E 193 UASW 0030 195 UCHDR 0000 134 WRTDC 7DB1 280 WSDC 21DE 271 WSSW 0031 196 XEQSW 0032 197