229S ... SEG INMOP,867,SECT.FILE,,G505 22FL #OPT K0INMOP=0 22^= #LIS K0INMOP>K0OBJPROG>K0PERIS>K0ALLGEO>K0GREATGEO 2375 ...[ 23#Y ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 23GR ...[ THIS EXCLUDES CODE UNDER #SKI G505 23NL ...[ 23WF ...#OPT G505 = 0 244# ...#SKI G505&1 24=7 ...# WITH UGUG EDIT M505 (3-SHIFT WORKING FOR MOP ONLINE PROGRAMS) 24D6 SEGENTRY K1INMOP,XIN1 24XQ SEGENTRY K2INMOP,XIN2 25CB SEGENTRY K3INMOP,XIN3 25X2 # 26BL # THIS SEGMENT DEALS WITH THE MACRO INMOP. IT GETS THE INFO. INTO 26W= # A UNIVERSAL BLOCK READY FOR INPUTTING INTO THE OBJECT PROGRAM. IT 27*W # DEALS ONLY WITH INPUT FROM MOP JOBS OR IMBEDDED DATA IN JDF'S. 27TG # 282N ...#SKI G505&1 287W ...XCCS2 #27060000 [ CURSOR/SHIFT BITS 28*6 XSPACE #202020 28SQ MASK #30000000 29#B XCAT CATMASK ONLINE,OBJECT 29S2 XIN1 2=?L UNPLUG 2=R= #SKI G4 2?=W CAPCAX [CHANGE FROM PCA TO CPA. 2?QG #SKI G3 2#=6 CAPCA [CHANGE FROM PCA TO CPA. 2#PQ LDXC 5 5 [PERI TYPE/UNIT NO WITH B0 SET 2*9B BCS £ 2*?# ...#SKI G505&1 2**= ...( 2*C8 ... LDX 0 6 2*F6 ... LDX 4 CPATUWORD(2) 2*H4 ... ANDX 0 XCCS2(1) 2*K2 ... ORS 0 CPATUWORD(2) [ SET REQ'D BITS FOR CHANG 2*LY ...) 2*P2 STO 7 AWORK1(2) [AWK1=ACT.NO. OF AOLPT. 2B8L STO 6 AWORK4(2) [AWK4=IDENTIFY OR NOT N/L SUP.OR NOT 2BN= LDX 7 CONTEXT(2) [LD. THE CONTEXT OF THE DATA 2C7W SRC 7 3 2CMG BNG 7 XJDF [J. IF A JOB DESCRIPTION. 2D76 SRC 7 1 2DLQ BNG 7 XMOP [J. IF MOP CONSOLE 2F6B GEOERR 1,NJDF MOP 2FL2 XMOP 2G5L LDX 0 6 2GK= SLL 0 2 2H4W BPZ 0 XMOPA [J. IF NO NEWLINE SUPPRESSION. 2HJG SUPNLIN [SPECIAL CR MACRO. 2J46 XMOPA 2JHQ BPZ 6 XNUL [J. NO IDENTIFY REQUIRED 2K3B OUTPACK 5,1,PERINAME [PERI TYPE AND UNIT NO 2KH2 XREDY 2L2L READY ZBREAK [J. TO ZBREAK IN CASE 2L7S ...#SKI G505&1 2L*2 ... STO 4 CPATUWORD(2) [CLEAR SHIFT FLAG FOR MONOUTS ETC. 2LG= XOUT 2L^W PCAPLUG ZBREAK,FILE,FRB 2MFG FINDACTNO 3,AWORK1(2) [HUNT FOR THE AOLPT GIVEN THE ACNUM. 2M^6 INCHECK HLOCK1,MGEO,3 2NDQ INCHECK HLOCK2,MGEO,3 2NYB CLEAR 2,2 2PD2 MHUNTW 1,FILE,FRB 2PXL CHAIN 1,3 2QC= LDX 2 3 2QWW LDN 0 1 2RBG ADJUSTLK 2 [RE-SET LINKS 2RW6 FPUT [EXIT BACK 2S*Q LINKSET 2,GVFN [SET LINK 2STB COOR1X 2T*2 MGEO GEOERR 1,HLOCKERR 2TSL XNUL OUTNULL [OUTNULL BECAUSE OF _ FOR READY. 2W#= BRN XREDY 2WRW XFIDL 2X?G SBX 6 FX1 [X6=LINK WD. 2XR6 XJ HUNT2 2,CPB,CALAS [THIS SUBROUTINE 2Y=Q LDEX 4 CPBCPLEV(2) 2YQB BNZ 4 XJ 2^=2 LDX 0 CPBFSD(2) 2^PL BPZ 0 XER 329= SMO FX1 32NW ANDX 0 MASK 338G BNZ 0 XLEV 33N6 #SKI G4 347Q CLEARPE 34MB XER ILLEGAL NOJS 3572 XLEV ADN 4 1 35LL HUNT2B 2,CPB,CALAS 366= LDEX 0 CPBCPLEV(2) 36KW BXE 0 4,OKLEV [J. IF LEVELS THE SAME. 375G GEOERR 1,WRONGLEV 37K6 OKLEV LDX 3 CPBFSD(2) 384Q ANDN 3 #77 38JB NGX 3 3 3942 ADX 6 FX1 39HL EXIT 6 0 [EXIT FROM THE FIDDLE 3=3= XJDF [ROUTINE TO DEAL WITH INPUT IN THE JD 3=GW STO 5 AWORK2(2) [ST. IDENTIFIER 3?2G CALL 6 XFIDL [CALL SUBROUTINE TO HUNT FILE LEV 3?G6 ADDREC 2,5 [INCREASE NO. OF REC.READ BY ONE. 3?^Q READ 0(3) 3#FB MHUNTW 1,FILE,FRB [HUNT BLK. CONTAINING DATA 3#^2 LDX 0 A1(1) 3*DL BNZ 0 XOUT 3*Y= XFEND 3BCW CALL 6 XFIDL [CALL SUBROUTINE TO GET FILE DEPTH 3BXG SUBREC 2,5 [DECREASE CT. OF NO. OF RECORDS READ 3CC6 BACKSPACE 0(3) [BACKSPACE THE FILE PTR. 3CF4 LDCT 6 #377 3CH2 ANDX 6 AWORK2(2) [PICK UP PERIPHERAL TYPE. 3CJY SRL 6 15 3CLW SBN 6 #62 3CNS BZE 6 XOUT [J IF FILE READER OR FILEHANDLER SO 3CQQ SBN 6 2 [THAT FHOBJ CAN GIVE APPROPRIATE END 3CSN BZE 6 XOUT [OF FILE REPLY INSTEAD OF ILLEGAL. 3CWQ LDX 6 AWORK2(2) [LD. INDICAT_ FOR IDENTIFY OR NOT 3DBB #SKI G4 3DW2 CLEARPE 3F*L OUTPACK 6,1,PERINAME [PERI TYPE AND UNIT NO 3FT= ILLEGAL FILE [ILLEGAL READ OFF END OF JDF. 3G#W ZBREAK 3GG4 ...#SKI G505&1 3GM= ... STO 4 CPATUWORD(2) 3GSG #SKI G4 3H#6 CLEARPE 3HRQ STEPBACK [STEP BACK THE OBJ.PROG. 3J?B PROGBRKIN 3J*K ...#SKI G505&1 3JCS ...( 3JG3 ...# THE ACTION OF THE OUTMOP MACRO HAS BEEN MODIFIED SO THAT 3JJ= ...# SHIFT SETTINGS OF THE DEVICE AND PERI ARE REMEMBERED IN X7. 3JLF ...# THESE ARE TRANSFERRED TO THE CPAT FOR USE BY IPBMOP.. 3JNN ...) 3JR2 # THIS ENTRY POINT DEALS WITH OUTMOP MACRO. 3K=L XIN2 3KQ= LDX 1 APETADDR(2) 3L9W LDX 3 ACAP(2) [CONTROL AREA POINTER 3LPG ADN 3 1 3M96 FADDRESS 1,3,HLOCK1 3MNQ STOZ 0(3) [CLEAR REPLY WORD 3N8B LDX 0 IDENTIND(2) [LD. IDENTIFIER OR NOT INDICATOR. 3N#? ...#SKI G505&1 3ND8 ... BPZ 0 ONOID 3NJ5 ...#SKI G505&1$1 3NN2 BZE 0 ONOID [J. NO IDENTIFIERS 3P7L LDXC 5 IDENTINFO(2) [TYPE/UNIT NO WITH B0 SET 3PM= BCS £ 3Q6W PERTYPNO 5 [CONVERT TO CORRECT FORMAT 3QLG LDX 5 ACOMMUNE9(2) 3R66 MHUNTW 3,FILE,FRB [HUNT FOR DATA BLOCK 3RKQ LDX 7 A1(3) [LD. NO. OF WDS. IN DATA + REC.HEADER 3S5B ADN 7 2 3SK2 SETUPCORE 7,1,FILE,FRB 3T4L HUNT2 3,FILE,FRB,1 [HUNT FOR OUTPUT 3TJ= LDX 6 1 3W3W LDN 4 #32 3WHG SLL 45 18 3X36 STO 4 A1+2(1) [ST. IDENTIFY INTO BLOCK. 3XGQ STO 5 A1+3(1) 3Y2B LDN 5 A1+3(1) 3YG2 BCHX 5 £ [LD. POSITIONS FOR MOVE 3Y^L LDN 4 A1+2(3) 3^F= SBN 7 4 3^YW LDCT 0 #600 42DG ANDX 0 A1+1(3) 42Y6 BZE 0 OZ2 43CQ SBN 7 1 [CALC. NO. OF CHARS. TO MOVE 43XB OZ2 SLC 70 2 44C2 LDX 0 A1+1(2) 44WL ANDX 0 BITS22LS 45B= STO 0 A1+1(1) 45TW LDEX 0 7 46*G SRL 7 9 46T6 BZE 0 OZ3 47#Q SMO 0 47SB MVCH 4 0 [MOVE DATA INTO NEW BLOCK 48#2 OZ3 BZE 7 OZ5 48RL OZ4 MVCH 4 512 [MOVE DATA IF GREATER THAN 512 49?= BCT 7 OZ4 49QW OZ5 FREECORE 3 [FREE OLD BLK 4==G LDX 3 6 4=Q6 LDX 1 5 4?9Q SBN 5 A1(3) [CALC LAST WD. 4?PB LDN 6 0 4#92 SLC 56 2 4#NL SRL 5 2 4*8= BZE 6 OZ6 4*MW SRC 6 2 4B7G ORS 6 A1+1(3) 4BM6 ADN 5 1 4C6Q LDN 0 #20 4CLB OZ7 DCH 0 0(1) [SPACEFIL LAST WD. 4D62 BCHX 1 £ 4DKL BXGE 1 BITS22LS,OZ7 4F5= OZ6 LDX 1 FX1 4FJW STO 5 A1(3) 4G4G ONOID 4GJ6 FJOPCA 1,APETADDR(2) 4H3Q SPRIVTEST JSSTART,1,OMON [J. IF NOT SYSTEM STARTED 4HHB BRN OMOP 4J32 OMON FCAPCA 3,APETADDR(2) [FIND PTR. TO CPA GIVEN PTR. TO PCA 4JGL LDX 1 FX1 4K2= WHERETO 3,XCAT(1),OMOP [OUTPUT TO MOP IS REQUIRED 4KFW [OUTPUT TO MONITORING FILE IS REQUIRE 4K^G LDX 0 XCAT(1) 4LF6 STO 0 AWORK2(2) [ST. CATAGORY WORD. 4LYQ MHUNTW 1,FILE,FRB [HUNT FOR THE BLK. CONTAINING DATA. 4MDB LDX 0 A1(1) [LD. CT. OF NO. OF WDS. 4MY2 STO 0 AWORK1(2) 4NCL OLMF AWORK1(2),AWORK2(2),OFULL [FIND ROOM IN MON FILE 4NX= MHUNTW 1,FILE,FRB [X3=PTR. TO AREA IN MON.FILE. 4PBW LDX 5 AWORK1(2) [LD. COUNT OF WDS. 4PWG LDN 2 CPDATA 4QB6 ADX 2 1 [DATA FROM WHICH TO MOVE. 4QTQ SBN 5 2 4R*B BZE 5 ODAT [NO DATA SO J. 4RT2 SMO 5 4S#L MOVE 2 0 [MOVE DATA TO MON.FILE. 4SS= ODAT OLMFA [CHECK REPLY WD. 4T?W OFULL MFREE FILE,FRB [FREE BLK HOLDING DATA 4TRG UP [EXIT BACK TO THE MACRO. 4W?6 OMOP UPPLUS 1 4W** ...#SKI G505&1 4WCJ ...( 4WFR ...# 4WJ2 ...TMASK #07070000 [ SHIFT INDICATORS FROM IDENTIND 4WL9 ...# [ THIS IS RE-ENTRY POINT FROM OUTMOP 4WND ...) 4WQQ XIN3 4X=B UNPLUG 4XQ2 #SKI G4 4Y9L CAPCAX FILE,FRB [CHANGE FROM PCA TO CPA TAKING BLOCK 4YP= #SKI G3 4^8W CAPCA FILE,FRB [CHANGE FROM PCA TO CPA TAKING BLOCK 4^NG MHUNTW 3,FILE,FRB [HUNT FOR THE FILE/FRB 5286 LDN 6 A1+2 [BEGINING OF DATA 52MQ #SKI G4 537B CLEARPE 53M2 TESTBRKIN OBREAK [J. IF BREAK-IN HAS BEEN DETECTED. 53NY ...#SKI G505&1 53QW ...( 53SS ... LDX 4 7 53WQ ... ANDX 4 TMASK(1) 53YN ... LDX 5 CPATUWORD(2) [ TO RESTORE LATER 542L ... ORS 4 CPATUWORD(2) [ SET SHIFT BITS FOR MOP 544J ...) 546L SLL 7 2 54L= BPZ 7 ONONL [J. NOT SUPPRESS NEWLINE. 555W SUPNLOUT [ISSUE SUPPRESS NEWLINE MACRO. 55KG ONONL 5656 LDCT 0 #600 56JQ ANDX 0 A1+1(3) [CONVERT WD. TO CHARACTER COUNT 574B LDX 7 A1(3) 57J2 BZE 0 OZ1 583L SBN 7 1 58H= OZ1 SBN 7 2 592W SLC 70 2 59GG OUTMONX 7,6,XCAT(1),FILE,FRB 5=26 MFREEW FILE,FRB 5=7# ...#SKI G505&1 5=#G ... STO 5 CPATUWORD(2) [CLEAR SHIFT FLAG FOR MONOUTS ETC. 5=FQ RUNPROG 5=^B OBREAK [BREAK-IN ROUTINE. 5?F2 MFREEW FILE,FRB 5?YL PROGBRKIN 5#D= MENDAREA 40,K100INMOP 5#XW #END ^^^^ ...54613124000100000000