{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: IPBLOG866)}}
====== IPBLOG866 ======
(George Source)
**Macros used:** [[george:macro:CCERROR|CCERROR]], [[george:macro:CHAIN|CHAIN]], [[george:macro:COOR1|COOR1]], [[george:macro:FPUT|FPUT]], [[george:macro:FREECORE|FREECORE]], [[george:macro:HUNTW|HUNTW]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:MOPCLOSE|MOPCLOSE]], [[george:macro:NAME|NAME]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETELOG|SETELOG]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:STARTACT|STARTACT]], [[george:macro:SUICIDE|SUICIDE]]
22FL #SEG IPBLOG [COMM - IPB
22PD ...#OPT K0IPBLOG=0
22^= #LIS K0IPBLOG>K0IPB>K0ALLGEO>K0GREATGEO
23DW 8HIPBLOG
23YG SEGENTRY K1IPBLOG,X1IPBLOG
24D6 [
24XQ [ THIS SEGMENT IS ENTERED WHEN DATA HAS BEEN RECEIVED FROM DEVICE
25CB [ TYPE 13 (THE ERROR LOGGER). DATA COMES IN FROM THE ERROR LOGGING
25X2 [ DEVICE CERTAIN DETAILS ARE ADDED AND THEN THE INFO IS WRITTEN OUT
26BL [ TO THE SYSTEM JOURNAL FILE.
26W= [
27TG XERR +CCWRONGILL
282N ...XMASK #77600000 [TOP BYTE MASK
287W ...XFC #77741703 [FF IN HEX AND CC IN EBSDIC
28*6 [
28SQ [ SEND SUPERVISORY SEGMENT AND AWAIT REPLY CODE IN X5 REPLY IN X6
29#B [
29S2 SUPER
2=?L SBX 7 FX1
2=R= MHUNTW 3,AMXOR,ADCB
2?=W LDCT 0 #100 [SKIP SUPER IF IDENTIFIER IS CLOSED
2?QG ANDX 0 ISTATUS(3) [MOP OFF OR FINISH NOW
2#=6 BZE 0 SOUT
2#PQ ERN 5 #120
2*9B BNZ 5 SEX [UNLESS SENDING OPEN SUP SEG
2*P2 ORX 5 #120 [RESET X5
2B8L SOUT LDX 3 5
2BN= SRL 3 6
2C7W ... SETNCORE IPBIDE-A1(3),1,AMXOR,IOUT
2CMG MHUNTW 3,AMXOR,ADCB
2D76 LDX 0 GSIGN
2DLQ SLL 5 12 [WD CT = 1 + SUPERVISORY CODE
2F6B STO 0 IBSW(1)
2FL2 ADX 5 IDENTNO(3)
2G5L STOZ IMOPTY(1) [DONT WAKE AFTER OUTPUT
2GK= STO 5 IPBIDE(1)
2H4W LDX 2 IADIN(3) [ADDRESS OF IPBIN ACTIVITY
2HJG LDX 2 IPBRING(2)
2J46 SBN 2 IPBRING [ADDRESS OF IPBOUT ACTIVITY
2JHQ LDX 4 2
2K3B LDX 2 ACTRING(2)
2KH2 SBN 2 ACTRING
2L2L LDX 2 BPTR(2)
2LG= ... CHAIN 1,2 [PUT ON END OF IPBOUT'S QUEUE
2L^W LDX 2 4
2MFG LDCT 0 #100
2M^6 ANDX 0 IPBSW(2) [TEST TO SEE IF OUTPUT ACTIVITY ASLEE
2NDQ BZE 0 WAKAL
2NYB ERS 0 IPBSW(2)
2PD2 FPUT
2PXL WAKAL LDN 4 0
2QC= SMO IADIN(3)
2QWW LDXC 0 IPBSW
2RBG BCS SCCX [J. IPB HAS BECOME INOP
2RW6 LDCT 0 #401 [SET B0 AND B8 TO INDICATE RECEIVE
2S*Q ORS 0 IWAIT(3) [SUPERVISORY INPUT AND ASLEEP
2STB COOR1
2T*2 MHUNTW 3,AMXOR,ADCB
2TSL LDN 4 11
2W#= YSUG HUNTW 2,AMXOR,IDATSG
2WRW BNG 2 WAKALA
2X?G LDX 0 A1+1(2)
2XH# ... BZE 6 SEX
2XR6 BNG 0 SSE [J IF A SUPERVISORY SEGMENT
2Y=Q LDX 0 6
2YQB SBN 0 52
2^=2 BNZ 0 NOSSE [J NOT AWAITING INPUT CLEARED REP
2^PL NAME 2,AMXOR,#77
329= BRN YSUG
32NW WAKALA
338G LDX 2 A1+FPTR(3)
33N6 LDX 0 FOURTHWD(2) [LD FOURTHWD OF ADEVS
347Q ORX 0 FINISH
34MB SLL 0 2
3572 BPZ 0 WAKAL [J NOT FINISH OF MOPPING OFF
35LL LDX 0 6
366= SBN 0 54
36KW BNG 0 OPOF [J. CRAH CLOSSING
375G SMO IADIN(3)
37K6 LDX 2 IPBRING [PTR TO AMOP IPBOUT
384Q LDCT 0 #420
38JB ANDX 0 IPBSW(3) [TEST B4 AMOP - MOP OFF,PM
3942 BZE 0 WAKAL [J. BIT NOT SET WAIT
39HL BRN SCCX
3=3= SSE
3=GW BCHX 2 £
3?2G LDCH 4 A1+2(2) [PICK UP SUPERVISORY CODE
3?G6 ANDX 2 BITS22LS
3?^Q SBN 4 #45
3#FB BZE 4 XILL [J. SUP SEG = ILLEGAL
3#^2 ADN 4 #45
3*DL SBX 4 6
3*Y= NOSSE FREECORE 2
3BCW BNZ 4 YSUG [J NOT SUP SEG WE ARE WAITING FOR
3BXG MHUNTW 2,AMXOR,IDATSG
3CC6 ... BPZ 2 NOSSE
3CWQ SEX LDX 2 FX2
3DBB ADX 7 FX1
3DW2 EXIT 7 0
3F*L XILL
3FT= LDX 5 XERR(1)
3G#W LDX 6 A1+2(2)
3GSG CCERROR 5,6
3H#6 BRN MOPOF [REPORT DCP PROTOCOL ERROR
3HRQ [
3J?B [ K1IPBLOG
3JR2 [
3K=L X1IPBLOG
3KQ= MHUNTW 3,AMXOR,ADCB [HUNT IDENTIFIER CONTROL BLOCK
3L9W LDX 2 A1+FPTR(3) [PTR. TO AMXOR ADEVS ENTRY
3LPG LDX 0 FOURTHWD(2) [BIT 2 SET IF MOPPING OFF
3M96 ORX 0 FINISH [BIT 2 IF FINISH NOW REQUIRED
3MNQ SLL 0 2
3N8B ... BNG 0 OPOF [J MOPPING OFF OR FINISH NOW
3NN2 LDCT 0 #10 [TEST IF LINE TERMINAL FAIL
3P7L ANDX 0 ISTATUS(3) [HAS OCCURRED IE BIT 5
3PM= ERS 0 ISTATUS(3) [CLEAR BIT
3Q6W BNZ 0 TLFAIL [J FAIL BIT IS SET
3QLG START
3R66 MHUNTW 2,AMXOR,IDATSG [HUNT DATA BLOCK
3RKQ BNG 2 XWAIT [NO MORE DATA BLOCKS
3S5B LDX 6 A1(2) [LD HEADER WD
3SK2 SLC 6 2 [TEST BIT 2 = END OF DATA
3T4L BNG 6 XEND [J END OF DATA STREAM
3TJ= XCONT
3W3W SRC 6 2
3WHG ANDN 6 #7777 [MASK OUT COUNT OF CHARS
3X36 ... ADN 6 3
3XGQ ... SRL 6 2 [CONVERT CHARS TO WDS
3Y2B ... SBN 6 2 [REMOVE SEG. HEADER AND IDENT
3YG2 ... SMO IADIN(3)
3Y^L ... LDX 7 CPPTR
3^F= ... SETELOG 3,6,7 [CREATE ADATA ELOUT
3^P4 ... MHUNTW 2,AMXOR,IDATSG
3^YW ... LDN 4 A1+2(2)
42DG ... LDN 5 ELHEADER(3)
42Y6 ... SMO 6
43CQ ... MOVE 4 0 [MOVE ERROR LOG RECORDS
43XB ... FREECORE 2 [FREE ADATA IDATSG - NO LONGER REQUD
44C2 ... MHUNTW 3,ADATA,ELOUT
44WL ... LDCT 0 #014
45B= ... STO 0 ELHEADER(3)
45TW ... LDX 6 XMASK(1)
46*G ... ANDX 6 ELHEADER+7(3)
47SB ... LDX 5 XFC(1)
48#2 ... SRL 56 8
48RL ... STO 5 ELHEADER+6(3)
49?= ... STO 6 ELHEADER+7(3)
49QW ... LDX 2 BELOGACT
4==G ... LDX 2 ACTRING(2)
4=JX ... SBN 2 ACTRING
4=X# ... LDX 2 BPTR(2)
4?9Q ... CHAIN 3,2 [CHAIN ADATA ELOUT BLOCK AT END OF
4?PB ... [BSA ELOG CHAIN
4#92 ... STARTACT ELOG [START BSA ELOG ACTIVITY TO
4#NL ... [MESSAGE
4*8= ... BRN X1IPBLOG [RETURN TO DEAL WITH NEXT BLOCK
4DKL [
4F5= [ MOP OFF OR FINISH NOW X3 = AMXOR ADCB
4FJW [
4G4G MOPOF MHUNTW 3,AMXOR,ADCB
4GJ6 OPOF LDCT 0 4 [B6 SET IF END OF DATA STREAM
4H3Q ANDX 0 ISTATUS(3)
4HHB BNZ 0 XEDS [J CRASH CLOSE SENT
4J32 SMO IADIN(3) [USING PTR TO AMOP@IPBIN
4JGL LDX 2 IPBRING [LD PTR TO AMOP IPBOUT
4K2= LDCT 0 #420
4KFW ANDX 0 IPBSW-IPBRING(2) [B0 : INOP B4 : MOP OFF,PM
4K^G BZE 0 SCC [BRANCH TO SEND CRASH CLOSE
4LF6 SCCX
4LYQ LDCT 0 #100
4MDB ORS 0 ISTATUS(3) [SIMULATE IDENTIFIER CLOSED
4MY2 BRN XEDS
4NCL TLFAIL
4NG9 ... LDN 5 #124
4NJS ... LDN 6 52
4NMC ... CALL 7 SUPER [STOP INPUT AND CLEAR
4NQ2 ... MHUNTW 3,AMXOR,#77
4NSK ... BPZ 3 RENAM [DATA BEING CLEARED OUT OF FEP
4NX= SCC
4PBW LDN 5 #127
4PWG LDN 6 54
4QB6 CALL 7 SUPER [SEND CRASH CLOSE
4QC# ... MHUNTW 3,AMXOR,ADCB
4QDG ... LDX 2 A1+FPTR(3)
4QFN ... LDX 0 FOURTHWD(2)
4QGW ... SLL 0 2
4QJ4 ... BNG 0 XEDS [J. MOPPPING OFF OR FINISH NOW
4QK= ... LDN 5 #120
4QLD ... LDN 6 48
4QML ... CALL 7 SUPER
4QNS ... LDN 5 #121
4QQ2 ... LDN 6 0
4QR8 ... CALL 7 SUPER [START INPUT NO REPLY
4QSB ... BRN START
4QTQ XEDS
4R*B MOPCLOSE [GET RID OF ADCB BLOCK AND RING
4RT2 SUICIDE
4S#L XEND
4SS= LDCT 0 4
4T?W ORS 0 ISTATUS(3)
4TRG BRN XCONT
4W?6 [ WAIT DOR MORE INPUT BLOCKS
4WQQ XWAIT
4X=B MHUNTW 3,AMXOR,ADCB
4XQ2 LDX 0 FINISH
4Y9L BNZ 0 OPOF [J IF FINISHING
4YP= LDCT 0 4 [B6 OF IDSTAUT
4^8W ANDX 0 ISTATUS(3)
4^NG BNZ 0 XENDX [END OF DATA STREAM INDICATED
5286 LDCT 4 #450 [IF IDENTIFIER IS INOPERABLE OR
52MQ ANDX 4 ISTATUS(3) [STPPED BY STOP INPUT AND CLEAR
537B BNZ 4 TINOP [J TO INOP PATH
53M2 LDCT 0 #400 [WAKE UP IF UNAVAILABLE RECEIVED
546L ADN 0 #2000 [INDICATE 'ACTIVITY ASLEEP'
54L= ORS 0 IWAIT(3)
555W COOR1
55KG BRN X1IPBLOG [J TO START DEALING WITH DATA
5656 TINOP [X4 CONTAINS ISTATUS
56JQ SLC 4 5
574B BNG 4 TLFAIL [B5 SET IF LINE OR TERMINAL FAILURE
57J2 XENDX
583L SRC 4 2
58H= BNG 4 SCC [B3 SET STOP INPUT AND CLEAR ALREADY
592W [SEND SO GO TO CLOSE IDENT
59GG LDN 5 #124 [SEND 'STOP INPUT AND CLEAR'
5=26 LDN 6 52
5=FQ CALL 7 SUPER
5=^B LDCT 0 #40
5?F2 ORS 0 ISTATUS(3) [SET IDENT STOPPED FLAG
5?YL HUNTW 3,AMXOR,#77 [ANY DATA CLEARED
5#D= BNG 3 SCC
5#XW RENAM
5*CG NAME 3,AMXOR,IDATSG
5*X6 HUNTW 3,AMXOR,#77
5BBQ BPZ 3 RENAM
5BWB BRN START [J BACK TO SERVICE DATA BLOCK
5CB2 #END
^^^^ ...662677260006