{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: CORESHED861)}}
====== CORESHED861 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:BC|BC]], [[george:macro:BS|BS]], [[george:macro:BXE|BXE]], [[george:macro:BXGE|BXGE]], [[george:macro:COBJUSE|COBJUSE]], [[george:macro:COBJUSRT|COBJUSRT]], [[george:macro:COMPROLINK|COMPROLINK]], [[george:macro:COOR3|COOR3]], [[george:macro:DOWN|DOWN]], [[george:macro:ENDCCYCLE|ENDCCYCLE]], [[george:macro:ENDPAXES|ENDPAXES]], [[george:macro:FCAJO|FCAJO]], [[george:macro:FINDJOBQ|FINDJOBQ]], [[george:macro:FINDTP|FINDTP]], [[george:macro:FJOPCA|FJOPCA]], [[george:macro:FPCAJO|FPCAJO]], [[george:macro:FPUT|FPUT]], [[george:macro:FREECORE|FREECORE]], [[george:macro:GSCAN|GSCAN]], [[george:macro:HUNTW|HUNTW]], [[george:macro:JBC|JBC]], [[george:macro:JBCC|JBCC]], [[george:macro:JBS|JBS]], [[george:macro:JBSS|JBSS]], [[george:macro:JMBS|JMBS]], [[george:macro:LA|LA]], [[george:macro:LINK|LINK]], [[george:macro:LINKSET|LINKSET]], [[george:macro:MBC|MBC]], [[george:macro:MBI|MBI]], [[george:macro:MBS|MBS]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:MOBJQUOTA|MOBJQUOTA]], [[george:macro:NOTBUSY|NOTBUSY]], [[george:macro:OFF|OFF]], [[george:macro:PCATEST|PCATEST]], [[george:macro:PROGAXES|PROGAXES]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETBIT|SETBIT]], [[george:macro:SHORTFALL|SHORTFALL]], [[george:macro:STARTSTRAT|STARTSTRAT]], [[george:macro:STOPIT|STOPIT]], [[george:macro:STRATEGY|STRATEGY]], [[george:macro:SWAP|SWAP]], [[george:macro:TEST|TEST]], [[george:macro:TESTAXES|TESTAXES]], [[george:macro:TRACE|TRACE]], [[george:macro:VFREEW|VFREEW]]
22FL ...#SEG CORESHED [DEK BEASLEY :CENT
22^= #OPT K0CORESHED=0
23DW #LIS K0CORESHED>K0ALLGEO>K0LLS
23YG 8HCORESHED
24D6 #
24XQ # IT IS THIS SEGMENT WHICH DIRECTS THE DIALOGUE BETWEEN THE PC AND
25CB # THE CAS.
25X2 #
26BL # THE ENTRY POINTS ARE AS FOLLOWS:
26W= #
27*W # K1 : PC/CAS DIALOGUE
27KN ...# K2 : RE-ENTRY FROM UNJAMMER
27TG #
28*6 SEGENTRY K1CORESHED,XX1C
28JY ... SEGENTRY K2CORESHED,XX2C
28SQ #
29#B P12 COMPROLINK
29GL ...# LINK FOR PLUG IN
29NW ...REPLUG
29X6 ... LINK PLUGIN,1
2=5B ...[
2=?L PLUGLINK
2=R= LINK PLUGIN,3 [PLUGIN AFTER SWAPOUT
2?=W UNPL LINK UNPLUG,7 [LINKS FOR UNPLUGS ETC
2?QG SWAP
2#=6 #SKI G4
2#PQ LINK SWAPOUT,1
2*9B #SKI G3
2*P2 LINK SWAP,2
2B8L #
2BN= ...[ S/R TO TEST FOR BREAKIN.THIS TEST IS ONLY REQ'D WHEN JBBEING SET &
2C7W ...[ JBSO CLEAR AS PROCONTX DOES NOT FPUT PCA UNDER THOSE CONDITIONS.
2CMG ...[ HOWEVER,IF BRKIN OCCURS WHILE JBBEING CLEAR & JBSO SET,THEN
2D76 ...[ PROCONTX FPUT'S PCA & SETS JOB TO JBDORM;THIS SUBROUTINE NOTICES
2DLQ ...[ JBDORM SET BUT DOES NOT FPUT PCA ETC.(GEOERR LISTKNOT IF IT DID)
2F6B ...[
2FL2 ...[ ENTRY : X3 -> JOB BLOCK
2G5L ...[ X5 = LINK
2GK= ...[ EXIT 1 - BREAKIN OCCURRED,PCA FPUT IF NECESSARY
2H4W ...[ 0 - NO BREAKIN HAS OCCURRED
2HJG ...[ X2 = FX2
2J46 ...[
2JHQ ...XBRKIN
2K3B ... LDX 2 FX2
2KH2 ... JMBS (5),3,JBSTSO,JBPISO [J IF WAS SPEC S/O
2L2L ... JBS XBEING,3,JBBEING [J IF BEING SWAPPED
2LG= ... JBS (5),3,JBSUSP [NO BREAKIN IF STILL SUSPENDED
2L^W ... BRN XR2A
2MFG ...XBEING
2M^6 ... JBC (5),3,JBBIN [J IF NO BREAKIN
5YYG LDN 4 0 [NON LOAD MARKER
5^D6 JBCC NLD,3,JBLOAD [CLEAR LOAD MARK IF SET
5^XQ LDN 4 1
62CB NLD MBI 3,JBSUSP,JBDORM [SUSPENDED -> DORMANT
62X2 FCAJO 2,3 [FIND CPA
63BL BNZ 4 XR2 [IF LOAD,LEAVE LINK TO LDSTART
63W= LINKSET 2,P12(1) [PROGBRKIN LINK
64*W XR2 FPUT [PUT COMMAND ACTIVITY ON LIST
64BD ...XR2A LDX 2 FX2
64C2 ... EXIT 5 1 [BREAKIN OCCURRED
64CJ ...[
64D6 ...[ SUBROUTINE TO CALCULATE EXTRA CORE REQ'D OVER THAT ALREADY FREE
64DN ...[ TO BRING PROGRAM IN - KNOWN AS SHORTFALL
64F= ...[ X4 - LINK
64FS ...[ ON EXIT,X0 CONTAINS SHORTFALL
64GB ...[
64GY ...XSHORTFALL
64HG ... SHORTFALL
64J4 ... EXIT 4 0
64JL ...[
64K8 ...# S/R TO FIND JOBLOCK FOR JOBNO [X7] IN X3,LINK X4
64KQ ...TJOB FINDJOBQ 3,7,(GEOERR)
64L# ... EXIT 4 0
64LW ...#
64MD ...#SKI G3
64N2 ...(
64NJ ...TPLUGIN
64P6 ...[
64PN ...[ ON ENTRY X2 = ADATA-ASTRAT
64Q= ...[ X3=JOB BLOCK OF MOVED PROGRAM
64QS ...[ IF B1 OF ADDRESS LOCATION IN ASTRAT BLOCK IS
64RB ...[ SET FOR A PROGRAM THAT WAS MOVED WE MUST NOW
64RY ...[ PLUG IT IN !
64SG ...[ LINK X4
64T4 ...[
64TL ... ENDPAXES 3 [CLEAR ACCESSED MARKER
64W8 ... MHUNTW 2,ADATA,ASTRAT
64WQ ... LDX 0 GPROG+GPREN+1(2) [ OBTAIN ADDRESS LOC.
64X# ... SLL 0 1
64XW ... BPZ 0 NOREPLUG [J. IF PROG NOT PLUGGED IN
64Y4 ... BC 3,JBSTOP [CHANGE STATE AS NOW BEING
64Y= ... MBS 3,JBSUSP,JBPLUGGING [ PLUGGED BACK IN
64YD ... FPCAJO 3
64^2 ... LDX 5 2 [SAVE ASTRAT POINTER
64^J ... LINKSET 3,REPLUG(1) [SET PLUGIN LINK IN PCA
6526 ... LDX 2 3
652N ... FPUT
653= ... LDX 2 5 [REPOINT X2 AT ASTRAT
653S ...NOREPLUG
654B ... EXIT 4 0
654Y ...[
655G ...)
6564 ...[ WE FIRST ISSUE STRATEGY :UNLESS THIS COMES BACK TO ANY FAIL LABEL
656L ...[ WE HAVE AN ADATA,ASTRAT BLOCK
6578 ...[ IF THIS SPECIFIES ONLY 1 IN GPCNT,IT MEANS STRATEGY FOUND WITHOUT
657Q ...[ A PROGRAM MOVE AND WE CAN DO STARTSTRAT IMMEDIATELY
658# ...[ IF 2 OR MORE SPECIFIED MEANS PROGRAM MOVE NEEDED
658W ...[
659D ...[ EXPECTS X6=JOB NO, X5= CORE WITH B0=1 => REALTIME
65=2 ...[ X6 WILL CONTAIN INCOMING PROGRAMS JOB NO. THROUGHOUT CORESHED
65=J ...[
65?6 ...#
65?N ...XX1C
65#= ... LDX 7 6
65#S ...#SKI G4
65*B ...(
65*Y ... TRACE 7,SWAPINS
65BG ... CALL 4 TJOB [X3 -> JOBQ
65CB ... CALL 5 XBRKIN [TEST FOR BIN
65D= ... BRN NOBIN
65F6 ... BRN ZAB [J IF B -IN
65G2 ...NOBIN
65H2 ... BS 3,JBBEING
65HJ ... BC 3,JBSO
65J6 ...)
65JN ...STRAT STRATEGY 6,5,ZK4P,NOCORE,NOCORE1 [GET STRATEGY
65K= ...#SKI G4
65KS ... BRN XGO
65LB ...#SKI G3
65LY ...(
65MG ...ST1AA HUNTW 2,ADATA,ASTRAT
65N4 ...#UNS ISTDP
65NL ...(
65P8 ... BPZ 2 ST1B [J IF ADATA/ASTRAT EXISTS
65PQ ...[
65Q# ...[ NO ADATA/ASTRAT IMPLIES NO ACTUAL SWAPIN TRANSFER NECESSARY
65QW ...[ AS A VALID FPB EXISTED FOR THIS PROGRAM WHICH HAS BEEN RE-SET UP
65RD ...[ AS THE AOBJPROG.WE'VE JUST COME UP FROM SWAP SO JOBNO IS NOW ASWIN
65S2 ...[
65S9 ... CALL 4 TJOB [X->JOBBLOCK
65SD ... CALL 5 XBRKIN
65SM ... BRN UFPB [NO B-IN
65SW ... BS 3,JBSI [SWAPPED IN MARKER FOR COMPATIBILITY
65T5 ... BC 3,JBBEING [SET BY STRATEGY
65T# ... BRN XENDCAB
65TN ...ST1B
65W= ...)
65WS ... LDX 0 GPCNT(2)
65XB ... SBN 0 1
65XY ... BZE 0 XGO1 [J IF NO PROGS TO MOVE
65YG ...[
65^4 ...[ A MOVE IS NEEDED,IF NO ABORT FLAGS NOW RAISED WE STOP THE 1ST
65^L ...[ PROGRAM TO BE MOVED:SOME OF THIS PATH ALSO USED TO STOP IF
6628 ...[ SWAPOUT NEEDED
662Q ...[ IF NOT STOPPED BY IREVIEW SPRING CLEANS,GIVE UP
663# ...[
663W ... TEST 0,CJAMAB,CSWAPAB,CDELAB
664D ... BNZ 0 SAD [FINISH IF ABORT FLAG RAISED
6652 ... LDX 7 GPROG+GPREN(2)
665J ... CALL 4 TJOB
6666 ... TESTAXES 3,SAD [FINISH IF BEING ACCESSED
666N ... PROGAXES 3,(GEOERR) [MARK ACCESSED
667= ... JBS PL,3,JBPLUG [J IF PLUGGED IN TO STOP IT
667S ...ST1A LDX 5 IREVIEW
668B ...ST1
668Y ... JBC ST2,3,JBSTOP [J IF NOT STOPPED
669G ... COOR3 #41
66=4 ... CALL 4 TJOB
66=L ... JBS PL,3,JBPLUG [MUST CONTINUE TO CHECK NOT PLUGGED IN
66?8 ... BCT 5 ST1
66?Q ...ZAB MHUNTW 2,ADATA,ASTRAT
66## ... LDX 0 GPCNT(2)
66#W ... SBN 0 1
66*D ... BZE 0 SAD [JUMP IF NO PROGRAM WAS TO BE MOVED
66B2 ... LDX 7 GPROG+GPREN(2)
66BJ ... CALL 4 TJOB [JOB TO BE MOVED
66C6 ... CALL 4 TPLUGIN
66CN ...)
66D= ...#
66DS ...# FINISH
66FB ...#
66FY ...#SKI G4
66GG ...ZAB
66H4 ...SAD
66HL ... LDX 7 6
66J8 ... CALL 4 TJOB [X3 TO JOB TO BE SWAPPED
66JQ ... BC 3,JBBEING
66K# ... BS 3,JBSO [ENSURE MARKED S/O
66KK ...PROGDEL
66KW ...#SKI G3
66LD ... FREECORE 2 [FREE ASTRAT
66M2 ... BRN XENDCAB [J TO ENDCCYCLE
66MJ ...#
66N6 ...# WE'VE STOPPED THE JOB TO BE MOVED SO CAN STARTSTRAT
66NN ...#
66P= ...#SKI G3
66PS ...(
66QB ...ST2 MHUNTW 2,ADATA,ASTRAT
66QY ... SETBIT 0,GPROG+GPREN+1(2) [MARK PERS WOUND DOWN
66RG ... TRACE GPROG+GPREN(2),MOVEPROG
66S4 ... BRN XGO
66SL ...[
66T8 ...[ GO AHEAD WITH STARTSTRAT = SWAPIN NOW
66TQ ...[
66W# ...XGO1 LDX 7 GPROG(2)
66XD ... CALL 4 TJOB [X3 -> JOBQ
66Y6 ... CALL 5 XBRKIN
66YS ... BRN NOBIN
66^G ... BRN ZAB [J IF B-IN
6728 ...NOBIN
672R ... TRACE 7,SWAPINS
673B ...
673Y ... BS 3,JBBEING
674G ... BC 3,JBSO
6754 ...)
675L ...XGO STARTSTRAT ZK2P,ZLOCK,ZAB
6768 ...#SKI G3
676Q ...(
677# ... MHUNTW 3,ADATA,ASTRAT
677W ... LDX 0 GPCNT(3)
678D ... SBN 0 1
6792 ... BNZ 0 XMORE [J IF ONLY PROGRAM MOVE
679J ...)
67=6 ...[
67=N ...[ IF SWAPIN NOW FINISHED,KICJ PCA TO DO PLUGIN AND LET ASWINT
67?= ...[ RETURN TO SCHEDIN TO DO SOME MORE SCHEDULING
67?S ...[
67#B ...#SKI G3
67#Y ...(
67*G ... FREECORE 3 [FREE THE ADATA/ASTRAT BLOCK
67B4 ...UFPB [J TO HERE WHEN VALID FPB EXISTED
67BL ...)
67C8 ... LDX 7 6 [JOB NO. OF INCOMING PROG.
67CQ ... CALL 4 TJOB
67D# ...[
67DW ...[ IF PCACA CASE CHECK IF MESSAGE REQUIRED & IF NOT KICK CPA HERE
67FD ... JBS MESS,3,JBBIG
67G2 ... JBCC MESS,3,JBPCACA
67GJ ...
67H6 ... MBS 3,JBSI,JBSTOP
67HN ... MBC 3,JBBEING,JBSUSP
67J= ... FCAJO 2,3 [X2 ->CPA
67JS ... FPUT
67KB ... BRN NOMESS
67KY ...MESS
67LG ... FPCAJO 2,3
67M4 ... LINKSET 2,PLUGLINK(1)
67ML ... FPUT
67N8 ... BS 3,JBPLUGGING [MARK BEING PLUGGED
67NQ ...NOMESS
67P# ... GSCAN JOBNUM(3),SWAPINF
67PW ...XSCHED
67QD ... OFF BSTRAT [CLEAR STRATEGY IN PROGRESS MARKER
67R2 ... ACROSS SCHEDIN,1
67RJ ...#SKI G3
67S6 ...(
67SN ...[
67T= ...[ IF STARTSTRAT WAS FOR PROGRAM MOVE,WE FREE THE ASTRAT,CLEAR
67TS ...[ THE BSTRAT SWITCH,AND RETURN TO SCHEDIN TO SELECT ANOTHER
67WB ...[ CANDIDATE.THINKS: THIS IS PROBABLY COS WE THINK THAT A MOVE
67WY ...[ HAS ALTERED THINGS SUFFICIENTLY THAT ITS WORTH CHECKING
67XG ...[ THAT THERE IS NOT NOW A BETTER CANDIDATE
67Y4 ...[
67YL ...XMORE LDX 2 3
67^8 ... LDX 7 GPROG+GPREN(2)
67^Q ... CALL 4 TJOB [X3 -> JOBBLOCK BEEN MOVED
682# ... CALL 4 TPLUGIN
682W ... MFREEW ADATA,ASTRAT
683D ... BRN XSCHED
6842 ...)
684J ...# ENTRY IS MADE HERE WHEN A SWAP IN REQUESTED BY THE PROGRAM
6856 ...# CONTROLLER HAS FAILED DUE TO LACK OF CORE. IT HAS TWO ENTRY POINT
685N ...# ZK2P : ENTERED FROM STARTSTRAT WHEN A PROGRAM MOVE OR SWAPIN
686= ...# HAS BEEN FRUSTRATED BY ANOTHER GEORGE ACTIVITY TAKING
686S ...# SOME OF THE CORE NEEDED.THE ADATA/ASTRAT BLOCK REMAINS
687B ...# ZK4P : ENTERED FROM STRATEGY WHEN NO STRATEGY FOR A SWAPIN
687Y ...# CAN BE FOUND BUT MAY BE POSSIBLE AFTER A SWAPOUT.IF AN
688G ...# ADATA/ASTRAT EXISTS,IT CONTAINS THE NOS. OF THE PROGS,
6894 ...# TO SWAPOUT AND THE REALTIME PROGRAM THAT THE LLS WANTS
689L ...# TO BE SWAPPED IN.
68=8 ...#
68=Q ...ZK2P
68?# ...#SKI G3
68?W ...(
68#D ... MHUNTW 2,ADATA,ASTRAT
68*2 ... LDX 0 GPCNT(2)
68*J ... SBN 0 1
68B6 ... BZE 0 NOSWAP [JUMP IF SWAP WAS FRUSTRATED
68BN ... LDX 7 GPROG+GPREN(2) [OTHERWISE MOVE FRUSTRATED
68C= ... CALL 4 TJOB
68CS ... CALL 4 TPLUGIN
68DB ...NOSWAP
68DY ... FREECORE 2
68FG ...)
68G4 ...ZK4P
68GL ... TRACE 6,NOSWAPIN
68H8 ...ZK4PA LDX 7 6
68HQ ... CALL 4 TJOB
68KD ... CALL 5 XBRKIN [TEST FOR BREAKIN
68L2 ... BRN R2 [NO BREAKIN
68L8 ... BC 3,JBBEING
68LB ... BS 3,JBSO
68LJ ...#SKI G3
68M6 ... VFREEW ADATA,ASTRAT [FREE IF EXISTS
68MN ... BRN XOFF1 [AS BKIN,NO NEED TO UNJAM ETC.
68QG #
69=6 R2
69C# ... BC 3,JBBEING
69JG ... BS 3,JBSO
69PQ #SKI G3
6=9B ... HUNTW 3,ADATA,ASTRAT
6=P2 ... TEST 0,CSWAPAB,CJAMAB,CDELAB
6SR6 BZE 0 XNONE
6T=Q #SKI G3
6TQB (
6W=2 ... BNG 3 XOFF1 [ABORT FLAG RAISED
6WPL FREECORE 3 [SO FREE THE ADATA/ASTRAT BLOCK
6X9= )
6XNW ... BRN XOFF1
74K6 XNONE
74Q# ...#SKI G4
74XG ... BRN XMORECORE
754Q #SKI G3
75JB (
75PJ ...[ IF ADATA/ASTRAT EXISTS,THEN IT CONTAINS JOB NO. OF PROG. TO
75WQ ...[ BE S/O TO MAKE WAY FOR THE REALTIME PROG.
763Y ...[
7696 ... BNG 3 XMORECORE
76BC ... LDX 7 GPROG+GPREN(3) [JOB TO BE SWAPPED OUT !
773= FREECORE 3 [FREE THE ADATA/ASTRAT
77GW CALL 4 TJOB [X3 -> JOBQ TO BE SWAPPED
782G ... JMBS XOFF1,3,JBREON,JBREEF,JBPLUGGING
78G6 BRN XFINGER
78^Q )
792Q ...[
793Q ...[ NOW WE DECIDE WHAT TO DO ABOUT THERE BEING INSUFFICIENT CORE
794Q ...[
795Q ...XMORECORE
796Q ... STO 6 CJJOBNO [PRESERVE JOB NO.
797Q ... COBJUSE 4
798Q ... MOBJQUOTA MIN
799Q ... BXGE 4 0,XOUT [J IF OQ. MIN BEING REACHED
79=Q ... LDX 0 CJDELAYCNT1
79?Q ... ORX 0 CJDELAYCNT2
79#Q ... BPZ 0 XOUT [J IF RECENT UNJAM
79*Q ... CALL 4 XSHORTFALL [CALCULATE SHORTFALL
79BQ ... STO 0 CJTARGTN [ & STORE AS TARGET FOR UNJAMMER
79CQ ... LDX 0 ACOMMUNE3(2)
79DQ ... STO 0 CJREQSIZE [STORE SIZE OF PROGRAM
79HQ ... JBSS XOFF1,,ASWCORJAM [J IF UNJAM ALREADY IN PROGRESS
79JQ ... ACROSS UNJAMMER,1
79KQ ...[
79LQ ...XX2C [RE-ENTRY FROM UNJAMMER
79MQ ... LDX 6 CJJOBNO [RE-SET X6
79NQ ... CALL 4 XSHORTFALL [CALCULATE SHORTFALL NOW
79PQ ... BPZ 0 XOUT [J IF STILL NOT ENOUGH FREE CORE
79QQ ... LDX 7 6
79RQ ... CALL 4 TJOB
79SQ ... LDX 5 JCSIZE(3) [RESET X5 TO SIZE OF PROGRAM
79TQ ... JBC NOTRE,3,JBREON [SET B0 IF REALTIME PROG.
79WQ ... ORX 5 GSIGN
79XQ ...NOTRE
79YQ ...#SKI K6CORESHED>499-499
79^Q ... TRACE 6,RETRYSTR
7=2Q ... BRN XX1C [J TO ATTEMPT ANOTHER STRATEGY
7=3Q ...[
7=4Q ...[ AS EITHER UNJAMMING ACTION FAILED TO FREE ENOUGH CORE,OR WE'RE AT
7=5Q ...[ LEAST MEETING OQ MIN;THEN SEE IF ANY PROGRAMS SHOULD BE SWAPPED OU
7=6Q ...[
7=7Q ...XOUT
7=8Q ... COBJUSE
7=9Q ... COBJUSRT 5
7==Q ... BXE 0 5,XOUT1 [J IF NO PROG'S TO SWAP OUT
7=?4 ... CALL 4 XSHORTFALL [SET REQ'D AMOUNT FOR SCHEDOUT
7=?B ... STO 0 ACOMMUNE1(2)
7=?Q ... ACROSS SCHEDOUT,1 [ ATTEMPT TO SWAP A PROG. OUT
7=#Q ...XOUT1 [NO PROGRAMS TO SWAP OUT,SO SEND
7=*Q ... [APPROPRIATE MESSAGE
7=BQ ... LDX 6 CJJOBNO
7=CQ ... COBJUSE 4
7=DQ ... MOBJQUOTA MIN [IF REACHING OQ MIN,NOWT ELSE TO DO
7=FQ ... BXGE 4 0,XENDC
7=GQ ... LDN 5 0 [INDICATES NOT REALTIME FRAG.
7=HQ ... ACROSS LLSMESS,1 [OUTPUT APPROPRIATE MESSAGE
7=JQ ...[
7=KQ ...[ AS LOCKED BLOCK IN FREEZE AREA EXIT FROM STARTSTRAT(WHICH IMPLIES
7=LQ ...[ WE WAITED FOR 1MIN IN COREALLH),WE GO BACK TO SCHEDIN TO SEE IF
7=MQ ...[ SITUATION CHANGED(WHICH MIGHT HELP TO AVOID LOCKED BLOCK AREA FOR
7=NQ ...[
7=PQ ...ZLOCK
7=QQ ... LDX 7 6
7=RQ ... CALL 4 TJOB [LOCATE JOB BLOCK
7=SQ ... CALL 5 XBRKIN [FPUT PCA IF BREAKIN
7=TQ ... BRN ZAB [EXIT TO SCHEDIN
7=WQ ... BRN ZAB [ IRRESPECTIVE OF BREAKIN
7=Y= #SKI G3
7?CW (
7?XG [
7#C6 [ THIS NEXT SECTION CONTAINS CODE TO STOP AND UNBUSY A PLUGGED IN
7#WQ [ PROGRAM
7*BB [
7*W2 PL FPCAJO 3
7B*L BS 3,ASTOPSWAP
7BT= LDX 5 IREVIEW
7C#W LDX 7 JOBNO(3)
7CSG ...PL2 LA ASTOPSWAP,4
7D#6 ... STOPIT 3 [ ENSURE IT IS STOPPED (DUALS)
7DRQ BXE 4 ASTOP(3),PL1
7F?B PL3 COOR3 #41 [WAIT FOR EVENT TO CLEAR
7FR2 CALL 4 TJOB
7G=L JBC ST1A,3,JBPLUG [J UNLESS PLUGGED IN
7GQ= FPCAJO 3
7H9W BCT 5 PL2
7HPG BC 3,ASTOPSWAP
7J96 BRN ZAB
7JNQ PL1 LDX 4 3
7K8B PCATEST 3,PL11,PL11
7KN2 FINDTP 3,3
7L7L PL11
7LCD ... BS 3,ASTOPEXEC
7LM= DOWN UNPLUG,9 [UNPLUG IT
7LSD ... BRN ZAB1
7L^L ...[
7M6S ...[ THE FOLLOWING LINE WAS INSERTED TO CURE B2781 BUT CAUSED
7M#2 ...[ B3306 (PHANTOM BIT SETTER) AS I USED X0 INSTEAD OF X3 !
7MF8 ...[
7MHS ...
7MLD ... MHUNTW 2,ADATA,ASTRAT
7MP4 ... SETBIT 1,GPROG+GPREN+1(2) [INDICATE PROGRAM WAS PLUGGED IN
7MRN ... BRN ST2
7N8P ...ZAB1 MBC 3,ASTOPSWAP,ASTOPEXEC
7NKQ BRN ZAB [ENSURE STOP BIT CLEAR
7P5B )
7PK2 ...[
7Q4L ...[ FRAGMENTATION BY REALTIME PROGRAMS EXIT FROM STRATEGY.THIS EXIT CA
7QJ= ...[ ONLY OCCUR IN G3 AND NO ADATA/ASTRAT WILL EXIST.ALSO BREAKIN WILL
7R3W ...[ HAVE BEEN NOTICED IF IT OCCURRED AS JBBEING IS NOT SET UNTIL JUST
7RHG ...[ BEFORE STARTSTRAT IN G3
7S36 ...[
7SGQ ...NOCORE1
7T2B ...#SKI G3
7TG2 ...(
7T^L ... TRACE 6,REALFRAG
7WF= ... COBJUSE 4
7WYW ... MOBJQUOTA MIN
7XDG ... BXGE 4 0,XENDC [EXIT IF REACHING OQ MIN
7XY6 ... LDN 5 1 [INDICATE REALTIME FRAG.
7YCQ ... ACROSS LLSMESS,1 [OUTPUT MESSAGE
7YXB ...)
7^C2 ...[ EXIT FROM STRATEGY WHEN NO HOPE GIVEN EVEN IF ALL NON-REALTIME
7^WL ...[ PROGRAMS WERE TO BE SWAPPED OUT
82B= ...[
82TW ...NOCORE
83*G ... TRACE 6,IMPSSBLE
83T6 ... BRN ZK4PA
8G2= #SKI G3
8GFW (
8G^G #
8HF6 # THIS SECTION UNBUSIES A PROGRAM WITH THE FINGER
8HHG ...# ON IT TO BE SWAPPED OUT ****
8H^Q ...[
8J46 ...[ SO X6 = JOB COMMING IN
8J6G ...[ X7 = JOB SELECTED FOR OUT
8J8W ...[
8JY2 XFINGER
8KCL R3J LDX 5 IREVIEW
8KR* ...R2J TEST 0,CSWAPAB,CJAMAB,CDELAB
8L74 ... BNZ 0 XOFF1 [EXIT IF ABORT FLAG RAISED
8LGR ... CALL 4 TJOB
8LWG JBC YES,3,JBSTOP [J IF NOT STOPPED
8MB6 COOR3 #41
8MTQ BCT 5 R2J
8N=F ... BRN XOFF1
8NM8 ...YES JBS XOFF1,3,JBPLUGGING [EXIT IF BEING PLUGGED IN
8P3Y ...[ THE FOLLOWING CURES BUG 3361 - WHEREBY A PROGRAM COULD
8P7C ...[ DISAPPEAR WHILE WE SWAPPED IT AS WE DID NOT DO A
8P=W ...[ PROGAXES
8PB* ...[
8PFS ... TESTAXES 3,XOFF1
8PK? ... PROGAXES 3,(GEOERR)
8PNQ ...[
8Q8B ... JBS PLG,3,JBPLUG [J IF PLUGGED IN
8QRG JBS R16,3,JBSI
8R?6 ... BRN XOFFP [OR NO LONGER SWAPPED IN
8RQQ PLG FPCAJO 3
8S=B BS 3,ASTOPSWAP
8SQ2 LDX 5 IREVIEW
8T9L ...XBK
8TP= ... STOPIT 3 [ ENSURE IT IS STOPPED (DUALS)
8WNG LA ASTOPSWAP
8X86 BXE 0 ASTOP(3),YSUB
8XMQ XWT COOR3 #41 [WAIT TILL PROG. READY FOR SWAPPING
8XRM ... CALL 4 TJOB [IF UNPLUGGED PCA MAY MOVE
8XXJ ... JBC UNPLD,3,JBPLUG [J IF NOW UNPLUGGED
8Y3F ... FPCAJO 3
8Y7B BCT 5 XBK
8Y?? ... BRN NOGOOD
8YC8 ...UNPLD FPCAJO 3
8YF6 ...XOFFR
8YH5 ...NOGOOD
8YM2 BC 3,ASTOPSWAP
8^6L ... BRN XOFFP [CAN'T WAIT ANY MORE
8^L= YSUB
92KG LDX 2 3
92T# ... BS 3,ASTOPEXEC
9356 PCATEST 2,RC2,RC2 [-> RC2 IF NORMAL OR TP
93JQ FINDTP 2,2
944B ...RC2 NOTBUSY 2 [UNBUSY THE PERIPHERALS
94J2 LDX 2 3
953L LINKSET 2,UNPL(1)
957H ... BRN R16A
95?D ...[ WE FAILED TO UNBUSY SO TIDY UP
95C* ...[
95H= ...XOFFR1
95M7 ... BC 3,ASTOPEXEC
95R4 ... BRN XOFFR
95W^ ...[
962W R16 FPCAJO 2,3
96GG LINKSET 2,SWAP(1)
96SX ...R16A
977# ... BS 2,ASTOPEXEC [B3185
97FQ FJOPCA 3,2
97^B BC 3,JBSI
98F2 BS 3,JBBEING
98YL FPUT
99=S ... BRN XENDC
99K2 ...[
99MB ...[ ADDITIONAL TO B3361
99PQ ...[
99S6 ...XOFFP
99YW ... CALL 4 TJOB [REFIND JOB BLOCK
9=3= ... ENDPAXES 3
9=82 ... BRN XOFF1
9=#Q ...[
9=CG )
9=X6 ...XENDC
9?BQ ... OFF BSTRAT [CLEAR STRATEGY IN PROGRESS MARKER
9?WB ... ENDCCYCLE
9#B2 ...XOFF1
9#TL ... TRACE 6,ABORTSWP
9**= ...#SKI K6CORESHED>499-499
9*SW ...(
9B#G ... LDX 7 6
9BS6 ... CALL 4 TJOB
9C?Q ... JBS (GEOERR),3,JBBEING
9CRB ... JBC (GEOERR),3,JBSO
9D?2 ...)
9DQL ...XENDCAB
9F== ... OFF BSTRAT [CLEAR STRATEGY IN PROGRESS MARKER
9FPW ... ENDCCYCLE AB
9G9G ... MENDAREA 50,K99CORESHED
9GP6 ...#END
^^^^ ...37516546003400000000