12 22FL ... SEG CAFSCTRL,865,D A BELL 4 22_= ...# 4 23DW ...# 18 23YG ...# THIS SEGMENT IS PART OF THE CAFS SUBSYSTEM IN GEORGE 3 4 24D6 ...# 20 24XQ ...# IT PROVIDES THE MAIN LINE CODE FOR THE CAFS CONTROL ACTIVITY 20 25CB ...# TOGETHER WITH A SMALL AMOUNT OF CODE TO DEAL WITH THE CREATION 12 25X2 ...# OF THE BSA/CAFSACT DURING EMS 4 26BL ...# 20 26W= ... SEGENTRY K1CAFSCTRL,XK1 [BSA/CAFSACT CREATION DURING EMS 20 27*W ... SEGENTRY K2CAFSCTRL,XK2 [MAIN LINE CODE FOR BSA/CAFSACT 4 27TG ...# 4 28*6 ...# 4 28SQ ...# 8 29#B ...# SOME PRESETS 4 29S2 ...# 21 2=3S ...XCAFSCME +ECAFSCME [CAFS DEVS MUST NOT BE ANON OR SW OU 4 2=?L ...# 6 2=R= ...XBSACAFSACT 8 2?=W ...#HAL +BSA+CAFSACT,0 4 2?QG ...# 5 2#=6 ...SLINK 19 2#PQ ... LINK CAFSCTRL,2 [INITIAL LINK FOR BSA/CAFSACT 4 2*9B ...# 4 2*P2 ...# 4 2B8L ...# 4 2BN= ...# 4 2C7W ...XK1 4 2CMG ...# 20 2D76 ...# WE ENTER HERE FROM SETUPA TO CREATE THE BSA/CAFSACT IF THERE 20 2DLQ ...# IS A CAFS DEVICE IN THE CONFIGURATION. THE ACTIVITY IS MADE 20 2F6B ...# LONG ENOUGH TO HOLD A TABLE GIVING DETAILS OF EACH DRIVE THAT 19 2FL2 ...# IS CONNECTED THROUGH CAFS. THE ACTIVITY IS SET UP IN THE 20 2G5L ...# EMSCORE AREA AND HAS A FIXED CORE POINTER TO MAKE IT EASY TO 7 2GK= ...# LOCATE. 4 2H4W ...# 4 2HJG ...# 20 2J46 ... LDN 7 CAFSTYPE [FIRST WE LOOK FOR A CAFS DEVICE 13 2JHQ ... FINDPERE 3,APFOTY,7,,,XCME,XCME 20 2K3B ... BNG 3 UP [NOTHING TO DO IF NO CAFS UNIT 4 2KH2 ...# 4 2L2L ...# 20 2LG= ...# NOW WE MUST LOOK AT ALL EDS 60 ENTRIES IN THE DEVICE LIST AND 19 2L_W ...# COMPUTE THE RANGE OF CAFS DRIVE GEOGRAPHIC UNIT NUMBERS 4 2MFG ...# 19 2M_6 ... NGN 0 4095 [SET UP A FEW WORKING VALUES 19 2NDQ ... STO 0 AWORK1(2) [BEFORE STARTING THE SEARCH 20 2NYB ... STOZ AWORK2(2) [CURRENT HIGHEST GEOG UNIT NUMBER 4 2PD2 ...# 18 2PXL ... LDN 7 26 [DEVICE TYPE FOR EDS 60 4 2QC= ...# 21 2QWW ... FINDPERE 1,APFOTY,7,NEXTONE,,XCHECK1,XCHECK1 [LOOK FOR EDS 60 ENT 20 2RBG ... BNG 1 SETUPACT [JIF NO MORE ENTRIES TO LOOK AT 4 2RW6 ...# 19 2S*Q ... JNCAFSDV 1,NEXTONE,EMS [JIF THIS IS NOT A CAFS DRIVE 20 2STB ... LGEOG 1,0 [ELSE OBTAIN ITS GEOG UNIT NUMBER 20 2T*2 ... BXGE 0 AWORK1(2),NOTLOWER [JIF NOT LOWER THAN LOWEST SO FAR 21 2TSL ... STO 0 AWORK1(2) [ELSE REMEMBER THIS AS LOWEST GEOG 4 2W#= ...# 5 2WRW ...NOTLOWER 21 2X?G ... BXL 0 AWORK2(2),NEXTONE [JIF NOT HIGHER THAN HIGHEST SO FAR 21 2XR6 ... STO 0 AWORK2(2) [ELSE REMEMBER THIS AS HIGHEST GEOG 17 2Y=Q ... BRN NEXTONE [LOOK FOR MORE DRIVES 4 2Y#F ...# 5 2YB8 ...XCHECK1 17 2YCX ... JNCAFSDV 1,NEXTONE,EMS [OK IF NOT CAFS 8 2YFL ...XCME SMO FX1 9 2YH* ... LDX 3 XCAFSCME 7 2YK4 ... MONOUTX 3 10 2YLR ... GEOERR 1,CAFSUNIT 4 2YNG ...# 4 2YQB ...# 5 2_=2 ...SETUPACT 9 2_PL ... NGX 6 AWORK1(2) 21 329= ... BPZ 6 ZNOEDS60 [ERROR - CAFS DEVICE WITH NO DRIVES 21 32NW ... ADX 6 AWORK2(2) [COMPUTE RANGE OF GEOG UNIT NUMBERS 20 338G ... ADN 6 BSALEN+3 [AND GET REQUIRED ACTIVITY LENGTH 4 33N6 ...# 16 347Q ...# NOTE: THE BSA/CAFSACT IS SET UP WITH LENGTH = 4 34MB ...# 17 3572 ...# BSALEN + 2 + RANGE OF GEOG UNIT NUMBERS 4 35LL ...# 8 366= ... SMO FX1 19 36KW ... LDX 7 XBSACAFSACT [GET TYPE/SUBTYPE OF ACTIVITY 17 375G ... EMSACTX 7,6 [SET UP BSA/CAFSACT 4 37K6 ...# 21 384Q ...# NOW WE PASS ONE OR TWO BITS OF INFORMATION TO THE NEW ACTIVITY, 17 38JB ...# GIVE IT A LINK AND MAKE IT WAIT FOR THE END OF EMS 4 3942 ...# 18 39HL ... LDX 7 AWORK1(2) [LOWEST GEOG UNIT NUMBER 19 3=3= ... SBN 6 BSALEN+2 [RANGE OF GEOG UNIT NUMBERS 17 3=GW ... LDX 2 BPTR(2) [FIND NEW ACTIVITY 4 3?2G ...# 17 3?G6 ...# SET UP THE FIXED CORE POINTER TO THE NEW ACTIVITY 4 3?_Q ...# 9 3#FB ... STO 2 CAFSPTR 4 3#_2 ...# 21 3*DL ... STO 3 CPPTR(2) [ESTABLISH THE BSA/CAFSACT AS OWNER 17 3*Y= ... SETALLOC 3 [OF THE CAFS DEVICE 4 3BCW ...# 18 3BXG ... STO 7 CFLOWGEOG(2) [SET LOW GEOG UNIT NUMBER 18 3CC6 ... STO 6 CFDRVTABLEN(2) [SET DRIVE TABLE LENGTH 4 3CWQ ...# 17 3DBB ... LINKSET 2,SLINK(1) [GIVE ACTIVITY A LINK 21 3DW2 ... FWAIT #54 [AND MAKE IT WAIT FOR THE END OF EMS 4 3F*L ...# 4 3FT= ...UP 19 3G#W ... UP [THAT'S IT FOR THE EMS ENTRY 4 3GSG ...# 4 3H#6 ...# 4 3HRQ ...# 19 3J?B ...ZNOEDS60 [FATAL ERROR - CAFS DEVICE, BUT NO CAFS DRIVES!!! 4 3JR2 ...# 11 3K=L ... GEOERR BRIEFPM,NO EDS60 4 3KQ= ...#PAG 4 3L9W ...# 4 3LPG ...XK2 4 3M96 ...# 4 3MNQ ...# 20 3N8B ...# THIS IS THE POINT AT WHICH THE BSA/CAFSACT ENTERS THE SEGMENT 4 3NN2 ...# 21 3P7L ...# THE ACTIVITY IS NEWLY CREATED AND MUST FIRST INITIALISE ITS DRIVE 20 3PM= ...# TABLE BEFORE ENTERING THE MAIN LINE CODE WHICH FOLLOWS. THE 17 3Q6W ...# TABLE IS FILLED WITH '#40000000' TO START WITH. 4 3QLG ...# 4 3R66 ...# 21 3RKQ ... LDCT 0 #400 [SET REQUIRED PATTERN IN THE FIRST 17 3S5B ... STO 0 CFDRVTAB(2) [WORD OF THE TABLE 4 3SK2 ...# 20 3T4L ... LDN 4 CFDRVTAB(2) [NOW MOVE THE PATTERN THROUGH THE 17 3TJ= ... LDN 5 CFDRVTAB+1(2) [WHOLE OF THE TABLE 11 3W3W ... SMO CFDRVTABLEN(2) 8 3WHG ... MOVE 4 -1 4 3X36 ...# 18 3XGQ ... LDN 7 26 [DEVICE TYPE FOR EDS 60 4 3Y2B ...# 21 3YG2 ... FINDPERE 3,APFOTY,7,NEXTDISC,,XCHECK2,XCHECK2 [LOOK FOR EDS 60'S I 17 3Y_L ... BNG 3 SNOMORE [JIF ALL DEALT WITH 4 3_F= ...# 19 3_YW ... JNCAFSDV 3,NEXTDISC,EMS [JIF THIS IS NOT A CAFS DRIVE 21 42DG ... LGEOG 3,6 [ELSE GET DRIVE'S GEOG UNIT NUMBER 21 42Y6 ... SBX 6 CFLOWGEOG(2) [AND MAKE CAFS DRIVE TABLE POINTER 19 43CQ ... LADDP 3,1 [GET ADDRESS OF APIA ENTRY 4 43XB ...# 18 44C2 ... LDCT 0 #20 [CHECK WHETHER THE DRIVE 15 44WL ... ANDX 0 BSUNIT(1) [IS ENGAGED 18 45B= ... BZE 0 NEXTDISC [JIF DRIVE NOT ENGAGED 4 45TW ...# 21 46*G ... LDX 0 BSUNIT5(1) [ELSE GET SUSN OF CARTRIDGE ON DRIVE 7 46T6 ... SMO 6 21 47#Q ... STO 0 CFDRVTAB(2) [AND STORE SUSN IN CAFS DRIVE TABLE 16 47SB ... BRN NEXTDISC [GO FOR NEXT DISC 4 48#2 ...# 4 48C6 ...# 5 48G= ...XCHECK2 17 48KB ... JNCAFSDV 3,NEXTDISC,EMS [OK IF NOT CAFS 8 48NG ... BRN XCME 4 48RL ...# 5 49?= ...SNOMORE 4 49QW ...# 4 4==G ...# 19 4=Q6 ...# THAT COMPLETES THE INITIALISATION OF CAFS SUBSYSTEM. THE 20 4?9Q ...# BSA/CAFSACT ACTIVITY IS NOW SUSPENDED AND SERVES ONLY TO HOLD 20 4?PB ...# DATA RELATING TO THE CAFS SUBSYSTEM. IT DOES NOT RUN AGAIN. 4 4#92 ...# 4 4#NL ...# 4 4*8= ...# 18 4*MW ... COOR1 [SUSPEND THE BSA/CAFSACT 4 4B7G ...# 4 4BM6 ...# 21 4C6Q ... GEOERR BRIEFPM,NO LINK! [ERROR IF WE ARE SET RUNNING AGAIN 4 4CLB ...# 4 4D62 ...# 4 4DKL ...#END 8 ____ ...05406335000100000000