ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:10 2020
Source File: \u6ident.asm
PRINT CARTRIDGE ID- IDENT
2 | *************************************************** U6F00020
3 | * TITLE- PRINT CARTRIDGE ID IDENT * U6F00030
4 | * * U6F00040
5 | * STATUS - VERSION 2, MODIFICATION LEVEL 11 * U6F00050
6 | * * U6F00060
7 | * FUNCTION/OPERATION- * U6F00070
8 | * READ DCOM OF THE SYSTEMS CARTRIDGE, PRINT * U6F00080
9 | * THE PHYSICAL DRIVE NUMBER AND CARTRIDGE ID * U6F00090
10 | * OF EACH AVAILABLE CARTRIDGE. * U6F00100
11 | * ENTRY POINTS- * U6F00110
12 | * IT000-BEGINNING OF ROUTINE * U6F00120
13 | * * U6F00130
14 | * INPUT- * U6F00140
15 | * DCOM OF SYSTEMS CARTRIDGE * U6F00150
16 | * * U6F00160
17 | * OUTPUT- * U6F00170
18 | * CARTRIDGE IDS AND PHYSICAL DRIVE NUMBER ON * U6F00180
19 | * PRINCIPAL PRINT DEVICE * U6F00190
20 | * * U6F00200
21 | * EXTERNAL REFERENCES- * U6F00210
22 | * SUBROUTINES- * U6F00220
23 | * * CALPR- PRINT USING PRINCIPAL PRINT DEVC * U6F00230
24 | * * U6F00240
25 | * COMMA/DCOM- * U6F00250
26 | * * D2000-DISK READ * U6F00260
27 | * * DZBSY-DISK BUSY * U6F00270
28 | * * #PCID-TABLE OF CARTRIDGE IDS * U6F00280
29 | * * U6F00290
30 | * EXITS * U6F00300
31 | * NORMAL- CALL EXIT * U6F00310
32 | * ERROR- N/A * U6F00320
33 | * * U6F00330
34 | * TABLES/WORK AREAS- * U6F00340
35 | * IT900-WORK AREA FOR NUMBER CONVERSION * U6F00350
36 | * * U6F00360
37 | * ATTRIBUTES- * U6F00370
38 | * RELOCATABLE * U6F00380
39 | * * U6F00390
40 | * NOTES- * U6F00400
41 | * N/A * U6F00410
42 | *************************************************** U6F00420
IDENT- SYSTEM EQUATES
0005 44 | $CIBA EQU /5 ADDR OF CIB ON MASTER CARTRIDGE U6F00440
0006 45 | $CH12 EQU /6 CHANNEL 12 INDR,NON-ZERO=CHAN 12 U6F00450
0007 46 | $COMN EQU /7 WORD COUNT OF COMMON U6F00460
000A 47 | $LEV2 EQU /000A LEV.2 HARDWARE INT ADDR2-11 U6F00465
000E 48 | $CORE EQU /E CORE SIZE,/1000=4K,/2000=8K,ETC) U6F00470
000F 49 | $CTSW EQU /F MCR SW,NON-ZERO=// RECD TRAPPED U6F00480
0010 50 | $DADR EQU /10 SCTR ADDR OF PROG TO BE FETCHED U6F00490
0011 51 | $DABL EQU /11 IOCC FOR SCA RESET (ODD ADDR) U6F00500
0012 52 | $DREQ EQU /12 INDR FOR REQUESTED V. DISK I/O U6F00510
0013 53 | $IBSY EQU /13 PRINC I/O BUSY INDR,NON-ZERO=BSY U6F00520
0014 54 | $HASH EQU /14 WORK AREA FOR MONITOR PROGRAMS U6F00530
0014 55 | $LKNM EQU $HASH SYSTEM WORK AREA U6F00540
0016 56 | $RMSW EQU $HASH+2 EXIT-LINK-DUMP SWITCH -1,0,+1 U6F00550
0017 57 | $CXR1 EQU $HASH+3 CONTENTS OF XR1 ($DUMP ENTRY) U6F00560
0018 58 | $CLSW EQU $HASH+4 CIL SW,-1=FETCH DISK I/O ONLY U6F00570
0019 59 | $DMPF EQU $HASH+5 DUMP FORMAT ($DUMP ENTRY) U6F00580
001A 60 | $ACEX EQU $HASH+6 ACC,EXT ($DUMP ENTRY) U6F00590
0028 61 | $PRET EQU /28 ADDR PREOPERATIVE ERROR TRAP U6F00600
002C 62 | $IREQ EQU /2C ADDR OF INT REQUEST SUBROUTINE U6F00610
002D 63 | $ULET EQU /2D ADDR OF LET, LOGICAL DRIVE 0 U6F00620
0032 64 | $IOCT EQU /32 IOCS CTR,0=NO I/O IN PROGRESS U6F00630
0033 65 | $LAST EQU /33 LAST CD INDR,NON-ZERO=LAST CARD U6F00640
0034 66 | $NDUP EQU /34 INHIBIT DUP SW,NON-ZERO=NO DUP U6F00650
0035 67 | $NXEQ EQU /35 INHIBIT EXEC SW,NON-ZERO=NO EXEQ U6F00660
0036 68 | $PBSY EQU /36 PRINC PTR BUSY INDR,NON-ZERO=BSY U6F00670
0037 69 | $PGCT EQU /37 PAGE NO. FOR PAGE HEADINGS U6F00680
0038 70 | $EXIT EQU /38 ADDR CALL EXIT ENTRY POINT U6F00690
0039 71 | $LINK EQU /39 ADDR CALL LINK ENTRY POINT U6F00700
003C 72 | $S900 EQU /3C U6F00710
003E 73 | $S910 EQU /3E U6F00720
003F 74 | $DUMP EQU /3F ADDR CALL DUMP ENTRY POINT U6F00730
004D 75 | $S000 EQU /4D U6F00740
004E 76 | $S100 EQU /4E U6F00750
0059 77 | $S150 EQU /59 U6F00760
005A 78 | $CILA EQU $S150+1 ADDR OF END OF DK I/O - 3 U6F00770
0076 79 | $DZ1N EQU /76 DISKZ/1/N INDICATOR (-1,0,+1) U6F00780
0077 80 | $DCDE EQU /77 DRIVE CODE FOR CORE LOAD BLDR U6F00790
0078 81 | $PHSE EQU /78 NO. OF PHASE CURRENTLY IN CORE U6F00800
0079 82 | $UFIO EQU /79 ARM POSITION IN UNFORMATTED AREA U6F00810
007A 83 | $WSDR EQU /7A WORKING STORAGE DRIVE CODE U6F00820
007B 84 | $WRD1 EQU /7B LOAD ADDR FOR CURR USER CORE LD U6F00830
007C 85 | $KCSW EQU /7C INHIBIT INPUT/PRINT OVERLAP SW U6F00840
007D 86 | $UFDR EQU /7D UNFORMATTED I/O DRIVE CODE U6F00850
007E 87 | $CPTR EQU /7E CHANNEL 12 INDICATOR FOR CP U6F00860
007F 88 | $1132 EQU /7F CHANNEL 12 INDICATOR FOR 1132 U6F00870
0080 89 | $1403 EQU /80 CHANNEL 12 INDICATOR FOR 1403 U6F00880
0081 90 | $PST1 EQU /81 ADDR POSTOP ERROR TRAP,LEVEL 1 U6F00890
0085 91 | $PST2 EQU /85 ADDR POSTOP ERROR TRAP,LEVEL 2 U6F00900
0089 92 | $PST3 EQU /89 ADDR POSTOP ERROR TRAP,LEVEL 3 U6F00910
008D 93 | $PST4 EQU /8D ADDR POSTOP ERROR TRAP,LEVEL 4 U6F00920
0091 94 | $STOP EQU /91 ADDR PROGRAM STOP KEY TRAP U6F00930
0095 95 | $FPAD EQU /95 FILE PROTECT ADDR (ADJ),LOG DR 0 U6F00940
009A 96 | $CYLN EQU /9A ARM POSITION FOR LOGICAL DRIVE 0 U6F00950
009F 97 | $ACDE EQU /9F AREA CODE FOR LOGICAL DRIVE 0 U6F00960
00A4 98 | $DCYL EQU /A4 1ST DEF CYL ADDR, LOGICAL DR 0 U6F00970
00B3 99 | $I200 EQU /B3 ENTRY POINT TO ILS FOR LEVEL 2 U6F00980
00B8 100 | $I205 EQU /B8 U6F00990
00B9 101 | $IBT2 EQU $I205+1 ADDR OF IBT FOR LEVEL 2 U6F01000
00BA 102 | $I210 EQU /BA U6F01010
00C2 103 | $I290 EQU /C2 U6F01020
00C4 104 | $I400 EQU /C4 ENTRY POINT TO ILS FOR LEVEL 4 U6F01030
00CF 105 | $I403 EQU /CF U6F01040
00D3 106 | $I405 EQU /D3 U6F01050
00D4 107 | $IBT4 EQU $I405+1 ADDR OF IBT FOR LEVEL 4 U6F01060
00D6 108 | $I410 EQU /D6 U6F01070
00DE 109 | $I415 EQU /DE U6F01080
00E8 110 | $I490 EQU /E8 U6F01090
00E9 111 | $I491 EQU /E9 U6F01100
00EA 112 | $I492 EQU /EA U6F01110
00EC 113 | $I494 EQU /EC U6F01120
00ED 114 | $I495 EQU /ED U6F01130
00EE 115 | $DBSY EQU /EE DISK BUSY INDR,NON-ZERO=DK BUSY U6F01140
00EF 116 | $SNLT EQU $DBSY+1 SENSE LIGHT INDICATOR U6F01150
01CB 117 | $BYSW EQU /1CB BYPASS SW,NOP IF FETCHING SOCAL U6F01160
00F2 118 | DZ000 EQU /0F2 DISKZ ENTRY POINT U6F01170
00F0 119 | $PAUS EQU DZ000-2 PAUSE INTERRUPT INDICATOR U6F01180
00F1 120 | $RWCZ EQU DZ000-1 READ/WRITE SWITCH (CARDZ) U6F01190
01E0 121 | $ZEND EQU /1E0 ADDR 1+LAST WORD OF DISKZ U6F01200
0258 122 | $1END EQU 600 ADDR 1+LAST WORD OF DISK1 U6F01210
0370 123 | $NEND EQU /370 ADDR OF END OF DISKN + 1 U6F01220
0000 124 | #IDAD EQU /0000 SECT ADDR OF CART ID 2-11 U6F01225
IDENT- PRINT CARTRIDGE IDS
126 | * DETERMINE WHICH DRIVES HAVE CARTRIDGES MOUNTED U6F01240
127 | * AND READY, AND SAVE THEIR IDS IN PHYSICAL DRIVE U6F01250
128 | * ORDER. U6F01260
0000 4400 009CR 130 | IT000 BSI L IT200 2-11 U6F01280
132 | * PRINT HEADING ON PRINCIPAL PRINT DEVICE U6F01300
0002 0305*35D9 134 | CALL CALPR PRINT HEADING U6F01320
0004 004DR 135 | DC IT920 ADDR OF PRINT LINE U6F01330
0005 0000 136 | DC 0 U6F01340
0006 0305*35D9 137 | CALL CALPR U6F01350
0008 0061R 138 | DC IT930 ADDR OF NEXT PRINT LINE U6F01360
0009 0001 139 | DC 1 U6F01370
141 | * FETCH CARTRIDGE READY INDICATOR. IF NOT ZERO U6F01390
142 | * FETCH CARTRIDGE ID. CONVERT TO EBCDIC, AND STORE U6F01400
143 | * IN PRINT BUFFER. U6F01410
000A 61F5 145 | LDX 1 -11 XR1 = MAX.NO. OF DRIVES2-11 U6F01430
000B 6600 0022R 146 | LDX L2 IT902 XR2 = ADDR OF AVAIL IND2-11 U6F01440
000D CA00 147 | IT010 LDD 2 0 FETCH AVAIL CART IND 2-11 U6F01450
000E 4C18 001ER 148 | BSC L IT015,+- BR IF CART NOT AVAIL ON U6F01460
149 | * *DRIVE NOW BEING PROCESSED U6F01470
0010 D831 150 | STD IT910+9 *OTHERWISE SAVE PHY DR 2-11 U6F01480
151 | * *NO. IN PRINT AREA 2-11 U6F01490
0011 C500 00F7R 152 | LD L1 IT904+11 FETCH DR N CART ID 2-11 U6F01500
0013 4400 0075R 153 | BSI L IT100 *AND GO CONVERT IT TO 2-11 U6F01510
154 | * *EBCDIC AND STORE IN 2-11 U6F01520
155 | * *PRINT AREA 2-11 U6F01530
157 | * PRINT PHYSICAL DRIVE NO. AND CARTRIDGE ID ON U6F01550
158 | * PRINCIPAL PRINT DEVICE U6F01560
0015 0305*35D9 160 | CALL CALPR PRINT ID AND PHY.DR.NO. U6F01580
0017 0039R 161 | DC IT910 ADDRESS OF PRINT LINE U6F01590
0018 0001 162 | DC 1 NO. OF LINES U6F01600
0019 C032 164 | LD IT914 BLANK U6F01620
001A D027 165 | STO IT910+9 *PHYSICAL DR NO. 2-11 U6F01630
001B D027 166 | STO IT910+10 *PHYSICAL DR NO. 2-11 U6F01640
001C D02C 167 | STO IT910+16 *AND CART. ID U6F01650
001D D02C 168 | STO IT910+17 *AND CART. ID U6F01660
001E 7202 169 | IT015 MDX 2 2 INCRE CART AVAIL PNTR 2-11 U6F01670
001F 7101 170 | MDX 1 1 DECRE CNT SKIP IF ZERO 2-11 U6F01680
0020 70EC 171 | MDX IT010 GET NEXT ID U6F01690
0021 6038 173 | EXIT E-O-J U6F01710
175 | *************************************************** U6F01730
176 | * CONSTANTS, WORKAREA, AND PRINT LINES * U6F01740
177 | *************************************************** U6F01750
0022 179 | BSS E 0 ASSURE EVEN BOUNDARY U6F01770
0022 F0F0 F0F0 F0F0 F0F1 180 | IT902 EBC .000000010002000300040005. U6F01780
F0F0 F0F2 F0F0 F0F3 |
F0F0 F0F4 F0F0 F0F5 |
002E F0F0 F0F6 F0F0 F0F7 181 | EBC .00060007000800090010. U6F01790
F0F0 F0F8 F0F0 F0F9 |
F0F0 F1F0 |
0038 182 | BSS E 1 ASSURE ODD BOUNDARY U6F01800
0039 0013 183 | IT910 DC IT914-IT910 WORD COUNT U6F01810
003A 4040 4040 4040 4040 184 | EBC . . U6F01820
4040 4040 4040 4040 |
4040 4040 4040 4040 |
4040 4040 4040 4040 |
4040 4040 |
004C 4040 185 | IT914 DC /4040 EBCDIC BLANKS U6F01830
004D 0013 186 | IT920 DC IT925-IT920 WORD COUNT U6F01840
004E D7C1 C7C5 4040 4040 187 | EBC .PAGE . U6F01850
4040 4040 4040 4040 |
4040 4040 4040 4040 |
4040 4040 4040 4040 |
4040 4040 |
0060 4040 188 | IT925 DC /4040 U6F01860
0061 0013 189 | IT930 DC IT935-IT930 WORD COUNT U6F01870
0062 4040 4040 4040 4040 190 | EBC . PHYSICAL DRIVE CART ID. U6F01880
4040 D7C8 E8E2 C9C3 |
C1D3 40C4 D9C9 E5C5 |
4040 4040 C3C1 D9E3 |
40C9 C440 |
0074 4040 191 | IT935 DC /4040 U6F01890
193 | *************************************************** U6F01910
194 | * THIS SUBROUTINE CONVERTS A 16 BIT BINARY NUMBER * U6F01920
195 | * TO FOUR EBCDIC VALUES THAT ARE THE EQUIVALENT * U6F01930
196 | * IN HEX. * U6F01940
197 | * INPUT - 16 BIT BINARY NUMBER IN ACCUMULATOR * U6F01950
198 | * OUTPUT - FOUR EBCDIC VALUES PACKED TWO PER * U6F01960
199 | * WORD AND STORED IN THE PRINT BUFFER. * U6F01970
200 | * * U6F01980
201 | * XR1 AND XR2 ARE SAVED AND RESTORED * U6F01990
202 | *************************************************** U6F02000
0075 0000 204 | IT100 DC *-* ENTRY POINT/RETURN ADDR2-11 U6F02020
0076 1890 206 | SRT 16 NUMBER TO EXT 2-11 U6F02040
0077 6918 207 | STX 1 IT190+1 SAVE XR1 2-11 U6F02050
0078 6A19 208 | STX 2 IT190+3 SAVE XR2 2-11 U6F02060
0079 61FE 209 | LDX 1 -2 SET OUTPUT WORD COUNT 2-11 U6F02070
007A 62FE 211 | IT120 LDX 2 -2 SET CHAR PER WORD CNT 2-11 U6F02090
007B D01E 212 | STO IT183 STORE TEMPORARILY 2-11 U6F02100
007C 1810 213 | SRA 16 CLEAR ACC TO ZERO 2-11 U6F02110
007D 1084 214 | SLT 4 GET 4 BITS TO CONVT 2-11 U6F02120
007E 9018 215 | S IT180 SUB 9 TO CHK 0-9 OR A-F2-11 U6F02130
007F 4808 216 | BSC + SKIP IF A-F 2-11 U6F02140
0080 8017 217 | A IT181 ADD /0039 2-11 U6F02150
0081 8017 218 | A IT182 ADD /00C0 2-11 U6F02160
0082 1008 219 | SLA 8 SHIFT TO LEFT OF WORD 2-11 U6F02170
0083 7201 220 | MDX 2 1 DECRE CHAR PER WD CNT 2-11 U6F02180
0084 70F6 221 | MDX IT120+1 CONT IF WD NOT FULL 2-11 U6F02190
0085 1808 223 | SRA 8 OTHERWISE, SHIFT JUST 2-11 U6F02210
0086 E813 224 | OR IT183 *CNVTD WD TO RT,OR IN 2-11 U6F02220
0087 D480 009BR 225 | STO I IT184 *1ST HALF,STO TO PRINT 2-11 U6F02230
0089 7401 009BR 226 | MDX L IT184,1 INCRE PRINT AREA ADDR 2-11 U6F02240
008B 1810 227 | SRA 16 SET TEMP STORE AREA 2-11 U6F02250
008C D00D 228 | STO IT183 *TO ZERO 2-11 U6F02260
008D 7101 230 | MDX 1 1 DECRE OUTPUT WD CNT 2-11 U6F02280
008E 70EB 231 | MDX IT120 BR IF NOT FINISHED 2-11 U6F02290
008F 6500 0000 233 | IT190 LDX L1 *-* *OTHERWISE, RESTORE 2-11 U6F02310
0091 6600 0000 234 | LDX L2 *-* *REGISTERS 2-11 U6F02320
0093 74FE 009BR 235 | MDX L IT184,-2 DECRE PRINT AREA ADDR 2-11 U6F02330
0095 4C80 0075R 236 | BSC I IT100 AND RETURN TO MAINLINE 2-11 U6F02340
238 | * CONSTANTS AND WORKAREA U6F02360
0097 0009 240 | IT180 DC /0009 CONVERSION CONSTANTS 2-11 U6F02380
0098 0039 241 | IT181 DC /0039 * 2-11 U6F02390
0099 00C0 242 | IT182 DC /00C0 * 2-11 U6F02400
009A 0000 243 | IT183 DC *-* TEMP STOR FOR CNVT CHAR2-11 U6F02410
009B 0049R 244 | IT184 DC IT910+16 PRINT AREA POINTER 2-11 U6F02420
246 | *************************************************** U6F02440
247 | * THIS SUBROUTINE DETERMINES WHICH DRIVES HAVE * U6F02450
248 | * CARTRIDGES MOUNTED AND READY. IT ALSO SAVES THE* U6F02460
249 | * IDS IN PHYSICAL DRIVE ORDER.IF A DRIVE DOES NOT * U6F02470
250 | * HAVE A CARTRIDGE MOUNTED AND READY, ITS ENTRY * U6F02480
251 | * IN THE PHYSICAL DRIVE LIST IS SET TO ZERO * U6F02490
252 | *************************************************** U6F02500
009C 0000 254 | IT200 DC *-* ENTRY/RETURN ADDRESS 2-11 U6F02520
256 | * SAVE VALUES OF $ACDE IN COMMA U6F02540
009D 62FB 258 | LDX 2 -5 XR1 = $ACDE TABLE SIZE 2-11 U6F02560
009E C600 00A4 259 | IT205 LD L2 $ACDE+5 LOAD FIRST ENTRY 2-11 U6F02570
00A0 D600 0118R 260 | STO L2 IT926+5 *AND SAVE 2-11 U6F02580
00A2 7201 261 | MDX 2 1 SKIP IF FINISHED 2-11 U6F02590
00A3 70FA 262 | MDX IT205 *OTHERWISE, CONTINUE 2-11 U6F02600
00A4 6600 0022R 264 | LDX L2 IT902 XR2 = CART AVAIL IND 2-11 U6F02620
00A6 61F5 265 | LDX 1 -11 DRIVE COUNT TO XR1 2-11 U6F02630
00A7 C400 000A 266 | LD L $LEV2 SAVE CONTENTS 2-11 U6F02640
00A9 D400 0107R 267 | STO L IT923 *OF LOCATION 10 2-11 U6F02650
00AB C400 0106R 269 | IT210 LD L IT922 RESET INTERRUPT 2-11 U6F02670
00AD D400 000A 270 | STO L $LEV2 *BRANCH ADDRESS 2-11 U6F02680
00AF C500 0113R 271 | LD L1 IT924+11 FETCH AREA CODE 2-11 U6F02690
00B1 D400 009F 272 | STO L $ACDE STORE TO COMMA 2-11 U6F02700
00B3 E80F 273 | OR IT918 OR IN READ FUNC CODE 2-11 U6F02710
00B4 D04A 274 | STO IT911+1 STO TO 2ND WD OF IOCC 2-11 U6F02720
00B5 E84F 275 | OR IT921 OR IN SENSE FUNC CODE 2-11 U6F02730
00B6 D04A 276 | STO IT912+1 STO TO 2ND WD OF IOCC 2-11 U6F02740
00B7 0846 277 | XIO IT911 INITIATE DISK READ 2-11 U6F02750
00B8 0847 278 | XIO IT912 SENSE DISK 2-11 U6F02760
00B9 1003 279 | SLA 3 SHIFT BUSY BIT TO SIGN 2-11 U6F02770
00BA 4C28 00C4R 280 | BSC L IT230,+Z BR IF DISK BUSY 2-11 U6F02780
282 | * DISK NOT BUSY, NO CARTRIDGE AVAILABLE U6F02800
00BC 1010 284 | SLA 16 SET PHY DR LIST ENTRY 2-11 U6F02820
00BD D200 285 | STO 2 0 *TO ZERO 2-11 U6F02830
00BE 701A 286 | MDX IT240 BR TO INCRE DR POINTER 2-11 U6F02840
288 | * OPERATION COMPLETE INTERRUPT PROCESSING U6F02860
00BF 0000 290 | IT220 DC *-* INT ENTRY POINT 2-11 U6F02880
00C0 083F 291 | XIO IT912 SENSE WITH RESET 2-11 U6F02890
00C1 4CC0 00BFR 292 | BOSC I IT220 CONTINUE 2-11 U6F02900
00C3 0600 293 | IT918 DC /0600 READ FUNC CODE 2-11 U6F02910
295 | * CARTRIDGE AVAILABLE, FETCH CARTRIDGE ID AND U6F02930
296 | * DEFECTIVE CYLINDER ADDRESS U6F02940
00C4 C0FA 298 | IT230 LD IT220 CHECK INT ENTRY POINT 2-11 U6F02960
00C5 4818 299 | BSC +- *FOR NON-ZERO, AND LOOP2-11 U6F02970
00C6 70FD 300 | MDX IT230 *UNTIL INTERRUPT OCCURS2-11 U6F02980
00C7 1010 301 | SLA 16 RESET INT ENTRY POINT 2-11 U6F02990
00C8 D0F6 302 | STO IT220 *TO ZERO 2-11 U6F03000
00C9 C03D 303 | LD IT923 RESTORE CONTENTS 2-11 U6F03010
00CA D400 000A 304 | STO L $LEV2 *OF LOCATION 10 2-11 U6F03020
00CC C036 305 | LD IT915+1 SET ARM POSITION TO 2-11 U6F03030
00CD D400 009A 306 | STO L $CYLN *SECTOR ADDR JUST READ 2-11 U6F03040
00CF C034 307 | LD IT917 FETCH ADDR OF I/O AREA 2-11 U6F03050
00D0 1890 308 | SRT 16 SHIFT TO EXT, ACC = 0 2-11 U6F03060
00D1 4400 00F2 309 | BSI L DZ000 BRANCH TO DISK READ 2-11 U6F03070
00D3 7400 00EE 310 | MDX L $DBSY,0 SKIP IF READ COMPLETE 2-11 U6F03080
00D5 70FD 311 | MDX *-3 LOOP IF NOT COMPLETE 2-11 U6F03090
00D6 C026 313 | LD IT908+3 FETCH CART ID AND 2-11 U6F03110
00D7 D500 00F7R 314 | STO L1 IT904+11 *STORE TO CART LIST 2-11 U6F03120
00D9 C02D 315 | IT240 LD IT923 RESTORE CONTENTS OF 2-11 U6F03130
00DA D400 000A 316 | STO L $LEV2 *LEVEL 2 INT ADDR 2-11 U6F03140
00DC 7202 317 | MDX 2 2 INCRE AVAIL CART PNTR 2-11 U6F03150
00DD 7101 318 | MDX 1 1 SKIP IF DR CNT = 0 2-11 U6F03160
00DE 70CC 319 | MDX IT210 *OTHERWISE, CONTINUE 2-11 U6F03170
321 | * RESTORE VALUES OF $ACDE IN COMMA, AND SINCE U6F03190
322 | * THIS SUBROUTINE HAS MOVED ALL ARMS TO CYL. 0 U6F03200
323 | * TO READ THE CARTRIDGE ID, SET $CYLN TO ZERO U6F03210
00DF 62FB 325 | LDX 2 -5 XR1 = TABLE LENGTH 2-11 U6F03230
00E0 C600 0118R 326 | IT250 LD L2 IT926+5 RESTORE ORIGINAL 2-11 U6F03240
00E2 D600 00A4 327 | STO L2 $ACDE+5 *CONTENTS OF $ACDE 2-11 U6F03250
00E4 1810 328 | SRA 16 SET CURRENT ARM 2-11 U6F03260
00E5 D600 009F 329 | STO L2 $CYLN+5 *POSITION TO ZERO 2-11 U6F03270
00E7 7201 330 | MDX 2 1 SKIP IF FINISHED 2-11 U6F03280
00E8 70F7 331 | MDX IT250 *OTHERWISE, CONTINUE 2-11 U6F03290
00E9 4C80 009CR 333 | BSC I IT200 RETURN TO MAINLINE 2-11 U6F03310
335 | * CONSTANTS AND WORK AREA U6F03330
00EC 337 | BSS E 0 ASSURE EVEN BOUNDARY 2-11 U6F03350
00EC 338 | IT904 BSS 11 CART LIST-PHY DR ORDER 2-11 U6F03360
00F7 FFFF 339 | DC -1 CONSTANT OF -1 2-11 U6F03370
00F8 0004 340 | IT906 DC 4 WORD COUNT 2-11 U6F03380
00F9 0000 341 | IT907 DC #IDAD SECTOR ADDRESS 2-11 U6F03390
00FA 342 | IT908 BSS 4 4 DEF CYL,ID I/O AREA 2-11 U6F03400
**** Warning: Modifier '4' not permitted
00FE 0102R 343 | IT911 DC IT915 ADDRESS OF I/O AREA 2-11 U6F03410
00FF 0000 344 | DC *-* 2ND WORD OF READ IOCC 2-11 U6F03420
0100 0658 345 | IT912 DC /658 MAXIMUM ARM POSITION 2-11 U6F03430
0101 0000 346 | DC *-* 2ND WORD OF SENSE IOCC 2-11 U6F03440
0102 0001 347 | IT915 DC 1 WORD COUNT 2-11 U6F03450
0103 0000 348 | DC *-* I/O AREA 2-11 U6F03460
0104 00F8R 349 | IT917 DC IT906 ADDR OF ID I/O AREA 2-11 U6F03470
0105 0701 350 | IT921 DC /0701 SENSE W/RESET FUNC CODE2-11 U6F03480
0106 00BFR 351 | IT922 DC IT220 ADDR OF TEMP INT ROUTN 2-11 U6F03490
0107 0000 352 | IT923 DC *-* $LEV2 SAVE AREA 2-11 U6F03500
0108 2000 353 | IT924 DC /2000 AREA CODE - PHY DR 0 2-11 U6F03510
0109 8800 354 | DC /8800 AREA CODE - PHY DR 1 2-11 U6F03520
010A 9000 355 | DC /9000 AREA CODE - PHY DR 2 2-11 U6F03530
010B 9800 356 | DC /9800 AREA CODE - PHY DR 3 2-11 U6F03540
010C A000 357 | DC /A000 AREA CODE - PHY DR 4 2-11 U6F03550
010D B000 358 | DC /B000 AREA CODE - PHY DR 5 2-11 U6F03560
010E B800 359 | DC /B800 AREA CODE - PHY DR 6 2-11 U6F03570
010F B810 360 | DC /B810 AREA CODE - PHY DR 7 2-11 U6F03580
0110 B820 361 | DC /B820 AREA CODE - PHY DR 8 2-11 U6F03590
0111 B830 362 | DC /B830 AREA CODE - PHY DR 9 2-11 U6F03600
0112 B840 363 | DC /B840 AREA CODE - PHY DR 10 2-11 U6F03610
0113 364 | IT926 BSS 5 $ACDE SAVE AREA 2-11 U6F03620
0118 365 | END IT000 U6F03630
There was 1 warning in this assembly
Program transfer address = 0000
=== CROSS REFERENCES ==========================================================
Name Val Defd Referenced
#IDAD 0000 124 341
$1132 007F 88
$1403 0080 89
$1END 0258 122
$ACDE 009F 97 259 272 327
$ACEX 001A 60
$BYSW 01CB 117
$CH12 0006 45
$CIBA 0005 44
$CILA 005A 78
$CLSW 0018 58
$COMN 0007 46
$CORE 000E 48
$CPTR 007E 87
$CTSW 000F 49
$CXR1 0017 57
$CYLN 009A 96 306 329
$DABL 0011 51
$DADR 0010 50
$DBSY 00EE 115 116 310
$DCDE 0077 80
$DCYL 00A4 98
$DMPF 0019 59
$DREQ 0012 52
$DUMP 003F 74
$DZ1N 0076 79
$EXIT 0038 70
$FPAD 0095 95
$HASH 0014 54 55 56 57 58 59 60
$I200 00B3 99
$I205 00B8 100 101
$I210 00BA 102
$I290 00C2 103
$I400 00C4 104
$I403 00CF 105
$I405 00D3 106 107
$I410 00D6 108
$I415 00DE 109
$I490 00E8 110
$I491 00E9 111
$I492 00EA 112
$I494 00EC 113
$I495 00ED 114
$IBSY 0013 53
$IBT2 00B9 101
$IBT4 00D4 107
$IOCT 0032 64
$IREQ 002C 62
$KCSW 007C 85
$LAST 0033 65
$LEV2 000A 47 266 270 304 316
$LINK 0039 71
$LKNM 0014 55
$NDUP 0034 66
$NEND 0370 123
$NXEQ 0035 67
$PAUS 00F0 119
$PBSY 0036 68
$PGCT 0037 69
$PHSE 0078 81
$PRET 0028 61
$PST1 0081 90
$PST2 0085 91
$PST3 0089 92
$PST4 008D 93
$RMSW 0016 56
$RWCZ 00F1 120
$S000 004D 75
$S100 004E 76
$S150 0059 77 78
$S900 003C 72
$S910 003E 73
$SNLT 00EF 116
$STOP 0091 94
$UFDR 007D 86
$UFIO 0079 82
$ULET 002D 63
$WRD1 007B 84
$WSDR 007A 83
$ZEND 01E0 121
DZ000 00F2 118 119 120 309
IT000 0000R 130 365
IT010 000DR 147 171
IT015 001ER 169 148
IT100 0075R 204 153 236
IT120 007AR 211 221 231
IT180 0097R 240 215
IT181 0098R 241 217
IT182 0099R 242 218
IT183 009AR 243 212 224 228
IT184 009BR 244 225 226 235
IT190 008FR 233 207 208
IT200 009CR 254 130 333
IT205 009ER 259 262
IT210 00ABR 269 319
IT220 00BFR 290 292 298 302 351
IT230 00C4R 298 280 300
IT240 00D9R 315 286
IT250 00E0R 326 331
IT902 0022R 180 146 264
IT904 00ECR 338 152 314
IT906 00F8R 340 349
IT907 00F9R 341
IT908 00FAR 342 313
IT910 0039R 183 150 161 165 166 167 168 244
IT911 00FER 343 274 277
IT912 0100R 345 276 278 291
IT914 004CR 185 164 183
IT915 0102R 347 305 343
IT917 0104R 349 307
IT918 00C3R 293 273
IT920 004DR 186 135
IT921 0105R 350 275
IT922 0106R 351 269
IT923 0107R 352 267 303 315
IT924 0108R 353 271
IT925 0060R 188 186
IT926 0113R 364 260 326
IT930 0061R 189 138
IT935 0074R 191 189