ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:06 2020 Source File: \jkkbface.asm KFACE- RESIDENT COMMA 2 AUG 67 2 | ABS J1100020 0005 3 | $CIBA EQU /5 ADDR OF CIB ON MASTER CARTRIDGE J1100030 0006 4 | $CH12 EQU /6 CHANNEL 12 INDR,NON-ZERO=CHAN 12 J1100040 0007 5 | $COMN EQU /7 WORD COUNT OF COMMON J1100050 000E 6 | $CORE EQU /E CORE SIZE,/1000=4K,/2000=8K,ETC) J1100060 000F 7 | $CTSW EQU /F MCR SW,NON-ZERO=// RECD TRAPPED J1100070 0010 8 | $DADR EQU /10 SCTR ADDR OF PROG TO BE FETCHED J1100080 0011 9 | $DABL EQU /11 IOCC FOR SCA RESET (ODD ADDR) J1100090 0012 10 | $DREQ EQU /12 INDR FOR REQUESTED V. DISK I/O J1100100 0013 11 | $IBSY EQU /13 PRINC I/O BUSY INDR,NON-ZERO=BSY J1100110 0014 12 | $HASH EQU /14 WORK AREA FOR MONITOR PROGRAMS J1100120 0028 13 | $PRET EQU /28 ADDR PREOPERATIVE ERROR TRAP J1100130 002C 14 | $IREQ EQU /2C ADDR OF INT REQUEST SUBROUTINE J1100140 002D 15 | $ULET EQU /2D ADDR OF LET, LOGICAL DRIVE 0 J1100150 0032 16 | $IOCT EQU /32 IOCS CTR,0=NO I/O IN PROGRESS J1100160 0033 17 | $LAST EQU /33 LAST CD INDR,NON-ZERO=LAST CARD J1100170 0034 18 | $NDUP EQU /34 INHIBIT DUP SW,NON-ZERO=NO DUP J1100180 0035 19 | $NXEQ EQU /35 INHIBIT EXEC SW,NON-ZERO=NO EXEQ J1100190 0036 20 | $PBSY EQU /36 PRINC PTR BUSY INDR,NON-ZERO=BSY J1100200 0037 21 | $PGCT EQU /37 PAGE NO. FOR PAGE HEADINGS J1100210 0038 22 | $EXIT EQU /38 ADDR CALL EXIT ENTRY POINT J1100220 0039 23 | $LINK EQU /39 ADDR CALL LINK ENTRY POINT J1100230 003F 24 | $DUMP EQU /3F ADDR OF CALL DUMP, ENTRY POINT J1100240 0077 25 | $DCDE EQU /77 DRIVE CODE FOR CORE LOAD BLDR J1100250 0078 26 | $PHSE EQU /78 NO. OF PHASE CURRENTLY IN CORE J1100260 0079 27 | $UFIO EQU /79 ARM POSITION IN UNFORMATTED AREA J1100270 007A 28 | $WSDR EQU /7A WORKING STORAGE DRIVE CODE J1100280 007B 29 | $WRD1 EQU /7B LOAD ADDR FOR CURR USER CORE LD J1100290 007C 30 | $KCSW EQU /7C INHIBIT INPUT/PRINT OVERLAP SW J1100300 007D 31 | $UFDR EQU /7D UNFORMATTED I/O DRIVE CODE J1100310 007E 32 | $CPTR EQU /7E CHANNEL 12 INDICATOR FOR CP J1100320 007F 33 | $1132 EQU /7F CHANNEL 12 INDICATOR FOR 1132 J1100330 0080 34 | $1403 EQU /80 CHANNEL 12 INDICATOR FOR 1403 J1100340 0081 35 | $PST1 EQU /81 ADDR POSTOP ERROR TRAP,LEVEL 1 J1100350 0085 36 | $PST2 EQU /85 ADDR POSTOP ERROR TRAP,LEVEL 2 J1100360 0089 37 | $PST3 EQU /89 ADDR POSTOP ERROR TRAP,LEVEL 3 J1100370 008D 38 | $PST4 EQU /8D ADDR POSTOP ERROR TRAP,LEVEL 4 J1100380 0091 39 | $STOP EQU /91 ADDR PROGRAM STOP KEY TRAP J1100390 0095 40 | $FPAD EQU /95 FILE PROTECT ADDR (ADJ),LOG DR 0 J1100400 009A 41 | $CYLN EQU /9A ARM POSITION FOR LOGICAL DRIVE 0 J1100410 009F 42 | $ACDE EQU /9F AREA CODE FOR LOGICAL DRIVE 0 J1100420 00A4 43 | $DCYL EQU /A4 1ST DEF CYL ADDR, LOGICAL DR 0 J1100430 00B3 44 | $I200 EQU /B3 ENTRY POINT TO ILS FOR LEVEL 2 J1100440 00B8 45 | $I205 EQU /B8 J1100450 00B9 46 | $IBT2 EQU $I205+1 ADDR OF IBT FOR LEVEL 2 J1100460 00C4 47 | $I400 EQU /C4 ENTRY POINT TO ILS FOR LEVEL 4 J1100470 00D3 48 | $I405 EQU /D3 J1100480 00D4 49 | $IBT4 EQU $I405+1 ADDR OF IBT FOR LEVEL 4 J1100490 00D5 50 | $I410 EQU /D5 J1100500 00EE 51 | $DBSY EQU /EE DISK BUSY INDR,NON-ZERO=DK BUSY J1100510 01CB 52 | $BYSW EQU /1CB BYPASS SW,NOP IF FETCHING SOCAL J1100520 00F2 53 | DZ000 EQU /0F2 DISKZ ENTRY POINT J1100530 01E0 54 | $ZEND EQU /1E0 ADDR 1+LAST WORD OF DISKZ J1100540 7FA0 56 | C EQU /7FA0 CATCO POINTER SET TO MIDDLE J1100560 57 | *************************************************** J1100570 58 | * * J1100580 59 | * INDEX REG 1 IS SET TO .C. WHEN CATCO IS FORMED * J1100590 60 | * FOR USE BY ALL OF DUP FUNCTIONS. ANY DUP ROUT * J1100600 61 | * USING XR 1 FOR OTHER REASONS MUST RESTORE. * J1100610 62 | * ALL VALUES IN CATCO HAVE LABELS EQUATED TO THE * J1100620 63 | * VALUE THAT INDICATES THEIR RELATIVE LOCATION * J1100630 64 | * FROM .C. * J1100640 65 | * * J1100650 66 | *************************************************** J1100660 67 | * * J1100670 68 | * CATCO DCOM IMAGE * J1100680 69 | * EQUIVALENCES USED TO REFERENCE CATCO WITH XR1 * J1100690 70 | * * J1100700 71 | *************************************************** J1100710 FF84 72 | #NAME EQU 4-/80 NAME OF PROGRAM J1100720 FF86 73 | #DBCT EQU 6-/80 DISK BLOCK COUNT OF PROGRAM J1100730 FF87 74 | #FCNT EQU 7-/80 FILES SW,ZERO = NO FILES J1100740 FF88 75 | #SYSC EQU 8-/80 NON-ZERO,SYSTEM CARTRIDGE J1100750 FF89 76 | #JBSW EQU 9-/80 JOB SW,NON-ZERO='T' MODE J1100760 FF8A 77 | #CBSW EQU 10-/80 CLB SW,NON-ZERO=STORECI J1100770 FF8B 78 | #LCNT EQU 11-/80 NO. OF LOCALS J1100780 FF8C 79 | #MPSW EQU 12-/80 NON-ZERO, CORE MAP DESIRED J1100790 FF8D 80 | #MDF1 EQU 13-/80 NO. OF DUP CTRL RCDS J1100800 FF8E 81 | #MDF2 EQU 14-/80 ADDR OF MODIF BUFFER J1100810 FF8F 82 | #NCNT EQU 15-/80 NO. OF NOCALS J1100820 FF90 83 | #ENTY EQU 16-/80 RELATIVE ENTRY ADDR OF PROG J1100830 FF91 84 | #RP67 EQU 17-/80 IF NON-ZERO,1442 MOD 6,7 J1100840 85 | * J1100850 86 | * NEGATIVE VALUE REPRESENTS DEFAULT CONDITION * J1100860 FF92 87 | #TODR EQU 18-/80 DR CODE OF 'TO' DRIVE J1100870 FF93 88 | #FRDR EQU 19-/80 DR CODE OF 'FROM' DRIVE J1100880 89 | * * J1100890 FF94 90 | #FHOL EQU 20-/80 ADDR OF LARGEST FXA HOLE J1100900 FF95 91 | #FSZE EQU 21-/80 BLK CNT LARGEST HOLE IN FXA J1100910 FF96 92 | #UHOL EQU 22-/80 ADDR OF LARGEST UA HOLE J1100920 FF97 93 | #USZE EQU 23-/80 BLK CNT LARGEST HOLE IN UA J1100930 FF98 94 | #DCSW EQU 24-/80 NON-ZERO=DUP CALL J1100940 FF99 95 | #PIOD EQU 25-/80 PRINC. I/O INDICATOR J1100950 FF9A 96 | #PPTR EQU 26-/80 PRINC. PRINTER INDICATOR J1100960 FF9B 97 | #CIAD EQU 27-/80 WD NO. SCTR 0,CIL ADDR J1100970 FF9C 98 | #ACIN EQU 28-/80 AVAILABLE CARTRIDGE INDR2-8 J1100980 FF9D 99 | #GRPH EQU 29-/80 2250 INDICATOR 2-8 J1100990 FF9E 100 | #GCNT EQU 30-/80 NO. G2250 RECORDS 2-8 J1101000 FF9F 101 | #LOSW EQU 31-/80 LOCAL-CALLS-LOCAL INDR 2-8 J1101010 FFA0 102 | #X3SW EQU 32-/80 SPECIAL ILS SWITCH 2-8 J1101020 FFA1 103 | #ECNT EQU 33-/80 NO. OF EQUAT RCDS 2-8 J1101030 FFA3 104 | #ANDU EQU 35-/80 END OF UA (ADJ) LOG DR 0-4 J1101040 FFA8 105 | #BNDU EQU 40-/80 END OF UA (BASE) LOG DR 0-4 J1101050 FFAD 106 | #FPAD EQU 45-/80 FILE PROTECT ADDR (BASE) J1101060 FFB2 107 | #PCID EQU 50-/80 CART ID, PHYS DR 0-4 J1101070 FFB7 108 | #CIDN EQU 55-/80 CART ID, LOG DR 0-4 J1101080 FFBC 109 | #CIBA EQU 60-/80 CIB ADDR, LOG DR 0-4 J1101090 FFC1 110 | #SCRA EQU 65-/80 SCRA, LOG DR 0-4 J1101100 FFC6 111 | #FMAT EQU 70-/80 WS FORMAT, LOG DR 0-4 J1101110 FFCB 112 | #FLET EQU 75-/80 FLET ADDR, LOG DR 0-4 J1101120 FFD0 113 | #ULET EQU 80-/80 LET ADDR, LOG DR 0-4 J1101130 FFD5 114 | #WSCT EQU 85-/80 WS BLK CNT, LOG DR 0-4 J1101140 FFDA 115 | #CSHN EQU 90-/80 CUSHION END SCTR ADDR, 0-4 J1101150 0001 116 | #DCOM EQU 1 SCTR ADDR OF DCOM J1101160 0007 117 | #HDNG EQU 7 SCTR WITH PAGE HEADING J1101170 0FB0 118 | @SBFR EQU /FB0 2-8 J1101180 CONCATENATED COMMON AREA (CATCO) 120 | *************************************************** J1101200 121 | * * J1101210 122 | * CATCO IOAR HDRS FOR DUP PHASES J1101220 123 | * * J1101230 124 | *************************************************** J1101240 FFF0 125 | ORG -/10 J1101250 FFF0 126 | DCHDR BSS 2 DUP CONTROL PH02 J1101260 FFF2 127 | STHDR BSS 2 STORE PH03 J1101270 FFF4 128 | FLHDR BSS 2 FILEQ PH04 J1101280 FFF6 129 | DMHDR BSS 2 DUMP PH05 J1101290 FFF8 130 | DLHDR BSS 2 DUMPLET PH06 J1101300 FFFA 131 | DTHDR BSS 2 DELETE PH07 J1101310 FFFC 132 | DFHDR BSS 2 DEFINE PH08 J1101320 FFFE 133 | DXHDR BSS 2 DUP EXIT PH09 J1101330 0000 134 | UCHDR BSS 2 DUP UPCOR PH13 J1101340 0002 135 | PIHDR BSS 2 PRINCIPAL I/O BLOCK PH14 J1101350 0004 136 | SIHDR BSS 2 PRINC I/O (W/O KB) BLK PH15 J1101360 0006 137 | PTHDR BSS 2 PAPER TAPE I/O BLOCK PH16 J1101370 0008 138 | CIHDR BSS 2 CI PHASE READ BY CL BUILDER J1101380 000A 139 | MUHDR BSS 2 MACRO UPDATE PH206 2-8 J1101390 000C 140 | D2HDR BSS 2 DUP CONTROL 2 PH205 2-8 J1101400 KFACE- CATCO DUP SWITCHES 142 | *************************************************** J1101420 143 | * J1101430 144 | * CATCO DUP SWITCHES * J1101440 145 | * WORDS USED FOR COMMUNICATION OF DATA J1101450 146 | * BETWEEN DUP ROUTINES. J1101460 147 | * * J1101470 148 | * INITIALIZED TO ZERO BY .REST. OF DUPCO * J1101480 149 | * J1101490 150 | *************************************************** J1101500 000E 151 | CL1 EQU * J1101510 000E 152 | ASMSW BSS 1 NON ZERO IF DEFINE VOID ASM J1101520 000F 153 | BITSW BSS 1 NON ZERO TO ALLOW MDUMP-S J1101530 0010 154 | BLKSW BSS 1 NON ZERO IF BYPASSING REC J1101540 0011 155 | CIERR BSS 1 ERROR NO DETECTED BY PH 17 J1101550 0012 156 | CISW BSS 1 NON ZERO IF STORE CI J1101560 0013 157 | CLBSW BSS 1 NON ZERO IF PRECI EXECUTED J1101570 0014 158 | CNTNO BSS 1 RECORD NO BEING PCHD OR RD J1101580 159 | * * J1101590 160 | * .DATSW. IS FILLED WITH THE CNT FIELD OF THE * J1101600 161 | * DUP CONTROL RECORD. * J1101610 162 | * USED PRIMARILY FOR DATA MOVEMENT, BUT ALSO IS * J1101620 163 | * USED FOR COUNT OF RECORDS TO READ AFTER A * J1101630 164 | * STORE CI DUP CONTROL RECORD. * J1101640 0015 165 | DATSW BSS 1 RECORDS VALUE IN CNT FIELD J1101650 0016 166 | DBADR BSS 1 DB ADDR OF REFERENCED PROG J1101660 0017 167 | DELSW BSS 1 ADDR OF REQ LET ENTRY - 1 J1101670 0018 168 | DFNSW BSS 1 NON ZERO IF DEFINE FXA J1101680 0019 169 | DKSAD BSS 1 DK SCTR ADDR W/O DR CODE J1101690 001A 170 | DUMPP BSS E 2 LAST LIMITS FOR PRNTR DUMP J1101700 001C 171 | FORSW BSS 1 NON ZERO IF DEFINE VOID FOR J1101710 001D 172 | FRWS BSS 1 NON ZERO IF FROM FLD IS WS J1101720 001E 173 | FXSW BSS 1 NON ZERO IF FIXED AREA REQD J1101730 001F 174 | HOLSW BSS 1 NON ZERO IF NO CONV REQD J1101740 0020 175 | IOSW BSS 1 NON ZERO IF IN/OUT REQD J1101750 176 | * * J1101760 177 | * DUMPLET SWITCH - ZERO IF NOT DUMPLET/DUMPFLET * J1101770 178 | * PLUS VALUE REQUIRES PRINT OF BOTH LET/FLET* J1101780 179 | * NEG. VALUE REQUIRES PRINT OF FLET ONLY * J1101790 0021 180 | LETSW BSS 1 NON ZERO,PRINT LET OR FLET* J1101800 0022 181 | LSTLF BSS 1 LAST LET/FLET SECT PROCESSD J1101810 0023 182 | MODSW BSS 1 NON ZERO IF STORE MOD FUNC J1101820 0024 183 | NAMSW BSS 1 NON ZERO IF NAME IN LET/F J1101830 0025 184 | NEGSW BSS 1 NON ZERO IF SHRINKING FXA J1101840 0026 185 | PGMHL BSS 1 WORD COUNT OF THE PROG HDR J1101850 0027 186 | PRSW BSS 1 NON ZERO IF PRINTING OUTPUT J1101860 0028 187 | PTSW BSS 1 NON ZERO IF PAPER TAPE REQD J1101870 0029 188 | SKWDS BSS 1 WDS TO SEARCH IN L/F SECT J1101880 002A 189 | STCSW BSS 1 NON ZERO IF STORE DATA CI J1101890 002B 190 | STSW BSS 1 NON ZERO IF STORE TYPE J1101900 002C 191 | TEMP1 BSS E 1 1ST WD OF BINEB OUTPUT J1101910 002D 192 | TEMP2 BSS 1 2ND WD OF BINEB OUTPUT J1101920 002E 193 | TOWS BSS 1 NON ZERO IF TO FIELD IS WS J1101930 002F 194 | T3MSW BSS 1 TYPE 3,4 SOCAL LEVEL CELL J1101940 0030 195 | UASW BSS 1 NON ZERO IF USER AREA REQD J1101950 0031 196 | WSSW BSS 1 NON ZERO IF WORK STG REQD J1101960 0032 197 | XEQSW BSS 1 NON ZERO IF NOT RET FR GET J1101970 0033 198 | EBCSW BSS 1 NON ZERO IF EBC DATA OP 2E2 J1101980 0034 199 | HDNSW BSS 1 NON ZERO IF NAME IN HDR 2-8 J1101990 0035 200 | RPGSW BSS 1 NON Z IF DEFINE VOID RPG2-8 J1102000 0036 201 | DFLSW BSS 1 NON ZERO IF *DFILE 2-8 J1102010 0037 202 | BSS 1 RESERVED FOR ADDITION 2-8 J1102020 0037 203 | CL2 EQU *-1 J1102030 KFACE- CATCO DUP SWITCHES 205 | *************************************************** J1102050 206 | * * J1102060 207 | * CATCO DUP SWITCHES * J1102070 208 | * INITIALIZED BY DCTL AND NOT RESET BY .REST. * J1102080 209 | * * J1102090 210 | *************************************************** J1102100 0038 211 | IOREQ BSS 1 MON-ZERO,AUX I/O SET REQ J1102110 0039 212 | PH2 BSS 1 NON-ZERO IF DCTL IN CORE J1102120 003A 213 | PH3 BSS 1 NON-ZERO IF STORE IN CORE J1102130 003B 214 | PH4 BSS 1 NON-ZERO IF DUMP IN CORE J1102140 215 | ************************************************2-8 J1102150 216 | * 2-8 J1102160 217 | * CATCO SWITCH INITIALIZED TO ZERO 2-8 J1102170 218 | * BY CCAT SUBR AND SET BY MACRO UPDATE PROGRAM2-8 J1102180 219 | * 2-8 J1102190 220 | ************************************************2-8 J1102200 003C 221 | DUPCR BSS 1 NON ZERO IF DUP CTRL RCD2-8 J1102210 222 | *************************************************** J1102220 223 | * * J1102230 224 | * CATCO DUP SWITCHES SET BY CCAT SUBR * J1102240 225 | * * J1102250 226 | *************************************************** J1102260 003D 227 | ADDR2 BSS 1 KB INTERRUPT ADDRESS J1102270 003E 228 | KBREQ BSS 1 CONTENTS OF LOC 13 J1102280 229 | * THE FOLLOWING SWITCH IS SET TO INDICATE THE J1102290 230 | * PRINCIPAL INPUT DEVICE J1102300 231 | * - IS PAPER TAPE J1102310 232 | * 0 IS CARD J1102320 233 | * + IS KEYBOARD J1102330 003F 234 | INOUT BSS 1 PRINCIPAL INPUT SWITCH J1102340 235 | * J1102350 0040 236 | PTPON BSS 1 NON-ZERO IF PAPER TP ON SYS J1102360 237 | *************************************************** J1102370 238 | * * J1102380 239 | * LEVEL 4 INTERRUPT BRANCH TABLE * J1102390 240 | * ADDRESSES. INITIALIZED BY CCAT, * J1102400 241 | * AND CARD/PAPER TAPE INTERFACES. * J1102410 242 | * * J1102420 243 | *************************************************** J1102430 0049 244 | ORG /0049 J1102440 0049 245 | IBT BSS 9 9 WD INTRPT BRANCH TABLE J1102450 246 | *************************************************** J1102460 247 | * * J1102470 248 | * CATCO I/O ADDRESSES REQUIRED BY DUP * J1102480 249 | * * J1102490 250 | *************************************************** J1102500 0052 251 | P1442 BSS E 2 SYS 1442 IOAR HEADER J1102510 0054 252 | PRPAR BSS 2 DEFAULT LIMITS TO PRINT J1102520 0056 253 | PHDUP BSS 1 LAST DUP PHASE IN CORE J1102530 0057 254 | CRBUF BSS 1 81 WD BFR FOR DUP CTRL RCDS J1102540 0058 255 | DCADR BSS 1 ADDR FOR DUP CTRL IOAR HDR J1102550 0059 256 | HDBUF BSS 1 ADDR OF PAGE HEADING BFR J1102560 005A 257 | IOBLK BSS 1 ADDR OF DUP I/O PHASE J1102570 005B 258 | SDBUF BSS 1 STORE/DUMP BUFFER J1102580 005C 259 | LETAR BSS 1 ADDR OF LET SEARCH BUFFER J1102590 005D 260 | PEBUF BSS 1 41 WD BFR FOR PACKED EBCDIC J1102600 005E 261 | THIS BSS 1 ADDR OF DOUBLE BFR, BFR 1 J1102610 005F 262 | NEXT BSS 1 ADDR OF DOUBLE BFR, BFR 2 J1102620 00F2 264 | DISKZ EQU DZ000 DISKZ ENTRY POINT J1102640 01DE 265 | B EQU $ZEND-2 J1102650 01DE 266 | DMPLC EQU B IOAR CORE ADDR FOR DMPLT J1102660 01DE 267 | EXITC EQU B IOAR CORE ADDR FOR DEXIT J1102670 01DE 268 | MUPC EQU B IOAR CORE ADDR FOR MUP 2-8 J1102680 11E0 269 | DCTL EQU B+/1002 ENTRY ADDRESS OF DCTL J1102690 11DE 270 | DCTLC EQU B+/1000 IOAR CORE ADDR FOR DCTL J1102700 21DE 271 | WSDC EQU B+/2000 IOAR CORE ADDR FOR STORE J1102710 41DE 272 | DUMPC EQU B+/4000 IOAR CORE ADDR FOR DDUMP J1102720 7DB0 273 | DUPCO EQU /7DB0 ADDR OF RESIDENT DUPCO J1102730 7F1E 274 | CATCO EQU /7F20-2 ADDR OF DCOM IOAR HEADER J1102740 275 | * * J1102750 276 | * DUPCO ENTRY POINTS...USED WITH INDIRECT BSI * J1102760 277 | * * J1102770 7DB0 278 | ORG DUPCO J1102780 7DB0 279 | BINEB BSS 1 CONVERSION BINARY TO EBCDIC J1102790 7DB1 280 | WRTDC BSS 1 WRITE DCOM(S) SUBROUTINE J1102800 7DB2 281 | ENTER BSS 1 SAVE XR-S AND CONDITIONS J1102810 7DB3 282 | GET BSS 1 READ FROM DISK USING DISKZ J1102820 7DB4 283 | LEAVE BSS 1 HANDLES ALL EXITS FROM DUP J1102830 7DB5 284 | LINE BSS 1 SPACES PRINTER 1 LINE J1102840 7DB6 285 | MASK BSS 1 INHIBITS KB INT REQUEST J1102850 7DB7 286 | MDUMP BSS 1 PRINTS SELECTED CORE LOC-S J1102860 7DB8 287 | PAGE BSS 1 SKIPS TO NEXT PAGE J1102870 7DB9 288 | PHID BSS 1 RECORDS PHASE ID J1102880 7DBA 289 | PHIDM BSS 1 RECORDS PHASE AND MODIFIER J1102890 7DBB 290 | PRINT BSS 1 USE SYS PR SUBR TO PRINT J1102900 7DBC 291 | PUT BSS 1 WRITES TO DISK USING DISKZ J1102910 7DBD 292 | REST BSS 1 RESTORE CATCO,GO TO DCTL J1102920 7DBE 293 | RTURN BSS 1 RESTORE XR-S AND CONDITIONS J1102930 294 | * * J1102940 295 | * INPUT/OUTPUT PARAMETERS , CORE ADDRESSES * J1102950 296 | * * J1102960 7D91 297 | BUF6 EQU DUPCO-/1F ADDR OF PAGE HEADING BUFFER J1102970 7C50 298 | PRPNT EQU BUF6-/141 IOAR ADDR FOR PRINC. PTR J1102980 7A06 299 | IOADR EQU BUF6-/38B START OF I/O INTERFACE J1102990 7A0A 300 | GETHO EQU IOADR+4 ENTRY FOR READING HOLL TYPE J1103000 7A0B 301 | GETBI EQU IOADR+5 ENTRY FOR READING BINARY J1103010 7A0C 302 | PACKB EQU IOADR+6 ENTRY TO PACK BINARY J1103020 7A0D 303 | PCHBI EQU IOADR+7 ENTRY TO PUNCH BINARY J1103030 79B5 304 | BUF1 EQU IOADR-/51 ADDR OF NEXT BUFFER J1103040 7963 305 | BUF2 EQU BUF1-/52 ADDR OF THIS BUFFER J1103050 7925 306 | BUF3 EQU BUF2-/3E ADDR OF PACKED EBC BUFFER J1103060 78D3 307 | BUF4 EQU BUF3-/52 ADDR OF CONTROL RCD BUFFER J1103070 7782 308 | BUF5 EQU IOADR-/284 ADDR OF LET SCTR BFR J1103080 0640 309 | BUF7 EQU BUF5-/7142 ADDR OF STORE/DUMP BFR J1103090 KFACE DUP KEYBOARD INTERFACE 311 | *************************************************** J1103110 312 | * * J1103120 313 | *STATUS - VERSION 2, MODIFICATION 8 * J1103130 314 | * * J1103140 315 | *FUNCTION/OPERATION- * J1103150 316 | * *KFACE SERVES AS THE I/O INTERFACE FOR DUP * J1103160 317 | * WHEN THE PRINCIPAL I/O DEVICE IS THE KEYBOARD* J1103170 318 | * IT INPUTS UP TO 80 CHARACTERS FROM THE TYPE- * J1103180 319 | * WRITER AND CONVERTS FROM UNPACKED TO PACKED * J1103190 320 | * EBCDIC. CONDITIONS AND REGISTERS ARE SAVED. * J1103200 321 | * * J1103210 322 | *ENTRY POINTS- * J1103220 323 | * *KFACE HAS ONE ENTRY POINT, IK000, WHICH MAY * J1103230 324 | * BE REFERENCED BY BSI I GETHO. * J1103240 325 | * * J1103250 326 | *INPUT-N/A * J1103260 327 | * * J1103270 328 | *OUTPUT- * J1103280 329 | * *CRBUF- 81 WORDS. THE FIRST WORD WILL CONTAIN * J1103290 330 | * A WORD COUNT OF 80 FOLLOWED BY 80 WORDS OF * J1103300 331 | * UNPACKED EBCDIC. * J1103310 332 | * * J1103320 333 | * *PEBUF- 41 WORDS. THE FIRST WORD WILL CONTAIN * J1103330 334 | * A WORD COUNT OF 40 FOLLOWED BY 40 WORDS OF * J1103340 335 | * PACKED EBCDIC. * J1103350 336 | * * J1103360 337 | *EXTERNAL REFERENCES- * J1103370 338 | * *THE FOLLOWING REFERENCES ARE MADE TO CATCO * J1103380 339 | * *IOADR * J1103390 340 | * *CRBUF * J1103400 341 | * *PEBUF * J1103410 342 | *EXTERNAL ROUTINES- * J1103420 343 | * *KBSYS- ISS USED TO INPUT FROM THE TYPEWRITER.* J1103430 344 | * *ENTER- IN DPCO- USED TO SAVE REGISTERS. * J1103440 345 | * *RTURN- IN DPCO- USED TO RESTORE REGISTERS. * J1103450 346 | * * J1103460 347 | *EXITS- * J1103470 348 | * *NORMAL- A BSC I IK000 IS EXECUTED TO RETURN* J1103480 349 | * TO DCTL * J1103490 350 | * * J1103500 351 | * *ERROR- NONE OTHER THAN THOSE OF KBSYS * J1103510 352 | * * J1103520 353 | *TABLES/WORK AREAS-N/A * J1103530 354 | * * J1103540 355 | *ATTRIBUTES- * J1103550 356 | * *ABSOLUTE. KFACE IS ASSEMBLED AT SYMBOLIC * J1103560 357 | * LOCATION .IOADR., IT IS BROUGHT INTO CORE BY * J1103570 358 | * THE CCAT MODULE OF DUPCO AND IS THEN RESIDENT* J1103580 359 | * AS LONG AS DUP MAINTAINS CONTROL. * J1103590 360 | * * J1103600 361 | *NOTES- * J1103610 362 | * *KFACE HAS NO WAITS * J1103620 363 | * * J1103630 364 | *************************************************** J1103640 KFACE DUP KEYBOARD INTERFACE 7A06 366 | ORG IOADR J1103660 7A06 0000 367 | DC *-* WD. CNT. SET BY SYSTEM LDR J1103670 7A07 000B 368 | DC 11 PHASE ID FOR KFACE J1103680 7A08 0000 369 | DC *-* ADDR OF SYSTEM I/O SUBR J1103690 7A09 0000 370 | DC *-* ADDR OF SYSTEM CONVERSION J1103700 371 | * J1103710 372 | ************************************************** J1103720 373 | * THE FOLLOWING 5 WORDS ARE ADDRESSES OF THE I/O J1103730 374 | * INTERFACE ENTRY POINTS -- GETHO IS THE ONLY J1103740 375 | * LEGAL ENTRY J1103750 376 | ************************************************** J1103760 377 | * J1103770 7A0A 7A0E 378 | DC IK000 ENTRY FOR GETHO J1103780 7A0B 0000 379 | DC *-* DUMMY ENTRY J1103790 7A0C 0000 380 | DC *-* DUMMY ENTRY J1103800 7A0D 0000 381 | DC *-* DUMMY ENTRY J1103810 382 | * J1103820 383 | * J1103830 7A0E 0000 384 | IK000 DC *-* GETHO ENTRY J1103840 7A0F 4480 7DBA 385 | BSI I PHIDM MODIFY PHASE ID J1103850 7A11 0A00 386 | DC /0A00 KEYBOARD INPUT MODIFIER J1103860 7A12 4480 7DB2 387 | BSI I ENTER SAVE REGISTERS J1103870 388 | * J1103880 7A14 C026 389 | LD IK080 SET WORD COUNT OF 80 J1103890 7A15 D580 0057 390 | STO I1 CRBUF *FOR KBSYS J1103900 391 | * J1103910 7A17 C022 392 | LD IK040 SET WORD COUNT OF 40 J1103920 393 | * INPUT CONTROL RECORD VIA TYPEWRITER J1103930 394 | * J1103940 7A18 D580 005D 395 | STO I1 PEBUF *INTO PACKED BUFFER J1103950 396 | * J1103960 7A1A C15D 397 | LD 1 PEBUF FETCH ADDRESS OF THE PACKED J1103970 7A1B D00E 398 | STO IK020 *BUFFER J1103980 399 | * J1103990 7A1C C157 400 | LD 1 CRBUF FETCH ADDRESS OF THE INPUT J1104000 7A1D D00A 401 | STO IK010 *BUFFER, SAVE IT, SET EXT J1104010 7A1E 18D0 402 | RTE 16 *WITH ADDR OF WORD COUNT J1104020 7A1F C01C 403 | LD I7002 FETCH FUNCTION CODE (7002) J1104030 7A20 4480 7A08 404 | BSI I IK000-6 INPUT CONTROL RECORD J1104040 7A22 C400 0013 405 | LD L $IBSY J1104050 7A24 4C20 7A22 406 | BSC L *-4,Z WAIT FOR READ COMPLETE J1104060 407 | * J1104070 7A26 6328 408 | LDX 3 40 LOOP WORD COUNT J1104080 7A27 6500 0000 409 | LDX L1 *-* SET WITH ADDR IN CRBUF J1104090 7A28 410 | IK010 EQU *-1 J1104100 7A29 6600 0000 411 | LDX L2 *-* SET WITH ADDR IN PEBUF J1104110 7A2A 412 | IK020 EQU *-1 J1104120 7A2B 7101 413 | MDX 1 1 POINT TO 2ND WORD IN CRBUF J1104130 7A2C 7201 414 | MDX 2 1 POINT TO 2ND WORD IN PEBUF J1104140 415 | * J1104150 416 | * CONVERT UNPACKED EBCDIC IN CRBUF TO PACKED J1104160 417 | * EBCDIC IN PEBUF J1104170 418 | * J1104180 7A2D C101 419 | IK030 LD 1 1 PACK TWO J1104190 7A2E 1888 420 | SRT 8 *CHARACTERS J1104200 7A2F C100 421 | LD 1 0 *INTO ONE WORD J1104210 7A30 1088 422 | SLT 8 J1104220 7A31 D200 423 | STO 2 0 J1104230 7A32 7102 424 | MDX 1 2 J1104240 7A33 7201 425 | MDX 2 1 J1104250 7A34 73FF 426 | MDX 3 -1 SKIP IF 80 WDS PACKED TO 40 J1104260 7A35 70F7 427 | MDX IK030 *BRANCH OTHERWISE J1104270 428 | * J1104280 7A36 4480 7DBE 429 | BSI I RTURN RESTORE REGISTERS J1104290 7A38 4C80 7A0E 430 | BSC I IK000 RETURN TO DCTL J1104300 431 | * J1104310 432 | ************************************************** J1104320 433 | * J1104330 434 | * CONSTANTS J1104340 435 | * J1104350 436 | ************************************************** J1104360 437 | * J1104370 7A3A 0028 438 | IK040 DC 40 WD CNT -1 OF PEBUF J1104380 7A3B 0050 439 | IK080 DC 80 WD CNT -1 OF CRBUF J1104390 7A3C 7002 440 | I7002 DC /7002 FUNCTION CODE FOR KBSYS J1104400 441 | * J1104410 442 | ************************************************** J1104420 443 | ************************************************** J1104430 7A3D 444 | END IK000 J1104440 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 405 $IBT2 00B9 46 $IBT4 00D4 49 $IOCT 0032 16 $IREQ 002C 14 $KCSW 007C 30 $LAST 0033 17 $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 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 CATCO 7F1E 274 CIERR 0011 155 CIHDR 0008 138 CISW 0012 156 CL1 000E 151 CL2 0037 203 CLBSW 0013 157 CNTNO 0014 158 CRBUF 0057 254 390 400 D2HDR 000C 140 DATSW 0015 165 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 ENTER 7DB2 281 387 EXITC 01DE 267 FLHDR FFF4 128 FORSW 001C 171 FRWS 001D 172 FXSW 001E 173 GET 7DB3 282 GETBI 7A0B 301 GETHO 7A0A 300 HDBUF 0059 256 HDNSW 0034 199 HOLSW 001F 174 I7002 7A3C 440 403 IBT 0049 245 IK000 7A0E 384 378 404 430 444 IK010 7A28 410 401 IK020 7A2A 412 398 IK030 7A2D 419 427 IK040 7A3A 438 392 IK080 7A3B 439 389 INOUT 003F 234 IOADR 7A06 299 300 301 302 303 304 308 366 IOBLK 005A 257 IOREQ 0038 211 IOSW 0020 175 KBREQ 003E 228 LEAVE 7DB4 283 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 P1442 0052 251 PACKB 7A0C 302 PAGE 7DB8 287 PCHBI 7A0D 303 PEBUF 005D 260 395 397 PGMHL 0026 185 PH2 0039 212 PH3 003A 213 PH4 003B 214 PHDUP 0056 253 PHID 7DB9 288 PHIDM 7DBA 289 385 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 RPGSW 0035 200 RTURN 7DBE 293 429 SDBUF 005B 258 SIHDR 0004 136 SKWDS 0029 188 STCSW 002A 189 STHDR FFF2 127 STSW 002B 190 T3MSW 002F 194 TEMP1 002C 191 TEMP2 002D 192 THIS 005E 261 TOWS 002E 193 UASW 0030 195 UCHDR 0000 134 WRTDC 7DB1 280 WSDC 21DE 271 WSSW 0031 196 XEQSW 0032 197