Trailing-Edge
-
PDP-10 Archives
-
bb-kl11i-bm_tops20_v7_0_atpch_1-22
-
autopatch/cblio.c21
There are no other files named cblio.c21 in the archive.
REP 1/1 ;21C1
; UPD ID= 1620 on 5/22/84 at 9:19 AM by HOFFMAN
WIT
; UPD ID= 1620 on 5/22/84 at 9:19 AM by HOFFMAN
INS 31/2 ;21C2
DEFINE SAVACS,<
MOVEM 0,RACS
MOVE 0,[1,,RACS+1]
BLT 0,RACS+17
>
DEFINE RSTACS,<
MOVE 0,[RACS+1,,1]
BLT 0,17
MOVE 0,RACS
>
REP 13/3 ;21C3
USESEC==5 ; USE PROCEDURE TABLE SECTION SIZE
EXTUSE==^D15 ; OFFSET TO EXTEND ERROR USE PRODECURE
WIT
USESEC==5 ; USE PROCEDURE TABLE SECTION SIZE
EXTUSE==^D15 ; OFFSET TO EXTEND ERROR USE PRODECURE
REP 36/3 ;21C4
; OFFSETS INTO LABEL INFORMATION BLOCK
WIT
; OFFSETS INTO LABEL INFORMATION BLOCK
REP 57/3 ;21C5
BYTCTW==12 ;[1104] BYTE COUNT WORD IN FILE'S FDB
WIT
BYTCTW==12 ;[1104] BYTE COUNT WORD IN FILE'S FDB
REP 65/5 ;21C6
IFN TOPS20,<
WIT
IFN TOPS20,<
REP 87/5 ;21C7
HRROM AC1,EXJFN.## ;STORE PTR TO TEXT
WIT
HRROM AC1,EXJFN.## ;STORE PTR TO TEXT
REP 3/6 ;21C8
;AC14/ ADR OF SP1 ;ADR OF ADR OF "MAIN" PROGRAM
WIT
;AC14/ ADR OF SP1 ;ADR OF ADR OF "MAIN" PROGRAM
REP 31/6 ;21C9
RSTL13: JUMPE AC4,RSTL12 ;[453] JUMP IF SUBPRG HAS NO FILE-TABLES
WIT
RSTL13: JUMPE AC4,RSTL12 ;[453] JUMP IF SUBPRG HAS NO FILE-TABLES
REP 51/10 ;21C10
COMPT. AC1, ;GET JFN *************
WIT
COMPT. AC1, ;GET JFN *************
REP 3/11 ;21C11
;
WIT
;
REP 35/11 ;21C12
BLT AC2,MTOSIZ-1(AC3) ;ZERO TEMP AREA,TO MAKE SURE NO INFO FROM
WIT
BLT AC2,MTOSIZ-1(AC3) ;ZERO TEMP AREA,TO MAKE SURE NO INFO FROM
REP 66/11 ;21C13
; ERROR ON GET-LABEL-INFO MTOPR, CHECK FOR ILLEGAL OPERATION,
WIT
; ERROR ON GET-LABEL-INFO MTOPR, CHECK FOR ILLEGAL OPERATION,
REP 74/11 ;21C14
; YES,THEN THIS INDICATES THAT NO MOUNTR
WIT
; YES,THEN THIS INDICATES THAT NO MOUNTR
REP 94/11 ;21C15
; YES
WIT
; YES
REP 112/11 ;21C16
POPJ PP, ; YES,GIVE NON-LABELING RETURN IF BYPASS
WIT
POPJ PP, ; YES,GIVE NON-LABELING RETURN IF BYPASS
REP 117/11 ;21C17
MOVEI AC1,.TFLPR ; INDICATE GET LABEL INFORMATION
MOVEM AC1,TMP.BK ;
TAPOP. AC2, ; GET LABEL INFORMATION
WIT
MOVEI AC1,.TFLPR ; INDICATE GET LABEL INFORMATION
MOVEM AC1,TMP.BK ;
TAPOP. AC2, ; GET LABEL INFORMATION
REP 4/12 ;21C18
; IF STD-ASCII NOT SUPPORTED, INDASC FLAG SET TO
WIT
; IF STD-ASCII NOT SUPPORTED, INDASC FLAG SET TO
REP 2/13 ;21C19
MTOXXY:
WIT
MTOXXY:
REP 9/13 ;21C20
JRST MTALB0 ; YES, ALL OK
WIT
JRST MTALB0 ; YES, ALL OK
REP 28/13 ;21C21
; CHECK FOR BLK-FTR = 0 CASE, HERE IF STD-ASCII
WIT
; CHECK FOR BLK-FTR = 0 CASE, HERE IF STD-ASCII
REP 34/13 ;21C22
; NO NEED TO CHECK (CAN'T SET HARDWARE MODE
WIT
; NO NEED TO CHECK (CAN'T SET HARDWARE MODE
REP 30/17 ;21C23
POP PP,AC13 ; RESTORE AC13
WIT
POP PP,AC13 ; RESTORE AC13
REP 14/21 ;21C24
JRST RSTER0 ;MUST BE A DSK
WIT
JRST RSTER0 ;MUST BE A DSK
REP 28/23 ;21C25
BLT AC1,.GJJFN(AC3) ;[1176]
WIT
BLT AC1,.GJJFN(AC3) ;[1176]
REP 39/23 ;21C26
ADDI AC3,400
WIT
ADDI AC3,400
REP 24/24 ;21C27
OPEN 1,AC2 ;[342]INIT
WIT
OPEN 1,AC2 ;[342]INIT
REP 25/25 ;21C28
MACRO routine loaded in place of COBOL subroutine?/]
WIT
MACRO routine loaded in place of COBOL subroutine?/]
REP 69/27 ;21C29
POPJ PP, ;
WIT
POPJ PP, ;
REP 44/31 ;21C30
; DIFFICULT TO TRIM WITHOUT INTRODUCING SEVERE PROBLEMS WITHOUT TOTALLY
; RE-DOING THE ALGORITHM. SEE THE HEADER OF THE ROUTINE SUSPC1: FOR A
WIT
; DIFFICULT TO TRIM WITHOUT INTRODUCING SEVERE PROBLEMS WITHOUT TOTALLY
; RE-DOING THE ALGORITHM. SEE THE HEADER OF THE ROUTINE SUSPC1: FOR A
REP 49/32 ;21C31
SOJG AC4,.-1 ;[673] REPLACE EDIT 651
WIT
SOJG AC4,.-1 ;[673] REPLACE EDIT 651
REP 3/37 ;21C32
OPNOP:
WIT
OPNOP:
REP 108/40 ;21C33
PUSHJ PP,GETJFN ; GET THE JFN
WIT
PUSHJ PP,GETJFN ; GET THE JFN
REP 13/41 ;21C34
JRST OPC31X ; NO SYS LABELS,LEAVE IT AS IT IS,
WIT
JRST OPC31X ; NO SYS LABELS,LEAVE IT AS IT IS,
REP 44/42 ;21C35
TRZ AC0,INDASC ; NO, CLEAR ANY INDASC SETTING DONE AT RESET
WIT
TRZ AC0,INDASC ; NO, CLEAR ANY INDASC SETTING DONE AT RESET
REP 21/43 ;21C36
PUSH PP,AC6 ;[561]
PUSH PP,AC10 ;[561]
WIT
PUSH PP,AC6 ;[561]
PUSH PP,AC10 ;[561]
REP 34/43 ;21C37
POP PP,AC6 ;[561]
POP PP,AC5 ;[561]
LDB AC2,DTCN. ; GET CHANNEL NO.
PUSHJ PP,GETJFN ; GET THE JFN
WIT
POP PP,AC6 ;[561]
POP PP,AC5 ;[561]
LDB AC2,DTCN. ; GET CHANNEL NO.
PUSHJ PP,GETJFN ; GET THE JFN
REP 66/43 ;21C38
MOVEM AC0,D.RCL(I16) ; SET NUMBER RECORDS IN LOG BLOCK
WIT
MOVEM AC0,D.RCL(I16) ; SET NUMBER RECORDS IN LOG BLOCK
REP 101/43 ;21C39
WIT
REP 4/44 ;21C40
; THE BYTE COUNT FOR THE BUFFER READ IN, TO REFLECT
WIT
; THE BYTE COUNT FOR THE BUFFER READ IN, TO REFLECT
REP 55/44 ;21C41
WIT
REP 88/44 ;21C42
WIT
REP 145/44 ;21C43
JRST OPNEX0 ; YES, ALL OK, GO DO FILOP.
>;END IFE TOPS20
WIT
JRST OPNEX0 ; YES, ALL OK, GO DO FILOP.
>;END IFE TOPS20
REP 151/44 ;21C44
JRST OPNEX0 ; YES, ALL OK, GO DO FILOP.
WIT
JRST OPNEX0 ; YES, ALL OK, GO DO FILOP.
REP 170/44 ;21C45
IFN TOPS20,<
WIT
IFN TOPS20,<
REP 175/44 ;21C46
>; END IFN TOPS20
; HERE IF DATA MODE CAN'T BE SET
WIT
>; END IFN TOPS20
; HERE IF DATA MODE CAN'T BE SET
REP 192/44 ;21C47
WIT
REP 235/44 ;21C48
OPNEX1:
WIT
OPNEX1:
REP 30/45 ;21C49
PUSHJ PP,EXTSCN ; SCAN THE CURRENT BLOCK TO CALC THE NUMBER OF
WIT
PUSHJ PP,EXTSCN ; SCAN THE CURRENT BLOCK TO CALC THE NUMBER OF
REP 14/46 ;21C50
SUB AC1,AC2 ; CALC NUMBER OF WORDS OF DATA IN BUFFER
WIT
SUB AC1,AC2 ; CALC NUMBER OF WORDS OF DATA IN BUFFER
REP 53/46 ;21C51
; SCAN DOWN SIXBIT RECORD COUNTING RECORDS
WIT
; SCAN DOWN SIXBIT RECORD COUNTING RECORDS
REP 95/46 ;21C52
WIT
REP 106/46 ;21C53
WIT
REP 66/50 ;21C54
JRST OPNI7B ;OK, CONT
WIT
JRST OPNI7B ;OK, CONT
REP 169/50 ;21C55
OUTSTR [ASCIZ / differs from RESET value /]
WIT
OUTSTR [ASCIZ / differs from RESET value /]
REP 6/51 ;21C56
ADDI AC2,1(AC10) ;AC2 POINT AT NEXT FREE AREA
WIT
ADDI AC2,1(AC10) ;AC2 POINT AT NEXT FREE AREA
REP 19/52 ;21C57
ADDI AC1,2(AC2) ; AND ADD IN EXTRA 2 WORDS ALLOWED FOR
; IN OPNI05 FRO INDEX HDR WDS
MOVEM AC1,RWDLRT(I12) ; And a save area for RETAIN too
ADDI AC1,2(AC2) ;
WIT
ADDI AC1,2(AC2) ; AND ADD IN EXTRA 2 WORDS ALLOWED FOR
; IN OPNI05 FRO INDEX HDR WDS
MOVEM AC1,RWDLRT(I12) ; And a save area for RETAIN too
ADDI AC1,2(AC2) ;
REP 8/57 ;21C58
MOVE AC10,RECBYT(I12); [375] YES-USE ISAM PARAM
WIT
MOVE AC10,RECBYT(I12); [375] YES-USE ISAM PARAM
REP 57/57 ;21C59
JRST OPWP6A ; ELSE GO ON
WIT
JRST OPWP6A ; ELSE GO ON
REP 21/59 ;21C60
MOVEM AC10,D.CRC(I16) ; ELSE,INITIALIZE IT
WIT
MOVEM AC10,D.CRC(I16) ; ELSE,INITIALIZE IT
REP 18/61 ;21C61
AOJA AC5,OPNL2A ;[475] PART LAST BLOCK
WIT
AOJA AC5,OPNL2A ;[475] PART LAST BLOCK
REP 57/62 ;21C62
MOVEM AC0,FOP.LB ;
WIT
MOVEM AC0,FOP.LB ;
REP 79/62 ;21C63
MOVEI AC0,.FOMAU ;[576] NOW SET FOR
WIT
MOVEI AC0,.FOMAU ;[576] NOW SET FOR
REP 23/63 ;21C64
WIT
REP 184/63 ;21C65
IDPB C,AC10 ;OTHERWISE STORE
WIT
IDPB C,AC10 ;OTHERWISE STORE
REP 241/63 ;21C66
WIT
REP 258/63 ;21C67
WIT
REP 265/63 ;21C68
WIT
REP 315/63 ;21C69
PUSHJ PP,GETJFN ; GET THE JFN
WIT
PUSHJ PP,GETJFN ; GET THE JFN
REP 362/63 ;21C70
HRRM AC0,GJ.BLK+.GJF2 ;[1066] Set up number of extra
WIT
HRRM AC0,GJ.BLK+.GJF2 ;[1066] Set up number of extra
REP 7/65 ;21C71
MOVEI AC2,3
WIT
MOVEI AC2,3
REP 36/65 ;21C72
JRST OCPERI ; OTHERS.
WIT
JRST OCPERI ; OTHERS.
REP 59/68 ;21C73
WIT
REP 137/68 ;21C74
JRST OMTA97 ; ERROR
WIT
JRST OMTA97 ; ERROR
REP 29/74 ;21C75
; NOW SET DENSITY AND HARDWARE DATA MODE
WIT
; NOW SET DENSITY AND HARDWARE DATA MODE
REP 36/74 ;21C76
PUSHJ PP,SETDEN ; SET TAPE DENSITY
WIT
PUSHJ PP,SETDEN ; SET TAPE DENSITY
REP 61/76 ;21C77
WIT
REP 24/77 ;21C78
; HERE IF CAN'T GET MTA STATUS INFO
WIT
; HERE IF CAN'T GET MTA STATUS INFO
REP 64/78 ;21C79
POPJ PP, ;IGNORE
WIT
POPJ PP, ;IGNORE
REP 25/80 ;21C80
MOVEM AC1,TMP.BK+.TPFUN ;
WIT
MOVEM AC1,TMP.BK+.TPFUN ;
REP 33/80 ;21C81
WIT
REP 49/80 ;21C82
TRZ AC0,INDASC ; CLEAR ANY INDASC SETTING DONE AT RESET
WIT
TRZ AC0,INDASC ; CLEAR ANY INDASC SETTING DONE AT RESET
REP 79/80 ;21C83
POPJ PP, ;IGNORE
WIT
POPJ PP, ;IGNORE
REP 114/80 ;21C84
SETZM -1(AC1) ; CLEAR FIRSTWORD
WIT
SETZM -1(AC1) ; CLEAR FIRSTWORD
REP 136/80 ;21C85
WIT
REP 144/80 ;21C86
JRST OMTA96 ] ; AND GIVE ERROR SETTING LABEL INFORMATION
WIT
JRST OMTA96 ] ; AND GIVE ERROR SETTING LABEL INFORMATION
REP 22/81 ;21C87
; LABEL TYPE DOES NOT MATCH RECORDING MODE, CHECK IT
WIT
; LABEL TYPE DOES NOT MATCH RECORDING MODE, CHECK IT
REP 30/81 ;21C88
WIT
REP 35/81 ;21C89
; ERROR, WRONG LABEL FORMAT
WIT
; ERROR, WRONG LABEL FORMAT
REP 2/83 ;21C90
;
WIT
;
REP 12/88 ;21C91
; 2 AFTER BEGINNING
WIT
; 2 AFTER BEGINNING
REP 16/88 ;21C92
; EACH OF THE LABEL (68 ONLY) ENTRIES HAVE TWO ADDRESSES, THE
; REEL IN THE LEFT HALF AND THE FILE IN THE RIGHT
WIT
; EACH OF THE LABEL (68 ONLY) ENTRIES HAVE TWO ADDRESSES, THE
; REEL IN THE LEFT HALF AND THE FILE IN THE RIGHT
REP 22/91 ;21C93
ADDI AC1,-1(AC2) ;CONVERT TO
WIT
ADDI AC1,-1(AC2) ;CONVERT TO
REP 35/96 ;21C94
POPJ PP, ;
WIT
POPJ PP, ;
REP 2/105 ;21C95
PUTDEC: JUMPGE AC0,PUTDC1 ;IF NEGATIVE, [371]
WIT
PUTDEC: JUMPGE AC0,PUTDC1 ;IF NEGATIVE, [371]
REP 20/105 ;21C96
SKIPE AC0 ;[536] DONE ?
WIT
SKIPE AC0 ;[536] DONE ?
REP 45/109 ;21C97
WIT
REP 42/111 ;21C98
CAIE AC1,-1(AC3) ; SKIP IF AT BEGIN OF BUFFER
WIT
CAIE AC1,-1(AC3) ; SKIP IF AT BEGIN OF BUFFER
REP 8/112 ;21C99
JRST CLOSE4 ; NO,
WIT
JRST CLOSE4 ; NO,
REP 57/116 ;21C100
MOVEI AC3,3 ;INDICATE THAT THERE ARE 3 ARGS,BEGINING
WIT
MOVEI AC3,3 ;INDICATE THAT THERE ARE 3 ARGS,BEGINING
REP 72/116 ;21C101
; THIS ROUTINE CHECKS FOR OPENF ERROR WHERE FILE IS
; ALREADY OPEN. IT RETURNS IN THIS CASE.
; ALL OTHER OPEN ERRORS DIE WITH ERROR MESSAGE.
WIT
; THIS ROUTINE CHECKS FOR OPENF ERROR WHERE FILE IS
; ALREADY OPEN. IT RETURNS IN THIS CASE.
; ALL OTHER OPEN ERRORS DIE WITH ERROR MESSAGE.
REP 83/116 ;21C102
WIT
REP 107/116 ;21C103
CLSR2A:
WIT
CLSR2A:
REP 126/116 ;21C104
WIT
REP 50/118 ;21C105
HRRZ AC1,D.IBL(I16) ; [377] GET ISAM SAVE AREA
WIT
HRRZ AC1,D.IBL(I16) ; [377] GET ISAM SAVE AREA
REP 23/120 ;21C106
CAIE AC1,-1(AC3) ; SKIP IF AT BEGIN OF BUFFER
WIT
CAIE AC1,-1(AC3) ; SKIP IF AT BEGIN OF BUFFER
REP 19/122 ;21C107
;
;
; IF BIT12=1 (18-35 IS ADDR) AND
WIT
;
;
; IF BIT12=1 (18-35 IS ADDR) AND
REP 34/123 ;21C108
PUSHJ PP,WRTCR ; WRITE "CR"
WIT
PUSHJ PP,WRTCR ; WRITE "CR"
REP 88/123 ;21C109
WRTRA3: ;[WADV]
WIT
WRTRA3: ;[WADV]
REP 149/123 ;21C110
SOJG AC1,.-1 ; LOOP TILL PADDED, ASSUME
; F FORMAT MUST BE BLOCKED,
WIT
SOJG AC1,.-1 ; LOOP TILL PADDED, ASSUME
; F FORMAT MUST BE BLOCKED,
INS 28/125 ;21C111
IFN TOPS20,<
SAVACS ;[KWS]SAVE ACS
MOVEI 1,.FHSLF ;[kws]SELF PROCESS HANDLE
MOVEI 2,XTDBLK ;[kws]ARG. BLOCK
XRIR% ;[kws]READ BLOCK
ERJMP [RSTACS
JRST @.JBOPC##];[kws]4.1 MONITOR... OLD WAY
MOVE 1,XTDBLK+1 ;[kws]GET TABLE ADDRESS
MOVE 1,(1) ;[kws]FIRST INDIRECTION...
MOVEM 1,SAVADR ;[KWS]
RSTACS ;[KWS]
XJRSTF @SAVADR
ERJMP .+1
>
REP 25/129 ;21C112
;SETUP THE CONVERSION INST IN AC10
WIT
;SETUP THE CONVERSION INST IN AC10
REP 23/130 ;21C113
WAD0X:
WIT
WAD0X:
REP 20/132 ;21C114
TRNA ; YES
WIT
TRNA ; YES
REP 57/136 ;21C115
JRST READ8 ; ELSE CONT, ASSUME NO CR-LF FOR
WIT
JRST READ8 ; ELSE CONT, ASSUME NO CR-LF FOR
REP 62/136 ;21C116
SOJLE AC0,READ8 ; AND QUIT IF THIS IS LAST
WIT
SOJLE AC0,READ8 ; AND QUIT IF THIS IS LAST
REP 99/136 ;21C117
MOVEM FLG,F.WFLG(I16) ;
WIT
MOVEM FLG,F.WFLG(I16) ;
REP 127/138 ;21C118
JUMPN AC1,RER71A ; JUMP IF "U"
WIT
JUMPN AC1,RER71A ; JUMP IF "U"
REP 150/138 ;21C119
SOS D.RP(I16) ; DECREMENT REC COUNT
WIT
SOS D.RP(I16) ; DECREMENT REC COUNT
REP 29/139 ;21C120
;[577] RECORD. IN CASE WHEN THIS IS DETECTED, A SIMPLE RETURN TO CALLER
WIT
;[577] RECORD. IN CASE WHEN THIS IS DETECTED, A SIMPLE RETURN TO CALLER
REP 53/139 ;21C121
TLNE FLG,ATEND ;[577] SKIP IF NOT AT END ("EOF")
WIT
TLNE FLG,ATEND ;[577] SKIP IF NOT AT END ("EOF")
REP 49/141 ;21C122
HRRZ AC2,1(AC2) ; GET WORD COUNT
WIT
HRRZ AC2,1(AC2) ; GET WORD COUNT
REP 61/141 ;21C123
PUSHJ PP,READBF ; READ AGAIN, SHOULD GET ATEND.
WIT
PUSHJ PP,READBF ; READ AGAIN, SHOULD GET ATEND.
REP 41/143 ;21C124
SETZM D.SRCL(I16) ; CLEAR ANY SAVED D.RCL AFTER DEL/REWRT
WIT
SETZM D.SRCL(I16) ; CLEAR ANY SAVED D.RCL AFTER DEL/REWRT
REP 93/143 ;21C125
WIT
REP 27/148 ;21C126
MOVE AC5,AC1 ; RESET AC5 TO NEXT RECORD FOR SEQ
WIT
MOVE AC5,AC1 ; RESET AC5 TO NEXT RECORD FOR SEQ
REP 46/148 ;21C127
; IN NULL CASE SET UP SO AS TO
WIT
; IN NULL CASE SET UP SO AS TO
REP 56/148 ;21C128
ADD AC5,AC0 ; ADVANCE AC5 TO NEXT RECORD
WIT
ADD AC5,AC0 ; ADVANCE AC5 TO NEXT RECORD
REP 80/148 ;21C129
WIT
REP 100/148 ;21C130
WIT
REP 130/148 ;21C131
JRST RNDLER ;YES, ERROR NULL RECORD
WIT
JRST RNDLER ;YES, ERROR NULL RECORD
REP 54/149 ;21C132
PUSHJ PP,WRTADV ; DO ADVANCING NOW
WIT
PUSHJ PP,WRTADV ; DO ADVANCING NOW
REP 71/149 ;21C133
JRST RANXIT ; ADVANCE NXT-REC PTR AND TAKE STANDARD EXIT
WIT
JRST RANXIT ; ADVANCE NXT-REC PTR AND TAKE STANDARD EXIT
REP 11/150 ;21C134
TLCN FLG,DDMASC+SEQFIL ;IFSO
WIT
TLCN FLG,DDMASC+SEQFIL ;IFSO
REP 2/151 ;21C135
; HERE FOR SEQ-IO READ. CHECK FOR NULL RECORD,
; IFSO , COUNT IT AS REC FOR LOG-BLK AND START WITH NEXT
; WHEN REAL RECORD START IS FOUND , READ REC.
WIT
; HERE FOR SEQ-IO READ. CHECK FOR NULL RECORD,
; IFSO , COUNT IT AS REC FOR LOG-BLK AND START WITH NEXT
; WHEN REAL RECORD START IS FOUND , READ REC.
REP 88/151 ;21C136
; YES, JUMP ,DON'T BOTHER WITH EOR SCAN
WIT
; YES, JUMP ,DON'T BOTHER WITH EOR SCAN
REP 2/152 ;21C137
WIT
REP 13/152 ;21C138
RANXI0:
WIT
RANXI0:
REP 15/154 ;21C139
RANI0A: SETZM R.DLRW(I12) ; CLEAR DEL/RERIT SAVE
WIT
RANI0A: SETZM R.DLRW(I12) ; CLEAR DEL/RERIT SAVE
REP 1/156 ;21C140
;IF ACCESS MODE IS SEQUENTIAL
WIT
;IF ACCESS MODE IS SEQUENTIAL
REP 18/159 ;21C141
HRRM AC0,D.RFLG(I16) ; PUT IT BACK
WIT
HRRM AC0,D.RFLG(I16) ; PUT IT BACK
REP 30/159 ;21C142
;[605] HERE IS THE START CODE FOR ISAM FILES.
WIT
;[605] HERE IS THE START CODE FOR ISAM FILES.
REP 45/159 ;21C143
HRRM AC0,D.RFLG(I16) ; PUT IT BACK
PUSHJ PP,SETS23 ;[605] SET NO RECORD STATUS INVALID KEY
WIT
HRRM AC0,D.RFLG(I16) ; PUT IT BACK
PUSHJ PP,SETS23 ;[605] SET NO RECORD STATUS INVALID KEY
REP 19/160 ;21C144
HRRZ AC2,AC1 ;
WIT
HRRZ AC2,AC1 ;
REP 26/160 ;21C145
WIT
REP 31/160 ;21C146
HRRZ AC2,AC1 ;
ADD AC2,RCARSZ(I12) ; Get record area size, calc last word
BLT AC1,-1(AC2) ; Copy AUXBUF to record area
;
WIT
HRRZ AC2,AC1 ;
ADD AC2,RCARSZ(I12) ; Get record area size, calc last word
BLT AC1,-1(AC2) ; Copy AUXBUF to record area
;
REP 39/160 ;21C147
HRRM AC0,D.RFLG(I16) ; PUT IT BACK
WIT
HRRM AC0,D.RFLG(I16) ; PUT IT BACK
REP 44/160 ;21C148
WIT
REP 33/162 ;21C149
; HERE TO RESTORE THE "CURRENT RECORD POSITION" TO BEFORE
WIT
; HERE TO RESTORE THE "CURRENT RECORD POSITION" TO BEFORE
REP 67/162 ;21C150
HLRZ AC1,RWDLKY(I12) ; GET NNTRY VALUE
SKIPN SU.FRF ; DON'T RESET IF RETAIN
WIT
HLRZ AC1,RWDLKY(I12) ; GET NNTRY VALUE
SKIPN SU.FRF ; DON'T RESET IF RETAIN
REP 34/164 ;21C151
TLC FLG,OPNIO ;[622]
WIT
TLC FLG,OPNIO ;[622]
REP 46/164 ;21C152
JRST RANDOM ; NO,
WIT
JRST RANDOM ; NO,
REP 7/165 ;21C153
WIT
REP 49/165 ;21C154
WIT
REP 86/165 ;21C155
; IF DEL/REWRT RETAIN MUST FIND FIRST RECORD, SO ITS KEY CAN BE SAVED
WIT
; IF DEL/REWRT RETAIN MUST FIND FIRST RECORD, SO ITS KEY CAN BE SAVED
REP 7/171 ;21C156
HRRO AC2,@CNTRY0(I12)
WIT
HRRO AC2,@CNTRY0(I12)
REP 19/175 ;21C157
HRRZ AC2,AC5
WIT
HRRZ AC2,AC5
REP 1/185 ;21C158
;SEACH FOR A DATA FILE KEY
WIT
;SEACH FOR A DATA FILE KEY
REP 37/190 ;21C159
GBDER1: ;[1103]
WIT
GBDER1: ;[1103]
REP 46/190 ;21C160
IFE TOPS20,< ;[1103]
GBDEOF: ;[1103]
WIT
IFE TOPS20,< ;[1103]
GBDEOF: ;[1103]
REP 54/190 ;21C161
GBDEO1: ;[1103]
WIT
GBDEO1: ;[1103]
REP 29/191 ;21C162
SUB AC4,OMXLVL(I12) ;[307] UNUSED IOWRD POINTER
HRL AC4,AC5 ;[307] # OF NEW IOWRD'S REQUIRED
VNDE10: SKIPE (AC4) ;[307] IF IOWRD ALREADY EXIST
JRST VNDE20 ;[307] TRY TO LOOP
WIT
SUB AC4,OMXLVL(I12) ;[307] UNUSED IOWRD POINTER
HRL AC4,AC5 ;[307] # OF NEW IOWRD'S REQUIRED
VNDE10: SKIPE (AC4) ;[307] IF IOWRD ALREADY EXIST
JRST VNDE20 ;[307] TRY TO LOOP
REP 47/191 ;21C163
VNDERR: EXCH AC1,.JBFF ;FIRST GET OUT
WIT
VNDERR: EXCH AC1,.JBFF ;FIRST GET OUT
REP 5/195 ;21C164
HRRM AC0,D.RFLG(I16) ; Put IT BACK
LDB AC0,F.BMRS ;MAX-REC-SIZ
MOVEM AC0,D.CLRR(I16) ;SAVE LENGTH
WIT
HRRM AC0,D.RFLG(I16) ; Put IT BACK
LDB AC0,F.BMRS ;MAX-REC-SIZ
MOVEM AC0,D.CLRR(I16) ;SAVE LENGTH
REP 51/195 ;21C165
; IF SEQUENTAIL READ CALL @GETSET TO COPY KEY FOR CNTRY INTO
WIT
; IF SEQUENTAIL READ CALL @GETSET TO COPY KEY FOR CNTRY INTO
REP 57/195 ;21C166
PUSHJ PP,@GETSET(I12) ; YES, COPY CNTRY KEY
WIT
PUSHJ PP,@GETSET(I12) ; YES, COPY CNTRY KEY
REP 61/195 ;21C167
PUSHJ PP,@GETSET(I12) ; YES, COPY CNTRY KEY
WIT
PUSHJ PP,@GETSET(I12) ; YES, COPY CNTRY KEY
REP 14/208 ;21C168
JRST KILL ] ;
WIT
JRST KILL ] ;
REP 39/210 ;21C169
ADD AC0,[EXP E.VSTR] ; YES, SET IT
WIT
ADD AC0,[EXP E.VSTR] ; YES, SET IT
REP 43/212 ;21C170
MOVE FLG,-7(PP) ;[501] RESTORE FLAG. NOTE ** THIS
WIT
MOVE FLG,-7(PP) ;[501] RESTORE FLAG. NOTE ** THIS
REP 43/214 ;21C171
SKIPN AC1,F.WPFS(I16) ;[666] FILE STATUS WORD?
WIT
SKIPN AC1,F.WPFS(I16) ;[666] FILE STATUS WORD?
REP 49/215 ;21C172
TLNN FLG,OPNOUT ;SKIP IF OPEN FOR OUTPUT
WIT
TLNN FLG,OPNOUT ;SKIP IF OPEN FOR OUTPUT
REP 130/215 ;21C173
WIT
REP 135/215 ;21C174
; JUST CONTINUE OPEN FILE SEARCH. THIS IS REALLY ONLY FOR
; TOPS10, WHICH MUST SAVE IDX AND IDA DEVICE NAMES FOR
; FILES OPEN FOR INPUT
TLNN FLG,OPNOUT ;SKIP IF OPEN FOR OUTPUT
WIT
; JUST CONTINUE OPEN FILE SEARCH. THIS IS REALLY ONLY FOR
; TOPS10, WHICH MUST SAVE IDX AND IDA DEVICE NAMES FOR
; FILES OPEN FOR INPUT
TLNN FLG,OPNOUT ;SKIP IF OPEN FOR OUTPUT
REP 41/216 ;21C175
OUTSTR [ASCIZ /CORE UUO failed./]
WIT
OUTSTR [ASCIZ /CORE UUO failed./]
REP 55/217 ;21C176
F.BCRC: F%BCRC ; CHECKPOINT ON RECORD COUNT
WIT
F.BCRC: F%BCRC ; CHECKPOINT ON RECORD COUNT
INS 35/219 ;21C177
XTDBLK: 3
Z
Z
SAVADR: BLOCK 1
RACS: BLOCK ^D16 ;SAVE ACS
SUM 175153