ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:08 2020
Source File: \t4sdfnd.asm
LIBF SDFND FIND(A'B) FOR. DISK SEEK
2 | *************************************************** T4B00030
3 | *STATUS VERSION 2 - MODIFICATION 11 * T4B00040
4 | * * T4B00050
5 | *FUNCTION/OPERATION- * T4B00060
6 | * * POSITIONS THE DISK ARM AT A DESIGNATED * T4B00070
7 | * SECTOR ON THE DISK * T4B00080
8 | * * T4B00090
9 | *ENTRY POINT * T4B00100
10 | * LIBF SDFND CALL TO FIND * T4B00110
11 | * DC ADDR1 ADDR OF FILE NO. * T4B00120
12 | * DC ADDR2 ADDR OF RCD * T4B00130
13 | * * T4B00140
14 | *INPUT-N/A * T4B00150
15 | * * T4B00160
16 | *OUTPUT-N/A * T4B00170
17 | * * T4B00180
18 | *EXTERNAL REFERENCES- * T4B00190
19 | * SUBROUTINES- * T4B00200
20 | * DZ000 * T4B00210
21 | * COMMA/DCOM- * T4B00220
22 | * $EXIT * T4B00230
23 | * $FPAD * T4B00240
24 | * $PRET * T4B00250
25 | * $WRD1 * T4B00260
26 | * * T4B00270
27 | *EXITS- * T4B00280
28 | * NORMAL- * T4B00290
29 | * *RETURN TO LAST FIND PARAMETER + 1 * T4B00300
30 | * ERROR-N/A * T4B00310
31 | * * T4B00320
32 | *TABLES- T4B00330
33 | * DEFINE FILE ENTRY TABLE ENTRIES (7 WORDS * T4B00331
34 | * PER FILE) IMMEDIATELY FOLLOWS CORE IMAGE * T4B00332
35 | * HEADER. IT IS CREATED BY THE COMPILER OR * T4B00333
36 | * ASSEMBLER AS PART OF THE MAINLINE PROGRAM.* T4B00334
37 | * IT IS MODIFIED BY THE CORE LOAD BUILDER. * T4B00335
38 | * IT IS USED TO CONNECT LOGICAL FILE NUMBER * T4B00336
39 | * REFERENCES TO FILE LOCATIONS ON DISK. * T4B00337
40 | * * T4B00339
41 | *WORK AREAS-N/A * T4B00340
42 | * * T4B00350
43 | *ATTRIBUTES-N/A * T4B00360
44 | * * T4B00370
45 | *NOTES-N/A * T4B00380
46 | * * T4B00390
47 | *************************************************** T4B00400
48 | * EJCT BLK REMOVED T4B00405
49 | LIBR T4B00410
50 | * SUBROUTINE FOR FIND OPERATION T4B00420
51 | ENT SDFND CALL FIND T4B00430
52 | * T4B00432
00EE 53 | $DBSY EQU /00EE DISK BUSY INDICATOR 2-11 T4B00433
007B 54 | $WRD1 EQU /007B ADDR OF CORE IMAGE HEADER T4B00434
0095 55 | $FPAD EQU /0095 FILE PROTECT ADDR(WS ADDR) T4B00436
00F2 56 | DZ000 EQU /00F2 DISK I/O SUBR ENTRY POINT T4B00438
57 | * T4B00440
0000 6942 58 | SDFND STX 1 SK300+1 SAVE XR1 T4B00450
0001 6680 0000 59 | LDX I2 *-* LOAD PARAM ADDR T4B00460
60 | * T4B00462
0003 7400 00EE 61 | MDX L $DBSY,0 LOOP UNTIL DISK 2-11 T4B00464
0005 70FD 62 | MDX *-3 * OP COMPLETE 2-11 T4B00466
63 | * T4B00468
0006 7202 64 | MDX 2 2 SET UP XR2 T4B00470
0007 6A3D 65 | STX 2 SK300+3 * FOR RETURN T4B00472
66 | * T4B00474
0008 6580 007B 67 | LDX I1 $WRD1 LOAD ADRS OF 1ST WD OF HDR T4B00476
68 | *************************************************** T4B00480
000A C11A 69 | LD 1 26 SHOULD BECOME SLA 16 T4B00490
70 | * TO IGNORE LOCAL/SOCAL CHK T4B00500
71 | *************************************************** T4B00510
000B D041 72 | STO SK905 SAVE FOR DELAYED TEST 2-5 T4B00520
000C C103 73 | LD 1 3 LOAD FILE COUNT T4B00530
000D D038 74 | STO SK900 STORE NUMBER OF FILES T4B00540
000E 4C08 0042R 75 | BSC L SK300,+ RETURN IF NOT POSITIVE 2-5 T4B00550
0010 C104 76 | LD 1 4 GET CORE IMAGE HDR LENGTH T4B00580
0011 D001 77 | STO *+1 T4B00590
0012 7500 0000 78 | MDX L1 *-* MOVE PTR TO DEFINE FILE TB T4B00600
79 | * T4B00610
0014 C680 FFFE 80 | SK100 LD I2 -2 LOAD FILE ID T4B00620
0016 F100 81 | EOR 1 0 FOUND FILE IN TABLE T4B00630
0017 4C18 001ER 82 | BSC L SK200,+- BRANCH IF YES T4B00640
0019 7107 83 | MDX 1 7 PUT PT AT NEXT FILE ENTRY T4B00650
001A 74FF 0046R 84 | MDX L SK900,-1 DECREASE FILE COUNT T4B00660
001C 70F7 85 | MDX SK100 CHECK NEXT ENTRY T4B00670
001D 7024 86 | MDX SK300 FILE NOT FOUND - RETURN T4B00680
87 | * T4B00690
001E C680 FFFF 88 | SK200 LD I2 -1 LOAD NO. OF RCD IN FILE T4B00700
0020 D580 0003 89 | STO I1 3 STORE ASSOCIATED VARIABLE T4B00710
0022 C02A 90 | LD SK905 LOAD SAVED LOCAL/SOCAL 2-5 T4B00714
0023 4C20 0042R 91 | BSC L SK300,Z RETURN IF LOCAL/SOCAL 2-5 T4B00716
0025 C104 92 | LD 1 4 LOAD SECTOR START ADDR T4B00720
0026 4C10 0031R 93 | BSC L SK210,- IS FILE IN WORKING STG T4B00730
0028 E022 94 | AND SK903 YES, CLEAR SIGN BIT T4B00740
0029 D023 95 | STO SK905 SAVE ADDR T4B00750
002A 180C 96 | SRA 12 GET ADDR OF T4B00760
002B 8022 97 | A SK906 FILE PROTECT T4B00770
002C D001 98 | STO *+1 FOR GIVEN LOGICAL DRIVE T4B00780
002D C400 0000 99 | LD L *-* LOAD RECORD NUMBER T4B00790
002F E01C 100 | AND SK904 CLEAR LEADING BITS T4B00800
0030 801C 101 | A SK905 ADD SECTOR START ADDR T4B00810
0031 D017 102 | SK210 STO SK902+1 SET UP SEEK INITIAL SECTOR T4B00820
0032 C680 FFFF 103 | LD I2 -1 LOAD RECORD NUMBER T4B00830
0034 4C08 0042R 104 | BSC L SK300,+ BRANCH IF INVALID T4B00840
0036 9101 105 | S 1 1 SUBTRACT NO. RCDS IN FILE T4B00850
0037 4830 106 | BSC -Z SKIP IF NUMBER VALID T4B00860
0038 7009 107 | MDX SK300 INVALID REQUEST-EXIT T4B00870
0039 8101 108 | A 1 1 RESTORE RECORD NO. T4B00880
003A 9014 109 | S SK907 SUBTRACT 1 2-5 T4B00890
003B 1890 110 | SRT 16 DIVIDE RECORD NUMBER-1 2-5 T4B00900
003C A905 111 | D 1 5 *BY RECORDS PER SECTOR 2-5 T4B00910
003D 800B 112 | A SK902+1 INCREMENT SCTR ADDR IN 2-5 T4B00920
003E D00A 113 | STO SK902+1 *I/O BUFFER BY QUOTIENT2-5 T4B00925
003F C810 114 | LDD SK910 LOAD SEEK PARAMETER T4B00930
0040 4400 00F2 115 | BSI L DZ000 EXECUTE DISK SEEK T4B00940
0042 6500 0000 116 | SK300 LDX L1 *-* RESTORE XR1 T4B00950
0044 4C00 0000 117 | BSC L *-* RETURN TO MAINLINE T4B00960
0046 0000 118 | SK900 DC *-* NUMBER OF FILES T4B00970
0048 119 | BSS E 2-7 T4B00980
0048 0001 120 | SK902 DC 1 READ I/O PARAM 2-5 T4B00990
0049 0000 121 | DC *-* SECTOR ADDRESS T4B01000
004A 122 | BSS 1 2-5 T4B01005
004B 7FFF 123 | SK903 DC /7FFF MASK TO CLEAR SIGN BIT T4B01007
004C 0FFF 124 | SK904 DC /0FFF MASK TO CLEAR LEADING BITS T4B01010
004D 0000 125 | SK905 DC *-* SECTOR START ADDR T4B01020
126 | * *AND TEMP LOCAL/SOCAL CNT T4B01025
004E 0095 127 | SK906 DC $FPAD ADDR OF FILE START ADDR T4B01030
004F 0001 128 | SK907 DC 1 CONSTANT 2-5 T4B01040
0050 129 | BSS E 0 T4B01060
0050 7000 130 | SK910 DC /7000 SEEK PARAMETERS T4B01070
0051 0048R 131 | DC SK902 FOR DZ000 T4B01080
0052 132 | END T4B01090
There were no errors in this assembly
=== CROSS REFERENCES ==========================================================
Name Val Defd Referenced
$DBSY 00EE 53 61
$FPAD 0095 55 127
$WRD1 007B 54 67
DZ000 00F2 56 115
SDFND 0000R 58
SK100 0014R 80 85
SK200 001ER 88 82
SK210 0031R 102 93
SK300 0042R 116 58 65 75 86 91 104 107
SK900 0046R 118 74 84
SK902 0048R 120 102 112 113 131
SK903 004BR 123 94
SK904 004CR 124 100
SK905 004DR 125 72 90 95 101
SK906 004ER 127 97
SK907 004FR 128 109
SK910 0050R 130 114